/* One Million Tokens a Second: page layer on top of the shared minds style. Scoped to million-page and million-* classes. */
.million-page{--million-cobalt:#2b4fa8;--million-cobalt-soft:#e2e8f6;--million-forest:#254c3b;--million-forest-soft:#e3ebdf;--million-ivory:#fcfaf4;--million-line:#d5d6ca;--million-ink:#252b23;--million-muted:#5d6458}
.million-page .minds h1{max-width:none;font-size:clamp(38px,5.2vw,68px)}
.million-format-note{font-size:14px;line-height:1.6;color:var(--minds-muted);margin:16px 0 0}

/* Short answer */
.million-verdict{margin:0 0 6px;padding:30px 32px;background:var(--million-ivory);border:1px solid var(--million-line);border-left:4px solid var(--million-forest);border-radius:0 16px 16px 0}
.million-verdict .minds-label,.million-bottom-line .minds-label{display:block;margin:0 0 8px}
.million-verdict h2{font-size:clamp(28px,3.6vw,40px);line-height:1.14;margin:0 0 16px}
.million-verdict h2 em{color:var(--million-forest)}
.million-verdict p{margin:0 0 14px}
.million-verdict .million-frame{margin:0;padding-top:14px;border-top:1px solid var(--million-line);font-size:14px;line-height:1.7;color:var(--million-muted)}

/* Four kinds of fast */
.million-terms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0 28px}
.million-terms>div{padding:18px 20px;border-radius:12px;background:#ecebe1}
.million-terms dt{margin:0 0 8px;font:400 21px/1.3 var(--serif,Georgia,serif);letter-spacing:-.02em;color:var(--million-ink)}
.million-terms dt span{display:block;margin-bottom:6px;font:10px/1.6 var(--mono,monospace);letter-spacing:.1em;color:var(--million-muted)}
.million-terms dd{margin:0;font-size:15px;line-height:1.65}
.million-terms .is-dial{background:var(--million-cobalt-soft);box-shadow:inset 0 0 0 1.5px var(--million-cobalt)}
.million-terms .is-dial dt span{color:var(--million-cobalt)}

/* Interactive labs */
.million-lab{margin:26px 0;padding:24px;background:var(--million-ivory);border:1px solid var(--million-line);border-radius:16px;box-shadow:0 10px 34px #2833200d;font-size:16px;line-height:1.6}
.million-lab:not(.is-ready) [data-js-only]{display:none}
.million-presets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 22px}
.million-presets button{min-height:48px;padding:8px 10px;border:1px solid #c5c8b9;border-radius:10px;background:#fff;color:var(--million-ink);font-family:inherit;font-size:14px;font-weight:500;line-height:1.3;cursor:pointer;touch-action:manipulation;transition:background-color .15s,border-color .15s,color .15s}
.million-presets button:hover{border-color:var(--million-forest)}
.million-presets button[aria-pressed="true"]{background:var(--million-forest);border-color:var(--million-forest);color:#fbfaf3}
.million-control{margin:0 0 22px}
.million-control-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:2px 12px}
.million-control-head label{font-size:14px;color:var(--million-muted)}
.million-value{font:600 15px/1.4 var(--mono,monospace);color:var(--million-cobalt)}
.million-control input[type="range"]{display:block;width:100%;height:44px;margin:2px 0 0;accent-color:var(--million-cobalt);cursor:pointer}
.million-control input[type="range"]:focus-visible{outline:3px solid var(--million-cobalt);outline-offset:3px}
.million-scale{position:relative;height:18px;font:11px/18px var(--mono,monospace);color:var(--million-muted)}
.million-scale span{position:absolute;top:0;transform:translateX(-50%);white-space:nowrap}
.million-scale span:first-child{left:0;transform:none}
.million-scale span:last-child{left:auto;right:0;transform:none}
.million-scale.is-rate span:nth-child(2){left:calc(8px + (100% - 16px) * .25)}
.million-scale.is-rate span:nth-child(3){left:calc(8px + (100% - 16px) * .5)}
.million-scale.is-rate span:nth-child(4){left:calc(8px + (100% - 16px) * .75)}
.million-scale.is-wait span:nth-child(2){left:calc(8px + (100% - 16px) * .2857)}
.million-scale.is-wait span:nth-child(3){left:calc(8px + (100% - 16px) * .7143)}

/* Big numbers */
.million-readout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 18px}
.million-readout>div{min-width:0;padding:16px 18px;border-radius:12px;background:#efeee5}
.million-readout span{display:block;font:10px/1.6 var(--mono,monospace);letter-spacing:.1em;color:var(--million-muted)}
.million-readout strong{display:block;margin:6px 0 4px;font:400 clamp(28px,4.4vw,40px)/1.1 var(--serif,Georgia,serif);letter-spacing:-.02em;color:var(--million-ink);overflow-wrap:break-word}
.million-readout small{display:block;font-size:13px;line-height:1.5;color:var(--million-muted)}
.million-readout .is-cobalt{background:var(--million-cobalt-soft)}
.million-readout .is-cobalt strong{color:var(--million-cobalt)}
.million-readout .is-forest{background:var(--million-forest-soft)}
.million-readout .is-forest strong{color:var(--million-forest)}

/* Writing-time line (log scale) */
.million-timeline{margin:0 0 18px;padding:0 6px}
.million-timeline-head{display:flex;justify-content:space-between;margin-bottom:8px;font:10px/1.6 var(--mono,monospace);letter-spacing:.08em;text-transform:uppercase;color:var(--million-muted)}
.million-track{position:relative;height:10px;border-radius:10px;background:#e3e3d8}
.million-fill{position:absolute;top:0;bottom:0;left:0;width:15.38%;border-radius:10px;background:var(--million-cobalt);transition:width .25s ease}
.million-marker{position:absolute;top:50%;left:15.38%;width:22px;height:22px;margin:-11px 0 0 -11px;box-sizing:border-box;border:3px solid var(--million-cobalt);border-radius:50%;background:#fff;transition:left .25s ease}
.million-ticks{position:relative;height:34px}
.million-ticks span{position:absolute;top:12px;transform:translateX(-50%);font:11px/1.4 var(--mono,monospace);color:var(--million-muted);white-space:nowrap}
.million-ticks span::before{content:"";position:absolute;left:50%;top:-10px;width:1px;height:7px;background:#a9ad9e}
.million-ticks span:nth-child(1){left:15.38%}
.million-ticks span:nth-child(2){left:42.74%}
.million-ticks span:nth-child(3){left:70.1%}
.million-ticks span:nth-child(4){left:91.33%}

/* Text results, tables, caveats */
.million-page .million-result{margin:0 0 16px;padding:13px 16px;border-left:3px solid var(--million-cobalt);border-radius:0 10px 10px 0;background:#eef1f8;font-size:15px;line-height:1.65;color:var(--million-ink)}
.million-detail{margin:0 0 14px;padding-top:12px;border-top:1px solid var(--million-line)}
.million-detail summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px;cursor:pointer;list-style:none;font-size:14px;font-weight:600;color:var(--million-forest)}
.million-detail summary::-webkit-details-marker{display:none}
.million-detail summary span{font-size:20px;line-height:1;transition:transform .2s}
.million-detail[open] summary span{transform:rotate(45deg)}
.million-table-wrap{overflow-x:auto;margin-top:8px}
.million-table{width:100%;border-collapse:collapse;font-size:13px;line-height:1.45;font-variant-numeric:tabular-nums}
.million-table caption{caption-side:top;padding:0 0 6px;text-align:left;font-size:12px;color:var(--million-muted)}
.million-table th,.million-table td{padding:8px 6px;border-bottom:1px solid var(--million-line);text-align:right;vertical-align:top}
.million-table th:first-child,.million-table td:first-child{padding-left:0;text-align:left}
.million-table thead th{font:400 10px/1.4 var(--mono,monospace);letter-spacing:.06em;color:var(--million-muted)}
.million-table tbody th{font-weight:500}
.million-page .million-lab .minds-small{margin:0}

/* Serial bottleneck bars */
.million-bars{margin:0 0 18px}
.million-bar-row{margin:0 0 16px}
.million-bar-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:2px 12px;margin:0 0 6px;font-size:14px;color:var(--million-muted)}
.million-bar-head strong{font:600 15px/1.4 var(--mono,monospace);color:var(--million-ink)}
.million-bar{display:flex;gap:2px;height:26px;overflow:hidden;border-radius:7px;background:#e3e3d8}
.million-seg{display:block;flex:0 1 50%;min-width:4px;transition:flex-basis .25s ease}
.million-seg[hidden]{display:none}
.million-seg[data-base-write]{flex-basis:99.26%}
.million-seg[data-base-wait]{flex-basis:.74%}
.million-seg[data-fast-write]{flex-basis:1.32%}
.million-seg[data-fast-wait]{flex-basis:98.68%}
.million-seg.is-write,.million-legend i.is-write{background:var(--million-cobalt)}
.million-seg.is-wait,.million-legend i.is-wait{background:var(--million-forest)}
.minds-question .million-split{margin:6px 0 0;font:12px/1.5 var(--mono,monospace);color:var(--million-muted)}
.million-legend{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12px;line-height:1.5;color:var(--million-muted)}
.million-legend i{display:inline-block;width:12px;height:12px;margin-right:6px;border-radius:3px;vertical-align:-1px}

/* Thought-experiment cards */
.million-cases{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:24px 0 28px}
.million-case{display:flex;flex-direction:column;padding:22px;border:1px solid var(--million-line);border-radius:14px;background:var(--million-ivory)}
.million-case h3{margin:0 0 8px;font-size:24px;line-height:1.2}
.minds-question .million-case p{margin:0 0 14px;font-size:15px;line-height:1.7}
.minds-question .million-case .million-case-budget{margin-bottom:12px;font:11px/1.55 var(--mono,monospace);color:var(--million-cobalt)}
.minds-question .million-case .million-case-scarce{margin:auto 0 0;padding-top:12px;border-top:1px solid var(--million-line);font-size:14px;color:var(--million-forest)}

/* Judgment */
.million-gate{margin:24px 0 26px}
.million-gate svg{display:block;width:100%;height:auto;border:1px solid var(--million-line);border-radius:14px;background:var(--million-ivory)}
.million-scarce{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0 26px;padding:0;list-style:none}
.million-scarce li{padding:14px 16px;border-radius:12px;background:var(--million-forest-soft)}
.million-scarce b{display:block;font:400 19px/1.3 var(--serif,Georgia,serif);color:var(--million-forest)}
.million-scarce span{display:block;margin-top:4px;font-size:14px;line-height:1.55}

/* Next steps */
.million-steps{margin:18px 0 8px;padding:0;list-style:none;counter-reset:million-step}
.million-steps li{position:relative;padding:16px 0 16px 50px;border-top:1px solid var(--million-line);counter-increment:million-step}
.million-steps li::before{content:counter(million-step);position:absolute;left:0;top:17px;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--million-forest);color:#fbfaf3;font:600 13px/1 var(--mono,monospace)}
.million-steps strong{display:block;font-size:17px;line-height:1.45}
.million-steps span{display:block;font-size:15px;line-height:1.7;color:var(--million-muted)}

/* Bottom line and offers */
.million-bottom-line{margin:44px 0;padding:34px 32px;border-radius:18px;background:var(--million-forest);color:#f3f4e8}
.million-bottom-line .minds-label{color:#bfd3b3}
.million-bottom-line h2{margin:0 0 16px;font-size:clamp(30px,4vw,44px);line-height:1.12}
.million-bottom-line h2 em{color:#cfe0c4}
.million-bottom-line p{margin:0;font-size:17px;line-height:1.75}
.million-bottom-line strong{font-weight:600;color:#fff}
.million-offer-note{max-width:760px;margin:-6px 0 24px;font-size:16px;line-height:1.75;color:#4f574a}

@media(max-width:720px){.million-presets{grid-template-columns:repeat(2,minmax(0,1fr))}.million-cases{grid-template-columns:1fr}.million-scarce{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.million-terms,.million-readout{grid-template-columns:1fr}.million-lab{padding:18px 14px}.million-verdict{padding:22px 20px}.million-bottom-line{margin:36px 0;padding:28px 22px}.million-case{padding:18px}.million-steps li{padding-left:44px}.million-offer-note{font-size:15px}}
@media(max-width:380px){.million-page .minds h1{font-size:35px}.million-scarce{grid-template-columns:1fr}.million-presets button{padding:8px 6px;font-size:13px}.million-lab{padding:16px 12px}.million-ticks span,.million-scale{font-size:10px}.million-terms>div{padding:16px}}
@media(prefers-reduced-motion:reduce){.million-fill,.million-marker,.million-seg,.million-presets button,.million-detail summary span{transition:none}}
