/* Страница методики */

.method { padding-block: var(--space-6) var(--space-8); }

.method__wrap { max-width: 780px; }

.method__title {
 font-size: clamp(28px, 4vw, 40px);
 line-height: 1.12;
 letter-spacing: -.02em;
 font-weight: 700;
}

.method__intro {
 margin-top: var(--space-3);
 font-size: 16px;
 line-height: 1.6;
 color: var(--fg-2);
 max-width: 66ch;
}

.block {
 margin-top: var(--space-7);
 padding-top: var(--space-5);
 border-top: 1px solid var(--line);
}

.block__title {
 font-size: 20px;
 font-weight: 600;
 letter-spacing: -.01em;
}

.block__text {
 margin-top: var(--space-2);
 font-size: 14.5px;
 line-height: 1.6;
 color: var(--fg-2);
 max-width: 68ch;
}

/* Критерии */

.crit-table {
 margin-top: var(--space-4);
 display: flex;
 flex-direction: column;
 border-top: 1px solid var(--line);
}

.crit-row {
 display: grid;
 grid-template-columns: 28px minmax(0, 1fr) 46px;
 gap: var(--space-3);
 align-items: baseline;
 padding: 10px 0;
 border-bottom: 1px solid var(--line);
}

.crit-row__num {
 font-family: var(--font-mono);
 font-size: 11px;
 color: var(--accent);
}

.crit-row__body { min-width: 0; }

.crit-row__label {
 font-size: 14.5px;
 font-weight: 600;
 color: var(--fg);
}

.crit-row__text {
 margin-top: 2px;
 font-size: 12.5px;
 line-height: 1.45;
 color: var(--fg-3);
}

.crit-row__max {
 font-family: var(--font-mono);
 font-size: 11px;
 color: var(--fg-3);
 text-align: right;
}

/* Шаги промптов */

.steps-list {
 margin-top: var(--space-4);
 counter-reset: step;
 display: flex;
 flex-direction: column;
 gap: var(--space-3);
 padding: 0;
 list-style: none;
}

.steps-list li {
 counter-increment: step;
 position: relative;
 padding-left: 34px;
 font-size: 14px;
 line-height: 1.55;
 color: var(--fg-2);
}

.steps-list li::before {
 content: counter(step, decimal-leading-zero);
 position: absolute;
 left: 0;
 top: 1px;
 font-family: var(--font-mono);
 font-size: 11px;
 color: var(--accent);
}

/* Пример экономии */

.saving-example {
 margin-top: var(--space-4);
 display: grid;
 grid-template-columns: minmax(0, 200px) minmax(0, 1fr);
 gap: 6px var(--space-4);
 padding: var(--space-4);
 border: 1px solid var(--line);
 border-radius: var(--radius-m);
 background: var(--surface);
}

.saving-example__label {
 font-family: var(--font-mono);
 font-size: 11px;
 color: var(--fg-3);
}

.saving-example__value {
 font-size: 13.5px;
 color: var(--fg-2);
}

.saving-example__total {
 grid-column: 1 / -1;
 margin-top: var(--space-2);
 padding-top: var(--space-3);
 border-top: 1px solid var(--line);
 font-family: var(--font-mono);
 font-size: 15px;
 font-weight: 700;
 color: var(--accent);
}

/* Ограничения */

.limits {
 margin-top: var(--space-4);
 display: flex;
 flex-direction: column;
 gap: 8px;
 padding: 0;
 list-style: none;
}

.limits li {
 position: relative;
 padding-left: 18px;
 font-size: 14px;
 line-height: 1.55;
 color: var(--fg-2);
}

.limits li::before {
 content: "·";
 position: absolute;
 left: 4px;
 color: var(--accent);
}

.method__disclaimer {
 margin-top: var(--space-7);
 padding-top: var(--space-4);
 border-top: 1px solid var(--line);
 font-size: 13px;
 color: var(--fg-3);
}

.method__updated {
 margin-top: 6px;
 font-family: var(--font-mono);
 font-size: 11.5px;
 color: var(--fg-3);
}

@media (max-width: 559px) {
 .saving-example { grid-template-columns: 1fr; }
 .saving-example__label { margin-top: 6px; }
 .method { padding-block: var(--space-5) var(--space-7); }
}