@font-face{font-family:"Instrument Serif";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-ext-400-normal-C2je3j2s.woff2) format("woff2"),url(/assets/instrument-serif-latin-ext-400-normal-CFCUzsTy.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Instrument Serif";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-400-normal-DnYpCC2O.woff2) format("woff2"),url(/assets/instrument-serif-latin-400-normal-BVbkICAY.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.learn{--bg: #06070C;--card: #0E1018;--raised: #171A25;--border: rgba(220, 226, 255, .08);--border-cream: rgba(239, 230, 210, .22);--label: #F4F1EA;--secondary: rgba(226, 228, 240, .64);--tertiary: rgba(226, 228, 240, .38);--separator: rgba(220, 226, 255, .1);--fill: rgba(120, 126, 160, .22);--accent: #EFE6D2;--on-accent: #06070C;--moon: #E9DFC4;--go: #7FD9B0;--nogo: #E07A6B;--glow: rgba(239, 230, 210, .55);--sim-ink: #F4F1EA;--sim-soft: rgba(226, 228, 240, .62);--sim-label: #EFE6D2;--sim-tertiary: #14161F;--sim-glow: rgba(239, 230, 210, .5);position:absolute;top:12px;right:12px;bottom:12px;left:12px;border-radius:26px;overflow:hidden;color:var(--label);background:radial-gradient(120% 90% at 70% 0%,var(--card) 0%,var(--bg) 62%);border:1px solid rgba(255,255,255,.07);box-shadow:0 30px 80px #00000080;isolation:isolate}.learn *{box-sizing:border-box}.learn button{font:inherit;color:inherit}.learn :focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:12px}.learn .serif{font-family:var(--serif);font-weight:400}.learn .eyebrow{color:var(--secondary);font-size:11.5px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase}.learn .accent-eyebrow{color:var(--accent)}.learn .muted{color:var(--secondary)}.learn .faint{color:var(--tertiary)}.ln-layer{position:absolute;top:0;right:0;bottom:0;left:0}.ln-content{position:relative;z-index:1;height:100%}.ln-scroll{height:100%;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgba(239,230,210,.18) transparent}.ln-col{margin:0 auto;padding:52px 28px 40px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.ln-sky{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:0}.ln-sky[data-paused=true],.ln-sky[data-paused=true] *{animation-play-state:paused!important}@keyframes ln-twinkle{0%{opacity:var(--lo)}to{opacity:var(--hi)}}@keyframes ln-drift{0%{transform:translate(0)}to{transform:translate(var(--dx),var(--dy))}}@keyframes ln-shoot{0%{opacity:0;transform:translate(0)}12%{opacity:1}65%{opacity:1}to{opacity:0;transform:translate(var(--dist))}}@keyframes ln-burst{0%{opacity:0;transform:scale(.7)}40%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.15)}}.ln-chip{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:5px 13px;border-radius:18px;background:var(--raised);border:1px solid var(--border);font-size:13.5px;font-weight:700}.ln-chip small{display:block;color:var(--secondary);font-size:11.5px;font-weight:600}.ln-chip .num{font-variant-numeric:tabular-nums}.ln-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 18px;border-radius:22px;border:1px solid var(--border-cream);background:var(--raised);color:var(--label);font-weight:650;font-size:14.5px;cursor:pointer;transition:transform .2s var(--ease),background .2s,box-shadow .25s;white-space:nowrap}.ln-btn:hover{background:linear-gradient(#efe6d20f,#efe6d20f),var(--raised);transform:translateY(-1px)}.ln-btn:active{transform:scale(.98)}.ln-btn.primary{background:#efe6d224;color:var(--accent);border:1.5px solid rgba(239,230,210,.62);box-shadow:none}.ln-btn.primary:hover{background:#efe6d233;box-shadow:none}.ln-btn.primary .ln-kbd{border-color:#efe6d266;color:var(--accent)}.ln-btn.big{height:54px;border-radius:27px;font-size:17px;letter-spacing:.3px}.ln-btn.ghost{background:transparent;border-color:transparent}.ln-btn.ghost:hover{background:#ffffff0d;border-color:var(--border)}.ln-btn:disabled{background:var(--raised);color:var(--tertiary);border-color:var(--border);box-shadow:none;cursor:default;transform:none}.ln-btn svg{width:16px;height:16px;flex:none}.ln-kbd{font-size:11px;font-weight:650;padding:1px 6px;border-radius:6px;border:1px solid currentColor;opacity:.55}.ln-title{font-family:var(--serif);font-weight:400;font-size:54px;line-height:1;margin:0;letter-spacing:-.3px}.ln-h2{font-family:var(--serif);font-weight:400;font-size:34px;line-height:1.05;margin:0}.ln-stack{display:flex;flex-direction:column}.ln-course-row{width:100%;display:flex;align-items:center;gap:14px;padding:13px 14px;border-radius:20px;border:1px solid var(--border);background:#06070c8c;text-align:left;cursor:pointer;transition:transform .2s var(--ease),border-color .2s,background .2s}.ln-course-row:hover{transform:translateY(-2px);border-color:#efe6d24d;background:#0e1018d9}.ln-course-row.card{min-height:124px;padding:20px;align-items:flex-start}.ln-course-row .st{color:var(--accent);font-size:11.5px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase}.ln-grid{display:grid;grid-template-columns:repeat(var(--cols, 1),minmax(0,1fr));gap:14px}.ln-continue{display:flex;align-items:center;gap:24px;padding:26px 28px;border-radius:28px;background:#efe6d21a;border:1px solid rgba(239,230,210,.32);box-shadow:0 0 40px #efe6d214}.ln-continue .body{flex:1;min-width:0;display:grid;gap:6px}.ln-continue .t{font-family:var(--serif);font-weight:400;font-size:36px;line-height:1.08;margin:0}.ln-bar{height:6px;border-radius:3px;background:#a0a6c866;overflow:hidden;margin-top:6px;max-width:420px}.ln-bar i{display:block;height:100%;border-radius:3px;background:var(--accent)}@media (max-width: 760px){.ln-continue{flex-wrap:wrap;padding:20px;gap:16px}.ln-continue .ln-btn{width:100%}}.ln-course-row.on{background:#efe6d21f;border-color:#efe6d266}.ln-course-row .t{font-weight:700;font-size:16px;line-height:1.25}.ln-course-row.card .t{font-size:18px}.ln-course-row.on .t{color:var(--accent)}.ln-course-row .s{color:var(--secondary);font-size:13.5px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ln-course-row .k{color:var(--tertiary);font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ln-new{padding:4px 9px;border-radius:10px;border:1px solid rgba(239,230,210,.35);color:var(--accent);font-size:12px;font-weight:700;letter-spacing:.4px}.ln-art-tile{position:relative;display:block;flex:none}.ln-art-tile>svg:first-child{position:absolute;left:0;top:0}.ln-rung{position:absolute;font-family:var(--serif);font-variant-numeric:lining-nums;white-space:nowrap}.ln-chips{display:inline-flex;align-items:center;gap:5px;flex:none}.ln-art-banner{display:block;border-radius:22px;border:1px solid var(--border);background:#06070c;overflow:hidden}.ln-kitline{display:flex;align-items:center;gap:8px;min-width:0}.ln-rungline{color:var(--secondary);font-size:12px;font-weight:700;letter-spacing:1.3px;text-transform:uppercase}.ln-switch-card{padding:10px 14px;border-radius:16px;border:1px solid var(--border);background:#06070c8c;display:grid;gap:4px}.ln-switch-card.on{border-color:#efe6d266}.ln-switch{position:relative;width:44px;height:26px;border-radius:13px;border:1px solid var(--border-cream);background:var(--raised);cursor:pointer;flex:none;transition:background .2s}.ln-switch:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:9px;background:var(--label);transition:transform .25s var(--ease)}.ln-switch[aria-checked=true]{background:var(--accent)}.ln-switch[aria-checked=true]:after{transform:translate(18px);background:var(--on-accent)}.ln-band{position:relative}.ln-band-bg{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:22px;background:#06070c9e;border:1px solid var(--border-cream);pointer-events:none}.ln-band-q{position:absolute;display:flex;flex-direction:column;justify-content:center;gap:6px;padding:12px 16px;border:0;background:transparent;text-align:left;cursor:pointer;border-radius:22px}.ln-band-q.said{background:var(--card);border:1px solid rgba(239,230,210,.26);box-shadow:0 6px 20px #0006}.ln-band-q:hover .act{color:var(--label)}.ln-band-q .ey{display:flex;align-items:center;gap:6px;color:var(--accent);font-size:12px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;white-space:nowrap;overflow:hidden}.ln-band-q .body{font-family:var(--serif);font-size:20px;line-height:25px;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.ln-band-q .act{display:flex;align-items:center;gap:4px;color:var(--secondary);font-size:14px;font-weight:600}.ln-band-tail{position:absolute;width:14px;height:14px;background:var(--card);border-right:1px solid rgba(239,230,210,.26);border-top:1px solid rgba(239,230,210,.26);transform:rotate(45deg);pointer-events:none}.ln-qotd{padding:22px;border-radius:26px;background:#06070c9e;border:1px solid var(--border-cream);box-shadow:0 0 28px #efe6d212;display:grid;gap:14px;animation:rise .35s var(--ease) both}.ln-qotd .q{font-family:var(--serif);font-size:28px;line-height:1.12;margin:0}.ln-option{width:100%;min-height:56px;display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:18px;border:1px solid var(--border);background:var(--card);text-align:left;cursor:pointer;font-size:17px;line-height:1.3;transition:border-color .15s,background .15s,transform .15s var(--ease);position:relative}.ln-option:hover:not(:disabled){border-color:#efe6d24d}.ln-option:active:not(:disabled){transform:scale(.99)}.ln-option[aria-checked=true],.ln-option.on{border:2px solid var(--accent);background:var(--raised);padding:11px 15px;font-weight:600}.ln-option.right{border:2px solid var(--go);padding:11px 15px}.ln-option.wrong{border:2px solid var(--nogo);padding:11px 15px}.ln-option:disabled{cursor:default}.ln-option .grow{flex:1;min-width:0}.ln-option .key{flex:none;width:24px;height:24px;border-radius:7px;display:grid;place-items:center;font-size:12px;font-weight:700;color:var(--tertiary);border:1px solid var(--border);font-variant-numeric:tabular-nums}.ln-mark{width:22px;height:22px;flex:none}.ln-mark.right{color:var(--go)}.ln-mark.wrong{color:var(--nogo)}.ln-pic{position:relative;width:100%;border-radius:20px;overflow:hidden;background:var(--raised);border:1px solid var(--border)}.ln-pic img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.ln-credit{color:var(--tertiary);font-size:12px;line-height:16px;margin-top:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ln-area{position:absolute;border-radius:14px;border:1.5px dashed rgba(244,241,234,.45);background:#06070c1f;cursor:pointer;display:flex;justify-content:flex-end;align-items:flex-start;padding:6px}.ln-area:hover:not(:disabled){border-color:#efe6d2cc}.ln-area.on{border:2px solid var(--accent);background:#efe6d224;box-shadow:0 0 16px #efe6d273}.ln-area.right{border:2px solid var(--go)}.ln-area.wrong{border:2px solid var(--nogo)}.ln-pair{min-height:64px;display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:16px;border:1px solid var(--border);background:var(--card);text-align:left;cursor:pointer;font-size:15px;line-height:1.3}.ln-pair.l{font-size:16px;font-weight:600}.ln-pair.held{border:2px solid var(--accent);padding:9px 11px}.ln-pair.made{background:var(--raised)}.ln-num{width:22px;height:22px;border-radius:11px;flex:none;display:grid;place-items:center;background:var(--accent);color:var(--on-accent);font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}.ln-slot{width:100%;min-height:52px;display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:16px;border:1px dashed var(--tertiary);background:transparent;text-align:left;font-size:16px;color:var(--tertiary);cursor:default}.ln-slot.filled{border-style:solid;border-color:var(--border);background:var(--raised);color:var(--label);cursor:pointer}.ln-slot .n{width:26px;height:26px;border-radius:13px;flex:none;display:grid;place-items:center;background:var(--fill);color:var(--secondary);font-size:13px;font-weight:700}.ln-slot.filled .n{background:var(--accent);color:var(--on-accent)}.ln-step{display:inline-flex;align-items:center;gap:8px;max-width:100%;min-height:44px;padding:10px 14px;white-space:normal;overflow-wrap:anywhere;border-radius:14px;border:1px solid var(--border);background:var(--card);font-size:15px;cursor:pointer;text-align:left}.ln-step:hover:not(:disabled){border-color:#efe6d24d}.ln-numfield{display:flex;align-items:baseline;justify-content:center;gap:10px;padding:18px 20px;border-radius:22px;border:1px solid var(--border);background:var(--card)}.ln-numfield.on{border-color:var(--accent)}.ln-numfield input{width:200px;background:transparent;border:0;outline:none;color:var(--label);font:52px/1 var(--serif);text-align:center}.ln-numfield input::placeholder{color:var(--tertiary);font:20px/52px var(--sans, system-ui)}.ln-numfield .u{color:var(--secondary);font:30px/1 var(--serif)}.ln-plan{width:100%;border-radius:22px;border:1px solid var(--border);background:var(--card);overflow:hidden}.ln-plan-row{width:100%;min-height:54px;display:flex;align-items:center;gap:12px;padding:12px 16px;border:0;border-top:1px solid var(--separator);background:transparent;font-size:17px;text-align:left;cursor:pointer}.ln-plan-row:first-of-type{border-top:0}.ln-plan-row.on{background:var(--raised);font-weight:600}.ln-plan-row.right{box-shadow:inset 3px 0 0 var(--go)}.ln-plan-row.wrong{box-shadow:inset 3px 0 0 var(--nogo)}.ln-readout{flex:1;padding:8px 12px;border-radius:12px;background:var(--card);border:1px solid var(--border)}.ln-readout b{display:block;font-size:15px}.ln-readout span{color:var(--tertiary);font-size:12px;font-weight:600}.ln-slider{display:grid;gap:2px}.ln-slider input[type=range]{width:100%;height:44px;margin:0;background:transparent;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.ln-slider input[type=range]:disabled{cursor:default}.ln-slider input[type=range]::-moz-range-track{height:4px;border-radius:2px;background:var(--raised)}.ln-slider input[type=range]::-moz-range-progress{height:4px;border-radius:2px;background:#efe6d28c}.ln-slider input[type=range]::-moz-range-thumb{width:24px;height:24px;border:0;border-radius:50%;background:var(--accent);box-shadow:0 0 12px #efe6d273}.ln-slider input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:2px;background:linear-gradient(90deg,rgba(239,230,210,.55) var(--fill-to, 0%),var(--raised) var(--fill-to, 0%))}.ln-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;margin-top:-10px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px #efe6d273}.sim-pic{border-radius:18px;overflow:hidden;background:#05060a;border:1px solid var(--border)}.sim-pic svg{background:#05060a}.sim-credit{margin:0;padding:6px 12px 8px;font-size:11.5px;line-height:1.35;color:var(--tertiary);background:#05060a}.sim-caption{margin:0;font-size:15px;line-height:1.4;min-height:2.8em}.sim-loading{display:grid;place-items:center;aspect-ratio:1.5;border-radius:18px;background:#05060a;border:1px solid var(--border)}.sim-option{min-height:36px;padding:6px 13px;border-radius:18px;border:1px solid var(--border);background:var(--raised);color:var(--secondary);font-size:13.5px;font-weight:650;cursor:pointer;transition:background .2s,color .2s,border-color .2s}.sim-option:hover{color:var(--label)}.sim-option.on{background:#efe6d224;color:var(--accent);border:1.5px solid rgba(239,230,210,.62)}.sim-option:disabled{cursor:default}.sim-typed{width:96px;height:32px;padding:0 10px;border-radius:10px;border:1px solid var(--border-cream);background:var(--card);color:var(--accent);font:inherit;font-size:14px;font-variant-numeric:tabular-nums;text-align:right}.sim-numbers{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:6px}.sim-number{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:34px;padding:3px 5px 3px 12px;border-radius:12px;background:var(--card);border:1px solid var(--border);font-size:13.5px;font-variant-numeric:tabular-nums}.sim-number span{min-width:0;overflow-wrap:anywhere}.ln-lesson{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:flex;flex-direction:column}.ln-lesson-col{flex:1;min-height:0;width:100%;margin:0 auto;display:flex;flex-direction:column;position:relative}.ln-lesson-top{display:flex;align-items:center;gap:10px;padding:44px 12px 0;min-height:92px}.ln-close{width:44px;height:44px;border-radius:22px;display:grid;place-items:center;border:0;background:transparent;color:var(--secondary);cursor:pointer}.ln-close:hover{background:#ffffff0f;color:var(--label)}.ln-close svg{width:20px;height:20px}.ln-progress{flex:1;height:10px;border-radius:5px;background:var(--raised);margin-right:16px;overflow:hidden}.ln-progress i{display:block;height:100%;border-radius:5px;background:var(--accent);box-shadow:0 0 10px #efe6d273;transition:width .32s cubic-bezier(.23,1,.32,1)}.ln-kicker{display:flex;align-items:center;gap:10px;color:var(--accent);font-size:12px;font-weight:700;letter-spacing:1.3px;text-transform:uppercase}.ln-again{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:8px;background:var(--raised);color:var(--secondary);font-size:11px;font-weight:600;letter-spacing:0;text-transform:none}.ln-prompt{font-family:var(--serif);font-weight:400;font-size:36px;line-height:1.1;margin:8px 0 0}.ln-answers{min-height:0;overflow-y:auto;padding:16px 20px 24px}.ln-foot{position:relative;z-index:3;padding:10px 20px 20px;display:grid;gap:12px}.ln-feedback{padding:16px;border-radius:22px;background:var(--card);border:1px solid var(--border);display:grid;gap:8px;animation:rise .22s var(--ease) both}.ln-feedback .h{display:inline-flex;align-items:center;gap:10px;font-size:18px;font-weight:700}.ln-feedback .h.right{color:var(--go)}.ln-feedback .h.wrong{color:var(--nogo)}.ln-feedback .why{color:var(--secondary);font-size:15px;line-height:1.45;margin:0}.ln-feedback .ans{font-size:15px;font-weight:600;line-height:1.45;white-space:pre-line;margin:0}.ln-feedback .again{color:var(--tertiary);font-size:13px;margin:0}.ln-companion-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:2}.ln-companion-layer>*{pointer-events:auto}.ln-modal{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;align-items:flex-end;justify-content:center;padding:12px;background:#06070cb8;animation:fade .16s both}.ln-modal-card{width:100%;max-width:560px;margin-bottom:12px;padding:22px;border-radius:28px;background:var(--card);border:1px solid var(--border);display:grid;gap:10px}.ln-tile{flex:1;display:grid;justify-items:center;gap:4px;padding:16px 10px;border-radius:22px;background:var(--card);border:1px solid var(--border);text-align:center}.ln-tile b{color:var(--accent);font:40px/1.05 var(--serif);font-variant-numeric:tabular-nums;font-weight:400}.ln-tile span{color:var(--secondary);font-size:13px;line-height:1.35}.ln-cmp{position:relative}.ln-cmp-hit{position:absolute;left:15%;top:8%;width:70%;height:88%;border:0;background:transparent;cursor:pointer;border-radius:40%;padding:0;pointer-events:auto}.ln-cmp-shadow{position:absolute;border-radius:50%;background:#00000061;pointer-events:none}.ln-bubble{position:absolute;z-index:4;background:var(--card);color:var(--label);border-radius:22px;border:1px solid rgba(239,230,210,.22);padding:12px 16px;font-size:16px;line-height:1.35;box-shadow:0 6px 20px #0006;pointer-events:none;animation:fade .2s both;white-space:pre-line}.ln-bubble.static{position:relative;max-width:320px}.ln-bubble .tail{position:absolute;width:14px;height:14px;background:var(--card);border:0 solid rgba(239,230,210,.22);transform:rotate(45deg)}.ln-bubble .tail.left{border-left-width:1px;border-bottom-width:1px}.ln-bubble .tail.right{border-right-width:1px;border-top-width:1px}.ln-bubble .tail.top{border-left-width:1px;border-top-width:1px}.ln-bubble .tail.bottom{border-right-width:1px;border-bottom-width:1px}.ln-bubble .unsaid{opacity:0}.ln-namecard{pointer-events:auto;display:grid;gap:8px}.ln-namecard b{font-size:16px}.ln-path{position:relative;height:100%}.ln-unit{position:relative}.ln-banner-wrap{position:sticky;top:0;z-index:3;padding-top:52px;margin-top:-52px;pointer-events:none}.ln-banner-wrap>*{pointer-events:auto}.ln-banner{display:flex;align-items:center;gap:12px;padding:14px 18px;border-radius:22px;background:var(--card);border:1px solid var(--border-cream);box-shadow:0 12px 30px #06070c99}.ln-banner.faint{background:#0e1018eb;border-color:var(--border)}.ln-banner.faint>div{opacity:.6}.ln-banner h3{font-family:var(--serif);font-weight:400;font-size:30px;line-height:1.05;margin:3px 0}.ln-star{position:absolute;display:grid;place-items:center;border-radius:50%;border:0;padding:0;cursor:pointer;transition:transform .18s var(--ease),box-shadow .25s}.ln-star:hover:not(:disabled){transform:scale(1.08)}.ln-star:disabled{cursor:default}.ln-star svg{pointer-events:none}.ln-star.done{background:var(--accent);color:var(--on-accent);box-shadow:0 0 22px #efe6d28c}.ln-star.current{background:var(--accent);color:var(--on-accent);box-shadow:0 0 0 8px #efe6d229,0 0 38px #efe6d2b3}.ln-star.open{background:var(--raised);color:var(--accent);border:1.5px solid var(--accent);box-shadow:0 0 16px #efe6d24d}.ln-star.locked{background:var(--raised);color:var(--tertiary);border:1.5px solid rgba(239,230,210,.16)}.ln-star.sky{background:var(--card);color:var(--secondary);border:1.5px dashed rgba(239,230,210,.35)}.ln-star.sky_done{background:var(--accent);color:var(--on-accent);box-shadow:0 0 0 6px #efe6d224,0 0 30px #efe6d2cc}.ln-star.sky_done.checking{background:var(--card);color:var(--accent);border:1.5px solid var(--accent)}.ln-star-label{position:absolute;left:-40px;right:-40px;text-align:center;pointer-events:none;font-size:12.5px;font-weight:600;letter-spacing:.3px;color:var(--secondary);white-space:nowrap}.ln-start{position:absolute;left:50%;transform:translate(-50%);padding:5px 12px;border-radius:10px;background:var(--accent);color:var(--on-accent);font-size:12.5px;font-weight:700;letter-spacing:.6px;pointer-events:none;white-space:nowrap}.ln-jump{position:absolute;left:50%;bottom:20px;transform:translate(-50%);z-index:5;display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 18px;border-radius:22px;border:0;background:var(--accent);color:var(--on-accent);font-weight:700;font-size:15px;cursor:pointer;box-shadow:0 6px 24px #00000073;animation:rise .3s var(--ease) both}.ln-jump svg{width:15px;height:15px}@keyframes ln-brighten{0%{opacity:.3;transform:scale(.82)}45%{opacity:1;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}@keyframes ln-halo{0%{opacity:0;transform:scale(.6)}35%{opacity:.5;transform:scale(1.2)}to{opacity:0;transform:scale(1.9)}}@keyframes ln-lines{0%{opacity:.25}to{opacity:1}}@keyframes ln-art{0%{opacity:0}to{opacity:1}}.ln-level{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 14px;border-radius:14px;border:1px solid var(--border);background:var(--raised);text-align:left;cursor:pointer;font-size:15px}.ln-level:disabled{cursor:default}.ln-level.now{background:#efe6d21f;border-color:#efe6d266;font-weight:700}.ln-level .w{font-size:13px;font-weight:600;color:var(--tertiary);white-space:nowrap}.ln-level .w.lit{color:var(--accent)}.ln-unit-item{width:100%;padding:10px 12px;border-radius:12px;border:1px solid transparent;background:transparent;text-align:left;cursor:pointer}.ln-unit-item:hover{background:#ffffff0a}.ln-unit-item.on{background:#efe6d21f;border-color:#efe6d266}.ln-sheet-scrim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;background:#06070c80;animation:fade .2s both}.ln-sheet{position:absolute;right:12px;top:12px;bottom:12px;z-index:11;width:min(420px,calc(100% - 24px));overflow-y:auto;padding:26px 22px;border-radius:24px;background:var(--card);border:1px solid var(--border-cream);box-shadow:-20px 0 60px #00000080;animation:ln-slide .32s var(--ease) both}@keyframes ln-slide{0%{transform:translate(30px);opacity:0}to{transform:none;opacity:1}}.ln-card{display:flex;gap:12px;align-items:center;padding:16px;border-radius:20px;background:var(--card);border:1px solid var(--border-cream)}.ln-card.glow{border-color:#efe6d273;box-shadow:0 0 24px #efe6d214}.ln-card b{display:block;font-size:15px}.ln-card p{margin:2px 0 0;color:var(--secondary);font-size:13.5px;line-height:1.4}.ln-card .ic{width:30px;display:grid;place-items:center;color:var(--accent);flex:none}.ln-stat{flex:1;display:grid;justify-items:center;align-content:start;gap:4px;padding:14px 8px;border-radius:20px;background:var(--card);border:1px solid var(--border);text-align:center}.ln-stat b{font:30px/1.1 var(--serif);font-weight:400}.ln-stat b.small{font:700 15px/1.3 var(--sans)}.ln-stat span{color:var(--secondary);font-size:12.5px}.ln-stat em{color:var(--accent);font-size:12px;font-weight:700;font-style:normal}.ln-rise{animation:rise .5s var(--ease) both}@media (prefers-reduced-motion: reduce){.ln-rise,.ln-qotd,.ln-feedback,.ln-jump,.ln-sheet,.ln-bubble,.ln-modal{animation:none!important}.ln-btn,.ln-star,.ln-course-row,.ln-progress i{transition:none!important}}.ln-numfield:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #efe6d21f}.ln-numfield input:focus-visible{outline:none}.ln-topbar{position:absolute;z-index:5;top:16px;left:50%;transform:translate(-50%);display:flex;align-items:center;justify-content:space-between;gap:12px;pointer-events:none}.ln-topbar>*{pointer-events:auto}.ln-topbar .ln-btn{height:36px;padding:0 14px;background:#0e1018d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.ln-topbar .name{flex:1;min-width:0;text-align:center;font-family:var(--serif);font-size:20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none;text-shadow:0 1px 8px rgba(0,0,0,.7)}.ln-chipbtn{height:28px;padding:0 12px;border-radius:14px;border:1px dashed var(--border-cream);background:transparent;color:var(--tertiary);font-size:12px;cursor:pointer}.ln-chipbtn:hover{color:var(--label)}html[data-red] .learn{--tertiary: rgba(226, 228, 240, .64)}.lp-center{margin:auto;text-align:center;display:grid;gap:12px;justify-items:center}.fs-box{position:relative;border-radius:18px;overflow:hidden;background:#05060a;border:1px solid var(--border)}.fs-sky{display:block;width:100%;height:100%;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.fs-close{position:absolute;top:8px;left:8px;width:34px;height:34px;border-radius:17px;display:grid;place-items:center;cursor:pointer;color:var(--label);background:#0a0c14b3;border:1px solid var(--border);padding:0}.fs-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.fs-sky:active{cursor:grabbing}.fs-bg{fill:#05060a}.fs-lines{fill:none;stroke:#e2e4f057;stroke-width:1}.fs-star{fill:#f4f1ead9}.fs-name{fill:var(--tertiary);font-size:11px;font-weight:600;letter-spacing:.4px;pointer-events:none}.fs-horizon{fill:none;stroke:#efe6d28c;stroke-width:1.5}.fs-compass{fill:var(--accent);font-size:13px;font-weight:700;pointer-events:none}.fs-box-target{fill:#efe6d20f;stroke:var(--accent);stroke-width:2}.fs-target[data-below=true] .fs-box-target{stroke-dasharray:5 4}.fs-label{fill:var(--accent);font-size:12.5px;font-weight:700;pointer-events:none}.fs-arrow-bg{fill:#efe6d2e6}.fs-arrow-mark{fill:none;stroke:var(--on-accent);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.fs-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:34px;font-size:13.5px}@keyframes fs-pulse{0%,to{opacity:1}50%{opacity:.55}}@media (prefers-reduced-motion: no-preference){.fs-target .fs-box-target{animation:fs-pulse 1.8s ease-in-out infinite}}:root{--bg: #04050a;--dusk: rgba(74, 58, 112, .28);--label: #f4f1ea;--secondary: #c3c4d1;--tertiary: #9a9cb0;--accent: #efe6d2;--on-accent: #06070c;--edge: rgba(255, 255, 255, .12);--edge-bright: rgba(255, 255, 255, .3);--field: rgba(255, 255, 255, .05);--field-strong: rgba(255, 255, 255, .1);--panel: rgba(255, 255, 255, .035);--side: rgba(255, 255, 255, .018);--danger: #ff9a8a;--tone-quiet: #b7b8c6;--tone-waiting: #ecc685;--tone-ready: #a9c4ff;--tone-live: #93dcab;--tone-ended: #8e90a4;--tone-danger: #ff9a8a;--del-bg: rgba(255, 128, 112, .12);--del-strong: rgba(255, 128, 112, .32);--del-ink: #ffb3a8;--add-bg: rgba(120, 214, 150, .11);--add-strong: rgba(120, 214, 150, .3);--add-ink: #a6e8bb;--serif: "Instrument Serif", "Iowan Old Style", Georgia, serif;--sans: -apple-system, BlinkMacSystemFont, "Segoe UI Variable Text", "Segoe UI", system-ui, sans-serif;--gutter: 16px;--column: 960px;--page: 1240px;--side-width: 248px;color-scheme:dark}:root[data-theme=light]{--bg: #ede9e0;--dusk: rgba(160, 140, 200, .22);--label: #16181c;--secondary: #44464d;--tertiary: #5d5f68;--accent: #16181c;--on-accent: #f4f1ea;--edge: rgba(22, 24, 28, .16);--edge-bright: rgba(22, 24, 28, .45);--field: rgba(22, 24, 28, .05);--field-strong: rgba(22, 24, 28, .1);--panel: rgba(255, 255, 255, .5);--side: rgba(255, 255, 255, .28);--danger: #a3271a;--tone-quiet: #4f5159;--tone-waiting: #7f5200;--tone-ready: #23489a;--tone-live: #1c6638;--tone-ended: #5d5f68;--tone-danger: #a3271a;--del-bg: rgba(190, 50, 30, .09);--del-strong: rgba(190, 50, 30, .24);--del-ink: #9b2617;--add-bg: rgba(30, 130, 70, .1);--add-strong: rgba(30, 130, 70, .25);--add-ink: #1c6638;color-scheme:light}@media (min-width: 640px){:root{--gutter: 32px}}*,*:before,*:after{box-sizing:border-box}html{background:var(--bg);-webkit-text-size-adjust:100%}body{margin:0;min-height:100vh;background:var(--bg) radial-gradient(120% 60% at 50% -10%,var(--dusk),transparent 70%) no-repeat;color:var(--label);font:400 1.0625rem / 1.6 var(--sans);-webkit-font-smoothing:antialiased}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.005em;line-height:1.08;margin:0;text-wrap:balance}p{margin:0}a{color:inherit}:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:4px}h1:focus{outline:none}.sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}html[data-red]{background:#000}html[data-red] body{filter:url(#red-light) brightness(.7)}.red-filter{position:absolute;width:0;height:0;overflow:hidden}.skip{position:absolute;left:12px;top:-64px;z-index:10;padding:10px 16px;border-radius:8px;background:var(--accent);color:var(--on-accent);text-decoration:none}.skip:focus{top:12px}.wordmark{display:inline-flex;align-items:baseline;gap:8px;text-decoration:none}.wordmark-name{font-family:var(--serif);font-size:1.9rem;line-height:1}.wordmark-sub{font-size:.95rem;color:var(--tertiary)}.shell{display:grid;grid-template-columns:var(--side-width) minmax(0,1fr);min-height:100vh}.side{border-right:1px solid var(--edge);background:var(--side)}.side-inner{position:sticky;top:0;height:100vh;overflow-y:auto;display:flex;flex-direction:column;gap:28px;padding:26px 14px 18px}.side-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-left:10px}.side-menu{display:none}.side-panel{display:flex;flex-direction:column;gap:26px;flex:1}.side-nav{display:grid;gap:22px}.side-group-h{margin:0 0 4px 12px;color:var(--tertiary);font-size:.82rem;font-weight:600}.side-nav ul{display:grid;gap:2px;margin:0;padding:0;list-style:none}.side-link{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px;padding:0 12px;border-radius:8px;color:var(--secondary);text-decoration:none;font-size:.98rem}.side-link:hover{background:var(--field);color:var(--label)}.side-link[aria-current=page]{background:var(--field-strong);color:var(--label);font-weight:600;box-shadow:inset 3px 0 0 var(--accent)}.side-count{min-width:26px;padding:0 8px;border:1px solid var(--tone-waiting);border-radius:999px;color:var(--tone-waiting);font-size:.8rem;font-weight:600;line-height:1.6;text-align:center;font-variant-numeric:tabular-nums}.side-foot{display:grid;gap:6px;margin-top:auto;padding-top:16px;border-top:1px solid var(--edge)}.side .looks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;padding:3px;border:1px solid var(--edge);border-radius:10px}.side .look{min-height:44px;padding:0 4px;border:0;border-radius:7px;background:none;color:var(--secondary);font:inherit;font-size:.85rem;cursor:pointer}.side .look:hover{color:var(--label)}.side .look[aria-pressed=true]{background:var(--field-strong);color:var(--label);font-weight:600}.side-out{min-height:44px;padding:0 12px;border:0;border-radius:8px;background:none;color:var(--secondary);font:inherit;font-size:.95rem;text-align:left;cursor:pointer}.side-out:hover{background:var(--field);color:var(--label)}.main{min-width:0;padding:40px clamp(20px,3.5vw,56px) 96px}.main-solo{width:min(var(--column),100%);margin-inline:auto;padding-inline:var(--gutter)}@media (max-width: 767px){.shell{display:block}.side{border-right:0;border-bottom:1px solid var(--edge)}.side-inner{position:static;height:auto;overflow:visible;gap:0;padding:12px var(--gutter)}.side-top{padding-left:0}.side-menu{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:1px solid var(--edge-bright);border-radius:10px;background:none;color:var(--label);font:inherit;cursor:pointer}.side-menu[aria-expanded=true]{background:var(--field-strong)}.side-panel:not([data-open]){display:none}.side-panel{padding-top:18px;padding-bottom:6px}.main{padding:28px var(--gutter) 72px}}.header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 24px;width:min(var(--column),100%);margin-inline:auto;padding:20px var(--gutter) 14px}.header-end{display:flex;flex-wrap:wrap;gap:4px}.header .looks{display:flex;gap:4px}.header .look{min-height:44px;padding:0 10px;border:0;border-bottom:2px solid transparent;border-radius:0;background:none;color:var(--secondary);font:inherit;font-size:.9rem;cursor:pointer}.header .look:hover{color:var(--label)}.header .look[aria-pressed=true]{color:var(--label);border-bottom-color:var(--accent)}.look-out{margin-left:8px;padding-left:14px;border-left:1px solid var(--edge)}.page{max-width:var(--page)}.page>*+*{margin-top:20px}.page-head{display:grid;gap:12px;margin-bottom:12px}.page-title{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px}.page h1{font-size:clamp(2.2rem,1.6rem + 2vw,3.2rem)}.crumbs ol{display:flex;flex-wrap:wrap;gap:0 8px;margin:0;padding:0;list-style:none;color:var(--secondary);font-size:.95rem}.crumbs li+li:before{content:"/" / "";margin-right:8px;color:var(--tertiary)}.crumbs a{text-underline-offset:3px}.crumbs a:hover{color:var(--label)}.lede{color:var(--secondary);max-width:40em}.status{color:var(--secondary)}.status-label{display:inline-flex;align-items:center;gap:7px;padding:3px 11px 3px 9px;border:1px solid currentColor;border-radius:7px;color:var(--tone);font-size:.88rem;font-weight:600;line-height:1.4;white-space:nowrap}.status-dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}.status-inline{padding:0;border:0;color:var(--label);font-weight:500;font-size:inherit}.status-inline .status-dot{color:var(--tone)}.tone-quiet{--tone: var(--tone-quiet)}.tone-waiting{--tone: var(--tone-waiting)}.tone-ready{--tone: var(--tone-ready)}.tone-live{--tone: var(--tone-live)}.tone-ended{--tone: var(--tone-ended)}.tone-danger{--tone: var(--tone-danger)}.queue{container-type:inline-size;border:1px solid var(--edge);border-radius:12px;overflow:hidden}.queue-tools{display:flex;flex-wrap:wrap;gap:12px;padding:12px 18px;border-bottom:1px solid var(--edge)}.queue-head,.qrow{display:grid;gap:20px;padding-inline:18px;align-items:center}.queue-cols-2 :is(.queue-head,.qrow){grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}.queue-cols-3 :is(.queue-head,.qrow){grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1.4fr)}.queue-cols-4 :is(.queue-head,.qrow){grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1.2fr) minmax(0,1.3fr)}.queue-cols-5 :is(.queue-head,.qrow){grid-template-columns:minmax(0,1.6fr) repeat(4,minmax(0,1fr))}.queue-head{min-height:40px;background:var(--field);border-bottom:1px solid var(--edge);color:var(--tertiary);font-size:.82rem;font-weight:600}.queue-rows{margin:0;padding:0;list-style:none}.qrow{min-height:64px;padding-block:14px}.qrow+.qrow{border-top:1px solid var(--edge)}.qrow:hover{background:var(--field)}.qcell{min-width:0;overflow-wrap:anywhere;font-size:.97rem}.qcell-main{display:grid;gap:2px}.qrow-title{margin:0;font:600 1.02rem / 1.4 var(--sans);letter-spacing:0}.qrow-link{text-decoration:none}.qrow-link:hover{text-decoration:underline;text-underline-offset:3px}.qrow-sub,.qcell-sub{display:block;color:var(--secondary);font-size:.88rem}.qcell-label{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.qcell-versions{display:flex;flex-wrap:wrap;gap:4px 16px}.qcell-version a{text-underline-offset:3px}@container (max-width: 620px){.queue-head{display:none}.queue .qrow{grid-template-columns:minmax(0,1fr);gap:6px}.qcell-label{position:static;width:auto;height:auto;margin:0 8px 0 0;overflow:visible;clip:auto;color:var(--tertiary);font-size:.82rem;font-weight:600}.qcell:not(.qcell-main){display:flex;flex-wrap:wrap;align-items:baseline}}.detail{display:grid;gap:32px;align-items:start}.detail-body{display:grid;gap:40px;min-width:0}.detail-body>.block:first-child{padding-top:0;border-top:0}@media (min-width: 1180px){.detail{grid-template-columns:minmax(0,1fr) 340px;gap:48px}.detail-body{grid-column:1;grid-row:1}.decision{grid-column:2;grid-row:1;position:sticky;top:24px;max-height:calc(100vh - 48px);overflow-y:auto}}.decision{display:grid;padding:2px 20px;border:1px solid var(--edge);border-radius:14px;background:var(--panel)}.decision>*{padding-block:18px}.decision>*+*{border-top:1px solid var(--edge)}.decide-part{display:grid;gap:10px;justify-items:start}.decide-part>*{max-width:100%}.decide-h{font:600 .95rem / 1.4 var(--sans);letter-spacing:0;color:var(--secondary)}.decide-main .decide-h{color:var(--label)}.decide-big{font-family:var(--serif);font-size:2.6rem;line-height:1}.decide-say{font-size:.97rem}.decision .hint{font-size:.88rem}.decision .notice{margin-top:0;max-width:none}.decision .confirm{width:100%;max-width:none;padding:12px}.decision .actions{width:100%;gap:16px}.actions-more{padding-top:14px;border-top:1px solid var(--edge)}.stage-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);margin:0;padding:0;list-style:none}.stage-step{position:relative;display:grid;justify-items:start;gap:7px;color:var(--tertiary);font-size:.84rem}.stage-step:not(:last-child):before{content:"";position:absolute;top:5px;left:14px;right:2px;height:2px;border-radius:1px;background:var(--edge)}.stage-mark{position:relative;width:12px;height:12px;border:2px solid var(--edge-bright);border-radius:50%;background:var(--bg)}.stage-done{color:var(--secondary)}.stage-done .stage-mark{border-color:var(--secondary);background:var(--secondary)}.stage-done:not(:last-child):before{background:var(--secondary)}.stage-now{color:var(--label);font-weight:600}.stage-now .stage-mark{border-color:var(--accent);background:var(--accent);box-shadow:0 0 0 4px var(--field-strong)}.stage-off .stage-step{opacity:.55}.stage-note{margin-top:12px;color:var(--secondary);font-size:.88rem}.history{display:grid;gap:14px;margin:0;padding:0;list-style:none;width:100%}.history-item{display:grid;gap:1px;padding-left:14px;border-left:2px solid var(--edge)}.history-what{font-size:.95rem;font-weight:600}.history-when,.history-note{color:var(--secondary);font-size:.86rem}.history-note{white-space:pre-wrap;overflow-wrap:anywhere}.tdiff{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;border:1px solid var(--edge);border-radius:10px;overflow:hidden;font-size:.92rem;line-height:1.5}.tdiff th{padding:8px 12px 8px 28px;background:var(--field);border-bottom:1px solid var(--edge);color:var(--tertiary);font-size:.82rem;font-weight:600;text-align:left}.tdiff th+th,.tdiff td+td{border-left:1px solid var(--edge)}.tdiff td{position:relative;padding:3px 12px 3px 28px;vertical-align:top;white-space:pre-wrap;overflow-wrap:anywhere}.tdiff-same td{color:var(--secondary)}.tdiff-del{background:var(--del-bg)}.tdiff-add{background:var(--add-bg)}.tdiff-del:before,.tdiff-add:before{position:absolute;left:11px;top:3px;font-weight:700}.tdiff-del:before{content:"−" / "";color:var(--del-ink)}.tdiff-add:before{content:"+" / "";color:var(--add-ink)}.tdiff del{background:var(--del-strong);color:inherit;text-decoration:line-through;text-decoration-color:var(--del-ink);border-radius:3px}.tdiff ins{background:var(--add-strong);color:inherit;text-decoration:underline;text-decoration-color:var(--add-ink);text-underline-offset:3px;border-radius:3px}.tdiff-none{background:var(--field)}.tdiff-fold td{padding:5px 12px;background:var(--field);color:var(--tertiary);font-size:.82rem;text-align:center}.tdiff-side{display:none}.lesson-diff{container-type:inline-size;display:grid;gap:10px}.lesson-diff h4{margin:0;font-size:.95rem;font-weight:600}@container (max-width: 560px){.tdiff thead{display:none}.tdiff,.tdiff tbody,.tdiff tr,.tdiff td{display:block}.tdiff td+td{border-left:0}.tdiff-same td+td,.tdiff-none{display:none}.tdiff-change+.tdiff-change,.tdiff-same+.tdiff-change,.tdiff-change+.tdiff-same{border-top:1px solid var(--edge)}.tdiff-change .tdiff-side{display:block;color:var(--tertiary);font-size:.75rem;font-weight:600}}.empty{max-width:38em;padding:24px 26px;border:1px solid var(--edge);border-radius:12px;background:var(--panel)}.empty h2{font-size:1.6rem}.empty p{margin-top:8px;color:var(--secondary)}.action{min-height:44px;padding:0 20px;border:1px solid var(--edge-bright);border-radius:10px;background:none;color:var(--label);font:inherit;cursor:pointer}.action:hover{background:var(--field)}.action:disabled{opacity:.6;cursor:progress}.action-primary{border-color:var(--accent);background:var(--accent);color:var(--on-accent);font-weight:600}.action-primary:hover{background:var(--accent);filter:brightness(1.06)}.ask{display:grid;gap:10px;max-width:26rem;padding-top:20px;border-top:1px solid var(--edge)}.ask-bare{padding-top:0;border-top:0;max-width:30rem}.ask-label{font-weight:600}.ask-hint{color:var(--secondary);font-size:.95rem;margin-top:-6px}.field{width:100%;min-height:48px;padding:10px 14px;border:1px solid var(--edge-bright);border-radius:10px;background:var(--field);color:var(--label);font:inherit}.field:focus-visible{outline-offset:1px}.field[aria-invalid=true]{border-color:var(--danger)}.field-code{max-width:12rem;font-size:1.5rem;letter-spacing:.3em;font-variant-numeric:tabular-nums}.ask-error{color:var(--danger);font-size:.95rem}.ask .action{justify-self:start;margin-top:4px}.asides{display:flex;flex-wrap:wrap;gap:0 20px;margin-top:4px}.aside{min-height:44px;padding:0;border:0;background:none;color:var(--secondary);font:inherit;font-size:.95rem;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.aside:hover{color:var(--label)}.steps{display:grid;gap:20px;max-width:34rem;margin-inline:0;margin-bottom:0;padding-left:1.4em}.steps p{color:var(--secondary)}.qr{display:block;margin-top:12px;padding:12px;border-radius:10px;background:#fff;width:184px;height:184px}.key{display:inline-block;margin-top:10px;padding:8px 12px;border-radius:8px;background:var(--field);border:1px solid var(--edge);font:600 1rem/1.5 ui-monospace,Cascadia Mono,Consolas,monospace;letter-spacing:.06em;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}@media (prefers-reduced-motion: no-preference){.look,.side-link,.side-out,.qrow{transition:color .2s ease,background-color .2s ease,border-color .2s ease}}.action-danger{border-color:var(--danger);color:var(--danger)}.action-danger:hover{background:var(--field)}.action-danger.action-primary,.confirm .action-danger[type=submit]{background:var(--danger);color:var(--bg)}.row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.hint{color:var(--tertiary);font-size:.95rem}.block{padding-top:20px;border-top:1px solid var(--edge);display:grid;gap:14px}.block h2{font-size:1.6rem}.block-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px}.block-head .compare{display:flex;align-items:center;gap:12px}.block-head .compare .field{width:auto;min-width:10rem}.quote{max-width:38em;white-space:pre-wrap;overflow-wrap:anywhere}.who{color:var(--secondary)}.who strong{color:var(--label);font-weight:600}.confirm{display:grid;gap:10px;max-width:28rem;padding:14px;border:1px solid var(--edge);border-radius:12px;background:var(--field)}.field-note{resize:vertical;min-height:64px}.block>.action{justify-self:start}.rollback h3,.rollback p{margin:0}.row-main{font-weight:600}.facts{display:grid;gap:12px;margin:0;max-width:42em}.facts dt{color:var(--tertiary);font-size:.88rem;font-weight:600}.facts dd{margin:2px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.facts-row{display:flex;flex-wrap:wrap;gap:12px 44px;max-width:none}.options{margin:0;padding-left:1.4em;display:grid;gap:6px;max-width:38em}.picture{display:block;width:100%;max-height:70vh;object-fit:contain;border-radius:12px;background:var(--field);border:1px solid var(--edge)}.picture-gone{display:grid;place-items:center;min-height:160px;color:var(--tertiary)}.items{list-style:none;margin:0;padding:0;display:grid;gap:28px;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}.item{display:grid;gap:10px;align-content:start}.item-bar{display:grid;gap:10px;color:var(--secondary)}.slots{display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}.slot{margin:0;display:grid;gap:10px;align-content:start}.slot figcaption{display:grid;gap:10px;color:var(--secondary)}.video-idle{position:relative;min-height:200px;display:grid;place-items:center;overflow:hidden}.video-poster{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;opacity:.35}.video-over{position:relative;display:grid;gap:10px;justify-items:center;padding:16px;text-align:center}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:.97rem}.table th,.table td{padding:10px 14px 10px 0;text-align:left;border-bottom:1px solid var(--edge);vertical-align:top;overflow-wrap:anywhere}.table th{color:var(--tertiary);font-size:.85rem;font-weight:600;white-space:nowrap}.data-wrap{container-type:inline-size;overflow:hidden;border:1px solid var(--edge);border-radius:12px}.data-table th,.data-table td{padding:12px 18px}.data-table thead th{background:var(--field)}.data-table tbody tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:var(--field)}@container (max-width: 620px){.data-table thead{display:none}.data-table,.data-table tbody,.data-table tr,.data-table td{display:block}.data-table tr{padding:10px 0;border-bottom:1px solid var(--edge)}.data-table tbody tr:last-child{border-bottom:0}.data-table td{padding:3px 18px;border-bottom:0}.data-table td:before{content:attr(data-label) " ";margin-right:8px;color:var(--tertiary);font-size:.82rem;font-weight:600}}.compare{display:grid;gap:6px;min-width:min(100%,14rem)}.compare label{font-size:.9rem;font-weight:600;color:var(--secondary)}.diff{display:grid;gap:22px}.diff-group{display:grid;gap:8px}.cap,.diff-group h3,.outline h3{margin:0;color:var(--secondary);font:600 .92rem / 1.4 var(--sans)}.diff-group ul,.outline ul{margin:0;padding-left:1.2em;display:grid;gap:4px}.diff-group ul ul{margin-top:4px}.diff-group .diff-units{padding:0;list-style:none;gap:12px}.diff-unit{display:grid;gap:10px;padding:14px 16px;border:1px solid var(--edge);border-radius:12px}.disclose{justify-self:start;min-height:44px;padding:0 16px;border:1px solid var(--edge-bright);border-radius:10px;background:none;color:var(--label);font:inherit;font-size:.95rem;cursor:pointer}.disclose:hover{background:var(--field)}.disclose[aria-expanded=true]{background:var(--field-strong)}.lesson-changes{display:grid;gap:16px}.lesson-diffs{display:grid;gap:20px}.outline{display:grid;gap:18px;max-width:42em}.outline section{display:grid;gap:6px}.actions{display:grid;gap:22px;max-width:42em}.act{display:grid;gap:6px;justify-items:start}.act .hint,.block>.hint{margin:0}.block>p{margin:0;max-width:42em}.notice{display:grid;gap:8px;max-width:42em;margin-top:20px;padding:12px 16px;border-left:3px solid var(--accent);background:var(--field)}.notice p,.notice ul{margin:0}.notice ul{padding-left:1.2em}.notice .warn{font-weight:600}.play-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.outline .play-list{padding-left:0}.play-stage.learn{position:relative;inset:auto;height:min(78vh,760px);min-height:520px}
