.command-entry{width:100%;color:var(--accent-ink);background:var(--accent-soft);border-color:#0000;justify-content:flex-start;margin:6px 0}.command-entry kbd{color:var(--ink-3);margin-left:auto;font-size:10px}.modal.command-center{width:min(680px,100% - 24px)}.command-head{align-items:center;gap:12px;margin:0 30px 24px 0;display:flex}.command-mark{border-radius:var(--r);background:var(--accent-soft);width:40px;height:40px;color:var(--accent);flex:none;place-items:center;display:grid}.command-head h2{font-size:21px}.command-head p{color:var(--ink-3);margin-top:3px;font-size:12px}.command-form{flex-direction:column;gap:9px;display:flex}.command-input{position:relative}.command-input textarea{width:100%;min-height:96px;padding-right:56px}.command-input.listening textarea{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.command-mic{border:1px solid var(--line-2);background:var(--surface,#fff);width:40px;height:40px;color:var(--ink-2);cursor:pointer;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:10px;right:10px}.command-mic.on{background:var(--accent);border-color:var(--accent);color:#fff;animation:1.2s ease-in-out infinite command-pulse}@keyframes command-pulse{50%{box-shadow:0 0 0 6px var(--accent-soft)}}.command-understood{color:var(--ink-3);flex-wrap:wrap;align-items:baseline;gap:6px;margin:-6px 0 14px;font-size:13px;display:flex}.command-understood b{color:var(--ink);font-weight:650}.command-steps{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.command-step{border-top:1px solid var(--line);gap:12px;padding:12px 0;display:flex}.command-step p{color:var(--ink-2);margin-top:2px;font-size:13px}.command-step-no{background:var(--canvas,#f5f5f7);border-radius:50%;flex:none;place-items:center;width:24px;height:24px;font-size:12px;font-weight:700;display:grid}.command-step.done .command-step-no{background:var(--good);color:#fff}.command-step.failed .command-step-no,.command-step.unsupported .command-step-no{background:var(--bad-soft,#fdecec);color:var(--bad)}.command-step-head{justify-content:space-between;gap:10px;display:flex}.command-step-head small{color:var(--ink-3);font-size:12px}.command-fields.compact{margin:8px 0 0}.command-fields.compact>div{grid-template-columns:70px minmax(0,1fr);padding:4px 0;font-size:12px}.command-changes{border-collapse:collapse;width:100%;margin:0 0 14px;font-size:13px}.command-changes th,.command-changes td{text-align:left;border-top:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere;padding:7px 8px}.command-changes thead th{color:var(--ink-3);border-top:0;font-size:12px;font-weight:600}.command-changes tbody th{color:var(--ink-3);width:72px;font-weight:600}.command-changes s{color:var(--ink-3)}.command-suggest{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.command-suggest .chip{white-space:normal;text-align:left;height:auto;min-height:34px}.command-error svg{vertical-align:-2px}.command-spin{animation:.9s linear infinite command-spin}@keyframes command-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.command-mic.on,.command-spin{animation:none}}.command-controls,.command-bottom{justify-content:space-between;align-items:center;gap:12px;display:flex}.command-controls .btn{min-height:44px}.command-sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.command-controls label{color:var(--ink-3);align-items:center;gap:7px;font-size:12px;display:flex}.command-result{border:1px solid var(--line-2);border-radius:var(--r-l);margin-top:20px;padding:18px;overflow:hidden}.command-result-title{justify-content:space-between;align-items:center;gap:16px;display:flex}.command-result-title span{color:var(--accent-ink);font-size:12px}.command-original{color:var(--ink-3);margin:6px 0 14px;font-size:13px}.command-fields{margin:0 0 14px}.command-fields>div{border-top:1px solid var(--line);grid-template-columns:90px minmax(0,1fr);gap:12px;padding:7px 0;font-size:13px;display:grid}.command-fields dt{color:var(--ink-3)}.command-fields dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.command-correction,.command-warning{border-radius:var(--r);background:var(--warn-soft);color:var(--warn);margin-bottom:10px;padding:8px 10px;font-size:12px}.command-error{color:var(--bad);align-items:baseline;gap:6px;margin-top:12px;font-size:13px;display:flex}.command-message{align-items:baseline;gap:5px;font-size:14px;display:flex}.command-message svg{flex:none}.command-actions,.command-choices{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.command-choices .btn{white-space:normal;text-align:left;height:auto;min-height:36px;padding:8px 12px}.command-bottom{color:var(--ink-3);margin:16px 0;font-size:11px}.command-examples{border-top:1px solid var(--line);padding-top:14px}.command-examples summary{cursor:pointer;font-size:13px}.command-examples>div{grid-template-columns:1fr 1fr;gap:16px;margin-top:16px;display:grid}.command-examples section{flex-direction:column;gap:6px;display:flex}.command-examples b{color:var(--ink-3);font-size:12px}.command-examples button{background:var(--canvas);text-align:left;cursor:pointer;border-radius:var(--r);border:0;padding:10px;font-size:12px}.command-examples button:hover{background:var(--accent-soft)}.command-history>div{border-top:1px solid var(--line);padding:12px 0}.command-history p{font-size:13px}.command-history small{color:var(--ink-3);display:block}.command-history button{margin-top:6px}.command-rows{max-height:230px;padding:0;list-style:none;overflow-y:auto}.command-rows li{border-top:1px solid var(--line);flex-direction:column;padding:8px 0;font-size:13px;display:flex}.command-rows span{color:var(--ink-3);font-size:12px}.command-live-slot{display:contents}@media (width<=600px){.command-center{padding:20px 16px}.command-controls{align-items:flex-start}.command-controls label{max-width:180px}.command-examples>div{grid-template-columns:minmax(0,1fr)}.command-bottom{align-items:flex-start}}@media print{.command-entry,.command-live-slot{display:none}}@media (pointer:coarse){.command-bottom>.muted{visibility:hidden}}.command-translations{gap:8px;margin:8px 0;display:grid}.command-translations figure{border:1px solid var(--line);background:var(--bg-2,#f6f7f9);border-radius:12px;gap:6px;margin:0;padding:12px 14px;display:grid}.command-translations figcaption{color:var(--ink-3);font-size:12px;font-weight:600}.command-translations p{white-space:pre-line;margin:0;font-size:15px;line-height:1.55}.command-translations .btn{justify-self:end}:root{--bg:#fff;--canvas:#f5f5f7;--bg-2:#f1f1f4;--bg-3:#e5e6eb;--ink:#111114;--ink-2:#3a3b43;--ink-3:#62646f;--ink-4:#8a8c97;--line:#e6e6eb;--line-2:#d3d4db;--accent:#2747f5;--accent-ink:#1a34c7;--accent-soft:#ecf0ff;--accent-tint:#f5f7ff;--sun:#ffc93c;--sun-soft:#fff6db;--sun-ink:#8a5a00;--mint:#2fbf9f;--mint-soft:#e2f7f1;--mint-ink:#0f6f5a;--pink:#ff8fa3;--pink-soft:#ffedf1;--pink-ink:#a83350;--violet:#7b61ff;--violet-soft:#f1eeff;--violet-ink:#4f37cc;--sky:#2ca6e0;--sky-soft:#e6f5fc;--sky-ink:#0f6a96;--orange:#ff8a3d;--orange-soft:#fff0e6;--orange-ink:#a24d10;--slate:#5b6478;--slate-soft:#eef0f4;--slate-ink:#3b4252;--charcoal:#1d1f24;--paper:#f4f1ea;--good:#12805c;--good-soft:#e6f5ee;--bad:#d23b3b;--bad-soft:#fdeded;--warn:#a8650a;--warn-soft:#fff4e0;--heat-1:#eef1ff;--heat-2:#d4dcff;--heat-3:#aab9ff;--heat-4:#6d84fb;--heat-5:#2747f5;--q1:#2747f5;--q2:#e8473f;--q3:#f2a900;--q4:#10a36f;--r-s:6px;--r:8px;--r-l:12px;--r-xl:18px;--shadow:0 1px 2px #1111140a, 0 8px 24px #1111140f;--shadow-pop:0 2px 6px #1111140f, 0 24px 60px #11111429;--tap:40px;--ease:cubic-bezier(.2, .7, .1, 1);--spring:cubic-bezier(.2, .9, .3, 1.25);--fs-base:15px;--sans:"Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", system-ui, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-level=elementary]{--accent:#2747f5;--accent-ink:#1a34c7;--accent-soft:#ecf0ff;--accent-tint:#f5f7ff;--canvas:#f3f5fa;--playful:#ffc93c;--playful-soft:#fff6db;--r-s:10px;--r:14px;--r-l:18px;--r-xl:26px;--tap:46px;--fs-base:16px;--shadow:0 1px 2px #2747f50d, 0 10px 28px #2747f514;--level-weight:800}:root[data-level=middle]{--accent:#4f46e5;--accent-ink:#3730a3;--accent-soft:#eef0ff;--accent-tint:#f6f6ff;--canvas:#f5f5f7;--heat-1:#f0f0ff;--heat-2:#d9d8fd;--heat-3:#b3b0f8;--heat-4:#7d76ee;--heat-5:#4f46e5;--q1:#4f46e5;--r-s:6px;--r:8px;--r-l:10px;--r-xl:14px;--tap:40px;--fs-base:15px;--shadow:0 1px 2px #1111140d, 0 4px 14px #1111140d;--level-weight:750}:root[data-level=high]{--accent:#1d3b6e;--accent-ink:#132a52;--accent-soft:#e9eef6;--accent-tint:#f4f6fa;--canvas:#f4f5f6;--line:#e3e4e8;--heat-1:#edf1f7;--heat-2:#d0dae9;--heat-3:#a3b5d1;--heat-4:#5f7aa6;--heat-5:#1d3b6e;--q1:#1d3b6e;--r-s:3px;--r:5px;--r-l:7px;--r-xl:10px;--tap:38px;--fs-base:14.5px;--shadow:0 1px 2px #1111140d, 0 2px 8px #1111140a;--level-weight:700}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;background:var(--canvas)}body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:var(--fs-base);letter-spacing:-.012em;word-break:keep-all;overflow-wrap:break-word;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;line-height:1.6}img,svg,canvas,video{max-width:100%;display:block}svg.lucide{stroke-width:1.75px}:where(span,b,strong,small,em,a,p,label,td,th,li)>svg.lucide{vertical-align:-.16em;display:inline-block}button,input,textarea,select{font:inherit;color:inherit;letter-spacing:inherit}input[type=checkbox],input[type=radio],input[type=range]{accent-color:var(--accent)}a{color:inherit;text-decoration:none}h1,h2,h3,h4,p{margin:0}h1{letter-spacing:-.04em;font-size:28px;font-weight:720;line-height:1.28}h2{letter-spacing:-.032em;font-size:21px;font-weight:680;line-height:1.38}h3{letter-spacing:-.022em;font-size:17px;font-weight:680;line-height:1.42}h4{font-size:15px;font-weight:680;line-height:1.45}.num{font-variant-numeric:tabular-nums}.muted{color:var(--ink-3)}.faint{color:var(--ink-4)}.small{font-size:13px}.xs{font-size:12px}.pre{white-space:pre-line}.nowrap{white-space:nowrap}.ellipsis{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.row{align-items:center;gap:8px;display:flex}.row.wrap{flex-wrap:wrap}.col{flex-direction:column;gap:8px;display:flex}.grow{flex:1;min-width:0}.row.wrap>.grow{flex:auto}.spacer{flex:1}.gap-4{gap:4px}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.gap-24{gap:24px}.mt-8{margin-top:8px}.mt-12{margin-top:12px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.mt-40{margin-top:40px}.hr{background:var(--line);border:0;height:1px;margin:0}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}:focus:not(:focus-visible){outline:none}::selection{background:var(--accent-soft);color:var(--accent-ink)}.btn{appearance:none;border:1px solid var(--line-2);background:var(--bg);color:var(--ink);height:var(--tap);border-radius:var(--r);cursor:pointer;transition:background .16s var(--ease), border-color .16s var(--ease), transform .12s var(--ease), color .16s, box-shadow .16s;white-space:nowrap;-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;gap:6px;padding:0 16px;font-size:14px;font-weight:650;display:inline-flex}.btn:hover{background:var(--bg-2)}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.42;cursor:not-allowed;transform:none}.btn svg{flex:none}.btn.primary,.btn.accent{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 1px 2px #1111141f}.btn.primary:hover,.btn.accent:hover{background:var(--accent-ink);border-color:var(--accent-ink)}.btn.ink{background:var(--ink);border-color:var(--ink);color:#fff}.btn.ink:hover{background:#2a2b31}.btn.ghost{background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--bg-2)}.btn.soft{background:var(--accent-soft);color:var(--accent-ink);border-color:#0000}.btn.soft:hover{background:var(--heat-2)}.btn.danger{color:var(--bad)}.btn.danger:hover{background:var(--bad-soft);border-color:#0000}.btn.sm{height:32px;padding:0 12px;font-size:13px}.btn.lg{height:48px;padding:0 22px;font-size:15.5px}.btn.xl{border-radius:var(--r-l);height:56px;padding:0 28px;font-size:17px}.btn.icon{width:var(--tap);padding:0}.btn.sm.icon{width:32px}.btn.block{width:100%}.btn.on{background:var(--ink);color:#fff;border-color:var(--ink)}.field{flex-direction:column;gap:6px;display:flex}.field>span{color:var(--ink-2);font-size:13px;font-weight:650}.input,.textarea,.select{border:1px solid var(--line-2);background:var(--bg);border-radius:var(--r);width:100%;min-height:var(--tap);outline:none;padding:9px 12px;font-size:15px;transition:border-color .15s,box-shadow .15s}.input:hover,.textarea:hover,.select:hover{border-color:var(--ink-4)}.input:focus,.textarea:focus,.select:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.input::placeholder,.textarea::placeholder{color:var(--ink-4)}.textarea{resize:vertical;min-height:84px;line-height:1.6}.select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2362646f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 11px center;background-repeat:no-repeat;padding-right:34px}.input.bare,.textarea.bare{box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.chip{border:1px solid var(--line-2);background:var(--bg);cursor:pointer;white-space:nowrap;border-radius:999px;align-items:center;gap:6px;height:32px;padding:0 13px;font-size:13px;font-weight:600;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.chip:hover{border-color:var(--ink-4)}.chip.on{background:var(--ink);color:#fff;border-color:var(--ink)}.chip.static{cursor:default}.tag{border-radius:var(--r-s);background:var(--bg-2);max-width:100%;min-height:22px;color:var(--ink-2);white-space:nowrap;align-items:center;gap:4px;padding:2px 8px;font-size:12px;font-weight:650;line-height:1.35;display:inline-flex}.tag.accent{background:var(--accent-soft);color:var(--accent-ink)}.tag.good{background:var(--good-soft);color:var(--good)}.tag.bad{background:var(--bad-soft);color:var(--bad)}.tag.warn{background:var(--warn-soft);color:var(--warn)}.tag.ink{background:var(--ink);color:#fff}.tag.sun{background:var(--sun-soft);color:var(--sun-ink)}.tag.mint{background:var(--mint-soft);color:var(--mint-ink)}.tag.pink{background:var(--pink-soft);color:var(--pink-ink)}.tag.violet{background:var(--violet-soft);color:var(--violet-ink)}.tag.sky{background:var(--sky-soft);color:var(--sky-ink)}.tag.orange{background:var(--orange-soft);color:var(--orange-ink)}.tag.slate{background:var(--slate-soft);color:var(--slate-ink)}.tag.wrap{white-space:normal}.code{font-family:var(--sans);font-variant-numeric:tabular-nums;letter-spacing:.02em;font-weight:720}.std{color:var(--accent-ink);letter-spacing:0;white-space:nowrap;font-size:12px;font-weight:700}.dot{background:var(--ink-4);border-radius:50%;flex:none;width:8px;height:8px}.dot.live{background:#ff3b30;animation:1.6s infinite pulse;box-shadow:0 0 #ff3b3080}@keyframes pulse{0%{box-shadow:0 0 #ff3b3073}70%{box-shadow:0 0 0 8px #ff3b3000}to{box-shadow:0 0 #ff3b3000}}.panel{border:1px solid var(--line);border-radius:var(--r-l);background:var(--bg)}.panel.pad{padding:20px 22px}.panel.soft{background:var(--bg-2);border-color:#0000}.panel.tint{background:var(--accent-tint);border-color:#0000}.list>*+*{border-top:1px solid var(--line)}.kpi{flex-direction:column;gap:2px;display:flex}.kpi b{letter-spacing:-.045em;font-variant-numeric:tabular-nums;font-size:30px;font-weight:760;line-height:1.1}.kpi span{color:var(--ink-3);font-size:13px}.section-title{flex-wrap:wrap;align-items:baseline;gap:10px;margin-bottom:12px;display:flex}.section-title h2{font-size:19px}.section-title h2,.section-title h3{margin:0}.lift{transition:transform .2s var(--ease), box-shadow .2s var(--ease), border-color .2s}.lift:hover{box-shadow:var(--shadow);border-color:var(--line-2);transform:translateY(-2px)}.lift:active{transform:translateY(0)scale(.99)}.empty{color:var(--ink-3);padding:22px 4px;font-size:14px}.empty b{color:var(--ink-2);margin-bottom:2px;font-size:15px;font-weight:650;display:block}.panel>.empty{padding:22px}.empty-art{text-align:center;color:var(--ink-3);animation:rise .45s var(--ease);flex-direction:column;align-items:center;gap:6px;padding:36px 20px 40px;display:flex}.empty-art img{object-fit:cover;background:var(--paper);border-radius:50%;width:140px;height:140px;margin-bottom:10px}.empty-art b{color:var(--ink);letter-spacing:-.02em;font-size:17px;font-weight:700}.empty-art p{max-width:34em;font-size:14px}.empty-art-act{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:14px;display:flex}.empty-art.compact{padding:22px 16px}.empty-art.compact img{width:96px;height:96px}.empty-art.compact b{font-size:15px}.app{background:var(--canvas);grid-template-columns:252px minmax(0,1fr);min-height:100dvh;display:grid}.side{background:var(--canvas);scrollbar-width:thin;scrollbar-color:var(--line-2) transparent;flex-direction:column;gap:1px;height:100dvh;padding:14px 12px 12px;display:flex;position:sticky;top:0;overflow-y:auto}.side>*{flex-shrink:0}.brand{letter-spacing:-.045em;align-items:center;gap:10px;padding:6px 8px 12px;font-size:18px;font-weight:760;display:flex}.brand-mark{flex:none;width:28px;height:28px}.nav-label{color:var(--ink-4);letter-spacing:.01em;padding:18px 10px 6px;font-size:11.5px;font-weight:650}.nav{border-radius:var(--r);height:38px;color:var(--ink-2);transition:background .14s var(--ease), color .14s;align-items:center;gap:11px;padding:0 10px;font-size:14px;font-weight:550;display:flex;position:relative}.nav:hover{color:var(--ink);background:#1111140d}.nav.active{background:var(--bg);color:var(--ink);box-shadow:0 1px 2px #1111140f, 0 0 0 1px var(--line);font-weight:680}.nav.active svg{color:var(--accent)}.nav svg{width:18px;height:18px;color:var(--ink-3);flex:none;transition:color .14s}.nav:hover svg{color:var(--ink-2)}.nav .badge-count{color:#fff;background:#ff3b30;border-radius:999px;margin-left:auto;padding:0 6px;font-size:11px;font-weight:700;line-height:18px}.main{background:var(--canvas);min-width:0}.main>main{background:var(--bg);min-height:calc(100dvh - 56px);box-shadow:0 0 0 1px var(--line);border-top-left-radius:20px}.page{max-width:1280px;animation:page-in .36s var(--ease) both;margin:0 auto;padding:32px 40px 88px}.page.wide{max-width:1440px}.page.narrow{max-width:820px}@keyframes page-in{0%{opacity:0;transform:translateY(8px)}}.page-head{flex-wrap:wrap;align-items:flex-end;gap:12px 16px;margin-bottom:26px;display:flex}.page-head>.grow{min-width:min(100%,240px)}.page-head .sub{color:var(--ink-3);margin-top:6px;font-size:14px}.crumb{color:var(--ink-3);align-items:center;gap:6px;margin-bottom:8px;font-size:13px;display:flex}.crumb a:hover{color:var(--ink)}.mobile-bar{display:none}.nav-row{align-items:center;display:flex;position:relative}.nav-row .nav{flex:1;min-width:0}.nav.nav-make{background:var(--ink);color:#fff;height:42px;box-shadow:none;margin:4px 0 6px;font-weight:680}.nav.nav-make svg{color:#fff}.nav.nav-make:hover{color:#fff;background:#24252b}.nav.nav-make.active{background:var(--accent);color:#fff;box-shadow:0 6px 16px color-mix(in srgb, var(--accent) 28%, transparent)}.nav.nav-make.active svg{color:#fff}.nav.live-nav{color:#c4302b;background:#fff1f0;margin-bottom:6px;font-weight:700}.nav-fold{cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:4px;width:100%;font-family:inherit;display:flex}.nav-fold svg{transition:transform .2s var(--ease)}.nav-fold:hover{color:var(--ink-2)}.nav-mini{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:0;align-items:center;gap:3px;padding:0;font-size:11px;font-weight:700;display:inline-flex}.nav-quiet{cursor:pointer;width:100%;color:var(--ink-4);background:0 0;border:0;font-family:inherit}.fav-toggle{border-radius:var(--r);width:34px;height:34px;color:var(--ink-4);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;display:grid}.fav-toggle.on{color:#e3a500}.fav-toggle.on svg{fill:currentColor}.class-pick{background-color:var(--bg);width:100%;min-height:38px;margin:0 0 6px;padding:0 30px 0 10px;font-size:13.5px;font-weight:680}.side-x,.side-dim{display:none}.side-class{border-radius:var(--r-l);background:var(--bg);box-shadow:0 0 0 1px var(--line);align-items:center;gap:10px;margin:2px 0 6px;padding:9px 10px;display:flex}.side-class-badge{border-radius:var(--r);letter-spacing:-.03em;background:var(--accent-soft);width:34px;height:34px;color:var(--accent-ink);flex:none;place-items:center;font-size:12.5px;font-weight:760;display:grid}:root[data-level=elementary] .side-class-badge{background:var(--sun-soft);color:var(--sun-ink)}.side-class b{font-size:14px;line-height:1.25;display:block}.side-class small{color:var(--ink-3);font-size:11.5px;display:block}.side-class .select{height:auto;min-height:0;box-shadow:none;cursor:pointer;background-position:right 2px center;border:0;margin:0;padding:0 22px 0 0;font-size:14px;font-weight:700}.side-foot{border-top:1px solid var(--line);margin-top:8px;padding-top:6px}.side-code{color:var(--ink-3);align-items:center;gap:6px;padding:6px 10px;font-size:12px;display:flex}.side-code b{color:var(--ink);letter-spacing:.06em;font-size:13px}@media (width<=1180px) and (width>=901px){.app{grid-template-columns:228px 1fr}.page{padding:28px 28px 72px}}@media (pointer:coarse){:root{--tap:44px}.nav{height:44px}.btn.sm{height:38px}.btn.sm.icon{width:38px}.chip{height:38px;padding:0 14px}.tab{height:48px}.table td{padding-top:13px;padding-bottom:13px}}@media (width<=900px){.app{grid-template-columns:minmax(0,1fr)}.side{display:none}.side.open{z-index:50;width:min(320px,86vw);box-shadow:var(--shadow-pop);animation:side-in .26s var(--ease);display:flex;position:fixed;inset:0 auto 0 0}.side.open .side-x{display:inline-grid}.side-dim{z-index:45;background:#11111452;animation:.2s fade;display:block;position:fixed;inset:0}.mobile-bar{z-index:40;-webkit-backdrop-filter:saturate(1.8)blur(14px);backdrop-filter:saturate(1.8)blur(14px);border-bottom:1px solid var(--line);background:#ffffffdb;align-items:center;gap:6px;height:56px;padding:0 10px;display:flex;position:sticky;top:0}.main>main{box-shadow:none;border-radius:0;min-height:calc(100dvh - 56px)}.page{padding:20px 16px 76px}h1{font-size:25px}}@keyframes side-in{0%{opacity:0;transform:translate(-24px)}}.seg{background:var(--bg-2);border-radius:calc(var(--r) + 3px);gap:2px;max-width:100%;padding:3px;display:inline-flex}.seg button{border-radius:var(--r);min-height:34px;font:inherit;color:var(--ink-3);cursor:pointer;white-space:nowrap;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;padding:0 13px;font-size:13px;font-weight:650;transition:background .15s,color .15s,box-shadow .15s;display:inline-flex}.seg button:hover{color:var(--ink)}.seg button.on,.seg .chip.on{background:var(--bg);color:var(--ink);box-shadow:0 1px 3px #1111141a}.seg button svg{width:16px;height:16px}@media (pointer:coarse){.seg button{min-height:40px}}.tabs{border-bottom:1px solid var(--line);scrollbar-width:none;gap:4px;margin-bottom:24px;display:flex;overflow-x:auto}.tab{height:44px;color:var(--ink-3);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;flex-shrink:0;align-items:center;gap:6px;margin-bottom:-1px;padding:0 12px;font-size:15px;font-weight:650;transition:color .15s,border-color .15s;display:inline-flex}.tab:hover{color:var(--ink)}.tab svg{flex:none}.tab.on{color:var(--ink);border-bottom-color:var(--accent)}.tab .count{background:var(--bg-2);color:var(--ink-3);border-radius:999px;padding:0 7px;font-size:12px}.tab.on .count{background:var(--accent-soft);color:var(--accent-ink)}.table{border-collapse:collapse;width:100%;font-size:14px}.table th{text-align:left;color:var(--ink-3);border-bottom:1px solid var(--line);white-space:nowrap;padding:10px 12px;font-size:12.5px;font-weight:650}.table td.num,.table th.num{text-align:right;font-variant-numeric:tabular-nums}.table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:11px 12px}.table tr:hover td{background:var(--accent-tint)}.table .r{text-align:right}.overlay{z-index:100;animation:fade .18s var(--ease);background:#11111461;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{background:var(--bg);border-radius:var(--r-xl);width:min(560px,100%);max-height:calc(100dvh - 32px);box-shadow:var(--shadow-pop);animation:modal-in .3s var(--spring);padding:26px;overflow:auto}.modal.wide{width:min(880px,100%)}.toasts{z-index:200;pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;bottom:22px;left:50%;transform:translate(-50%)}.toast{background:var(--ink);color:#fff;box-shadow:var(--shadow-pop);animation:toast-in .34s var(--spring);border-radius:999px;padding:12px 18px;font-size:14px;font-weight:650}.toast.bad{background:var(--bad)}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(10px)}}@keyframes modal-in{0%{opacity:0;transform:translateY(14px)scale(.98)}}@keyframes toast-in{0%{opacity:0;transform:translateY(14px)scale(.92)}}@keyframes pop{0%{opacity:0;transform:scale(.85)}60%{transform:scale(1.04)}to{opacity:1;transform:scale(1)}}.avatar{background:var(--bg-2);width:36px;height:36px;color:var(--ink-2);border:1px solid var(--line);border-radius:50%;flex:none;place-items:center;font-size:14px;font-weight:700;display:grid;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.avatar.lg{width:96px;height:96px;font-size:34px}.avatar.md{width:48px;height:48px;font-size:18px}.avatar.sm{width:26px;height:26px;font-size:11px}.bar{background:var(--bg-3);border-radius:999px;height:8px;overflow:hidden}.bar>i{background:var(--ink);border-radius:inherit;height:100%;transition:width .7s var(--ease);display:block}.bar.accent>i{background:var(--accent)}.bar.good>i{background:var(--good)}.bar.thin{height:5px}.skel{background:linear-gradient(90deg, var(--bg-2) 0%, var(--bg-2) 40%, #fafafc 50%, var(--bg-2) 60%, var(--bg-2) 100%);border-radius:var(--r);background-size:300% 100%;animation:1.4s ease-in-out infinite sk}@keyframes sk{0%{background-position:100% 0}to{background-position:0 0}}.loading{opacity:0;flex-direction:column;gap:12px;max-width:840px;padding:28px clamp(16px,4vw,40px);animation:.2s .18s forwards fade-in;display:flex}.loading .skel{height:14px;display:block}.page .loading,.st-page .loading,.panel .loading{padding:8px 0}@keyframes fade-in{to{opacity:1}}.stagger>*{animation:rise .42s var(--ease) both}.stagger>:nth-child(2){animation-delay:40ms}.stagger>:nth-child(3){animation-delay:80ms}.stagger>:nth-child(4){animation-delay:.12s}.stagger>:nth-child(5){animation-delay:.16s}.stagger>:nth-child(6){animation-delay:.2s}.stagger>:nth-child(7){animation-delay:.24s}.stagger>:nth-child(n+8){animation-delay:.28s}.slide-frame{width:100%;container-type:inline-size}.slide{aspect-ratio:16/9;border:1px solid var(--line);border-radius:var(--r-l);background:#fff;flex-direction:column;justify-content:center;width:100%;padding:6cqw 7cqw;display:flex;position:relative;overflow:hidden}.slide h2{letter-spacing:-.04em;font-size:5.2cqw;font-weight:720;line-height:1.2}.slide .s-body{color:var(--ink-2);white-space:pre-line;margin-top:2.4cqw;font-size:2.5cqw;line-height:1.55}.slide ul.s-body{flex-direction:column;gap:1.4cqw;padding:0;list-style:none;display:flex}.slide ul.s-body li{align-items:baseline;gap:1.6cqw;display:flex}.slide ul.s-body li:before{content:"";background:var(--accent);border-radius:50%;flex:none;width:.9cqw;height:.9cqw;transform:translateY(-.3cqw)}.slide.cover{background:var(--ink);color:#fff;border-color:var(--ink)}.slide.cover h2{font-size:6.6cqw}.slide.cover .s-body{color:#ffffffb3}.slide.cover .s-kicker{color:#ffffff8c;font-size:1.7cqw;font-weight:600;position:absolute;top:5cqw;left:7cqw}.slide.big{align-items:flex-start}.slide.big .s-body{color:var(--ink);letter-spacing:-.03em;font-size:4cqw;font-weight:700;line-height:1.35}.slide.big h2{color:var(--accent);letter-spacing:-.01em;font-size:2.4cqw;font-weight:700}.slide.question{background:var(--accent);color:#fff;border-color:var(--accent)}.slide.question h2{color:#ffffffbf;font-size:2.4cqw;font-weight:700}.slide.question .s-body{color:#fff;letter-spacing:-.03em;font-size:4.2cqw;font-weight:650;line-height:1.35}.slide.split .s-split{grid-template-columns:1fr 1fr;gap:2.6cqw;margin-top:3cqw;display:grid}.slide.split .s-split>div{background:var(--bg-2);border-radius:2cqw;padding:2.6cqw;font-size:2.3cqw;line-height:1.45}.slide.split .s-split b{letter-spacing:-.03em;margin-bottom:.8cqw;font-size:3cqw;display:block}.slide.image{background:var(--bg-2);padding:0}.slide.image .s-img{object-fit:contain;background:var(--bg-2);width:100%;height:100%;position:absolute;inset:0}.slide.image .s-img-empty{color:var(--ink-4);margin:auto;font-size:2.2cqw}.slide.image .s-caption{max-width:70%;box-shadow:var(--shadow);background:#fffffff0;border-radius:1.4cqw;flex-direction:column;gap:.4cqw;padding:1.6cqw 2.2cqw;display:flex;position:absolute;bottom:3cqw;left:3cqw}.slide.image .s-caption b{letter-spacing:-.03em;font-size:2.6cqw}.slide.image .s-caption span{color:var(--ink-3);white-space:pre-line;font-size:1.8cqw}.slide .s-page{color:var(--ink-4);font-variant-numeric:tabular-nums;font-size:1.4cqw;position:absolute;bottom:3.4cqw;right:4cqw}.slide.cover .s-page,.slide.question .s-page{color:#ffffff80}.choices{grid-template-columns:1fr 1fr;gap:10px;display:grid}.choice{border-radius:var(--r-l);color:#fff;text-align:left;cursor:pointer;border:0;align-items:center;gap:12px;min-height:76px;padding:18px;font-size:17px;font-weight:700;transition:transform .1s,opacity .2s,filter .2s;display:flex}.choice:active{transform:scale(.97)}.choice .shape{flex:none;width:26px;height:26px}.choice.c1{background:var(--q1)}.choice.c2{background:var(--q2)}.choice.c3{background:var(--q3)}.choice.c4{background:var(--q4)}.choice.dim{opacity:.28}.choice.picked{box-shadow:0 0 0 4px #fff, 0 0 0 7px var(--ink)}.choice:disabled{cursor:default}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}@media (width<=1000px){.grid-4,.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.grid-2,.grid-3,.grid-4,.choices{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@media print{.side,.mobile-bar,.no-print,.workspace-bar{display:none!important}.app{display:block}.main>main{box-shadow:none;border-radius:0}.page{max-width:none;padding:0;animation:none}body{font-size:12px}}html[data-size=lg] body{zoom:1.14}.warn-row td{background:var(--warn-soft)}.workspace-bar{height:56px;color:var(--ink-3);background:var(--canvas);justify-content:space-between;align-items:center;gap:20px;padding:0 28px 0 32px;font-size:13px;display:flex}.workspace-label{align-items:center;gap:8px;min-width:0;display:flex}.workspace-label strong{color:var(--ink);font-weight:680}.workspace-label>span{color:var(--line-2)}.workspace-class{background:var(--bg);box-shadow:0 0 0 1px var(--line);color:var(--ink-2);border-radius:999px;padding:4px 11px;font-size:12.5px;font-weight:650}.workspace-bar time{font-variant-numeric:tabular-nums}.home-eyebrow{color:var(--accent-ink);letter-spacing:.01em;align-items:center;gap:7px;font-size:12.5px;font-weight:680;display:flex}.home-dot{background:var(--accent);border-radius:50%;width:6px;height:6px}.skip-link{z-index:1000;border-radius:var(--r);background:var(--ink);color:#fff;padding:12px 18px;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.load-error{border:1px solid var(--line-2);border-radius:var(--r-l);background:#fff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:16px 0;padding:20px;display:flex}.load-error b{font-size:15px}.load-error p{color:var(--ink-3);margin:4px 0 0;font-size:13px}dialog.modal{color:var(--ink);border:0;width:min(560px,100% - 32px);margin:auto}dialog.modal.wide{width:min(880px,100% - 32px)}dialog.modal::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#11111461}@media (width<=900px){.workspace-bar{display:none}}.seg{scrollbar-width:none;overflow-x:auto}.seg::-webkit-scrollbar{display:none}:is(.row:has(>.chip),.row:has(>label>.chip)){flex-wrap:wrap}@media (width<=640px){.page table.table{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto}}@media (pointer:coarse){.seg button{min-height:40px}.btn.sm.icon,.btn.icon.sm{min-width:40px;min-height:40px}.bk-check,.cb-checkbox,.sp-tone{position:relative}.bk-check:after,.cb-checkbox:after,.sp-tone:after,.wr-card-pick:after{content:"";position:absolute;inset:-10px}}
