/*!
 * BOOONG Design System v2.1.0
 * Tokens, base styles, and legacy-compatible components.
 */
:root{--blue-50:#ebf2ff;--blue-100:#d6e4ff;--blue-200:#adc8ff;--blue-300:#84abff;--blue-400:#5b8eff;--blue-500:#1b6bff;--blue-600:#0f4fcc;--blue-700:#0a3a99;--blue-800:#0a2e7a;--blue-900:#061d52;--neutral-0:#fff;--neutral-50:#f7f9fc;--neutral-100:#f4f6fa;--neutral-200:#e3e7ee;--neutral-300:#cfd6e2;--neutral-400:#8a95a8;--neutral-500:#3d4a5c;--neutral-600:#2c3748;--neutral-700:#1e2738;--neutral-800:#141c2b;--neutral-900:#0d1117;--green-50:#eaf5ee;--green-100:#c9e8d4;--green-200:#a0d4b5;--green-300:#6dbf90;--green-400:#3daa6d;--green-500:#2e7d4f;--green-600:#206038;--green-700:#16402a;--green-800:#0d2819;--red-50:#fff0f0;--red-100:#ffd6d6;--red-200:#ffb3b3;--red-300:#ff8080;--red-400:#ff5252;--red-500:#e53935;--red-600:#c62828;--red-700:#9b1b1b;--orange-50:#fff4e0;--orange-100:#ffe0b2;--orange-200:#ffcc80;--orange-300:#ffb74d;--orange-400:#ffa726;--orange-500:#f57c00;--orange-600:#e65100;--color-primary:var(--blue-500);--color-primary-hover:var(--blue-600);--color-primary-active:var(--blue-700);--color-primary-subtle:var(--blue-50);--color-primary-tint:var(--blue-100);--color-on-primary:var(--neutral-0);--color-primary-text:var(--blue-800);--color-highlight:#1a3a6b;--color-highlight-bg:#e8efff;--color-accent:var(--blue-400);--color-accent-strong:var(--blue-500);--color-surface:var(--neutral-0);--color-surface-subtle:var(--neutral-100);--color-surface-raised:var(--neutral-0);--color-surface-overlay:#0c1220d1;--color-surface-sidebar:var(--neutral-50);--color-text-primary:var(--neutral-900);--color-text-secondary:var(--neutral-500);--color-text-tertiary:var(--neutral-400);--color-text-disabled:var(--neutral-400);--color-text-on-brand:var(--neutral-0);--color-text-link:var(--blue-600);--color-text-link-hover:var(--blue-700);--color-border:var(--neutral-200);--color-border-strong:var(--neutral-300);--color-border-focus:var(--blue-500);--color-border-disabled:var(--neutral-200);--color-success:var(--green-500);--color-success-subtle:var(--green-50);--color-success-text:var(--green-700);--color-success-border:var(--green-500);--color-error:var(--red-500);--color-error-subtle:var(--red-50);--color-error-text:var(--red-600);--color-error-border:var(--red-500);--color-warning:var(--orange-500);--color-warning-subtle:var(--orange-50);--color-warning-text:var(--orange-600);--color-warning-border:var(--orange-400);--color-disabled-fill:var(--neutral-100);--color-disabled-border:var(--neutral-200);--color-disabled-text:var(--neutral-400);--color-callout-case-bg:var(--green-50);--color-callout-case-border:var(--green-500);--color-callout-case-text:var(--green-700);--color-callout-question-bg:var(--blue-50);--color-callout-question-border:var(--blue-500);--color-callout-question-text:var(--blue-800);--color-callout-concept-bg:var(--neutral-100);--color-callout-concept-border:var(--neutral-500);--color-callout-concept-text:var(--neutral-900);--color-answer-bg:#eaf2ff;--bg:var(--color-surface);--bg-soft:var(--color-surface-subtle);--bg-sidebar:var(--color-surface-sidebar);--bg-answer:var(--color-answer-bg);--text:var(--color-text-primary);--text-muted:var(--color-text-secondary);--text-faint:var(--color-text-tertiary);--border:var(--color-border);--border-strong:var(--color-border-strong);--brand:var(--color-primary);--brand-deep:var(--color-primary-hover);--brand-soft:var(--color-primary-subtle);--brand-ink:var(--color-primary-text);--accent:var(--color-primary);--accent-rgb:27, 107, 255;--accent-deep:var(--color-primary-hover);--accent-light:var(--color-primary-subtle);--case-bg:var(--color-callout-case-bg);--case-border:var(--color-callout-case-border);--case-text:var(--color-callout-case-text);--question-bg:var(--color-callout-question-bg);--question-border:var(--color-callout-question-border);--question-text:var(--color-callout-question-text);--concept-bg:var(--color-callout-concept-bg);--concept-border:var(--color-callout-concept-border);--concept-text:var(--color-callout-concept-text);--font-display:"Black Han Sans", sans-serif;--font-serif:"Gowun Batang", "Noto Serif KR", "Nanum Myeongjo", serif;--font-sans:"Pretendard Variable", "Pretendard", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-extrabold:800;--text-2xs:.75rem;--text-xs:.8125rem;--text-sm:.875rem;--text-base:1rem;--text-md:1.0625rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.5rem;--text-5xl:3rem;--text-display:3.75rem;--leading-none:1;--leading-tight:1.2;--leading-snug:1.35;--leading-normal:1.6;--leading-relaxed:1.75;--leading-loose:1.85;--tracking-tight:-.025em;--tracking-snug:-.015em;--tracking-normal:0;--tracking-wide:.04em;--tracking-wider:.07em;--tracking-widest:.12em;--color-keyword:#1a3a6b;--weight-keyword:800;--space-0:0px;--space-px:1px;--space-0-5:2px;--space-1:4px;--space-1-5:6px;--space-2:8px;--space-2-5:10px;--space-3:12px;--space-3-5:14px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-9:36px;--space-10:40px;--space-11:44px;--space-12:48px;--space-14:56px;--space-16:64px;--space-20:80px;--space-24:96px;--space-32:128px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:24px;--radius-full:9999px;--radius:var(--radius-md);--radius-xs:var(--radius-sm);--shadow-sm:0 1px 3px #0d11170f;--shadow-md:0 4px 16px #0d111714;--shadow-hover:0 10px 28px #0d11171a;--shadow-focus-ring:0 0 0 3px #1b6bff33;--shadow-focus-error:0 0 0 3px #e5393533;--shadow-xl:0 20px 60px #00000085;--ease-out-smooth:cubic-bezier(.23, 1, .32, 1);--ease-spring:cubic-bezier(.23, 1, .32, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--ease-bounce:cubic-bezier(.34, 1.56, .64, 1);--dur-fast:.15s;--dur-base:.22s;--dur-slow:.38s;--dur-slower:.56s;--dur-slowest:.8s;--duration-fast:var(--dur-fast);--duration-base:var(--dur-base);--duration-slow:var(--dur-slow);--transition-color:color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);--transition-transform:transform var(--dur-base) var(--ease-spring);--transition-shadow:box-shadow var(--dur-base) var(--ease-out);--sidebar-w:280px;--content-max:900px;--dashboard-max:1000px;--topbar-height:56px;--z-below:-1;--z-base:0;--z-raised:10;--z-dropdown:100;--z-sticky:200;--z-overlay:300;--z-modal:400;--z-toast:500;--z-tooltip:600}@media (prefers-reduced-motion:reduce){:root{--dur-fast:0s;--dur-base:0s;--dur-slow:0s;--dur-slower:0s;--dur-slowest:0s;--transition-color:none;--transition-transform:none;--transition-shadow:none}}html,body{margin:0;padding:0}body{font-family:var(--font-serif);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:18px;line-height:1.7}h1{font-family:var(--font-sans);font-weight:800;line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--color-text-primary);margin:0}h2{font-family:var(--font-sans);font-weight:800;line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--color-primary);margin:0}h3{font-family:var(--font-sans);font-weight:700;line-height:var(--leading-snug);letter-spacing:var(--tracking-snug);color:var(--color-text-primary);margin:0}h4{font-family:var(--font-sans);font-weight:600;line-height:var(--leading-snug);letter-spacing:var(--tracking-normal);color:var(--color-text-secondary);margin:0}strong,b{font-weight:var(--weight-keyword,800);color:var(--color-keyword,#1a3a6b)}a{color:var(--color-text-link,var(--blue-600));text-underline-offset:3px}a:hover{color:var(--color-text-link-hover,var(--blue-700))}img{max-width:100%;height:auto;display:block}button{cursor:pointer;background:0 0;border:none;font-family:inherit}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-tertiary{color:var(--color-text-tertiary)}.text-brand{color:var(--color-primary)}.text-highlight{color:var(--color-highlight,#1a3a6b)}.text-error{color:var(--color-error-text)}.text-success{color:var(--color-success-text)}.text-muted{color:var(--color-text-secondary)}.text-faint{color:var(--color-text-tertiary)}.text-ink{color:var(--color-primary-text)}.font-display{font-family:var(--font-display)}.font-serif{font-family:var(--font-serif)}.font-sans{font-family:var(--font-sans)}.weight-medium{font-weight:var(--weight-medium)}.weight-semibold{font-weight:var(--weight-semibold)}.weight-bold{font-weight:var(--weight-bold)}.weight-extrabold{font-weight:var(--weight-extrabold)}.keyword{color:var(--color-keyword,#1a3a6b);font-weight:800}.label-caps{font-family:var(--font-sans);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--color-text-secondary)}.section-badge{background:var(--color-primary,var(--brand));color:#fff;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-extrabold);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);letter-spacing:var(--tracking-wide);font-variant-numeric:tabular-nums;display:inline-block}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.paragraph{color:var(--text);font-size:1.05rem;line-height:1.8}ul.md-list{margin:.35rem 0 .35rem 1.25rem;padding:0;list-style:outside}ul.md-list ul.md-list{margin-top:.2rem;list-style:circle}.md-divider{border:none;border-top:1px solid var(--border);margin:1rem 0}.block-separator{border:0;border-top:1px solid var(--border);margin:2rem 0}.divider{border:none;border-top:1px solid var(--border);opacity:.9;margin:3rem 0}.section-sub-heading{font-family:var(--font-sans);border-bottom:1px solid var(--border);color:var(--text);letter-spacing:-.01em;margin:2.5rem 0 1rem;padding:0 0 .5rem .9rem;font-size:1.4rem;font-weight:800;position:relative}.section-sub-heading:before{content:"";background:var(--brand);border-radius:2px;width:4px;position:absolute;top:.15rem;bottom:.7rem;left:0}.section-sub-section{font-family:var(--font-serif);color:var(--text);margin:1rem 0 .45rem;font-size:1.05rem;font-weight:800;line-height:1.8}.quote-block{box-sizing:border-box;border-left:4px solid var(--brand);border-radius:var(--radius);background:var(--bg-soft);width:100%;color:var(--text);margin:1.5rem 0;padding:1.15rem 1.35rem;font-size:1.08rem;line-height:1.75}.object-group{gap:1rem;margin:1.5rem 0;display:grid}.object-group--row{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:start}.object-group--image-quote{grid-template-columns:minmax(180px,.65fr) minmax(320px,1.35fr)}.object-group--quote-image{grid-template-columns:minmax(320px,1.35fr) minmax(180px,.65fr)}.object-group--stack{grid-template-columns:1fr}.object-group>.block,.object-group>.quote-block,.object-group>.material{margin:0}.toggle-block{margin:1.5rem 0}.soft-asides{gap:.35rem;margin-top:.85rem;display:grid}.soft-aside{color:var(--text-muted);font-size:.92rem;font-style:italic;line-height:1.65}.image-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin:1.5rem 0;display:grid}.image-row__item img,.image-row__item .image-placeholder{border-radius:var(--radius);border:1px solid var(--border);width:100%}.callout{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);box-sizing:border-box;border-left:4px solid;min-width:0;margin:1.5rem 0;padding:1.5rem 1.75rem;overflow-x:hidden}.callout__label{font-family:var(--font-sans);letter-spacing:-.01em;margin-bottom:.5rem;font-size:1.05rem;font-weight:800;display:inline-block}.callout p{margin:.5rem 0}.callout p:first-child{margin-top:0}.callout p:last-child{margin-bottom:0}.case{background:var(--case-bg);border-left-color:var(--case-border);color:var(--case-text)}.case__text{font-size:1.05rem;line-height:1.75}.case__sub{border-top:1px dashed #2e7d4f59;margin-top:1rem;padding-top:1rem;font-size:.98rem;font-style:italic}.question{background:var(--question-bg);border-left-color:var(--question-border);color:var(--question-text);font-size:1.2rem;line-height:1.7}.question__prompt{margin-bottom:.5rem;font-weight:700}.question__prompt:not(:first-child){border-top:1px solid #1b6bff33;margin-top:1.25rem;padding-top:1.25rem}.question__note{color:var(--text-muted);margin-top:.25rem;font-size:.85rem;font-style:italic;font-weight:400}.question__sub-answer{color:var(--question-text);opacity:.88;border-left:2px solid #1b6bff59;margin-top:.5rem;padding-left:1rem;font-size:.95rem;font-weight:400}.question__conclusion{border-top:1px solid #1b6bff40;margin-top:1.5rem;padding-top:1rem;font-size:1.05rem;font-weight:600}.concept{background:var(--concept-bg);border-left-color:var(--concept-border);color:var(--concept-text)}.concept__title{font-family:var(--font-sans);color:var(--text);margin-bottom:.75rem;font-size:1.15rem;font-weight:800}.concept__body{white-space:pre-wrap}.concept__bullets{margin:.5rem 0 0;padding-left:1.25rem}.concept__bullets li{margin:.35rem 0}.answer{border:1px solid var(--border);border-radius:var(--radius);background:#fff;margin-top:1rem;overflow:hidden}.answer__toggle{text-align:left;width:100%;font-family:var(--font-sans);color:var(--brand);background:0 0;justify-content:space-between;align-items:center;padding:.75rem 1rem;font-size:.9rem;font-weight:700;transition:background .15s,color .15s;display:flex}.answer__toggle:hover{background:var(--brand-soft);color:var(--brand-deep)}.answer__toggle:after{content:"▼";font-size:.7rem;transition:transform .2s}.answer.is-open .answer__toggle:after{transform:rotate(180deg)}.answer.is-open{background:var(--bg-answer);border-color:var(--brand)}.answer.is-open .answer__toggle{color:var(--brand-deep)}.answer__content{border-top:1px solid #1b6bff33;padding:0 1rem 1rem;display:none}.answer.is-open .answer__content{display:block}.answer__content ul{margin:.75rem 0;padding-left:1.25rem}.answer__content li{margin:.4rem 0;line-height:1.65}.image-pair{justify-content:center;align-items:center;gap:1rem;min-width:0;max-width:100%;height:260px;margin:1rem 0;display:flex}.image-pair>*{min-width:0}.image-pair:has(.text-cutout){flex-wrap:wrap;align-items:flex-start;height:auto}.image-pair:has(.text-cutout)>img{object-fit:contain;flex:0 auto;width:auto;max-width:100%;height:auto;max-height:320px}.image-pair:has(.text-cutout)>.media__thumb-wrap{object-fit:contain;flex:0 auto;width:auto;max-width:100%;height:auto;max-height:320px}.image-pair:has(.text-cutout)>.image-placeholder{object-fit:contain;flex:0 auto;width:auto;max-width:100%;height:auto;max-height:320px}.image-pair:has(.text-cutout)>.text-cutout{flex:280px;min-width:0;height:auto;overflow:visible}.image-pair img{border-radius:var(--radius);border:1px solid var(--border);object-fit:contain;background:#fff;width:auto;height:auto;max-height:100%;display:block}.image-pair .media__thumb-wrap{aspect-ratio:16/9;flex-shrink:0;width:auto;height:100%}.image-pair .image-placeholder{aspect-ratio:4/3;border-radius:var(--radius);border:1px solid var(--border);height:100%}.image-placeholder{aspect-ratio:4/3;background:repeating-linear-gradient(45deg, var(--bg-soft), var(--bg-soft) 10px, #fff 10px, #fff 20px);color:var(--text-muted);text-align:center;justify-content:center;align-items:center;padding:1rem;font-size:.85rem;display:flex}.figure-row{grid-template-columns:200px 1fr;align-items:start;gap:1.5rem;min-width:0;max-width:100%;margin:1.5rem 0;display:grid}.figure-row>*{min-width:0}.figure-row__image-wrap{border-radius:var(--radius);border:1px solid var(--border);background:#fff;overflow:hidden}.figure-row:has(.figure-row__image-wrap .text-cutout){flex-wrap:wrap;align-items:flex-start;gap:1.5rem;display:flex}.figure-row:has(.figure-row__image-wrap .text-cutout)>.figure-row__image-wrap{background:0 0;border:none;flex:280px;min-width:0;overflow:visible}.figure-row:has(.figure-row__image-wrap .text-cutout)>:not(.figure-row__image-wrap){flex:240px;min-width:0}.figure-row__caption{color:var(--text-muted);text-align:center;background:var(--bg-soft);padding:.4rem;font-size:.8rem;line-height:1.3}.figure-row__quote{border-left:3px solid var(--brand);color:var(--text);white-space:pre-wrap;padding:.5rem 0 .5rem 1.25rem;font-size:1.1rem;font-style:normal;font-weight:500;line-height:1.7}.figure-row__note{color:var(--text-muted);white-space:pre-wrap;margin-top:.75rem;font-size:.95rem}.expandable{border:1px solid var(--case-border);background:var(--case-bg);border-radius:var(--radius-lg);margin:1.5rem 0;overflow:hidden}.expandable__summary{width:100%;font-family:var(--font-sans);color:var(--case-text);text-align:left;justify-content:space-between;align-items:center;padding:1rem 1.5rem;font-size:1rem;font-weight:700;transition:background .15s;display:flex}.expandable__summary:hover{background:#2e7d4f14}.expandable__summary:after{content:"▼";font-size:.7rem;transition:transform .2s}.expandable.is-open .expandable__summary:after{transform:rotate(180deg)}.expandable__content{padding:0 1.5rem 1.5rem;display:none}.expandable.is-open .expandable__content{display:block}.quiz-accordion__item{border:1px solid var(--case-border);background:var(--bg);border-radius:var(--radius-lg);margin-bottom:1rem;transition:box-shadow .2s;overflow:hidden}.quiz-accordion__item:hover{box-shadow:var(--shadow-sm)}.quiz-accordion__summary{cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;width:100%;padding:1.25rem 1.5rem;transition:background .15s;display:flex}.quiz-accordion__summary:hover{background:#2e7d4f0d}.quiz-accordion__title{font-family:var(--font-sans);color:var(--brand-ink);font-size:1.25rem;font-weight:800;line-height:1.4}.quiz-accordion__summary:after{content:"▼";color:var(--text-muted);margin-left:1rem;font-size:.8rem;transition:transform .2s}.quiz-accordion__item.is-open .quiz-accordion__summary:after{transform:rotate(180deg)}.quiz-accordion__content{border-top:1px dashed var(--case-border);padding:0 1.5rem 1.5rem;display:none}.quiz-accordion__item.is-open .quiz-accordion__content{display:block}.quiz-accordion__image-wrap{border-radius:var(--radius-md);background:#fdfdfd;justify-content:center;margin-bottom:1rem;padding:1.5rem 0;display:flex}.quiz-accordion__image-wrap img{border-radius:var(--radius-sm);max-width:100%;height:auto;box-shadow:var(--shadow-sm)}.summary{background:var(--brand-soft);border-radius:var(--radius-lg);border-left:4px solid var(--brand);margin:2rem 0;padding:2rem}.summary ol{color:var(--brand-ink);margin:0;padding-left:1.5rem;font-size:1.1rem;line-height:2}.summary ol li::marker{color:var(--brand);font-weight:800}.materials{flex-direction:column;gap:1rem;margin:1.25rem 0;display:flex}.materials--embedded{margin:1rem 0}.materials--row{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:start;display:grid}.materials--row.materials--balanced-row{grid-template-columns:repeat(auto-fit,minmax(0,1fr));align-items:start}.materials--figure{grid-template-columns:minmax(180px,.72fr) minmax(300px,1.28fr);align-items:center;display:grid}.material{min-width:0}.material--image{border:1px solid var(--border);border-radius:var(--radius-lg);background:#fff;margin:0;overflow:hidden}.materials--balanced-row .media--video{margin:0}.material--image img{border-radius:var(--radius-lg);background:#fff;width:100%;display:block}.materials--balanced-row .media__thumb-wrap{aspect-ratio:var(--material-aspect,16 / 9)}.material--link{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-soft);box-shadow:var(--shadow-sm);padding:1rem}.material--link a{color:var(--brand);font-weight:800;text-decoration:none}.material--link-card{border:1px solid var(--border);border-radius:var(--radius);min-width:0;box-shadow:var(--shadow-sm);background:#fff;overflow:hidden}.material-link-card__anchor{gap:var(--space-4);padding:var(--space-4) var(--space-5);color:inherit;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;text-decoration:none;display:grid}.material-link-card__body{gap:var(--space-2);align-content:center;min-width:0;display:grid}.material-link-card__title{color:var(--text);font-family:var(--font-sans);font-size:var(--text-base);font-weight:800;line-height:var(--leading-snug);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.material-link-card__desc{color:var(--text-muted);font-family:var(--font-sans);font-size:var(--text-sm);line-height:var(--leading-snug);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.material-link-card__url{color:var(--brand-deep);font-family:var(--font-sans);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.material-link-card__thumb{border-radius:0 var(--radius) var(--radius) 0;background:var(--bg-soft);width:9.5rem;min-height:5.25rem;overflow:hidden}.material-link-card__thumb img{object-fit:cover;width:100%;height:100%;display:block}.media{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--bg-soft);box-shadow:var(--shadow-sm);margin:1.5rem 0;overflow:hidden}.media--image img{width:100%;display:block}.media__thumb-link{text-decoration:none;display:block}.media__thumb-wrap{aspect-ratio:16/9;background:#000;position:relative;overflow:hidden}.media__thumb-wrap img,.media__thumb-wrap .image-placeholder{object-fit:cover;width:100%;height:100%;transition:opacity .2s,transform .2s;display:block}.media__thumb-link:hover .media__thumb-wrap img{opacity:.8}.media__play-icon{color:#fff;text-shadow:0 2px 12px #000000b3;pointer-events:none;justify-content:center;align-items:center;font-size:2.5rem;transition:transform .2s;display:flex;position:absolute;inset:0}.media__thumb-link:hover .media__play-icon{transform:scale(1.15)}.media__caption{box-sizing:border-box;border-top:1px solid var(--border);border-radius:0 0 var(--radius-lg) var(--radius-lg);width:100%;max-width:100%;color:var(--text-muted);text-align:center;background:#fff;margin:0;padding:.65rem 1rem;font-size:.85rem;line-height:1.4}.material--image:has(.media__caption) img{border-radius:var(--radius-lg) var(--radius-lg) 0 0}.material--image:has(.media__caption) .media__caption{border-radius:0 0 var(--radius-lg) var(--radius-lg)}@media (width<=760px){.object-group--image-quote,.object-group--quote-image,.materials--figure{grid-template-columns:1fr}.materials--balanced-row{grid-template-columns:1fr!important}}.nav-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;margin-top:4rem;padding-top:2rem;display:flex}.nav-footer button{border-radius:var(--radius);color:var(--text);border:1px solid var(--border-strong);background:#fff;padding:.75rem 1.25rem;font-size:.95rem;font-weight:600;transition:background .15s,border-color .15s,color .15s,transform 50ms}.nav-footer button:hover:not(:disabled){background:var(--brand);border-color:var(--brand);color:#fff}.nav-footer button:active:not(:disabled){transform:translateY(1px)}.nav-footer button:disabled{opacity:.35;cursor:default}.nav-footer__progress{color:var(--text-muted);font-size:.85rem;font-family:var(--font-sans);font-variant-numeric:tabular-nums;font-weight:600}@media (width<=900px){.app{grid-template-columns:1fr}.sidebar{border-right:none;border-bottom:1px solid var(--border);height:auto;position:static}.main{padding:2rem 1.5rem 4rem}.section-header__title{font-size:1.75rem}.image-pair,.figure-row{grid-template-columns:1fr}.figure-row__image-wrap{max-width:200px}}@media (width>=1600px){body{font-size:20px}.question{font-size:1.35rem}.section-header__title{font-size:2.75rem}}.md-accent-line{color:var(--accent);font-family:var(--font-sans);font-size:1.06em;font-weight:800;line-height:1.55;display:inline-block}em{color:var(--brand-ink);font-style:italic}.text-cutout{border:1px solid var(--border-strong);border-radius:var(--radius);width:100%;min-width:0;max-width:100%;height:auto;font-family:var(--font-serif);color:var(--text);box-shadow:var(--shadow-sm);box-sizing:border-box;overflow-wrap:break-word;word-wrap:break-word;background:#fff;flex-direction:column;gap:.75rem;padding:1.25rem 1.5rem;line-height:1.75;display:flex}.text-cutout__headline{font-family:var(--font-sans);color:var(--text);letter-spacing:-.01em;border-bottom:1px solid var(--border);padding-bottom:.6rem;font-size:1.15rem;font-weight:800;line-height:1.3}.text-cutout__source{border-top:1px dashed var(--border);font-family:var(--font-sans);color:var(--text-muted);padding-top:.6rem;font-size:.8rem}.figure-row:has(.figure-row__image-wrap .text-cutout){grid-template-columns:1fr 1fr;align-items:start}.figure-row__image-wrap .text-cutout{box-shadow:none;border:1px solid var(--border-strong);border-radius:var(--radius);padding:1rem 1.1rem}.figure-row__image-wrap .text-cutout__headline{font-size:1rem}.callout .text-cutout{margin-top:.75rem}.block{margin:var(--space-6) 0}.block p{margin:var(--space-3) 0}.paragraph{color:var(--text);font-family:var(--font-serif);font-size:var(--text-md);line-height:var(--leading-loose);overflow-wrap:break-word}ul.md-list{margin:var(--space-2) 0 var(--space-2) var(--space-6);padding:0}ul.md-list li{margin-bottom:var(--space-1);line-height:var(--leading-relaxed)}strong,b{color:var(--accent);font-weight:800}.md-accent-line{color:var(--accent);font-family:inherit;font-weight:800}em{color:var(--brand-ink)}.divider{margin:var(--space-12) 0;border:0;border-top:1px solid var(--border)}.block-separator{margin:var(--space-8) 0;border:0;border-top:1px solid var(--border)}.section-sub-heading{margin:var(--space-10) 0 var(--space-5);border-bottom:1px solid var(--border);color:var(--text);padding:0 0 var(--space-3) var(--space-5);font-family:var(--font-sans);font-size:var(--text-2xl);letter-spacing:-.01em;font-weight:800;line-height:var(--leading-snug);position:relative}.section-sub-heading:before{background:var(--brand);content:"";border-radius:2px;width:4px;position:absolute;top:.18rem;bottom:.85rem;left:0}.callout{margin:var(--space-6) 0;border-radius:var(--radius-lg);padding:var(--space-6) var(--space-8);box-shadow:var(--shadow-sm);border:1px solid #0000;border-left:4px solid;min-width:0;overflow-x:hidden}.callout__label,.concept__title{margin-bottom:var(--space-3);font-family:var(--font-sans);font-size:var(--text-lg);letter-spacing:-.01em;font-weight:800;line-height:var(--leading-snug);display:inline-block}.case{border-color:#2e7d4f29;border-left-color:var(--case-border);background:var(--case-bg);color:var(--case-text)}.case .callout__label{color:var(--case-border)}.case__text{font-family:var(--font-serif);font-size:var(--text-md);line-height:var(--leading-relaxed)}.case__sub{margin-top:var(--space-5);padding-top:var(--space-4);color:var(--case-text);font-family:var(--font-serif);font-size:var(--text-sm);font-style:italic;line-height:var(--leading-relaxed);opacity:.88;border-top:1px dashed #2e7d4f59}.question{border-color:rgba(var(--accent-rgb), .16);border-left-color:var(--question-border);background:var(--question-bg);color:var(--question-text);font-size:var(--text-xl);line-height:var(--leading-relaxed)}.question .callout__label{color:var(--question-text)}.question__prompt{color:var(--question-text);font-family:var(--font-serif);font-weight:700;line-height:var(--leading-relaxed)}.question__prompt:not(:first-child){margin-top:var(--space-6);border-top:1px solid rgba(var(--accent-rgb), .2);padding-top:var(--space-5)}.question__note,.question__sub-answer{color:var(--text-muted);font-size:var(--text-sm);line-height:var(--leading-normal)}.question__note{margin-top:var(--space-2);font-style:italic}.question__sub-answer{margin-top:var(--space-3);border-left:2px solid rgba(var(--accent-rgb), .35);padding-left:var(--space-4)}.concept{border-color:#5a637229;border-left-color:var(--concept-border);background:var(--concept-bg);color:var(--concept-text)}.concept__title{color:var(--text)}.concept__body{font-family:var(--font-serif);font-size:var(--text-base);line-height:var(--leading-loose);white-space:pre-wrap}.answer,.expandable,.quiz-accordion__item{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);background:#fff;overflow:hidden}.answer{margin-top:var(--space-4)}.answer__toggle,.expandable__summary,.quiz-accordion__summary{width:100%;color:var(--brand);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:800;line-height:var(--leading-snug);text-align:left;transition:background var(--duration-fast), color var(--duration-fast);justify-content:space-between;align-items:center;display:flex}.answer__toggle{padding:var(--space-3) var(--space-4)}.expandable__summary,.quiz-accordion__summary{padding:var(--space-5) var(--space-6)}.answer__toggle:hover,.expandable__summary:hover,.quiz-accordion__summary:hover{background:var(--brand-soft);color:var(--brand-deep)}.answer__toggle:after,.expandable__summary:after,.quiz-accordion__summary:after{color:currentColor;content:"▼";transition:transform var(--duration-base);font-size:.7rem}.answer.is-open,.expandable.is-open,.quiz-accordion__item.is-open{border-color:rgba(var(--accent-rgb), .35)}.answer.is-open{background:var(--bg-answer)}.answer.is-open .answer__toggle:after,.expandable.is-open .expandable__summary:after,.quiz-accordion__item.is-open .quiz-accordion__summary:after{transform:rotate(180deg)}.answer__content,.expandable__content,.quiz-accordion__content{border-top:1px solid rgba(var(--accent-rgb), .18);padding:var(--space-4) var(--space-5) var(--space-5)}.quiz-accordion{margin:var(--space-5) 0 var(--space-8)}.quiz-accordion__title{color:var(--brand-ink);font-family:var(--font-sans);font-size:var(--text-lg);font-weight:800;line-height:var(--leading-snug)}.quiz-accordion__image-wrap{margin-bottom:var(--space-4);border-radius:var(--radius);background:var(--bg-soft);padding:var(--space-5)}.image-row,.materials{gap:var(--space-4);margin:var(--space-6) 0}.callout .materials{margin:var(--space-4) 0}.callout__label+.materials{margin-top:0}.image-row__item img,.image-row__item .image-placeholder,.image-pair img,.image-pair .image-placeholder,.figure-row__image-wrap,.material--image img,.media,.text-cutout{border-color:var(--border);border-radius:var(--radius)}.image-placeholder{background:repeating-linear-gradient(45deg, var(--bg-soft), var(--bg-soft) 10px, #fff 10px, #fff 20px);color:var(--text-muted);font-family:var(--font-sans);font-size:var(--text-sm)}.figure-row{gap:var(--space-6);margin:var(--space-6) 0;grid-template-columns:minmax(180px,.72fr) minmax(300px,1.28fr)}.figure-row__caption,.media__caption{color:var(--text-muted);font-family:var(--font-sans);font-size:var(--text-sm);line-height:var(--leading-snug);background:#fff}.figure-row__quote{border-left:4px solid var(--brand);color:var(--text);padding:var(--space-2) 0 var(--space-2) var(--space-5);font-family:var(--font-serif);font-size:var(--text-lg);font-weight:400;line-height:var(--leading-relaxed)}.figure-row__note{margin-top:var(--space-3);color:var(--text-muted);font-family:var(--font-serif);font-size:var(--text-sm);line-height:var(--leading-normal)}.media,.material--link,.text-cutout{box-shadow:var(--shadow-sm);background:#fff}.media__thumb-wrap{border-radius:var(--radius) var(--radius) 0 0;background:#111418}.media__play-icon{text-shadow:0 2px 12px #000000b3;font-size:2.4rem}.text-cutout{padding:var(--space-5) var(--space-6);color:var(--text);font-family:var(--font-serif);line-height:var(--leading-relaxed)}.text-cutout__headline{border-bottom:1px solid var(--border);color:var(--text);padding-bottom:var(--space-3);font-family:var(--font-sans);font-size:var(--text-lg);font-weight:800;line-height:var(--leading-snug)}.text-cutout__body{font-size:var(--text-base);line-height:var(--leading-loose)}.text-cutout__source{border-top:1px dashed var(--border);color:var(--text-muted);padding-top:var(--space-3);font-family:var(--font-sans);font-size:var(--text-sm)}.nav-footer{justify-content:space-between;align-items:center;gap:var(--space-4);margin-top:var(--space-16);padding-top:var(--space-8);border-top:1px solid var(--border);font-family:var(--font-sans);display:flex}.nav-footer button{border:1px solid var(--border-strong);border-radius:var(--radius);color:var(--text);background:#fff;padding:.75rem 1.25rem;font-size:.95rem;font-weight:700}.nav-footer button:hover:not(:disabled){border-color:var(--brand);background:var(--brand);color:#fff}.nav-footer__progress{color:var(--text-muted);font-family:var(--font-sans);font-size:var(--text-sm);font-variant-numeric:tabular-nums;font-weight:700}@media (width<=900px){.callout{padding:var(--space-5)}.figure-row,.materials--figure{grid-template-columns:1fr}.figure-row__image-wrap{max-width:none}}.btn{justify-content:center;align-items:center;gap:var(--space-1-5);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--weight-bold);cursor:pointer;white-space:nowrap;min-height:var(--space-11);transition:var(--transition-color), var(--transition-shadow);border:none;outline:none;line-height:1;text-decoration:none;display:inline-flex}.btn:active{transform:translateY(1px)}.btn:focus-visible{box-shadow:var(--shadow-focus-ring)}.btn--xs{padding:var(--space-1-5) var(--space-3);font-size:var(--text-xs);border-radius:var(--radius-sm);min-height:28px}.btn--sm{padding:var(--space-2) var(--space-4);font-size:var(--text-sm);border-radius:var(--radius-sm);min-height:36px}.btn--lg{padding:var(--space-4) var(--space-6);font-size:var(--text-lg);min-height:var(--space-12);border-radius:var(--radius-lg)}.btn--primary{background:var(--color-primary,var(--brand));color:var(--color-on-primary,#fff)}.btn--primary:hover{background:var(--color-primary-hover,var(--brand-deep))}.btn--secondary{background:var(--color-surface,#fff);color:var(--color-text-primary,var(--text));border:1.5px solid var(--color-border-strong,var(--border-strong))}.btn--secondary:hover{background:var(--color-primary-subtle,var(--brand-soft));border-color:var(--color-primary,var(--brand));color:var(--color-primary-text,var(--brand-ink))}.btn--ghost{color:var(--color-primary,var(--brand));background:0 0;border:none}.btn--ghost:hover{background:var(--color-primary-subtle,var(--brand-soft))}.btn--danger{background:var(--color-surface,#fff);color:var(--color-error-text,#c62828);border:1.5px solid var(--color-error-border,var(--red-200,#ffb3b3))}.btn--danger:hover{background:var(--color-error-subtle,var(--red-50,#fff0f0));border-color:var(--color-error,var(--red-500,#e53935))}.btn--disabled,.btn[disabled]{cursor:not-allowed;pointer-events:none;box-shadow:none;transform:none;background:var(--color-disabled-fill,var(--neutral-100,#f4f6fa))!important;color:var(--color-disabled-text,var(--neutral-400,#8a95a8))!important;border-color:var(--color-disabled-border,var(--neutral-200,#e3e7ee))!important}.btn--loading{cursor:wait;pointer-events:none;position:relative;color:#0000!important}.btn--loading:after{content:"";border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite booong-spin;position:absolute}.btn--loading.btn--secondary:after,.btn--loading.btn--ghost:after{border-color:#1b6bff40;border-top-color:var(--color-primary,var(--brand))}@keyframes booong-spin{to{transform:rotate(360deg)}}.btn--icon{padding:var(--space-2-5)}.btn--icon.btn--sm{padding:var(--space-1-5)}.field{gap:var(--space-1-5);flex-direction:column;display:flex}.field__label{font-family:var(--font-sans);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:var(--tracking-wide);color:var(--color-primary,var(--brand))}.field__label--muted{color:var(--color-text-secondary,var(--text-muted))}.field__label--error{color:var(--color-error-text)}.field__label--success{color:var(--color-success-text)}.field__input{width:100%;padding:var(--space-2-5) var(--space-3-5);border:1.5px solid var(--color-border-strong,var(--border-strong));border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-base);color:var(--color-text-primary,var(--text));background:var(--color-surface,var(--bg));transition:var(--transition-color), box-shadow var(--dur-fast) ease;min-height:var(--space-11);outline:none}.field__input::placeholder{color:var(--color-text-tertiary,var(--text-faint))}.field__input:focus{border-color:var(--color-border-focus,var(--brand));box-shadow:var(--shadow-focus-ring)}.field__input--error{border-color:var(--color-error-border)!important;box-shadow:var(--shadow-focus-error)!important}.field__input--success{border-color:var(--color-success-border)!important;box-shadow:0 0 0 3px #2e7d4f2e!important}.field__input--disabled,.field__input[disabled]{cursor:not-allowed;background:var(--color-disabled-fill)!important;color:var(--color-disabled-text)!important;border-color:var(--color-disabled-border)!important}.field__helper{font-family:var(--font-sans);font-size:var(--text-xs);color:var(--color-text-tertiary);align-items:center;gap:var(--space-1);display:flex}.field__helper--error{color:var(--color-error-text)}.field__helper--success{color:var(--color-success-text)}.field__wrap{position:relative}.field__wrap .field__input{padding-right:var(--space-10)}.field__wrap-icon{right:var(--space-3);color:var(--color-text-tertiary);pointer-events:none;align-items:center;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.field__wrap-icon--error{color:var(--color-error)}.field__wrap-icon--success{color:var(--color-success)}input[type=range]{appearance:none;width:100%;height:var(--space-11);cursor:pointer;background:0 0;outline:none;padding:0}input[type=range]::-webkit-slider-runnable-track{border-radius:var(--radius-full);background:var(--color-border-strong,var(--border-strong));height:6px}input[type=range]::-moz-range-track{border-radius:var(--radius-full);background:var(--color-border-strong,var(--border-strong));border:none;height:6px}input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--color-primary,var(--brand));border:2.5px solid var(--color-surface,var(--bg));width:22px;height:22px;box-shadow:var(--shadow-sm);transition:var(--transition-transform);border-radius:50%;margin-top:-8px}input[type=range]::-moz-range-thumb{background:var(--color-primary,var(--brand));border:2.5px solid var(--color-surface,var(--bg));width:22px;height:22px;box-shadow:var(--shadow-sm);border-radius:50%}input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:var(--shadow-focus-ring)}input[type=range]:focus-visible::-moz-range-thumb{box-shadow:var(--shadow-focus-ring)}input[type=range]:disabled{cursor:not-allowed;opacity:.45}.chip{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2-5);border-radius:var(--radius-full,9999px);font-family:var(--font-sans);font-size:var(--text-xs);font-weight:var(--weight-semibold);background:var(--color-primary-subtle,var(--brand-soft));color:var(--color-primary-text,var(--brand-ink));border:1px solid var(--blue-200,#adc8ff);cursor:default;display:inline-flex}.chip--gray{background:var(--color-surface-subtle,var(--bg-soft));color:var(--color-text-secondary,var(--text-muted));border-color:var(--color-border,var(--border))}.chip__remove{cursor:pointer;opacity:.5;align-items:center;display:flex}.chip__remove:hover{opacity:1}.toast-container{top:var(--space-5);z-index:var(--z-toast,500);align-items:center;gap:var(--space-2);pointer-events:none;flex-direction:column;display:flex;position:fixed;left:50%;transform:translate(-50%)}.toast{align-items:center;gap:var(--space-2-5);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--color-border,var(--border));background:var(--color-surface,#fff);box-shadow:var(--shadow-md);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-primary,var(--text));pointer-events:auto;max-width:360px;animation:booong-toast-in .28s var(--ease-spring) both;display:flex}@keyframes booong-toast-in{0%{opacity:0;transform:translateY(-8px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.toast__icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;display:flex}.toast__msg{flex:1}.toast__action{font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--color-primary,var(--brand));cursor:pointer;white-space:nowrap;flex-shrink:0}.toast__action:hover{text-decoration:underline}.toast__close{cursor:pointer;color:var(--color-text-tertiary);flex-shrink:0;align-items:center;display:flex}.toast__close:hover{color:var(--color-text-secondary)}.toast--normal .toast__icon{background:var(--color-primary-subtle,var(--brand-soft));color:var(--color-primary,var(--brand))}.toast--success{border-color:var(--green-200,#a0d4b5)}.toast--success .toast__icon{background:var(--color-success-subtle);color:var(--color-success)}.toast--error{border-color:var(--red-200,#ffb3b3)}.toast--error .toast__icon{background:var(--color-error-subtle);color:var(--color-error)}.toast--error .toast__action{color:var(--color-error)}.toast--warning{border-color:var(--orange-300,#ffb74d)}.toast--warning .toast__icon{background:var(--color-warning-subtle);color:var(--color-warning)}.toast--warning .toast__action{color:var(--color-warning)}.alert-backdrop{background:var(--color-surface-overlay,#0c1220d1);z-index:var(--z-modal,400);justify-content:center;align-items:center;animation:.18s booong-fade-in;display:flex;position:fixed;inset:0}@keyframes booong-fade-in{0%{opacity:0}to{opacity:1}}.alert-dialog{background:var(--color-surface,#fff);border-radius:var(--radius-xl,16px);padding:var(--space-8) var(--space-7) var(--space-6);max-width:360px;width:calc(100% - var(--space-8));box-shadow:var(--shadow-xl);gap:var(--space-4);animation:booong-scale-in .2s var(--ease-spring);flex-direction:column;display:flex}@keyframes booong-scale-in{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.alert-dialog__icon{width:var(--space-11);height:var(--space-11);border-radius:var(--radius-lg);justify-content:center;align-items:center;display:flex}.alert-dialog__icon--danger{background:var(--color-error-subtle);color:var(--color-error)}.alert-dialog__icon--primary{background:var(--color-primary-subtle,var(--brand-soft));color:var(--color-primary,var(--brand))}.alert-dialog__title{font-family:var(--font-sans);font-size:var(--text-lg);font-weight:var(--weight-extrabold);color:var(--color-text-primary,var(--text));letter-spacing:var(--tracking-snug)}.alert-dialog__desc{font-family:var(--font-sans);font-size:var(--text-sm);color:var(--color-text-secondary,var(--text-muted));line-height:var(--leading-relaxed);margin-top:calc(-1 * var(--space-2))}.alert-dialog__actions{gap:var(--space-2);margin-top:var(--space-1);display:flex}.alert-dialog__btn{padding:var(--space-2-5) var(--space-3);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-bold);cursor:pointer;transition:var(--transition-color);border:none;flex:1}.alert-dialog__btn--cancel{background:var(--color-surface-subtle,var(--bg-soft));color:var(--color-text-secondary,var(--text-muted))}.alert-dialog__btn--cancel:hover{background:var(--color-border,var(--border))}.alert-dialog__btn--danger{background:var(--color-error,#e53935);color:#fff}.alert-dialog__btn--danger:hover{background:var(--color-error-text,#c62828)}.alert-dialog__btn--primary{background:var(--color-primary,var(--brand));color:#fff}.alert-dialog__btn--primary:hover{background:var(--color-primary-hover,var(--brand-deep))}@keyframes booong-shimmer{0%{background-position:-600px 0}to{background-position:600px 0}}.skel{background:linear-gradient(90deg, var(--color-surface-subtle,#f4f6fa) 25%, #e8ecf3 50%, var(--color-surface-subtle,#f4f6fa) 75%);border-radius:var(--radius-sm);background-size:1200px 100%;animation:1.5s ease-in-out infinite booong-shimmer}.skel--text{height:14px}.skel--text-sm{height:11px}.skel--title{height:20px}.skel--avatar{border-radius:50%}.skel--thumb{border-radius:var(--radius-md)}.skel-card{border:1px solid var(--color-border,var(--border));border-radius:var(--radius-lg);padding:var(--space-4);gap:var(--space-3);background:var(--color-surface,#fff);flex-direction:column;display:flex}.empty-state{justify-content:center;align-items:center;gap:var(--space-2-5);padding:var(--space-8) var(--space-5);text-align:center;border:1.5px dashed var(--color-border-strong,var(--border-strong));border-radius:var(--radius-lg);background:var(--color-surface-subtle,var(--bg-soft));flex-direction:column;display:flex}.empty-state__icon{width:var(--space-12);height:var(--space-12);border-radius:var(--radius-lg);margin-bottom:var(--space-1);justify-content:center;align-items:center;display:flex}.empty-state__icon--default{background:var(--color-primary-subtle,var(--brand-soft));color:var(--color-primary,var(--brand))}.empty-state__icon--error{background:var(--color-error-subtle);color:var(--color-error)}.empty-state__icon--search{background:var(--color-surface-subtle,var(--bg-soft));color:var(--color-text-secondary);border:1px solid var(--color-border,var(--border))}.empty-state__title{font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--weight-bold);color:var(--color-text-primary,var(--text))}.empty-state__desc{font-family:var(--font-sans);font-size:var(--text-sm);color:var(--color-text-tertiary,var(--text-faint));line-height:var(--leading-relaxed);max-width:240px}.overlay-bar{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:color-mix(in srgb, var(--color-surface,var(--bg)) 72%, transparent);-webkit-backdrop-filter:blur(12px);border:1px solid color-mix(in srgb, var(--color-border,var(--border)) 60%, transparent);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--color-text-primary,var(--text));box-shadow:var(--shadow-sm,0 1px 4px #0000001a);z-index:var(--z-sticky,200);display:flex}.overlay-bar--top{border-radius:0 0 var(--radius-lg) var(--radius-lg);border-top:none}.overlay-bar--bottom{border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding-bottom:max(var(--space-2), calc(var(--space-2) + var(--safe-bottom,env(safe-area-inset-bottom,0px))));border-bottom:none}.overlay-bar--sticky-top{position:absolute;top:0;left:0;right:0}.overlay-bar--sticky-bottom{position:absolute;bottom:0;left:0;right:0}.overlay-bar>*{flex-shrink:0}.overlay-bar>input[type=range]{flex:1 1 0;align-self:center;min-width:0;height:auto}.chip-toggle{justify-content:center;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);border:1.5px solid color-mix(in srgb, var(--color-border,var(--border)) 80%, transparent);background:color-mix(in srgb, var(--color-surface,var(--bg)) 80%, transparent);-webkit-backdrop-filter:blur(8px);height:30px;font-family:var(--font-sans);font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--color-text-secondary,var(--text));white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--dur-fast,.12s) var(--ease-out,ease), color var(--dur-fast,.12s) var(--ease-out,ease), border-color var(--dur-fast,.12s) var(--ease-out,ease);display:inline-flex}.chip-toggle:hover{background:color-mix(in srgb, var(--color-primary,var(--brand)) 10%, var(--color-surface,var(--bg)) 80%);border-color:var(--color-primary,var(--brand));color:var(--color-primary,var(--brand))}.chip-toggle.is-active,.chip-toggle[aria-pressed=true]{background:var(--color-primary,var(--brand));border-color:var(--color-primary,var(--brand));color:var(--color-on-primary,#fff)}.chip-toggle:focus-visible{box-shadow:var(--shadow-focus-ring);outline:none}.chip-toggle-group{gap:var(--space-1-5);flex-flow:row;display:flex}.chip-toggle-group--vertical{flex-direction:column;align-items:flex-end}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-amber-50:oklch(98.7% .022 95.277);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-500:oklch(76.9% .188 70.08);--color-amber-600:oklch(66.6% .179 58.318);--color-amber-700:oklch(55.5% .163 48.998);--color-amber-800:oklch(47.3% .137 46.201);--color-emerald-50:oklch(97.9% .021 166.113);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-200:oklch(90.5% .093 164.15);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-emerald-700:oklch(50.8% .118 165.612);--color-emerald-800:oklch(43.2% .095 166.913);--color-emerald-950:oklch(26.2% .051 172.552);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-blue-900:oklch(37.9% .146 265.522);--color-purple-600:oklch(55.8% .288 302.321);--color-rose-50:oklch(96.9% .015 12.422);--color-rose-100:oklch(94.1% .03 12.58);--color-rose-400:oklch(71.2% .194 13.428);--color-rose-500:oklch(64.5% .246 16.439);--color-rose-600:oklch(58.6% .253 17.585);--color-rose-700:oklch(51.4% .222 16.935);--color-rose-800:oklch(45.5% .188 13.697);--color-rose-950:oklch(27.1% .105 12.094);--color-slate-50:oklch(98.4% .003 247.858);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-200:oklch(92.9% .013 255.508);--color-slate-300:oklch(86.9% .022 252.894);--color-slate-400:oklch(70.4% .04 256.788);--color-slate-500:oklch(55.4% .046 257.417);--color-slate-600:oklch(44.6% .043 257.281);--color-slate-700:oklch(37.2% .044 257.287);--color-slate-800:oklch(27.9% .041 260.031);--color-slate-900:oklch(20.8% .042 265.755);--color-slate-950:oklch(12.9% .042 264.695);--color-white:#fff;--spacing:.25rem;--container-xl:36rem;--container-5xl:64rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-weight-black:900;--tracking-tight:-.025em;--tracking-wider:.05em;--leading-snug:1.375;--leading-relaxed:1.625;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.m-0{margin:calc(var(--spacing) * 0)}.mx-auto{margin-inline:auto}.my-1{margin-block:calc(var(--spacing) * 1)}.my-8{margin-block:calc(var(--spacing) * 8)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-2\.5{margin-bottom:calc(var(--spacing) * 2.5)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-3\.5{margin-bottom:calc(var(--spacing) * 3.5)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.block{display:block}.flex{display:flex}.grid{display:grid}.inline-flex{display:inline-flex}.aspect-\[22\/4\.5\]{aspect-ratio:22/4.5}.aspect-\[22\/8\]{aspect-ratio:22/8}.aspect-\[22\/9\.5\]{aspect-ratio:22/9.5}.aspect-square{aspect-ratio:1}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-\[140px\]{height:140px}.h-\[240px\]{height:240px}.h-full{height:100%}.h-px{height:1px}.min-h-12{min-height:calc(var(--spacing) * 12)}.min-h-\[40px\]{min-height:40px}.min-h-\[46px\]{min-height:46px}.min-h-\[48px\]{min-height:48px}.min-h-\[140px\]{min-height:140px}.min-h-\[190px\]{min-height:190px}.min-h-\[440px\]{min-height:440px}.min-h-\[480px\]{min-height:480px}.min-h-\[580px\]{min-height:580px}.w-\[140px\]{width:140px}.w-\[240px\]{width:240px}.w-full{width:100%}.max-w-5xl{max-width:var(--container-5xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-\[170px\]{max-width:170px}.max-w-\[280px\]{max-width:280px}.max-w-\[340px\]{max-width:340px}.max-w-\[1040px\]{max-width:1040px}.max-w-xl{max-width:var(--container-xl)}.min-w-\[900px\]{min-width:900px}.cursor-pointer{cursor:pointer}.appearance-none{appearance:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-items-center{justify-items:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-12>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 12) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 12) * calc(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t-4{border-top-style:var(--tw-border-style);border-top-width:4px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-blue-200{border-color:var(--color-blue-200)}.border-blue-600{border-color:var(--color-blue-600)}.border-emerald-100\/50{border-color:#d0fae580}@supports (color:color-mix(in lab, red, red)){.border-emerald-100\/50{border-color:color-mix(in oklab, var(--color-emerald-100) 50%, transparent)}}.border-emerald-500{border-color:var(--color-emerald-500)}.border-rose-100\/50{border-color:#ffe4e680}@supports (color:color-mix(in lab, red, red)){.border-rose-100\/50{border-color:color-mix(in oklab, var(--color-rose-100) 50%, transparent)}}.border-rose-500{border-color:var(--color-rose-500)}.border-slate-100{border-color:var(--color-slate-100)}.border-slate-200{border-color:var(--color-slate-200)}.border-slate-200\/50{border-color:#e2e8f080}@supports (color:color-mix(in lab, red, red)){.border-slate-200\/50{border-color:color-mix(in oklab, var(--color-slate-200) 50%, transparent)}}.border-slate-300{border-color:var(--color-slate-300)}.bg-amber-50{background-color:var(--color-amber-50)}.bg-amber-100{background-color:var(--color-amber-100)}.bg-blue-50{background-color:var(--color-blue-50)}.bg-blue-50\/40{background-color:#eff6ff66}@supports (color:color-mix(in lab, red, red)){.bg-blue-50\/40{background-color:color-mix(in oklab, var(--color-blue-50) 40%, transparent)}}.bg-blue-100{background-color:var(--color-blue-100)}.bg-blue-600{background-color:var(--color-blue-600)}.bg-emerald-50{background-color:var(--color-emerald-50)}.bg-emerald-50\/40{background-color:#ecfdf566}@supports (color:color-mix(in lab, red, red)){.bg-emerald-50\/40{background-color:color-mix(in oklab, var(--color-emerald-50) 40%, transparent)}}.bg-emerald-100{background-color:var(--color-emerald-100)}.bg-emerald-600{background-color:var(--color-emerald-600)}.bg-rose-50{background-color:var(--color-rose-50)}.bg-rose-50\/40{background-color:#fff1f266}@supports (color:color-mix(in lab, red, red)){.bg-rose-50\/40{background-color:color-mix(in oklab, var(--color-rose-50) 40%, transparent)}}.bg-rose-100{background-color:var(--color-rose-100)}.bg-rose-600{background-color:var(--color-rose-600)}.bg-slate-50{background-color:var(--color-slate-50)}.bg-slate-50\/20{background-color:#f8fafc33}@supports (color:color-mix(in lab, red, red)){.bg-slate-50\/20{background-color:color-mix(in oklab, var(--color-slate-50) 20%, transparent)}}.bg-slate-50\/30{background-color:#f8fafc4d}@supports (color:color-mix(in lab, red, red)){.bg-slate-50\/30{background-color:color-mix(in oklab, var(--color-slate-50) 30%, transparent)}}.bg-slate-50\/40{background-color:#f8fafc66}@supports (color:color-mix(in lab, red, red)){.bg-slate-50\/40{background-color:color-mix(in oklab, var(--color-slate-50) 40%, transparent)}}.bg-slate-50\/50{background-color:#f8fafc80}@supports (color:color-mix(in lab, red, red)){.bg-slate-50\/50{background-color:color-mix(in oklab, var(--color-slate-50) 50%, transparent)}}.bg-slate-50\/60{background-color:#f8fafc99}@supports (color:color-mix(in lab, red, red)){.bg-slate-50\/60{background-color:color-mix(in oklab, var(--color-slate-50) 60%, transparent)}}.bg-slate-100{background-color:var(--color-slate-100)}.bg-slate-100\/50{background-color:#f1f5f980}@supports (color:color-mix(in lab, red, red)){.bg-slate-100\/50{background-color:color-mix(in oklab, var(--color-slate-100) 50%, transparent)}}.bg-slate-200{background-color:var(--color-slate-200)}.bg-slate-950{background-color:var(--color-slate-950)}.bg-white{background-color:var(--color-white)}.bg-white\/10{background-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.bg-white\/10{background-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.p-1{padding:calc(var(--spacing) * 1)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-3\.5{padding:calc(var(--spacing) * 3.5)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-16{padding-bottom:calc(var(--spacing) * 16)}.text-center{text-align:center}.text-left{text-align:left}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.text-amber-500{color:var(--color-amber-500)}.text-amber-600{color:var(--color-amber-600)}.text-amber-700{color:var(--color-amber-700)}.text-amber-800{color:var(--color-amber-800)}.text-blue-100{color:var(--color-blue-100)}.text-blue-200{color:var(--color-blue-200)}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-blue-800{color:var(--color-blue-800)}.text-blue-900{color:var(--color-blue-900)}.text-emerald-200{color:var(--color-emerald-200)}.text-emerald-400{color:var(--color-emerald-400)}.text-emerald-600{color:var(--color-emerald-600)}.text-emerald-700{color:var(--color-emerald-700)}.text-emerald-800{color:var(--color-emerald-800)}.text-emerald-950{color:var(--color-emerald-950)}.text-purple-600{color:var(--color-purple-600)}.text-rose-400{color:var(--color-rose-400)}.text-rose-600{color:var(--color-rose-600)}.text-rose-700{color:var(--color-rose-700)}.text-rose-800{color:var(--color-rose-800)}.text-rose-950{color:var(--color-rose-950)}.text-slate-400{color:var(--color-slate-400)}.text-slate-500{color:var(--color-slate-500)}.text-slate-600{color:var(--color-slate-600)}.text-slate-700{color:var(--color-slate-700)}.text-slate-800{color:var(--color-slate-800)}.text-slate-900{color:var(--color-slate-900)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.decoration-2{text-decoration-thickness:2px}.accent-blue-600{accent-color:var(--color-blue-600)}.accent-rose-600{accent-color:var(--color-rose-600)}.shadow-2xs{--tw-shadow:0 1px var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.hover\:border-slate-300:hover{border-color:var(--color-slate-300)}.hover\:bg-blue-700:hover{background-color:var(--color-blue-700)}.hover\:bg-emerald-700:hover{background-color:var(--color-emerald-700)}.hover\:bg-rose-700:hover{background-color:var(--color-rose-700)}.hover\:bg-slate-50:hover{background-color:var(--color-slate-50)}.hover\:bg-slate-100:hover{background-color:var(--color-slate-100)}.hover\:text-slate-800:hover{color:var(--color-slate-800)}}.focus\:border-blue-500:focus{border-color:var(--color-blue-500)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\:ring-blue-100:focus{--tw-ring-color:var(--color-blue-100)}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-45:disabled{opacity:.45}@media (width>=40rem){.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}}@media (width>=48rem){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-end{align-items:flex-end}.md\:p-10{padding:calc(var(--spacing) * 10)}.md\:px-0{padding-inline:calc(var(--spacing) * 0)}.md\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.md\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.md\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.md\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.md\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.md\:text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}}@media (width>=64rem){.lg\:grid-cols-\[1fr_360px\]{grid-template-columns:1fr 360px}.lg\:px-8{padding-inline:calc(var(--spacing) * 8)}}}:root{color:#172033;--font-serif:system-ui, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", "Segoe UI", sans-serif;--font-sans:system-ui, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", "Segoe UI", sans-serif;background:#f6f7fb;font-family:system-ui,-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Malgun Gothic,Segoe UI,sans-serif}.site-shell{flex-direction:column;min-height:100vh;display:flex}.site-shell>:first-child{flex:1 0 auto}.legal-footer{z-index:2;color:#64748b;background:#fff;border-top:1px solid #0f172a1a;justify-content:space-between;align-items:center;gap:20px;padding:18px clamp(18px,4vw,48px);font-size:13px;display:flex;position:relative}.legal-footer nav{flex-wrap:wrap;gap:16px;display:flex}.legal-footer a{color:#334155;font-weight:700;text-decoration:none}.legal-footer a:hover{color:#185fa5;text-decoration:underline}.legal-page{color:#172033;background:#f8fafc;min-height:100%;padding-bottom:72px}.legal-page-header{background:#fff;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:20px;padding:18px clamp(20px,5vw,64px);display:flex}.legal-page-header a{color:#0f172a;font-size:17px;font-weight:900;text-decoration:none}.legal-page-header span{color:#64748b;font-size:13px;font-weight:700}.legal-document{background:#fff;border:1px solid #e2e8f0;border-radius:22px;width:min(880px,100% - 32px);margin:46px auto 0;padding:clamp(26px,5vw,58px);box-shadow:0 18px 50px #0f172a0f}.legal-eyebrow{color:#185fa5;letter-spacing:.08em;margin:0 0 8px;font-size:13px;font-weight:900}.legal-document>h1{color:#0f172a;letter-spacing:-.04em;margin:0;font-size:clamp(32px,5vw,48px)}.legal-lead{color:#475569;margin:18px 0 42px;font-size:17px;font-weight:600;line-height:1.75}.legal-section{border-top:1px solid #e2e8f0;padding:30px 0 4px}.legal-section+.legal-section{margin-top:24px}.legal-section h2{color:#0f172a;letter-spacing:-.02em;margin:0 0 16px;font-size:21px}.legal-section p{color:#475569;margin:10px 0;line-height:1.8}.legal-section a{color:#185fa5;font-weight:700}.legal-table-wrap{border:1px solid #e2e8f0;border-radius:12px;margin:16px 0;overflow-x:auto}.legal-table-wrap table{border-collapse:collapse;width:100%;min-width:620px}.legal-table-wrap th,.legal-table-wrap td{color:#475569;text-align:left;vertical-align:top;border-bottom:1px solid #e2e8f0;padding:13px 15px;line-height:1.6}.legal-table-wrap th{color:#1e293b;background:#f8fafc;width:180px;font-weight:800}.legal-table-wrap tr:last-child th,.legal-table-wrap tr:last-child td{border-bottom:0}@media (width<=640px){.legal-footer,.legal-page-header{flex-direction:column;align-items:flex-start}.legal-document{margin-top:20px}}.teacher-shell{color:#1e293b;background:#f0f4fa;min-height:100vh}.teacher-topbar{z-index:50;background:#fffffff5;border-bottom:1px solid #e2e8f2;align-items:center;gap:14px;min-height:54px;padding:0 24px;display:flex;position:sticky;top:0;box-shadow:0 1px 3px #0f172a14}.teacher-top-badge{color:#2563eb;letter-spacing:.03em;background:#eff6ff;border:1px solid #bfdbfe;border-radius:4px;padding:3px 8px;font-size:10px;font-weight:800}.teacher-top-title{color:#0f172a;font-size:17px;font-weight:900}.teacher-top-name{color:#475569;font-size:13px;font-weight:800}.teacher-top-divider{background:#cbd5e1;width:1px;height:18px}.teacher-top-code{color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:5px;padding:4px 10px;font-size:12px;font-weight:800}.teacher-top-code strong{color:#2563eb;letter-spacing:.06em;margin-left:4px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:14px}.teacher-top-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.teacher-top-actions button,.teacher-reset-sub{color:#475569;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;justify-content:center;align-items:center;gap:5px;padding:6px 10px;font-size:12px;font-weight:800;display:inline-flex}.teacher-top-actions button:hover:not(:disabled),.teacher-reset-sub:hover:not(:disabled){color:#2563eb;background:#eff6ff;border-color:#2563eb}.teacher-top-actions button:disabled,.teacher-reset-sub:disabled{cursor:not-allowed;opacity:.45}.teacher-demo-banner{color:#1e40af;background:#eff6ff;border-bottom:1px solid #bfdbfe;gap:8px;padding:9px 24px;font-size:13px;display:flex}.teacher-layout{grid-template-columns:300px minmax(0,1fr);min-height:calc(100vh - 54px);display:grid}.teacher-sidebar{background:#fff;border-right:1px solid #e2e8f2;flex-direction:column;gap:20px;padding:20px 16px;display:flex}.teacher-side-section>h3{color:#94a3b8;letter-spacing:.15em;text-transform:uppercase;margin-bottom:10px;font-size:10px;font-weight:900}.teacher-round-card{background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;padding:16px}.teacher-round-label{color:#2563eb;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:11px;font-weight:800}.teacher-round-card h2{color:#0f172a;border-bottom:1px solid #bfdbfe;margin-top:5px;padding-bottom:12px;font-size:13px;font-weight:900;line-height:1.5}.teacher-round-steps{gap:7px;margin-top:13px;display:grid}.teacher-round-step{color:#475569;align-items:center;gap:10px;font-size:12px;font-weight:800;display:flex}.teacher-round-step span{color:#2563eb;background:#fff;border:1.5px solid #bfdbfe;border-radius:999px;place-items:center;width:22px;height:22px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:10px;display:grid}.teacher-round-step.is-active span{color:#fff;background:#2563eb;border-color:#2563eb}.teacher-round-step.is-done span{color:#fff;background:#10b981;border-color:#10b981}.teacher-action-stack{gap:8px;margin-top:14px;display:grid}.teacher-action-stack .app-button,.teacher-manage-grid .app-button{min-height:38px;padding:8px 10px;font-size:13px}.teacher-round-nav{flex-wrap:wrap;gap:5px;display:flex}.teacher-round-pip{color:#94a3b8;cursor:pointer;background:#fff;border:1.5px solid #cbd5e1;border-radius:7px;place-items:center;width:34px;height:34px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:11px;font-weight:900;display:grid}.teacher-round-pip.is-done{color:#059669;background:#ecfdf5;border-color:#6ee7b7}.teacher-round-pip.is-active{color:#fff;background:#2563eb;border-color:#2563eb;box-shadow:0 2px 6px #2563eb59}.teacher-toggle-row,.teacher-setting-item{color:#475569;text-align:left;background:0 0;border:0;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;width:100%;padding:8px 0;font-size:12px;font-weight:800;display:flex}.teacher-toggle-row:disabled{cursor:not-allowed;opacity:.72}.teacher-toggle-row i{background:#cbd5e1;border-radius:999px;width:36px;height:20px;position:relative}.teacher-toggle-row i:after{content:"";background:#fff;border-radius:999px;width:14px;height:14px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0f172a2e}.teacher-toggle-row i.is-on{background:#059669}.teacher-toggle-row i.is-on:after{transform:translate(16px)}.teacher-setting-item strong{color:#0f172a;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px}.teacher-manage-grid{gap:10px;display:grid}.teacher-two-col{grid-template-columns:1fr 1fr;gap:8px;display:grid}.teacher-import-preview{gap:8px;font-size:12px;display:grid}.teacher-import-badges{grid-template-columns:repeat(3,1fr);gap:5px;display:grid}.teacher-preview-line,.teacher-import-preview>p{color:#475569;background:#f8fafc;border-radius:6px;padding:8px;font-weight:800}.teacher-import-preview .is-error{color:#be123c;background:#fff1f2}.teacher-import-preview .is-warning{color:#b45309;background:#fffbeb}.teacher-main{flex-direction:column;gap:20px;min-width:0;padding:20px 24px;display:flex}.teacher-summary-bar{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.teacher-summary-card,.teacher-panel{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 1px 3px #0f172a14}.teacher-summary-card{padding:14px 16px}.teacher-summary-card.is-highlight{background:#eff6ff;border-color:#bfdbfe}.teacher-summary-card span{color:#94a3b8;font-size:11px;font-weight:800}.teacher-summary-card strong{color:#0f172a;margin-top:6px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:22px;font-weight:800;line-height:1;display:block}.teacher-summary-card.is-highlight strong{color:#2563eb}.teacher-summary-card em{color:#94a3b8;margin-left:4px;font-size:14px;font-style:normal}.teacher-summary-card small{color:#94a3b8;margin-top:5px;font-size:11px;font-weight:700;display:block}.teacher-message{color:#475569;background:#f8fafc;border-radius:8px;padding:10px 12px;font-size:13px;font-weight:800}.teacher-panel{overflow:hidden}.teacher-panel-head{border-bottom:1px solid #e2e8f0;align-items:center;gap:10px;padding:14px 20px;display:flex}.teacher-panel-head h2{color:#0f172a;font-size:14px;font-weight:900}.teacher-section-badge{border-radius:999px;padding:3px 8px;font-size:11px;font-weight:900}.teacher-section-badge.is-green{color:#059669;background:#ecfdf5;border:1px solid #a7f3d0}.teacher-section-badge.is-amber{color:#ea580c;background:#fff7ed;border:1px solid #fed7aa}.teacher-section-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.teacher-submission-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.teacher-sub-card{border-bottom:1px solid #e2e8f0;border-right:1px solid #e2e8f0;min-height:185px;padding:14px}.teacher-sub-top{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.teacher-sub-top strong{font-size:13px;font-weight:900}.teacher-sub-dot{background:#94a3b8;border-radius:999px;width:8px;height:8px}.teacher-sub-dot.is-submitted{background:#059669;box-shadow:0 0 0 3px #a7f3d0}.teacher-sub-dot.is-waiting{background:#f59e0b;box-shadow:0 0 0 3px #fde68a}.teacher-answer-list,.teacher-invest-bars{gap:5px;display:grid}.teacher-answer-row{align-items:center;gap:6px;font-size:11px;display:flex}.teacher-answer-row>span{color:#94a3b8;flex:none;width:48px;font-weight:800}.teacher-answer-chip{border-radius:4px;padding:2px 7px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:10px;font-weight:900}.teacher-answer-chip.is-correct{color:#059669;background:#ecfdf5}.teacher-answer-chip.is-wrong{color:#dc2626;background:#fef2f2}.teacher-answer-chip.is-pending{color:#94a3b8;background:#f8fafc;border:1px solid #e2e8f0}.teacher-invest-bars{margin-top:10px}.teacher-invest-row{align-items:center;gap:6px;font-size:10px;display:flex}.teacher-invest-row span{color:#475569;text-overflow:ellipsis;white-space:nowrap;flex:none;width:52px;font-weight:800;overflow:hidden}.teacher-invest-row i{background:#e2e8f0;border-radius:999px;flex:1;height:6px;overflow:hidden}.teacher-invest-row b{border-radius:inherit;background:#2563eb;height:100%;display:block}.teacher-invest-row em{color:#94a3b8;text-align:right;width:28px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-style:normal}.teacher-progress-note,.teacher-muted{color:#94a3b8;margin-top:8px;font-size:11px;font-weight:800}.teacher-reset-sub{margin-top:10px;padding:4px 8px;font-size:11px}.teacher-table-wrap{overflow-x:auto}.teacher-rank-table{border-collapse:collapse;width:100%;min-width:760px}.teacher-rank-table th{color:#94a3b8;text-align:left;background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:10px 16px;font-size:11px;font-weight:900}.teacher-rank-table td{color:#334155;border-bottom:1px solid #e2e8f0;padding:12px 16px;font-size:13px}.teacher-rank-table .right{text-align:right}.teacher-rank-num{color:#64748b;place-items:center;width:32px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:16px;font-weight:900;display:inline-grid}.teacher-rank-num.r1{color:#b45309}.teacher-rank-num.r2{color:#6b7280}.teacher-rank-num.r3{color:#92400e}.teacher-score-chip{color:#059669;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:5px;padding:3px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px;font-weight:900;display:inline-flex}.teacher-invest-pills{flex-wrap:wrap;gap:4px;display:flex}.teacher-invest-pills span{color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;padding:2px 7px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:10px;font-weight:900}.teacher-return-pos{color:#059669;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-weight:900}.teacher-return-neg{color:#dc2626;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-weight:900}.teacher-money{color:#0f172a;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.teacher-bottom-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}.teacher-answer-panel-body{gap:8px;padding:16px 20px;display:grid}.teacher-answer-panel-body h3{color:#94a3b8;letter-spacing:.04em;margin-top:8px;font-size:11px;font-weight:900}.teacher-result-row{background:#f8fafc;border-radius:7px;align-items:center;gap:10px;padding:10px 14px;display:flex}.teacher-result-row span{color:#94a3b8;flex:none;width:80px;font-size:12px;font-weight:900}.teacher-result-row strong{color:#059669;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:5px;padding:4px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:13px}.teacher-return-matrix{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.teacher-return-matrix div{text-align:center;border-radius:6px;gap:3px;padding:7px 6px;display:grid}.teacher-return-matrix span{color:inherit;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:800;overflow:hidden}.teacher-return-matrix strong{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px;font-weight:900}.teacher-return-matrix .is-pos-high{color:#047857;background:#d1fae5}.teacher-return-matrix .is-pos{color:#059669;background:#ecfdf5}.teacher-return-matrix .is-neg-high{color:#b91c1c;background:#fee2e2}.teacher-return-matrix .is-neg{color:#dc2626;background:#fef2f2}.teacher-return-matrix .is-zero{color:#94a3b8;background:#f8fafc}.teacher-export-list{display:grid}.teacher-export-item{text-align:left;cursor:pointer;background:#fff;border:0;border-bottom:1px solid #e2e8f0;grid-template-columns:32px 1fr auto;align-items:center;gap:2px 12px;padding:12px 20px;display:grid}.teacher-export-item:hover:not(:disabled){background:#f8fafc}.teacher-export-item:disabled{cursor:not-allowed;opacity:.5}.teacher-export-item>span{color:#2563eb;background:#eff6ff;border-radius:7px;grid-row:span 2;place-items:center;width:32px;height:32px;display:grid}.teacher-export-item.is-danger>span{color:#e11d48;background:#fff1f2}.teacher-export-item strong{color:#0f172a;font-size:13px;font-weight:900}.teacher-export-item small{color:#94a3b8;font-size:11px;font-weight:700}.teacher-export-item em{color:#94a3b8;grid-row:span 2;font-size:18px;font-style:normal}@media (width<=980px){.teacher-layout{grid-template-columns:1fr}.teacher-sidebar{border-bottom:1px solid #e2e8f2;border-right:0}.teacher-summary-bar,.teacher-bottom-row{grid-template-columns:1fr 1fr}.dashboard-entry-split{grid-template-columns:1fr}}@media (width<=720px){.teacher-topbar{flex-wrap:wrap;padding:10px 14px}.teacher-top-actions{justify-content:stretch;width:100%;margin-left:0}.teacher-top-actions button{flex:1}.teacher-main{padding:14px}.teacher-summary-bar,.teacher-bottom-row,.teacher-two-col{grid-template-columns:1fr}}*{box-sizing:border-box}h1,h2,h3,p,button,label,strong,span{word-break:keep-all}body{word-break:keep-all;overflow-wrap:normal;min-width:320px;min-height:100vh;margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Malgun Gothic,Segoe UI,sans-serif}button,input,select,textarea{font:inherit;word-break:keep-all}.touch-button{min-height:48px}.app-button{white-space:normal;min-width:0;line-height:1.25;box-shadow:none!important;border-width:1px!important;border-radius:.375rem!important}.app-button-primary{color:#fff!important;background-color:#2563eb!important;border-color:#2563eb!important}.app-button-primary:hover:not(:disabled){background-color:#1d4ed8!important;border-color:#1d4ed8!important}.app-button-secondary{color:#fff!important;background-color:#059669!important;border-color:#059669!important}.app-button-secondary:hover:not(:disabled){background-color:#047857!important;border-color:#047857!important}.app-button-danger{color:#fff!important;background-color:#e11d48!important;border-color:#e11d48!important}.app-button-danger:hover:not(:disabled){background-color:#be123c!important;border-color:#be123c!important}.app-button-ghost{color:#334155!important;background-color:#fff!important;border-color:#cbd5e1!important}.app-button-ghost:hover:not(:disabled){background-color:#f8fafc!important}.app-shell{background:linear-gradient(#fffffff0,#f6f7fbfa),radial-gradient(circle at 0 0,#1d7afc1f,#0000 34%);min-height:100vh}.font-mono,.student-step-num,.student-status-metric strong,.student-invest-head strong{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.student-shell{width:min(100%,1280px);margin:0 auto}.student-submit-modal{z-index:1000;background:#0f172a94;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.student-submit-modal-card{text-align:center;background:#fff;border-radius:24px;flex-direction:column;align-items:center;width:min(440px,100%);padding:34px 28px 28px;display:flex;box-shadow:0 24px 80px #0f172a47}.student-submit-modal-card>svg{color:#059669;margin-bottom:14px}.student-submit-modal-card p{color:#2563eb;margin:0 0 6px;font-size:14px;font-weight:900}.student-submit-modal-card h2{color:#0f172a;margin:0;font-size:28px;font-weight:900}.student-submit-modal-card strong{color:#334155;margin-top:14px;font-size:16px;line-height:1.6}.student-submit-modal-card span{color:#64748b;margin-top:6px;font-size:14px;line-height:1.5}.student-submit-modal-card button{color:#fff;cursor:pointer;width:100%;font:inherit;background:#2563eb;border:0;border-radius:12px;margin-top:24px;padding:13px 18px;font-size:16px;font-weight:900}.student-submit-modal-card button:hover{background:#1d4ed8}.student-submit-modal-card button:focus-visible{outline-offset:3px;outline:3px solid #93c5fd}.student-nickname-modal-card>svg{color:#2563eb}.student-nickname-modal-value{letter-spacing:-.03em;background:linear-gradient(135deg,#eff6ff,#dbeafe);border:2px solid #93c5fd;border-radius:14px;width:100%;padding:14px 12px;font-family:inherit;line-height:1.35;display:block;color:#1d4ed8!important;margin-top:12px!important;font-size:clamp(16px,4.5vw,20px)!important;font-weight:800!important}.student-status-card{background:#fff;border:1px solid #dbe5f3;border-radius:24px;width:min(780px,100%);margin:0 auto;padding:22px;box-shadow:0 14px 34px #0f172a14}.student-status-top{border-bottom:1px solid #dbe5f3;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;padding-bottom:16px;display:flex}.student-nickname-banner{background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1px solid #93c5fd;border-radius:18px;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:14px;margin-bottom:14px;padding:15px 18px;display:grid}.student-nickname-banner span{color:#1e40af;font-size:13px;font-weight:900}.student-nickname-banner strong{color:#1d4ed8;letter-spacing:-.03em;overflow-wrap:anywhere;font-family:inherit;font-size:19px;font-weight:950;line-height:1.25}.student-nickname-banner small{color:#475569;text-align:right;justify-self:end;font-size:12px;font-weight:800}.student-status-title h1{color:#172033;letter-spacing:0;margin:0;font-size:30px;font-weight:900;line-height:1.1}.student-round-badge{color:#2563eb;white-space:nowrap;background:#eff6ff;border-radius:999px;flex:none;align-items:center;gap:8px;padding:10px 13px;font-size:14px;font-weight:900;display:inline-flex}.student-round-badge span{background:#059669;border-radius:999px;width:9px;height:9px;box-shadow:0 0 0 5px #dcfce7}.student-status-main-grid{grid-template-columns:1.05fr .95fr;gap:14px;margin-bottom:14px;display:grid}.student-money-box,.student-invest-box{border-radius:20px;flex-direction:column;justify-content:space-between;min-height:150px;padding:20px;display:flex}.student-money-box{background:linear-gradient(#fff7df,#fffaf0);border:1px solid #fde68a}.student-invest-box{background:#fff;border:1px solid #dbe5f3}.student-status-label{color:#667085;letter-spacing:0;font-size:14px;font-weight:800}.student-money{color:#b45309;letter-spacing:0;font-size:42px;font-weight:900;line-height:1}.student-bonus-text{color:#92400e;font-size:13px;font-weight:800}.student-invest-status-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.student-invest-count{color:#2563eb;letter-spacing:0;white-space:nowrap;font-size:27px;font-weight:900}.student-status-bar{background:#e8eef8;border-radius:999px;height:16px;margin:18px 0 8px;overflow:hidden}.student-status-bar div{border-radius:inherit;background:#2563eb;height:100%}.student-bar-note{color:#667085;font-size:13px;font-weight:800}.student-meta-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.student-status-metric{background:#f8fafc;border:1px solid #dbe5f3;border-radius:16px;min-height:0;padding:13px 14px;display:block}.student-status-metric span{color:#667085;margin-bottom:5px;font-size:12px;font-weight:800;display:block}.student-status-metric strong{color:#172033;letter-spacing:0;font-size:16px;font-weight:900;display:block}.student-status-metric.tone-green{background:#f0fdf4;border-color:#bbf7d0}.student-status-metric.tone-green strong{color:#047857}.student-status-metric.tone-amber{background:#fffbeb;border-color:#fde68a}.student-status-metric.tone-amber strong{color:#b45309}.student-status-metric.tone-blue strong{color:#2563eb}.student-home-btn{min-width:72px}.student-demo-note{color:#1e3a8a;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;flex-wrap:wrap;gap:8px;margin-top:14px;padding:12px 14px;font-size:14px;display:flex}.student-demo-note strong{color:#1d4ed8}.student-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:18px;margin-top:18px;display:grid}.student-main{gap:14px;display:grid}.student-news-card{background:radial-gradient(circle at 100% 0,#2563eb1a,#0000 42%),#fff;border:1px solid #bfdbfe;border-left:4px solid #2563eb;border-radius:8px;padding:18px 20px;position:relative;overflow:hidden;box-shadow:0 8px 22px #0f172a0d}.student-eyebrow,.student-panel-label{letter-spacing:.12em;color:#2563eb;text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:11px;font-weight:500}.student-news-card h1{color:#0f172a;letter-spacing:-.03em;margin-top:7px;font-size:clamp(20px,2.4vw,30px);font-weight:900;line-height:1.35}.student-step-track{align-items:center;gap:0;padding:4px 0;display:flex;overflow-x:auto}.student-track-part{display:contents}.student-track-item{color:#94a3b8;white-space:nowrap;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;font-size:12px;font-weight:800;display:inline-flex}.student-track-item:disabled{cursor:not-allowed;opacity:.55}.student-track-item span{color:#64748b;background:#fff;border:1px solid #cbd5e1;border-radius:999px;justify-content:center;align-items:center;width:23px;height:23px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:11px;font-weight:500;display:inline-flex}.student-track-label{font-style:normal;display:inline-flex}.student-track-label b,.student-track-label i{font:inherit;font-style:normal}.student-track-label i{display:none}.student-track-item.is-active{color:#2563eb}.student-track-item.is-active span{color:#fff;background:#2563eb;border-color:#2563eb;box-shadow:0 0 0 4px #2563eb1f}.student-track-item.is-done{color:#059669}.student-track-item.is-done span{color:#fff;background:#10b981;border-color:#10b981}.student-track-line{background:#cbd5e1;flex:1;min-width:22px;height:1px;margin:0 8px}.student-track-line.is-done{background:#10b981}.student-step-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;transition:border-color .2s,box-shadow .2s,opacity .2s;overflow:hidden;box-shadow:0 7px 18px #0f172a0a}.student-step-card.is-active{border-color:#93c5fd;box-shadow:0 12px 30px #2563eb1c}.student-step-card.is-done.is-correct:not(.is-active),.student-step-card.is-done:not(.is-active):not(.is-wrong){background:#fbfefc;border-color:#bbf7d0}.student-step-card.is-done.is-wrong:not(.is-active){background:snow;border-color:#fecdd3}.student-step-card.is-locked{opacity:.62}.student-step-head{border-bottom:1px solid #e2e8f0;align-items:center;gap:10px;padding:12px 16px;display:flex}.student-step-head h2{color:#0f172a;letter-spacing:-.02em;flex:1;margin:0;font-size:15px;font-weight:900}.student-step-title-highlight{color:#1d4ed8;background:#dbeafe;border-radius:6px;padding:1px 5px;font-weight:900}.student-step-num{color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe;border-radius:5px;padding:3px 7px;font-size:11px;font-weight:500}.student-step-check,.student-step-bonus{color:#047857;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:999px;padding:3px 9px;font-size:12px;font-weight:800}.student-step-bonus{color:#b45309;background:#fff7ed;border-color:#fed7aa;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-weight:500}.student-step-bonus.is-earned{color:#047857;background:#f0fdf4;border-color:#bbf7d0}.student-step-bonus.is-missed{color:#be123c;background:#fff1f2;border-color:#fecdd3;font-family:inherit;font-weight:900}.student-step-body{gap:14px;padding:16px;display:grid}.student-question{color:#64748b;font-size:14px;font-weight:600;line-height:1.65}.student-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.student-choice-row{flex-wrap:wrap;gap:8px;display:flex}.student-choice-row button{color:#334155;background:#fff;border:1px solid #cbd5e1;border-radius:7px;min-height:42px;padding:8px 13px;font-weight:800;transition:background-color .16s,border-color .16s,color .16s}.student-choice-row button:hover:not(:disabled),.student-choice-row button.is-selected{color:#1d4ed8;background:#eff6ff;border-color:#2563eb}.student-choice-row button.is-correct{color:#047857;background:#ecfdf5;border-color:#10b981;box-shadow:inset 0 0 0 1px #10b981}.student-choice-row button.is-wrong{color:#be123c;background:#fff1f2;border-color:#e11d48;box-shadow:inset 0 0 0 1px #e11d48}.student-choice-row button:disabled{cursor:not-allowed;opacity:.58}.student-choice-row button.is-correct:disabled,.student-choice-row button.is-wrong:disabled{opacity:1}.student-equilibrium-grid{gap:16px;display:grid}.student-equilibrium-group{gap:8px;display:grid}.student-equilibrium-group>span{color:#64748b;font-size:14px;font-weight:900}.student-inline-answer-row{color:#64748b;flex-wrap:wrap;align-items:center;gap:10px;font-size:15px;font-weight:900;display:flex}.student-inline-answer-row span{margin-right:2px}.student-inline-answer-row button{color:#334155;background:#fff;border:1px solid #cbd5e1;border-radius:7px;min-height:42px;padding:8px 14px;font-weight:900}.student-inline-answer-row button:hover:not(:disabled),.student-inline-answer-row button.is-selected{color:#1d4ed8;background:#eff6ff;border-color:#2563eb}.student-inline-answer-row button.is-correct{color:#047857;background:#ecfdf5;border-color:#10b981;box-shadow:inset 0 0 0 1px #10b981}.student-inline-answer-row button.is-wrong{color:#be123c;background:#fff1f2;border-color:#e11d48;box-shadow:inset 0 0 0 1px #e11d48}.student-inline-answer-row button:disabled{cursor:not-allowed;opacity:.7}.student-inline-answer-row button.is-correct:disabled,.student-inline-answer-row button.is-wrong:disabled{opacity:1}.student-curve-layout{grid-template-columns:minmax(180px,1fr) minmax(260px,1.15fr) minmax(180px,1fr);align-items:stretch;gap:14px;display:grid}.student-curve-options{grid-template-rows:repeat(2,minmax(104px,1fr));gap:12px;display:grid}.student-curve-options button{color:#334155;text-align:left;background:#fff;border:1px solid #cbd5e1;border-radius:8px;grid-template-columns:46px 1fr;align-items:center;gap:12px;min-height:104px;padding:16px;transition:background-color .16s,border-color .16s,box-shadow .16s,transform .16s;display:grid}.student-curve-options button svg{color:#64748b;stroke-width:1.8px;width:38px;height:38px}.student-curve-options button span{gap:7px;display:grid}.student-curve-options button strong{color:#0f172a;font-size:17px;font-weight:900;line-height:1.15}.student-curve-options button small{color:#64748b;font-size:13px;font-weight:800;line-height:1.2}.student-curve-options button:hover:not(:disabled),.student-curve-options button.is-selected{background:#eff6ff;border-color:#2563eb;box-shadow:inset 0 0 0 1px #2563eb}.student-curve-options button:hover:not(:disabled){transform:translateY(-1px)}.student-curve-options button.is-correct{background:#ecfdf5;border-color:#10b981;box-shadow:inset 0 0 0 1px #10b981}.student-curve-options button.is-wrong{background:#fff1f2;border-color:#e11d48;box-shadow:inset 0 0 0 1px #e11d48}.student-curve-options button:disabled{cursor:not-allowed;opacity:.75}.student-curve-options button.is-correct:disabled,.student-curve-options button.is-wrong:disabled{opacity:1}.student-ds-graph{background:#fff;border:1px solid #cbd5e1;border-radius:8px;overflow:hidden}.student-ds-graph canvas{width:100%;height:auto;display:block}.student-confirm-btn{color:#fff;background:#2563eb;border:0;border-radius:8px;width:100%;min-height:54px;font-size:16px;font-weight:900;transition:background-color .16s,transform .16s}.student-confirm-btn:hover:not(:disabled){background:#1d4ed8;transform:translateY(-1px)}.student-confirm-btn:disabled{cursor:not-allowed;color:#94a3b8;background:#e2e8f0;transform:none}.student-step-feedback{border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:11px 13px;font-size:14px;font-weight:800;display:flex}.student-step-feedback button{color:inherit;font:inherit;cursor:pointer;background:#fff;border:0;border-radius:6px;flex:none;padding:7px 11px;box-shadow:inset 0 0 0 1px}.student-step-feedback button:hover{background:#ffffffb3}.student-step-summary .student-step-feedback{flex-basis:100%;width:100%}.student-step-feedback.is-correct{color:#047857;background:#f0fdf4;border:1px solid #bbf7d0}.student-step-feedback.is-wrong{color:#be123c;background:#fff1f2;border:1px solid #fecdd3}.bonus-burst{pointer-events:none;z-index:80;place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.bonus-burst-ring{aspect-ratio:1;background:radial-gradient(circle,#22c55e29 0 32%,#0000 33%),radial-gradient(circle,#facc152e 0 52%,#0000 53%);border:2px solid #2563eb38;border-radius:999px;width:min(42vw,360px);animation:1.45s ease-out both bonus-ring-pop;position:absolute}.bonus-burst-card{background:linear-gradient(#fffffff5,#eff6fff5),#fff;border:1px solid #bfdbfef2;border-radius:18px;place-items:center;min-width:260px;padding:26px 30px 24px;animation:1.45s cubic-bezier(.16,1,.3,1) both bonus-card-pop;display:grid;position:relative;box-shadow:0 24px 60px #0f172a3d,0 0 0 8px #ffffff61}.bonus-burst-card span{color:#2563eb;font-size:13px;font-weight:900}.bonus-burst-card strong{color:#0f172a;margin-top:4px;font-size:46px;font-weight:900;line-height:1}.bonus-burst-card em{color:#047857;background:#dcfce7;border-radius:999px;margin-top:10px;padding:7px 14px;font-style:normal;font-weight:900}.bonus-burst-card small{color:#64748b;margin-top:10px;font-size:13px;font-weight:800}.bonus-burst-coin{color:#92400e;background:linear-gradient(135deg,#fef3c7,#facc15);border:2px solid #f59e0b;border-radius:999px;place-items:center;width:48px;height:48px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:25px;font-weight:900;display:grid;position:absolute;top:-22px;box-shadow:0 10px 24px #f59e0b52}.bonus-burst-sparks{width:1px;height:1px;position:absolute}.bonus-burst-sparks i{--spark-angle:calc(var(--spark-index) * 25.714deg);background:hsl(calc(45 + var(--spark-index) * 19) 88% 56%);width:10px;height:10px;transform:rotate(var(--spark-angle)) translateY(0) scale(.7);border-radius:3px;animation:1.15s ease-out both bonus-spark-fly;position:absolute}@keyframes bonus-card-pop{0%{opacity:0;transform:translateY(18px)scale(.86)}18%{opacity:1;transform:translateY(0)scale(1.04)}45%{transform:scale(1)}82%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-10px)scale(.98)}}@keyframes bonus-ring-pop{0%{opacity:0;transform:scale(.35)}24%{opacity:1}to{opacity:0;transform:scale(1.36)}}@keyframes bonus-spark-fly{0%{opacity:0;transform:rotate(var(--spark-angle)) translateY(0) scale(.4)}18%{opacity:1}to{opacity:0;transform:rotate(var(--spark-angle)) translateY(-170px) scale(1)}}@media (prefers-reduced-motion:reduce){.bonus-burst-card,.bonus-burst-ring,.bonus-burst-sparks i{animation-duration:.01ms;animation-iteration-count:1}}.student-step-summary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.student-result-summary{gap:12px;width:100%;display:grid}.student-result-summary dl{gap:8px;margin:0;display:grid}.student-result-summary dl>div{grid-template-columns:56px minmax(0,1fr);align-items:center;gap:10px;display:grid}.student-result-summary dt{color:#64748b;font-size:12px;font-weight:900}.student-result-summary dd{color:#0f172a;margin:0;font-size:14px;font-weight:900}.student-result-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.student-result-line{background:#fff;border-radius:6px;grid-template-columns:minmax(84px,max-content) minmax(0,1fr);align-items:center;gap:12px;padding:12px;display:grid}.student-result-line dt{color:#475569;font-size:16px;font-weight:800;line-height:1.35}.student-result-line dd{color:#0f172a;text-align:right;justify-items:end;min-width:0;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;display:grid}.student-result-line dd span{overflow-wrap:anywhere;max-width:100%;font-size:20px;font-weight:900;line-height:1.15}.student-result-line dd small{color:#94a3b8;white-space:nowrap;margin-top:4px;font-size:13px;font-weight:800;line-height:1.25}.student-summary-pills{flex-wrap:wrap;flex:1;gap:8px;display:flex}.student-summary-pills span{color:#047857;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:999px;padding:5px 10px;font-size:13px;font-weight:800}.student-invest-shell{gap:16px;display:grid}.student-invest-news-reminder{background:linear-gradient(90deg,#2563eb1c,#14b8a614),#fff;border:1px solid #bfdbfe;border-left:4px solid #2563eb;border-radius:8px;gap:6px;padding:13px 15px;display:grid;box-shadow:0 8px 18px #2563eb14}.student-invest-news-reminder span{color:#1d4ed8;font-size:12px;font-weight:900}.student-invest-news-reminder strong{color:#0f172a;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:17px;font-weight:900;line-height:1.42;display:-webkit-box;overflow:hidden}.student-invest-header{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 16px;display:grid}.student-seed-label{color:#64748b;font-size:13px;font-weight:700;display:block}.student-seed-value{color:#0f172a;margin-top:2px;font-size:22px;font-weight:500;line-height:1.2;display:block}.student-invest-donut{grid-row:span 2;place-items:center;display:grid}.student-invest-donut canvas{width:90px;height:90px;display:block}.student-limit-msg{color:#64748b;font-size:12px;font-weight:700}.student-limit-msg.warn{color:#a32d2d}.student-invest-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.student-invest-card{-webkit-user-select:none;user-select:none;background:#fff;border:1px solid #cbd5e1;border-radius:8px;gap:10px;padding:14px;transition:background-color .15s,border-color .15s,opacity .15s;display:grid}.student-invest-card:hover{border-color:#94a3b8}.student-invest-card.active{background:#e6f1fb;border-color:#185fa5}.student-invest-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.student-invest-head h3{color:#0f172a;font-size:14px;font-weight:500}.student-invest-head p{color:#64748b;margin-top:2px;font-size:12px;font-weight:600}.student-invest-head strong{color:#64748b;text-align:right;white-space:nowrap;min-width:38px;font-size:13px;font-weight:500}.student-invest-head strong.has-value{color:#0c447c}.student-invest-stepper{align-items:center;gap:6px;margin-top:2px;display:flex}.student-invest-stepper button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;flex:none;justify-content:center;align-items:center;width:28px;height:28px;font-size:16px;line-height:1;transition:background-color .12s,border-color .12s;display:flex}.student-invest-stepper button:hover:not(:disabled){background:#f8fafc;border-color:#64748b}.student-invest-stepper button:disabled{cursor:not-allowed;opacity:.3}.student-invest-track{background:#f1f5f9;border-radius:999px;flex:1;height:6px;overflow:hidden}.student-invest-track span{border-radius:inherit;background:#378add;height:100%;transition:width .25s;display:block}.student-invest-stepper em{color:#64748b;font-variant-numeric:tabular-nums;text-align:right;width:32px;font-size:12px;font-style:normal}.student-cash-row{color:#64748b;background:#f8fafc;border-radius:7px;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;font-size:13px;font-weight:700;display:flex}.student-cash-row strong{color:#0f172a;font-variant-numeric:tabular-nums;font-weight:500}.student-cash-row strong.warn{color:#a32d2d}.student-invest-submit{width:100%;margin-top:4px}.teacher-home-page{--teacher-home-navy:#0f1e35;--teacher-home-navy-2:#162844;--teacher-home-navy-3:#1e3557;--teacher-home-amber:#c8973a;--teacher-home-amber-2:#e4b55a;--teacher-home-amber-3:#f5d080;--teacher-home-fog:#e8e4dc;--teacher-home-fog-2:#f4f1eb;--teacher-home-ink:#1a1a1a;--teacher-home-ink-2:#3d3d3d;--teacher-home-ink-3:#7a7267;--teacher-home-white:#fff;--teacher-home-radius:4px;background:var(--teacher-home-fog-2);min-height:100vh;color:var(--teacher-home-ink);flex-direction:column;font-family:Noto Sans KR,sans-serif;display:flex;position:relative;overflow-x:hidden}.teacher-home-page:before{content:"";z-index:0;pointer-events:none;background-image:repeating-linear-gradient(90deg,#0000,#0000 79px,#0f1e350a 79px 80px),repeating-linear-gradient(0deg,#0000,#0000 79px,#0f1e350a 79px 80px);position:fixed;inset:0}.teacher-home-ticker{z-index:10;background:var(--teacher-home-navy);color:var(--teacher-home-fog);letter-spacing:.04em;white-space:nowrap;padding:6px 0;font-family:DM Mono,monospace;font-size:11px;position:relative;overflow:hidden}.teacher-home-ticker-inner{gap:48px;min-width:max-content;animation:28s linear infinite teacher-home-ticker;display:inline-flex}.teacher-home-ticker-item{align-items:center;gap:8px;display:inline-flex}.teacher-home-ticker-item .name{color:var(--teacher-home-amber-2)}.teacher-home-ticker-item .val{color:var(--teacher-home-fog)}.teacher-home-ticker-item .chg.up{color:#6ecf97}.teacher-home-ticker-item .chg.down{color:#e07a7a}@keyframes teacher-home-ticker{0%{transform:translate(0)}to{transform:translate(-50%)}}.teacher-home-header{z-index:10;background:var(--teacher-home-navy);justify-content:space-between;align-items:center;gap:24px;padding:20px 48px;display:flex;position:relative}.teacher-home-header-left{align-items:center;gap:18px;min-width:0;display:flex}.teacher-home-brand{flex:none;align-items:center;gap:16px;display:flex}.teacher-home-brand-addon{align-items:center;display:flex}.teacher-home-logo{background:#c8973a1f;border:1px solid #c8973aa6;border-radius:10px;flex:none;width:44px;height:44px;padding:6px;display:block;box-shadow:0 0 0 2px #e8e4dc0a}.teacher-home-brand-text{line-height:1}.teacher-home-brand-title{color:var(--teacher-home-white);letter-spacing:-.02em;font-family:Noto Serif KR,serif;font-size:22px;font-weight:700}.teacher-home-brand-title em{color:var(--teacher-home-amber-2);font-style:normal}.teacher-home-brand-sub{color:#e8e4dc9e;letter-spacing:0;margin-top:3px;font-size:10.5px}.teacher-home-header-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.teacher-home-badge{color:var(--teacher-home-amber-2);letter-spacing:.04em;background:#c8973a26;border:1px solid #c8973a59;border-radius:20px;align-items:center;gap:6px;padding:5px 14px 5px 10px;font-size:11.5px;text-decoration:none;display:inline-flex}.teacher-home-header-btn{color:#e8e4dce0;cursor:pointer;letter-spacing:.04em;background:0 0;border:1px solid #e8e4dc47;border-radius:999px;align-items:center;gap:6px;padding:7px 13px;font-size:11.5px;text-decoration:none;transition:background .18s,border-color .18s,color .18s;display:inline-flex}.teacher-home-header-btn:hover,.teacher-home-header-btn:focus-visible{color:var(--teacher-home-amber-2);background:#c8973a1f;border-color:#c8973a99}.teacher-home-header-btn.is-exit:hover,.teacher-home-header-btn.is-exit:focus-visible{color:#ffd6d6;background:#e07a7a1a;border-color:#e07a7a8c}button.teacher-home-header-btn{font-family:inherit}.teacher-home-hero,.teacher-home-lobby-hero{z-index:1;padding:52px 48px 40px;position:relative}.teacher-home-hero{grid-template-columns:minmax(0,1fr) minmax(280px,360px);align-items:end;gap:32px;display:grid}.teacher-home-lobby-hero{padding-top:22px;padding-bottom:22px;display:block}.teacher-home-eyebrow{color:var(--teacher-home-amber);letter-spacing:.18em;text-transform:uppercase;align-items:center;gap:8px;margin-bottom:10px;font-size:11px;font-weight:500;display:flex}.teacher-home-eyebrow:before{content:"";background:var(--teacher-home-amber);width:24px;height:1.5px;display:block}.teacher-home-title{color:var(--teacher-home-navy);letter-spacing:-.025em;margin:0 0 10px;font-family:Noto Serif KR,serif;font-size:clamp(28px,4vw,42px);font-weight:700;line-height:1.25}.teacher-home-desc,.teacher-home-lobby-hero p{max-width:520px;color:var(--teacher-home-ink-3);margin:0;font-size:14px;line-height:1.7}.teacher-home-hero-actions{align-self:center;gap:10px;width:100%;display:grid}.teacher-home-hero-action{color:var(--teacher-home-navy);background:#ffffffc7;border:1px solid #0f1e351f;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:13px;padding:16px;text-decoration:none;transition:border-color .18s,box-shadow .18s,transform .18s;display:grid;box-shadow:0 10px 30px #0f1e3514}.teacher-home-hero-action:hover,.teacher-home-hero-action:focus-visible{border-color:#c8973a85;transform:translateY(-2px);box-shadow:0 16px 40px #0f1e351f}.teacher-home-hero-action.primary{background:var(--teacher-home-navy);color:var(--teacher-home-white);border-color:#0f1e352e}.teacher-home-hero-action-icon{width:46px;height:46px;color:var(--teacher-home-amber-2);background:#c8973a1f;border:1px solid #c8973a52;border-radius:8px;place-items:center;display:grid}.teacher-home-hero-action strong,.teacher-home-hero-action em{min-width:0;display:block}.teacher-home-hero-action strong{letter-spacing:0;font-size:15px;font-weight:800}.teacher-home-hero-action em{color:var(--teacher-home-ink-3);margin-top:4px;font-size:12px;font-style:normal;font-weight:700;line-height:1.4}.teacher-home-hero-action.primary em{color:#e8e4dcb8}.teacher-home-card-grid{z-index:1;grid-template-columns:minmax(0,760px);justify-content:center;gap:20px;padding:0 48px 64px;display:grid;position:relative}.teacher-home-card,.teacher-home-class-card,.teacher-home-create-card,.teacher-home-tool-card{background:var(--teacher-home-white);border:1px solid #0f1e3514;border-radius:8px;transition:box-shadow .2s,transform .2s;position:relative;overflow:hidden;box-shadow:0 2px 16px #0f1e350f,0 1px 3px #0f1e350a}.teacher-home-card{padding:36px 40px}.teacher-home-card:hover,.teacher-home-class-card:hover,.teacher-home-create-card:hover,.teacher-home-tool-card:hover{transform:translateY(-2px);box-shadow:0 8px 36px #0f1e351a,0 2px 8px #0f1e350f}.teacher-home-card-primary:before{content:"";background:linear-gradient(90deg, var(--teacher-home-amber), var(--teacher-home-amber-3));height:3px;position:absolute;top:0;left:0;right:0}.teacher-home-card-header{z-index:1;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:28px;display:flex;position:relative}.teacher-home-card-label{color:var(--teacher-home-amber);letter-spacing:.14em;text-transform:uppercase;margin-bottom:6px;font-size:10.5px;font-weight:600}.teacher-home-card-title{color:var(--teacher-home-navy);letter-spacing:-.02em;margin:0;font-family:Noto Serif KR,serif;font-size:20px;font-weight:700}.teacher-home-card-icon{background:var(--teacher-home-fog-2);width:44px;height:44px;color:var(--teacher-home-navy);border:1px solid #0f1e350f;border-radius:10px;flex:none;justify-content:center;align-items:center;display:flex}.teacher-home-form-grid{z-index:1;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid;position:relative}.teacher-home-inline-note{z-index:1;border-radius:var(--teacher-home-radius);color:var(--teacher-home-navy);background:#c8973a1a;border:1px solid #c8973a3d;margin:-2px 0 4px;padding:10px 12px;font-size:12.5px;font-weight:700;line-height:1.5;position:relative}.teacher-home-form-group{z-index:1;flex-direction:column;gap:6px;display:flex;position:relative}.teacher-home-form-group.full{grid-column:1/-1}.teacher-home-form-label{color:var(--teacher-home-ink-2);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:600}.teacher-home-input{border-radius:var(--teacher-home-radius);background:var(--teacher-home-fog-2);color:var(--teacher-home-ink);border:1.5px solid #0f1e351a;outline:none;padding:10px 14px;font-family:Noto Sans KR,sans-serif;font-size:14px;transition:border-color .18s,background .18s,box-shadow .18s}.teacher-home-input::placeholder{color:#7a726780;font-size:13px}.teacher-home-input:focus{border-color:var(--teacher-home-amber);background:var(--teacher-home-white);box-shadow:0 0 0 3px #c8973a1f}.teacher-home-btn-primary,.teacher-home-btn-light,.teacher-home-btn-danger{z-index:1;border-radius:var(--teacher-home-radius);cursor:pointer;border:0;justify-content:center;align-items:center;gap:8px;font-family:Noto Sans KR,sans-serif;text-decoration:none;transition:background .18s,border-color .18s,color .18s,transform .1s;display:inline-flex;position:relative}.teacher-home-btn-primary{background:var(--teacher-home-navy);color:var(--teacher-home-white);letter-spacing:.02em;margin-top:12px;padding:12px 24px;font-size:14px;font-weight:600}.teacher-home-btn-primary:hover:not(:disabled){background:var(--teacher-home-navy-3)}.teacher-home-btn-primary .arrow{font-size:16px;transition:transform .18s}.teacher-home-btn-primary:hover:not(:disabled) .arrow{transform:translate(3px)}.teacher-home-btn-light{background:var(--teacher-home-white);color:var(--teacher-home-navy);border:1px solid #0f1e351f;padding:10px 14px;font-size:13px;font-weight:700}.teacher-home-btn-light:hover:not(:disabled){color:var(--teacher-home-amber);border-color:#c8973a73}.teacher-home-btn-danger{color:#b54242;background:#e0525214;border:1px solid #e0525259;padding:10px 12px;font-size:12px;font-weight:700}.teacher-home-btn-primary:disabled,.teacher-home-btn-light:disabled,.teacher-home-btn-danger:disabled,.teacher-home-header-btn:disabled{cursor:not-allowed;opacity:.5}.teacher-home-btn-primary:active:not(:disabled),.teacher-home-btn-light:active:not(:disabled),.teacher-home-btn-danger:active:not(:disabled){transform:scale(.98)}.teacher-home-chart-decoration{color:var(--teacher-home-navy);opacity:.07;pointer-events:none;position:absolute;bottom:24px;right:24px}.teacher-home-message{z-index:1;border-radius:var(--teacher-home-radius);max-width:760px;color:var(--teacher-home-navy);background:#c8973a1a;border:1px solid #c8973a40;margin:-40px auto 40px;padding:12px 14px;font-size:13px;font-weight:700;position:relative}.teacher-home-lobby-main{z-index:1;padding-bottom:56px;position:relative}.teacher-home-lobby-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.teacher-home-release-section{z-index:1;padding:0 48px 28px;position:relative}.teacher-home-release-card{background:linear-gradient(135deg,#fffaf0,#fff 58%,#f4f1eb);border:1px solid #c8973a61;border-radius:10px;grid-template-columns:auto minmax(0,1fr);gap:18px;padding:24px 26px;display:grid;box-shadow:0 10px 28px #0f1e3514}.teacher-home-release-icon{background:var(--teacher-home-navy);width:48px;height:48px;color:var(--teacher-home-amber-2);border-radius:10px;place-items:center;display:grid}.teacher-home-release-content{min-width:0}.teacher-home-release-meta{color:var(--teacher-home-ink-3);flex-wrap:wrap;align-items:center;gap:8px;font-size:11px;font-weight:700;display:flex}.teacher-home-release-meta span,.teacher-home-release-meta strong{border-radius:999px;padding:4px 9px}.teacher-home-release-meta span{background:var(--teacher-home-navy);color:var(--teacher-home-white)}.teacher-home-release-meta strong{color:#8a651f;background:#c8973a26}.teacher-home-release-content h2{color:var(--teacher-home-navy);margin:10px 0 9px;font-family:Noto Serif KR,serif;font-size:21px;font-weight:700}.teacher-home-release-content ul{color:var(--teacher-home-ink-2);gap:5px;margin:0;padding-left:19px;font-size:13px;font-weight:600;line-height:1.55;display:grid}.teacher-home-release-history{border-top:1px solid #0f1e351a;margin-top:15px;padding-top:12px}.teacher-home-release-history summary{cursor:pointer;width:fit-content;color:var(--teacher-home-navy);font-size:12px;font-weight:800}.teacher-home-release-history-list{gap:12px;margin-top:14px;display:grid}.teacher-home-release-history-list section{border-left:3px solid #c8973a73;padding-left:14px}.teacher-home-release-history-list section>div{color:var(--teacher-home-ink-3);gap:9px;font-size:11px;display:flex}.teacher-home-release-history-list h3{color:var(--teacher-home-navy);margin:5px 0 7px;font-size:14px}.teacher-home-class-section,.teacher-home-room-ranking-section,.teacher-home-bottom-tools{z-index:1;padding:0 48px;position:relative}.teacher-home-section-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px;display:flex}.teacher-home-section-label{color:var(--teacher-home-amber);letter-spacing:.14em;text-transform:uppercase;margin-bottom:5px;font-size:10.5px;font-weight:600}.teacher-home-section-head h2{color:var(--teacher-home-navy);margin:0;font-family:Noto Serif KR,serif;font-size:24px;font-weight:700}.teacher-home-section-sub{color:var(--teacher-home-ink-3);margin:5px 0 0;font-size:12.5px;font-weight:600}.teacher-home-count-pill,.teacher-home-status-pill{color:var(--teacher-home-amber);white-space:nowrap;background:#c8973a1a;border:1px solid #c8973a40;border-radius:999px;justify-content:center;align-items:center;padding:6px 12px;font-size:11px;font-weight:700;display:inline-flex}.teacher-home-status-pill.is-blue{color:var(--teacher-home-navy);background:#0f1e350f;border-color:#0f1e3524}.teacher-home-status-pill.is-amber{color:#9b6d1c;background:#c8973a1f;border-color:#c8973a40}.teacher-home-status-pill.is-green{color:#2a8d5d;background:#3fb37a1a;border-color:#3fb37a40}.teacher-home-class-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.teacher-home-class-card,.teacher-home-create-card{gap:16px;min-height:268px;padding:22px;display:grid}.teacher-home-class-card.active:before,.teacher-home-create-card:before{content:"";background:linear-gradient(90deg, var(--teacher-home-amber), var(--teacher-home-amber-3));height:3px;position:absolute;top:0;left:0;right:0}.teacher-home-class-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.teacher-home-class-top h3{color:var(--teacher-home-navy);margin:0;font-family:Noto Serif KR,serif;font-size:28px;font-weight:700;line-height:1.1}.teacher-home-class-title-row{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.teacher-home-version-badge{color:#257a52;white-space:nowrap;background:#2a8d5d17;border:1px solid #2a8d5d38;border-radius:999px;align-items:center;min-height:24px;padding:4px 9px;font-size:10.5px;font-weight:800;display:inline-flex}.teacher-home-version-badge.is-advanced{color:#8b6118;background:#c8973a1f;border-color:#c8973a4d}.teacher-home-class-top p{color:var(--teacher-home-ink-3);margin:7px 0 0;font-size:12.5px;line-height:1.6}.teacher-home-class-menu-wrap{z-index:5;flex:none;align-items:center;gap:7px;display:flex;position:relative}.teacher-home-card-menu-trigger{background:var(--teacher-home-white);width:31px;height:31px;color:var(--teacher-home-ink-3);cursor:pointer;border:1px solid #0f1e351a;border-radius:999px;place-items:center;padding:0;transition:background .18s,border-color .18s,color .18s;display:inline-grid}.teacher-home-card-menu-trigger:hover,.teacher-home-card-menu-trigger[aria-expanded=true]{color:var(--teacher-home-navy);background:#c8973a1f;border-color:#c8973a6b}.teacher-home-card-menu{z-index:20;background:var(--teacher-home-white);border:1px solid #e0525238;border-radius:8px;width:132px;padding:6px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 28px #0f1e3524}.teacher-home-card-menu button{color:#b54242;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;gap:6px;width:100%;padding:8px 9px;font-family:inherit;font-size:12px;font-weight:700;display:inline-flex}.teacher-home-card-menu button:hover:not(:disabled){background:#e0525214}.teacher-home-card-menu button:disabled{cursor:not-allowed;opacity:.5}.teacher-home-class-stats{grid-template-columns:1fr;gap:8px;display:grid}.teacher-home-stat{border-radius:var(--teacher-home-radius);background:var(--teacher-home-fog-2);border:1px solid #0f1e3514;padding:12px}.teacher-home-stat strong{color:var(--teacher-home-navy);margin-top:5px;font-family:DM Mono,monospace;font-size:16px;font-weight:500;display:block}.teacher-home-stat span{color:var(--teacher-home-ink-3);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:600}.teacher-home-qr-banner{border-radius:var(--teacher-home-radius);background:var(--teacher-home-fog-2);width:100%;color:var(--teacher-home-navy);cursor:zoom-in;text-align:left;border:1px solid #0f1e3514;align-items:center;gap:12px;margin:4px 0 2px;padding:14px 12px;display:flex}.teacher-home-qr-thumb{border-radius:var(--teacher-home-radius);background:var(--teacher-home-white);border:1px solid #0f1e3514;flex:none;place-items:center;padding:3px;display:grid;overflow:hidden}.teacher-home-qr-banner strong,.teacher-home-qr-banner em{display:block}.teacher-home-qr-banner strong{font-size:13px;font-weight:700}.teacher-home-qr-banner em{color:var(--teacher-home-ink-3);margin-top:3px;font-size:11px;font-style:normal}.teacher-home-class-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:8px;display:grid}.teacher-home-btn-primary.enter,.teacher-home-btn-light.preview{width:100%;margin-top:0;padding-inline:14px}.teacher-home-create-card{text-align:center;background:#ffffff9e;border-style:dashed;border-color:#c8973a61;place-items:center}.teacher-home-create-card.is-open{text-align:left;grid-column:span 2;place-items:stretch stretch}.teacher-home-create-inner{max-width:310px}.teacher-home-plus{width:46px;height:46px;color:var(--teacher-home-amber);background:0 0;border:1px dashed #c8973ab3;border-radius:8px;place-items:center;margin:0 auto 14px;display:inline-grid}.teacher-home-create-inner strong,.teacher-home-create-form>strong{color:var(--teacher-home-navy);margin-bottom:8px;font-family:Noto Serif KR,serif;font-size:21px;font-weight:700;display:block}.teacher-home-create-inner span{color:var(--teacher-home-ink-3);margin-bottom:16px;font-size:13px;line-height:1.6;display:block}.teacher-home-create-form{text-align:left;gap:16px;width:100%;display:grid}.teacher-home-version-fieldset{border:0;min-width:0;margin:0;padding:0}.teacher-home-version-fieldset legend{margin-bottom:8px}.teacher-home-version-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.teacher-home-version-option{background:var(--teacher-home-white);min-height:154px;color:var(--teacher-home-navy);cursor:pointer;text-align:left;border:1px solid #0f1e351f;border-radius:10px;grid-template-columns:auto minmax(0,1fr);align-items:flex-start;gap:10px;padding:15px;font-family:inherit;transition:border-color .18s,background .18s,box-shadow .18s;display:grid}.teacher-home-version-option:hover:not(:disabled){border-color:#c8973a73}.teacher-home-version-option.is-disabled{cursor:not-allowed;opacity:.48}.teacher-home-version-option.is-selected{border-color:var(--teacher-home-amber);background:#c8973a14;box-shadow:0 0 0 2px #c8973a1a}.teacher-home-version-radio{background:var(--teacher-home-white);border:1.5px solid #0f1e3547;border-radius:999px;width:17px;height:17px;margin-top:2px}.teacher-home-version-option.is-selected .teacher-home-version-radio{border:5px solid var(--teacher-home-amber)}.teacher-home-version-copy,.teacher-home-version-copy>*{display:block}.teacher-home-version-copy em{color:var(--teacher-home-amber);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;font-size:10px;font-style:normal;font-weight:800}.teacher-home-version-copy strong{margin-bottom:7px;font-size:17px;font-weight:800}.teacher-home-version-copy>span{color:var(--teacher-home-ink-3);font-size:12px;line-height:1.55}.teacher-home-version-copy small{color:var(--teacher-home-navy);margin-top:12px;font-size:10.5px;font-weight:700}.teacher-home-create-actions{grid-template-columns:1fr auto;gap:8px;display:grid}.teacher-home-room-ranking-section{margin-top:22px}.teacher-home-room-ranking-card{border-radius:var(--teacher-home-radius-lg);background:var(--teacher-home-white);border:1px solid #0f1e3514;padding:18px;box-shadow:0 16px 42px #0f1e3514}.teacher-home-room-ranking-head,.teacher-home-room-ranking-row{grid-template-columns:58px minmax(90px,.8fr) minmax(120px,1fr) 118px 140px;align-items:center;gap:12px;display:grid}.teacher-home-room-ranking-head{color:var(--teacher-home-ink-3);padding:0 10px 8px;font-size:11px;font-weight:700}.teacher-home-room-ranking-list{gap:7px;display:grid}.teacher-home-room-ranking-row{border-radius:var(--teacher-home-radius);background:var(--teacher-home-fog-2);min-height:46px;color:var(--teacher-home-navy);border:1px solid #0f1e350f;padding:9px 10px;font-size:13px;font-weight:700}.teacher-home-room-ranking-row span:nth-child(4),.teacher-home-room-ranking-row span:nth-child(5){font-family:DM Mono,monospace}.teacher-home-room-ranking-row .is-up{color:#2a8d5d}.teacher-home-room-ranking-row .is-down{color:#c84e4e}.teacher-home-room-ranking-rank{background:var(--teacher-home-navy);width:28px;height:28px;color:var(--teacher-home-white);border-radius:999px;place-items:center;font-family:DM Mono,monospace;font-size:12px;font-weight:700;display:grid}.teacher-home-room-ranking-class,.teacher-home-room-ranking-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.teacher-home-room-ranking-toggle{width:100%;margin-top:12px}.teacher-home-room-ranking-empty{border-radius:var(--teacher-home-radius);background:var(--teacher-home-fog-2);min-height:84px;color:var(--teacher-home-ink-3);border:1px dashed #0f1e3524;place-items:center;font-size:13px;font-weight:700;display:grid}.teacher-home-bottom-tools{margin-top:20px}.teacher-home-tool-card{justify-content:space-between;align-items:center;gap:14px;padding:20px 22px;display:flex}.teacher-home-tool-card strong{color:var(--teacher-home-navy);margin-bottom:4px;font-family:Noto Serif KR,serif;font-size:17px;font-weight:700;display:block}.teacher-home-tool-card span{color:var(--teacher-home-ink-3);font-size:12.5px;line-height:1.55}.teacher-home-tool-card.is-dark{background:var(--teacher-home-navy);border-color:#c8973a47;box-shadow:0 14px 40px #0f1e3529}.teacher-home-tool-card.is-dark strong{color:var(--teacher-home-white)}.teacher-home-tool-card.is-dark span{color:#e8e4dc9e}.teacher-home-room-code-row{justify-content:flex-end;align-items:center;gap:10px;min-width:min(100%,420px);display:flex}.teacher-home-room-code-row code{min-width:0;color:var(--teacher-home-amber-2);letter-spacing:.04em;overflow-wrap:anywhere;background:#c8973a1f;border:1px solid #c8973a52;border-radius:8px;padding:10px 13px;font-family:DM Mono,monospace;font-size:clamp(16px,2vw,23px);font-weight:500}.teacher-home-tool-card.is-dark .teacher-home-btn-light{color:#e8e4dce6;background:0 0;border-color:#e8e4dc47;flex:none}.teacher-home-tool-card.is-dark .teacher-home-btn-light:hover:not(:disabled){color:var(--teacher-home-amber-2);background:#c8973a1f;border-color:#c8973a99}.teacher-home-qr-modal{z-index:90;background:#0f1e358c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.teacher-home-qr-modal-card{background:var(--teacher-home-white);text-align:center;border:1px solid #0f1e3514;border-radius:8px;justify-items:center;width:min(92vw,430px);padding:28px;display:grid;position:relative;box-shadow:0 24px 70px #0f1e3538}.teacher-home-qr-modal-card p{color:var(--teacher-home-amber);letter-spacing:.14em;text-transform:uppercase;margin:0 0 6px;font-size:11px;font-weight:600}.teacher-home-qr-modal-card h2{color:var(--teacher-home-navy);margin:0 0 18px;font-family:Noto Serif KR,serif;font-size:28px;font-weight:700}.teacher-home-qr-large{background:var(--teacher-home-fog-2);border:1px solid #0f1e3514;border-radius:8px;place-items:center;margin-bottom:18px;padding:12px;display:grid}.teacher-home-qr-close{background:var(--teacher-home-white);color:var(--teacher-home-ink-3);cursor:pointer;border:1px solid #0f1e351a;border-radius:999px;padding:6px 9px;font-size:12px;font-weight:700;position:absolute;top:12px;right:12px}.teacher-home-copy-toast{border-radius:var(--teacher-home-radius);color:#2a8d5d;background:#3fb37a1a;border:1px solid #3fb37a40;margin-bottom:12px;padding:8px 10px;font-size:12px;font-weight:700}.teacher-home-footer{z-index:1;border-top:1px solid #0f1e3512;justify-content:space-between;align-items:center;gap:20px;margin-top:auto;padding:20px 48px;display:flex;position:relative}.teacher-home-footer div:first-child{color:var(--teacher-home-ink-3);letter-spacing:.04em;font-size:11px}.teacher-home-footer div:last-child{color:#7a726780;letter-spacing:.06em;font-family:DM Mono,monospace;font-size:10px}@media (width<=980px){.teacher-home-card-grid,.teacher-home-lobby-hero{grid-template-columns:1fr}.teacher-home-class-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-home-lobby-actions{justify-content:flex-start}}@media (width<=720px){.teacher-home-header{flex-direction:column;align-items:flex-start;padding:18px 20px}.teacher-home-header-actions{flex-wrap:wrap;justify-content:flex-start}.teacher-home-header-left{flex-direction:column;align-items:flex-start;gap:12px}.teacher-home-brand-title{font-size:20px}.teacher-home-hero,.teacher-home-lobby-hero{grid-template-columns:1fr;padding:36px 20px 28px}.teacher-home-hero{gap:20px}.teacher-home-lobby-hero{padding-top:24px}.teacher-home-card-grid,.teacher-home-release-section,.teacher-home-class-section,.teacher-home-room-ranking-section,.teacher-home-bottom-tools{padding-left:20px;padding-right:20px}.teacher-home-card-grid,.teacher-home-class-grid{grid-template-columns:1fr}.teacher-home-create-card.is-open{grid-column:auto}.teacher-home-version-options{grid-template-columns:1fr}.teacher-home-card{padding:28px 24px}.teacher-home-release-card{grid-template-columns:1fr;padding:20px}.teacher-home-release-icon{width:42px;height:42px}.teacher-home-form-grid,.teacher-home-lobby-actions,.teacher-home-class-actions,.teacher-home-create-actions{grid-template-columns:1fr}.teacher-home-lobby-actions{display:grid}.teacher-home-section-head,.teacher-home-room-ranking-row,.teacher-home-tool-card,.teacher-home-footer{flex-direction:column;align-items:flex-start}.teacher-home-room-ranking-card{padding:14px}.teacher-home-room-ranking-head{display:none}.teacher-home-room-ranking-row{grid-template-columns:auto minmax(0,1fr);gap:6px 10px;display:grid}.teacher-home-room-ranking-rank{grid-row:span 4}.teacher-home-room-ranking-row span{min-width:0}.teacher-home-room-code-row{flex-direction:column;align-items:stretch;width:100%}.teacher-home-room-code-row code{width:100%}.teacher-home-class-top{display:grid}.teacher-home-status-pill{justify-self:start}.teacher-home-title{font-size:30px}}.lobby-main,.lobby-topbar{max-width:1180px;margin-inline:auto}.lobby-topbar{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px;display:flex}.lobby-brand{align-items:center;gap:14px;display:flex}.lobby-brand img{background:#eff6ff;border:1px solid #dbeafe;border-radius:16px;flex:none;width:58px;height:58px;padding:9px;display:block}.lobby-kicker{color:#2563eb;margin-bottom:7px;font-size:13px;font-weight:900}.lobby-topbar h1{color:#172033;letter-spacing:0;margin:0;font-size:clamp(34px,4.4vw,46px);font-weight:900;line-height:1.05}.lobby-chips{flex-wrap:wrap;gap:8px;margin-top:15px;display:flex}.lobby-chip{color:#344054;background:#fff;border:1px solid #dbe5f3;border-radius:13px;align-items:center;gap:7px;padding:9px 12px;font-size:13px;font-weight:800;display:inline-flex}.lobby-chip strong{color:#172033}.lobby-top-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;padding-top:38px;display:flex}.lobby-btn{color:#344054;cursor:pointer;border:0;border-radius:14px;justify-content:center;align-items:center;gap:7px;padding:11px 15px;font-size:14px;font-weight:900;line-height:1.25;text-decoration:none;display:inline-flex}.lobby-btn:disabled{cursor:not-allowed;opacity:.45}.lobby-btn.ghost{background:#fff;border:1px solid #dbe5f3}.lobby-btn.primary{color:#fff;background:#2563eb;box-shadow:0 12px 24px #2563eb3d}.lobby-btn.danger{color:#dc2626;background:#fee2e2;border:1px solid #fecaca}.lobby-btn.soft{color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe}.lobby-hero{background:#fff;border:1px solid #dbe5f3;border-radius:26px;grid-template-columns:1fr auto;align-items:center;gap:18px;margin-bottom:18px;padding:24px;display:grid;box-shadow:0 16px 38px #0f172a14}.lobby-hero h2{color:#172033;letter-spacing:0;margin:0;font-size:30px;font-weight:900;line-height:1.15}.lobby-hero-title{align-items:center;gap:12px;display:flex}.lobby-hero-title img{background:#eff6ff;border:1px solid #dbeafe;border-radius:12px;flex:none;width:42px;height:42px;padding:7px;display:block}.lobby-hero h2+p{margin-top:8px}.lobby-hero p{color:#667085;margin:0;font-size:15px;font-weight:700;line-height:1.55}.lobby-hero-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.lobby-section-head{justify-content:space-between;align-items:center;gap:12px;margin:24px 0 12px;display:flex}.lobby-section-title{color:#172033;letter-spacing:0;font-size:22px;font-weight:900}.lobby-section-sub{color:#667085;margin-top:4px;font-size:13px;font-weight:700}.lobby-pill{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:8px 12px;font-size:12px;font-weight:900;display:inline-flex}.lobby-pill.pill-blue{color:#2563eb;background:#eff6ff}.lobby-pill.pill-green{color:#047857;background:#dcfce7}.lobby-pill.pill-amber{color:#92400e;background:#fef3c7}.lobby-class-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.lobby-class-card{background:#fff;border:1px solid #dbe5f3;border-radius:26px;gap:14px;min-height:220px;padding:18px;display:grid;position:relative;overflow:hidden;box-shadow:0 16px 38px #0f172a14}.lobby-class-card.active{background:radial-gradient(circle at 100% 0,#2563eb1a,#0000 34%),#fff;border-color:#93c5fd}.lobby-class-card:after{content:"";pointer-events:none;background:#2563eb0f;border-radius:999px;width:150px;height:150px;position:absolute;top:-44px;right:-42px}.lobby-class-top,.lobby-class-stats,.lobby-qr-banner,.lobby-class-actions{z-index:1;position:relative}.lobby-class-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.lobby-class-name{color:#172033;letter-spacing:0;font-size:30px;font-weight:900;line-height:1.05}.lobby-class-desc{color:#667085;margin-top:8px;font-size:14px;font-weight:700;line-height:1.45}.lobby-class-stats{grid-template-columns:1fr;gap:9px;display:grid}.lobby-stat{background:#f8fafc;border:1px solid #dbe5f3;border-radius:14px;min-width:0;padding:10px}.lobby-stat strong{color:#172033;margin-bottom:4px;font-size:18px;font-weight:900;line-height:1.15;display:block}.lobby-stat span{color:#667085;font-size:12px;font-weight:800;display:block}.lobby-qr-banner{color:#172033;text-align:left;cursor:zoom-in;background:#eff6ffdb;border:1px solid #bfdbfe;border-radius:18px;align-items:center;gap:12px;width:100%;padding:10px 12px;display:flex}.lobby-qr-banner:hover{background:#eff6ff;border-color:#93c5fd}.lobby-qr-thumb{background:#fff;border:1px solid #dbeafe;border-radius:14px;flex:none;place-items:center;padding:3px;display:grid;overflow:hidden}.lobby-qr-banner strong,.lobby-qr-banner em{display:block}.lobby-qr-banner strong{color:#172033;font-size:15px;font-weight:900}.lobby-qr-banner em{color:#667085;margin-top:3px;font-size:12px;font-style:normal;font-weight:700}.lobby-class-actions{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.lobby-btn.enter{border-radius:15px;padding:12px 14px;font-size:15px}.lobby-class-actions .lobby-btn.danger{border-radius:13px;min-height:42px;padding:10px 12px;font-size:13px}.lobby-create-card{text-align:center;background:#fff;border:2px dashed #bfd3ee;border-radius:26px;place-items:center;min-height:220px;padding:18px;display:grid}.lobby-create-inner{max-width:310px}.lobby-plus{color:#2563eb;background:#eff6ff;border-radius:19px;place-items:center;width:54px;height:54px;margin:0 auto 13px;font-size:28px;font-weight:900;display:grid}.lobby-create-inner strong,.lobby-create-form>strong{color:#172033;letter-spacing:0;margin-bottom:6px;font-size:21px;font-weight:900;display:block}.lobby-create-inner span{color:#667085;margin-bottom:14px;font-size:14px;font-weight:700;line-height:1.45;display:block}.lobby-create-form{text-align:left;gap:12px;width:min(100%,360px);display:grid}.lobby-create-actions{grid-template-columns:1fr auto;gap:8px;display:grid}.lobby-bottom-tools{grid-template-columns:minmax(0,1fr);gap:16px;margin-top:18px;display:grid}.lobby-tool-card{background:#fff;border:1px solid #dbe5f3;border-radius:22px;justify-content:space-between;align-items:center;gap:12px;padding:18px;display:flex;box-shadow:0 12px 28px #0f172a0f}.lobby-tool-card strong{color:#172033;letter-spacing:0;margin-bottom:5px;font-size:16px;font-weight:900;display:block}.lobby-tool-card span{color:#667085;font-size:13px;font-weight:700;line-height:1.45}.lobby-qr-modal{z-index:90;background:#0f172a80;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.lobby-qr-modal-card{text-align:center;background:#fff;border:1px solid #dbe5f3;border-radius:26px;justify-items:center;width:min(92vw,430px);padding:26px;display:grid;position:relative;box-shadow:0 24px 70px #0f172a38}.lobby-qr-modal-card p{color:#2563eb;margin:0 0 6px;font-size:13px;font-weight:900}.lobby-qr-modal-card h2{color:#172033;margin:0 0 18px;font-size:30px;font-weight:900}.lobby-qr-large{background:#f8fafc;border:1px solid #dbe5f3;border-radius:22px;place-items:center;margin-bottom:18px;padding:14px;display:grid}.lobby-copy-toast{color:#166534;background:#dcfce7;border:1px solid #bbf7d0;border-radius:999px;margin:0 0 14px;padding:8px 14px;font-size:14px;font-weight:900}.lobby-qr-close{color:#344054;background:#fff;border:1px solid #dbe5f3;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900;position:absolute;top:14px;right:14px}.dashboard-hero{margin-bottom:24px}.dashboard-brand-mark{background:#eff6ff;border:1px solid #dbeafe;border-radius:14px;place-items:center;width:52px;height:52px;margin-bottom:12px;display:grid}.dashboard-brand-mark img{width:34px;height:34px;display:block}.dashboard-hero p,.dashboard-topbar p{color:#2563eb;font-size:14px;font-weight:900}.dashboard-hero h1,.dashboard-topbar h1{color:#0f172a;margin-top:6px;font-size:clamp(30px,4vw,48px);font-weight:900;line-height:1.15}.dashboard-hero>span{color:#64748b;margin-top:8px;font-size:18px;font-weight:800;display:block}.dashboard-entry-card{min-width:0;overflow:hidden}.dashboard-entry-split{grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:16px;max-width:1100px;display:grid}.dashboard-entry-title{color:#0f172a;font-size:22px;font-weight:900}.dashboard-entry-copy{color:#64748b;margin:8px 0 18px;font-size:14px;font-weight:700;line-height:1.6}.dashboard-entry-grid{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:14px;display:grid}.dashboard-entry-grid label,.dashboard-entry-card input,.dashboard-entry-card .app-button{min-width:0}.dashboard-actions{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.dashboard-message{z-index:80;color:#fff;background:#172033;border-radius:8px;max-width:1100px;padding:12px 14px;font-weight:800;position:fixed;bottom:20px;right:20px;box-shadow:0 14px 34px #0f172a2e}.dashboard-topbar{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px;display:flex}.dashboard-room-code{color:#1e3a8a;background:#eff6ff;border:1px solid #dbeafe;border-radius:8px;align-items:center;gap:8px;margin-top:12px;margin-right:8px;padding:8px 10px;font-size:13px;font-weight:800;display:inline-flex}.dashboard-room-code strong{color:#0f172a;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.dashboard-room-code button{color:#2563eb;align-items:center;gap:4px;font-weight:900;display:inline-flex}.dashboard-layout{grid-template-columns:330px minmax(0,1fr);align-items:start;gap:18px;display:grid}.dashboard-sidebar,.dashboard-main{gap:14px;display:grid}.dashboard-section-title{color:#0f172a;font-size:18px;font-weight:900}.dashboard-class-form{gap:12px;margin-top:14px;display:grid}.dashboard-class-list{gap:8px;margin-top:14px;display:grid}.dashboard-class-row{background:#fff;border:1px solid #e2e8f0;border-radius:8px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px;padding:8px;display:grid}.dashboard-class-row.is-active{background:#eff6ff;border-color:#2563eb}.dashboard-class-row>button:first-child{text-align:left;background:0 0;border:0;gap:3px;padding:4px;display:grid}.dashboard-class-delete{color:#be123c;background:#fff1f2;border:1px solid #fecdd3;border-radius:7px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.dashboard-class-enter{color:#2563eb;white-space:nowrap;background:#eff6ff;border:1px solid #bfdbfe;border-radius:7px;padding:8px 10px;font-size:12px;font-weight:900}.dashboard-class-delete:disabled{cursor:not-allowed;opacity:.45}.dashboard-class-list strong{color:#0f172a;font-weight:900}.dashboard-class-list span{color:#64748b;font-size:12px;font-weight:700}.dashboard-class-card{justify-content:space-between;align-items:center;gap:16px;display:flex}.dashboard-class-card h2{color:#0f172a;margin-top:10px;font-size:28px;font-weight:900}.dashboard-class-card p{color:#64748b;margin-top:6px;font-weight:700}.dashboard-round-actions{gap:10px;min-width:190px;display:grid}.dashboard-main-grid{grid-template-columns:minmax(0,1fr) 300px;gap:14px;display:grid}.dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px;display:grid}.dashboard-stats div{background:#f8fafc;border-radius:8px;padding:14px}.dashboard-stats span{color:#64748b;font-size:12px;font-weight:800}.dashboard-stats strong{color:#0f172a;margin-top:6px;font-size:22px;font-weight:900;display:block}.dashboard-qr-card{gap:12px;display:grid}.dashboard-qr-box{background:#f8fafc;border-radius:8px;place-items:center;padding:14px;display:grid}.dashboard-qr-card p{overflow-wrap:anywhere;color:#64748b;font-size:12px;font-weight:700}.dashboard-helper-text{color:#64748b;margin:-4px 0 12px;font-size:13px;font-weight:700;line-height:1.5}.dashboard-team-code-list{gap:8px;display:grid}.dashboard-team-code-row{background:#f8fbff;border:1px solid #dbeafe;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.dashboard-team-code-row strong{color:#0f172a;font-weight:900}.dashboard-team-code-row span{color:#15803d;letter-spacing:0;font-size:13px;font-weight:900}.dashboard-flow-list{color:#475569;margin:0;padding-left:20px;font-size:14px;font-weight:700;line-height:1.7}.dashboard-lobby-card{gap:12px;display:grid}.dashboard-lobby-card h2{color:#0f172a;font-size:clamp(24px,3vw,36px);font-weight:900;line-height:1.15}.dashboard-lobby-card p{color:#64748b;font-weight:700;line-height:1.55}.dashboard-lobby-stats{grid-template-columns:minmax(0,160px) minmax(0,1fr);gap:10px;margin-top:8px;display:grid}.dashboard-lobby-stats div{background:#f8fbff;border:1px solid #dbeafe;border-radius:10px;padding:14px}.dashboard-lobby-stats b{overflow-wrap:anywhere;color:#0f172a;font-size:20px;font-weight:900;display:block}.dashboard-lobby-stats span{color:#64748b;margin-top:4px;font-size:12px;font-weight:800;display:block}.dashboard-room-code.compact{align-items:stretch;margin-top:12px}.dashboard-room-code.compact strong{overflow-wrap:anywhere}.class-run{gap:18px;max-width:1120px;margin:0 auto;display:grid}.class-run-topbar{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:4px;display:flex}.class-kicker{color:#2563eb;margin-bottom:6px;font-size:13px;font-weight:900}.class-run-topbar h1{color:#0f172a;letter-spacing:0;margin:0;font-size:42px;font-weight:900;line-height:1.08}.class-top-sub{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.class-code-chip,.class-top-sub button{color:#344054;background:#fff;border:1px solid #dfe7f2;border-radius:12px;align-items:center;gap:7px;padding:8px 11px;font-size:13px;font-weight:800;display:inline-flex}.class-top-sub button{cursor:pointer}.class-run-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;padding-top:34px;display:flex}.class-run-actions .app-button{border-radius:14px!important}.class-run-grid{grid-template-columns:minmax(0,1.08fr) minmax(280px,.92fr);align-items:start;gap:18px;display:grid}.class-hero-card,.class-flow-card,.class-info-card,.class-tools{background:#fff;border:1px solid #dfe7f2;border-radius:22px;overflow:hidden;box-shadow:0 14px 34px #0f172a14}.class-hero-card{background:radial-gradient(circle at 100% 0,#2563eb1c,#0000 34%),#fff;padding:24px}.class-round-pill{color:#2563eb;background:#eff6ff;border-radius:999px;flex-wrap:wrap;align-items:center;gap:8px;max-width:100%;margin-bottom:14px;padding:8px 12px;font-size:13px;font-weight:900;line-height:1.35;display:inline-flex}.class-live-dot{background:#059669;border-radius:999px;width:9px;height:9px;box-shadow:0 0 0 5px #dcfce7}.class-hero-card h2{color:#172033;letter-spacing:0;margin:0 0 12px;font-size:clamp(28px,3.2vw,36px);font-weight:900;line-height:1.12}.class-news{color:#172033;word-break:keep-all;overflow-wrap:normal;background:#fff;border:1px solid #bfdbfe;border-radius:18px;min-width:0;margin-bottom:16px;padding:16px 18px;font-size:18px;font-weight:900;line-height:1.45}.class-quick-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px;display:grid}.class-quick-stats div{background:#fff;border:1px solid #dfe7f2;border-radius:16px;min-width:0;min-height:86px;padding:14px}.class-quick-stats b{color:#172033;letter-spacing:0;white-space:normal;margin-bottom:7px;font-size:clamp(17px,2vw,22px);font-weight:900;line-height:1.18;display:block}.class-quick-stats span{color:#64748b;font-size:12px;font-weight:800}.class-entry-zone{background:#eff6ffb8;border:1px solid #bfdbfe;border-radius:16px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:16px;margin-bottom:18px;padding:14px;display:grid}.class-entry-qr{background:#fff;border-radius:12px;place-items:center;padding:8px;display:grid}.class-entry-zone strong{color:#0f172a;margin-bottom:4px;font-size:18px;font-weight:900;display:block}.class-entry-zone p{color:#475569;margin-bottom:12px;font-size:14px;font-weight:700}.class-primary-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.class-primary-actions .class-big-button{min-height:58px;padding-inline:12px;font-size:clamp(15px,1.6vw,17px);border-radius:17px!important}.class-small-note{color:#64748b;margin-top:12px;font-size:13px;font-weight:700;line-height:1.45}.class-panel-head{border-bottom:1px solid #dfe7f2;justify-content:space-between;align-items:center;gap:12px;padding:17px 19px;display:flex}.class-panel-head h3{color:#172033;margin:0;font-size:17px;font-weight:900}.class-panel-head p{color:#64748b;margin-top:5px;font-size:13px;font-weight:700}.class-panel-head strong{color:#2563eb}.class-panel-head>span{color:#2563eb;white-space:nowrap;background:#eff6ff;border-radius:999px;justify-content:center;align-items:center;padding:7px 11px;font-size:12px;font-weight:900;display:inline-flex}.class-panel-head>span.is-red{color:#dc2626;background:#fee2e2}.class-panel-head>span.is-green{color:#047857;background:#dcfce7}.class-panel-head>span i{background:currentColor;border-radius:999px;width:8px;height:8px}.class-compact-flow{padding:16px 18px 18px}.class-progress-line{grid-template-columns:repeat(6,1fr);gap:8px;margin-bottom:16px;display:grid}.class-progress-step{text-align:center;background:#fff;border:1px solid #dfe7f2;border-radius:15px;min-height:70px;padding:10px 8px}.class-progress-step .circle{color:#475569;background:#e2e8f0;border-radius:10px;place-items:center;width:26px;height:26px;margin:0 auto 7px;font-size:12px;font-weight:900;display:grid}.class-progress-step span{color:#475569;font-size:11px;font-weight:800;line-height:1.25;display:block}.class-progress-step.done .circle{color:#fff;background:#059669}.class-progress-step.now{background:#eff6ff;border-color:#93c5fd}.class-progress-step.now .circle{color:#fff;background:#2563eb}.class-progress-step.now span{color:#2563eb}.class-progress-line-thin{background:linear-gradient(#fff 0%,#f8fafc 100%);gap:0;margin:0;padding:22px 30px 12px}.class-progress-line-thin .class-progress-step{background:0 0;border:0;border-radius:0;min-height:auto;padding:0 2px;position:relative}.class-progress-line-thin .class-progress-step:before{content:"";background:#dfe7f2;height:3px;position:absolute;top:9px;left:0;right:0}.class-progress-line-thin .class-progress-step.done:before,.class-progress-line-thin .class-progress-step.now:before{background:#2563eb}.class-progress-line-thin .class-progress-step:first-child:before{left:50%}.class-progress-line-thin .class-progress-step:last-child:before{right:50%}.class-progress-line-thin .class-progress-step .circle{z-index:1;color:#0000;background:#cbd5e1;border:3px solid #fff;border-radius:999px;width:20px;height:20px;margin-bottom:7px;font-size:0;position:relative;box-shadow:0 0 0 1px #dfe7f2}.class-progress-line-thin .class-progress-step.done .circle{background:#2563eb;box-shadow:0 0 0 1px #2563eb}.class-progress-line-thin .class-progress-step.now .circle{background:#fff;box-shadow:0 0 0 4px #dbeafe,0 0 0 1px #2563eb}.class-progress-line-thin .class-progress-step span{color:#64748b;white-space:nowrap;font-size:10px;font-weight:800}.class-progress-line-thin .class-progress-step.done span,.class-progress-line-thin .class-progress-step.now span{color:#2563eb}.class-guide-box{background:#f8fafc;border:1px solid #dfe7f2;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex}.class-guide-box-main{margin:10px 18px 18px}.class-guide-box strong{color:#172033;margin-bottom:3px;font-size:14px;font-weight:900;display:block}.class-guide-box span:not(.class-pill){color:#64748b;font-size:12px;font-weight:700}.class-pill{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:7px 11px;font-size:12px;font-weight:900;display:inline-flex}.class-pill.pill-blue{color:#2563eb;background:#eff6ff}.class-pill.pill-green{color:#047857;background:#dcfce7}.class-pill.pill-amber{color:#92400e;background:#fef3c7}.class-result-grid{--result-bg:#f5f4f0;--result-surface:#fff;--result-surface-2:#f0eee9;--result-border:#00000014;--result-border-strong:#00000024;--result-text-1:#1a1916;--result-text-2:#5a584f;--result-text-3:#9c9a90;--result-up:#0f6e56;--result-up-bg:#e8f5f0;--result-up-mid:#1d9e75;--result-down:#b33030;--result-down-bg:#faeaea;--result-down-mid:#e24b4a;--result-neutral:#4a4840;--result-radius-sm:8px;--result-radius-md:12px;--result-radius-lg:16px;--result-mono:"DM Mono", monospace;--result-sans:"Noto Sans KR", sans-serif;border-radius:var(--result-radius-lg);background:var(--result-bg);color:var(--result-text-1);font-family:var(--result-sans);grid-template-columns:minmax(300px,.55fr) minmax(620px,1.45fr);align-items:start;gap:16px;padding:16px;font-size:14px;line-height:1.5;display:grid}.class-result-grid .class-info-card{border:1px solid var(--result-border);border-radius:var(--result-radius-lg);background:var(--result-surface);box-shadow:none;overflow:hidden}.class-result-grid .class-panel-head{border-bottom:1px solid var(--result-border);padding:16px 20px}.class-result-grid .class-panel-head h3{color:var(--result-text-1);letter-spacing:0;font-size:13px;font-weight:700}.class-result-grid .class-panel-head p{color:var(--result-text-3);letter-spacing:.06em;text-transform:uppercase;margin-top:0;font-size:11px;font-weight:500}.class-result-grid .class-panel-head>span{border:1px solid var(--result-border-strong);background:var(--result-surface-2);color:var(--result-text-2);border-radius:20px;padding:3px 10px;font-size:11px;font-weight:500}.class-result-grid .class-panel-head>span.is-green{background:var(--result-up-bg);color:var(--result-up);border-color:#0000;font-weight:700}.class-result-grid .class-panel-head>span i{width:7px;height:7px}.class-rank-card-wide{grid-column:1/-1}.class-secret-body{padding:16px}.class-secret-note{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:14px;margin-bottom:10px;padding:14px}.class-secret-note strong,.class-secret-note span{display:block}.class-secret-note strong{color:#172033;margin-bottom:4px;font-size:15px;font-weight:900}.class-secret-note span{color:#64748b;font-size:12px;font-weight:700;line-height:1.4}.class-answer-preview{gap:7px;display:grid}.class-answer-preview.is-hidden{filter:blur(3px);opacity:.45;pointer-events:none}.class-answer-preview>div{color:#047857;background:#dcfce7;border-radius:12px;padding:10px 12px;font-size:13px;font-weight:900}.class-stock-badges{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.class-stock-badge{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:7px 10px;font-size:12px;font-weight:900;line-height:1;display:inline-flex}.class-stock-badge strong,.class-stock-badge em{font:inherit}.class-stock-badge em{font-style:normal}.class-stock-badge.is-up{color:#dc2626;background:#fee2e2}.class-stock-badge.is-down{color:#2563eb;background:#dbeafe}.class-stock-badge.is-flat{color:#475569;background:#e2e8f0}.class-answer-profit{height:100%;display:grid}.class-answer-hero{background:var(--result-surface);gap:14px;padding:20px;display:grid}.class-answer-hero span,.class-return-head h4,.class-return-head p{margin:0}.class-answer-hero span{color:var(--result-text-3);letter-spacing:.05em;text-transform:uppercase;margin-bottom:14px;font-size:12px;font-weight:700;display:block}.class-answer-pills{flex-wrap:wrap;gap:6px;display:flex}.class-answer-pills b{border:1px solid var(--result-border);background:var(--result-surface-2);color:var(--result-text-2);white-space:nowrap;border-radius:6px;align-items:center;padding:4px 10px;font-size:11px;font-weight:500;line-height:1.35;display:inline-flex}.class-answer-loading{color:var(--result-text-3);margin:10px 0 0;font-size:12px;font-weight:400;line-height:1.5}.class-answer-explanation{gap:6px;margin:14px 0 0;padding:0;list-style:none;display:grid}.class-answer-explanation li{border-radius:var(--result-radius-sm);background:var(--result-surface-2);border:0;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:10px;padding:8px 10px;display:grid}.class-answer-explanation em{background:var(--result-text-1);color:#fff;width:22px;height:22px;font-family:var(--result-mono);border-radius:999px;place-items:center;font-size:11px;font-style:normal;font-weight:700;line-height:1;display:grid}.class-answer-explanation strong{color:var(--result-text-1);font-size:13px;font-weight:400;line-height:1.45}.class-curve-chip{background:0 0;border:0;border-radius:0;align-items:center;gap:6px;width:fit-content;padding:0;display:inline-flex}.class-curve-chip span{color:var(--result-text-3);letter-spacing:0;text-transform:none;margin:0;font-size:12px;font-weight:400}.class-curve-chip strong{color:var(--result-down);font-size:14px;font-weight:700;line-height:1}.class-return-section{gap:22px;padding:28px;display:grid}.class-return-head{gap:6px;display:grid}.class-return-head h4{color:#172033;letter-spacing:-.035em;font-size:24px;font-weight:900}.class-return-head p{color:#64748b;text-align:left;font-size:14px;font-weight:800}.class-return-profit{gap:14px;padding:20px;display:grid}.class-return-summary-strip{grid-template-columns:1fr 1fr;gap:10px;display:grid}.class-return-summary{border-radius:var(--result-radius-md);min-height:auto;box-shadow:none;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:2px;padding:14px 18px;display:flex}.class-return-summary.best{background:var(--result-up-bg);border:1px solid #1d9e7533}.class-return-summary.worst{background:var(--result-down-bg);border:1px solid #e24b4a33}.class-return-summary span{color:var(--result-text-3);margin-bottom:2px;font-size:11px;font-weight:500;line-height:1.4;display:block}.class-return-summary strong{color:var(--result-text-1);letter-spacing:0;word-break:keep-all;font-size:14px;font-weight:700;line-height:1.35;display:block}.class-return-summary .rate{font-family:var(--result-mono);letter-spacing:0;white-space:nowrap;margin-top:4px;font-size:24px;font-weight:500;line-height:1}.class-return-summary .rate.up{color:var(--result-up)}.class-return-summary .rate.down{color:var(--result-down)}.class-return-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.class-return-card{border:1px solid var(--result-border);border-radius:var(--result-radius-md);background:var(--result-surface);min-height:auto;box-shadow:none;cursor:default;grid-template-rows:auto 1fr auto;gap:0;padding:17px 16px 16px;transition:transform .15s,box-shadow .15s;display:grid;position:relative;overflow:hidden}.class-return-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000000f}.class-return-card:before{content:"";background:var(--result-neutral);width:100%;height:3px;position:absolute;inset:0 0 auto}.class-return-card-top,.class-return-explain,.class-return-card-bottom{z-index:1;position:relative}.class-return-card-top{display:block}.class-return-card-top strong{color:var(--result-text-1);letter-spacing:-.01em;word-break:keep-all;margin-bottom:4px;font-size:15px;font-weight:700;line-height:1.4;display:block}.class-return-card-bottom i{border-radius:var(--result-radius-sm);background:var(--result-surface-2);width:32px;height:32px;color:var(--result-neutral);flex:none;place-items:center;font-size:14px;font-style:normal;font-weight:700;line-height:1;display:grid}.class-return-explain{align-content:start;min-height:53px;margin-bottom:14px;display:grid}.class-return-explain p{-webkit-line-clamp:2;color:var(--result-text-2);letter-spacing:0;word-break:keep-all;-webkit-box-orient:vertical;margin:0;font-size:17px;font-weight:400;line-height:1.55;display:-webkit-box;overflow:hidden}.class-return-card-bottom{justify-content:space-between;align-items:center;gap:12px;display:flex}.class-return-card-bottom em{color:#667085;font-size:12px;font-style:normal;font-weight:800}.class-return-card-bottom b{color:var(--result-neutral);font-family:var(--result-mono);letter-spacing:0;white-space:nowrap;font-size:22px;font-weight:500;line-height:1}.class-return-card.is-up{background:var(--result-surface);border-color:var(--result-border)}.class-return-card.is-up:before{background:var(--result-up-mid)}.class-return-card.is-up .class-return-card-bottom i{background:var(--result-up-bg);color:var(--result-up)}.class-return-card.is-up .class-return-card-bottom b{color:var(--result-up)}.class-return-card.is-down{background:var(--result-surface);border-color:var(--result-border)}.class-return-card.is-down:before{background:var(--result-down-mid)}.class-return-card.is-down .class-return-card-bottom i{background:var(--result-down-bg);color:var(--result-down)}.class-return-card.is-down .class-return-card-bottom b{color:var(--result-down)}.class-return-card.is-flat{background:var(--result-surface)}.class-return-card.is-flat:before{background:var(--result-neutral)}.class-return-card.is-flat .class-return-card-bottom i{background:var(--result-surface-2);color:var(--result-neutral)}.class-return-card.is-best,.class-return-card.is-worst{box-shadow:none}.class-return-card.is-best{color:var(--result-up)}.class-return-card.is-worst{color:var(--result-down)}.class-return-reason-bar{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe;border-radius:18px;padding:14px 16px;font-size:14px;font-weight:800;line-height:1.5}.class-return-empty{border:1px solid var(--result-border);border-radius:var(--result-radius-lg);background:var(--result-surface);color:var(--result-text-3);text-align:center;padding:28px;font-size:13px;font-weight:400}.class-reveal-panel{min-height:176px;position:relative}.class-reveal-cover{z-index:2;border:1px solid var(--result-border);border-radius:0 0 var(--result-radius-lg) var(--result-radius-lg);color:var(--result-text-1);text-align:center;cursor:pointer;box-shadow:none;background:#fffffff0;place-items:center;gap:6px;padding:28px;display:grid;position:absolute;inset:0}.class-reveal-cover strong{color:var(--result-text-2);word-break:keep-all;font-size:15px;font-weight:700}.class-reveal-cover span{max-width:420px;color:var(--result-text-3);word-break:keep-all;font-size:13px;font-weight:400;line-height:1.7}.class-reveal-cover em{border:1px solid var(--result-border-strong);border-radius:var(--result-radius-sm);color:var(--result-text-2);font-family:var(--result-sans);background:0 0;justify-content:center;align-items:center;margin-top:10px;padding:6px 14px;font-size:13px;font-style:normal;font-weight:500;display:inline-flex}.class-reveal-cover:hover em{background:var(--result-surface-2);color:var(--result-text-1)}.class-reveal-content{transition:opacity .18s,filter .18s}.class-reveal-content.is-hidden{opacity:.22;filter:blur(5px);pointer-events:none;-webkit-user-select:none;user-select:none}.class-reveal-content.is-visible{opacity:1;filter:none}.class-rank-list{gap:6px;padding:16px 20px 20px;display:grid}.class-rank-header,.class-rank-row{grid-template-columns:86px minmax(100px,1fr) 80px 82px 104px 98px minmax(160px,1.1fr);align-items:center;gap:10px;display:grid}.class-rank-header{color:var(--result-text-3);padding:0 10px 4px;font-size:11px;font-weight:500}.class-rank-row{border-radius:var(--result-radius-sm);background:var(--result-surface-2);width:100%;min-height:44px;color:inherit;cursor:pointer;font:inherit;text-align:left;border:0;padding:8px 10px;transition:background .18s,box-shadow .18s,transform .18s}.class-rank-row.is-first{background:var(--result-up-bg);border:1px solid #1d9e7533}.class-rank-row:hover,.class-rank-row:focus-visible{background:#fff;outline:0;transform:translateY(-1px);box-shadow:0 10px 24px #0f172a14}.class-rank-place{align-items:center;gap:8px;display:flex}.class-rank-place strong{background:var(--result-text-1);color:#fff;width:22px;height:22px;font-family:var(--result-mono);border-radius:999px;place-items:center;font-size:11px;font-weight:700;display:grid}.class-rank-row.is-first .class-rank-place strong{background:var(--result-up);color:#fff}.rank-move{font-family:var(--result-mono);white-space:nowrap;border-radius:999px;padding:3px 7px;font-size:11px;font-style:normal;font-weight:500}.rank-move.up{background:var(--result-up-bg);color:var(--result-up)}.rank-move.down{background:var(--result-down-bg);color:var(--result-down)}.rank-move.same{background:var(--result-surface);color:var(--result-text-3)}.class-rank-name,.class-rank-score,.class-rank-total-accuracy,.class-rank-bonus,.class-rank-round-return,.class-rank-money strong{color:var(--result-text-1);font-size:13px;font-weight:500}.class-rank-score,.class-rank-total-accuracy,.class-rank-bonus,.class-rank-round-return,.class-rank-money strong{font-family:var(--result-mono)}.class-rank-bonus{color:var(--result-text-2);white-space:nowrap}.class-rank-total-accuracy{color:var(--result-up);white-space:nowrap}.class-rank-round-return{white-space:nowrap}.class-rank-round-return.is-up{color:var(--result-up)}.class-rank-round-return.is-down{color:var(--result-down)}.class-rank-money{text-align:right;justify-content:flex-end;align-items:center;gap:8px;display:flex}.class-rank-money span{font-family:var(--result-mono);white-space:nowrap;font-size:12px;font-weight:500}.class-rank-money span.is-up{color:var(--result-up)}.class-rank-money span.is-down{color:var(--result-down)}.class-dashboard-investment-modal{z-index:130;background:#0f172a85;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.class-dashboard-investment-card{border:1px solid var(--class-border,#dbe5f3);border-radius:var(--class-radius-lg,18px);background:var(--class-surface,#fff);gap:18px;width:min(94vw,760px);max-height:min(86vh,760px);padding:24px;display:grid;position:relative;overflow:auto;box-shadow:0 24px 70px #0f172a3d}.class-dashboard-investment-close{border:1px solid var(--class-border,#dbe5f3);color:var(--class-text-2,#475569);cursor:pointer;font:inherit;background:#fff;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:800;position:absolute;top:18px;right:18px}.class-dashboard-investment-close:hover,.class-dashboard-investment-close:focus-visible{background:var(--class-surface-2,#f8fafc);outline:0}.class-dashboard-investment-head{gap:12px;padding-right:64px;display:grid}.class-dashboard-investment-head>span{color:var(--class-accent,#2563eb);font-size:12px;font-weight:900}.class-dashboard-investment-head h2{color:var(--class-text-1,#172033);letter-spacing:0;margin:0;font-size:28px;font-weight:900;line-height:1.15}.class-dashboard-investment-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.class-dashboard-investment-stats div{border:1px solid var(--class-border,#dbe5f3);border-radius:var(--result-radius-sm,12px);background:var(--class-surface-2,#f8fafc);padding:12px}.class-dashboard-investment-stats em{color:var(--class-text-3,#64748b);margin-bottom:6px;font-size:11px;font-style:normal;font-weight:800;display:block}.class-dashboard-investment-stats strong{color:var(--class-text-1,#172033);font-family:var(--result-mono);font-size:15px;font-weight:700}.class-dashboard-investment-note{border-radius:var(--result-radius-sm,12px);color:#92400e;background:#fffbeb;border:1px solid #fde68a;margin:0;padding:10px 12px;font-size:13px;font-weight:800;line-height:1.5}.class-dashboard-investment-table{gap:8px;display:grid}.class-dashboard-investment-table-head,.class-dashboard-investment-row{grid-template-columns:minmax(180px,1fr) minmax(120px,.7fr) 104px 104px;align-items:center;gap:12px;display:grid}.class-dashboard-investment-table-head{color:var(--class-text-3,#64748b);padding:0 12px;font-size:11px;font-weight:900}.class-dashboard-investment-row{border:1px solid var(--class-border,#dbe5f3);border-radius:var(--result-radius-sm,12px);background:#fff;padding:12px}.class-dashboard-investment-row.is-cash{background:var(--class-surface-2,#f8fafc)}.class-dashboard-investment-name{min-width:0}.class-dashboard-investment-name strong{color:var(--class-text-1,#172033);font-size:14px;font-weight:900;line-height:1.3;display:block}.class-dashboard-investment-name span{color:var(--class-text-3,#64748b);margin-top:4px;font-size:12px;font-weight:700;line-height:1.45;display:block}.class-dashboard-investment-percent{gap:7px;display:grid}.class-dashboard-investment-percent strong,.class-dashboard-investment-row>div:nth-child(3),.class-dashboard-investment-row>div:nth-child(4){font-family:var(--result-mono);font-size:13px;font-weight:700}.class-dashboard-investment-percent span{background:var(--class-accent,#2563eb);border-radius:999px;max-width:100%;height:8px;display:block}.class-dashboard-investment-row .is-up,.class-dashboard-investment-stats .is-up{color:var(--result-up)}.class-dashboard-investment-row .is-down,.class-dashboard-investment-stats .is-down{color:var(--result-down)}.class-dashboard-investment-empty{border:1px solid var(--class-border,#dbe5f3);border-radius:var(--result-radius-sm,12px);background:var(--class-surface-2,#f8fafc);color:var(--class-text-3,#64748b);text-align:center;padding:22px;font-size:13px;font-weight:800}.class-rank-empty{min-height:176px;color:var(--result-text-3);text-align:center;place-items:center;padding:36px 20px;font-size:13px;font-weight:400;display:grid}.class-tools summary{cursor:pointer;color:#334155;padding:17px 20px;font-weight:900}.class-tools-grid{border-top:1px solid #dfe7f2;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:16px 20px 20px;display:grid}.class-tool-box{background:#f8fafc;border:1px solid #dce5f2;border-radius:14px;padding:14px}.class-tool-box strong,.class-tool-box span{display:block}.class-tool-box strong{color:#172033;margin-bottom:4px;font-size:14px;font-weight:900}.class-tool-box span{color:#64748b;margin-bottom:10px;font-size:12px;font-weight:700;line-height:1.4}.class-tool-box button{color:#334155;background:#fff;border:1px solid #dce5f2;border-radius:10px;align-items:center;gap:6px;padding:9px 11px;font-size:13px;font-weight:900;display:inline-flex}.class-tool-qr{justify-items:start;gap:8px;display:grid}.class-team-list{gap:6px;max-height:150px;display:grid;overflow-y:auto}.class-team-list p{background:#fff;border-radius:10px;justify-content:space-between;gap:10px;padding:8px 9px;display:flex}.class-team-list b{color:#172033;font-size:13px}.class-team-list em{color:#059669;font-size:12px;font-style:normal;font-weight:900}.resource-page{color:#172033;background:#f6f7fb;min-height:100vh;padding:28px}.resource-topbar,.resource-hero,.resource-grid,.resource-flow-intro,.resource-flow-list,.resource-guide-bottom{max-width:1040px;margin-inline:auto}.resource-topbar{margin-bottom:20px}.resource-back{color:#344054;background:#fff;border:1px solid #dbe5f3;border-radius:12px;align-items:center;gap:7px;padding:10px 14px;font-size:14px;font-weight:800;text-decoration:none;display:inline-flex}.resource-hero{background:#fff;border:1px solid #dbe5f3;border-radius:24px;padding:36px;box-shadow:0 16px 38px #0f172a14}.resource-hero-icon{color:#2563eb;background:#eff6ff;border-radius:18px;place-items:center;width:56px;height:56px;display:grid}.resource-hero p{color:#2563eb;margin:22px 0 8px;font-size:14px;font-weight:900}.resource-hero h1{color:#172033;letter-spacing:0;margin:0;font-size:clamp(34px,5vw,54px);font-weight:900;line-height:1.05}.resource-hero span{color:#667085;max-width:620px;margin-top:14px;font-size:17px;font-weight:700;line-height:1.6;display:block}.resource-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.resource-grid.cases{grid-template-columns:repeat(2,minmax(0,1fr))}.resource-card,.resource-link-card{background:#fff;border:1px solid #dbe5f3;border-radius:18px;padding:22px;box-shadow:0 12px 28px #0f172a0f}.resource-card span{color:#2563eb;background:#eff6ff;border-radius:999px;margin-bottom:12px;padding:6px 10px;font-size:12px;font-weight:900;display:inline-flex}.resource-card h2{color:#172033;letter-spacing:0;margin:0 0 10px;font-size:22px;font-weight:900}.resource-card p{color:#667085;margin:0;font-size:15px;font-weight:700;line-height:1.7}.resource-link-card{color:#047857;align-items:center;gap:12px;font-weight:900;text-decoration:none;display:flex}.resource-link-card strong{flex:1}.resource-flow-intro{border-bottom:1px solid #dbe5f3;justify-content:space-between;align-items:end;gap:18px;margin-top:26px;padding-bottom:18px;display:flex}.resource-flow-intro p,.resource-guide-panel>span{color:#2563eb;margin:0 0 8px;font-size:13px;font-weight:900}.resource-flow-intro h2,.resource-guide-panel h2{color:#172033;letter-spacing:0;margin:0;font-size:clamp(24px,3vw,34px);font-weight:900;line-height:1.16}.resource-primary-link{color:#fff;background:#172033;border-radius:12px;flex:none;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:11px 16px;font-size:14px;font-weight:900;text-decoration:none;display:inline-flex}.resource-flow-list{gap:34px;margin-top:26px;display:grid}.resource-flow-step{border-top:1px solid #dbe5f3;gap:16px;padding-top:24px;display:grid}.resource-flow-step:first-child{border-top:0;padding-top:0}.resource-flow-step-head{grid-template-columns:auto 1fr;align-items:center;gap:14px;display:grid}.resource-flow-step-head>span{color:#047857;background:#dff7ef;border-radius:16px;place-items:center;width:54px;height:54px;font-size:15px;font-weight:900;display:grid}.resource-flow-step-head p{color:#2563eb;margin:2px 0 5px;font-size:14px;font-weight:900}.resource-flow-step-head h2{color:#172033;letter-spacing:0;margin:0;font-size:clamp(22px,3vw,30px);font-weight:900;line-height:1.2}.resource-flow-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.resource-screen-card{background:#fff;border:1px solid #dbe5f3;border-radius:8px;overflow:hidden;box-shadow:0 12px 28px #0f172a0f}.resource-screen-copy{min-height:128px;padding:20px 20px 16px}.resource-screen-copy span{color:#2563eb;background:#eff6ff;border-radius:999px;margin-bottom:10px;padding:6px 10px;font-size:12px;font-weight:900;display:inline-flex}.resource-screen-copy h3{color:#172033;letter-spacing:0;margin:0;font-size:21px;font-weight:900;line-height:1.28}.resource-screen-copy ul,.resource-guide-panel ul{gap:9px;margin:14px 0 0;padding:0;list-style:none;display:grid}.resource-screen-copy li{color:#4b5565;padding-left:17px;font-size:14px;font-weight:800;line-height:1.55;position:relative}.resource-screen-copy li:before{content:"";background:#14b8a6;border-radius:999px;width:6px;height:6px;position:absolute;top:.72em;left:0}.resource-screen-shot{cursor:zoom-in;background:#eef2f7;border:0;border-top:1px solid #e5ecf6;justify-content:center;align-items:center;width:100%;height:clamp(260px,22vw,380px);padding:0;display:flex;overflow:hidden}.resource-screen-shot img{object-fit:contain;object-position:center;width:auto;max-width:100%;height:auto;max-height:100%;display:block}.resource-screen-card.is-mobile-shot .resource-screen-shot{background:#f8fafc;height:clamp(260px,22vw,380px)}.resource-screen-card.is-mobile-shot .resource-screen-shot img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:100%}.resource-image-modal{z-index:200;background:#0f172ab8;place-items:center;padding:28px;display:grid;position:fixed;inset:0}.resource-image-modal-inner{background:#fff;border-radius:12px;max-width:min(1200px,94vw);max-height:92vh;padding:18px;display:grid;position:relative;box-shadow:0 24px 70px #00000059}.resource-image-modal-inner img{object-fit:contain;max-width:100%;max-height:calc(92vh - 72px);display:block}.resource-image-modal-inner.is-mobile-shot img{width:auto;max-width:min(390px,82vw)}.resource-image-modal-close{color:#172033;cursor:pointer;background:#fff;border:1px solid #dbe5f3;border-radius:10px;justify-self:end;margin-bottom:10px;padding:8px 12px;font-size:13px;font-weight:900}.resource-flow-tip{color:#724b08;background:#fffbeb;border-left:4px solid #f59e0b;margin:0;padding:12px 14px;font-size:14px;font-weight:800;line-height:1.6}.resource-guide-bottom{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:16px;margin-top:38px;display:grid}.resource-guide-panel{background:#fff;border:1px solid #dbe5f3;border-radius:8px;padding:24px;box-shadow:0 12px 28px #0f172a0f}.resource-guide-panel li{color:#344054;align-items:start;gap:9px;font-size:14px;font-weight:800;line-height:1.55;display:flex}.resource-guide-panel li svg{color:#047857;flex:none;margin-top:2px}.resource-faq-list{gap:14px;margin-top:16px;display:grid}.resource-faq-list div{border-top:1px solid #e5ecf6;padding-top:13px}.resource-faq-list div:first-child{border-top:0;padding-top:0}.resource-faq-list strong{color:#172033;font-size:15px;font-weight:900;display:block}.resource-faq-list p{color:#667085;margin:5px 0 0;font-size:14px;font-weight:750;line-height:1.6}@media (width<=720px){.resource-page{padding:16px}.resource-hero{padding:24px}.resource-grid,.resource-grid.cases,.resource-flow-intro,.resource-guide-bottom{grid-template-columns:1fr}.resource-flow-intro{align-items:stretch;display:grid}.resource-primary-link{width:100%}.resource-flow-columns,.resource-flow-step-head{grid-template-columns:1fr}.resource-screen-copy{min-height:0}.resource-screen-shot{height:260px}}.class-dashboard-shell{--class-bg:#f5f4f0;--class-surface:#fff;--class-surface-2:#f0eee9;--class-border:#00000014;--class-border-strong:#00000024;--class-text-1:#1a1916;--class-text-2:#5a584f;--class-text-3:#9c9a90;--class-up:#0f6e56;--class-up-bg:#e8f5f0;--class-up-mid:#1d9e75;--class-down:#b33030;--class-down-bg:#faeaea;--class-down-mid:#e24b4a;--class-neutral:#4a4840;--class-blue:#1a56db;--class-blue-bg:#ebf2ff;--class-radius-sm:8px;--class-radius-md:12px;--class-radius-lg:16px;--class-radius-xl:20px;--class-mono:"DM Mono", monospace;--class-sans:"Noto Sans KR", sans-serif;--result-bg:var(--class-bg);--result-surface:var(--class-surface);--result-surface-2:var(--class-surface-2);--result-border:var(--class-border);--result-border-strong:var(--class-border-strong);--result-text-1:var(--class-text-1);--result-text-2:var(--class-text-2);--result-text-3:var(--class-text-3);--result-up:var(--class-up);--result-up-bg:var(--class-up-bg);--result-up-mid:var(--class-up-mid);--result-down:var(--class-down);--result-down-bg:var(--class-down-bg);--result-down-mid:var(--class-down-mid);--result-neutral:var(--class-neutral);--result-radius-sm:var(--class-radius-sm);--result-radius-md:var(--class-radius-md);--result-radius-lg:var(--class-radius-lg);--result-mono:var(--class-mono);--result-sans:var(--class-sans);background:var(--class-bg);min-height:100vh;color:var(--class-text-1);font-family:var(--class-sans);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5}.class-dashboard-shell *,.class-dashboard-shell :before,.class-dashboard-shell :after{box-sizing:border-box}.class-dashboard-topbar{z-index:100;border-bottom:1px solid var(--class-border);background:var(--class-surface);justify-content:space-between;align-items:center;height:56px;padding:0 24px;display:flex;position:sticky;top:0}.class-dashboard-topbar-left{align-items:center;gap:20px;min-width:0;display:flex}.class-dashboard-topbar-label{color:var(--class-text-3);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:500}.class-dashboard-topbar-title{color:var(--class-text-1);letter-spacing:-.02em;font-size:17px;font-weight:700}.class-dashboard-topbar-meta,.class-dashboard-topbar-right{align-items:center;gap:8px;display:flex}.class-dashboard-topbar-right{gap:12px}.class-dashboard-chip{border:1px solid var(--class-border-strong);background:var(--class-surface-2);color:var(--class-text-2);white-space:nowrap;border-radius:20px;padding:3px 10px;font-size:11px;font-weight:500}.class-dashboard-btn-ghost,.class-dashboard-btn-danger-ghost,.class-dashboard-btn-primary{font-family:var(--class-sans);cursor:pointer}.class-dashboard-btn-ghost{border:1px solid var(--class-border-strong);border-radius:var(--class-radius-sm);color:var(--class-text-2);white-space:nowrap;background:0 0;justify-content:center;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:500;text-decoration:none;transition:background .15s,color .15s,opacity .15s;display:inline-flex}.class-dashboard-btn-ghost:hover:not(:disabled){background:var(--class-surface-2);color:var(--class-text-1)}.class-dashboard-btn-resource{background:var(--class-up-bg);color:var(--class-up);border-color:#05966938;font-weight:700}.class-dashboard-btn-resource:hover{color:#047857;background:#dcfce7}.class-dashboard-btn-ghost:disabled,.class-dashboard-btn-primary:disabled,.class-dashboard-btn-danger-ghost:disabled{cursor:not-allowed;opacity:.45}.class-dashboard-page{grid-template-rows:auto auto 1fr;grid-template-columns:minmax(0,1fr) 340px;gap:16px;max-width:1100px;margin:0 auto;padding:24px 24px 48px;display:grid}.class-dashboard-progress-section,.class-dashboard-action-panel,.class-dashboard-status-card{border:1px solid var(--class-border);border-radius:var(--class-radius-lg);background:var(--class-surface)}.class-dashboard-progress-section{grid-column:1/-1;padding:20px 28px}.class-dashboard-progress-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.class-dashboard-progress-header-left{align-items:center;gap:12px;display:flex}.class-dashboard-live-dot{background:var(--class-up-mid);border-radius:50%;flex:none;width:8px;height:8px;animation:2s infinite class-dashboard-pulse}@keyframes class-dashboard-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}.class-dashboard-progress-title{color:var(--class-text-1);font-size:14px;font-weight:700}.class-dashboard-progress-sub{color:var(--class-text-3);font-size:12px}.class-dashboard-published-badge{background:var(--class-surface-2);color:var(--class-text-2);white-space:nowrap;border-radius:20px;align-items:center;gap:5px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.class-dashboard-published-badge.is-published{background:var(--class-up-bg);color:var(--class-up)}.class-dashboard-published-badge>span{background:currentColor;border-radius:999px;width:8px;height:8px}.class-dashboard-step-track{align-items:flex-start;display:flex;position:relative}.class-dashboard-step-item{flex-direction:column;flex:1;align-items:center;gap:6px;display:flex;position:relative}.class-dashboard-step-item:not(:last-child):after{content:"";background:var(--class-border);height:2px;position:absolute;top:13px;left:calc(50% + 16px);right:calc(16px - 50%)}.class-dashboard-step-item.done:not(:last-child):after{background:var(--class-up-mid)}.class-dashboard-step-item.active:not(:last-child):after{background:linear-gradient(to right, var(--class-up-mid) 50%, var(--class-border) 50%)}.class-dashboard-step-circle{z-index:1;width:28px;height:28px;font-family:var(--class-mono);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex;position:relative}.class-dashboard-step-item.done .class-dashboard-step-circle{background:var(--class-up-mid);color:#fff}.class-dashboard-step-item.active .class-dashboard-step-circle{background:var(--class-text-1);color:#fff;box-shadow:0 0 0 4px #1a191614}.class-dashboard-step-item.future .class-dashboard-step-circle{border:1.5px solid var(--class-border-strong);background:var(--class-surface-2);color:var(--class-text-3)}.class-dashboard-step-label{color:var(--class-text-3);text-align:center;font-size:11px;font-weight:500}.class-dashboard-step-item.active .class-dashboard-step-label{color:var(--class-text-1);font-weight:700}.class-dashboard-step-item.done .class-dashboard-step-label{color:var(--class-up-mid)}.class-dashboard-action-panel{overflow:hidden}.class-dashboard-action-inner{padding:24px 28px}.class-dashboard-action-eyebrow{color:var(--class-text-3);letter-spacing:.07em;text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:700}.class-dashboard-action-headline{color:var(--class-text-1);letter-spacing:-.03em;margin-bottom:4px;font-size:26px;font-weight:700}.class-dashboard-news-banner{border-left:3px solid var(--class-text-3);border-radius:0 var(--class-radius-sm) var(--class-radius-sm) 0;background:var(--class-surface-2);color:var(--class-text-2);word-break:keep-all;margin:16px 0;padding:10px 14px;font-size:13px;font-style:italic;line-height:1.5}.class-dashboard-stat-row{grid-template-columns:1fr 1fr;gap:10px;margin:16px 0;display:grid}.class-dashboard-stat-box{border-radius:var(--class-radius-sm);background:var(--class-surface-2);padding:12px 14px}.class-dashboard-stat-label{color:var(--class-text-3);margin-bottom:4px;font-size:11px;font-weight:500}.class-dashboard-stat-value{color:var(--class-text-1);font-family:var(--class-mono);font-size:22px;font-weight:500}.class-dashboard-action-footer{border-top:1px solid var(--class-border);align-items:center;gap:12px;padding:16px 28px;display:flex}.class-dashboard-btn-primary{border-radius:var(--class-radius-sm);background:var(--class-text-1);color:#fff;letter-spacing:-.01em;border:0;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px 22px;font-size:14px;font-weight:700;transition:background .15s,transform .1s,opacity .15s;display:flex}.class-dashboard-btn-primary:hover:not(:disabled){background:#2c2a27}.class-dashboard-btn-primary:active:not(:disabled){transform:scale(.98)}.class-dashboard-btn-danger-ghost{color:var(--class-text-3);white-space:nowrap;background:0 0;border:0;padding:8px 4px;font-size:13px;font-weight:500;transition:color .15s,opacity .15s}.class-dashboard-btn-danger-ghost:hover:not(:disabled){color:var(--class-down)}.class-dashboard-sidebar{flex-direction:column;gap:16px;display:flex}.class-dashboard-status-card{padding:20px}.class-dashboard-card-title{color:var(--class-text-3);letter-spacing:.05em;text-transform:uppercase;margin-bottom:14px;font-size:12px;font-weight:700}.class-dashboard-status-card .class-answer-profit{display:block}.class-dashboard-status-card .class-answer-hero{background:0 0;gap:14px;padding:0;display:grid}.class-dashboard-status-card .class-answer-hero>div:first-child>span{display:none}.class-dashboard-status-card .class-answer-pills{margin-bottom:14px}.class-dashboard-status-card .class-curve-chip{margin-top:10px;display:flex}.class-dashboard-locked-note{border-radius:var(--class-radius-sm);background:var(--class-surface-2);gap:6px;padding:16px;display:grid}.class-dashboard-locked-note strong{color:var(--class-text-2);font-size:15px;font-weight:700}.class-dashboard-locked-note span{color:var(--class-text-3);font-size:13px;line-height:1.6}.class-dashboard-participants-card{gap:12px;display:grid}.class-dashboard-participants-title{justify-content:space-between;align-items:center;gap:12px;margin-bottom:0;display:flex}.class-dashboard-participants-title b{background:var(--class-surface-2);color:var(--class-text-2);letter-spacing:0;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:3px 9px;font-size:11px;font-weight:800;display:inline-flex}.class-dashboard-participant-list{gap:8px;max-height:260px;padding-right:2px;display:grid;overflow-y:auto}.class-dashboard-participant-row{border:1px solid var(--class-border);border-radius:var(--class-radius-sm);background:var(--class-surface-2);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 10px 10px 12px;display:grid}.class-dashboard-participant-main{min-width:0}.class-dashboard-participant-main strong,.class-dashboard-participant-main span{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.class-dashboard-participant-main strong{color:var(--class-text-1);font-size:14px;font-weight:800}.class-dashboard-participant-main span{color:var(--class-text-3);margin-top:2px;font-size:11px;font-weight:700}.class-dashboard-participant-main span.is-submitted{color:var(--class-up)}.class-dashboard-participant-delete{border-radius:var(--class-radius-sm);width:30px;height:30px;color:var(--class-down);cursor:pointer;background:#fef2f2e0;border:1px solid #dc26262e;place-items:center;transition:background .15s,border-color .15s,color .15s,opacity .15s;display:inline-grid}.class-dashboard-participant-delete:hover:not(:disabled){color:#b91c1c;background:#fee2e2;border-color:#dc262657}.class-dashboard-participant-delete:disabled{cursor:not-allowed;opacity:.35}.class-dashboard-participant-empty{border:1px dashed var(--class-border-strong);border-radius:var(--class-radius-sm);background:var(--class-surface-2);color:var(--class-text-3);text-align:center;padding:14px;font-size:13px;font-weight:700}.class-dashboard-cards-section,.class-dashboard-leaderboard-section,.class-dashboard-section-divider{grid-column:1/-1}.class-dashboard-cards-section-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.class-dashboard-section-heading{color:var(--class-text-1);font-size:13px;font-weight:700}.class-dashboard-section-divider{background:var(--class-border);height:1px}.class-dashboard-leaderboard-placeholder{border:1px solid var(--class-border);border-radius:var(--class-radius-lg);background:var(--class-surface);text-align:center;justify-items:center;gap:16px;padding:28px;display:grid}.class-dashboard-return-placeholder{min-height:176px}.class-dashboard-leaderboard-hint{color:var(--class-text-3);font-size:13px;line-height:1.7}.class-dashboard-leaderboard-hint strong{color:var(--class-text-2);margin-bottom:6px;font-size:15px;font-weight:700;display:block}.class-dashboard-shell .class-return-profit{padding:0}.class-dashboard-shell .class-rank-list{border:1px solid var(--class-border);border-radius:var(--class-radius-lg);background:var(--class-surface);padding:20px}.class-dashboard-toast{z-index:120;background:var(--class-text-1,#1a1916);color:#fff;position:fixed;bottom:20px;right:20px;box-shadow:0 14px 34px #0f172a2e}@media (width<=980px){.class-dashboard-page{grid-template-columns:1fr}.class-dashboard-sidebar{grid-column:1/-1}.class-dashboard-topbar{flex-wrap:wrap;gap:10px;height:auto;min-height:56px;padding:10px 16px}.class-dashboard-topbar-left{flex-wrap:wrap;gap:10px 16px}.class-dashboard-topbar-right{margin-left:auto}}@media (width<=720px){.class-dashboard-investment-modal{padding:12px}.class-dashboard-investment-card{border-radius:var(--class-radius,14px);width:100%;max-height:90vh;padding:18px}.class-dashboard-investment-head{padding-right:58px}.class-dashboard-investment-head h2{font-size:23px}.class-dashboard-investment-stats{grid-template-columns:1fr}.class-dashboard-investment-table-head{display:none}.class-dashboard-investment-row{grid-template-columns:1fr;align-items:stretch}.class-dashboard-investment-row>div:nth-child(3):before{content:"종목 수익률 ";color:var(--class-text-3,#64748b);font-family:inherit;font-weight:800}.class-dashboard-investment-row>div:nth-child(4):before{content:"기여도 ";color:var(--class-text-3,#64748b);font-family:inherit;font-weight:800}.class-dashboard-page{gap:12px;padding:14px 12px 32px}.class-dashboard-topbar{align-items:stretch}.class-dashboard-topbar-left,.class-dashboard-topbar-right,.class-dashboard-topbar-meta{width:100%}.class-dashboard-topbar-right{justify-content:flex-start;margin-left:0}.class-dashboard-topbar-meta{flex-wrap:wrap}.class-dashboard-progress-section,.class-dashboard-action-inner,.class-dashboard-action-footer,.class-dashboard-status-card,.class-dashboard-leaderboard-placeholder{padding:16px}.class-dashboard-progress-header,.class-dashboard-action-footer,.class-dashboard-cards-section-header{flex-direction:column;align-items:flex-start}.class-dashboard-step-track{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 6px;display:grid}.class-dashboard-step-item:after{display:none}.class-dashboard-action-headline{font-size:24px}.class-dashboard-stat-row{grid-template-columns:1fr}.class-dashboard-btn-primary,.class-dashboard-action-footer .class-dashboard-btn-danger-ghost{width:100%}.class-dashboard-shell .class-rank-list{padding:14px}}@media (width<=980px){.student-layout,.lobby-hero,.lobby-bottom-tools{grid-template-columns:1fr}.lobby-hero-actions{justify-content:flex-start}.lobby-class-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-layout,.dashboard-main-grid,.class-run-grid,.class-result-grid{grid-template-columns:1fr}.class-tools-grid{grid-template-columns:1fr 1fr}.class-progress-line{grid-template-columns:repeat(3,1fr)}.class-rank-header{display:none}.class-rank-row{grid-template-columns:auto minmax(0,1fr)}.class-rank-place{grid-row:span 2}.class-rank-score{justify-self:end}.class-rank-total-accuracy,.class-rank-bonus,.class-rank-round-return{grid-column:2;justify-self:start}.class-rank-money{text-align:left;grid-column:2;justify-content:flex-start}}@media (width<=720px){.app-shell{background:#f8fafc}.app-container{padding:10px!important}.student-entry{max-width:none;padding-top:2px}.student-entry .mb-6{margin-bottom:14px}.student-entry h1{font-size:clamp(30px,11vw,42px);line-height:1.08}.student-entry .app-card{padding:18px!important}.student-shell{width:100%}.student-status-card{border-radius:18px;padding:12px;box-shadow:0 8px 20px #0f172a12}.student-status-top{flex-direction:row;align-items:center;gap:10px;margin-bottom:10px;padding-bottom:10px}.student-status-title h1{font-size:21px;line-height:1.15}.student-round-badge{gap:6px;padding:7px 10px;font-size:12px}.student-round-badge span{width:7px;height:7px;box-shadow:0 0 0 4px #dcfce7}.student-nickname-banner{border-radius:14px;grid-template-columns:auto minmax(0,1fr);gap:7px 10px;margin-bottom:8px;padding:11px 12px}.student-nickname-banner strong{justify-self:end;font-size:16px}.student-nickname-banner small{text-align:left;grid-column:1/-1;justify-self:start}.student-status-main-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin-bottom:8px}.student-money-box,.student-invest-box{border-radius:14px;min-height:98px;padding:12px}.student-status-label{font-size:11px}.student-money{font-size:clamp(24px,7.5vw,30px)}.student-bonus-text,.student-bar-note{font-size:11px}.student-invest-status-head{gap:3px;display:grid}.student-invest-count{font-size:clamp(20px,6.8vw,28px);line-height:1}.student-status-bar{height:9px;margin:9px 0 6px}.student-meta-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.student-status-metric{border-radius:12px;padding:9px 10px}.student-status-metric span{margin-bottom:3px;font-size:10px}.student-status-metric strong{font-size:13px;line-height:1.25}.student-layout{gap:12px;margin-top:12px}.student-main{gap:12px}.student-news-card{padding:14px 15px}.student-news-card h1{letter-spacing:0;font-size:20px}.student-result-grid{grid-template-columns:1fr;gap:8px}.student-result-line{grid-template-columns:minmax(86px,max-content) minmax(0,1fr);gap:10px;padding:11px 12px}.student-result-line dt{font-size:15px}.student-result-line dd span{font-size:19px}.student-result-line dd small{font-size:12px}.student-step-track{z-index:25;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;border:1px solid #dbeafe;border-radius:10px;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:0 -2px;padding:6px;display:grid;position:sticky;top:0;box-shadow:0 8px 22px #0f172a14}.student-track-part{display:contents}.student-track-line{display:none}.student-track-item{border-radius:8px;justify-content:center;gap:4px;min-width:0;padding:6px 4px;font-size:11px}.student-track-item.is-active{background:#eff6ff}.student-track-item span{width:20px;height:20px;font-size:10px}.student-track-label b{display:none}.student-track-label i{display:inline}.student-step-head{flex-wrap:wrap;align-items:flex-start;gap:8px;padding:11px 12px}.student-step-head h2{flex-basis:100%;order:3;font-size:16px;line-height:1.25}.student-step-check,.student-step-bonus{margin-left:auto;font-size:11px}.student-step-body{gap:12px;padding:13px}.student-inline-answer-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;font-size:13px;display:grid}.student-inline-answer-row span{grid-column:1/-1}.student-inline-answer-row button,.student-choice-row button{width:100%;min-height:44px;padding:9px 10px}.student-choice-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.student-equilibrium-group .student-choice-row{grid-template-columns:repeat(3,minmax(0,1fr))}.student-field-grid{grid-template-columns:1fr}.student-curve-layout{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.student-curve-options{display:contents}.student-curve-options button{grid-template-columns:30px minmax(0,1fr);gap:8px;min-height:76px;padding:10px}.student-curve-options button[data-move=D-L]{order:1}.student-curve-options button[data-move=D-R]{order:2}.student-curve-options button[data-move=S-L]{order:3}.student-curve-options button[data-move=S-R]{order:4}.student-curve-options button svg{width:26px;height:26px}.student-curve-options button strong{font-size:14px}.student-curve-options button small{font-size:11px}.student-ds-graph{aspect-ratio:1.05;order:-1;grid-column:1/-1;min-height:0}.student-ds-graph canvas{object-fit:contain;width:100%;height:100%}.student-invest-header{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;grid-template-columns:minmax(0,1fr) 74px;gap:4px 10px;padding:10px}.student-invest-news-reminder{padding:12px 13px}.student-invest-news-reminder strong{font-size:15px}.student-seed-value{font-size:19px}.student-invest-donut canvas{width:74px;height:74px}.student-limit-msg{grid-column:1/-1}.student-invest-grid{grid-template-columns:1fr;gap:9px}.student-invest-card{padding:11px}.student-invest-head{gap:10px}.student-invest-head h3{font-size:15px}.student-invest-head p{font-size:12px}.student-invest-head strong{text-align:right;min-width:44px;font-size:16px}.student-invest-stepper{grid-template-columns:38px minmax(0,1fr) 38px 44px;gap:8px}.student-invest-stepper button{width:38px;height:38px}.student-invest-submit{z-index:20;position:sticky;bottom:10px;box-shadow:0 14px 34px #2563eb3d}.bonus-burst-card{min-width:min(82vw,280px);padding:24px 22px 21px}.bonus-burst-card strong{font-size:38px}.bonus-burst-ring{width:min(78vw,300px)}.bonus-burst-sparks i{width:8px;height:8px}.dashboard-entry-grid,.dashboard-entry-split{grid-template-columns:1fr}.dashboard-topbar,.dashboard-class-card{flex-direction:column;align-items:stretch}.dashboard-round-actions{width:100%}.dashboard-class-row{grid-template-columns:minmax(0,1fr) auto}.dashboard-class-enter{grid-column:1/2}.dashboard-class-delete{grid-area:1/2/span 2}.dashboard-lobby-stats{grid-template-columns:1fr}.lobby-topbar{flex-direction:column}.lobby-brand{align-items:flex-start}.lobby-brand img{border-radius:14px;width:48px;height:48px;padding:8px}.lobby-top-actions{justify-content:flex-start;padding-top:0}.lobby-topbar h1{font-size:35px}.lobby-hero{padding:20px}.lobby-hero h2{font-size:26px}.lobby-hero-title{align-items:flex-start;gap:10px}.lobby-hero-title img{border-radius:10px;width:36px;height:36px;padding:6px}.lobby-class-stats,.lobby-class-actions{grid-template-columns:1fr}.lobby-qr-banner{align-items:center}.lobby-class-name{font-size:30px}.lobby-class-card,.lobby-create-card{border-radius:22px;min-height:0;padding:18px}.lobby-bottom-tools{gap:10px}.lobby-tool-card{flex-direction:column;align-items:stretch}.lobby-qr-modal-card{padding:22px 16px}.lobby-qr-large svg{width:min(72vw,260px);height:min(72vw,260px)}.class-run-topbar{flex-direction:column;align-items:stretch}.class-run-actions{justify-content:flex-start;padding-top:0}.class-run-topbar h1{font-size:clamp(28px,8vw,32px)}.class-hero-card{padding:16px}.class-hero-card h2{font-size:clamp(26px,8vw,30px)}.class-news{padding:14px;font-size:16px}.class-quick-stats,.class-primary-actions,.class-entry-zone,.class-tools-grid{grid-template-columns:1fr}.class-quick-stats div{min-height:auto;padding:12px}.class-quick-stats b{font-size:20px}.class-primary-actions .class-big-button{min-height:54px;font-size:16px}.class-progress-line{grid-template-columns:repeat(2,1fr)}.class-progress-line-thin{grid-template-columns:repeat(6,1fr);padding:20px 16px 10px}.class-progress-line-thin .class-progress-step span{font-size:9px}.class-guide-box-main{margin:8px 12px 12px}.class-stock-badges{gap:6px}.class-stock-badge{padding:6px 8px;font-size:11px}.class-answer-hero{padding:16px}.class-answer-loading{font-size:12px}.class-answer-explanation{gap:6px}.class-answer-explanation li{grid-template-columns:22px minmax(0,1fr);gap:10px;padding:8px 10px}.class-answer-explanation em{width:22px;height:22px;font-size:11px}.class-answer-explanation strong{font-size:13px}.class-curve-chip{border-radius:0}.class-return-section{gap:16px;padding:16px}.class-return-profit{gap:12px;padding:16px}.class-return-head h4{font-size:18px}.class-return-head p{font-size:13px}.class-return-summary-strip{grid-template-columns:1fr;gap:10px}.class-return-summary{border-radius:var(--result-radius-md);align-items:flex-start;gap:2px;min-height:auto;padding:14px 18px}.class-return-summary span{margin-bottom:2px;font-size:11px}.class-return-summary strong{font-size:14px}.class-return-summary .rate{font-size:24px}.class-return-grid{grid-template-columns:1fr;gap:12px}.class-return-card{border-radius:var(--result-radius-md);gap:0;min-height:auto;padding:17px 16px 16px}.class-return-card:before{width:100%}.class-return-card-top strong{font-size:15px}.class-return-card-bottom i{border-radius:var(--result-radius-sm);width:32px;height:32px;font-size:14px}.class-return-explain p{font-size:16px}.class-return-card-bottom em{font-size:12px}.class-return-card-bottom b{font-size:22px}.class-reveal-panel{min-height:176px}.class-reveal-cover{border-radius:0 0 var(--result-radius-lg) var(--result-radius-lg);padding:20px;inset:0}.class-reveal-cover strong{font-size:15px}.class-reveal-cover span{font-size:13px}.class-rank-list{gap:6px;padding:14px}.class-rank-row{border-radius:var(--result-radius-sm);min-height:44px;padding:8px 10px}.class-rank-place strong{border-radius:999px;width:22px;height:22px;font-size:11px}.rank-move{padding:3px 7px;font-size:11px}.class-rank-name,.class-rank-score,.class-rank-total-accuracy,.class-rank-bonus,.class-rank-round-return,.class-rank-money strong{font-size:13px}.class-rank-money{flex-wrap:wrap;gap:5px 8px}.class-rank-money span{font-size:12px}}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}
