.calc-main {
  width: min(100%, 1120px);
  min-width: 0;
  margin: 0 auto;
  padding: clamp(42px, 7vw, 88px) 20px 72px;
}

.calc-intro { max-width: 900px; margin: 0 auto 40px; }
.calc-intro .kicker { margin-bottom: 18px; }
.calc-intro h1 { max-width: 19ch; }
.calc-lead { max-width: 68ch; margin: 22px 0 0; color: var(--smoke); font-size: clamp(16px, 2vw, 19px); line-height: 1.65; }

.calc-input { min-width: 0; padding: clamp(18px, 4vw, 32px); }
.calc-section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; min-width: 0; margin-bottom: 24px; }
.calc-section-heading .title-section { font-size: clamp(20px, 3vw, 28px); }
.calc-step { margin-bottom: 10px; color: var(--mint); font: 500 11px/1.4 var(--font-mono); letter-spacing: .12em; }
.period-picker { display: grid; gap: 6px; flex: 0 0 auto; color: var(--fog); font: 500 11px/1.4 var(--font-mono); letter-spacing: .08em; text-transform: uppercase; }
.period-picker select { min-width: 148px; min-height: 44px; padding: 9px 34px 9px 12px; border: 1px solid var(--line-strong); background: var(--ink-sunken); color: var(--paper); }
.period-picker select:focus-visible, .calc-input textarea:focus-visible { outline: 2px solid var(--ring); outline-offset: 2px; }

.command-row { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 14px; margin: 0 0 7px; color: var(--fog); font-size: 13px; }
.command-row code { display: inline-block; max-width: 100%; overflow-wrap: anywhere; color: var(--mint); font-size: 13px; }
.agent-note { margin: 0 0 18px; color: var(--fog); font-size: 12px; line-height: 1.55; }
.calc-input textarea { display: block; width: 100%; min-width: 0; min-height: 220px; resize: vertical; padding: 16px; border: 1px solid var(--line); background: var(--ink-sunken); color: var(--smoke); font: 12px/1.65 var(--font-mono); tab-size: 2; overflow-wrap: anywhere; }
.calc-input textarea::placeholder { color: var(--fog); opacity: .7; }
.privacy-note { margin: 10px 0 0; color: var(--mint); font-size: 12px; }
.calc-input-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; margin-top: 20px; }
.price-status { color: var(--fog); font-size: 12px; }
.price-status[data-state="error"] { color: var(--rose); }
.calc-error { margin: 17px 0 0; padding: 12px 14px; border: 1px solid var(--danger-edge); background: var(--danger-film); color: var(--paper); font-size: 13px; line-height: 1.55; overflow-wrap: anywhere; }

.calc-results { min-width: 0; margin-top: 64px; }
.result-heading { align-items: center; }
.usage-summary { max-width: 38ch; margin: 0; color: var(--fog); font: 12px/1.6 var(--font-mono); text-align: right; }
.price-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.price-card { display: grid; align-content: start; gap: 14px; min-width: 0; min-height: 180px; padding: clamp(20px, 4vw, 30px); }
.price-card-go2llm { border-color: var(--mint-edge); background: linear-gradient(150deg, var(--mint-film), var(--film)); }
.price-label { color: var(--fog); font: 500 11px/1.5 var(--font-mono); letter-spacing: .07em; text-transform: uppercase; }
.price-total { color: var(--paper); font: 600 clamp(27px, 5vw, 44px)/1.1 var(--font-display); letter-spacing: -.04em; overflow-wrap: anywhere; }
.price-card-go2llm .price-total { color: var(--mint); }
.price-detail { color: var(--fog); font-size: 12px; line-height: 1.5; }

.alternatives { min-width: 0; margin-top: 18px; padding: clamp(18px, 4vw, 28px); }
.alternatives-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 22px; }
.alternatives-head .title-card { margin: 0; font-size: 18px; }
.catalog-stamp { color: var(--fog); font: 11px/1.4 var(--font-mono); overflow-wrap: anywhere; }
.alternatives-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.alternative-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-width: 0; padding: 14px; border: 1px solid var(--line); background: var(--ink-sunken); }
.alternative-row[data-lowest="true"] { border-color: var(--mint-edge); }
.alternative-model { display: grid; gap: 4px; min-width: 0; }
.alternative-model strong { color: var(--paper); font-size: 14px; overflow-wrap: anywhere; }
.alternative-model span { color: var(--fog); font-size: 11px; }
.alternative-price { flex: 0 0 auto; color: var(--smoke); font: 500 14px/1.3 var(--font-mono); text-align: right; }
.alternative-row[data-lowest="true"] .alternative-price { color: var(--mint); }
.empty-note { margin: 0; color: var(--fog); font-size: 13px; line-height: 1.6; }

.unpriced-panel { margin-top: 18px; padding: 18px 20px; border: 1px solid var(--warning-edge); background: var(--warning-film); }
.unpriced-panel h3 { margin: 0 0 8px; color: var(--paper); font-size: 15px; }
.unpriced-panel p { margin: 0 0 8px; color: var(--smoke); font-size: 13px; line-height: 1.55; }
.unpriced-panel ul { margin: 0; padding-left: 20px; color: var(--amber); font: 12px/1.7 var(--font-mono); overflow-wrap: anywhere; }
.catalog-notes { margin: 14px 0 0; color: var(--fog); font-size: 12px; line-height: 1.6; }
.result-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 22px; }
.result-caveats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-top: 22px; }
.result-caveats p { margin: 0; color: var(--fog); font-size: 12px; line-height: 1.65; }
.calc-cta { display: flex; align-items: center; justify-content: space-between; gap: 22px; margin-top: 28px; padding: 22px; }
.calc-cta h3 { margin: 0 0 6px; color: var(--paper); font-size: 16px; }
.calc-cta p { max-width: 48ch; margin: 0; color: var(--fog); font-size: 13px; line-height: 1.6; }
.calc-cta-actions { display: flex; flex: 0 0 auto; flex-wrap: wrap; gap: 10px; }
.calc-footer { display: flex; justify-content: center; flex-wrap: wrap; gap: 12px 24px; padding: 20px; border-top: 1px solid var(--line); color: var(--fog); font-size: 12px; }
.calc-footer a:hover { color: var(--mint); }
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

@media (max-width: 700px) {
  .calc-main { padding: 38px 16px 54px; }
  .calc-intro { margin-bottom: 28px; }
  .calc-section-heading { align-items: flex-start; flex-direction: column; }
  .period-picker { width: 100%; }
  .period-picker select { width: 100%; }
  .price-grid, .alternatives-list, .result-caveats { grid-template-columns: minmax(0, 1fr); }
  .price-card { min-height: 0; }
  .result-heading { gap: 8px; }
  .usage-summary { text-align: left; }
  .alternatives-head { align-items: flex-start; flex-direction: column; }
  .calc-cta { align-items: flex-start; flex-direction: column; }
  .calc-cta-actions { width: 100%; }
  .calc-cta-actions .btn { width: 100%; justify-content: center; text-align: center; }
}

@media (max-width: 420px) {
  .calc-input { padding: 16px; }
  .price-card { padding: 18px; }
  .alternative-row { align-items: flex-start; }
  .alternative-price { max-width: 43%; overflow-wrap: anywhere; }
  .result-actions .btn { flex: 1 1 100%; justify-content: center; }
}
