/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@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-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y: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-leading:initial;--tw-font-weight:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--text-xs:13px;--text-xs--line-height:calc(1 / .75);--text-sm:14px;--text-sm--line-height:calc(1.25 / .875);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--radius-md:12px;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-brand-50:#eef4fb;--color-brand-100:#d9e6f6;--color-brand-200:#b6cdec;--color-brand-300:#86abdd;--color-brand-400:#5585c8;--color-brand-500:#2f66ab;--color-brand-600:#1f4e79;--color-brand-700:#173c5e;--color-brand-800:#102b44;--color-bg:#f6f8fa;--color-elev:#fff;--color-subtle:#eef1f5;--color-ink:#14181e;--color-ink2:#4c5561;--color-ink3:#6b7683;--color-line:#e2e6ec;--color-line2:#cbd2db;--color-accent:#1f4e79;--color-accentink:#fff;--color-accentsoft:#eef4fb;--color-ok:#1a7f45;--color-oksoft:#e7f6ed;--color-bad:#c0392b;--color-badsoft:#fdecea;--color-warn:#a86400;--color-warnsoft:#fff5e5;--text-body:15.5px;--text-h3:16px;--text-h2:clamp(17px, 2.4vw, 20px);--text-h1:clamp(21px, 3.4vw, 26px);--text-display:clamp(24px, 4.4vw, 32px);--radius-card:16px;--shadow-1:0 1px 2px #14181e0a, 0 1px 3px #14181e0f;--shadow-2:0 2px 6px #14181e0f, 0 6px 16px #14181e0f;--shadow-3:0 8px 28px #14181e1a;--ease-soft:cubic-bezier(.22, .61, .36, 1)}}@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,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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;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:where(:not(iframe)){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}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--color-bg);color:var(--color-ink);font-family:var(--font-sans);font-size:var(--text-body);transition:background .22s var(--ease-soft), color .22s var(--ease-soft);margin:0;line-height:1.75}img{max-width:100%;height:auto}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}h1{font-size:var(--text-h1);letter-spacing:-.01em;line-height:1.35}h2{font-size:var(--text-h2);letter-spacing:-.005em}h3{font-size:var(--text-h3)}::selection{background:var(--color-brand-200);color:#14181e}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}}@layer components{.wrap{padding-inline:calc(var(--spacing) * 5);padding-bottom:calc(var(--spacing) * 12);max-width:820px;margin-inline:auto}header.top{background:var(--color-elev);border-bottom:1px solid var(--color-line);z-index:40;position:sticky;top:0}header.top .wrap{padding-top:calc(var(--spacing) * 4);padding-bottom:calc(var(--spacing) * 3)}.brand-row{justify-content:space-between;align-items:flex-start;gap:calc(var(--spacing) * 3);display:flex}.crumb{margin-bottom:var(--spacing);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--color-ink3)}.crumb a{color:var(--color-ink3)}.crumb a:hover{color:var(--color-accent)}h1{margin-bottom:var(--spacing)}.meta{margin-top:var(--spacing);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--color-ink3)}.theme-btn{cursor:pointer;--tw-leading:1;border:1px solid var(--color-line);background:var(--color-elev);width:38px;height:38px;color:var(--color-ink2);transition:transform .22s var(--ease-soft), border-color .22s var(--ease-soft);border-radius:3.40282e38px;flex-shrink:0;place-items:center;font-size:17px;line-height:1;display:grid}.theme-btn:hover{border-color:var(--color-line2);transform:rotate(-18deg)scale(1.06)}main{padding-top:calc(var(--spacing) * 5)}h2{margin-top:calc(var(--spacing) * 8);margin-bottom:calc(var(--spacing) * 3)}h3{margin-top:calc(var(--spacing) * 5);margin-bottom:calc(var(--spacing) * 2)}p{margin-block:calc(var(--spacing) * 3)}.card{margin-block:calc(var(--spacing) * 4);border-radius:var(--radius-card);padding:calc(var(--spacing) * 5);background:var(--color-elev);border:1px solid var(--color-line);--tw-shadow:0 1px 2px var(--tw-shadow-color,#14181e0a), 0 1px 3px var(--tw-shadow-color,#14181e0f);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transition:box-shadow .22s var(--ease-soft), transform .22s var(--ease-soft)}.card.hoverable:hover{--tw-shadow:0 2px 6px var(--tw-shadow-color,#14181e0f), 0 6px 16px var(--tw-shadow-color,#14181e0f);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);transform:translateY(-2px)}.note{border-radius:var(--radius-md);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 3);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));background:var(--color-accentsoft);border:1px solid var(--color-line2);color:var(--color-ink2)}.grid{gap:calc(var(--spacing) * 3);grid-template-columns:repeat(1,minmax(0,1fr));display:grid}@media (min-width:660px){.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}}.btn,button.btn{min-height:calc(var(--spacing) * 11);cursor:pointer;justify-content:center;align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius-md);padding-inline:calc(var(--spacing) * 5);padding-block:calc(var(--spacing) * 2.5);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);background:var(--color-accent);color:var(--color-accentink);font-size:var(--text-body);transition:transform .22s var(--ease-soft), box-shadow .22s var(--ease-soft), opacity .22s var(--ease-soft);border:1px solid #0000;display:inline-flex}.btn:hover{--tw-shadow:0 2px 6px var(--tw-shadow-color,#14181e0f), 0 6px 16px var(--tw-shadow-color,#14181e0f);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);text-decoration:none;transform:translateY(-1px)}.btn:active{transform:translateY(0)scale(.99)}.btn.ghost{background:var(--color-elev);color:var(--color-accent);border-color:var(--color-line2)}.btn.ghost:hover{background:var(--color-accentsoft)}.btn.soft{background:var(--color-accentsoft);color:var(--color-accent);border-color:#0000}.btn[disabled]{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.btn.block{width:100%}.toolbar{margin-block:calc(var(--spacing) * 4);align-items:center;gap:calc(var(--spacing) * 3);flex-wrap:wrap;display:flex}.tag{margin-right:calc(var(--spacing) * 2);margin-bottom:var(--spacing);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * .5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));background:var(--color-accentsoft);color:var(--color-accent);border-radius:3.40282e38px;display:inline-block}.badge{padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * .5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));border-radius:3.40282e38px;display:inline-block}.badge.ok{background:var(--color-oksoft);color:var(--color-ok)}.badge.bad{background:var(--color-badsoft);color:var(--color-bad)}.badge.warn{background:var(--color-warnsoft);color:var(--color-warn)}table{margin-block:calc(var(--spacing) * 4);border-collapse:collapse;width:100%;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}th,td{padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2.5);text-align:left;vertical-align:top;border:1px solid var(--color-line);word-break:break-word}th{background:var(--color-subtle);color:var(--color-ink);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}tbody tr:hover{background:var(--color-subtle)}.mode-card{border-radius:var(--radius-card);padding:calc(var(--spacing) * 5);--tw-shadow:0 1px 2px var(--tw-shadow-color,#14181e0a), 0 1px 3px var(--tw-shadow-color,#14181e0f);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);background:var(--color-elev);border:1px solid var(--color-line);color:inherit;transition:box-shadow .22s var(--ease-soft), transform .22s var(--ease-soft), border-color .22s var(--ease-soft);text-decoration-line:none;display:block;position:relative;overflow:hidden}.mode-card:hover{--tw-shadow:0 2px 6px var(--tw-shadow-color,#14181e0f), 0 6px 16px var(--tw-shadow-color,#14181e0f);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);border-color:var(--color-accent);text-decoration:none;transform:translateY(-2px)}.mode-card .mc-title{align-items:center;gap:calc(var(--spacing) * 2);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);font-size:var(--text-h3);display:flex}.mode-card .mc-desc{margin-top:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--color-ink2)}.mode-card .mc-icon{background:var(--color-accentsoft);width:34px;height:34px;color:var(--color-accent);border-radius:10px;place-items:center;font-size:17px;display:grid}.mode-card:after{content:"→";color:var(--color-ink3);transition:transform .22s var(--ease-soft), color .22s var(--ease-soft);position:absolute;top:20px;right:20px}.mode-card:hover:after{color:var(--color-accent);transform:translate(4px)}.volgrid{margin-block:calc(var(--spacing) * 3);margin-bottom:calc(var(--spacing) * 5);gap:calc(var(--spacing) * 2);grid-template-columns:repeat(1,minmax(0,1fr));display:grid}@media (min-width:560px){.volgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}.volgrid .btn{text-align:left;justify-content:space-between}.volgrid .btn .vm{color:var(--color-ink3);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.quiz-bar{margin-bottom:calc(var(--spacing) * 4);align-items:center;gap:calc(var(--spacing) * 4);border-radius:var(--radius-card);padding-inline:calc(var(--spacing) * 5);padding-block:calc(var(--spacing) * 4);background:var(--color-elev);border:1px solid var(--color-line);--tw-shadow:0 1px 2px var(--tw-shadow-color,#14181e0a), 0 1px 3px var(--tw-shadow-color,#14181e0f);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);flex-wrap:wrap;display:flex}.ring{background:var(--color-subtle);border-radius:50%;flex-shrink:0}.ring circle{stroke:var(--color-line2)}.ring #ringFg{stroke:var(--color-accent)}.ring circle{transition:stroke-dashoffset .4s var(--ease-soft)}.quiz-meta{flex:1;min-width:160px}.quiz-meta .qm-line{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--color-ink3);justify-content:space-between;display:flex}.quiz-meta .qm-num{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);font-size:var(--text-h2);letter-spacing:-.01em}.timer{border-radius:var(--radius-md);padding-inline:calc(var(--spacing) * 3.5);padding-block:calc(var(--spacing) * 1.5);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);font-size:var(--text-h2);font-variant-numeric:tabular-nums;background:var(--color-subtle);color:var(--color-ink)}.timer.warn{background:var(--color-warnsoft);color:var(--color-warn)}.timer.danger{background:var(--color-badsoft);color:var(--color-bad);animation:1.6s infinite pulse}@keyframes pulse{50%{opacity:.62}}.q{border-radius:var(--radius-card);padding:calc(var(--spacing) * 5);background:var(--color-elev);border:1px solid var(--color-line);--tw-shadow:0 1px 2px var(--tw-shadow-color,#14181e0a), 0 1px 3px var(--tw-shadow-color,#14181e0f);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);animation:rise .28s var(--ease-soft) both}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.q .stem{margin-bottom:calc(var(--spacing) * 4);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);font-size:16.5px;line-height:1.7}.q .qtag{margin-bottom:calc(var(--spacing) * 3)}.opt{margin-block:calc(var(--spacing) * 2);cursor:pointer;align-items:flex-start;gap:calc(var(--spacing) * 3);border-radius:var(--radius-md);padding-inline:calc(var(--spacing) * 3.5);padding-block:calc(var(--spacing) * 3);border:1px solid var(--color-line);background:var(--color-elev);transition:background .22s var(--ease-soft), border-color .22s var(--ease-soft), transform .22s var(--ease-soft);display:flex}.opt:hover{background:var(--color-subtle);border-color:var(--color-line2)}.opt .k{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);border:1px solid var(--color-line2);height:26px;color:var(--color-ink2);transition:all .22s var(--ease-soft);border-radius:3.40282e38px;flex:0 0 26px;place-items:center;display:grid}.opt.sel{border-color:var(--color-accent);background:var(--color-accentsoft)}.opt.sel .k{background:var(--color-accent);color:var(--color-accentink);border-color:var(--color-accent)}.opt.ok{border-color:var(--color-ok);background:var(--color-oksoft);animation:flash .5s var(--ease-soft)}.opt.ok .k{background:var(--color-ok);color:#fff;border-color:var(--color-ok)}.opt.bad{border-color:var(--color-bad);background:var(--color-badsoft);animation:shake .34s var(--ease-soft)}.opt.bad .k{background:var(--color-bad);color:#fff;border-color:var(--color-bad)}@keyframes flash{0%{transform:scale(1)}45%{transform:scale(1.015)}to{transform:scale(1)}}@keyframes shake{25%{transform:translate(-4px)}60%{transform:translate(3px)}to{transform:none}}.opt[data-disabled="1"]{cursor:default}.fb{margin-top:calc(var(--spacing) * 4);border-radius:var(--radius-md);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 3);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));animation:rise .24s var(--ease-soft) both;display:none}.fb.show{display:block}.fb.ok{background:var(--color-oksoft);color:var(--color-ok)}.fb.bad{background:var(--color-badsoft);color:var(--color-bad)}.kbd-hint{color:var(--color-ink3);margin-top:calc(var(--spacing) * 3);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}kbd{background:var(--color-subtle);border:1px solid var(--color-line);padding-inline:calc(var(--spacing) * 1.5);color:var(--color-ink2);border-bottom-width:2px;border-radius:5px;padding-block:1px;font-family:inherit;font-size:12px}.score-hero{padding-inline:calc(var(--spacing) * 5);padding-block:calc(var(--spacing) * 6);text-align:center}.score-hero .num{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold);letter-spacing:-.02em;font-size:clamp(40px,9vw,60px);line-height:1}.score-hero .num.pass{color:var(--color-ok)}.score-hero .num.fail{color:var(--color-bad)}.score-hero .sub{color:var(--color-ink3);margin-top:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.bar{margin-block:calc(var(--spacing) * 2);background:var(--color-subtle);border-radius:3.40282e38px;height:8px;overflow:hidden}.bar>i{background:var(--color-accent);height:100%;transition:width .5s var(--ease-soft);border-radius:3.40282e38px;display:block}.bar>i.ok{background:var(--color-ok)}.bar>i.bad{background:var(--color-bad)}.bar>i.warn{background:var(--color-warn)}.diag-row{padding-block:calc(var(--spacing) * 3);border-bottom:1px solid var(--color-line);grid-template-columns:1fr auto;align-items:center;gap:8px 16px;display:grid}.diag-row:last-child{border-bottom:0}.diag-row .dn{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.diag-row .dv{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--color-ink3);font-variant-numeric:tabular-nums}.diag-row .dbar{grid-column:1/-1}ul,ol{margin-block:calc(var(--spacing) * 3);padding-left:calc(var(--spacing) * 5)}li{margin-block:calc(var(--spacing) * 2)}p.pre{white-space:pre-wrap;word-break:break-word;line-height:1.85;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--color-ink2)}details{margin-top:calc(var(--spacing) * 3)}details>summary{cursor:pointer;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--color-accent)}details h3{margin-top:calc(var(--spacing) * 3);margin-bottom:var(--spacing);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--color-accent)}input[type=search]{min-height:calc(var(--spacing) * 11);border-radius:var(--radius-md);padding-inline:calc(var(--spacing) * 3.5);padding-block:calc(var(--spacing) * 2.5);border:1px solid var(--color-line);background:var(--color-elev);color:var(--color-ink);font-size:var(--text-body)}input[type=search]::placeholder{color:var(--color-ink3)}input[type=search]:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accentsoft);outline:none}footer{margin-top:calc(var(--spacing) * 10);padding-top:calc(var(--spacing) * 5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));border-top:1px solid var(--color-line);color:var(--color-ink3)}footer img.qr{margin-block:calc(var(--spacing) * 3);border:1px solid var(--color-line);border-radius:var(--radius-md);background:#fff;width:170px;max-width:60%;height:auto;padding:6px;display:block}.hero{background:linear-gradient(150deg, var(--hero-c1,#173c5e) 0%, var(--hero-c2,#1f4e79) 46%, var(--hero-c3,#2f66ab) 100%);color:#fff;border-radius:24px;margin:10px 0 26px;padding:42px 30px 34px;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;background:radial-gradient(620px 320px at 88% -12%,#86abdd61,#0000 70%),radial-gradient(420px 260px at 4% 112%,#2f66ab80,#0000 70%);position:absolute;inset:0}.hero:after{content:"";opacity:.16;pointer-events:none;background-image:linear-gradient(#ffffff2e 1px,#0000 1px),linear-gradient(90deg,#ffffff2e 1px,#0000 1px);background-size:46px 46px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 76%);mask-image:linear-gradient(#000,#0000 76%)}.hero>*{z-index:1;position:relative}.hero-badge{letter-spacing:.09em;color:#e8f0fa;background:#ffffff24;border:1px solid #ffffff38;border-radius:999px;align-items:center;gap:8px;margin-bottom:18px;padding:6px 14px;font-size:12.5px;display:inline-flex}.hero-title{letter-spacing:-.022em;color:#fff;margin:0 0 12px;font-size:clamp(27px,5.4vw,42px);font-weight:700;line-height:1.2}.hero-title .grad{color:#0000;background:linear-gradient(92deg,#9dc3ef 0%,#eaf3fc 52%,#b6cdec 100%);-webkit-background-clip:text;background-clip:text}.hero-sub{color:#e8f0fad6;max-width:54ch;margin:0 0 24px;font-size:15.5px;line-height:1.7}.hero-actions{flex-wrap:wrap;gap:12px;margin-bottom:26px;display:flex}.btn.on-dark{color:#173c5e;background:#fff}.btn.on-dark:hover{background:#eef4fb}.btn.on-dark-ghost{color:#fff;background:#ffffff1f;border-color:#ffffff52}.btn.on-dark-ghost:hover{background:#fff3}.btn.lg{padding:13px 24px;font-size:16px}.stat-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}@media (min-width:640px){.stat-grid{grid-template-columns:repeat(4,1fr)}}.stat{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff1a;border:1px solid #ffffff2b;border-radius:14px;padding:14px 16px}.stat b{letter-spacing:-.02em;color:#fff;font-size:clamp(22px,3.4vw,28px);font-weight:700;line-height:1.1;display:block}.stat span{color:#e8f0fabd;margin-top:4px;font-size:12.5px;display:block}.hero-sm{border-radius:20px;margin:4px 0 20px;padding:26px 24px 22px}.hero-sm .hero-title{margin-bottom:8px;font-size:clamp(21px,3.6vw,28px)}.hero-sm .hero-sub{margin-bottom:16px;font-size:14.5px}.hero-sm .stat b{font-size:clamp(19px,2.6vw,23px)}.mode-card{padding:22px}.mode-card .mc-icon{background:linear-gradient(140deg, var(--icon-c1,var(--color-brand-600)), var(--icon-c2,var(--color-brand-400)));color:#fff;border-radius:13px;width:44px;height:44px;margin-bottom:14px;box-shadow:0 8px 18px -8px #1f4e798c}.mode-card .mc-icon svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.mode-card .mc-title{font-size:16.5px}.mode-card .mc-desc{line-height:1.68}.sec-title{font-size:var(--text-h2);align-items:center;gap:10px;margin:34px 0 14px;font-weight:600;display:flex}.sec-title:before{content:"";background:linear-gradient(180deg, var(--color-brand-500), var(--color-brand-300));border-radius:2px;width:4px;height:20px}.reveal{animation:revealUp .5s var(--ease-soft) both}@keyframes revealUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.reveal-1{animation-delay:40ms}.reveal-2{animation-delay:.1s}.reveal-3{animation-delay:.16s}.reveal-4{animation-delay:.22s}.reveal-5{animation-delay:.28s}.reveal-6{animation-delay:.34s}html[data-theme=dark] .mode-card .mc-icon{box-shadow:0 8px 20px -8px #000000a6}@media (max-width:640px){.wrap{padding-inline:calc(var(--spacing) * 4);padding-bottom:calc(var(--spacing) * 10)}.quiz-bar{gap:calc(var(--spacing) * 3);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 3)}.q{padding:calc(var(--spacing) * 4)}table{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}th,td{padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1.5)}}@media (max-width:560px){.card table,main>table{-webkit-overflow-scrolling:touch;width:100%;display:block;overflow-x:auto}}@media (max-width:420px){.opt{padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2.5)}.opt .k{flex-basis:24px;height:24px}}@media print{header.top,.theme-btn,.toolbar{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}}@layer utilities{.grid{display:grid}.hidden{display:none}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + 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)}}html[data-theme=dark]{--hero-c1:#132238;--hero-c2:#1b3454;--hero-c3:#24476f;--icon-c1:#2f66ab;--icon-c2:#5f95d0;--color-bg:#0f1216;--color-elev:#171b21;--color-subtle:#1e232a;--color-ink:#e8ecf1;--color-ink2:#aab3bf;--color-ink3:#8b95a2;--color-line:#262c34;--color-line2:#333b45;--color-accent:#6fa3e0;--color-accentink:#0f1216;--color-accentsoft:#1b2530;--color-ok:#4ec98a;--color-oksoft:#14251c;--color-bad:#ef7b6d;--color-badsoft:#2a1a18;--color-warn:#e0a54a;--color-warnsoft:#2a2113;--shadow-1:0 1px 2px #0000004d;--shadow-2:0 2px 8px #00000059;--shadow-3:0 10px 32px #00000073}html[data-theme=dark] .hero{box-shadow:0 20px 44px -26px #000000f2,inset 0 1px #ffffff12}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))) and (color:color-mix(in srgb, red, blue)){header.top{background:color-mix(in srgb, var(--color-elev) 88%, transparent);-webkit-backdrop-filter:saturate(180%)blur(12px);backdrop-filter:saturate(180%)blur(12px)}}html[data-theme=light]{--color-bg:#f6f8fa;--color-elev:#fff;--color-subtle:#eef1f5;--color-ink:#14181e;--color-ink2:#4c5561;--color-ink3:#6b7683;--color-line:#e2e6ec;--color-line2:#cbd2db;--color-accent:#1f4e79;--color-accentink:#fff;--color-accentsoft:#eef4fb;--color-ok:#1a7f45;--color-oksoft:#e7f6ed;--color-bad:#c0392b;--color-badsoft:#fdecea;--color-warn:#a86400;--color-warnsoft:#fff5e5;--hero-c1:#173c5e;--hero-c2:#1f4e79;--hero-c3:#2f66ab;--icon-c1:#1f4e79;--icon-c2:#5585c8}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{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-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@keyframes pulse{50%{opacity:.5}}