.optica{--o-bg:#07090d;--o-panel:#0d1117;--o-panel-2:#131922;--o-line:#212936;--o-text:#e8ecf1;--o-dim:#94a1b2;--o-faint:#5f6b7b;--wl:#ffffff;--color-background:var(--o-bg);--color-surface:var(--o-panel);--color-text-primary:var(--o-text);--color-text-secondary:var(--o-dim);--color-divider:var(--o-line);--color-border-light:var(--o-panel-2);background:var(--o-bg);color:var(--o-text);flex:1 1 auto;min-height:100vh}.optica ::selection{background:color-mix(in srgb,var(--wl) 45%,transparent)}.optica :focus-visible{outline:2px solid var(--wl);outline-offset:2px;border-radius:6px}.o-page{margin:0 auto;width:100%;max-width:76rem;padding:0 1rem 5rem}.o-num{font-family:var(--font-display),system-ui,sans-serif;font-variant-numeric:tabular-nums}.o-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr)) minmax(0,1.1fr);gap:4px;padding:1rem 0 0}.o-strip a{display:block;color:var(--o-faint);font-size:.74rem;font-weight:700;line-height:1.25;text-decoration:none}.o-strip a:before{content:"";display:block;height:4px;border-radius:2px;background:var(--c);opacity:.32;margin-bottom:.5rem;transition:opacity .15s}.o-strip a:hover{color:var(--o-text)}.o-strip a.is-current:before,.o-strip a:hover:before{opacity:1}.o-strip a.is-current{color:var(--o-text)}.o-strip a.is-current:before{box-shadow:0 0 14px var(--c)}.o-strip-label{display:none}.o-strip-done{color:var(--c)}@media (min-width:820px){.o-strip-label{display:inline}}.o-head{padding:2rem 0 1.6rem;max-width:52rem}.o-kicker{display:flex;align-items:center;gap:.6rem;font-weight:700;color:var(--o-dim);font-size:.95rem}.o-kicker i{display:inline-block;width:.6rem;height:.6rem;border-radius:99px;background:var(--wl);box-shadow:0 0 12px var(--wl)}.o-h1{margin-top:.8rem;font-family:var(--font-display),system-ui,sans-serif;font-weight:800;font-size:clamp(1.9rem,4.2vw,3.1rem);line-height:1.06;letter-spacing:-.02em;text-wrap:balance}.o-lead{margin-top:1.1rem;font-size:1.08rem;line-height:1.65;color:var(--o-dim);max-width:44rem}.o-lab{display:grid;gap:1.25rem;align-items:start}@media (min-width:1040px){.o-lab{grid-template-columns:minmax(0,1fr) 19.5rem}}.o-lab-main{min-width:0;border:1px solid var(--o-line);border-radius:18px;background:var(--o-panel);padding:.6rem}.o-lab-tabs{padding:.15rem .15rem .6rem}.o-lab-caption{padding:.7rem .5rem .2rem;font-size:.9rem;line-height:1.5;color:var(--o-dim)}.o-lab-loading{display:grid;place-items:center;min-height:26rem;border:1px solid var(--o-line);border-radius:18px;background:var(--o-panel);color:var(--o-faint);font-size:.9rem}.o-seg{display:inline-flex;flex-wrap:wrap;gap:2px;padding:3px;border-radius:12px;background:var(--o-bg);border:1px solid var(--o-line)}.o-seg-btn{padding:.42rem .85rem;border-radius:9px;font-size:.86rem;font-weight:700;color:var(--o-dim);cursor:pointer}.o-seg-btn:hover{color:var(--o-text)}.o-seg-btn[aria-checked=true]{background:var(--o-panel-2);color:var(--o-text);box-shadow:inset 0 -2px 0 var(--wl)}.o-controls{display:grid;gap:.4rem 1.4rem;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));padding:.7rem .5rem .3rem;align-items:end}.o-slider{display:block}.o-slider-head{display:flex;justify-content:space-between;gap:.5rem;font-size:.82rem;font-weight:600;color:var(--o-dim)}.o-slider-head .o-num{color:var(--o-text);font-weight:700}.o-slider input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:28px;background:transparent;cursor:pointer}.o-slider input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:2px;background:#2a3442}.o-slider input[type=range]::-moz-range-track{height:4px;border-radius:2px;background:#2a3442}.o-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;margin-top:-7px;border-radius:99px;background:var(--o-bg);border:2.5px solid var(--wl);box-shadow:0 0 10px color-mix(in srgb,var(--wl) 60%,transparent)}.o-slider input[type=range]::-moz-range-thumb{width:14px;height:14px;border-radius:99px;background:var(--o-bg);border:2.5px solid var(--wl)}.o-field{display:flex;flex-direction:column;gap:.35rem;font-size:.82rem;font-weight:600;color:var(--o-dim)}.o-readouts{display:flex;flex-wrap:wrap;gap:.2rem 1.6rem;padding:.6rem .5rem .4rem;border-top:1px solid var(--o-line);margin-top:.5rem}.o-readout{display:flex;flex-direction:column;min-width:4.5rem}.o-readout-label{font-size:.74rem;color:var(--o-faint);font-weight:600}.o-readout-value{font-size:1.2rem;font-weight:700;line-height:1.3}.o-readout-value.is-accent{color:var(--wl)}.o-readout-value.is-warn{color:#ffb020}.o-eq{padding:.5rem .5rem .2rem;font-size:.98rem;color:var(--o-text);overflow-x:auto}.o-choice{display:flex;flex-wrap:wrap;gap:.4rem}.o-choice-btn{padding:.4rem .8rem;border-radius:99px;border:1px solid var(--o-line);font-size:.85rem;font-weight:700;color:var(--o-text);cursor:pointer;background:var(--o-bg)}.o-choice-btn.is-ok,.o-choice-btn:hover{border-color:var(--wl)}.o-choice-btn.is-ok{background:var(--wl);color:#05070b}.o-choice-btn.is-no{border-color:#ff5c39;color:#ff8d73;text-decoration:line-through}.o-btn{padding:.5rem 1rem;border-radius:10px;background:var(--wl);color:#05070b;font-weight:800;font-size:.88rem;cursor:pointer}.o-btn:hover{filter:brightness(1.12)}.o-btn.is-quiet{background:transparent;color:var(--o-text);border:1px solid var(--o-line)}.o-btn.is-quiet:hover{border-color:var(--o-dim);filter:none}.o-btn:disabled{opacity:.4;cursor:default}.o-missions{border:1px solid var(--o-line);border-radius:18px;background:var(--o-panel);padding:1rem 1rem .6rem}@media (min-width:1040px){.o-missions{position:sticky;top:4.5rem}}.o-missions-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.5rem}.o-missions-head h3{font-family:var(--font-display),system-ui,sans-serif;font-weight:800;font-size:1.05rem}.o-missions-head span{font-size:.82rem;color:var(--o-dim);font-weight:700}.o-missions ol{list-style:none;margin:0;padding:0}.o-mission{display:flex;gap:.7rem;padding:.7rem 0;border-top:1px solid var(--o-line)}.o-mission-mark{flex:none;display:grid;place-items:center;width:1.5rem;height:1.5rem;margin-top:.05rem;border-radius:99px;border:1.5px solid var(--o-faint);font-size:.72rem;font-weight:800;color:var(--o-faint)}.o-mission-title{font-size:.92rem;font-weight:700;line-height:1.35;color:var(--o-faint)}.o-mission.is-current .o-mission-title{color:var(--o-text)}.o-mission.is-current .o-mission-mark{border-color:var(--wl);color:var(--wl)}.o-mission.is-done .o-mission-mark{background:var(--wl);border-color:var(--wl);color:#05070b}.o-mission.is-done .o-mission-title{color:var(--o-dim);cursor:pointer}.o-mission.is-done .o-mission-title:hover{color:var(--o-text)}.o-mission-hint{margin-top:.3rem;font-size:.84rem;line-height:1.5;color:var(--o-dim)}.o-mission-why{margin-top:.5rem;font-size:.86rem;line-height:1.55;color:var(--o-text);padding:.6rem .7rem;border-radius:10px;background:color-mix(in srgb,var(--wl) 9%,var(--o-bg))}.o-mission.is-fresh .o-mission-mark{animation:o-pop .7s ease-out}.o-missions-all{border-top:1px solid var(--o-line);padding:.7rem 0 .4rem;font-size:.84rem;color:var(--o-dim)}@keyframes o-pop{0%{transform:scale(.4);box-shadow:0 0 0 0 var(--wl)}55%{transform:scale(1.25);box-shadow:0 0 0 12px transparent}to{transform:scale(1);box-shadow:0 0 0 0 transparent}}@media (prefers-reduced-motion:reduce){.o-mission.is-fresh .o-mission-mark{animation:none}}.o-section{margin-top:4rem}.o-h2{font-family:var(--font-display),system-ui,sans-serif;font-weight:800;font-size:1.55rem;letter-spacing:-.01em;margin-bottom:1.2rem}.o-ideas{display:grid;gap:0 3rem}@media (min-width:860px){.o-ideas{grid-template-columns:1fr 1fr}}.o-idea{padding:1.3rem 0;border-top:1px solid var(--o-line)}.o-idea h3{font-weight:800;font-size:1.06rem;line-height:1.35;margin-bottom:.5rem}.o-idea .prose-question{font-size:.98rem;line-height:1.65;color:var(--o-dim)}.o-idea .prose-question strong{color:var(--o-text)}.o-idea .katex-display{font-size:1.2em;margin:.9rem 0;color:var(--o-text);overflow-x:auto;overflow-y:hidden}.o-traps{display:grid;gap:1.1rem;max-width:50rem}.o-trap{padding:.2rem 0 .2rem 1.1rem;border-left:2px solid var(--wl)}.o-trap-myth{font-size:1rem;font-weight:700;color:var(--o-dim)}.o-trap-truth{margin-top:.3rem;font-size:.98rem;line-height:1.6}.o-enem{max-width:50rem}.o-enem a,.o-enem-row{display:grid;grid-template-columns:9.6rem minmax(0,1fr);gap:1rem;padding:.85rem 0;border-top:1px solid var(--o-line);text-decoration:none}.o-enem a:last-child,.o-enem-row:last-child{border-bottom:1px solid var(--o-line)}.o-enem a:hover .o-enem-note{color:var(--wl)}.o-enem-year{font-weight:800;color:var(--o-dim);font-size:.9rem}.o-enem-note{font-size:.98rem;line-height:1.5;transition:color .12s}.o-checks{list-style:none;margin:0;padding:0;max-width:50rem}.o-checks li{display:flex;gap:1rem;padding:1.2rem 0;border-top:1px solid var(--o-line)}.o-check-n{flex:none;font-weight:800;font-size:1.4rem;line-height:1.2;color:var(--wl);width:1.4rem}.o-check-q{font-weight:600;font-size:1.02rem;line-height:1.55}.o-check-a{margin-top:.7rem;padding:.7rem .9rem;border-radius:10px;background:color-mix(in srgb,var(--wl) 9%,var(--o-bg));font-size:.98rem;line-height:1.6}.o-next{margin-top:4rem;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;border-top:1px solid var(--o-line);padding-top:1.5rem}.o-next a{text-decoration:none;max-width:24rem}.o-next small{display:block;color:var(--o-faint);font-size:.8rem;font-weight:700}.o-next span{font-family:var(--font-display),system-ui,sans-serif;font-weight:800;font-size:1.2rem}.o-next a:hover span{color:var(--c,var(--wl))}.o-hero-title{font-family:var(--font-display),system-ui,sans-serif;font-weight:800;font-size:clamp(3.6rem,14vw,10rem);line-height:.88;letter-spacing:-.05em;padding-top:2.4rem}.o-hero-sub{margin-top:1.2rem;max-width:36rem;font-size:1.12rem;line-height:1.6;color:var(--o-dim)}.o-hero-stage{margin-top:1.6rem;border-radius:18px;overflow:hidden;border:1px solid var(--o-line)}.o-hero-note{margin-top:.6rem;font-size:.86rem;color:var(--o-faint)}.o-toc{margin-top:3.5rem}.o-toc a{display:grid;grid-template-columns:2.2rem minmax(0,1fr);gap:.3rem 1rem;align-items:baseline;padding:1.25rem 0;border-top:1px solid var(--o-line);text-decoration:none;position:relative}.o-toc a:before{content:"";position:absolute;left:0;top:-1px;height:2px;width:2.2rem;background:var(--c);box-shadow:0 0 12px var(--c);transition:width .25s ease}.o-toc a:hover:before{width:100%}.o-toc-n{color:var(--c)}.o-toc-n,.o-toc-title{font-family:var(--font-display),system-ui,sans-serif;font-weight:800;font-size:1.5rem}.o-toc-title{letter-spacing:-.01em}.o-toc-q{color:var(--o-dim);font-size:1rem;line-height:1.5;grid-column:2}.o-toc-meta{color:var(--o-faint);font-size:.84rem;font-weight:700;grid-column:2}.o-toc-meta b{color:var(--c);font-weight:800}@media (min-width:860px){.o-toc a{grid-template-columns:3.2rem 17rem minmax(0,1fr) 9rem}.o-toc a:before{width:3.2rem}.o-toc-meta,.o-toc-q{grid-column:auto}.o-toc-meta{text-align:right}}@media (prefers-reduced-motion:reduce){.o-toc a:before{transition:none}}.o-gate{margin-top:2rem;padding:2rem;border:1px solid color-mix(in srgb,var(--wl) 45%,var(--o-line));border-radius:18px;background:var(--o-panel);max-width:44rem}.o-gate h2{margin:0;font-size:1.35rem;font-weight:800;color:var(--o-text)}.o-gate p{margin:.6rem 0 0;color:var(--o-dim);line-height:1.55}.o-gate ul{margin:1rem 0 0;padding:0;list-style:none;color:var(--o-text)}.o-gate li{padding:.3rem 0 .3rem 1.4rem;position:relative;font-size:.95rem}.o-gate li:before{content:"";position:absolute;left:0;top:.78rem;width:.55rem;height:.55rem;border-radius:99px;background:var(--wl)}.o-gate-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.4rem}.o-gate-actions .o-btn{text-decoration:none;display:inline-block}.o-missions-xp{margin:.9rem 0 0;font-size:.78rem;color:var(--o-faint)}.o-maplinks{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:1rem;font-size:.85rem;color:var(--o-faint)}.o-maplinks a{padding:.2rem .7rem;border:1px solid var(--o-line);border-radius:99px;color:var(--o-dim);text-decoration:none}.o-maplinks a:hover{border-color:var(--wl);color:var(--o-text)}.o-steps{position:sticky;top:0;z-index:20;margin:1.6rem -1rem 0;padding:.6rem 1rem;background:color-mix(in srgb,var(--o-bg) 88%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--o-line)}.o-steps ol{display:flex;gap:.4rem;margin:0;padding:0;list-style:none;overflow-x:auto;scrollbar-width:none}.o-steps ol::-webkit-scrollbar{display:none}.o-steps li>*{display:inline-flex;align-items:center;gap:.45rem;min-height:2.25rem;padding:0 .8rem 0 .35rem;border-radius:99px;border:1.5px solid var(--o-line);background:var(--o-panel);color:var(--o-faint);font:inherit;font-size:.82rem;font-weight:700;white-space:nowrap}.o-steps li button{cursor:pointer;color:var(--o-text)}.o-steps b{display:inline-grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:99px;background:var(--o-panel-2);color:var(--o-dim);font-size:.74rem}.o-steps li.is-done b{background:color-mix(in srgb,var(--wl) 30%,var(--o-panel-2));color:var(--wl)}.o-steps li.is-here>*{border-color:var(--wl);background:color-mix(in srgb,var(--wl) 12%,var(--o-panel));color:var(--o-text)}.o-steps li.is-here b{background:var(--wl);color:#05070b}.o-steps li.is-later>*{opacity:.5}.o-step{margin-top:3.5rem;scroll-margin-top:4.5rem;animation:o-surge .5s ease both}.o-step.is-lab{margin-top:2rem}.o-step-num{display:flex;align-items:center;gap:.6rem;margin:0 0 .9rem;font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--wl)}.o-step-num span{padding:.15rem .6rem;border-radius:99px;background:var(--wl);color:#05070b}.o-step-next{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;margin-top:2rem;padding:1.1rem;border-radius:16px;border:2px dashed color-mix(in srgb,var(--wl) 60%,var(--o-line));background:color-mix(in srgb,var(--wl) 6%,var(--o-bg));max-width:50rem}.o-step-next .o-btn{min-height:3rem;padding:0 1.4rem;font-size:1rem}.o-step-next small{color:var(--o-dim);font-size:.86rem}.o-step-skip{color:var(--o-faint);text-decoration:underline;text-underline-offset:2px;cursor:pointer;font:inherit}.o-step-skip:hover{color:var(--o-text)}.o-step .o-section:first-child{margin-top:0}@keyframes o-surge{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.o-step{animation:none}}.o-ini-lead{margin:-.4rem 0 1.4rem;color:var(--o-dim);font-size:.98rem;max-width:46rem}.o-ini{list-style:none;margin:0;padding:0;display:grid;gap:0 3rem}@media (min-width:860px){.o-ini{grid-template-columns:1fr 1fr}}.o-ini-item{display:grid;grid-template-columns:2.6rem minmax(0,1fr);gap:.2rem .6rem;padding:1.3rem 0;border-top:1px solid var(--o-line)}.o-ini-n{font-weight:800;font-size:1.3rem;line-height:1.3;color:var(--wl)}.o-ini-item h3{font-weight:800;font-size:1.08rem;line-height:1.35;margin-bottom:.45rem}.o-ini-item .prose-question{font-size:.98rem;line-height:1.65;color:var(--o-dim)}.o-ini-item .prose-question strong{color:var(--o-text)}.o-ini-item .katex-display{font-size:1.15em;margin:.8rem 0;color:var(--o-text);overflow-x:auto;overflow-y:hidden}.o-ini-take{margin-top:.7rem;padding:.5rem .8rem;border-left:3px solid var(--wl);border-radius:0 10px 10px 0;background:color-mix(in srgb,var(--wl) 8%,var(--o-bg));font-weight:700;font-size:.94rem;line-height:1.5;color:var(--o-text)}