/* LLMs section. Builds on style.css tokens (--ink, --t1..--t6, etc.). */

.asof{font-family:var(--mono);font-size:11px;color:var(--ink-3);
  border:1px solid var(--rule-hard);background:var(--card);padding:3px 8px;
  white-space:nowrap}
.sec-asof{font-family:var(--mono);font-size:10.5px;font-weight:400;
  letter-spacing:0;text-transform:none;color:var(--ink-3);margin-left:auto}
.sec-head a{color:inherit;text-decoration:none}
.sec-head a:hover{text-decoration:underline}
.table-wrap.first{border-top:1px solid var(--rule-hard)}
.scroll-x{overflow-x:auto}
.mono{font-family:var(--mono);font-size:12px}
.small{font-size:11px}

/* two-column blocks */
.split{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.split-col h3{font-family:var(--cond);font-size:21px;font-weight:700;
  margin:4px 0 0;letter-spacing:-.015em}

/* variant tables */
table.vt td{vertical-align:top}
table.vt .mname{display:inline}
.mid{display:block;font-family:var(--mono);font-size:11px;color:var(--ink-3);
  overflow-wrap:anywhere;margin-top:1px}
.vnote{display:block;font-size:11.5px;color:var(--ink-2);margin-top:3px;max-width:52ch}
.sub{display:block;font-size:10.5px;color:var(--ink-3)}
.mods{font-size:12px;color:var(--ink-2)}
.strong{font-weight:600}
#calc-table td.num{white-space:nowrap}
tr.st-legacy td,tr.st-deprecated td{color:var(--ink-3)}
tr.st-legacy .mname,tr.st-deprecated .mname{color:var(--ink-2)}
.status-pill{font-family:var(--cond);font-size:10px;font-weight:600;
  letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
tr.st-current .status-pill{color:var(--t1)}
tr.st-deprecated .status-pill{color:var(--t5)}

/* hardware tier swatch, same ramp as the catalog ruler */
.tier{display:inline-block;font-family:var(--cond);font-size:10.5px;
  font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#fff;
  padding:1px 6px;white-space:nowrap}
.tier.n1{background:var(--t1)} .tier.n2{background:var(--t2)}
.tier.n3{background:var(--t3)} .tier.n4{background:var(--t4)}
.tier.n5{background:var(--t5)} .tier.n6{background:var(--t6)}
td .aws{display:block;margin-top:2px}
.rates div{display:flex;gap:10px;align-items:baseline}
.rates .num{margin-left:auto}
.hwnote{font-size:11.5px;color:var(--ink-3)}

/* licence classes */
.lic-pill{display:inline-block;font-family:var(--cond);font-size:10px;
  font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  padding:1px 6px;border-radius:2px;white-space:nowrap;cursor:help}
.lic-open-source{background:#e3ecea;color:var(--t1)}
.lic-open-restricted{background:#f1ecdc;color:var(--t3)}
.lic-non-commercial{background:#f3e4e0;color:var(--t5)}
.lic-proprietary{background:#e4e8ec;color:var(--ink-2)}
.card-meta .lic-pill{font-size:9.5px}

.chip{display:inline-block;font-family:var(--mono);font-size:10.5px;
  color:var(--ink-2);border:1px solid var(--rule-hard);background:var(--card);
  padding:0 5px;margin:0 4px 3px 0}
.access{display:block;margin-top:6px}

/* family facts */
.facts{margin:12px 0 0;display:grid;gap:0;border:1px solid var(--rule-hard);
  background:var(--card)}
.facts>div{display:grid;grid-template-columns:150px 1fr;
  border-bottom:1px solid var(--rule);padding:9px 12px}
.facts>div:last-child{border-bottom:0}
.facts dt{font-family:var(--cond);font-size:11px;font-weight:600;
  letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}
.facts dd{margin:0}
.fact-note{margin:5px 0 0;font-size:13px;color:var(--ink-2);max-width:70ch}
.src{font-size:11px;overflow-wrap:anywhere}

ul.plain{margin:12px 0 0;padding-left:18px}
ul.plain li{margin-bottom:7px;font-size:14px;line-height:1.5}
ul.plain.warn li::marker{color:var(--t5)}

/* cost calculator */
.calc{display:flex;gap:14px;flex-wrap:wrap;margin:0 0 14px}
.calc label{display:flex;flex-direction:column;gap:4px;font-size:12.5px;
  font-weight:500;color:var(--ink-2)}
.calc .unit{font-family:var(--mono);font-size:10.5px;color:var(--ink-3);font-weight:400}
.calc input{font:inherit;font-family:var(--mono);font-size:14px;width:170px;
  padding:6px 8px;border:1px solid var(--rule-hard);background:var(--card);color:var(--ink)}
.calc input:focus-visible{outline:2px solid var(--t2);outline-offset:-1px}

@media (max-width:900px){
  .split{grid-template-columns:1fr;gap:0}
  .facts>div{grid-template-columns:1fr;gap:3px}
  .sec-asof{display:none}
  .calc input{width:100%}
  .calc label{flex:1 1 140px}
}
