@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-variable-Dx4kXJAl.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--navy:#0a1b4d;--navy-med:#163c8d;--navy-light:#1e3a7a;--navy-hover:#0f2363;--blue:#1e5ad7;--blue-dark:#1341b8;--bg:#f0f4fa;--surface:#fff;--surface-alt:#fafbfd;--hover-bg:#f4f7fc;--selected-bg:#e8effd;--border:#dde4f0;--text:#0f172a;--muted:#5a6c8a;--sidebar-w:256px;--sidebar-collapsed-w:62px;--shadow-xs:0 1px 3px #0a1b4d0f;--shadow-sm:0 2px 10px #0a1b4d14, 0 1px 3px #0a1b4d0a;--shadow-md:0 8px 30px #0a1b4d1f, 0 2px 8px #0a1b4d0f;--shadow-lg:0 20px 60px #0a1b4d29, 0 8px 24px #0a1b4d14;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:2rem;--space-8:2.25rem;--space-9:2.5rem;--space-10:3rem;--space-12:4rem;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-pill:999px;--teal:#0e7c86;--teal-soft:#e6f4f5;--fc-accent:#7c3aed;--fc-accent-deep:#5b21b6;--fc-accent-soft:#7c3aed1f;--control-h:38px;--control-h-sm:30px;--icon-sm:14px;--icon-md:16px;--icon-lg:20px;--focus-ring:0 0 0 3px #1e5ad752;--accent-text:var(--navy);--accent-border:var(--navy);--accent-fill:var(--navy);--accent-fill-hover:var(--navy-hover);--on-accent:#fff;--action-fill:var(--blue);--action-fill-hover:var(--blue-dark);--icon-tile-bg:#eef2ff;--icon-tile-fg:var(--navy);--icon-tile-ring:#1e5ad71f;--border-strong:#7d8ca8;--disabled-fg:#64718c;--disabled-bg:var(--surface-alt);--disabled-border:var(--border);--success-bg:#f0fdf4;--success-fg:#15803d;--success-border:#86efac;--warning-bg:#fffbeb;--warning-fg:#b45309;--warning-border:#fcd34d;--error-bg:#fef2f2;--error-fg:#b91c1c;--error-border:#fecaca;--info-bg:var(--selected-bg);--info-fg:var(--navy);--info-border:#bfd3f7;--topbar-h:60px;--content-max:none;--page-pad:2rem}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:var(--radius-sm)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html,body{max-width:100%;overflow-x:clip}body{background:var(--bg);color:var(--text);font-family:Inter,system-ui,sans-serif}.shell{min-height:100vh;display:flex}.sidebar{width:var(--sidebar-w);background:var(--navy);z-index:200;scrollbar-width:thin;scrollbar-color:#fff3 transparent;border-right:1px solid #ffffff12;flex-direction:column;transition:transform .26s cubic-bezier(.4,0,.2,1),width .22s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;bottom:0;left:0;overflow:hidden auto;transform:translate(-100%)}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:0 0}.sidebar::-webkit-scrollbar-thumb{border-radius:var(--radius-pill);background:#ffffff29}.sidebar::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.sidebar.open{transform:translate(0)}.sidebar-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:199;opacity:0;pointer-events:none;background:#080f2880;transition:opacity .26s;position:fixed;inset:0}.sidebar-backdrop.visible{opacity:1;pointer-events:auto}@media (width>=900px){.admin-shell .sidebar{transform:none}.admin-shell .main{margin-left:var(--sidebar-w)}.admin-shell .sidebar-backdrop{display:none!important}.admin-hamburger{display:none}}.sidebar-logo{text-align:center;border-bottom:1px solid #ffffff14;flex-direction:column;align-items:center;padding:1.1rem 1.25rem 1rem;display:flex}.sidebar-logo-img{object-fit:contain;filter:brightness(0)invert();background:0 0;width:100%;max-width:86px;padding:0}.sidebar.collapsed .sidebar-logo-img{max-width:30px;padding:0}.logo-name{color:#fff;letter-spacing:-.02em;font-size:1.35rem;font-weight:800;line-height:1}.logo-name span{color:#ffffff73;font-weight:700}.logo-sub{color:#fff6;text-transform:uppercase;letter-spacing:.1em;margin-top:.35rem;font-size:.62rem;line-height:1.4}.sidebar-section-title{text-transform:uppercase;letter-spacing:.11em;color:#ffffff57;padding:1rem 1.5rem .35rem;font-size:.64rem;font-weight:700}.sidebar-nav{flex-direction:column;flex-shrink:0;gap:.1rem;padding-bottom:.35rem;display:flex}.nav-item{min-height:var(--control-h);color:#ffffff9e;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:9px;align-items:center;gap:.7rem;width:calc(100% - 1.25rem);margin:0 .625rem;padding:.5rem .8rem;font-family:inherit;font-size:.86rem;font-weight:500;transition:background .14s,color .14s;display:flex;position:relative}.nav-item:hover{color:#fff;background:#ffffff12}.nav-item:focus-visible{outline-offset:-2px;outline:2px solid #ffffffbf}.nav-item.active{color:#fff;background:#ffffff1f;font-weight:600}.nav-item.active:before{content:"";background:var(--teal);border-radius:0 3px 3px 0;width:3px;height:1.1rem;position:absolute;top:50%;left:0;transform:translateY(-50%)}.nav-icon{flex-shrink:0;justify-content:center;align-items:center;width:1.25rem;display:inline-flex}.nav-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.nav-badge{color:#ffffffb8;border-radius:var(--radius-pill);background:#ffffff24;flex-shrink:0;margin-left:auto;padding:.1rem .45rem;font-size:.64rem;font-weight:600}.sidebar-footer{border-top:1px solid #ffffff14;margin-top:auto;padding:.85rem 1.25rem 1rem}.user-avatar{background:var(--blue);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.8rem;font-weight:700;display:flex}.sidebar-user{align-items:center;gap:.65rem;display:flex}.user-info{flex:1;min-width:0}.user-name{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:.82rem;font-weight:600;overflow:hidden}.user-year{color:#ffffff73;font-size:.7rem}.sign-out-btn{color:#ffffff80;cursor:pointer;background:0 0;border:none;align-items:center;gap:.4rem;padding:.3rem 0;font-family:inherit;font-size:.76rem;display:flex}.sign-out-btn:hover{color:#fff}.icon svg{width:100%;height:100%}.hamburger-btn{cursor:pointer;color:var(--muted);border-radius:var(--radius-sm);background:0 0;border:none;flex-shrink:0;align-items:center;padding:.4rem;transition:background .15s,color .15s;display:inline-flex}.hamburger-btn:hover{background:var(--hover-bg);color:var(--text)}.main{flex-direction:column;flex:1;min-width:0;min-height:100vh;margin-left:0;display:flex}.topbar{background:var(--surface);border-bottom:1px solid var(--border);padding:0 var(--page-pad);height:var(--topbar-h);z-index:50;justify-content:space-between;align-items:center;gap:1rem;display:flex;position:sticky;top:0}.topbar-title{color:var(--text);letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.98rem;font-weight:650;overflow:hidden}.topbar-left{align-items:center;gap:.75rem;min-width:0;display:flex}.topbar-actions{flex-shrink:0;align-items:center;gap:.6rem;display:flex}.topbar .yumd-logo{flex-shrink:0}.btn-primary{background:var(--action-fill);color:var(--on-accent);min-height:var(--control-h);cursor:pointer;border:none;border-radius:9px;justify-content:center;align-items:center;gap:.45rem;padding:.5rem 1.1rem;font-family:inherit;font-size:.875rem;font-weight:600;transition:background .16s,box-shadow .16s;display:inline-flex}.btn-primary:hover:not(:disabled){background:var(--action-fill-hover)}.btn-primary:disabled{background:var(--disabled-bg);color:var(--disabled-fg);box-shadow:inset 0 0 0 1px var(--disabled-border);cursor:not-allowed}.btn-secondary{background:var(--surface);color:var(--text);border:1px solid var(--border-strong);min-height:var(--control-h);cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:.45rem;padding:.45rem 1rem;font-family:inherit;font-size:.875rem;font-weight:500;transition:background .15s,border-color .15s;display:inline-flex}.btn-secondary:hover{background:var(--hover-bg);border-color:var(--accent-border)}.page-content{width:100%;max-width:var(--content-max);padding:1.5rem var(--page-pad) 3rem;flex:1;margin-inline:auto}@media (width<=900px){:root{--page-pad:1.25rem}}@media (width<=560px){:root{--page-pad:1rem}.topbar{gap:.5rem}}.stats-row{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1rem;margin-bottom:1.75rem;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-xs);border-radius:14px;padding:1.25rem 1.5rem;transition:box-shadow .2s,transform .2s}.stat-card:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.stat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:600}.stat-value{color:var(--text);margin:.25rem 0 0;font-size:2rem;font-weight:700;line-height:1}.stat-sub{color:var(--muted);margin-top:.3rem;font-size:.75rem}.adm-ov-stats{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.adm-ov-icon{border-radius:9px;justify-content:center;align-items:center;width:34px;height:34px;margin-bottom:.6rem;display:flex}.adm-ov-icon-amber{color:#b45309;background:#fef3c7}.adm-ov-icon-blue{color:#1d4ed8;background:#dbeafe}.adm-ov-icon-green{color:#15803d;background:#dcfce7}.adm-ov-icon-purple{color:#6d28d9;background:#ede9fe}html.dark .adm-ov-icon-amber{color:#fbbf24;background:#f59e0b26}html.dark .adm-ov-icon-blue{color:#60a5fa;background:#3b82f626}html.dark .adm-ov-icon-green{color:#4ade80;background:#22c55e26}html.dark .adm-ov-icon-purple{color:#a78bfa;background:#8b5cf626}.adm-ov-grid{grid-template-columns:1.4fr 1fr;align-items:start;gap:1.25rem;display:grid}@media (width<=900px){.adm-ov-grid{grid-template-columns:1fr}}.adm-ov-note{color:var(--muted);padding:0 1.5rem 1rem;font-size:.82rem;line-height:1.5}.adm-ov-icon-teal{color:#0f766e;background:#ccfbf1}html.dark .adm-ov-icon-teal{color:#2dd4bf;background:#14b8a626}.an-section{margin-top:1.75rem}.an-grid{grid-template-columns:1fr 1fr;align-items:start;gap:1.25rem;display:grid}@media (width<=900px){.an-grid{grid-template-columns:1fr}}.an-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.an-toolbar-title{flex-wrap:wrap;align-items:baseline;gap:.6rem;display:flex}.an-toolbar-title h2{margin:0}.an-toolbar-sub{color:var(--muted);font-size:.8rem}.an-heading{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin:1.9rem 0 .75rem;font-size:.78rem;font-weight:700}.an-updating{opacity:.6;pointer-events:none;transition:opacity .15s}.an-range{background:var(--surface-alt,#f1f5f9);border:1px solid var(--border);border-radius:9px;padding:2px;display:inline-flex}.an-range-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:7px;padding:.35rem .8rem;font-size:.8rem;font-weight:600;transition:background .15s,color .15s}.an-range-btn.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-xs)}.an-range-btn:disabled{cursor:default}html.dark .an-range{background:#ffffff0d}.an-chart{align-items:flex-end;gap:4px;height:150px;padding:1.4rem 1.25rem .5rem;display:flex}.an-bar-col{cursor:pointer;flex-direction:column;flex:1 1 0;min-width:0;height:100%;display:flex;position:relative}.an-bar-area{flex-direction:column;flex:1;justify-content:flex-end;width:100%;display:flex}.an-bar-fill{width:100%;min-height:2px;transition:filter .15s;position:relative}.an-bar-segs{border-radius:3px 3px 0 0;flex-direction:column-reverse;display:flex;position:absolute;inset:0;overflow:hidden}.an-bar-seg{opacity:.85;width:100%}.an-bar-col:hover .an-bar-fill,.an-bar-col.active .an-bar-fill{filter:brightness(1.08)saturate(1.1)}.an-bar-col.active .an-bar-seg{opacity:1}.an-bar-val{color:var(--muted);white-space:nowrap;font-size:.6rem;font-weight:600;position:absolute;top:-15px;left:50%;transform:translate(-50%)}.an-bar-x{color:var(--muted);text-align:center;white-space:nowrap;text-overflow:ellipsis;margin-top:4px;font-size:.58rem;overflow:hidden}.an-legend{flex-wrap:wrap;gap:1rem;padding:0 1.25rem .75rem;display:flex}.an-legend-item{color:var(--muted);align-items:center;gap:.4rem;font-size:.74rem;display:inline-flex}.an-legend-item i{border-radius:3px;width:11px;height:11px;display:inline-block}.an-details{border-top:1px solid var(--border);max-height:230px;overflow-y:auto}.an-header-actions{align-items:center;gap:.6rem;display:flex}.an-year-select{padding:.35rem .6rem;font-size:.8rem}.an-csv-btn{background:var(--surface-alt,#f1f5f9);border:1px solid var(--border);color:var(--muted);cursor:pointer;border-radius:8px;align-items:center;gap:.35rem;padding:.35rem .65rem;font-size:.74rem;font-weight:600;transition:color .15s,background .15s;display:inline-flex}.an-csv-btn:hover{color:var(--text)}html.dark .an-csv-btn{background:#ffffff0d}.an-year-group+.an-year-group{border-top:6px solid var(--surface-alt,#f1f5f9)}html.dark .an-year-group+.an-year-group{border-top-color:#ffffff0a}.an-year-label{color:var(--text);align-items:baseline;gap:.5rem;padding:.7rem 1.25rem .3rem;font-size:.82rem;font-weight:700;display:flex}.an-year-count{color:var(--muted);font-size:.72rem;font-weight:500}.an-table{border-collapse:collapse;width:100%;font-size:.82rem}.an-table th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);border-bottom:1px solid var(--border);padding:.5rem 1.25rem;font-size:.68rem;font-weight:700}.an-table td{border-bottom:1px solid var(--border);color:var(--text);padding:.55rem 1.25rem}.an-table tr:last-child td{border-bottom:none}.an-rank{background:var(--surface-alt,#f8fafc);border:1px solid var(--border);width:22px;height:22px;color:var(--muted);border-radius:6px;justify-content:center;align-items:center;font-size:.72rem;font-weight:700;display:inline-flex}.browser-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-xs);border-radius:14px;overflow:hidden}.browser-card-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.9rem 1.25rem;display:flex}.browser-card-header h2{font-size:.95rem;font-weight:600}.year-tabs{flex-wrap:wrap;gap:.35rem;display:flex}.year-tab{border:1px solid var(--border);background:var(--surface);cursor:pointer;color:var(--muted);border-radius:20px;padding:.28rem .7rem;font-size:.78rem;font-weight:500;transition:all .15s}.year-tab:hover{border-color:var(--accent-border);color:var(--accent-text)}.year-tab.active{background:var(--accent-fill);color:var(--on-accent);border-color:var(--accent-fill);font-weight:700}.year-current-btn{border:1px solid var(--border);background:var(--surface);cursor:pointer;color:var(--text);border-radius:20px;align-items:center;gap:.4rem;padding:.32rem .75rem;font-size:.82rem;font-weight:600;transition:border-color .15s,color .15s;display:inline-flex}.year-current-btn:hover{border-color:var(--accent-border);color:var(--accent-text)}.year-picker-hint{color:var(--muted);font-size:.82rem;line-height:1.5}.year-picker-grid{grid-template-columns:repeat(3,1fr);gap:.6rem;display:grid}.year-picker-btn{border:1.5px solid var(--border);background:var(--surface);cursor:pointer;color:var(--text);border-radius:10px;padding:.75rem .5rem;font-size:.88rem;font-weight:700;transition:all .15s}.year-picker-btn:hover{border-color:var(--accent-border);color:var(--accent-text);background:var(--hover-bg)}.year-picker-btn.active{background:var(--accent-fill);color:var(--on-accent);border-color:var(--accent-fill)}.year-picker-btn.locked{cursor:not-allowed;color:var(--disabled-fg);background:var(--disabled-bg);border-color:var(--disabled-border);position:relative}.year-picker-btn.locked:hover{border-color:var(--disabled-border);color:var(--disabled-fg);background:var(--disabled-bg)}.year-picker-soon{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-top:.2rem;font-size:.62rem;font-weight:700;display:block}.browser-cols{grid-template-columns:1fr 1fr 1.5fr;display:grid}.browser-col{border-right:1px solid var(--border);max-height:540px;overflow-y:auto}.browser-col:last-child{border-right:none}.col-title{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);background:var(--surface-alt);border-bottom:1px solid var(--border);padding:.55rem 1rem;font-size:.68rem;font-weight:600;position:sticky;top:0}.col-empty{color:var(--muted);padding:1.5rem 1rem;font-size:.85rem}.browser-item{border:none;border-bottom:1px solid var(--border);background:var(--surface);cursor:pointer;text-align:left;color:var(--text);align-items:center;gap:.5rem;width:100%;padding:.65rem 1rem;font-size:.875rem;transition:background .1s;display:flex}.browser-item:hover{background:var(--hover-bg)}.browser-item.selected{background:var(--selected-bg);color:var(--accent-text);border-left:3px solid var(--accent-border);padding-left:calc(1rem - 3px);font-weight:600}.file-icon-wrap{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:.95rem;display:flex}.file-icon-wrap.pdf{background:var(--error-bg);color:var(--error-fg)}.file-icon-wrap.img{background:var(--success-bg);color:var(--success-fg)}.file-icon-wrap.misc{background:var(--info-bg);color:var(--info-fg)}.file-meta{flex:1;min-width:0}.file-name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;overflow:hidden}.file-size{color:var(--muted);margin-top:.1rem;font-size:.72rem}.coming-soon{text-align:center;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;padding:5rem 2rem;display:flex}.coming-soon .cs-icon{color:var(--muted);margin-bottom:1rem;font-size:3rem}.coming-soon h3{color:var(--text);margin-bottom:.5rem;font-size:1.1rem;font-weight:600}.coming-soon p{max-width:320px;font-size:.875rem}.auth-building-icon{color:var(--navy);justify-content:center;align-items:center;margin:0 auto .6rem;display:flex}.uw-session{z-index:300;background:#f8f9fa;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.uw-topbar{background:var(--navy);color:#fff;flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;height:48px;padding:0 1.25rem;display:flex}.uw-topbar-left,.uw-topbar-right{align-items:center;gap:.75rem;display:flex}.uw-back-btn{cursor:pointer;color:#fff;background:#ffffff1f;border:none;border-radius:6px;align-items:center;padding:.3rem .45rem;display:flex}.uw-back-btn:hover{background:#ffffff38}.uw-mark-btn{cursor:pointer;color:#fffc;background:#ffffff1a;border:1px solid #fff3;border-radius:6px;align-items:center;gap:.35rem;padding:.3rem .65rem;font-size:.78rem;font-weight:500;display:flex}.uw-mark-btn:hover{background:#fff3}.uw-mark-btn.marked{color:#fff;background:#d97706;border-color:#d97706}.uw-timer{color:#ffffffd9;font-variant-numeric:tabular-nums;align-items:center;gap:.35rem;font-size:.82rem;font-weight:600;display:flex}.uw-score-badge{color:#fff;background:#ffffff26;border-radius:6px;padding:.25rem .7rem;font-size:.8rem;font-weight:700}.uw-progress-bar{background:#ffffff26;flex-shrink:0;height:3px}.uw-progress-fill{background:#22c55e;height:100%;transition:width .3s}.uw-status-bar{border:1.5px solid;border-radius:10px;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:1.5rem;padding:.75rem 1rem;display:flex}.uw-status-bar.correct{color:#15803d;background:#f0fdf4;border-color:#86efac}.uw-status-bar.wrong{color:#b91c1c;background:#fef2f2;border-color:#fca5a5}.uw-status-left{align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;display:flex}.uw-explanation{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-top:1.25rem;overflow:hidden}.uw-explanation-title{text-transform:uppercase;letter-spacing:.07em;color:#64748b;background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:.75rem 1.25rem;font-size:.78rem;font-weight:700}.uw-explanation-text{color:#1e293b;white-space:pre-wrap;padding:1.25rem;font-size:.9rem;line-height:1.75}.uw-explanation-image{object-fit:contain;border-radius:8px;max-width:100%;max-height:400px;margin:1rem auto;display:block}.uw-explanation-svg{border-bottom:1px solid #e2e8f0;justify-content:center;padding:1rem;display:flex}.uw-explanation-svg svg{max-width:100%;height:auto}.uw-body{flex:1;display:flex;overflow:hidden}.uw-nav-panel{background:#111827;flex-direction:column;flex-shrink:0;gap:.875rem;width:210px;padding:1rem .875rem;transition:width .22s,padding .22s;display:flex;overflow-y:auto}.uw-nav-panel.is-collapsed{width:52px;padding:1rem .5rem;overflow:hidden}.uw-nav-panel-head{align-items:center;gap:.5rem;display:flex}.uw-nav-panel.is-collapsed .uw-nav-panel-head{justify-content:center}.uw-nav-panel-title{text-transform:uppercase;letter-spacing:.1em;color:#ffffff59;flex:1;min-width:0;font-size:.65rem;font-weight:700}.uw-nav-toggle{color:#ffffff8c;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff24;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;transition:background .12s,color .12s,border-color .12s;display:inline-flex}.uw-nav-toggle:hover{color:#fff;background:#ffffff29;border-color:#ffffff4d}.uw-nav-rail{flex-direction:column;align-items:center;gap:.3rem;display:flex}.uw-nav-rail-num{color:#fff;font-variant-numeric:tabular-nums;font-size:.95rem;font-weight:800}.uw-nav-rail-sep{background:#ffffff38;width:14px;height:1px}.uw-nav-rail-total{color:#ffffff73;font-variant-numeric:tabular-nums;font-size:.75rem;font-weight:600}.uw-nav-dots{flex-wrap:wrap;gap:.3rem;display:flex}.uw-nav-dot{cursor:pointer;color:#ffffff73;background:#ffffff0d;border:1.5px solid #ffffff1f;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;font-size:.72rem;font-weight:700;transition:all .1s;display:flex}.uw-nav-dot:hover{color:#ffffffe6;background:#ffffff26}.uw-nav-dot.dot-current{color:#0a1b4d;background:#fff;border-color:#fff}.uw-nav-dot.dot-answered{color:#ffffffb3;background:#ffffff1a;border-color:#ffffff40}.uw-nav-dot.dot-correct{color:#4ade80;background:#16a34a40;border-color:#4ade80}.uw-nav-dot.dot-wrong{color:#f87171;background:#dc262633;border-color:#f87171}.uw-nav-dot.dot-marked{outline-offset:1px;outline:2px solid #f59e0b}.uw-nav-legend{border-top:1px solid #ffffff14;flex-direction:column;gap:.3rem;margin-top:auto;padding-top:.75rem;display:flex}.uw-legend-row{color:#fff6;align-items:center;gap:.4rem;font-size:.7rem;display:flex}.uw-content{background:#f8f9fa;flex:1;padding:1.75rem 2.5rem 80px;overflow-y:auto}.uw-paper-name{color:#ffffffd9;white-space:nowrap;text-overflow:ellipsis;max-width:280px;font-size:.85rem;font-weight:600;overflow:hidden}.uw-item-label{text-transform:uppercase;letter-spacing:.07em;color:#94a3b8;margin-bottom:.875rem;font-size:.75rem;font-weight:600}.q-ref-badge{text-transform:none;letter-spacing:0;color:var(--muted);background:var(--surface-alt,#f1f5f9);vertical-align:middle;border-radius:99px;margin-left:.6rem;padding:.1rem .5rem;font-size:.68rem;font-weight:700;display:inline-block}html.dark .q-ref-badge{background:#ffffff14}.uw-question-stem{color:#1e293b;white-space:pre-wrap;margin-bottom:1.5rem;font-size:.975rem;line-height:1.75}.uw-choices{flex-direction:column;margin-bottom:1.25rem;display:flex}.uw-choice{cursor:pointer;text-align:left;background:0 0;border-top:none;border-bottom:1px solid #e9ecef;border-left:3px solid #0000;border-right:none;align-items:flex-start;gap:.875rem;width:100%;padding:.8rem 1rem;transition:background .1s,border-left-color .1s;display:flex}.uw-choice:first-child{border-top:1px solid #e9ecef}.uw-choice:hover:not(:disabled){background:#f0f4ff}.uw-choice:disabled{cursor:default}.uw-choice-letter{color:#64748b;flex-shrink:0;min-width:1.5rem;font-size:.82rem;font-weight:700;line-height:1.5}.uw-choice-text{color:#1e293b;flex:1;font-size:.9rem;line-height:1.5}.uw-choice.choice-selected{background:#eef2ff;border-left-color:#0a1b4d}.uw-choice.choice-selected .uw-choice-letter{color:#0a1b4d;font-weight:800}.uw-choice.choice-correct{background:#f0fdf4;border-left-color:#16a34a}.uw-choice.choice-correct .uw-choice-letter{color:#16a34a}.uw-choice.choice-wrong{background:#fef2f2;border-left-color:#dc2626}.uw-choice.choice-wrong .uw-choice-letter{color:#dc2626}.uw-submit-q-btn{color:#fff;cursor:pointer;background:#0a1b4d;border:none;border-radius:8px;margin-top:.875rem;padding:.55rem 1.5rem;font-size:.875rem;font-weight:600;transition:background .15s;display:inline-block}.uw-submit-q-btn:hover:not(:disabled){background:#1e2d56}.uw-submit-q-btn:disabled{opacity:.5;cursor:not-allowed}.uw-end-btn{color:#fff;cursor:pointer;background:#dc2626;border:none;border-radius:6px;padding:.3rem .85rem;font-size:.82rem;font-weight:600}.uw-end-btn:hover:not(:disabled){background:#b91c1c}.uw-end-btn:disabled{opacity:.5;cursor:not-allowed}.uw-bottombar{background:var(--navy);flex-shrink:0;justify-content:space-between;align-items:center;height:52px;padding:0 1rem;display:flex}.uw-nav-btn{cursor:pointer;color:#fff;background:#ffffff1f;border:none;border-radius:6px;align-items:center;gap:.4rem;padding:.4rem .9rem;font-size:.82rem;font-weight:500;transition:background .12s;display:flex}.uw-nav-btn:hover:not(:disabled){background:#ffffff38}.uw-nav-btn:disabled{opacity:.35;cursor:default}.legend-dot{background:#f8fafc;border:2px solid #e2e8f0;border-radius:3px;width:12px;height:12px;margin-right:.2rem;display:inline-block}.legend-dot.dot-correct{background:#dcfce7;border-color:#15803d}.legend-dot.dot-wrong{background:#fee2e2;border-color:#b91c1c}.legend-dot.dot-answered{background:#e2e8f0;border-color:#94a3b8}.legend-dot.dot-marked{outline-offset:1px;outline:2px solid #d97706}.uw-results-banner{background:var(--navy);color:#fff;flex-wrap:wrap;align-items:center;gap:2rem;padding:1.5rem;display:flex}.uw-results-pct{font-size:2.5rem;font-weight:900;line-height:1}.uw-results-label{color:#ffffffb3;margin-top:.2rem;font-size:.85rem}html.dark .uw-session{background:#0f1117}html.dark .uw-explanation{background:#1c1f2e;border-color:#ffffff14}html.dark .uw-explanation-title{color:#94a3b8;background:#ffffff0a;border-color:#ffffff14}html.dark .uw-explanation-text{color:#e2e8f0}html.dark .uw-status-bar.correct{color:#4ade80;background:#15803d26;border-color:#4ade80}html.dark .uw-status-bar.wrong{color:#f87171;background:#b91c1c26;border-color:#f87171}.pp-list-body{flex-direction:column;display:flex}.pp-subject-group{border-bottom:1px solid var(--border)}.pp-subject-group:last-child{border-bottom:none}.pp-header-actions{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.pp-subject-header{background:var(--surface-alt);cursor:pointer;text-align:left;border:none;align-items:center;gap:.55rem;width:100%;padding:.7rem 1rem;transition:background .12s;display:flex}.pp-subject-header:hover{background:var(--hover-bg)}.pp-subject-header:focus-visible{outline:2px solid var(--accent-border);outline-offset:-2px}.pp-subject-chevron{color:var(--accent-text);transition:transform .15s}.pp-subject-group.open .pp-subject-chevron{transform:rotate(90deg)}.pp-subject-name{text-transform:uppercase;letter-spacing:.06em;color:var(--text);font-size:.8rem;font-weight:700}.pp-subject-count{color:var(--muted);margin-left:auto;font-size:.75rem}.pp-subject-body{padding:.1rem 1rem 1rem}.pp-papers-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.6rem;display:grid}@media (width<=620px){.pp-papers-grid{grid-template-columns:1fr}}.pp-paper-card{background:var(--surface);cursor:pointer;text-align:left;border:1px solid var(--border-strong);border-radius:10px;align-items:center;gap:.7rem;padding:.7rem .8rem;transition:background .12s,border-color .12s,box-shadow .12s;display:flex}.pp-paper-card:hover{background:var(--hover-bg);border-color:var(--accent-border);box-shadow:var(--shadow-xs)}.pp-paper-card:focus-visible{outline:2px solid var(--accent-border);outline-offset:2px}.pp-paper-icon{background:var(--icon-tile-bg);width:32px;height:32px;color:var(--icon-tile-fg);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.pp-paper-info{flex:1;min-width:0}.pp-paper-name{color:var(--text);font-size:.875rem;font-weight:500}.pp-paper-qcount{color:var(--muted);margin-top:.1rem;font-size:.75rem}.mode-select{max-width:640px;margin:0 auto;padding:1rem 0 3rem}.mode-back-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:.4rem;margin-bottom:1.25rem;padding:0;font-size:.875rem;display:inline-flex}.mode-back-btn:hover{color:var(--text)}.mode-select-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:1.5rem;padding:1.75rem;display:flex}.mode-paper-meta{border-bottom:1px solid var(--border);padding-bottom:1rem}.mode-subject-badge{background:var(--icon-tile-bg);color:var(--icon-tile-fg);text-transform:uppercase;letter-spacing:.06em;border-radius:6px;margin-bottom:.5rem;padding:.2rem .55rem;font-size:.72rem;font-weight:600;display:inline-block}.mode-paper-name{color:var(--text);margin:0 0 .25rem;font-size:1.1rem;font-weight:700}.mode-paper-avail{color:var(--muted);margin:0;font-size:.825rem}.mode-section{flex-direction:column;gap:.75rem;display:flex}.mode-section-label{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin:0;font-size:.78rem;font-weight:700}.mode-max-note{text-transform:none;letter-spacing:0;font-size:.72rem;font-weight:400}.mode-choice-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.mode-choice{border:2px solid var(--border-strong);background:var(--surface);cursor:pointer;text-align:left;border-radius:12px;flex-direction:column;gap:.5rem;padding:1rem;transition:border-color .15s,background .15s;display:flex}.mode-choice:hover{border-color:var(--accent-border);background:var(--hover-bg)}.mode-choice.selected{border-color:var(--accent-border);background:var(--selected-bg)}.mode-choice-icon{border-radius:10px;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.mode-choice-icon.tutor{background:var(--info-bg);color:var(--info-fg)}.mode-choice-icon.exam{background:var(--warning-bg);color:var(--warning-fg)}.mode-choice-name{color:var(--text);font-size:.9rem;font-weight:600}.mode-choice-desc{color:var(--muted);font-size:.78rem;line-height:1.4}.mode-count-wrap{align-items:center;gap:1rem;display:flex}.mode-slider{accent-color:var(--accent-fill);cursor:pointer;flex:1}.mode-count-num{color:var(--accent-text);text-align:center;min-width:2.5rem;font-size:1.5rem;font-weight:800}.mode-start-btn{width:100%;padding:.9rem;font-size:1rem}.tm-mode-chip{color:#fff;text-transform:uppercase;letter-spacing:.07em;background:#ffffff26;border-radius:99px;padding:.15rem .5rem;font-size:.7rem;font-weight:700}.tm-live-stat{color:#ffffffbf;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.78rem;font-weight:600}.tm-content{scroll-behavior:smooth}.tm-list{flex-direction:column;gap:1.25rem;display:flex}.tm-card{background:var(--surface);border:1px solid var(--border-strong);border-left:4px solid var(--border-strong);border-radius:12px;padding:1.25rem 1.375rem;scroll-margin-top:1rem}.tm-card.tm-correct{border-left-color:#16a34a}.tm-card.tm-wrong{border-left-color:#dc2626}.tm-card.tm-shown{border-left-color:#0ea5e9}.tm-card-head{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.875rem;padding-bottom:.875rem;display:flex}.tm-card-num{text-transform:uppercase;letter-spacing:.06em;color:var(--text);font-size:.8rem;font-weight:700}.tm-card-actions{flex-wrap:wrap;align-items:center;gap:.4rem;margin-left:auto;display:flex}.tm-card-actions .uw-mark-btn{background:var(--surface-alt);border-color:var(--border-strong);color:var(--muted)}.tm-card-actions .uw-mark-btn:hover{background:var(--hover-bg);color:var(--text)}.tm-card-actions .uw-mark-btn.marked{color:#fff;background:#d97706;border-color:#d97706}.tm-card .uw-question-stem{margin-bottom:1rem}.tm-card .uw-choices{margin-bottom:0}.tm-card .uw-status-bar{margin-top:1rem}.tm-show-btn{background:var(--surface-alt);color:var(--accent-text);border:1px solid var(--border-strong);cursor:pointer;border-radius:8px;align-items:center;gap:.4rem;margin-top:1rem;padding:.5rem 1rem;font-size:.82rem;font-weight:600;transition:background .12s,border-color .12s;display:inline-flex}.tm-show-btn:hover:not(:disabled){background:var(--hover-bg);border-color:var(--accent-border)}.tm-show-btn:disabled{opacity:.55;cursor:default}.uw-status-bar.shown{color:#1d4ed8;background:#eff6ff;border-color:#93c5fd}.tm-pager{background:var(--surface-alt);border:1px solid var(--border);border-radius:10px;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1.25rem;padding:.625rem .75rem;display:flex}.tm-list+.tm-pager{margin-top:1.25rem;margin-bottom:0}.tm-pager-range{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto;font-size:.78rem}.tm-page-btn{background:var(--surface);color:var(--text);border:1px solid var(--border-strong);cursor:pointer;border-radius:7px;align-items:center;gap:.3rem;padding:.35rem .7rem;font-size:.8rem;font-weight:600;display:inline-flex}.tm-page-btn:hover:not(:disabled){background:var(--hover-bg);border-color:var(--accent-border)}.tm-page-btn:disabled{opacity:.4;cursor:default}.tm-page-nums{flex-wrap:wrap;gap:.25rem;display:flex}.tm-page-num{background:var(--surface);min-width:28px;height:28px;color:var(--muted);border:1px solid var(--border-strong);cursor:pointer;border-radius:7px;padding:0 .35rem;font-size:.78rem;font-weight:700}.tm-page-num:hover{background:var(--hover-bg);color:var(--text)}.tm-page-num.active{background:var(--navy);border-color:var(--navy);color:#fff}.tm-jump{align-items:center;gap:.4rem;display:flex}.uw-nav-dot.dot-shown{color:#38bdf8;background:#0ea5e933;border-color:#38bdf8}.legend-dot.dot-shown{background:#dbeafe;border-color:#0284c7}html.dark .tm-card{background:#1c1f2e;border-color:#ffffff14 #ffffff14 #ffffff14 #ffffff24}html.dark .tm-card.tm-correct{border-left-color:#4ade80}html.dark .tm-card.tm-wrong{border-left-color:#f87171}html.dark .tm-card.tm-shown{border-left-color:#38bdf8}html.dark .tm-card-head{border-bottom-color:#ffffff14}html.dark .uw-status-bar.shown{color:#93c5fd;background:#1d4ed826;border-color:#60a5fa}html.dark .tm-pager{background:#ffffff0a;border-color:#ffffff14}html.dark .tm-page-num.active{background:var(--accent-fill,#334155);border-color:var(--accent-fill,#334155)}.uw-question-image-btn{cursor:zoom-in;background:0 0;border:0;max-width:100%;margin:-.5rem 0 1.25rem;padding:0;display:block}.uw-question-image{object-fit:contain;background:#000;border:1px solid #e2e8f0;border-radius:8px;max-width:100%;max-height:360px;display:block}html.dark .uw-question-image{border-color:#ffffff1f}.uw-image-zoom{z-index:1000;cursor:zoom-out;background:#000000e0;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.uw-image-zoom-img{object-fit:contain;max-width:100%;max-height:100%}.papers-list{flex-direction:column;display:flex}.adm-paper-row{border-bottom:1px solid var(--border);align-items:center;gap:.75rem;padding:.7rem 1rem;display:flex}.adm-paper-row:hover{background:var(--hover-bg)}.adm-paper-name{cursor:pointer;text-align:left;color:var(--navy);background:0 0;border:none;flex:1;font-size:.875rem;font-weight:500}.adm-paper-name:hover{text-decoration:underline}.adm-paper-count{color:var(--muted);font-size:.75rem}.adm-paper-subject-badge{color:var(--blue);background:var(--selected-bg);white-space:nowrap;border-radius:99px;padding:.2rem .55rem;font-size:.7rem;font-weight:600}.q-row{border-bottom:1px solid var(--border)}.q-row:last-child{border-bottom:none}.q-row-inner{align-items:flex-start;gap:.75rem;padding:.75rem 1rem;display:flex}.q-row-checkbox{width:15px;height:15px;accent-color:var(--navy);cursor:pointer;flex-shrink:0;margin-top:.2rem}.q-num{color:var(--muted);flex-direction:column;gap:.2rem;min-width:2rem;padding-top:.1rem;font-size:.72rem;font-weight:700;display:flex}.q-body{color:var(--text);flex:1;font-size:.875rem;line-height:1.5}.q-correct-badge{color:#15803d;background:#dcfce7;border-radius:8px;padding:.2rem .5rem;font-size:.7rem;font-weight:700}.q-bulk-bar{border-bottom:1px solid var(--border);background:var(--surface-alt,#f8fafc);align-items:center;gap:1rem;padding:.6rem 1rem;display:flex}.q-bulk-select-all{color:var(--text);cursor:pointer;align-items:center;gap:.4rem;font-size:.8rem;font-weight:600;display:flex}.q-bulk-select-all input{width:15px;height:15px;accent-color:var(--navy);cursor:pointer}html.dark .q-bulk-bar{background:#ffffff0a}.qr-list{flex-direction:column;display:flex}.qr-row{border-bottom:1px solid var(--border)}.qr-row:last-child{border-bottom:none}.qr-row-head{cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.65rem;width:100%;padding:.75rem 1rem;font-family:inherit;transition:background .12s;display:flex}.qr-row-head:hover{background:var(--hover-bg)}.qr-status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.qr-status-dot.open{background:#dc2626}.qr-status-dot.resolved{background:#16a34a}.qr-paper-name{color:var(--text);flex-shrink:0;font-size:.78rem;font-weight:700}.qr-note-preview{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.82rem;overflow:hidden}.qr-date{color:var(--muted);flex-shrink:0;font-size:.72rem}.qr-row-detail{flex-direction:column;gap:.9rem;padding:0 1rem 1rem 2.75rem;display:flex}.qr-detail-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:.3rem;font-size:.68rem;font-weight:700}.qr-detail-text{color:var(--text);font-size:.85rem;line-height:1.55}.qr-detail-note{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:.75rem .9rem}.qr-detail-question{background:var(--surface-alt,#f8fafc);border:1px solid var(--border);border-radius:8px;padding:.75rem .9rem}.qr-detail-opts{flex-direction:column;gap:.3rem;margin-top:.5rem;display:flex}.qr-opt{color:var(--muted);font-size:.82rem}.qr-opt.correct{color:#16a34a;font-weight:700}.qr-detail-actions{flex-wrap:wrap;gap:.5rem;display:flex}html.dark .qr-detail-note{background:#d9770626;border-color:#d9770659}html.dark .qr-detail-question{background:#ffffff0a}.q-form{background:var(--surface-alt);flex-direction:column;gap:.75rem;padding:1rem;display:flex}.q-form-field{flex-direction:column;gap:.3rem;display:flex}.q-form-row{align-items:center;gap:.75rem;display:flex}.q-label{color:var(--muted);min-width:90px;font-size:.78rem;font-weight:600}.q-textarea{border:1px solid var(--border);resize:vertical;border-radius:8px;outline:none;padding:.5rem .75rem;font-family:inherit;font-size:.875rem}.q-textarea:focus{border-color:var(--navy)}.q-form-actions{gap:.5rem;padding-top:.25rem;display:flex}.adm-row{position:relative}.adm-row:hover .adm-actions{opacity:1}.adm-actions{opacity:0;gap:.25rem;margin-left:auto;transition:opacity .15s;display:flex}.adm-icon-btn{cursor:pointer;color:var(--muted);background:0 0;border:none;border-radius:4px;align-items:center;padding:.2rem .3rem;font-size:.85rem;line-height:1;display:inline-flex}.adm-icon-btn:hover{background:#0000000f}.adm-icon-btn:disabled{opacity:.4;cursor:not-allowed}.adm-icon-btn:disabled:hover{background:0 0}.adm-item-name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.adm-inline-form{align-items:center;gap:.4rem;width:100%;display:flex}.adm-add-form{border-top:1px solid var(--border);background:var(--surface-alt);gap:.4rem;padding:.6rem .75rem;display:flex}.adm-input{border:1px solid var(--border);border-radius:6px;outline:none;flex:1;min-width:0;padding:.35rem .6rem;font-size:.85rem}.adm-input:focus{border-color:var(--navy)}.adm-select{flex:0 auto;width:auto}.adm-btn{cursor:pointer;white-space:nowrap;border:none;border-radius:8px;padding:.38rem .85rem;font-family:inherit;font-size:.78rem;font-weight:700;transition:opacity .15s}.adm-btn:hover{opacity:.82}.adm-btn:disabled{opacity:.45;cursor:not-allowed}.adm-btn-primary{background:var(--navy);color:#fff}.adm-btn-primary:hover:not(:disabled){background:var(--navy-light)}.adm-btn-danger{color:#fff;background:#dc2626}.adm-btn-danger:hover{background:#b91c1c}.adm-btn-ghost{background:var(--bg);color:var(--text);border:1.5px solid var(--border)}.adm-btn-ghost:hover{background:var(--bg)}.adm-notice{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:.6rem .8rem;font-size:.875rem}.adm-copy-label{color:var(--muted);white-space:nowrap;font-size:.8rem}.adm-progress-bay{border-bottom:1px solid var(--border);background:var(--surface-alt);color:var(--text);flex-wrap:wrap;align-items:center;gap:.75rem;padding:.7rem 1rem;font-size:.85rem;display:flex}.adm-progress{flex-direction:column;flex:260px;gap:.35rem;min-width:0;display:flex}.adm-progress-track{background:var(--border);border-radius:999px;height:7px;overflow:hidden}.adm-progress-fill{background:var(--navy);border-radius:999px;height:100%;transition:width .3s}.adm-progress-fill.sweeping{width:35%;animation:1.1s ease-in-out infinite adm-sweep}@keyframes adm-sweep{0%{margin-left:-35%}to{margin-left:100%}}.adm-progress-label{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.adm-progress-note{color:var(--muted);font-size:.72rem}.adm-dup-found{background:#fffbeb;border-bottom-color:#fde68a}.adm-progress-bay.standalone{border:1px solid var(--border);border-radius:10px;margin-bottom:1rem}.adm-copy-progress{min-width:0;color:var(--navy);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.8rem;overflow:hidden}.adm-confirm{align-items:center;gap:.5rem;width:100%;font-size:.8rem;display:flex}.adm-confirm span{text-overflow:ellipsis;white-space:nowrap;color:#dc2626;flex:1;min-width:0;overflow:hidden}.adm-upload-btn{background:var(--navy);color:#fff;cursor:pointer;white-space:nowrap;border-radius:6px;padding:.2rem .55rem;font-size:.7rem;font-weight:600}.adm-upload-btn:hover{background:var(--navy-light)}.adm-search{border:1px solid var(--border);border-radius:8px;outline:none;width:240px;padding:.35rem .75rem;font-size:.875rem}.adm-search:focus{border-color:var(--navy)}.adm-table-wrap{overflow-x:auto}.adm-table{border-collapse:collapse;width:100%;font-size:.875rem}.adm-table th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);background:var(--surface-alt);border-bottom:1px solid var(--border);padding:.6rem 1rem;font-size:.72rem;font-weight:600}.adm-table td{border-bottom:1px solid var(--border);color:var(--text);padding:.7rem 1rem}.adm-table tr:last-child td{border-bottom:none}.adm-table tr:hover td{background:var(--hover-bg)}.adm-muted{color:var(--muted)}.adm-badge{border-radius:12px;padding:.15rem .5rem;font-size:.72rem;font-weight:600;display:inline-block}.adm-badge-green{color:#15803d;background:#dcfce7}.adm-badge-gray{color:#64748b;background:#f1f5f9}.stu-row{cursor:pointer}.stu-row-blocked td{background:#dc26260a}.stu-detail-row td{border-bottom:1px solid var(--border);padding:0}.stu-detail{background:var(--surface-alt);flex-direction:column;gap:1rem;padding:1rem 1.5rem 1.25rem;display:flex}.stu-notice{color:#1d4ed8;background:#eff6ff;border-radius:8px;padding:.5rem .75rem;font-size:.82rem;font-weight:600}.stu-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.stu-edit-form{flex-wrap:wrap;align-items:flex-end;gap:.75rem;display:flex}.stu-edit-field{color:var(--muted);flex-direction:column;gap:.3rem;min-width:160px;font-size:.78rem;font-weight:600;display:flex}.stu-edit-actions{gap:.5rem;display:flex}.stu-devices{border-top:1px solid var(--border);padding-top:.85rem}.stu-devices-title{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:.5rem;font-size:.68rem;font-weight:700}.stu-device-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;padding:.5rem 0;display:flex}.stu-device-row:last-child{border-bottom:none}.stu-device-ua{color:var(--text);font-size:.82rem;font-weight:600}.stu-device-meta{color:var(--muted);margin-top:.1rem;font-size:.72rem}html.dark .stu-row-blocked td{background:#dc262614}.sup-shell{grid-template-columns:320px 1fr;gap:1rem;height:calc(100vh - 180px);min-height:480px;display:grid}.sup-list-pane{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.sup-list-header{border-bottom:1px solid var(--border);padding:1rem 1rem .75rem}.sup-list-header h2{margin:0 0 .6rem;font-size:1rem}.sup-conv-list{flex:1;overflow-y:auto}.sup-conv-row{text-align:left;cursor:pointer;border:none;border-bottom:1px solid var(--border);background:0 0;width:100%;padding:.75rem 1rem;font-family:inherit;transition:background .12s;display:block}.sup-conv-row:hover{background:var(--hover-bg)}.sup-conv-row.active{background:var(--selected-bg,#eef2ff)}.sup-conv-row-top{align-items:center;gap:.4rem;margin-bottom:.2rem;display:flex}.sup-conv-name{color:var(--text);flex:1;font-size:.85rem;font-weight:700}.sup-unread-dot{background:#dc2626;border-radius:50%;flex-shrink:0;width:8px;height:8px}.sup-conv-preview{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-bottom:.35rem;font-size:.78rem;overflow:hidden}.sup-preview-you{color:var(--text);font-weight:600}.sup-conv-row-bottom{justify-content:space-between;align-items:center;display:flex}.sup-conv-date{color:var(--muted);font-size:.68rem}.sup-thread-pane{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.sup-thread-empty{color:var(--muted);opacity:.6;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.6rem;display:flex}.sup-thread-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.sup-thread-name{color:var(--text);font-size:.95rem;font-weight:700}.sup-thread-email{color:var(--muted);font-size:.78rem}.contact-thread.sup-thread-messages{flex:1;min-height:0;max-height:none}@media (width<=900px){.sup-shell{grid-template-columns:1fr;height:auto}.sup-list-pane{max-height:320px}.sup-thread-pane{min-height:420px}}html.dark .stu-notice{color:#93c5fd;background:#1d4ed82e}.adm-collapse-groups{flex-direction:column;gap:.6rem;padding:.75rem;display:flex}.adm-collapse{border:1px solid var(--border);background:var(--surface);border-radius:10px;overflow:hidden}.adm-collapse-bar{flex-wrap:wrap;align-items:center;display:flex}.adm-collapse-actions{flex-shrink:0;align-items:center;gap:.35rem;padding:0 .6rem 0 0;display:flex}.adm-collapse-head{cursor:pointer;text-align:left;min-width:0;color:var(--text);background:0 0;border:none;flex:1;align-items:center;gap:.6rem;padding:.7rem .85rem;font-family:inherit;transition:background .12s;display:flex}.adm-collapse-head:hover{background:var(--hover-bg)}.adm-collapse-head:focus-visible{outline:2px solid var(--navy);outline-offset:-2px}.adm-collapse-chevron{color:var(--muted);flex-shrink:0;transition:transform .18s;transform:rotate(-90deg)}.adm-collapse.open .adm-collapse-chevron{transform:rotate(0)}.adm-collapse-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.85rem;font-weight:700;overflow:hidden}.adm-collapse-meta{color:var(--muted);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:.72rem}.adm-collapse-actions.wide{flex:100%;padding:0 .85rem .7rem}.adm-collapse-body{border-top:1px solid var(--border)}.adm-collapse-body .deck-list{padding:.75rem}.adm-collapse-body .adm-paper-row:last-child{border-bottom:none}@media (prefers-reduced-motion:reduce){.adm-collapse-chevron{transition:none}}.adm-tree-row{gap:.3rem}.adm-tree-toggle{cursor:pointer;width:16px;height:16px;color:var(--muted);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.adm-tree-toggle.empty{cursor:default}.adm-tree-toggle:hover:not(.empty){color:var(--text)}.adm-tree-icon{color:var(--navy-med);flex-shrink:0}html.dark .adm-tree-icon{color:#93c5fd}.adm-tree-count{background:var(--hover-bg);border:1px solid var(--border);min-width:18px;color:var(--muted);text-align:center;border-radius:99px;flex-shrink:0;padding:.05rem .35rem;font-size:.65rem;font-weight:700}.adm-name-muted{color:var(--muted)}.adm-tree-flag{background:var(--hover-bg);border:1px dashed var(--border);letter-spacing:.02em;color:var(--muted);white-space:nowrap;border-radius:99px;flex-shrink:0;padding:.05rem .35rem;font-size:.6rem;font-weight:700}.adm-tree-sub{background:var(--surface-alt);gap:.35rem;padding-right:.55rem}.adm-tree-sub select.adm-input{flex:1;min-width:0}.adm-file-movebar{border-bottom:1px solid var(--border);background:var(--selected-bg);flex-wrap:wrap;align-items:center;gap:.4rem;padding:.5rem .75rem;display:flex}html.dark .adm-file-movebar{background:var(--hover-bg)}.adm-file-movebar-count{color:var(--text);font-size:.72rem;font-weight:700}.adm-file-movebar select.adm-input{flex:130px;min-width:0}.adm-file-selectall{border-bottom:1px solid var(--border);color:var(--muted);cursor:pointer;align-items:center;gap:.4rem;padding:.35rem .75rem;font-size:.72rem;display:flex}.adm-file-check{cursor:pointer;flex-shrink:0;width:15px;height:15px}.adm-files-col{position:relative}.adm-files-head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.adm-files-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.adm-files-col.dropping{box-shadow:inset 0 0 0 2px var(--navy);background:var(--selected-bg)}.adm-upload-btn{border:none;align-items:center;gap:.3rem;font-family:inherit;display:inline-flex}.adm-upload-btn:disabled{opacity:.5;cursor:not-allowed}.adm-banner{align-items:flex-start;gap:.5rem;margin-bottom:1rem;display:flex}.adm-banner-text{overflow-wrap:anywhere;flex:auto;min-width:0;line-height:1.45}.adm-bay-text{flex:18rem;min-width:0;line-height:1.45}.adm-stage{border-bottom:1px solid var(--border);background:var(--surface-alt)}.adm-stage-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:.6rem .75rem .3rem;display:flex}.adm-stage-count{color:var(--text);font-size:.78rem;font-weight:700}.adm-stage-hint{color:var(--muted);padding:0 .75rem .5rem;font-size:.72rem;line-height:1.4}.adm-stage-list{max-height:44vh;overflow-y:auto}.adm-stage-row{border-top:1px solid var(--border);align-items:flex-start;gap:.5rem;padding:.5rem .75rem;display:flex}.adm-stage-fields{flex-direction:column;flex:auto;gap:.25rem;min-width:0;display:flex}.adm-stage-name{width:100%;font-size:.82rem}.adm-stage-sub{min-width:0;color:var(--muted);gap:.45rem;font-size:.68rem;display:flex}.adm-stage-size{font-variant-numeric:tabular-nums;flex-shrink:0}.adm-stage-orig{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.adm-stage-warn{color:#b45309;overflow-wrap:anywhere;font-size:.7rem;line-height:1.35}.adm-stage-actions{flex-shrink:0;gap:.15rem;padding-top:.3rem;display:flex}.adm-stage-progress{border-top:1px solid var(--border);padding:.5rem .75rem}.adm-stage-foot{border-top:1px solid var(--border);flex-wrap:wrap;gap:.4rem;padding:.6rem .75rem;display:flex}.adm-file-filter{color:var(--muted);border-bottom:1px solid var(--border);align-items:center;gap:.4rem;padding:.4rem .75rem;display:flex}.adm-file-filter .adm-input{font-size:.8rem}.adm-file-row{align-items:flex-start}.adm-file-row .file-icon-wrap{margin-top:.1rem}.adm-file-row .file-name{white-space:normal;text-overflow:clip;overflow-wrap:anywhere;line-height:1.35;overflow:visible}.adm-file-row .file-size{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.adm-file-row .file-size>span+span:not(.adm-cover-tag):before{content:"· "}.adm-file-row .adm-actions{padding-top:.15rem}.adm-cover-tag{color:#15803d;text-transform:uppercase;letter-spacing:.04em;background:#dcfce7;border-radius:99px;padding:.05rem .4rem;font-size:.62rem;font-weight:700}.adm-rename-row{gap:.4rem}.adm-rename-row .adm-input{flex:auto;min-width:0}.adm-confirm{flex-wrap:wrap}.adm-confirm span{white-space:normal;text-overflow:clip;overflow-wrap:anywhere;flex:12rem;line-height:1.4;overflow:visible}@media (hover:none){.adm-actions{opacity:1}.adm-icon-btn{padding:.4rem .45rem}.adm-file-check,.adm-file-selectall input{width:18px;height:18px}}@media (width<=700px){.adm-file-movebar select.adm-input,.adm-tree-sub select.adm-input{flex-basis:100%}}.q-stem-preview .uw-question-image-btn{margin:0 0 .5rem}.q-stem-preview .uw-question-image{max-height:220px}.auth-page{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;width:100%;max-width:420px;padding:2.5rem 2rem;box-shadow:0 4px 24px #00000012}.auth-logo{text-align:center;margin-bottom:1.75rem}.auth-logo .logo-name{color:var(--navy);letter-spacing:-.03em;font-size:2rem;font-weight:800}.auth-logo .logo-name span{color:#16204066}.auth-logo .logo-sub{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-top:.3rem;font-size:.7rem}.auth-title{color:var(--text);margin-bottom:1.25rem;font-size:1.3rem;font-weight:700}.auth-card h2,.auth-split-form-inner h2{color:var(--text);margin-bottom:1.25rem;font-size:1.1rem}.auth-card form,.auth-split-form-inner form{flex-direction:column;gap:.875rem;display:flex}.auth-card label,.auth-split-form-inner label{flex-direction:column;gap:.3rem;font-size:.875rem;font-weight:500;display:flex}.auth-card input,.auth-card select,.auth-split-form-inner input,.auth-split-form-inner select{border:1px solid var(--border);border-radius:8px;outline:none;padding:.6rem .75rem;font-size:.95rem;transition:border-color .15s,box-shadow .15s}.auth-card input:focus,.auth-card select:focus,.auth-split-form-inner input:focus,.auth-split-form-inner select:focus{border-color:var(--navy);box-shadow:0 0 0 3px #1620401a}.auth-card button[type=submit],.auth-split-form-inner button[type=submit]{background:var(--navy);color:#fff;cursor:pointer;border:none;border-radius:8px;margin-top:.5rem;padding:.65rem;font-size:1rem;font-weight:600;transition:background .15s}.auth-card button[type=submit]:hover:not(:disabled),.auth-split-form-inner button[type=submit]:hover:not(:disabled){background:var(--navy-light)}.auth-card button[type=submit]:disabled,.auth-split-form-inner button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.auth-error{background:var(--error-bg);color:var(--error-fg);border:1px solid var(--error-border);border-radius:8px;margin-bottom:.75rem;padding:.6rem .8rem;font-size:.875rem}.auth-success{background:var(--success-bg);color:var(--success-fg);border:1px solid var(--success-border);border-radius:8px;margin-bottom:.75rem;padding:.6rem .8rem;font-size:.875rem}.auth-divider{color:var(--muted);align-items:center;gap:.75rem;margin:1.1rem 0;font-size:.78rem;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border);flex:1;height:1px}.google-signin-btn{justify-content:center;display:flex}.auth-links{flex-direction:column;align-items:center;gap:.5rem;margin-top:1.25rem;display:flex}.link-btn{color:var(--navy);cursor:pointer;background:0 0;border:none;font-family:inherit;font-size:.875rem;text-decoration:underline}.link-btn:hover{color:var(--navy-light)}.auth-split{background:var(--bg);min-height:100vh;display:flex}.auth-split-panel{padding:var(--space-10);color:#fff;background:linear-gradient(100deg,#040a1ce6 0%,#0a1b4db8 45%,#0a1b4d80 100%),url(/Yarmouk.jpg) 50%/cover no-repeat;flex:1;justify-content:center;align-items:center;display:flex;position:relative}.auth-split-panel-content{max-width:420px}.auth-split-logo{object-fit:contain;width:240px;height:auto;margin:0 auto var(--space-8);filter:brightness(0)invert()drop-shadow(0 14px 30px #02061480)drop-shadow(0 0 26px #3dd6c64d);display:block}.auth-split-tagline-tab{border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(10px);padding:var(--space-4) var(--space-5);background:#ffffff14;border:1px solid #ffffff2e}.auth-split-tagline{color:#ffffffd9;margin:0;font-size:.95rem;line-height:1.65}.auth-split-form{padding:var(--space-6);flex:1;display:flex;position:relative}.auth-split-back{top:var(--space-6);left:var(--space-6);cursor:pointer;color:var(--muted);background:0 0;border:none;align-items:center;gap:.3rem;font-family:inherit;font-size:.82rem;display:inline-flex;position:absolute}.auth-split-back:hover{color:var(--navy)}html.dark .auth-split-back:hover{color:#60a5fa}.auth-split-form-inner{flex-direction:column;flex:1;justify-content:center;width:100%;max-width:380px;margin:0 auto;display:flex}.auth-split-form-logo{object-fit:contain;width:auto;height:44px;margin:0 auto var(--space-5);display:block}html.dark .auth-split-form-logo{filter:brightness(0)invert()}@media (width<=860px){.auth-split-panel{display:none}}.fc-loading,.fc-error,.fc-empty{color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:4rem 2rem;font-size:.95rem;display:flex}.fc-empty .icon{color:var(--border)}.fc-page-head{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem 1.5rem 1rem;display:flex}.fc-page-title{color:var(--accent-text);font-size:1.3rem;font-weight:800;line-height:1.2}.fc-page-sub{color:var(--muted);font-variant-numeric:tabular-nums;margin-top:.2rem;font-size:.8rem}.fc-subject-list{flex-direction:column;gap:.7rem;padding:1.25rem 1.5rem 1.5rem;display:flex}.fc-subject{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);transition:border-color .15s,box-shadow .15s;overflow:hidden}.fc-subject:hover,.fc-subject.is-open{border-color:var(--fc-accent);box-shadow:var(--shadow-sm)}.fc-subject-header{cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.85rem;width:100%;padding:.85rem 1rem;font-family:inherit;transition:background .12s;display:flex}.fc-subject-header:hover{background:var(--hover-bg)}.fc-subject-icon{background:linear-gradient(145deg, var(--fc-accent) 0%, var(--fc-accent-deep) 100%);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.fc-subject-icon img{object-fit:cover;width:100%;height:100%;display:block}.fc-subject-icon-initial{color:#fff;opacity:.72;justify-content:center;align-items:center;width:100%;height:100%;font-size:1.15rem;font-weight:800;display:flex}.fc-subject-text{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.fc-subject-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.98rem;font-weight:700;line-height:1.25;overflow:hidden}.fc-subject-meta{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.76rem}.fc-subject-pills{flex-shrink:0;gap:.35rem;display:flex}.fc-subject-chev{background:var(--surface-alt);width:30px;height:30px;color:var(--muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:transform .2s,background .15s,color .15s;display:inline-flex}.fc-subject.is-open .fc-subject-chev{background:var(--fc-accent-soft);color:var(--fc-accent);transform:rotate(180deg)}.fc-subject-body{border-top:1px solid var(--border);padding:0 1rem 1rem}.fc-skeleton{flex-direction:column;gap:.7rem;display:flex}.fc-skeleton>span{border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);height:74px;animation:1.4s ease-in-out infinite fc-pulse}.fc-skeleton>span:nth-child(2){animation-delay:.16s}.fc-skeleton>span:nth-child(3){animation-delay:.32s}@keyframes fc-pulse{0%,to{opacity:1}50%{opacity:.5}}.fc-deck-grid{grid-template-columns:repeat(auto-fill,minmax(236px,1fr));gap:.75rem;display:grid}.fc-deck-card{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;gap:.55rem;padding:.9rem 1rem 1rem;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.fc-deck-card:hover{border-color:var(--fc-accent);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.fc-deck-head{flex-direction:column;gap:.2rem;display:flex}.fc-deck-title{color:var(--text);-webkit-line-clamp:2;word-break:break-word;-webkit-box-orient:vertical;font-size:.92rem;font-weight:700;line-height:1.3;display:-webkit-box;overflow:hidden}.fc-deck-desc{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.78rem;line-height:1.45;display:-webkit-box;overflow:hidden}.fc-deck-meta{flex-wrap:wrap;gap:.35rem;margin-top:auto;padding-top:.15rem;display:flex}.fc-meta-pill{text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;border-radius:99px;align-items:center;gap:.3rem;padding:.18rem .5rem;font-size:.7rem;font-weight:600;display:inline-flex}.fc-meta-pill.total{color:var(--muted);background:#f1f5f9}.fc-meta-pill.due{color:#92400e;background:#fef9c3}.fc-meta-pill.new{color:#1d4ed8;background:#eff6ff}.fc-meta-pill.marked{color:#db2777;background:#fdf2f8}.fc-study-btn{background:var(--accent-fill);color:var(--on-accent);border-radius:var(--radius-sm);cursor:pointer;border:none;margin-top:.35rem;padding:.55rem 1rem;font-size:.85rem;font-weight:700;transition:background .15s}.fc-study-btn:hover:not(:disabled){background:var(--accent-fill-hover)}.fc-study-btn:disabled{background:var(--disabled-bg);color:var(--disabled-fg);box-shadow:inset 0 0 0 1px var(--disabled-border);cursor:default}@media (width<=620px){.fc-page-head{padding:1.1rem 1rem .9rem}.fc-page-title{font-size:1.15rem}.fc-subject-list{padding:1rem 1rem 1.25rem}.fc-subject-header{gap:.7rem;padding:.7rem .8rem}.fc-subject-body{padding:0 .8rem .9rem}.fc-subject-pills{display:none}.fc-deck-grid{grid-template-columns:1fr}}.fc-session{flex-direction:column;align-items:center;gap:1.5rem;min-height:100%;padding:1.5rem;display:flex}.fc-session-header{justify-content:space-between;align-items:center;width:100%;max-width:640px;display:flex}.fc-session-count{color:var(--muted);font-size:.85rem;font-weight:600}.fc-back-btn{color:var(--navy);cursor:pointer;background:0 0;border:none;align-items:center;gap:.4rem;padding:.3rem 0;font-size:.875rem;font-weight:600;display:inline-flex}.fc-back-btn:hover{color:var(--navy-light)}.fc-progress-bar{background:var(--border);border-radius:99px;width:100%;max-width:640px;height:5px;overflow:hidden}.fc-progress-fill{background:var(--navy);border-radius:99px;height:100%;transition:width .3s}.fc-card-wrap{perspective:1200px;cursor:pointer;width:100%;max-width:640px;height:280px}.fc-card{width:100%;height:100%;transform-style:preserve-3d;transition:transform .45s cubic-bezier(.4,0,.2,1);position:relative}.fc-card-wrap.flipped .fc-card{transform:rotateY(180deg)}.fc-card-face{backface-visibility:hidden;background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:2rem;display:flex;position:absolute;inset:0;box-shadow:0 4px 16px #00000014}.fc-back{transform:rotateY(180deg)}.fc-card-label{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-size:.7rem;font-weight:700}.fc-card-text{color:var(--text);text-align:center;max-height:180px;font-size:1.15rem;font-weight:500;line-height:1.55;overflow-y:auto}.fc-tap-hint{color:var(--muted);align-items:center;gap:.35rem;margin-top:.5rem;font-size:.8rem;display:flex}.fc-rating-row{flex-wrap:wrap;justify-content:center;gap:.75rem;width:100%;max-width:640px;display:flex}.fc-rate-btn{cursor:pointer;border:none;border-radius:10px;flex-direction:column;flex:1;align-items:center;gap:.25rem;min-width:110px;padding:.7rem .5rem;font-family:inherit;transition:filter .15s,transform .1s;display:flex}.fc-rate-btn:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}.fc-rate-btn:disabled{opacity:.6;cursor:not-allowed}.fc-rate-label{color:#fff;font-size:.9rem;font-weight:700}.fc-rate-hint{color:#ffffffbf;font-size:.7rem}.fc-rate-btn.again{background:#dc2626}.fc-rate-btn.hard{background:#d97706}.fc-rate-btn.good{background:#16a34a}.fc-rate-btn.easy{background:#1e5ad7}.fc-results{flex-direction:column;align-items:center;gap:1.5rem;padding:1.5rem;display:flex}.fc-results-card{background:var(--surface);border:1px solid var(--border);text-align:center;border-radius:16px;flex-direction:column;align-items:center;gap:1rem;width:100%;max-width:400px;padding:2.5rem;display:flex;box-shadow:0 4px 16px #00000014}.fc-results-icon{color:#16a34a}.fc-results-card h2{font-size:1.4rem;font-weight:800}.fc-results-sub{color:var(--muted);font-size:.9rem}.fc-results-bars{flex-direction:column;gap:.5rem;width:100%;display:flex}.fc-result-row{border-radius:8px;justify-content:space-between;align-items:center;padding:.4rem .75rem;font-size:.875rem;font-weight:600;display:flex}.fc-result-row.again{color:#dc2626;background:#fef2f2}.fc-result-row.hard{color:#d97706;background:#fffbeb}.fc-result-row.good{color:#16a34a;background:#f0fdf4}.fc-result-row.easy{color:#1e5ad7;background:#eff6ff}.fc-meta-pill.learning{color:#7c3aed;background:#f5f3ff}.fc-deck-links{align-items:center;gap:.4rem;margin-top:-.15rem;display:flex}.fc-link-btn{cursor:pointer;color:var(--blue);background:0 0;border:none;padding:0;font-family:inherit;font-size:.78rem;font-weight:600}.fc-link-btn:hover{text-decoration:underline}.fc-link-sep{color:var(--border);font-size:.78rem}.fc-state-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:99px;padding:.2rem .6rem;font-size:.72rem;font-weight:700}.fc-state-badge.new{color:#1d4ed8;background:#eff6ff}.fc-state-badge.learning{color:#7c3aed;background:#f5f3ff}.fc-state-badge.review{color:#16a34a;background:#f0fdf4}.fc-state-badge.relearning{color:#dc2626;background:#fef2f2}.fc-state-badge.practice{color:#d97706;background:#fffbeb}.fc-state-badge.marked{color:#db2777;background:#fdf2f8;align-items:center;gap:.25rem;display:inline-flex}.fc-session-actions{flex-wrap:wrap;gap:.5rem;width:100%;max-width:640px;display:flex}.fc-mini-btn{background:var(--surface-alt);border:1px solid var(--border);color:var(--muted);cursor:pointer;border-radius:8px;align-items:center;gap:.35rem;padding:.4rem .7rem;font-family:inherit;font-size:.78rem;font-weight:600;transition:background .15s,color .15s;display:inline-flex}.fc-mini-btn:hover:not(:disabled){background:var(--hover-bg);color:var(--text)}.fc-mini-btn:disabled{opacity:.5;cursor:not-allowed}.fc-mini-btn.active{color:#db2777;background:#fdf2f8;border-color:#f9a8d4}.fc-notice{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;width:100%;max-width:640px;padding:.5rem .75rem;font-size:.82rem;font-weight:600}.fc-reschedule-row{background:var(--surface-alt);border:1px solid var(--border);width:100%;max-width:640px;color:var(--text);border-radius:8px;align-items:center;gap:.6rem;padding:.6rem .75rem;font-size:.85rem;display:flex}.fc-reschedule-row input{border:1px solid var(--border);text-align:center;border-radius:6px;width:70px;padding:.35rem .5rem;font-size:.85rem}.fc-modal-backdrop{z-index:300;background:#0a142880;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.fc-modal{background:var(--surface);border-radius:16px;width:100%;max-width:460px;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #00000040}.fc-modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1.1rem 1.25rem;display:flex}.fc-modal-header h3{color:var(--text);font-size:1rem;font-weight:700}.fc-modal-body{flex-direction:column;gap:.75rem;padding:1.25rem;display:flex}.fc-modal-actions{gap:.6rem;padding:0 1.25rem 1.25rem;display:flex}.fc-custom-mode{border:1px solid var(--border);cursor:pointer;border-radius:10px;align-items:flex-start;gap:.7rem;padding:.75rem .85rem;transition:border-color .15s,background .15s;display:flex}.fc-custom-mode:hover{background:var(--hover-bg)}.fc-custom-mode.selected{border-color:var(--navy);background:var(--selected-bg)}.fc-custom-mode input{margin-top:.2rem}.fc-custom-mode-label{color:var(--text);font-size:.875rem;font-weight:700}.fc-custom-mode-desc{color:var(--muted);margin-top:.15rem;font-size:.78rem}.fc-custom-field{color:var(--muted);flex-direction:column;gap:.3rem;font-size:.82rem;font-weight:600;display:flex}.fc-custom-field input{border:1px solid var(--border);border-radius:8px;width:120px;padding:.5rem .65rem;font-size:.9rem}.fc-setup-stats{grid-template-columns:repeat(3,1fr);gap:.6rem;display:grid}.fc-setup-stat{background:var(--surface-alt);border:1px solid var(--border);border-radius:10px;flex-direction:column;align-items:center;gap:.25rem;padding:.85rem .5rem;display:flex}.fc-setup-stat-value{color:var(--text);font-size:1.3rem;font-weight:800;line-height:1}.fc-setup-stat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.68rem}.fc-setup-stat.new{color:#1d4ed8}.fc-setup-stat.review{color:#0891b2}.fc-setup-stat.marked{color:#db2777}.fc-setup-stat.new .fc-setup-stat-value{color:#1d4ed8}.fc-setup-stat.review .fc-setup-stat-value{color:#0891b2}.fc-setup-stat.marked .fc-setup-stat-value{color:#db2777}.fc-setup-modes{flex-wrap:wrap;gap:.5rem;display:flex}.fc-setup-mode-btn{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:99px;align-items:center;gap:.35rem;padding:.4rem .8rem;font-family:inherit;font-size:.8rem;font-weight:600;transition:border-color .13s,background .13s,color .13s;display:inline-flex}.fc-setup-mode-btn:hover:not(:disabled):not(.selected){background:var(--hover-bg)}.fc-setup-mode-btn.selected{border-color:var(--navy);background:var(--navy);color:#fff}.fc-setup-mode-btn:disabled{opacity:.45;cursor:not-allowed}.fc-stats-grid{grid-template-columns:repeat(3,1fr);gap:.6rem;display:grid}.fc-stat-tile{background:var(--surface-alt);border:1px solid var(--border);text-align:center;border-radius:10px;padding:.75rem}.fc-stat-value{color:var(--navy);font-size:1.35rem;font-weight:800}.fc-stat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-top:.15rem;font-size:.72rem}.fc-stats-row{border-top:1px solid var(--border);justify-content:space-between;padding:.5rem 0;font-size:.85rem;display:flex}.fc-stats-row:first-of-type{border-top:none;margin-top:.25rem}.deck-manager{max-width:900px;padding:1.5rem}.deck-list{flex-direction:column;gap:.75rem;display:flex}.deck-row{background:var(--surface);border:1px solid var(--border);border-radius:10px;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.deck-row-info{cursor:pointer;flex:1}.deck-row-info:hover .deck-row-title{color:var(--navy-light)}.deck-row-title{color:var(--text);font-size:.95rem;font-weight:700}.deck-row-desc{color:var(--muted);margin-top:.15rem;font-size:.83rem}.deck-row-count{color:var(--muted);margin-top:.25rem;font-size:.75rem}.deck-row-actions{flex-shrink:0;gap:.5rem;display:flex}.deck-form{background:var(--surface-alt);border:1px solid var(--border);border-radius:10px;margin-bottom:1rem;padding:1.25rem}.deck-form label{flex-direction:column;gap:.3rem;margin-bottom:.75rem;font-size:.875rem;font-weight:500;display:flex}.deck-form input{border:1px solid var(--border);border-radius:8px;outline:none;padding:.55rem .75rem;font-size:.9rem}.deck-form input:focus{border-color:var(--navy);box-shadow:0 0 0 3px #1620401a}.deck-options-form{background:var(--surface-alt);border:1px solid var(--border);border-radius:10px;margin-bottom:1rem;padding:1.25rem}.deck-options-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.875rem 1rem;margin-bottom:1rem;display:grid}.deck-options-grid label{color:var(--muted);flex-direction:column;gap:.3rem;font-size:.8rem;font-weight:500;display:flex}.deck-options-grid input{border:1px solid var(--border);color:var(--text);background:var(--surface);border-radius:8px;outline:none;padding:.5rem .65rem;font-size:.875rem}.deck-options-grid input:focus{border-color:var(--navy);box-shadow:0 0 0 3px #1620401a}.cards-panel{max-width:900px;padding:1.5rem}.panel-header{align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.panel-header h2{flex:1;font-size:1.1rem;font-weight:700}.cards-list{flex-direction:column;gap:.75rem;display:flex}.card-row{background:var(--surface);border:1px solid var(--border);border-radius:10px;align-items:flex-start;gap:1rem;padding:.9rem 1.1rem;display:flex}.card-sides{flex-wrap:wrap;flex:1;align-items:flex-start;gap:.75rem;display:flex}.card-side{flex:1;min-width:200px;font-size:.88rem;line-height:1.5}.card-side.front{color:var(--text);font-weight:500}.card-side.back{color:var(--muted)}.card-side-sep{background:var(--border);align-self:stretch;width:1px}.card-actions{flex-shrink:0;gap:.5rem;display:flex}.card-form{background:var(--surface-alt);border:1px solid var(--border);border-radius:10px;width:100%;padding:1.25rem}.card-form label{flex-direction:column;gap:.3rem;margin-bottom:.75rem;font-size:.875rem;font-weight:500;display:flex}.card-form textarea{border:1px solid var(--border);resize:vertical;border-radius:8px;outline:none;padding:.55rem .75rem;font-family:inherit;font-size:.9rem}.card-form textarea:focus{border-color:var(--navy);box-shadow:0 0 0 3px #1620401a}.section-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.section-header h2{font-size:1.1rem;font-weight:700}.form-actions{gap:.75rem;display:flex}.form-error{color:#dc2626;background:#fef2f2;border-radius:8px;margin-bottom:.75rem;padding:.5rem .75rem;font-size:.85rem}.btn-ghost{color:var(--muted);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:8px;padding:.5rem 1rem;font-size:.875rem;transition:border-color .15s}.btn-ghost:hover{border-color:var(--navy);color:var(--navy)}.icon-btn{cursor:pointer;color:var(--muted);background:0 0;border:none;border-radius:6px;align-items:center;gap:.35rem;padding:.35rem;font-size:.85rem;font-weight:500;transition:color .15s,background .15s;display:inline-flex}.icon-btn:hover{color:var(--navy);background:var(--border)}.icon-btn.danger:hover{color:#dc2626;background:#fef2f2}.loading-text{color:var(--muted);padding:1rem 0;font-size:.9rem}.empty-hint{color:var(--muted);text-align:center;padding:1.5rem 0;font-size:.875rem}.subject-browser{padding-bottom:2rem}.subject-year-header{flex-wrap:wrap;align-items:center;gap:1rem;padding:1.25rem 1.5rem .75rem;display:flex}.cb-recent{padding:0 1.5rem .75rem}.cb-recent-label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:.5rem;font-size:.68rem;font-weight:700}.cb-recent-chips{flex-wrap:wrap;gap:.5rem;display:flex}.cb-recent-chip{background:var(--surface);border:1px solid var(--border);cursor:pointer;color:var(--text);border-radius:99px;align-items:center;gap:.4rem;padding:.4rem .8rem .4rem .65rem;font-family:inherit;font-size:.8rem;font-weight:600;transition:border-color .13s,box-shadow .13s;display:flex}.cb-recent-chip:hover{border-color:var(--blue);box-shadow:0 2px 8px #00000014}.cb-recent-chip-name{text-overflow:ellipsis;white-space:nowrap;max-width:160px;overflow:hidden}.cb-recent-chip-year{color:var(--muted);font-size:.68rem;font-weight:500}.subject-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem;padding:.5rem 1.5rem 1.5rem;display:grid}.subject-card{aspect-ratio:1;cursor:pointer;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-xs);padding:0;font-family:inherit;transition:box-shadow .18s,transform .14s,border-color .18s;display:block;position:relative;overflow:hidden}.subject-card:hover{box-shadow:var(--shadow-md);border-color:var(--accent-border);transform:translateY(-3px)}.subject-card:active{transform:translateY(-1px)}.subject-card:focus-visible{border-radius:var(--radius-lg);outline-offset:3px}.subject-card-media{background:linear-gradient(145deg, var(--navy-med) 0%, var(--navy) 100%);position:absolute;inset:0;overflow:hidden}.subject-card-media .subject-img{transition:opacity .35s,transform .45s}.subject-card:hover .subject-card-media .subject-img{transform:scale(1.05)}.subject-card-initial{color:#fff;opacity:.5;justify-content:center;align-items:center;width:100%;height:100%;font-size:2.5rem;font-weight:800;line-height:1;display:flex}.subject-card-banner{text-align:left;background:linear-gradient(#07102800 0%,#071028b3 55%,#071028eb 100%);flex-direction:column;gap:.4rem;padding:1.75rem .7rem .6rem;display:flex;position:absolute;bottom:0;left:0;right:0}.subject-card-name{color:#fff;text-shadow:0 1px 3px #00000080;-webkit-line-clamp:2;word-break:break-word;-webkit-box-orient:vertical;font-size:.82rem;font-weight:700;line-height:1.3;display:-webkit-box;overflow:hidden}.subject-card-progress{align-items:center;gap:.45rem;display:flex}.subject-card-progress-bar{background:#ffffff4d;border-radius:99px;flex:1;height:3px;overflow:hidden}.subject-card-progress-fill{background:#fff;border-radius:99px;height:100%;transition:width .25s}.subject-card-progress-label{color:#ffffffd9;font-variant-numeric:tabular-nums;flex-shrink:0;font-size:.64rem;font-weight:600}.subject-files{padding:1.25rem 1.5rem}.sf-head{flex-wrap:wrap;align-items:center;gap:.85rem;margin-bottom:1.5rem;display:flex}.sf-back{height:var(--control-h);border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--surface);color:var(--text);cursor:pointer;flex-shrink:0;align-items:center;gap:.35rem;padding:0 .9rem 0 .7rem;font-family:inherit;font-size:.82rem;font-weight:600;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.sf-back:hover{background:var(--hover-bg);border-color:var(--accent-border);color:var(--accent-text)}.sf-head-art{background:linear-gradient(145deg, var(--navy-med) 0%, var(--navy) 100%);border-radius:15px;flex-shrink:0;width:54px;height:54px;position:relative;overflow:hidden}.sf-head-initial{color:#fff;opacity:.55;justify-content:center;align-items:center;width:100%;height:100%;font-size:1.5rem;font-weight:800;line-height:1;display:flex}.sf-head-text{flex-direction:column;flex:200px;gap:.18rem;min-width:0;display:flex}.sf-head-stats{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.76rem}.subject-files-breadcrumb{color:var(--muted);font-size:.73rem;font-weight:600}.subject-files-title{color:var(--accent-text);word-break:break-word;font-size:1.3rem;font-weight:800;line-height:1.2}.sf-categories{flex-direction:column;gap:1.5rem;display:flex}.sf-collapse-all-btn{cursor:pointer;color:var(--muted);background:0 0;border:none;align-self:flex-end;align-items:center;gap:.3rem;margin-bottom:-.75rem;padding:.25rem .3rem;font-family:inherit;font-size:.75rem;font-weight:600;transition:color .12s;display:inline-flex}.sf-collapse-all-btn:hover{color:var(--navy)}html.dark .sf-collapse-all-btn:hover{color:#93c5fd}.sf-category-header{border:none;border-left:4px solid var(--blue);background:var(--surface);width:100%;box-shadow:var(--shadow-xs);cursor:pointer;border-radius:8px;align-items:center;gap:.6rem;padding:.7rem 1rem;font-family:inherit;transition:background .12s,box-shadow .12s;display:flex}.sf-category-header:hover{background:var(--hover-bg);box-shadow:var(--shadow-sm)}.sf-category-name{text-transform:uppercase;letter-spacing:.07em;color:var(--text);text-align:left;flex:1;font-size:.8rem;font-weight:700}.sf-category-count{color:var(--muted);background:var(--bg);border-radius:99px;flex-shrink:0;padding:.15rem .55rem;font-size:.68rem;font-weight:600}.sf-category-header .icon{color:var(--muted);flex-shrink:0}.sf-row-arrow{color:var(--muted);opacity:.6;flex-shrink:0;margin-left:auto}.imp-overlay{z-index:500;background:#00000073;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.imp-modal{background:var(--surface);border-radius:16px;flex-direction:column;width:100%;max-width:680px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 20px 60px #0003}.imp-modal-head{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.imp-modal-head h3{color:var(--text);font-size:1.05rem;font-weight:700}.imp-drop-zone{color:var(--muted);text-align:center;flex-direction:column;align-items:center;gap:.75rem;padding:3rem 2rem;display:flex}.imp-drop-zone p{color:var(--text);margin:.25rem 0 0;font-size:.95rem;font-weight:600}.imp-drop-zone small{max-width:380px;font-size:.8rem;line-height:1.5}.imp-formats{text-align:left;flex-direction:column;gap:.4rem;width:100%;max-width:340px;font-size:.82rem;display:flex}.imp-format-row{gap:.75rem;display:flex}.imp-format-row strong{min-width:60px;color:var(--navy)}.imp-toolbar{border-bottom:1px solid var(--border);color:var(--muted);flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1.5rem;font-size:.85rem;display:flex}.imp-list{flex:1;padding:.5rem 1rem;overflow-y:auto}.imp-footer{border-top:1px solid var(--border);flex-shrink:0;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;display:flex}.imp-item{border:1px solid var(--border);border-radius:8px;margin-bottom:.5rem;overflow:hidden}.imp-item-issue{border-color:#f87171}.imp-item-head{cursor:pointer;background:var(--bg);align-items:center;gap:.6rem;padding:.6rem .75rem;transition:background .12s;display:flex}.imp-item-head:hover{background:#e8edf4}.imp-num{color:var(--muted);min-width:2rem;font-size:.72rem;font-weight:700}.imp-preview{color:var(--text);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.82rem;overflow:hidden}.imp-correct-badge{color:#166534;background:#dcfce7;border-radius:99px;flex-shrink:0;padding:.15rem .4rem;font-size:.7rem;font-weight:700}.imp-issue-badge{color:#dc2626;white-space:nowrap;text-overflow:ellipsis;background:#fef2f2;border-radius:99px;flex-shrink:0;align-items:center;gap:.3rem;max-width:220px;padding:.15rem .5rem;font-size:.7rem;font-weight:600;display:inline-flex;overflow:hidden}.imp-issue-count{color:#dc2626;font-weight:600}.imp-notice{color:#1d4ed8;background:#eff6ff;border-radius:8px;margin:0 0 .75rem;padding:.55rem .8rem;font-size:.82rem;font-weight:600}html.dark .imp-item-issue{border-color:#f8717199}html.dark .imp-issue-badge{color:#f87171;background:#dc26262e}html.dark .imp-issue-count{color:#f87171}html.dark .imp-notice{color:#93c5fd;background:#1d4ed82e}.imp-item-detail{background:var(--surface);flex-direction:column;gap:.5rem;padding:.75rem;display:flex}.imp-opt-row{align-items:center;gap:.5rem;display:flex}.imp-opt-btn{border:2px solid var(--border);cursor:pointer;width:28px;height:28px;color:var(--muted);background:0 0;border-radius:50%;flex-shrink:0;font-size:.8rem;font-weight:700;transition:all .12s}.imp-opt-btn.active{color:#fff;background:#16a34a;border-color:#16a34a}.imp-card-item{border-bottom:1px solid var(--border);align-items:center;gap:.6rem;padding:.45rem .25rem;display:flex}.imp-card-item:last-child{border-bottom:none}.imp-card-sides{flex:1;gap:.5rem;display:flex}.imp-card-sides .adm-input{flex:1;font-size:.82rem}.adm-subject-icon{object-fit:contain;background:var(--bg);border-radius:6px;flex-shrink:0;width:28px;height:28px}.adm-subject-icon-placeholder{background:var(--bg);width:28px;height:28px;color:var(--muted);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex}.theme-toggle-btn{cursor:pointer;align-items:center;gap:.45rem;font-family:inherit;font-size:.78rem;display:flex}.sf-section{margin-bottom:1.75rem}.sf-section:last-child{margin-bottom:0}.sf-section-head{align-items:center;gap:.45rem;margin-bottom:.7rem;display:flex}.sf-section-label{text-transform:uppercase;letter-spacing:.09em;color:var(--muted);font-size:.68rem;font-weight:700}.sf-section-count{color:var(--muted);background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-pill);font-variant-numeric:tabular-nums;padding:.04rem .45rem;font-size:.68rem;font-weight:700}.sf-section-done{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto;font-size:.73rem;font-weight:600}.sf-chip{border-radius:var(--radius-pill);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);background:var(--hover-bg);border:1px solid var(--border-strong);flex-shrink:0;align-items:center;padding:.08rem .42rem;font-size:.62rem;font-weight:700;display:inline-flex}.sf-folder-grid{grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:.8rem;display:grid}.sf-folder-card{text-align:left;cursor:pointer;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);min-height:132px;box-shadow:var(--shadow-xs);flex-direction:column;align-items:flex-start;gap:.7rem;padding:1rem 1.05rem;font-family:inherit;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.sf-folder-card:hover{border-color:var(--accent-border);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.sf-folder-card:focus-visible,.sf-folder-row:focus-visible{border-radius:var(--radius-md);outline-offset:2px}.sf-folder-tile{background:var(--icon-tile-bg);width:42px;height:42px;color:var(--icon-tile-fg);box-shadow:inset 0 0 0 1px var(--icon-tile-ring);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.is-extra .sf-folder-tile{background:var(--hover-bg);color:var(--muted);box-shadow:inset 0 0 0 1px var(--border)}.sf-folder-card-name{color:var(--text);-webkit-line-clamp:2;word-break:break-word;-webkit-box-orient:vertical;font-size:.9rem;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}.sf-folder-card-foot{flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:auto;display:flex}.sf-folder-card-meta{color:var(--muted);font-size:.74rem}.sf-folder-list{flex-direction:column;gap:.4rem;display:flex}.sf-folder-row{cursor:pointer;text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);align-items:center;gap:.75rem;width:100%;min-height:64px;padding:.6rem .85rem;font-family:inherit;transition:border-color .15s,background .15s,box-shadow .15s;display:flex}.sf-folder-row:hover{border-color:var(--accent-border);background:var(--hover-bg);box-shadow:var(--shadow-xs)}.sf-folder-row-text{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.sf-folder-row-head{align-items:center;gap:.4rem;min-width:0;display:flex}.sf-folder-row-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.9rem;font-weight:600;overflow:hidden}.sf-folder-row-meta{color:var(--muted);font-size:.74rem}.subject-files-breadcrumb{flex-wrap:wrap;align-items:center;gap:.3rem;display:flex}.sf-crumb{cursor:pointer;font-family:inherit;font-size:inherit;font-weight:inherit;color:var(--muted);background:0 0;border:none;border-radius:4px;padding:0;text-decoration:none}.sf-crumb:hover{color:var(--accent-text);text-underline-offset:3px;text-decoration:underline}.sf-crumb.current{color:var(--text);cursor:default}.sf-crumb.current:hover{text-decoration:none}.sf-crumb-part{align-items:center;gap:.3rem;display:inline-flex}.sf-crumb-sep{color:var(--border-strong)}.sf-skeleton{grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:.8rem;display:grid}.sf-skeleton>span{border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--border);height:132px;animation:1.4s ease-in-out infinite sf-pulse}.sf-skeleton>span:nth-child(2){animation-delay:.16s}.sf-skeleton>span:nth-child(3){animation-delay:.32s}@keyframes sf-pulse{0%,to{opacity:1}50%{opacity:.5}}.sf-empty{text-align:center;color:var(--muted);border:1px dashed var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-alt);flex-direction:column;justify-content:center;align-items:center;gap:.9rem;padding:3.5rem 1.5rem;font-size:.9rem;display:flex}.sf-empty-art{background:var(--icon-tile-bg);width:56px;height:56px;color:var(--icon-tile-fg);border-radius:16px;justify-content:center;align-items:center;display:inline-flex}.sf-note{border:1px solid var(--border);background:var(--surface-alt);color:var(--muted);border-radius:8px;align-items:flex-start;gap:.45rem;margin-bottom:.9rem;padding:.55rem .7rem;font-size:.78rem;line-height:1.4;display:flex}.sf-note svg{flex-shrink:0;margin-top:.1rem}@media (width<=640px){.subject-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.7rem;padding:.5rem 1rem 1.5rem}.subject-card-banner{padding:1.5rem .6rem .55rem}.subject-card-name{font-size:.78rem}.subject-card-initial{font-size:2.1rem}.subject-files{padding:1.1rem 1rem}.sf-head{gap:.7rem .6rem;margin-bottom:1.15rem}.sf-head-art{border-radius:13px;order:1;width:46px;height:46px}.sf-head-initial{font-size:1.3rem}.sf-head-text{flex-basis:0;order:2}.sf-back{order:3}.sf-head .view-toggle{order:4}.subject-files-title{font-size:1.12rem}.sf-folder-grid,.sf-skeleton{grid-template-columns:1fr;gap:.5rem}.sf-folder-card{gap:.5rem;min-height:0;padding:.8rem .85rem}.sf-skeleton>span{height:92px}.sf-folder-tile{border-radius:11px;width:38px;height:38px}.sf-empty{padding:2.5rem 1.25rem}}html.dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0c1020;--surface:#131828;--surface-alt:#111626;--hover-bg:#181e36;--selected-bg:#1a2244;--border:#2a3150;--text:#e2e8f0;--muted:#8c9fbe;--blue:#5090ee;--blue-dark:#3b78d8;--teal:#4fc3cd;--teal-soft:#4fc3cd24;--fc-accent:#a78bfa;--fc-accent-deep:#5b21b6;--fc-accent-soft:#a78bfa29;--focus-ring:0 0 0 3px #5090ee66;--shadow-xs:0 1px 3px #00000040;--shadow-sm:0 2px 10px #0000004d, 0 1px 3px #0000002e;--shadow-md:0 8px 30px #0006, 0 2px 8px #00000038;--accent-text:#93c5fd;--accent-border:#4a86e8;--accent-fill:#2563eb;--accent-fill-hover:#2f6ae8;--action-fill:#2563eb;--action-fill-hover:#2f6ae8;--on-accent:#fff;--icon-tile-bg:#5090ee29;--icon-tile-fg:#93c5fd;--icon-tile-ring:#5090ee42;--border-strong:#636f99;--disabled-fg:#8695b2;--disabled-bg:#ffffff08;--disabled-border:#262d49;--success-bg:#16a34a29;--success-fg:#86efac;--success-border:#22c55e73;--warning-bg:#d9770629;--warning-fg:#fbbf24;--warning-border:#f59e0b73;--error-bg:#dc262629;--error-fg:#fca5a5;--error-border:#f8717173;--info-bg:#5090ee24;--info-fg:#93c5fd;--info-border:#5090ee66}html.dark input:not([type=checkbox]):not([type=radio]),html.dark select,html.dark textarea{background:var(--surface);color:var(--text);border-color:var(--border);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html.dark .browser-item.selected .adm-item-name{color:#93c5fd}html.dark .adm-icon-btn:hover{color:var(--text);background:#ffffff14}html.dark .fc-deck-card:hover{box-shadow:0 4px 12px #0006}html.dark .adm-input:focus,html.dark .adm-search:focus,html.dark .q-textarea:focus{border-color:var(--blue)}html.dark .auth-card input:focus,html.dark .auth-card select:focus,html.dark .auth-split-form-inner input:focus,html.dark .auth-split-form-inner select:focus,html.dark .deck-form input:focus,html.dark .card-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #3b82f633}html.dark .pp-subject-header{background:#ffffff0a}html.dark .q-correct-badge,html.dark .imp-correct-badge{color:#4ade80;background:#16a34a33}html.dark .form-error{color:#fca5a5;background:#dc262626}html.dark .link-btn{color:var(--blue)}html.dark .fc-meta-pill.total{background:#ffffff14}html.dark .fc-meta-pill.due{color:#fbbf24;background:#92400e59}html.dark .fc-meta-pill.new{color:#93c5fd;background:#1d4ed840}html.dark .fc-meta-pill.marked{color:#f9a8d4;background:#db277740}html.dark .fc-setup-stat.new .fc-setup-stat-value{color:#93c5fd}html.dark .fc-setup-stat.review .fc-setup-stat-value{color:#67e8f9}html.dark .fc-setup-stat.marked .fc-setup-stat-value{color:#f9a8d4}html.dark .fc-result-row.again{background:#dc26262e}html.dark .fc-result-row.hard{background:#d977062e}html.dark .fc-result-row.good{background:#16a34a2e}html.dark .fc-result-row.easy{background:#2563eb2e}html.dark .fc-meta-pill.learning{color:#c4b5fd;background:#7c3aed38}html.dark .fc-state-badge.new{color:#93c5fd;background:#1d4ed840}html.dark .fc-state-badge.learning{color:#c4b5fd;background:#7c3aed38}html.dark .fc-state-badge.review{color:#86efac;background:#16a34a2e}html.dark .fc-state-badge.relearning{color:#fca5a5;background:#dc26262e}html.dark .fc-state-badge.practice{color:#fbbf24;background:#d9770633}html.dark .fc-state-badge.marked{color:#f9a8d4;background:#db277738}html.dark .fc-mini-btn.active{color:#f9a8d4;background:#db277738;border-color:#db277766}html.dark .fc-back-btn{color:#93c5fd}html.dark .fc-back-btn:hover{color:#60a5fa}html.dark .fc-notice{color:#fbbf24;background:#d9770626;border-color:#d9770659}html.dark .fc-custom-mode.selected{background:var(--selected-bg)}html.dark .fc-stat-value{color:#7ab0f8}html.dark .imp-opt-btn.active{background:#4ade80;border-color:#4ade80}html.dark .adm-confirm span{color:#f87171}html.dark .adm-notice{color:#86efac;background:#16a34a26;border-color:#16a34a4d}html.dark .adm-copy-progress{color:#93c5fd}html.dark .adm-progress-fill{background:#60a5fa}html.dark .adm-dup-found{background:#d9770626;border-bottom-color:#d9770659}html.dark .topbar{background:var(--surface)}html.dark .auth-card{box-shadow:0 4px 24px #0006}html.dark .deck-form label,html.dark .card-form label{color:var(--text)}html.dark .adm-cover-tag{color:#86efac;background:#16a34a33}html.dark .adm-stage{background:#ffffff08}html.dark .adm-stage-warn{color:#fbbf24}html.dark .adm-files-col.dropping{box-shadow:inset 0 0 0 2px #3b82f6}html.dark .adm-upload-btn{background:#1d4ed8}html.dark .adm-upload-btn:hover{background:#2563eb}html.dark .adm-paper-name{color:#93c5fd}html.dark .adm-paper-subject-badge{color:#93c5fd;background:#2563eb33}html.dark .adm-badge-green{color:#86efac;background:#16a34a33}html.dark .adm-badge-gray{color:var(--muted);background:#ffffff14}.landing-v2{width:100%;margin:0;overflow-x:hidden}.reveal{opacity:0;transition:opacity .6s cubic-bezier(.2,.8,.2,1),transform .6s cubic-bezier(.2,.8,.2,1);transform:translateY(24px)}.reveal--visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}}.lp-inner{max-width:1280px;margin:0 auto;padding:0 2.5rem}.hero{background:linear-gradient(#02071661,#02071661),linear-gradient(100deg,#040a1ceb 0%,#0a1b4dcc 38%,#0a1b4d99 62%,#050c1c66 100%),url(/Yarmouk.jpg) 50%/cover no-repeat;background-color:var(--navy);position:relative}.hero__row{padding-block:var(--space-7);align-items:center;min-height:clamp(15rem,18vw,17rem);display:flex}.hero__content{flex-direction:column;align-items:flex-start;max-width:34rem;animation:.8s cubic-bezier(.2,.8,.2,1) both hero-in;display:flex}@keyframes hero-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.hero__badge{align-items:center;gap:var(--space-2);color:#fffc;border-radius:var(--radius-pill);padding:var(--space-2) var(--space-4);letter-spacing:.06em;text-transform:uppercase;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);margin-bottom:var(--space-3);background:#ffffff1a;border:1px solid #ffffff2e;font-size:.72rem;font-weight:700;display:inline-flex}.hero__title{color:#fff;letter-spacing:-.05em;margin-bottom:var(--space-2);font-size:clamp(2.75rem,5vw,4.5rem);font-weight:900;line-height:1}.hero__title-accent{color:#3dd6c6}.hero__subtitle{color:#ffffffbf;letter-spacing:.04em;text-transform:uppercase;margin-bottom:var(--space-3);font-size:clamp(.8rem,1.3vw,.92rem);font-weight:600}.hero__stats-row{grid-template-columns:repeat(var(--stat-count,4), minmax(0, 1fr));gap:var(--space-4);max-width:56rem;margin:-1rem auto 3rem;display:grid}.hero__stat-card{text-align:center;box-shadow:none;padding:var(--space-5) var(--space-6);background:0 0;border:none;border-radius:0;flex-direction:column;align-items:center;transition:transform .2s,opacity .2s;display:flex}.hero__stat-card:hover{opacity:.78;transform:translateY(-2px)}.hero__stat-icon{color:#fff;filter:drop-shadow(0 0 8px #ffffff8c);width:32px;height:32px;margin-bottom:var(--space-2);background:0 0;justify-content:center;align-items:center;display:flex}.hero__stat-value{color:#fff;text-shadow:0 2px 10px #0000008c,0 0 16px #fff3;font-size:1.65rem;font-weight:900;line-height:1}.hero__stat-label{color:#ffffffeb;text-transform:uppercase;letter-spacing:.05em;text-shadow:0 1px 4px #00000080;margin-top:.3rem;font-size:.72rem;font-weight:700}.hero__stat-sub{color:#ffffffb3;text-shadow:0 1px 3px #00000073;margin-top:.2rem;font-size:.72rem}.hero__stats-row{gap:0}.hero__stat-card:not(:first-child){border-left:1px solid #ffffff47}.qa-grid{gap:var(--space-5);max-width:clamp(38rem,54vw,48rem);padding-block:0 var(--space-9);grid-template-columns:repeat(4,minmax(0,1fr));margin-inline:auto;display:grid}@media (width<=768px){.qa-grid{grid-template-columns:repeat(2,1fr);max-width:26rem}}@media (width<=480px){.qa-grid{grid-template-columns:1fr;max-width:none}}@media (width>=769px){.qa-grid{justify-content:center;gap:var(--space-7);flex-wrap:wrap;max-width:none;display:flex}}.qa-card{align-items:flex-start;gap:var(--space-3);aspect-ratio:1;min-width:0;padding:var(--space-6);background:linear-gradient(var(--qa-tint), var(--qa-tint)), var(--surface);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);cursor:pointer;text-align:left;flex-direction:column;font-family:inherit;transition:transform .2s cubic-bezier(.2,.8,.2,1),box-shadow .2s,border-color .2s,background .2s;animation:.6s cubic-bezier(.2,.8,.2,1) backwards qa-card-in;display:flex;overflow:hidden}.qa-grid .qa-card:first-child{animation-delay:.1s}.qa-grid .qa-card:nth-child(2){animation-delay:.22s}.qa-grid .qa-card:nth-child(3){animation-delay:.34s}.qa-grid .qa-card:nth-child(4){animation-delay:.46s}.qa-grid .qa-card:nth-child(5){animation-delay:.58s}@keyframes qa-card-in{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@media (width<=480px){.qa-card{aspect-ratio:auto}}.qa-card:hover{background:linear-gradient(var(--qa-tint-hover), var(--qa-tint-hover)), var(--surface);box-shadow:var(--shadow-lg), 0 0 0 1px #1e5ad759;border-color:#1e5ad766;transform:translateY(-6px)}.qa-card__icon{flex-shrink:0;justify-content:center;align-items:center;width:3rem;height:3rem;transition:transform .2s;display:flex}.qa-card:hover .qa-card__icon{transform:scale(1.1)}.qa-card__body{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;display:flex}.qa-card__title{color:var(--navy);font-size:.95rem;font-weight:800}.qa-card__desc{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.8em;font-size:.76rem;line-height:1.4;display:-webkit-box;overflow:hidden}.qa-card__arrow-wrap{margin-top:auto;display:flex}.qa-card__arrow{color:var(--blue);transition:transform .2s;transform:rotate(180deg)}.qa-card:hover .qa-card__arrow{transform:translate(4px)rotate(180deg)}html.dark .qa-card{border-color:#ffffff14}html.dark .qa-card__title{color:#e2e8f0}html.dark .qa-card:hover{box-shadow:var(--shadow-lg), 0 0 0 1px #60a5fa59;border-color:#60a5fa73}@media (width>=769px){.qa-card{aspect-ratio:auto;align-items:center;gap:var(--space-3);background:var(--qa-tint-strong);-webkit-backdrop-filter:blur(14px);padding:var(--space-3) var(--space-4);border:1px solid #ffffff38;flex-direction:row;box-shadow:0 4px 16px #0000002e}.qa-card:hover{background:var(--qa-tint-strong-hover);border-color:#ffffff59;transform:translateY(-3px);box-shadow:0 6px 20px #00000038}.qa-card__body{display:block}.qa-card__title{color:#fff;text-shadow:0 1px 3px #00000059}.qa-card__desc,.qa-card__arrow-wrap{display:none}}.lp-section{background:var(--surface);padding:4.5rem 0 5.5rem}.lp-section-alt{background:var(--bg)}.lp-section-header{text-align:center;max-width:620px;margin-bottom:3rem;margin-left:auto;margin-right:auto}.lp-section-title{color:var(--navy);letter-spacing:-.03em;margin-bottom:.7rem;font-size:clamp(1.5rem,3.5vw,2.2rem);font-weight:800;line-height:1.2}html.dark .lp-section-title{color:var(--text)}.lp-section-depts{padding:3.5rem 0 4rem}.lp-section-header-row{justify-content:space-between;align-items:center;margin-bottom:1.75rem;display:flex}.lp-section-no-mb{margin-bottom:0}.lp-view-all-btn{color:var(--blue);cursor:pointer;background:0 0;border:none;align-items:center;gap:.3rem;font-family:inherit;font-size:.82rem;font-weight:600;transition:opacity .15s;display:inline-flex}.lp-view-all-btn:hover{opacity:.7;text-decoration:underline}.dept-carousel-wrap{--dept-item-w:132px;padding:1rem 0;position:relative;overflow:hidden}.dept-carousel-wrap:before,.dept-carousel-wrap:after{content:"";z-index:2;pointer-events:none;width:64px;position:absolute;top:0;bottom:0}.dept-carousel-wrap:before{background:linear-gradient(90deg, var(--bg) 0%, transparent 100%);left:0}.dept-carousel-wrap:after{background:linear-gradient(270deg, var(--bg) 0%, transparent 100%);right:0}.dept-carousel-track{transform:translateX(calc(50% - (var(--dept-index) + .5) * var(--dept-item-w)));transition:transform .7s cubic-bezier(.4,0,.2,1);display:flex}.dept-carousel-track.no-anim{transition:none}.dept-carousel-item{flex:0 0 var(--dept-item-w);pointer-events:none;-webkit-user-select:none;user-select:none;flex-direction:column;align-items:center;gap:.6rem;padding:.5rem;transition:transform .5s cubic-bezier(.4,0,.2,1),opacity .5s;display:flex}.dept-carousel-icon{border-radius:16px;justify-content:center;align-items:center;width:56px;height:56px;transition:box-shadow .5s;display:flex}.dept-carousel-item.center .dept-carousel-icon{box-shadow:var(--shadow-md)}.dept-carousel-name{color:var(--text);text-align:center;white-space:nowrap;font-size:.78rem;font-weight:600}.dept-carousel-item.center .dept-carousel-name{font-weight:800}.lp-how-section{padding-top:0}.lp-how-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2rem;display:grid}.lp-how-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-xs);transition:box-shadow .2s,transform .2s;position:relative}.lp-how-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.lp-how-num{top:var(--space-5);right:var(--space-5);color:var(--border);font-size:1.75rem;font-weight:900;line-height:1;position:absolute}.lp-how-icon{border-radius:var(--radius-md);width:44px;height:44px;color:var(--blue);margin-bottom:var(--space-4);background:#1e5ad714;justify-content:center;align-items:center;display:flex}html.dark .lp-how-icon{color:#60a5fa;background:#1e5ad726}.lp-how-title{color:var(--text);margin-bottom:var(--space-2);font-size:1rem;font-weight:800}.lp-how-desc{color:var(--muted);font-size:.84rem;line-height:1.6}@media (width<=768px){.lp-how-grid{grid-template-columns:1fr}}.lp-cta-section{background:linear-gradient(135deg,#eef3fb 0%,#dfe9fa 100%);padding:4.5rem 0}.lp-cta-inner{grid-template-columns:1fr 1fr;align-items:center;gap:3.5rem;display:grid}.lp-cta-image{justify-content:center;align-items:center;min-width:0;display:flex}.lp-cta-device{width:100%;min-width:0;max-width:320px;height:auto}.lp-cta-body{color:var(--navy);min-width:0}.lp-cta-heading{letter-spacing:-.025em;margin-bottom:1.5rem;font-size:clamp(1.5rem,3vw,2rem);font-weight:800;line-height:1.25}.lp-cta-list{flex-direction:column;gap:.875rem;margin-bottom:2rem;list-style:none;display:flex}.lp-cta-list-item{color:#334155;align-items:center;gap:.75rem;font-size:.9rem;display:flex}.lp-cta-check{color:#1e5ad7;background:#1e5ad71a;border:1.5px solid #1e5ad740;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.lp-cta-btn-white{color:#fff;cursor:pointer;background:linear-gradient(135deg,#1e5ad7 0%,#1341b8 100%);border:none;border-radius:10px;align-items:center;gap:.5rem;padding:.9rem 2rem;font-family:inherit;font-size:.925rem;font-weight:700;transition:transform .15s,box-shadow .15s;display:inline-flex;box-shadow:0 4px 20px #1e5ad747}.lp-cta-btn-white:hover{transform:translateY(-2px);box-shadow:0 8px 28px #1e5ad766}@media (width<=1024px) and (width>=641px){.lp-cta-inner{grid-template-columns:1fr}.lp-cta-image{display:none}}@media (width<=768px){.lp-section{padding:2.75rem 0 3.25rem}.lp-inner{padding:0 1.25rem}.lp-section-title{font-size:1.4rem}}@media (width<=640px){.landing-v2{margin-inline:calc(-1 * var(--page-pad));width:calc(100% + 2 * var(--page-pad))}.lp-inner{padding:0 20px}.lp-section{padding:48px 0}.lp-section-title{font-size:26px}.hero{background:linear-gradient(#040a1cb8 0%,#06102aa8 45%,#040a1cd1 100%),url(/Yarmouk.jpg) 50%/cover no-repeat;background-color:var(--navy);position:relative;overflow:hidden}.hero__row{min-height:0;padding-block:32px 0}.hero__content{text-align:center;z-index:1;align-items:center;max-width:none;margin-inline:auto;position:relative}.hero__title{font-size:46px}.qa-grid{padding-top:40px}.hero__stats-row{max-width:none;margin:22px 0 0}.hero__stat-card{padding:8px 4px}.hero__stat-icon{width:20px;height:20px;margin-bottom:4px}.hero__stat-value{font-size:1.05rem}.hero__stat-label{margin-top:2px;font-size:9px}.hero__stat-sub{display:none}.qa-grid{grid-template-columns:repeat(6,1fr);gap:8px;max-width:none;padding-top:32px;display:grid}.qa-grid .qa-card:first-child{grid-column:1/span 2}.qa-grid .qa-card:nth-child(2){grid-column:3/span 2}.qa-grid .qa-card:nth-child(3){grid-column:5/span 2}.qa-grid .qa-card:nth-child(4){grid-column:2/span 2}.qa-grid .qa-card:nth-child(5){grid-column:4/span 2}.qa-card{aspect-ratio:1;text-align:center;background:var(--qa-tint-strong);-webkit-backdrop-filter:blur(14px);border:1px solid #ffffff38;justify-content:center;justify-self:center;align-items:center;gap:4px;width:100%;max-width:76px;padding:6px 3px;box-shadow:0 4px 16px #0000002e}.qa-card:hover{background:var(--qa-tint-strong-hover);border-color:#ffffff59;transform:translateY(-3px);box-shadow:0 6px 20px #00000038}.qa-card__icon{width:1.55rem;height:1.55rem}.qa-card__icon svg{width:100%;height:100%}.qa-card__body{align-items:center}.qa-card__title{color:#fff;text-shadow:0 1px 3px #00000059;font-size:.6rem;line-height:1.1}.qa-card__desc,.qa-card__arrow-wrap{display:none}.lp-section-depts{padding:48px 0}.dept-carousel-wrap{--dept-item-w:92px}.dept-carousel-wrap:before,.dept-carousel-wrap:after{width:32px}.dept-carousel-icon{border-radius:13px;width:44px;height:44px}.dept-carousel-name{font-size:.68rem}.lp-how-section{padding-top:0}.lp-how-grid{grid-template-columns:1fr;gap:0;margin-top:20px}.lp-how-card-wrap{flex-direction:column;align-items:center;display:flex}.lp-how-card{text-align:left;border-radius:20px;align-items:flex-start;gap:14px;width:100%;padding:20px;display:flex}.lp-how-card:active{transform:scale(.98)}.lp-how-num{background:var(--navy);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.95rem;display:flex;position:static}.lp-how-icon{display:none}.lp-how-body{flex:1;min-width:0}.lp-how-title{font-size:1rem}.lp-how-desc{font-size:14px}.lp-cta-section{padding:48px 0}.lp-cta-inner{text-align:center;grid-template-columns:1fr;gap:28px}.lp-cta-image{display:flex}.lp-cta-device{max-width:200px;margin:0 auto}.lp-cta-heading{text-align:center;font-size:26px}.lp-cta-list{text-align:left;align-items:flex-start;max-width:300px;margin-inline:auto}.lp-cta-btn-white{border-radius:16px;justify-content:center;width:100%;height:56px}}@media (width>=641px){.hero__stat-icon{display:none}}@media (width<=1100px) and (width>=861px){.pub-topbar-nav-link{padding:.375rem .45rem;font-size:.76rem}}.yumd-logo{cursor:pointer;background:0 0;border:none;align-items:center;padding:0;font-family:inherit;display:inline-flex}.yumd-logo-img{object-fit:contain;width:auto;height:32px;display:block}@media (width<=640px){.yumd-logo-img{height:26px}}html.dark .yumd-logo-img{filter:brightness(0)invert()}.beta-badge{color:var(--blue);white-space:nowrap;background:#1e5ad714;border:1px solid #1e5ad72e;border-radius:999px;flex-shrink:0;align-items:center;gap:.32rem;padding:.22rem .55rem;font-size:.68rem;font-weight:600;line-height:1;display:inline-flex}.beta-badge-ar{color:var(--muted);font-weight:500}html.dark .beta-badge{color:#93c5fd;background:#60a5fa24;border-color:#60a5fa4d}html.dark .beta-badge-ar{color:#ffffff80}@media (width<=640px){.beta-badge{padding:.18rem .45rem}.beta-badge-ar{display:none}}@media (width<=480px){.beta-badge{display:none}}.pub-shell{background:var(--bg);flex-direction:column;min-height:100vh;display:flex}.pub-topbar{border-bottom:1px solid var(--border);background:var(--surface);z-index:100;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;height:72px;padding:0 2rem;display:grid;position:sticky;top:0;box-shadow:0 1px 8px #0a1b4d14}.pub-topbar-brand{align-items:center;gap:.625rem;display:flex}.pub-topbar-nav{justify-content:center;align-items:center;gap:.125rem;display:flex;overflow:hidden}.pub-topbar-nav-link{color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:8px;padding:.375rem .65rem;font-family:inherit;font-size:.82rem;font-weight:500;transition:background .15s,color .15s}.pub-topbar-nav-link:hover{background:var(--hover-bg);color:var(--navy)}@media (width<=860px){.pub-topbar-nav{display:none}}.pub-topbar-actions{justify-content:flex-end;align-items:center;gap:.625rem;display:flex}.pub-user-name{color:var(--muted);font-size:.82rem;font-weight:500}.pub-btn-login{border:1.5px solid var(--border);color:var(--text);cursor:pointer;white-space:nowrap;background:0 0;border-radius:9px;padding:.4rem 1rem;font-family:inherit;font-size:.84rem;font-weight:600;transition:border-color .15s,color .15s}.pub-btn-login:hover{border-color:var(--navy);color:var(--navy)}html.dark .pub-btn-login:hover{color:#60a5fa;border-color:#60a5fa}.pub-btn-signup{color:#fff;cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#1e5ad7 0%,#1341b8 100%);border:none;border-radius:9px;padding:.4rem 1rem;font-family:inherit;font-size:.84rem;font-weight:700;transition:transform .15s,box-shadow .15s;box-shadow:0 3px 10px #1e5ad740}.pub-btn-signup:hover{transform:translateY(-1px);box-shadow:0 5px 16px #1e5ad759}@media (width<=360px){.pub-topbar{padding-inline:1rem}.pub-topbar-actions{gap:.4rem}.yumd-logo-img{height:32px}}.pub-mobile-menu-btn{cursor:pointer;color:var(--text);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:.4rem;transition:background .15s;display:none}.pub-mobile-menu-btn:active{background:var(--hover-bg)}.pub-mobile-backdrop{z-index:150;background:#040a1c66;animation:.2s both mobileBackdropIn;position:fixed;inset:72px 0 0}@keyframes mobileBackdropIn{0%{opacity:0}to{opacity:1}}.pub-mobile-menu{background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow-lg);z-index:160;border-radius:0 0 20px 20px;max-height:calc(100vh - 72px);padding:1rem 1.25rem 1.5rem;animation:.22s cubic-bezier(.2,.8,.2,1) both mobileMenuIn;position:fixed;top:72px;left:0;right:0;overflow-y:auto}@keyframes mobileMenuIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.pub-mobile-menu-nav{flex-direction:column;gap:.15rem;display:flex}.pub-mobile-menu-link{text-align:left;color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:12px;padding:.9rem 1rem;font-family:inherit;font-size:1rem;font-weight:600;transition:background .15s}.pub-mobile-menu-link:active{background:var(--hover-bg)}.pub-mobile-menu-divider{background:var(--border);height:1px;margin:.75rem 0}.pub-mobile-menu-actions{flex-direction:column;gap:.75rem;display:flex}.pub-mobile-menu-actions .pub-btn-login,.pub-mobile-menu-actions .pub-btn-signup{border-radius:var(--radius-lg);justify-content:center;align-items:center;width:100%;height:52px;font-size:1rem;display:flex}.pub-mobile-menu-theme{justify-content:center;margin-top:1rem;display:flex}@media (width<=640px){.pub-mobile-menu-btn{display:inline-flex}.pub-topbar-actions>.pub-btn-login,.pub-topbar-actions>.pub-btn-signup,.pub-topbar-actions>.theme-toggle-btn{display:none}}@media (width>=641px){.pub-mobile-backdrop,.pub-mobile-menu{display:none!important}}.pub-main{flex-direction:column;flex:1;display:flex;overflow-x:hidden}.pub-main .landing-v2{width:100%;margin:0}.page-content>.landing-v2{margin:-1.5rem calc(-1 * var(--page-pad)) 0;width:calc(100% + 2 * var(--page-pad))}.sub-page{background:var(--bg);justify-content:center;min-height:100vh;padding:2.5rem 1.5rem 4rem;display:flex}.sub-container{width:100%;max-width:600px}.sub-header{text-align:center;margin-bottom:2rem}.sub-header-icon{color:#1e5ad7;background:#eff6ff;border-radius:18px;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 1rem;display:flex}html.dark .sub-header-icon{color:#93c5fd;background:#3b82f626}.sub-title{color:var(--text);margin-bottom:.4rem;font-size:1.8rem;font-weight:800}.sub-subtitle{color:var(--muted);margin-bottom:1rem;font-size:.9rem;line-height:1.6}.sub-status-badge{letter-spacing:.04em;border-radius:99px;padding:.3rem .9rem;font-size:.76rem;font-weight:700;display:inline-block}.sub-status-none{color:#64748b;background:#f1f5f9}.sub-status-pending{color:#92400e;background:#fef3c7}.sub-status-active{color:#166534;background:#dcfce7}.sub-status-rejected{color:#991b1b;background:#fee2e2}html.dark .sub-status-none{color:#94a3b8;background:#64748b26}html.dark .sub-status-pending{color:#fbbf24;background:#d9770626}html.dark .sub-status-active{color:#4ade80;background:#16a34a26}html.dark .sub-status-rejected{color:#f87171;background:#dc262626}.sub-alert{border:1.5px solid;border-radius:12px;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;padding:1rem 1.25rem;display:flex}.sub-alert strong{margin-bottom:.25rem;font-size:.88rem;display:block}.sub-alert p{margin:0;font-size:.83rem;line-height:1.55}.sub-alert-pending{color:#78350f;background:#fffbeb;border-color:#fde68a}.sub-alert-rejected{color:#9f1239;background:#fff1f2;border-color:#fecdd3}html.dark .sub-alert-pending{color:#fbbf24;background:#d977061a;border-color:#fbbf244d}html.dark .sub-alert-rejected{color:#f87171;background:#dc26261a;border-color:#f871714d}.sub-card{background:var(--surface);border:1.5px solid var(--border);border-radius:16px;margin-bottom:1.25rem;padding:1.5rem}.sub-card-dim{opacity:.72}.sub-step{align-items:flex-start;gap:1rem;display:flex}.sub-step-num{background:var(--navy);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;margin-top:.1rem;font-size:.8rem;font-weight:800;display:flex}.sub-step-done{background:#16a34a}.sub-step-wa{background:#25d366}.sub-step-body{flex:1}.sub-step-title{color:var(--text);margin-bottom:.35rem;font-size:1rem;font-weight:700}.sub-step-desc{color:var(--muted);margin-bottom:.85rem;font-size:.84rem;line-height:1.6}.sub-step-desc a{color:var(--blue);text-decoration:underline}.sub-cliq-box{background:var(--bg);border:1.5px solid var(--border);border-radius:10px;flex-wrap:wrap;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.sub-cliq-empty{color:var(--muted);font-size:.83rem}.sub-cliq-label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:.7rem;font-weight:700}.sub-cliq-value{color:var(--text);letter-spacing:.01em;flex:1;font-size:1.15rem;font-weight:800}.sub-copy-btn{background:var(--navy);color:#fff;cursor:pointer;border:none;border-radius:8px;align-items:center;gap:.35rem;padding:.35rem .85rem;font-family:inherit;font-size:.78rem;font-weight:700;transition:opacity .15s;display:inline-flex}.sub-copy-btn:hover{opacity:.85}.sub-drop-zone{border:2px dashed var(--border);text-align:center;cursor:pointer;color:var(--muted);border-radius:12px;flex-direction:column;align-items:center;gap:.5rem;padding:2rem 1.5rem;transition:border-color .2s,background .2s;display:flex}.sub-drop-zone:hover,.sub-drop-zone.has-file{color:#1e5ad7;background:#3b82f60a;border-color:#1e5ad7}.sub-drop-label{color:var(--text);font-size:.88rem;font-weight:600}.sub-drop-hint{color:var(--muted);font-size:.76rem}.sub-drop-filename{color:var(--text);word-break:break-all;font-size:.9rem;font-weight:700}.sub-upload-btn{background:var(--navy);color:#fff;cursor:pointer;border:none;border-radius:10px;width:100%;margin-top:1rem;padding:.85rem;font-family:inherit;font-size:.92rem;font-weight:700;transition:opacity .15s}.sub-upload-btn:hover:not(:disabled){opacity:.88}.sub-upload-btn:disabled{opacity:.5;cursor:not-allowed}.sub-card-support{border-color:#dcfce7}html.dark .sub-card-support{border-color:#16a34a4d}.sub-wa-btn{color:#fff;background:#25d366;border-radius:10px;align-items:center;gap:.5rem;padding:.6rem 1.2rem;font-size:.88rem;font-weight:700;text-decoration:none;transition:opacity .15s;display:inline-flex}.sub-wa-btn:hover{opacity:.88}.adm-settings-form{padding:1.25rem 1.5rem 1.5rem}.adm-settings-row{flex-wrap:wrap;align-items:flex-end;gap:1rem;display:flex}.adm-settings-row label{color:var(--muted);flex-direction:column;flex:1;gap:.35rem;min-width:180px;font-size:.82rem;font-weight:600;display:flex}.adm-settings-row input{border:1.5px solid var(--border);background:var(--bg);color:var(--text);border-radius:8px;outline:none;padding:.55rem .85rem;font-family:inherit;font-size:.88rem;transition:border-color .15s}.adm-settings-row input:focus{border-color:var(--blue)}.adm-settings-row .adm-btn{align-self:flex-end}.adm-access-row{align-items:flex-start;gap:1rem;padding:1.25rem 1.5rem 1.5rem;display:flex}.adm-toggle{border-radius:var(--radius-pill);background:var(--border);cursor:pointer;border:none;flex-shrink:0;align-items:center;width:46px;height:26px;margin-top:.1rem;padding:3px;transition:background .2s;display:flex}.adm-toggle.on{background:#22c55e}.adm-toggle:disabled{opacity:.6;cursor:not-allowed}.adm-toggle-thumb{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s;box-shadow:0 1px 3px #00000040}.adm-toggle.on .adm-toggle-thumb{transform:translate(20px)}.adm-access-copy{flex:1;min-width:0}.adm-access-title{color:var(--text);align-items:center;gap:.6rem;font-size:.92rem;font-weight:700;display:flex}.adm-access-desc{color:var(--muted);margin-top:.35rem;font-size:.82rem;line-height:1.5}.adm-filter-tabs{flex-wrap:wrap;gap:.25rem;display:flex}.adm-filter-tab{border:1.5px solid var(--border);background:var(--surface);color:var(--muted);cursor:pointer;border-radius:8px;padding:.3rem .75rem;font-family:inherit;font-size:.78rem;font-weight:600;transition:all .15s}.adm-filter-tab:hover{border-color:var(--blue);color:var(--blue)}.adm-filter-tab.active{background:var(--navy);color:#fff;border-color:var(--navy)}.adm-sub-list{flex-direction:column;display:flex}.adm-sub-row{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 1.5rem;display:flex}.adm-sub-row:last-child{border-bottom:none}.adm-sub-row.sub-status-pending{border-left:3px solid #f59e0b}.adm-sub-row.sub-status-rejected{border-left:3px solid #ef4444}.adm-sub-row.sub-status-active{border-left:3px solid #22c55e}.adm-sub-info{flex:1;min-width:200px}.adm-sub-name{color:var(--text);margin-bottom:.15rem;font-size:.92rem;font-weight:700}.adm-sub-email{color:var(--muted);margin-bottom:.2rem;font-size:.78rem}.adm-sub-dates{color:var(--muted);font-size:.74rem}.adm-sub-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:.6rem;display:flex}.adm-sub-actions{flex-wrap:wrap;justify-content:flex-end;gap:.4rem;display:flex}.adm-reject-form{flex-wrap:wrap;justify-content:flex-end;gap:.4rem;margin-top:.25rem;display:flex}.adm-reject-form input{border:1.5px solid var(--border);background:var(--bg);color:var(--text);border-radius:8px;outline:none;width:220px;padding:.4rem .75rem;font-family:inherit;font-size:.8rem}.adm-reject-form input:focus{border-color:#ef4444}.adm-btn-green{color:#fff;background:#16a34a}.adm-btn-red{color:#fff;background:#dc2626}.adm-badge-amber{color:#92400e;background:#fef3c7}.adm-badge-red{color:#991b1b;background:#fee2e2}html.dark .adm-badge-amber{color:#fbbf24;background:#d977062e}html.dark .adm-badge-red{color:#f87171;background:#dc26262e}.nav-badge-red{color:#fff;background:#dc2626;margin-left:auto}.receipt-modal{max-width:720px}.receipt-viewer{padding:1.25rem}.about-body{color:var(--text);font-size:.925rem;line-height:1.75}.about-body p{margin-bottom:.75rem}.about-body p:last-child{margin-bottom:0}.about-manager{max-width:760px}.about-form{flex-direction:column;display:flex}.about-form-body{flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.about-form-label{color:var(--text);flex-direction:column;gap:.4rem;font-size:.875rem;font-weight:600;display:flex}.about-textarea{resize:vertical;min-height:200px;font-family:inherit;line-height:1.6}.about-form-footer{border-top:1px solid var(--border);justify-content:flex-end;padding:.75rem 1.25rem;display:flex}html.dark .uw-content{background:#0f1117}html.dark .uw-question-stem{color:#e2e8f0}html.dark .uw-item-label{color:var(--muted)}html.dark .uw-choice{border-bottom-color:#ffffff0f}html.dark .uw-choice:first-child{border-top-color:#ffffff0f}html.dark .uw-choice:hover:not(:disabled){background:#ffffff0a}html.dark .uw-choice-text{color:#e2e8f0}html.dark .uw-choice-letter{color:var(--muted)}html.dark .uw-choice.choice-selected{background:#16204080;border-left-color:#93c5fd}html.dark .uw-choice.choice-selected .uw-choice-letter{color:#93c5fd}html.dark .uw-choice.choice-correct{background:#15803d26}html.dark .uw-choice.choice-correct .uw-choice-letter{color:#4ade80}html.dark .uw-choice.choice-wrong{background:#b91c1c26}html.dark .uw-choice.choice-wrong .uw-choice-letter{color:#f87171}html.dark .uw-submit-q-btn{background:var(--action-fill)}html.dark .uw-submit-q-btn:hover:not(:disabled){background:var(--action-fill-hover)}@media (width<=768px){.uw-nav-panel{display:none}.uw-content{padding:1.25rem 1rem;padding-bottom:80px}.uw-paper-name{max-width:130px;font-size:.78rem}.uw-mark-label{display:none}.uw-item-label{font-size:.7rem}.uw-question-stem{font-size:.9rem}.uw-choice{padding:.7rem .75rem}.uw-choice-text{font-size:.875rem}.uw-results-banner{gap:1.25rem;padding:1rem 1.25rem}.uw-results-pct{font-size:1.75rem}.mode-choice-row{grid-template-columns:1fr}.tm-card{border-radius:10px;padding:1rem .875rem}.tm-card-head{gap:.4rem}.tm-card-actions{gap:.3rem}.tm-pager-range,.tm-live-stat,.uw-bottombar .uw-nav-count{display:none}}@media (width<=480px){.uw-topbar{gap:.5rem;padding:0 .625rem}.uw-topbar-left,.uw-topbar-right{gap:.4rem}.uw-timer{font-size:.75rem}.uw-end-btn{padding:.25rem .6rem;font-size:.75rem}.uw-nav-btn{padding:.35rem .65rem;font-size:.78rem}.uw-content{padding:1rem .75rem 80px}.tm-mode-chip{display:none}.tm-page-num{min-width:26px;height:26px;font-size:.72rem}.tm-page-btn{padding:.35rem .55rem;font-size:.75rem}}@media (width<=640px){.fc-session{gap:1rem;padding:1rem}.fc-card-wrap{height:220px}.fc-card-text{font-size:1rem}.fc-rate-btn{min-width:70px;padding:.6rem .35rem}.fc-rating-row{gap:.5rem}}@media (width<=480px){.mode-select{padding:.75rem 0 2rem}.mode-select-card{border-radius:12px;gap:1.25rem;padding:1.25rem}}@media (width<=640px){.stats-row{grid-template-columns:1fr 1fr}}@media (width<=700px){.browser-cols{grid-template-columns:1fr}.browser-col{border-right:none;border-bottom:1px solid var(--border);max-height:320px}.browser-col:last-child{border-bottom:none}}.uw-nav-count{color:#fff9;font-variant-numeric:tabular-nums;font-size:.78rem}@media (width<=640px){.browser-card-header,.section-header{flex-wrap:wrap;align-items:flex-start;gap:.6rem}.year-tabs{order:3;width:100%}.deck-manager{padding:1rem}.adm-collapse-groups{gap:.5rem;padding:.5rem}.adm-collapse-body .deck-list{padding:.5rem}.adm-paper-row{flex-wrap:wrap;gap:.4rem .6rem;padding:.65rem .75rem}.adm-paper-name{white-space:normal;flex:100%}.adm-paper-count{margin-right:auto}.adm-add-form,.adm-inline-form{flex-wrap:wrap}.adm-add-form>.adm-input,.adm-inline-form>.adm-input{flex:100%}.adm-add-form .adm-select,.adm-inline-form .adm-select{flex:100%;width:100%}.q-form-row{flex-direction:column;align-items:stretch;gap:.3rem}.q-label{min-width:0}.q-form-row .adm-select{flex:none;align-self:flex-start;width:auto}.q-row-inner{flex-wrap:wrap;gap:.5rem;padding:.7rem .75rem}.q-body{flex:100%;order:3}.q-correct-badge{order:4}.q-row-inner .adm-icon-btn{order:5}.q-row-inner .adm-icon-btn:first-of-type{margin-left:auto}.deck-row{flex-wrap:wrap;gap:.6rem;padding:.85rem 1rem}.deck-row-info{flex:100%}.deck-row-actions{margin-left:auto}.panel-header{flex-wrap:wrap;gap:.5rem}.panel-header h2{flex:100%;order:-1;font-size:1rem}}@media (width<=700px){.browser-col{max-height:60vh}.adm-files-col{max-height:none}.adm-item-name{white-space:normal;text-overflow:clip;overflow-wrap:anywhere;line-height:1.3;overflow:visible}.browser-item{align-items:flex-start;padding:.7rem .85rem}.adm-tree-row{row-gap:.15rem}.adm-tree-toggle,.adm-tree-icon,.adm-tree-count{margin-top:.1rem}.adm-stage-row{padding:.55rem .6rem}.adm-stage-list{max-height:50vh}.adm-stage-foot .adm-btn{flex:8rem;padding:.55rem .85rem}.adm-rename-row .adm-input,.adm-bay-text{flex-basis:100%}.adm-progress-bay{padding:.6rem .75rem}.adm-confirm span{flex-basis:100%}}.progress-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.25rem;margin-top:1.25rem;display:grid}.prog-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:.9rem;padding:1.25rem;display:flex}.prog-card-header{flex-direction:column;gap:.4rem;display:flex}.prog-card-title-row{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.prog-card-title{color:var(--text);font-size:.95rem;font-weight:700}.prog-card-delete-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;padding:.25rem;transition:background .12s,color .12s;display:flex}.prog-card-delete-btn:hover{color:#dc2626;background:#fef2f2}html.dark .prog-card-delete-btn:hover{color:#fca5a5;background:#dc26262e}.prog-confirm-row{color:var(--text);flex-wrap:wrap;align-items:center;gap:.6rem;font-size:.8rem;font-weight:600;display:flex}.prog-confirm-btn{cursor:pointer;border:none;border-radius:8px;padding:.32rem .75rem;font-family:inherit;font-size:.76rem;font-weight:700}.prog-confirm-btn.danger{color:#fff;background:#dc2626}.prog-confirm-btn.danger:disabled{opacity:.6;cursor:not-allowed}.prog-confirm-btn.ghost{background:var(--surface-alt,#f1f5f9);color:var(--text);border:1px solid var(--border)}html.dark .prog-confirm-btn.ghost{background:#1e293b;border-color:#ffffff1f}.prog-card-meta{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.prog-card-bar{background:var(--border);border-radius:99px;height:6px;overflow:hidden}.prog-card-bar-fill{border-radius:99px;height:100%;transition:width .3s}.prog-card-stats{gap:1rem;display:flex}.prog-stat{color:var(--muted);align-items:center;gap:.3rem;font-size:.82rem;font-weight:600;display:flex}.prog-stat.correct{color:#16a34a}.prog-stat.wrong{color:#dc2626}.prog-stat.marked{color:#d97706}.prog-card-actions{flex-wrap:wrap;gap:.45rem;display:flex}.prog-action-btn{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:.3rem;padding:.32rem .75rem;font-family:inherit;font-size:.76rem;font-weight:600;transition:opacity .12s;display:flex}.prog-action-btn:hover{opacity:.82}.prog-action-review{background:var(--navy);color:#fff}.prog-action-retake{background:var(--surface-alt,#f1f5f9);color:var(--text);border:1px solid var(--border)}.prog-action-incorrect{color:#dc2626;background:#fef2f2;border:1px solid #fecaca}.prog-action-marked{color:#d97706;background:#fffbeb;border:1px solid #fde68a}.prog-action-resume{color:#fff;background:#16a34a}html.dark .prog-action-retake{background:#1e293b;border-color:#ffffff1f}html.dark .prog-action-incorrect{background:#b91c1c26;border-color:#ef44444d}html.dark .prog-action-marked{background:#b4530926;border-color:#f59e0b4d}html.dark .prog-action-resume{background:#15803d}.prog-file-group{padding:.25rem 0}.prog-file-group-title{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:.5rem 1.25rem .3rem;font-size:.72rem;font-weight:700}.prog-file-row{align-items:center;gap:.75rem;padding:.5rem 1.25rem;transition:background .12s;display:flex}.prog-file-row:hover{background:var(--bg)}.prog-file-check{color:#fff;background:#16a34a;border-radius:99px;justify-content:center;align-items:center;width:18px;min-width:18px;height:18px;display:flex}.prog-file-info{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.prog-file-name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:500;overflow:hidden}.prog-file-topic{color:var(--muted);font-size:.72rem}.prog-file-date{color:var(--muted);white-space:nowrap;font-size:.72rem}.sf-file-list{flex-direction:column;gap:.4rem;display:flex}.sf-file-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);align-items:center;gap:.6rem;min-height:60px;padding:.5rem .85rem;transition:border-color .15s,background .15s;display:flex}.sf-file-row:hover{border-color:var(--accent-border);background:var(--hover-bg)}.sf-check-btn{border:2px solid var(--border-strong);cursor:pointer;color:#fff;background:0 0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:22px;min-width:22px;height:22px;transition:all .15s;display:flex}.sf-check-btn.done{background:#16a34a;border-color:#16a34a}.sf-check-btn:hover:not(.done){border-color:var(--accent-border)}.sf-file-btn{cursor:pointer;text-align:left;background:0 0;border:none;flex:1;align-items:center;gap:.75rem;min-width:0;padding:.2rem 0;font-family:inherit;display:flex}.sf-file-row.done{background:var(--surface-alt)}.sf-file-row.done .file-name{color:var(--muted);text-decoration:line-through}.sf-file-row.done .file-icon-wrap{opacity:.55}.sf-file-row .file-icon-wrap{border-radius:10px;width:38px;height:38px}@media (width<=640px){.progress-grid{grid-template-columns:1fr}.prog-card-actions{gap:.35rem}.prog-action-btn{padding:.28rem .6rem;font-size:.72rem}}.view-toggle{gap:.2rem;margin-left:auto;display:flex}.view-toggle-btn{border:1px solid var(--border);background:var(--surface);width:30px;height:30px;color:var(--muted);cursor:pointer;border-radius:7px;justify-content:center;align-items:center;transition:all .13s;display:flex}.view-toggle-btn.active{background:var(--navy);color:#fff;border-color:var(--navy)}.view-toggle-btn:hover:not(.active){background:var(--bg);color:var(--text)}html.dark .view-toggle-btn{background:#1e293b}html.dark .view-toggle-btn.active{background:var(--navy)}.subject-list{flex-direction:column;gap:.45rem;padding:.5rem 1.5rem 1.5rem;display:flex}.subject-list-row{background:var(--surface);border:1px solid var(--border);cursor:pointer;text-align:left;border-radius:12px;align-items:center;gap:.875rem;width:100%;padding:.7rem 1rem;font-family:inherit;transition:box-shadow .13s,border-color .13s;display:flex}.subject-list-row:hover{border-color:var(--blue);box-shadow:0 2px 10px #00000014}.subject-list-icon{background:var(--navy);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex;overflow:hidden}.subject-list-icon img{object-fit:cover;width:100%;height:100%}.subject-list-icon .subject-card-initial{color:#fff;opacity:1;font-size:1.3rem}.subject-list-name{color:var(--text);text-align:left;flex:1;font-size:.9rem;font-weight:600}.subject-list-progress{color:var(--muted);background:var(--bg);border-radius:99px;flex-shrink:0;padding:.2rem .55rem;font-size:.75rem;font-weight:600}.sf-file-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.7rem;display:grid}.sf-file-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);transition:box-shadow .15s,border-color .15s,transform .15s;position:relative;overflow:hidden}.sf-file-card:hover{border-color:var(--accent-border);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.sf-file-card.done{background:var(--surface-alt)}.sf-file-card.done .sf-file-card-name{color:var(--muted);text-decoration:line-through}.sf-file-card.done .sf-file-card-thumb,.sf-file-card.done .file-icon-lg{opacity:.55}.sf-file-card-body{cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:.5rem;width:100%;padding:1.1rem .75rem .85rem;font-family:inherit;display:flex}.file-icon-lg{border-radius:10px;width:48px;height:48px}.sf-file-card-name{color:var(--text);text-align:center;-webkit-line-clamp:2;-webkit-box-orient:vertical;width:100%;font-size:.76rem;font-weight:500;line-height:1.35;display:-webkit-box;overflow:hidden}.sf-file-card-size{color:var(--muted);text-align:center;font-size:.68rem}.sf-check-abs{z-index:2;position:absolute;top:.45rem;right:.45rem;width:20px!important;min-width:20px!important;height:20px!important}.sf-file-actions{flex-shrink:0;gap:.35rem;display:flex}.sf-file-card .sf-file-actions{padding:0 .6rem .65rem}.sf-file-card .sf-file-action{flex:1}.sf-file-action{border:1px solid var(--border-strong);background:var(--surface);min-height:32px;color:var(--text);cursor:pointer;white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:.3rem;padding:.3rem .6rem;font-family:inherit;font-size:.74rem;font-weight:500;transition:border-color .15s,background .15s,color .15s;display:inline-flex}.sf-file-action:hover{border-color:var(--accent-border);background:var(--hover-bg);color:var(--accent-text)}@media (width<=480px){.sf-file-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem}.sf-file-row{gap:.5rem;min-height:56px;padding:.45rem .7rem}.sf-file-row .sf-file-action span{display:none}.sf-file-row .sf-file-action{width:36px;padding:0}.subject-list{padding:.5rem 1rem 1.25rem}}.sf-file-card-thumb{aspect-ratio:4/3;background:var(--bg);border-radius:8px 8px 0 0;justify-content:center;align-items:center;width:100%;display:flex;overflow:hidden}.sf-thumb-img{object-fit:cover;width:100%;height:100%;display:block}.eb-root{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:1.75rem;max-width:760px;margin:0 auto;padding:2rem;display:flex}.eb-header{text-align:center}.eb-title{color:var(--accent-text);margin-bottom:.3rem;font-size:1.35rem;font-weight:800}.eb-subtitle{color:var(--muted);font-size:.875rem}.eb-header .year-current-btn{margin-top:.85rem}.eb-section{flex-direction:column;gap:.875rem;display:flex}.eb-section-label{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);align-items:center;gap:.65rem;font-size:.82rem;font-weight:700;display:flex}.eb-step-num{background:var(--accent-fill);width:22px;height:22px;color:var(--on-accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.72rem;font-weight:800;display:flex}.eb-select-all-btns{gap:.35rem;margin-left:auto;display:flex}.eb-sel-btn{border:1px solid var(--border-strong);color:var(--muted);cursor:pointer;background:0 0;border-radius:8px;padding:.2rem .65rem;font-family:inherit;font-size:.75rem;transition:border-color .12s,color .12s}.eb-sel-btn:hover{border-color:var(--accent-border);color:var(--accent-text)}.eb-subjects-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.5rem;display:grid}.eb-subject-chip{border:1.5px solid var(--border-strong);background:var(--surface);cursor:pointer;text-align:left;border-radius:10px;align-items:center;gap:.5rem;padding:.5rem .75rem;font-family:inherit;transition:border-color .12s,background .12s;display:flex}.eb-subject-chip:hover{border-color:var(--accent-border);background:var(--hover-bg)}.eb-subject-chip.selected{border-color:var(--accent-border);background:var(--selected-bg)}.eb-chip-check{border:1.5px solid var(--border-strong);width:16px;height:16px;color:var(--on-accent);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;font-size:.6rem;display:flex}.eb-subject-chip.selected .eb-chip-check{background:var(--accent-fill);border-color:var(--accent-border)}.eb-chip-name{color:var(--text);flex:1;font-size:.85rem;font-weight:500}.eb-chip-count{color:var(--muted);background:var(--bg);border-radius:8px;flex-shrink:0;padding:.1rem .4rem;font-size:.72rem}.eb-subject-chip.selected .eb-chip-count{color:var(--accent-text)}.eb-avail-note{color:var(--muted);font-size:.8rem}.eb-avail-note strong{color:var(--text)}.eb-optional-tag{text-transform:none;letter-spacing:0;color:var(--muted);background:var(--bg);border-radius:99px;padding:.1rem .5rem;font-size:.65rem;font-weight:600}.eb-papers-dropdown-btn{border:1.5px solid var(--border-strong);background:var(--surface);width:100%;color:var(--text);cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;padding:.65rem .9rem;font-family:inherit;font-size:.85rem;font-weight:500;transition:border-color .12s;display:flex}.eb-papers-dropdown-btn:hover{border-color:var(--accent-border)}.eb-papers-dropdown-btn>.icon{color:var(--accent-text)}.eb-papers-panel{border:1.5px solid var(--border-strong);border-radius:10px;flex-direction:column;gap:.35rem;max-height:260px;padding:.6rem;display:flex;overflow-y:auto}.eb-paper-option{cursor:pointer;border-radius:8px;align-items:center;gap:.6rem;padding:.45rem .6rem;transition:background .12s;display:flex}.eb-paper-option:hover{background:var(--hover-bg)}.eb-paper-option.selected{background:var(--selected-bg)}.eb-paper-option input{width:15px;height:15px;accent-color:var(--accent-fill);cursor:pointer;flex-shrink:0}.eb-paper-option-name{color:var(--text);flex:1;font-size:.84rem}.eb-filter-grid{grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:.75rem;display:grid}.eb-filter-card{border:1.5px solid var(--border-strong);background:var(--surface);cursor:pointer;text-align:left;border-radius:12px;flex-direction:column;gap:.4rem;padding:.875rem;font-family:inherit;transition:border-color .12s,background .12s;display:flex}.eb-filter-card:hover{border-color:var(--accent-border);background:var(--hover-bg)}.eb-filter-card.selected{border-color:var(--accent-border);background:var(--selected-bg)}.eb-filter-card.selected .eb-filter-name,.eb-filter-icon{color:var(--accent-text)}.eb-filter-name{color:var(--text);align-items:center;gap:.4rem;font-size:.88rem;font-weight:700;display:flex}.eb-filter-check{color:var(--accent-text);margin-left:auto}.eb-filter-card.locked{background:var(--disabled-bg);border-color:var(--disabled-border)}.eb-filter-card.locked .eb-filter-icon,.eb-filter-card.locked .eb-filter-name,.eb-filter-card.locked .eb-filter-desc{color:var(--disabled-fg)}.eb-filter-card.locked:hover{border-color:var(--accent-border);background:var(--hover-bg)}.eb-lock-tag{text-transform:uppercase;letter-spacing:.05em;color:var(--info-fg);background:var(--info-bg);border:1px solid var(--info-border);border-radius:99px;padding:.1rem .45rem;font-size:.62rem;font-weight:700}.eb-filter-desc{color:var(--muted);font-size:.75rem;line-height:1.4}.eb-section-row{grid-template-columns:1fr 1fr;align-items:start;gap:1.5rem;display:grid}.eb-sub-section{flex-direction:column;gap:.75rem;display:flex}.eb-mode-row{grid-template-columns:1fr 1fr}.eb-start-btn{border-radius:12px;width:100%;padding:.9rem;font-size:1rem;font-weight:700}@media (width<=640px){.eb-root{gap:1.25rem;padding:1.25rem}.eb-section-row{grid-template-columns:1fr}.eb-filter-grid,.eb-subjects-grid{grid-template-columns:1fr 1fr}}.pp-tab-bar{border-bottom:2px solid var(--border);gap:0;margin-bottom:1.5rem;display:flex}.pp-tab{color:var(--muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:.45rem;margin-bottom:-2px;padding:.65rem 1.25rem;font-family:inherit;font-size:.875rem;font-weight:600;transition:color .12s,border-color .12s;display:flex}.pp-tab:hover{color:var(--text)}.pp-tab:focus-visible{outline:2px solid var(--accent-border);outline-offset:-2px}.pp-tab.active{color:var(--accent-text);border-bottom-color:var(--accent-border);font-weight:700}.prog-tab-bar{border-bottom:2px solid var(--border);gap:0;margin-bottom:1.25rem;display:flex}.prog-tab{color:var(--muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:.45rem;margin-bottom:-2px;padding:.6rem 1.25rem;font-family:inherit;font-size:.875rem;font-weight:600;transition:color .12s,border-color .12s;display:flex}.prog-tab:hover{color:var(--text)}.prog-tab:focus-visible{outline:2px solid var(--accent-border);outline-offset:-2px}.prog-tab.active{color:var(--accent-text);border-bottom-color:var(--accent-border);font-weight:700}.prog-tab-count{background:var(--border);color:var(--muted);text-align:center;border-radius:10px;min-width:18px;padding:.1rem .4rem;font-size:.68rem;font-weight:700}.prog-tab.active .prog-tab-count{background:var(--info-bg);color:var(--info-fg)}.prog-year-groups{flex-direction:column;gap:2rem;display:flex}.prog-year-block{flex-direction:column;gap:.75rem;display:flex}.prog-year-label{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);background:var(--surface-alt);border:1px solid var(--border);border-radius:8px;padding:.4rem .75rem;font-size:.72rem;font-weight:700;display:inline-block}.prog-subject-block{flex-direction:column;gap:.5rem;display:flex}.prog-subject-header{border-bottom:1px solid var(--border);align-items:center;gap:.5rem;margin-bottom:.25rem;padding:.3rem .5rem;display:flex}.prog-subject-name{color:var(--text);flex:1;font-size:.8rem;font-weight:700}.prog-subject-count{color:var(--muted);font-size:.72rem}.sh-root{flex-direction:column;gap:1.5rem;display:flex}.sh-welcome{border-radius:var(--radius-lg);color:#fff;background:linear-gradient(100deg,#0a1b4df5 0%,#0a1b4dd1 45%,#163c8dad 100%),url(/Yarmouk.jpg) 50% 38%/cover no-repeat;background-color:var(--navy);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1.35rem 1.6rem;display:flex}.sh-greeting{letter-spacing:-.02em;font-size:1.3rem;font-weight:700;line-height:1.2}.sh-greeting-sub{color:#ffffffd1;margin-top:.3rem;font-size:.82rem}.sh-streak{border-radius:var(--radius-pill);color:#fdba74;background:#ffffff24;border:1px solid #fff3;flex-shrink:0;align-items:center;gap:.4rem;padding:.4rem .75rem;font-size:.8rem;display:inline-flex}.sh-streak-n{color:#fff;font-variant-numeric:tabular-nums;font-weight:800}.sh-streak-label{color:#fffc}.sh-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;display:grid}.sh-stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;gap:.15rem;min-height:104px;padding:1rem 1.1rem;display:flex}.sh-stat-icon{border-radius:var(--radius-sm);background:var(--selected-bg);width:26px;height:26px;color:var(--navy-med);justify-content:center;align-items:center;margin-bottom:.35rem;display:inline-flex}.sh-stat-value{color:var(--text);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:1.55rem;font-weight:700;line-height:1.1}.sh-stat-label{color:var(--text);font-size:.78rem;font-weight:600}.sh-stat-hint{color:var(--muted);font-size:.72rem;line-height:1.35}.sh-stat.tone-good .sh-stat-value{color:#15803d}.sh-stat.tone-ok .sh-stat-value{color:#b45309}.sh-stat.tone-low .sh-stat-value{color:#b91c1c}.sh-stat-skeleton{background:var(--surface-alt);border-style:dashed}.sh-body{grid-template-columns:minmax(0,1fr) 330px;align-items:start;gap:1.5rem;display:grid}.sh-main-col,.sh-side-col{flex-direction:column;gap:1.5rem;min-width:0;display:flex}.sh-section{flex-direction:column;gap:.75rem;min-width:0;display:flex}.sh-section-head{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.sh-section-title{text-transform:uppercase;letter-spacing:.09em;color:var(--muted);font-size:.72rem;font-weight:700}.sh-link{cursor:pointer;color:var(--blue);background:0 0;border:none;padding:0;font-family:inherit;font-size:.78rem;font-weight:600}.sh-link:hover{text-decoration:underline}.sh-resume{text-align:left;cursor:pointer;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);align-items:center;gap:.9rem;width:100%;padding:1rem 1.1rem;font-family:inherit;transition:border-color .15s,background .15s;display:flex}.sh-resume:hover{border-color:var(--navy-med);background:var(--hover-bg)}.sh-resume-icon{border-radius:var(--radius-sm);background:var(--selected-bg);width:44px;height:44px;color:var(--navy-med);flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.sh-resume-body{flex-direction:column;flex:1;min-width:0;display:flex}.sh-resume-kicker{text-transform:uppercase;letter-spacing:.08em;color:var(--teal);font-size:.66rem;font-weight:700}.sh-resume-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin-top:.1rem;font-size:1rem;font-weight:650;overflow:hidden}.sh-resume-meta{color:var(--muted);margin-top:.1rem;font-size:.76rem}.sh-resume-chev{color:var(--muted);flex-shrink:0}.sh-rows{flex-direction:column;display:flex}.sh-rows-boxed{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:.35rem .25rem .25rem}.sh-rows-title{color:var(--muted);text-transform:uppercase;letter-spacing:.07em;padding:.45rem .85rem .3rem;font-size:.7rem;font-weight:700}.sh-row{text-align:left;border-radius:var(--radius-sm);background:0 0;border:none;align-items:center;gap:.7rem;width:100%;min-height:46px;padding:.6rem .85rem;font-family:inherit;display:flex}button.sh-row{cursor:pointer;transition:background .12s}button.sh-row:hover{background:var(--hover-bg)}.sh-row-static{cursor:default}.sh-row-icon{background:var(--selected-bg);width:28px;height:28px;color:var(--navy-med);border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.sh-row-body{flex-direction:column;flex:1;min-width:0;display:flex}.sh-row-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;font-weight:600;overflow:hidden}.sh-row-meta{color:var(--muted);margin-top:.05rem;font-size:.73rem}.sh-row-chev{color:var(--muted);flex-shrink:0}.sh-score{font-variant-numeric:tabular-nums;border-radius:var(--radius-pill);flex-shrink:0;padding:.15rem .5rem;font-size:.82rem;font-weight:700}.sh-score.tone-good{color:#15803d;background:#dcfce7}.sh-score.tone-ok{color:#b45309;background:#fef3c7}.sh-score.tone-low{color:#b91c1c;background:#fee2e2}.sh-empty{text-align:center;background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius-md);color:var(--muted);flex-direction:column;align-items:center;gap:.4rem;padding:2rem 1.5rem;display:flex}.sh-empty-title{color:var(--text);margin-top:.35rem;font-size:.92rem;font-weight:650}.sh-empty-text{max-width:34ch;font-size:.82rem;line-height:1.5}.sh-empty .btn-primary{margin-top:.75rem}.sh-tiles{grid-template-columns:repeat(6,minmax(0,1fr));gap:.75rem;display:grid}.sh-tile{text-align:left;cursor:pointer;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;gap:.2rem;padding:1rem;font-family:inherit;transition:border-color .15s,background .15s;display:flex}.sh-tile:hover{border-color:var(--navy-med);background:var(--hover-bg)}.sh-tile-icon{border-radius:var(--radius-sm);background:var(--selected-bg);width:34px;height:34px;color:var(--navy-med);justify-content:center;align-items:center;margin-bottom:.45rem;display:inline-flex}.sh-tile-label{color:var(--text);font-size:.88rem;font-weight:650}.sh-tile-desc{color:var(--muted);font-size:.75rem;line-height:1.4}.sh-priorities{flex-direction:column;gap:.75rem;display:flex}.sh-priority{text-align:left;cursor:pointer;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);align-items:flex-start;gap:.75rem;width:100%;padding:.95rem 1rem;font-family:inherit;transition:border-color .15s,background .15s;display:flex}.sh-priority:hover{border-color:var(--navy-med);background:var(--hover-bg)}.sh-priority-icon{border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.sh-priority.tone-amber .sh-priority-icon{color:#b45309;background:#fffbeb}.sh-priority.tone-violet .sh-priority-icon{color:#6d28d9;background:#f5f3ff}.sh-priority-body{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.sh-priority-top{flex-wrap:wrap;align-items:baseline;gap:.4rem;display:flex}.sh-priority-value{color:var(--text);font-variant-numeric:tabular-nums;font-size:1.15rem;font-weight:750;line-height:1}.sh-priority-label{color:var(--text);font-size:.82rem;font-weight:600}.sh-priority-desc{color:var(--muted);font-size:.75rem;line-height:1.4}.sh-priority-cta{color:var(--blue);white-space:nowrap;flex-shrink:0;align-self:center;font-size:.74rem;font-weight:700}html.dark .sh-stat.tone-good .sh-stat-value{color:#4ade80}html.dark .sh-stat.tone-ok .sh-stat-value{color:#fbbf24}html.dark .sh-stat.tone-low .sh-stat-value{color:#f87171}html.dark .sh-stat-icon,html.dark .sh-resume-icon,html.dark .sh-row-icon,html.dark .sh-tile-icon{color:#93c5fd;background:#5090ee24}html.dark .sh-score.tone-good{color:#86efac;background:#16a34a33}html.dark .sh-score.tone-ok{color:#fbbf24;background:#d9770638}html.dark .sh-score.tone-low{color:#fca5a5;background:#dc262633}html.dark .sh-priority.tone-amber .sh-priority-icon{color:#fbbf24;background:#d977062e}html.dark .sh-priority.tone-violet .sh-priority-icon{color:#c4b5fd;background:#7c3aed33}html.dark .sh-resume-kicker{color:var(--teal)}@media (width<=1240px){.sh-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=1080px){.sh-body{grid-template-columns:minmax(0,1fr)}}@media (width<=860px){.sh-stats,.sh-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.sh-root{gap:1.15rem}.sh-welcome{border-radius:var(--radius-md);padding:1.1rem 1.15rem}.sh-greeting{font-size:1.1rem}.sh-stats{gap:.6rem}.sh-stat{gap:.1rem;min-height:0;padding:.8rem .85rem}.sh-stat-icon{display:none}.sh-stat-value{font-size:1.3rem}.sh-stat-hint{display:none}.sh-tiles{grid-template-columns:1fr;gap:.5rem}.sh-tile{flex-direction:row;align-items:center;gap:.75rem;min-height:56px;padding:.75rem .9rem}.sh-tile-icon{width:32px;height:32px;margin-bottom:0}.sh-tile-desc{display:none}.sh-priority{padding:.85rem .9rem}.sh-priority-cta{align-self:flex-start}.sh-resume{padding:.85rem .9rem}.sh-resume-name{font-size:.92rem}}@media (width>=900px){.shell:not(.guest-shell) .sidebar{transform:translate(0)}.shell:not(.guest-shell) .main{margin-left:var(--sidebar-w);transition:margin-left .22s cubic-bezier(.4,0,.2,1)}.shell:not(.guest-shell) .sidebar-backdrop{display:none!important}.shell.sidebar-collapsed:not(.guest-shell) .sidebar{width:var(--sidebar-collapsed-w)}.shell.sidebar-collapsed:not(.guest-shell) .main{margin-left:var(--sidebar-collapsed-w)}.sidebar.collapsed .sidebar-logo{justify-content:center;padding:.9rem 0}.sidebar.collapsed .sidebar-section-title,.sidebar.collapsed .nav-label,.sidebar.collapsed .nav-badge{display:none}.sidebar.collapsed .nav-item{justify-content:center;gap:0;width:calc(100% - 1rem);margin:0 .5rem;padding:.55rem}.sidebar.collapsed .sidebar-user{justify-content:center}.sidebar.collapsed .user-info{display:none}.sidebar.collapsed .sidebar-footer{padding:.8rem .5rem}.sidebar.collapsed .nav-item{overflow:visible}.sidebar.collapsed .nav-item:has(.nav-badge-red):after{content:"";width:7px;height:7px;box-shadow:0 0 0 2px var(--navy);background:#ef4444;border-radius:50%;position:absolute;top:6px;right:6px}.sidebar.collapsed .sidebar-footer-actions{flex-direction:column;align-items:center;gap:.35rem}.sidebar.collapsed .sign-out-btn{border-radius:var(--radius-sm);justify-content:center;width:34px;min-width:34px;height:34px;margin:0;padding:0}.sidebar.collapsed .sign-out-btn span{display:none}@media (height>=700px){.sidebar.collapsed{overflow:visible}.sidebar.collapsed .nav-item:after,.sidebar.collapsed .sidebar-user:after{content:attr(data-tip);border-radius:var(--radius-sm);background:var(--navy-hover);color:#fff;box-shadow:var(--shadow-md);white-space:nowrap;opacity:0;pointer-events:none;z-index:210;border:1px solid #ffffff24;padding:.32rem .6rem;font-size:.78rem;font-weight:600;transition:opacity .13s,transform .13s;position:absolute;top:50%;left:calc(100% + 8px);transform:translateY(-50%)translate(-4px)}.sidebar.collapsed .nav-item:hover:after,.sidebar.collapsed .nav-item:focus-visible:after,.sidebar.collapsed .sidebar-user:hover:after{opacity:1;transform:translateY(-50%)translate(0)}.sidebar.collapsed .sidebar-user{position:relative}}}.sidebar-footer-actions{flex-direction:column;align-items:flex-start;gap:.15rem;margin-top:.55rem;display:flex}.theme-toggle-icon{border:1.5px solid var(--border);width:34px;min-width:34px;height:34px;color:var(--muted);background:0 0;border-radius:9px;justify-content:center;margin-top:0;padding:0;transition:border-color .15s,color .15s}.theme-toggle-icon:hover{border-color:var(--navy);color:var(--navy);background:0 0}html.dark .theme-toggle-icon:hover{color:#60a5fa;border-color:#60a5fa}.sh-announce-pinned{border-radius:var(--radius-md);color:#92400e;background:#fffbeb;border:1px solid #fde68a;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;font-size:.875rem;display:flex}html.dark .sh-announce-pinned{color:#fbbf24;background:#b453091f;border-color:#f59e0b4d}.sh-announce-pinned-body{flex-direction:column;flex:1;gap:.2rem;display:flex}.sh-announce-pinned-title{font-weight:700}.sh-announce-pinned-text{opacity:.85;font-size:.82rem}.sh-announce-date{opacity:.6;white-space:nowrap;margin-left:auto;font-size:.75rem}.sh-announce-list{flex-direction:column;gap:.75rem;display:flex}.sh-announce-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:.9rem 1rem}.sh-announce-header{justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.3rem;display:flex}.sh-announce-title{color:var(--text);font-size:.875rem;font-weight:700}.sh-announce-item-date{color:var(--muted);white-space:nowrap;font-size:.72rem}.sh-announce-body{color:var(--muted);font-size:.82rem;line-height:1.55}.cb-search-wrap{background:var(--surface);border:1px solid var(--border);border-radius:8px;flex:1;align-items:center;gap:.4rem;max-width:280px;padding:.3rem .65rem;transition:border-color .15s;display:flex}.cb-search-wrap:focus-within{border-color:var(--navy)}.cb-search-icon{color:var(--muted);flex-shrink:0}.cb-search-input{color:var(--text);background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:.85rem}.cb-search-input::placeholder{color:var(--muted)}.cb-search-clear{cursor:pointer;color:var(--muted);background:0 0;border:none;align-items:center;padding:0;display:flex}.cb-search-clear:hover{color:var(--text)}.set-root{flex-direction:column;gap:1.5rem;max-width:680px;padding-bottom:3rem;display:flex}.set-header{color:#fff;background:linear-gradient(135deg,#0a1b4d 0%,#163c8d 60%,#1e5ad7 100%);border-radius:16px;align-items:center;gap:1.25rem;padding:1.5rem 1.75rem;display:flex;box-shadow:0 6px 20px #0a1b4d2e}.set-avatar{background:var(--blue);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;font-size:1.4rem;font-weight:800;display:flex}.set-header-name{font-size:1.1rem;font-weight:700}.set-header-sub{color:#ffffff8c;margin-top:.15rem;font-size:.8rem}.set-section{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:1.5rem}.set-section-title{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin-bottom:1rem;font-size:.72rem;font-weight:700}.set-form{flex-direction:column;gap:1rem;display:flex}.set-field{flex-direction:column;gap:.35rem;display:flex}.set-label{color:var(--text);font-size:.82rem;font-weight:600}.set-input{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:8px;outline:none;padding:.55rem .85rem;font-family:inherit;font-size:.9rem;transition:border-color .15s}.set-input:focus{border-color:var(--navy)}.set-save-btn{align-self:flex-start}.set-msg{border-radius:8px;align-items:center;gap:.4rem;padding:.5rem .75rem;font-size:.85rem;display:flex}.set-msg-ok{color:#16a34a;background:#f0fdf4;border:1px solid #bbf7d0}.set-msg-err{color:#dc2626;background:#fef2f2;border:1px solid #fecaca}html.dark .set-msg-ok{background:#16a34a1a;border-color:#4ade8040}html.dark .set-msg-err{background:#dc26261a;border-color:#f8717140}.set-appearance-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.set-appear-label{color:var(--text);font-size:.9rem;font-weight:600}.set-appear-sub{color:var(--muted);margin-top:.15rem;font-size:.8rem}.set-theme-btn{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:8px;align-items:center;gap:.45rem;padding:.45rem 1rem;font-size:.85rem;transition:border-color .15s;display:flex}.set-theme-btn:hover{border-color:var(--navy)}.set-info-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.65rem 0;display:flex}.set-info-row:last-child{border-bottom:none}.set-info-label{color:var(--muted);font-size:.85rem}.set-info-value{color:var(--text);font-size:.875rem;font-weight:500}.set-badge-active{color:#16a34a;background:#f0fdf4;border-radius:6px;padding:.15rem .6rem;font-size:.75rem;font-weight:700}html.dark .set-badge-active{background:#16a34a26}html.dark .set-input{background:#1e293b}.set-danger{border-color:#fecaca}html.dark .set-danger{border-color:#f871714d}.set-danger-title{color:#dc2626}.set-danger-copy{color:var(--muted);margin:0 0 .65rem;font-size:.85rem;line-height:1.6}.set-danger-warn{color:#dc2626;align-items:center;gap:.4rem;margin:0 0 1rem;font-size:.8rem;font-weight:600;display:flex}.set-danger-btn{color:#dc2626;cursor:pointer;background:0 0;border:1px solid #dc2626;border-radius:8px;align-self:flex-start;align-items:center;gap:.45rem;padding:.5rem 1rem;font-family:inherit;font-size:.85rem;font-weight:600;transition:background .15s,color .15s;display:inline-flex}.set-danger-btn:hover:not(:disabled){color:#fff;background:#dc2626}.set-danger-btn:disabled{opacity:.55;cursor:not-allowed}.set-danger-btn-confirm{color:#fff;background:#dc2626;flex:1;justify-content:center}.set-danger-btn-confirm:hover:not(:disabled){background:#b91c1c;border-color:#b91c1c}.set-danger .set-msg{margin-bottom:1rem}.set-confirm-lead{color:var(--text);margin:0;font-size:.875rem;line-height:1.55}.set-confirm-list{color:var(--muted);margin:0;padding-left:1.1rem;font-size:.83rem;line-height:1.7}.set-confirm-check{cursor:pointer;border:1px solid var(--border);border-radius:10px;align-items:flex-start;gap:.6rem;padding:.7rem .8rem;display:flex}.set-confirm-check:hover{background:var(--hover-bg)}.set-confirm-check input{flex-shrink:0;margin-top:.15rem}.set-confirm-check-label{color:var(--text);font-size:.85rem;font-weight:600;display:block}.set-confirm-check-sub{color:var(--muted);margin-top:.1rem;font-size:.78rem;display:block}.set-confirm-final{color:#dc2626;margin:0;font-size:.8rem;font-weight:600}.ann-root{flex-direction:column;gap:1.25rem;max-width:680px;display:flex}.ann-form-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.25rem}.ann-form-title{color:var(--text);margin-bottom:.85rem;font-size:.85rem;font-weight:700}.ann-form{flex-direction:column;gap:.65rem;display:flex}.ann-pin-label{color:var(--text);cursor:pointer;align-items:center;gap:.4rem;font-size:.85rem;display:flex}.ann-form-actions{gap:.5rem;display:flex}.ann-list{flex-direction:column;gap:.65rem;display:flex}.ann-item{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:1rem 1.1rem;position:relative}.ann-item-header{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.3rem;display:flex}.ann-item-title{color:var(--text);align-items:center;font-size:.9rem;font-weight:700;display:flex}.ann-item-date{color:var(--muted);white-space:nowrap;font-size:.75rem}.ann-item-body{color:var(--muted);margin-bottom:.6rem;font-size:.85rem;line-height:1.55}.ann-item-actions{gap:.25rem;display:flex}.chx-page{max-width:920px;margin:0 auto;padding:2rem 1.5rem 4rem}.chx-header{margin-bottom:1.5rem}.chx-title{color:var(--navy);margin-bottom:.4rem;font-size:1.6rem;font-weight:800}.chx-subtitle{color:var(--muted);max-width:640px;font-size:.9rem;line-height:1.6}html.dark .chx-title{color:#93c5fd}.chx-template-grid{grid-template-columns:repeat(3,1fr);gap:.875rem;margin-bottom:1.5rem;display:grid}@media (width<=860px){.chx-template-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=580px){.chx-template-grid{grid-template-columns:1fr}}.chx-template-card{text-align:left;border-radius:var(--radius-lg);background:var(--surface);border:1.5px solid var(--border);cursor:pointer;flex-direction:column;align-items:flex-start;gap:.6rem;padding:1rem 1.1rem 1.1rem;font-family:inherit;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex;position:relative;overflow:hidden}.chx-template-card:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.chx-template-card.active{border-color:var(--chx-color);box-shadow:var(--shadow-sm)}.chx-template-icon{background:var(--chx-bg);width:38px;height:38px;color:var(--chx-color);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}html.dark .chx-template-icon{background:color-mix(in srgb, var(--chx-color) 22%, transparent)}.chx-template-body{width:100%;min-width:0}.chx-template-label{color:var(--text);margin-bottom:.2rem;font-size:.92rem;font-weight:700}.chx-template-desc{color:var(--muted);font-size:.78rem;line-height:1.5}.chx-template-progress{background:var(--border);height:3px;position:absolute;bottom:0;left:0;right:0}.chx-template-progress-bar{background:var(--chx-color);height:100%}.chx-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.chx-overall-progress{flex:1;align-items:center;gap:.75rem;min-width:200px;display:flex}.chx-overall-progress-track{background:var(--border);border-radius:999px;flex:1;max-width:260px;height:8px;overflow:hidden}.chx-overall-progress-bar{border-radius:999px;height:100%;transition:width .2s}.chx-overall-progress-label{color:var(--muted);white-space:nowrap;font-size:.78rem;font-weight:600}.chx-reset-btn{color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-pill);cursor:pointer;align-items:center;gap:.4rem;padding:.45rem .9rem;font-family:inherit;font-size:.8rem;font-weight:600;display:flex}.chx-reset-btn:hover{color:var(--text);border-color:var(--muted)}.chx-note-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:1.25rem;padding:1.1rem 1.25rem}.chx-note-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.75rem;display:flex}.chx-note-title{color:var(--text);font-size:.95rem;font-weight:700}.chx-note-subtitle{color:var(--muted);max-width:420px;margin-top:.15rem;font-size:.78rem}.chx-note-actions{flex-wrap:wrap;gap:.5rem;display:flex}.chx-note-btn{color:var(--muted);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-pill);cursor:pointer;white-space:nowrap;align-items:center;gap:.4rem;padding:.4rem .8rem;font-family:inherit;font-size:.78rem;font-weight:600;display:flex}.chx-note-btn:hover{color:var(--text);border-color:var(--muted)}.chx-note-btn-ai{color:var(--blue);background:#1e5ad70f;border-color:#1e5ad74d}.chx-note-btn-ai:hover{border-color:var(--blue)}html.dark .chx-note-btn-ai{color:#93c5fd;background:#60a5fa1a;border-color:#60a5fa4d}.chx-note-textarea{resize:vertical;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;min-height:120px;color:var(--text);white-space:pre-wrap;padding:.75rem .9rem;font-family:inherit;font-size:.85rem;line-height:1.6}.chx-note-textarea:focus{border-color:var(--blue);outline:none}.chx-note-textarea::placeholder{color:var(--muted)}.chx-sections{flex-direction:column;gap:.75rem;display:flex}.chx-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.chx-section-head{cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:1rem;width:100%;padding:1rem 1.25rem;font-family:inherit;display:flex}.chx-section-title{color:var(--text);font-size:.95rem;font-weight:700}.chx-section-subtitle{color:var(--muted);margin-top:.15rem;font-size:.78rem}.chx-section-meta{color:var(--muted);flex-shrink:0;align-items:center;gap:.6rem;display:flex}.chx-section-count{font-size:.78rem;font-weight:600}.chx-section.open .chx-section-head{border-bottom:1px solid var(--border)}.chx-section-body{flex-direction:column;gap:1rem;padding:1rem 1.25rem 1.25rem;display:flex}.chx-group-heading{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin-bottom:.5rem;font-size:.7rem;font-weight:700}.chx-notes-group{border-top:1px dashed var(--border);padding-top:1rem}.chx-item-list{flex-wrap:wrap;align-items:flex-start;gap:.5rem;display:flex}.chx-item-wrap{flex-direction:column;gap:.4rem;display:flex}.chx-item{border-radius:var(--radius-pill);background:var(--bg);border:1px solid var(--border);cursor:pointer;color:var(--text);align-items:center;gap:.5rem;padding:.4rem .7rem .4rem .5rem;font-family:inherit;font-size:.82rem;transition:background .12s,border-color .12s;display:flex}.chx-item:hover{border-color:var(--muted)}.chx-item.checked{border-color:var(--blue);color:var(--blue);background:#1e5ad71a}html.dark .chx-item.checked{color:#93c5fd;background:#60a5fa26;border-color:#60a5fa}.chx-item-box{border:1.5px solid var(--border);color:#fff;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;transition:background .12s,border-color .12s;display:flex}.chx-item.checked .chx-item-box{background:var(--blue);border-color:var(--blue)}html.dark .chx-item.checked .chx-item-box{background:#60a5fa;border-color:#60a5fa}.chx-item-label{white-space:nowrap}.chx-item-subcount{background:var(--blue);color:#fff;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 .3rem;font-size:.65rem;font-weight:700;display:flex}.chx-item-caret{color:inherit;opacity:.65;border-radius:0 var(--radius-pill) var(--radius-pill) 0;flex-shrink:0;justify-content:center;align-items:center;margin:-.4rem -.3rem -.4rem 0;padding:.4rem .5rem;display:flex}.chx-item-caret:hover{opacity:1}.chx-suboptions{border-left:2px solid var(--border);flex-wrap:wrap;gap:.4rem;margin-left:.5rem;padding:.6rem .25rem .2rem .75rem;display:flex}.chx-suboption{border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border);cursor:pointer;color:var(--muted);align-items:center;gap:.3rem;padding:.3rem .6rem;font-family:inherit;font-size:.76rem;transition:background .12s,border-color .12s,color .12s;display:flex}.chx-suboption:hover{border-color:var(--muted);color:var(--text)}.chx-suboption.checked{background:var(--blue);border-color:var(--blue);color:#fff}html.dark .chx-suboption.checked{color:#0f1117;background:#60a5fa;border-color:#60a5fa}.chx-fields-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.9rem;display:grid}.chx-field{flex-direction:column;gap:.35rem;display:flex}.chx-field-label{color:var(--muted);font-size:.74rem;font-weight:600}.chx-field-input{color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);padding:.55rem .7rem;font-family:inherit;font-size:.85rem}.chx-field-input:focus{border-color:var(--blue);outline:none}select.chx-field-input{cursor:pointer}.chx-freetext-textarea{resize:vertical;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;min-height:90px;color:var(--text);padding:.75rem .9rem;font-family:inherit;font-size:.85rem;line-height:1.6}.chx-freetext-textarea:focus{border-color:var(--blue);outline:none}.chx-freetext-textarea::placeholder{color:var(--muted)}.chx-systems{flex-direction:column;gap:1rem;display:flex}.chx-system-tags{flex-wrap:wrap;gap:.45rem;display:flex}.chx-system-tag{border-radius:var(--radius-pill);background:var(--bg);border:1px solid var(--border);color:var(--muted);cursor:pointer;padding:.4rem .8rem;font-family:inherit;font-size:.78rem;font-weight:600;transition:background .12s,border-color .12s,color .12s}.chx-system-tag:hover{border-color:var(--muted);color:var(--text)}.chx-system-tag.active{background:var(--blue);border-color:var(--blue);color:#fff}html.dark .chx-system-tag.active{color:#0f1117;background:#60a5fa;border-color:#60a5fa}.chx-systems-empty{color:var(--muted);background:var(--bg);border:1px dashed var(--border);border-radius:var(--radius-md);padding:.9rem 1rem;font-size:.82rem}.chx-system-block{border-top:1px solid var(--border);padding-top:.9rem}.chx-system-block-title{color:var(--text);margin-bottom:.6rem;font-size:.78rem;font-weight:700}@media (width<=640px){.chx-page{padding:1.25rem 1rem 3rem}.chx-item-label{white-space:normal}}.contact-page{max-width:720px;margin:0 auto;padding:0 0 2rem}.contact-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;display:flex;overflow:hidden}.contact-header{border-bottom:1px solid var(--border);align-items:center;gap:.9rem;padding:1.5rem;display:flex}.contact-header-icon{width:44px;height:44px;color:var(--blue);background:#1e5ad71a;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.contact-header-icon.feedback{color:#7c3aed;background:#7c3aed1a}html.dark .contact-header-icon.feedback{color:#a78bfa;background:#a78bfa29}.contact-title{color:var(--text);margin:0;font-size:1.05rem;font-weight:700}.contact-sub{color:var(--muted);margin:.2rem 0 0;font-size:.82rem}.contact-header .adm-badge{flex-shrink:0;margin-left:auto}.contact-thread{flex-direction:column;flex:1;gap:.7rem;min-height:280px;max-height:480px;padding:1.25rem 1.5rem;display:flex;overflow-y:auto}.contact-empty{color:var(--muted);opacity:.7;text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.6rem;padding:2rem 0;display:flex}.contact-bubble-row{display:flex}.contact-bubble-row.student{justify-content:flex-end}.contact-bubble-row.admin{justify-content:flex-start}.contact-bubble{background:var(--surface-alt,#f1f5f9);max-width:78%;color:var(--text);border-radius:14px;padding:.6rem .85rem}.contact-bubble-row.student .contact-bubble{color:#fff;background:linear-gradient(135deg,#1e5ad7 0%,#1341b8 100%);border-bottom-right-radius:4px}.contact-bubble-row.admin .contact-bubble{border-bottom-left-radius:4px}.contact-bubble-text{white-space:pre-wrap;font-size:.875rem;line-height:1.5}.contact-bubble-time{opacity:.65;margin-top:.25rem;font-size:.68rem}.sup-thread-messages .contact-bubble-row.admin{justify-content:flex-end}.sup-thread-messages .contact-bubble-row.admin .contact-bubble{background:var(--navy);color:#fff;border-bottom-right-radius:4px;border-bottom-left-radius:14px}.sup-thread-messages .contact-bubble-row.student{justify-content:flex-start}.sup-thread-messages .contact-bubble-row.student .contact-bubble{border-bottom-right-radius:14px;border-bottom-left-radius:4px}.contact-composer{border-top:1px solid var(--border);background:var(--surface);align-items:flex-end;gap:.6rem;padding:1rem 1.25rem;display:flex}.contact-composer-input{resize:none;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:10px;flex:1;padding:.6rem .75rem;font-family:inherit;font-size:.875rem}.contact-composer-input:focus{border-color:var(--blue);outline:none}.contact-send-btn{flex-shrink:0}.feedback-body{padding:1.5rem}.feedback-textarea{width:100%;margin-bottom:1rem}.feedback-done{text-align:center;flex-direction:column;align-items:center;gap:.75rem;padding:1.5rem 0;display:flex}.feedback-done-icon{color:#16a34a;background:#16a34a1f;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;display:flex}html.dark .feedback-done-icon{color:#4ade80;background:#4ade8024}.feedback-done p{color:var(--text);margin:0;font-size:.9rem}@media (width<=640px){.contact-header{padding:1.1rem}.contact-thread{max-height:400px;padding:1rem}.contact-composer{padding:.75rem 1rem}.contact-bubble{max-width:88%}}.abt{flex-direction:column;gap:1.25rem;max-width:760px;margin:0 auto;display:flex}.abt-loading{text-align:center;color:var(--muted);padding:3rem}.abt-reveal{opacity:0;animation:.55s cubic-bezier(.2,.8,.2,1) both abtIn}@keyframes abtIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.abt-reveal{opacity:1;animation:none}}.abt-hero{border-radius:var(--radius-xl);background:linear-gradient(150deg, var(--navy) 0%, var(--navy-hover) 55%, #142a63 100%);text-align:center;box-shadow:var(--shadow-md);padding:3rem 2rem 2.75rem;position:relative;overflow:hidden}.abt-hero-glow{pointer-events:none;background:#ffffff0f;border-radius:50%;position:absolute}.abt-hero-glow-1{width:260px;height:260px;top:-90px;right:-70px}.abt-hero-glow-2{background:#1e5ad729;width:220px;height:220px;bottom:-110px;left:-80px}.abt-hero-inner{z-index:1;flex-direction:column;align-items:center;display:flex;position:relative}.abt-hero-logo{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff14;border:1px solid #ffffff24;border-radius:22px;justify-content:center;align-items:center;width:96px;height:96px;margin-bottom:1.25rem;display:flex}.abt-hero-logo img{object-fit:contain;width:74px;height:74px}.abt-hero-badge{color:#ffffffd1;border-radius:var(--radius-pill);letter-spacing:.07em;text-transform:uppercase;background:#ffffff1a;border:1px solid #ffffff2e;margin-bottom:.9rem;padding:.32rem .85rem;font-size:.68rem;font-weight:700;display:inline-block}.abt-hero-title{color:#fff;letter-spacing:-.02em;margin-bottom:.6rem;font-size:clamp(1.65rem,3.5vw,2.15rem);font-weight:900;line-height:1.1}.abt-hero-tagline{color:#ffffffb3;max-width:34rem;font-size:.95rem;line-height:1.6}.abt-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);padding:1.75rem}.abt-eyebrow{text-transform:uppercase;letter-spacing:.1em;color:var(--blue);margin-bottom:1rem;font-size:.7rem;font-weight:800}html.dark .abt-eyebrow{color:#60a5fa}.abt-prose{color:var(--text);font-size:.95rem;line-height:1.8}.abt-prose p{margin-bottom:.85rem}.abt-prose p:last-child{margin-bottom:0}.abt-grid{grid-template-columns:1fr 1fr;gap:.85rem;display:grid}.abt-feature{text-align:left;background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;align-items:center;gap:.9rem;padding:1rem 1.1rem;font-family:inherit;transition:border-color .15s,box-shadow .15s,transform .12s;display:flex}.abt-feature:hover{border-color:var(--blue);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.abt-feature-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.abt-feature-text{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.abt-feature-label{color:var(--text);font-size:.9rem;font-weight:700}.abt-feature-desc{color:var(--muted);font-size:.78rem;line-height:1.4}.abt-feature-arrow{color:var(--muted);flex-shrink:0;transition:transform .15s,color .15s;transform:rotate(180deg)}.abt-feature:hover .abt-feature-arrow{color:var(--blue);transform:rotate(180deg)translate(-3px)}.abt-cta{border-radius:var(--radius-lg);background:linear-gradient(135deg,#1e5ad7 0%,#1341b8 100%);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.75rem 2rem;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 28px #1e5ad747}.abt-cta-glow{pointer-events:none;background:#ffffff1a;border-radius:50%;width:220px;height:220px;position:absolute;top:-80px;right:-40px}.abt-cta-body{z-index:1;position:relative}.abt-cta-title{color:#fff;margin-bottom:.2rem;font-size:1.2rem;font-weight:800}.abt-cta-desc{color:#ffffffd1;font-size:.875rem}.abt-cta-actions{z-index:1;flex-wrap:wrap;gap:.6rem;display:flex;position:relative}.abt-cta-btn{cursor:pointer;white-space:nowrap;color:#fff;background:#ffffff26;border:1px solid #ffffff40;border-radius:10px;align-items:center;gap:.45rem;padding:.6rem 1.1rem;font-family:inherit;font-size:.85rem;font-weight:700;transition:background .15s,transform .12s;display:inline-flex}.abt-cta-btn:hover{background:#ffffff3d;transform:translateY(-1px)}.abt-cta-btn.primary{color:var(--blue-dark);background:#fff;border-color:#fff}.abt-cta-btn.primary:hover{background:#ffffffe6}@media (width<=640px){.abt-hero{padding:2.25rem 1.25rem 2rem}.abt-section{padding:1.35rem}.abt-grid{grid-template-columns:1fr}.abt-cta{text-align:center;flex-direction:column;align-items:stretch;padding:1.5rem}.abt-cta-actions{justify-content:center}.abt-cta-btn{flex:1;justify-content:center}}.gsp-modal-icon{background:var(--icon-tile-bg);width:46px;height:46px;color:var(--icon-tile-fg);border-radius:50%;justify-content:center;align-items:center;display:flex}.gsp-modal-text{color:var(--text);font-size:.9rem;line-height:1.55}.gsp-perks{flex-direction:column;gap:.45rem;margin-top:.1rem;list-style:none;display:flex}.gsp-perks li{color:var(--muted);align-items:flex-start;gap:.5rem;font-size:.83rem;line-height:1.45;display:flex}.gsp-perks li svg{color:var(--success-fg);flex-shrink:0;margin-top:.18rem}.gsp-modal-actions{flex-wrap:wrap;padding-bottom:.6rem}.gsp-btn{cursor:pointer;border-radius:10px;flex:150px;min-height:42px;padding:.65rem 1rem;font-family:inherit;font-size:.875rem;font-weight:700;transition:background .15s,border-color .15s,color .15s}.gsp-btn-primary{background:var(--accent-fill);color:var(--on-accent);border:1.5px solid var(--accent-fill)}.gsp-btn-primary:hover{background:var(--accent-fill-hover);border-color:var(--accent-fill-hover)}.gsp-btn-ghost{background:var(--surface);color:var(--text);border:1.5px solid var(--border-strong)}.gsp-btn-ghost:hover{border-color:var(--accent-border);color:var(--accent-text);background:var(--hover-bg)}.gsp-dismiss{cursor:pointer;width:100%;color:var(--muted);background:0 0;border:none;padding:.15rem 1.25rem 1.1rem;font-family:inherit;font-size:.78rem;text-decoration:underline;display:block}.gsp-dismiss:hover{color:var(--text)}.gsp-panel{text-align:center;background:var(--surface);border:1px solid var(--border);max-width:460px;box-shadow:var(--shadow-xs);border-radius:16px;flex-direction:column;align-items:center;gap:.7rem;margin:1rem auto;padding:2.25rem 1.75rem;display:flex}.gsp-panel-icon{background:var(--icon-tile-bg);width:58px;height:58px;color:var(--icon-tile-fg);border-radius:50%;justify-content:center;align-items:center;margin-bottom:.15rem;display:flex}.gsp-panel-title{color:var(--text);margin:0;font-size:1.05rem;font-weight:700}.gsp-panel-text{color:var(--muted);margin:0;font-size:.875rem;line-height:1.6}.gsp-panel-perks{text-align:left;align-self:stretch;margin-top:.35rem}.gsp-panel-actions{flex-wrap:wrap;gap:.6rem;width:100%;margin-top:.6rem;display:flex}.gsp-banner{border:1px solid var(--info-border);border-left:3px solid var(--accent-border);background:var(--info-bg);border-radius:10px;flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:1rem;padding:.7rem .9rem;display:flex}.gsp-banner-icon{color:var(--info-fg);flex-shrink:0}.gsp-banner-text{min-width:0;color:var(--text);flex:240px;font-size:.82rem;line-height:1.45}.gsp-banner-actions{flex-shrink:0;gap:.4rem;display:flex}.gsp-banner-btn{border:1.5px solid var(--border-strong);background:var(--surface);min-height:32px;color:var(--text);cursor:pointer;border-radius:8px;padding:.35rem .8rem;font-family:inherit;font-size:.78rem;font-weight:700;transition:background .15s,border-color .15s,color .15s}.gsp-banner-btn:hover{border-color:var(--accent-border);color:var(--accent-text)}.gsp-banner-btn.primary{background:var(--accent-fill);border-color:var(--accent-fill);color:var(--on-accent)}.gsp-banner-btn.primary:hover{background:var(--accent-fill-hover);border-color:var(--accent-fill-hover);color:var(--on-accent)}.subject-browser>.gsp-banner{margin:0 1.5rem 1rem}.subject-files>.gsp-banner{margin:0 0 1.25rem}@media (width<=640px){.gsp-banner{gap:.5rem;padding:.65rem .75rem}.gsp-banner-text{flex-basis:100%}.gsp-banner-actions{width:100%}.gsp-banner-btn{flex:1}.gsp-btn{flex-basis:100%}}.cm-head{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.75rem 1rem;padding:1rem 1.25rem;display:flex}.cm-head-titles{flex-direction:column;gap:.1rem;min-width:0;margin-right:auto;display:flex}.cm-head h2{letter-spacing:-.01em;color:var(--text);font-size:1.05rem;font-weight:700}.cm-head-sub{color:var(--muted);font-size:.74rem}.cm-years{background:var(--surface-alt);border:1px solid var(--border);border-radius:11px;gap:.15rem;padding:.2rem;display:flex}.cm-years .year-tab{color:var(--muted);background:0 0;border:none;border-radius:8px;padding:.32rem .7rem;font-size:.76rem;font-weight:600}.cm-years .year-tab:hover{background:var(--hover-bg);color:var(--text)}.cm-years .year-tab.active{background:var(--navy);color:#fff;border-color:#0000}.cm-years .year-tab.active:hover{background:var(--navy);color:#fff}.cm-crumbs{border-bottom:1px solid var(--border);background:var(--surface-alt);color:var(--muted);flex-wrap:wrap;align-items:center;gap:.25rem;padding:.5rem 1.25rem;font-size:.78rem;display:flex}.cm-crumb-group{display:contents}.cm-crumb-root{font-weight:600}.cm-crumb{font:inherit;color:var(--muted);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:none;border-radius:6px;max-width:22rem;padding:.12rem .3rem;overflow:hidden}.cm-crumb:hover:not(:disabled){background:var(--hover-bg);color:var(--text)}.cm-crumb.current{color:var(--text);cursor:default;font-weight:700}.cm-crumb:disabled{cursor:default}.cm-crumb-sep{opacity:.45}.cm-card .browser-cols{grid-template-columns:240px minmax(228px,1fr) minmax(300px,1.6fr)}.cm-card .browser-col{scrollbar-width:thin;max-height:min(64vh,640px)}.cm-col-head{z-index:2;align-items:center;gap:.45rem;display:flex}.cm-col-label{flex-shrink:0}.cm-col-count{background:var(--hover-bg);border:1px solid var(--border);letter-spacing:0;color:var(--muted);font-variant-numeric:tabular-nums;border-radius:99px;padding:.05rem .4rem;font-size:.66rem;font-weight:700}.adm-files-head .adm-upload-btn{margin-left:auto}.cm-col-action{color:var(--muted);opacity:.6;margin-left:auto}.cm-col-action:hover:not(:disabled){opacity:1;color:var(--blue)}.cm-card .browser-col>.adm-add-form{z-index:2;border-top:1px solid var(--border);background:var(--surface-alt);flex-shrink:0;position:sticky;bottom:0}.cm-card .browser-item{align-items:center;gap:.55rem;min-height:46px;padding:.62rem .85rem;position:relative}.cm-card .adm-item-name{-webkit-line-clamp:3;white-space:normal;overflow-wrap:break-word;-webkit-box-orient:vertical;font-size:.855rem;line-height:1.3;display:-webkit-box;overflow:hidden}.cm-card .adm-actions{opacity:1;pointer-events:auto;flex-shrink:0;align-items:center;gap:.15rem;margin-left:auto;display:flex;position:static}.cm-card .browser-item.selected{padding-left:calc(.85rem - 3px)}.cm-card .adm-file-row{align-items:flex-start}.cm-card .adm-file-row .adm-actions{align-self:flex-start;margin-top:.1rem}.cm-menu-btn{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:background .12s,color .12s;display:inline-flex}.cm-menu-btn:hover{background:var(--hover-bg);color:var(--text)}.cm-menu-btn.open{background:var(--selected-bg);color:var(--navy)}.cm-menu-btn:focus-visible{outline:2px solid var(--blue);outline-offset:1px}.cm-menu{z-index:60;background:var(--surface);border:1px solid var(--border);min-width:190px;box-shadow:var(--shadow-md);border-radius:11px;flex-direction:column;gap:.1rem;padding:.3rem;display:flex;position:fixed}.cm-menu-item{width:100%;font:inherit;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:7px;align-items:center;gap:.55rem;padding:.48rem .6rem;font-size:.82rem;display:flex}.cm-menu-item:hover:not(:disabled){background:var(--hover-bg)}.cm-menu-item:disabled{opacity:.45;cursor:not-allowed}.cm-menu-item.danger{color:#dc2626}.cm-menu-item.danger:hover:not(:disabled){background:#dc262617}.cm-menu-item svg{opacity:.75;flex-shrink:0}.cm-card .adm-tree-row{gap:.35rem}.cm-card .adm-tree-toggle{border-radius:5px;width:18px;height:18px}.cm-card .adm-tree-toggle:hover:not(.empty){background:var(--hover-bg)}.cm-card .col-empty{text-align:center;padding:2rem 1.25rem;line-height:1.5}@media (hover:none){.cm-menu-btn{width:38px;height:38px}.cm-menu-item{padding:.62rem .7rem;font-size:.88rem}.cm-card .adm-item-name{-webkit-line-clamp:3}}@media (width<=1100px){.cm-card .browser-cols{grid-template-columns:1fr}.cm-card .browser-col{border-right:none;border-bottom:1px solid var(--border);max-height:48vh}.cm-card .browser-col:last-child{border-bottom:none;max-height:none}.cm-head{padding:.85rem 1rem}.cm-crumbs{padding:.5rem 1rem}}@media (width<=640px){.cm-head{gap:.6rem}.cm-head-titles{flex-basis:100%;margin-right:0}.cm-years{scrollbar-width:none;flex:auto;overflow-x:auto}.cm-years::-webkit-scrollbar{display:none}.cm-crumb{max-width:11rem}.cm-crumb.current{white-space:normal;max-width:100%;line-height:1.35;overflow:visible}.cm-card .adm-add-form:not(.adm-tree-sub)>.adm-input{flex:auto}.cm-card .adm-add-form>.adm-btn{flex-shrink:0}}.cm-grip{color:var(--border);cursor:grab}.cm-card .browser-item:hover .cm-grip{color:var(--muted)}.cm-card .browser-item[draggable=true]:active,.cm-card .browser-item[draggable=true]:active .cm-grip{cursor:grabbing}.cm-card .browser-item.cm-dragging{opacity:.4}.cm-card .browser-item.cm-drop-before:after,.cm-card .browser-item.cm-drop-after:after{content:"";background:var(--navy);pointer-events:none;z-index:1;height:2px;position:absolute;left:0;right:0}.cm-card .browser-item.cm-drop-before:after{top:-1px}.cm-card .browser-item.cm-drop-after:after{bottom:-1px}.cm-col-hint{min-width:0;color:var(--muted);text-transform:none;letter-spacing:0;text-align:right;flex-shrink:1;margin-left:auto;font-size:.62rem;font-weight:600;line-height:1.25}@media (hover:none){.cm-grip{display:none}}@media (prefers-reduced-motion:reduce){.cm-menu-btn{transition:none}}html.dark .cm-years .year-tab.active,html.dark .cm-years .year-tab.active:hover{color:#93c5fd;background:#1e3a5f}html.dark .cm-col-count{background:#ffffff0f}html.dark .cm-menu-btn.open{background:var(--selected-bg);color:#93c5fd}html.dark .cm-menu-item.danger{color:#f87171}html.dark .cm-menu-item.danger:hover:not(:disabled){background:#dc262629}html.dark .cm-grip{color:#ffffff2e}html.dark .cm-card .browser-item:hover .cm-grip{color:#fff6}html.dark .cm-card .browser-item.cm-drop-before:after,html.dark .cm-card .browser-item.cm-drop-after:after{background:#3b82f6}.site-footer{border-top:1px solid var(--border);background:var(--surface-alt);margin-top:auto}.site-footer-top{width:100%;max-width:var(--content-max);padding:var(--space-7) var(--page-pad) var(--space-6);align-items:flex-start;gap:var(--space-6) var(--space-10);flex-wrap:wrap;margin-inline:auto;display:flex}.site-footer-brand{flex:2 17rem;min-width:0}.site-footer-col{flex:10.5rem;min-width:0}.site-footer-wordmark{letter-spacing:-.01em;color:var(--navy);font-size:1rem;font-weight:700}html.dark .site-footer-wordmark{color:var(--text)}.site-footer-fullname{max-width:24rem;color:var(--muted);margin-top:.3rem;font-size:.8rem;line-height:1.55}.site-footer-col-title{letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin-bottom:.55rem;font-size:.68rem;font-weight:700}.site-footer-list{flex-direction:column;align-items:flex-start;list-style:none;display:flex}.site-footer-link{cursor:pointer;color:var(--text);text-align:left;border-radius:var(--radius-sm);background:0 0;border:none;align-items:center;gap:.45rem;margin-left:-.4rem;padding:.3rem .4rem;font-family:inherit;font-size:.84rem;font-weight:500;transition:color .15s;display:inline-flex}.site-footer-link:hover{color:var(--blue)}.site-footer-link.active{color:var(--blue);font-weight:650}.site-footer-link:focus-visible{box-shadow:var(--focus-ring);outline:none}.site-footer-badge{color:#fff;border-radius:var(--radius-pill);background:#ef4444;flex-shrink:0;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 .3rem;font-size:.64rem;font-weight:700;display:inline-flex}.site-footer-contact-note{color:var(--muted);margin-bottom:.3rem;font-size:.8rem}.site-footer-email{color:var(--blue);overflow-wrap:anywhere;border-bottom:1px solid #0000;flex-wrap:wrap;align-items:center;gap:.4rem;padding-bottom:1px;font-size:.84rem;font-weight:600;text-decoration:none;display:inline-flex}.site-footer-email:hover{border-bottom-color:currentColor}.site-footer-email:focus-visible{box-shadow:var(--focus-ring);border-radius:3px;outline:none}.site-footer-bottom{border-top:1px solid var(--border)}.site-footer-legal{width:100%;max-width:var(--content-max);padding:var(--space-4) var(--page-pad);color:var(--muted);margin-inline:auto;font-size:.74rem;line-height:1.5}@media (hover:none){.site-footer-link{padding-block:.5rem}}.sidebar-user{text-align:left;cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;width:100%;margin:-.4rem -.45rem;padding:.4rem .45rem;font-family:inherit;transition:background .15s}.sidebar-user:hover{background:#ffffff14}.sidebar-user:focus-visible{box-shadow:var(--focus-ring);outline:none}.sidebar-user.active{background:#ffffff1f}.sidebar-user.active .user-year{color:#ffffff9e}.sidebar-user-gear{color:#fff6;flex-shrink:0;align-items:center;transition:color .15s;display:inline-flex}.sidebar-user:hover .sidebar-user-gear,.sidebar-user.active .sidebar-user-gear{color:#fff}@media (width>=900px){.sidebar.collapsed .sidebar-user-gear{display:none}.sidebar.collapsed .sidebar-user{margin:0;padding:.4rem}@media (height>=700px){.sidebar.collapsed .sidebar-user:focus-visible:after{opacity:1;transform:translateY(-50%)translate(0)}}}.subject-list-icon,.fc-subject-icon,.sh-resume-icon,.sh-row-icon{position:relative}.subject-img-ph{justify-content:center;align-items:center;transition:opacity .25s;display:flex;position:absolute;inset:0}.subject-img-ph.is-hidden{opacity:0}.subject-img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .35s;display:block;position:absolute;inset:0}.subject-img.is-loaded{opacity:1}.subject-img.is-failed{display:none}@media (prefers-reduced-motion:reduce){.subject-img,.subject-img-ph{transition:none}}.sn-tone-info{--sn-bg:var(--info-bg);--sn-fg:var(--info-fg);--sn-line:var(--info-border)}.sn-tone-warning{--sn-bg:var(--warning-bg);--sn-fg:var(--warning-fg);--sn-line:var(--warning-border)}.sn-tone-error{--sn-bg:var(--error-bg);--sn-fg:var(--error-fg);--sn-line:var(--error-border)}.sn-tone-success{--sn-bg:var(--success-bg);--sn-fg:var(--success-fg);--sn-line:var(--success-border)}.sn-tone-teal{--sn-bg:var(--teal-soft);--sn-fg:var(--teal);--sn-line:#0e7c8659}.sn-list{flex-direction:column;gap:.6rem;margin:0 0 1.25rem;display:flex}.sn-card{background:var(--sn-bg);border:1px solid var(--sn-line);border-left:3px solid var(--sn-fg);border-radius:var(--radius-sm);padding:.7rem .85rem .6rem;position:relative}.sn-head{align-items:flex-start;gap:.55rem;display:flex}.sn-tile{background:var(--surface);border:1px solid var(--sn-line);width:26px;height:26px;color:var(--sn-fg);border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.sn-head-text{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.sn-kind{text-transform:uppercase;letter-spacing:.09em;color:var(--sn-fg);align-items:center;gap:.4rem;font-size:.64rem;font-weight:800;display:flex}.sn-pinned{letter-spacing:.06em;color:var(--muted);text-transform:uppercase;align-items:center;gap:.15rem;font-size:.6rem;font-weight:700;display:inline-flex}.sn-title{color:var(--text);overflow-wrap:anywhere;font-size:.92rem;font-weight:700;line-height:1.3}.sn-dismiss{cursor:pointer;width:24px;height:24px;color:var(--muted);opacity:.75;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;margin:-.15rem -.2rem 0 0;transition:opacity .12s,background .12s;display:inline-flex}.sn-dismiss:hover{opacity:1;background:var(--surface)}.sn-body{color:var(--text);overflow-wrap:anywhere;margin-top:.4rem;padding-left:calc(26px + .55rem);font-size:.83rem;line-height:1.55}.sn-body.clamped{max-height:6.4rem;overflow:hidden;-webkit-mask-image:linear-gradient(#000 70%,#0000 100%);mask-image:linear-gradient(#000 70%,#0000 100%)}.sn-body>*+*{margin-top:.45rem}.sn-body p{margin:0}.sn-body h4,.sn-body h5{letter-spacing:.01em;color:var(--text);font-size:.82rem;font-weight:800}.sn-body ul,.sn-body ol{margin:.35rem 0 0;padding-left:1.15rem}.sn-body li+li{margin-top:.2rem}.sn-body li::marker{color:var(--sn-fg)}.sn-body code{background:var(--surface);border:1px solid var(--sn-line);border-radius:5px;padding:.08rem .3rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78em}.sn-body a{color:var(--accent-text);text-underline-offset:2px;font-weight:600;text-decoration:underline}.sn-body a:hover{color:var(--blue)}.sn-body hr{border:none;border-top:1px solid var(--sn-line);margin:.6rem 0}.sn-foot{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.45rem;padding-left:calc(26px + .55rem);display:flex}.sn-more{cursor:pointer;color:var(--sn-fg);background:0 0;border:none;align-items:center;gap:.25rem;padding:0;font-family:inherit;font-size:.74rem;font-weight:700;display:inline-flex}.sn-more:hover{text-underline-offset:2px;text-decoration:underline}.sn-stamp{color:var(--muted);margin-left:auto;font-size:.68rem}.sn-restore{border:1px dashed var(--border);border-radius:var(--radius-pill);cursor:pointer;color:var(--muted);background:0 0;align-self:flex-start;align-items:center;gap:.35rem;padding:.3rem .7rem;font-family:inherit;font-size:.72rem;font-weight:600;display:inline-flex}.sn-restore:hover{border-color:var(--accent-border);color:var(--accent-text)}.subject-card-note{z-index:2;border-radius:var(--radius-pill);color:#fff;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0a1b4d9e;align-items:center;gap:.2rem;min-width:20px;height:20px;padding:0 .35rem;font-size:.64rem;font-weight:800;display:inline-flex;position:absolute;top:.45rem;right:.45rem}.subject-list-note{border-radius:var(--radius-pill);background:var(--info-bg);color:var(--info-fg);flex-shrink:0;align-items:center;gap:.2rem;padding:.1rem .4rem;font-size:.66rem;font-weight:800;display:inline-flex}.sn-modal{max-width:760px}.sn-modal-sub{color:var(--muted);margin-top:.15rem;font-size:.72rem;display:block}.sn-modal-error{margin:1rem 1.5rem 0}.sn-manage{flex-direction:column;min-height:0;display:flex}.sn-empty{text-align:center;color:var(--muted);flex-direction:column;align-items:center;gap:.5rem;padding:2.5rem 2rem;display:flex}.sn-empty svg{color:var(--border-strong)}.sn-empty p{color:var(--text);font-size:.92rem;font-weight:700}.sn-empty small{max-width:44ch;font-size:.78rem;line-height:1.55}.sn-rows{flex-direction:column;gap:.5rem;min-height:0;padding:1rem 1.5rem;display:flex;overflow-y:auto}.sn-row{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--sn-fg);border-radius:var(--radius-sm);align-items:flex-start;gap:.6rem;padding:.65rem .75rem;display:flex}.sn-row.sn-status-draft,.sn-row.sn-status-expired{background:var(--surface-alt)}.sn-row.sn-status-draft .sn-row-title,.sn-row.sn-status-expired .sn-row-title,.sn-row.sn-status-draft .sn-row-excerpt,.sn-row.sn-status-expired .sn-row-excerpt{color:var(--muted)}.sn-row-tile{background:var(--sn-bg);border:1px solid var(--sn-line);width:26px;height:26px;color:var(--sn-fg);border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.sn-row-text{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.sn-row-top{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.sn-row-kind{text-transform:uppercase;letter-spacing:.09em;color:var(--sn-fg);font-size:.62rem;font-weight:800}.sn-row-title{color:var(--text);overflow-wrap:anywhere;font-size:.85rem;font-weight:700}.sn-row-excerpt{color:var(--muted);overflow-wrap:anywhere;font-size:.76rem;line-height:1.45}.sn-row-window{color:var(--muted);align-items:center;gap:.3rem;font-size:.68rem;display:inline-flex}.sn-chip{border-radius:var(--radius-pill);text-transform:uppercase;letter-spacing:.06em;border:1px solid #0000;align-items:center;gap:.2rem;padding:.08rem .4rem;font-size:.6rem;font-weight:800;display:inline-flex}.sn-chip-live{background:var(--success-bg);color:var(--success-fg);border-color:var(--success-border)}.sn-chip-draft{background:var(--surface-alt);color:var(--muted);border-color:var(--border-strong)}.sn-chip-scheduled{background:var(--info-bg);color:var(--info-fg);border-color:var(--info-border)}.sn-chip-expired{background:var(--warning-bg);color:var(--warning-fg);border-color:var(--warning-border)}.sn-chip-pinned{background:var(--surface-alt);color:var(--muted);border-color:var(--border)}.sn-row-actions{flex-shrink:0;align-items:center;gap:.1rem;display:flex}.sn-row-confirm{color:var(--text);flex-shrink:0;align-items:center;gap:.4rem;font-size:.76rem;font-weight:600;display:flex}.sn-manage-foot,.sn-editor-foot{border-top:1px solid var(--border);flex-shrink:0;align-items:center;gap:.5rem;padding:1rem 1.5rem;display:flex}.sn-editor{flex-direction:column;min-height:0;display:flex}.sn-editor-scroll{flex-direction:column;gap:1.1rem;min-height:0;padding:1.25rem 1.5rem;display:flex;overflow-y:auto}.sn-field{flex-direction:column;gap:.4rem;display:flex}.sn-label{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-size:.7rem;font-weight:800}.sn-optional{text-transform:none;letter-spacing:0;opacity:.8;font-weight:600}.sn-help{color:var(--muted);font-size:.74rem;line-height:1.5}.sn-help code{background:var(--surface-alt);border:1px solid var(--border);border-radius:4px;padding:.05rem .25rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em}.sn-help-warn{color:var(--warning-fg);align-items:center;gap:.3rem;font-weight:600;display:inline-flex}.sn-kind-pills{flex-wrap:wrap;gap:.4rem;display:flex}.sn-kind-pill{border-radius:var(--radius-pill);cursor:pointer;background:var(--surface);border:1px solid var(--border);color:var(--muted);align-items:center;gap:.3rem;padding:.35rem .65rem;font-family:inherit;font-size:.76rem;font-weight:700;transition:border-color .12s,background .12s,color .12s;display:inline-flex}.sn-kind-pill:hover{border-color:var(--sn-line);color:var(--sn-fg)}.sn-kind-pill.active{background:var(--sn-bg);border-color:var(--sn-fg);color:var(--sn-fg);box-shadow:inset 0 0 0 1px var(--sn-fg)}.sn-toolbar{border:1px solid var(--border);border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:var(--surface-alt);border-bottom:none;align-items:center;gap:.15rem;padding:.25rem;display:flex}.sn-tool{min-width:28px;height:26px;color:var(--muted);font-size:.78rem;font-weight:700}.sn-tool:hover{color:var(--accent-text)}.sn-tool-sep{background:var(--border);width:1px;height:16px;margin:0 .2rem}.sn-counter{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto;padding-right:.3rem;font-size:.68rem}.sn-counter.low{color:var(--warning-fg);font-weight:700}.sn-textarea{border-radius:0 0 var(--radius-sm) var(--radius-sm);min-height:9rem;line-height:1.55}.sn-switches{flex-direction:column;gap:.5rem;display:flex}.sn-switch{cursor:pointer;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);align-items:flex-start;gap:.55rem;padding:.55rem .7rem;display:flex}.sn-switch:hover{border-color:var(--accent-border)}.sn-switch input{flex-shrink:0;margin-top:.15rem}.sn-switch span{flex-direction:column;gap:.1rem;display:flex}.sn-switch strong{color:var(--text);font-size:.82rem;font-weight:700}.sn-switch small{color:var(--muted);font-size:.72rem;line-height:1.45}.sn-dates{flex-wrap:wrap;align-items:flex-end;gap:.6rem;display:flex}.sn-date{flex-direction:column;gap:.2rem;display:flex}.sn-date span{color:var(--muted);font-size:.72rem;font-weight:600}.sn-date input{min-width:13rem}.sn-dates-clear{align-self:flex-end}.sn-preview{border:1px dashed var(--border);border-radius:var(--radius-sm);background:var(--bg);padding:.75rem}.sn-preview-empty{color:var(--muted);text-align:center;padding:1rem;font-size:.78rem}html.dark .subject-card-note{background:#0000008c}@media (width<=640px){.sn-body,.sn-foot{padding-left:0}.sn-card{padding:.65rem .7rem .55rem}.sn-dates{flex-direction:column;align-items:stretch}.sn-date input{width:100%;min-width:0}.sn-row{flex-wrap:wrap}.sn-row-actions{justify-content:flex-end;width:100%}}.pl{--pl-accent:var(--accent-text);--pl-accent-soft:var(--selected-bg)}.pl-fc{--pl-accent:var(--fc-accent);--pl-accent-soft:var(--fc-accent-soft)}.pl-search{align-items:center;margin:.9rem 0 .85rem;display:flex;position:relative}.pl-search-icon{color:var(--muted);pointer-events:none;position:absolute;left:.7rem}.pl-search-input{width:100%;height:var(--control-h);border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--surface-alt);color:var(--text);padding:0 2rem 0 2.1rem;font-family:inherit;font-size:.85rem;transition:border-color .15s,box-shadow .15s,background .15s}.pl-search-input::placeholder{color:var(--muted)}.pl-search-input:focus{background:var(--surface);border-color:var(--pl-accent);box-shadow:0 0 0 3px var(--pl-accent-soft);outline:none}.pl-search-clear{background:var(--hover-bg);width:22px;height:22px;color:var(--muted);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:absolute;right:.55rem}.pl-search-clear:hover{color:var(--text)}.pl-none{text-align:center;color:var(--muted);padding:2rem 1rem;font-size:.85rem}.pl-view{overflow:hidden}.pl-page{animation:.28s cubic-bezier(.22,.61,.36,1) both pl-slide-right}.pl-page.from-left{animation-name:pl-slide-left}@keyframes pl-slide-right{0%{opacity:0;transform:translate(22px)}to{opacity:1;transform:none}}@keyframes pl-slide-left{0%{opacity:0;transform:translate(-22px)}to{opacity:1;transform:none}}.pl-pager{border-top:1px solid var(--border);justify-content:center;align-items:center;gap:.6rem;margin-top:.9rem;padding-top:.9rem;display:flex}.pl-pager-btn{border:1px solid var(--border-strong);background:var(--surface);width:34px;height:34px;color:var(--text);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.pl-pager-btn:hover:not(:disabled){background:var(--pl-accent-soft);border-color:var(--pl-accent);color:var(--pl-accent)}.pl-pager-btn:disabled{background:var(--disabled-bg);border-color:var(--disabled-border);color:var(--disabled-fg);cursor:default}.pl-dots{align-items:center;gap:.3rem;display:flex}.pl-dot{cursor:pointer;background:var(--border-strong);border:none;border-radius:50%;width:8px;height:8px;padding:0;transition:background .15s,width .2s}.pl-dot:hover{background:var(--pl-accent)}.pl-dot.active{background:var(--pl-accent);border-radius:99px;width:20px}.pl-pager-label{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:.15rem;font-size:.75rem;font-weight:600}@media (width<=620px){.pl-pager-label{display:none}.pl-search{margin:.75rem 0 .7rem}}:root{--lib-ref:#51607d;--lib-ref-bg:#f5f8fd;--lib-ref-border:#dde6f3;--lib-gap:#8a5a00;--lib-gap-bg:#fff8e8;--lib-gap-border:#f0dcae;--lib-conflict:#9a3412;--lib-conflict-bg:#fff4ee;--lib-conflict-border:#f4cdb8;--lib-ext:#4338ca;--lib-ext-bg:#f3f4ff;--lib-ext-border:#cfd3f7;--lib-hl-yellow:#fdf0a8;--lib-hl-green:#c6f0cf;--lib-hl-blue:#c9e4fb;--lib-hl-pink:#fbd0e4;--lib-hl-orange:#fed7aa;--lib-hl-purple:#e2d4fb;--lib-hl-text:var(--text)}.lib-article{gap:var(--space-5);display:grid}.lib-article-error{gap:var(--space-4);display:grid}.lib-error{color:#b42318;font-size:.85rem}.lib-article-head{gap:var(--space-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5);display:grid}.lib-article-kicker{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.lib-article-year,.lib-article-subject{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;font-weight:650}.lib-article-subject:before{content:"·";margin-right:var(--space-2)}.lib-article-badge{color:var(--teal);background:var(--teal-soft);border-radius:var(--radius-pill);align-items:center;gap:.3rem;padding:.15rem .5rem;font-size:.7rem;font-weight:650;display:inline-flex}.lib-article-title{color:var(--text);margin:0;font-size:1.6rem;font-weight:700;line-height:1.2}.lib-article-summary{color:var(--muted);max-width:72ch;margin:0;font-size:.95rem;line-height:1.6}.lib-article-stats{gap:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--border);flex-wrap:wrap;display:flex}.lib-article-stats>span{color:var(--muted);align-items:center;gap:.35rem;font-size:.78rem;font-weight:550;display:inline-flex}.lib-article-version{font-variant-numeric:tabular-nums;background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-sm);margin-left:auto;padding:.1rem .4rem}:root{--lib-bar-h:56px}.lib-topicbar{top:var(--topbar-h);z-index:3;align-items:center;gap:var(--space-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3);box-shadow:var(--shadow-sm);display:flex;position:sticky}.lib-topicbar-scroll{flex-wrap:wrap;flex:1;gap:.3rem;min-width:0;display:flex}.lib-topic{cursor:pointer;white-space:nowrap;border-radius:var(--radius-pill);color:var(--muted);background:0 0;border:1px solid #0000;flex-shrink:0;padding:.3rem .6rem;font-family:inherit;font-size:.78rem;font-weight:550;transition:background .12s,color .12s,border-color .12s}.lib-topic:hover{background:var(--hover-bg);color:var(--text)}.lib-topic.open{color:var(--text);border-color:var(--border)}.lib-topic.open:before{content:"";background:var(--teal);vertical-align:middle;border-radius:50%;width:5px;height:5px;margin-right:.35rem;display:inline-block}.lib-topic.active{background:var(--blue);border-color:var(--blue);color:#fff;font-weight:650}.lib-topic.active:before{background:#fff}.lib-topicbar-menu{display:none}.lib-topicbar-tools{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.lib-topicbar-btn{cursor:pointer;background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--muted);white-space:nowrap;align-items:center;gap:.3rem;padding:.25rem .55rem;font-family:inherit;font-size:.72rem;font-weight:600;display:inline-flex}.lib-topicbar-btn:hover{color:var(--text);border-color:var(--blue)}.lib-article-hint{color:var(--muted);align-items:flex-start;gap:.4rem;margin:0;font-size:.76rem;line-height:1.5;display:flex}.lib-article-hint strong{color:var(--text);font-weight:650}.lib-article-main{gap:var(--space-3);min-width:0;display:grid}.lib-section{gap:var(--space-4);scroll-margin-top:calc(var(--topbar-h) + var(--lib-bar-h) + var(--space-3));background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-2);display:grid}.lib-section.open{padding:var(--space-2) var(--space-2) var(--space-4)}.lib-section:focus{outline:none}.lib-section-h{font-size:inherit;font-weight:inherit;margin:0}.lib-section-toggle{align-items:center;gap:var(--space-2);text-align:left;cursor:pointer;border-radius:var(--radius-md);width:100%;padding:var(--space-3);background:0 0;border:none;font-family:inherit;transition:background .12s;display:flex}.lib-section-toggle:hover{background:var(--hover-bg)}.lib-section-chev{color:var(--muted);transition:transform .18s}.lib-section-toggle.open .lib-section-chev{color:var(--blue);transform:rotate(90deg)}.lib-section-title{min-width:0;color:var(--text);flex:1;margin:0;font-size:1.05rem;font-weight:680}.lib-section-count{color:var(--muted);background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-pill);font-variant-numeric:tabular-nums;padding:.05rem .4rem;font-size:.7rem;font-weight:700}.lib-section-noted{color:var(--teal);display:inline-flex}.lib-section-body{gap:var(--space-4);padding:0 var(--space-3);animation:.18s ease-out lib-section-in;display:grid}@keyframes lib-section-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.lib-subhead{color:var(--text);margin:0 0 var(--space-2);font-size:.9rem;font-weight:650}.lib-block{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4);scroll-margin-top:calc(var(--topbar-h) + var(--lib-bar-h) + var(--space-3))}.lib-block-head{color:var(--text);margin:0 0 var(--space-3);font-size:.92rem;font-weight:650}.lib-block-foot{align-items:center;gap:var(--space-3);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.lib-prose{color:var(--text);font-size:.88rem;line-height:1.68}.lib-prose p{margin:0 0 var(--space-3)}.lib-prose p:last-child{margin-bottom:0}.lib-prose ul,.lib-prose ol{margin:0 0 var(--space-3) 1.15rem;gap:.3rem;display:grid}.lib-prose li{line-height:1.6}.lib-prose h4,.lib-prose h5{margin:var(--space-3) 0 var(--space-2);font-size:.88rem;font-weight:650}.lib-prose code{background:var(--surface-alt);border:1px solid var(--border);border-radius:4px;padding:.05rem .25rem;font-size:.82em}.lib-prose strong{font-weight:650}.lib-prose a{color:var(--blue)}.lib-defs{gap:var(--space-3);display:grid}.lib-def{padding-bottom:var(--space-3);border-bottom:1px dashed var(--border);gap:.2rem;display:grid}.lib-def:last-child{border-bottom:none;padding-bottom:0}.lib-def-term{color:var(--text);font-size:.85rem;font-weight:650}.lib-def-text{color:var(--muted);margin:0;font-size:.85rem;line-height:1.6}.lib-table-wrap{gap:var(--space-2);display:grid}.lib-table-scroll{border:1px solid var(--border);border-radius:var(--radius-md);overflow-x:auto}.lib-table-scroll:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.lib-table{border-collapse:collapse;width:100%;font-size:.82rem}.lib-table th,.lib-table td{overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;text-align:left;vertical-align:top;padding:var(--space-3);border-bottom:1px solid var(--border)}.lib-table thead th{background:var(--surface-alt);color:var(--text);text-transform:uppercase;letter-spacing:.03em;font-size:.76rem;font-weight:650;position:sticky;top:0}.lib-table tbody tr:last-child th,.lib-table tbody tr:last-child td{border-bottom:none}.lib-table-rowhead{background:var(--surface-alt);width:22%}.lib-table-rowlabel{color:var(--text);margin-bottom:.2rem;font-weight:650;display:block}.lib-table-rowtools{flex-direction:column;align-items:flex-start;gap:.2rem;display:flex}.lib-table-expand,.lib-ref-quote-toggle,.lib-ref-open{cursor:pointer;color:var(--blue);background:0 0;border:none;padding:0;font-size:.7rem;font-weight:600}.lib-table-absent{color:var(--lib-gap);background:var(--lib-gap-bg);font-size:.76rem;font-style:italic}.lib-table-note{color:var(--muted);margin-top:.3rem;font-size:.75rem;line-height:1.5;display:block}.lib-figure{gap:var(--space-2);margin:0;display:grid}.lib-figure-img{border:1px solid var(--border);border-radius:var(--radius-sm);background:#fff;width:100%;height:auto;display:block}.lib-figure-cap{gap:var(--space-2);color:var(--muted);font-size:.78rem;line-height:1.55;display:grid}.lib-figure-text{color:var(--text)}.lib-figure-uncaptioned{font-style:italic}.lib-figure-flag{color:var(--lib-conflict);background:var(--lib-conflict-bg);border:1px solid var(--lib-conflict-border);border-radius:var(--radius-sm);align-items:flex-start;gap:.3rem;padding:.3rem .5rem;font-size:.74rem;display:inline-flex}.lib-figure-missing{color:var(--muted);align-items:center;gap:.4rem;font-size:.8rem;display:flex}.lib-algo{gap:var(--space-3);list-style:none;display:grid}.lib-algo-step{border-left:3px solid var(--border);padding-left:var(--space-3);gap:var(--space-2);display:grid}.lib-algo-step.role-decision{border-left-color:var(--blue)}.lib-algo-step.role-outcome{border-left-color:var(--teal)}.lib-algo-head{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.lib-algo-role{text-transform:uppercase;letter-spacing:.05em;background:var(--surface-alt);color:var(--muted);border-radius:4px;padding:.1rem .35rem;font-size:.64rem;font-weight:700}.lib-algo-role.role-decision{background:var(--selected-bg);color:var(--blue)}.lib-algo-role.role-outcome{background:var(--teal-soft);color:var(--teal)}.lib-algo-label{color:var(--text);font-size:.85rem;font-weight:600;line-height:1.5}.lib-algo-branches{margin-left:var(--space-2);gap:.25rem;list-style:none;display:grid}.lib-algo-branches li{color:var(--muted);align-items:center;gap:.35rem;font-size:.78rem;display:flex}.lib-algo-cond{color:var(--text);font-weight:600}.lib-gap{align-items:flex-start;gap:var(--space-2);color:var(--lib-gap);background:var(--lib-gap-bg);border:1px solid var(--lib-gap-border);border-radius:var(--radius-sm);padding:var(--space-3);font-size:.8rem;line-height:1.55;display:flex}.lib-gap svg{flex-shrink:0;margin-top:.1rem}.lib-conflict{gap:var(--space-3);background:var(--lib-conflict-bg);border:1px solid var(--lib-conflict-border);border-radius:var(--radius-md);padding:var(--space-4);display:grid}.lib-conflict-head{align-items:center;gap:var(--space-2);color:var(--lib-conflict);font-size:.85rem;display:flex}.lib-conflict-note{color:var(--text);margin:0;font-size:.8rem;line-height:1.55}.lib-conflict-pair{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.lib-conflict-side{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-3);gap:var(--space-2);display:grid}.lib-conflict-side p{color:var(--text);margin:0;font-size:.82rem;line-height:1.6}.lib-conflict-foot{color:var(--lib-conflict);margin:0;font-size:.74rem;font-style:italic}.lib-refs{gap:var(--space-2);display:grid}.lib-refs-toggle{cursor:pointer;color:var(--lib-ref);text-align:left;background:0 0;border:none;align-items:center;gap:.35rem;padding:0;font-size:.72rem;display:inline-flex}.lib-refs-toggle:hover{color:var(--blue)}.lib-refs-label{font-weight:650}.lib-refs-summary{color:var(--muted);font-variant-numeric:tabular-nums}.lib-refs-list{gap:var(--space-2);list-style:none;display:grid}.lib-ref{background:var(--lib-ref-bg);border:1px solid var(--lib-ref-border);border-radius:var(--radius-sm);padding:var(--space-3);gap:var(--space-2);display:grid}.lib-ref-head{align-items:flex-start;gap:.4rem;display:flex}.lib-ref-icon{color:var(--lib-ref);flex-shrink:0;margin-top:.1rem}.lib-ref-path{color:var(--text);word-break:break-word;font-size:.75rem;font-weight:550;line-height:1.45}.lib-ref-missing{color:var(--lib-conflict);font-style:italic}.lib-ref-meta{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.lib-ref-page{color:var(--lib-ref);font-variant-numeric:tabular-nums;font-size:.72rem;font-weight:650}.lib-ref-section{color:var(--muted);font-size:.72rem;font-style:italic}.lib-ref-open{align-items:center;gap:.15rem;display:inline-flex}.lib-ref-quote{color:var(--text);border-left:3px solid var(--lib-ref);padding-left:var(--space-3);white-space:pre-wrap;margin:0;font-size:.78rem;line-height:1.6}.lib-qpanel{gap:0;display:grid}.lib-qpanel-wrap{grid-template-rows:0fr;transition:grid-template-rows .24s;display:grid}.lib-qpanel.open .lib-qpanel-wrap{grid-template-rows:1fr}.lib-qpanel-inner{min-height:0;overflow:hidden}.lib-qpanel.open .lib-qpanel-inner{padding-top:var(--space-2)}.lib-qpanel-chev{transition:transform .2s}.lib-qpanel-chip.open .lib-qpanel-chev{transform:rotate(180deg)}.lib-qpanel-chip{cursor:pointer;color:var(--blue);background:var(--selected-bg);border:1px solid var(--blue);border-radius:var(--radius-pill);align-items:center;gap:.3rem;width:fit-content;padding:.15rem .5rem;font-size:.7rem;font-weight:650;display:inline-flex}.lib-qpanel-chip:hover,.lib-qpanel-chip.open{background:var(--blue);color:#fff}.lib-qpanel-drawer{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4);gap:var(--space-4);display:grid}.lib-qpanel-drawer:focus{outline:none}.lib-qpanel-head{justify-content:space-between;align-items:center;gap:var(--space-2);color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.76rem;font-weight:650;display:flex}.lib-qpanel-close{cursor:pointer;color:var(--muted);background:0 0;border:none;padding:0}.lib-q{gap:var(--space-2);padding-bottom:var(--space-4);border-bottom:1px solid var(--border);display:grid}.lib-q:last-child{border-bottom:none;padding-bottom:0}.lib-q-meta{gap:var(--space-2);color:var(--muted);flex-wrap:wrap;font-size:.68rem;display:flex}.lib-q-paper{font-weight:650}.lib-q-id{font-variant-numeric:tabular-nums}.lib-q-body{color:var(--text);margin:0;font-size:.85rem;line-height:1.6}.lib-q-options{gap:.3rem;list-style:none;display:grid}.lib-q-option{align-items:flex-start;gap:var(--space-2);text-align:left;cursor:pointer;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;padding:var(--space-2) var(--space-3);color:var(--text);font-size:.82rem;line-height:1.5;display:flex}.lib-q-option:hover:not(:disabled){border-color:var(--blue);background:var(--hover-bg)}.lib-q-option:disabled{cursor:default}.lib-q-letter{background:var(--surface-alt);border:1px solid var(--border);border-radius:4px;flex-shrink:0;place-items:center;width:1.25rem;height:1.25rem;font-size:.7rem;font-weight:700;display:grid}.lib-q-text{flex:1}.lib-q-option.chosen{border-color:var(--blue)}.lib-q-option.correct{background:#eefbf1;border-color:#15803d}.lib-q-option.correct .lib-q-letter{color:#fff;background:#15803d;border-color:#15803d}.lib-q-option.wrong{background:#fdf1f0;border-color:#b42318}.lib-q-option.wrong .lib-q-letter{color:#fff;background:#b42318;border-color:#b42318}.lib-q-tick{color:#15803d;flex-shrink:0}.lib-q-result{gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-sm);font-size:.82rem;display:grid}.lib-q-result.right{color:#14532d;background:#eefbf1}.lib-q-result.wrong{color:#7f1d1d;background:#fdf1f0}.lib-q-explanation{margin:0;line-height:1.6}.lib-q-noexplanation{color:var(--muted);margin:0;font-size:.76rem;font-style:italic}.lib-mm{gap:var(--space-3);display:grid}.lib-mm-bar{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.lib-mm-title{align-items:center;gap:var(--space-2);margin:0;font-size:1.05rem;font-weight:650;display:flex}.lib-mm-title svg{color:var(--teal)}.lib-mm-views,.lib-mm-tools{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-pill);align-items:center;gap:.15rem;padding:.15rem;display:flex}.lib-mm-views button,.lib-mm-tools button{cursor:pointer;border-radius:var(--radius-pill);color:var(--muted);background:0 0;border:none;align-items:center;gap:.25rem;padding:.2rem .55rem;font-size:.72rem;font-weight:600;display:inline-flex}.lib-mm-views button:hover,.lib-mm-tools button:hover{color:var(--text);background:var(--hover-bg)}.lib-mm-viewbtn.active{background:var(--surface);color:var(--blue);box-shadow:var(--shadow-xs)}.lib-mm-zoom{color:var(--muted);font-variant-numeric:tabular-nums;text-align:center;min-width:2.6rem;font-size:.7rem}.lib-mm-collapse,.lib-mm-fit{border:1px solid var(--border);border-radius:var(--radius-pill);cursor:pointer;color:var(--muted);background:0 0;padding:.2rem .6rem;font-size:.72rem;font-weight:600}.lib-mm-collapse{margin-left:auto}.lib-mm-collapse:hover,.lib-mm-fit:hover{color:var(--text);border-color:var(--blue)}.lib-mm-frame{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-md);cursor:grab;touch-action:none;height:clamp(320px,52vh,560px);overflow:hidden}.lib-mm-frame:active{cursor:grabbing}.lib-mm-frame:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.lib-mm-svg{display:block}.lib-mm-box{fill:var(--surface);stroke:var(--border);stroke-width:1.25px}.lib-mm-node.depth-0 .lib-mm-box{fill:var(--navy);stroke:var(--navy)}.lib-mm-node.depth-0 .lib-mm-label{fill:#fff;font-weight:700}.lib-mm-node.depth-1 .lib-mm-box{stroke:var(--blue)}.lib-mm-node.depth-2 .lib-mm-box{stroke:var(--teal)}.lib-mm-node.selected .lib-mm-box{stroke:var(--blue);stroke-width:2.5px}.lib-mm-label{fill:var(--text);text-anchor:middle;pointer-events:none;font-size:11.5px;font-weight:600}.lib-mm-hit{fill:#0000;cursor:pointer}.lib-mm-hit:focus-visible{stroke:var(--blue);stroke-width:2.5px;outline:none}.lib-mm-toggle{cursor:pointer}.lib-mm-toggle-bg{fill:var(--surface-alt);stroke:var(--border)}.lib-mm-toggle-glyph{fill:var(--muted);text-anchor:middle;pointer-events:none;font-size:12px;font-weight:700}.lib-mm-toggle:focus-visible .lib-mm-toggle-bg{stroke:var(--blue);stroke-width:2px}.lib-mm-edge path{fill:none;stroke:var(--border);stroke-width:1.5px}.lib-mm-edge.cross path{stroke-dasharray:4 3;stroke:var(--muted);opacity:.55}.lib-mm-edge-label{fill:var(--muted);text-anchor:middle;font-size:9.5px}.lib-mm-hint{color:var(--muted);margin:0;font-size:.72rem;line-height:1.5}.lib-mm-hint kbd{background:var(--surface-alt);border:1px solid var(--border);border-radius:3px;padding:0 .2rem;font-family:inherit;font-size:.68rem}.lib-mm-detail{background:var(--surface);border:1px solid var(--blue);border-radius:var(--radius-md);padding:var(--space-4);gap:var(--space-3);display:grid}.lib-mm-detail-head{align-items:center;gap:var(--space-3);font-size:.9rem;display:flex}.lib-mm-detail-go{cursor:pointer;color:var(--blue);background:0 0;border:none;align-items:center;gap:.2rem;font-size:.74rem;font-weight:650;display:inline-flex}.lib-mm-detail-close{cursor:pointer;color:var(--muted);background:0 0;border:none;margin-left:auto}.lib-mo{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4)}.lib-mo-root,.lib-mo-children{gap:var(--space-2);list-style:none;display:grid}.lib-mo-children{margin-left:var(--space-5);padding-left:var(--space-3);border-left:1px solid var(--border)}.lib-mo-item{gap:var(--space-2);display:grid}.lib-mo-row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.lib-mo-twist{cursor:pointer;color:var(--muted);background:0 0;border:none;place-items:center;padding:.1rem;display:grid}.lib-mo-twist-spacer{width:1rem}.lib-mo-label{cursor:pointer;color:var(--text);text-align:left;background:0 0;border:none;padding:0;font-size:.85rem;font-weight:600}.lib-mo-label.linked{color:var(--blue)}.lib-mo-label:hover{text-decoration:underline}.lib-mo-edge{color:var(--muted);background:var(--surface-alt);border-radius:var(--radius-pill);padding:.05rem .4rem;font-size:.68rem;font-style:italic}.lib-docs,.lib-decks,.lib-review-notes{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4);gap:var(--space-2);display:grid}.lib-doc-list,.lib-deck-list{gap:var(--space-2);list-style:none;display:grid}.lib-doc{align-items:center;gap:var(--space-2);flex-wrap:wrap;font-size:.82rem;display:flex}.lib-doc svg{color:var(--muted);flex-shrink:0}.lib-doc-name{color:var(--text);font-weight:600}.lib-doc-path{color:var(--muted);font-size:.74rem}.lib-doc-open{cursor:pointer;color:var(--blue);background:0 0;border:none;align-items:center;gap:.15rem;margin-left:auto;font-size:.74rem;font-weight:650;display:inline-flex}.lib-decks-note{color:var(--muted);margin:0 0 var(--space-2);font-size:.78rem;line-height:1.5}.lib-deck{align-items:center;gap:var(--space-3);text-align:left;cursor:pointer;background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;padding:var(--space-3);color:var(--text);font-size:.85rem;display:flex}.lib-deck:hover{border-color:var(--fc-accent);background:var(--hover-bg)}.lib-deck>svg:first-child{color:var(--fc-accent);flex-shrink:0}.lib-deck-title{flex:1;font-weight:600}.lib-deck-count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.74rem}.lib-review-notes ul{gap:.3rem;margin-left:1.1rem;display:grid}.lib-review-notes li{color:var(--muted);font-size:.8rem;line-height:1.55}.lib-case{background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius-lg);padding:var(--space-4)}.lib-case-toggle{align-items:center;gap:var(--space-2);cursor:pointer;text-align:left;background:0 0;border:none;width:100%;padding:0;display:flex}.lib-case-title{align-items:center;gap:var(--space-2);color:var(--text);font-size:1rem;font-weight:650;display:flex}.lib-case-count{color:var(--muted);margin-left:auto;font-size:.72rem}.lib-case-unavailable{color:var(--muted);margin-top:var(--space-2);font-size:.8rem;line-height:1.55}.lib-case-body{gap:var(--space-4);margin-top:var(--space-4);display:grid}.lib-case-disclaimer{color:var(--lib-gap);background:var(--lib-gap-bg);border:1px solid var(--lib-gap-border);border-radius:var(--radius-sm);padding:var(--space-3);align-items:flex-start;gap:.4rem;margin:0;font-size:.76rem;line-height:1.55;display:flex}.lib-case-disclaimer svg{flex-shrink:0;margin-top:.1rem}.lib-case-stem{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4);gap:var(--space-2);display:grid}.lib-case-stem p{color:var(--text);margin:0;font-size:.88rem;line-height:1.65}.lib-case-steps{gap:var(--space-5);list-style:none;display:grid}.lib-case-step{gap:var(--space-2);display:grid}.lib-case-q{align-items:flex-start;gap:var(--space-2);color:var(--text);margin:0;font-size:.86rem;font-weight:600;line-height:1.55;display:flex}.lib-case-n{color:#fff;background:var(--navy);border-radius:50%;flex-shrink:0;place-items:center;width:1.4rem;height:1.4rem;font-size:.72rem;font-weight:700;display:grid}.lib-case-options{gap:.3rem;list-style:none;display:grid}.lib-case-option{align-items:flex-start;gap:var(--space-2);text-align:left;cursor:pointer;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;padding:var(--space-2) var(--space-3);color:var(--text);font-size:.82rem;line-height:1.5;display:flex}.lib-case-option:hover:not(:disabled){border-color:var(--blue)}.lib-case-option:disabled{cursor:default}.lib-case-letter{background:var(--surface-alt);border:1px solid var(--border);border-radius:4px;flex-shrink:0;place-items:center;width:1.25rem;height:1.25rem;font-size:.7rem;font-weight:700;display:grid}.lib-case-option.correct{background:#eefbf1;border-color:#15803d}.lib-case-option.wrong{background:#fdf1f0;border-color:#b42318}.lib-case-reveal{cursor:pointer;background:var(--blue);color:#fff;border-radius:var(--radius-sm);width:fit-content;padding:var(--space-2) var(--space-4);border:none;font-size:.78rem;font-weight:650}.lib-case-reveal:disabled{background:var(--surface-alt);color:var(--muted);cursor:not-allowed}.lib-case-explanation{background:var(--surface-alt);border-left:3px solid var(--teal);border-radius:var(--radius-sm);padding:var(--space-3);gap:var(--space-2);display:grid}.lib-case-explanation p{color:var(--text);margin:0;font-size:.82rem;line-height:1.6}html.dark{--lib-ref:#9bb0d2;--lib-ref-bg:#151b2e;--lib-ref-border:#2a3150;--lib-gap:#e3b341;--lib-gap-bg:#e3b34117;--lib-gap-border:#e3b34147;--lib-conflict:#f0906b;--lib-conflict-bg:#f0906b17;--lib-conflict-border:#f0906b47;--lib-ext:#a5b4fc;--lib-ext-bg:#818cf81a;--lib-ext-border:#818cf84d;--lib-hl-yellow:#eab30857;--lib-hl-green:#22c55e4d;--lib-hl-blue:#38a0f852;--lib-hl-pink:#ec48994d;--lib-hl-orange:#f9731652;--lib-hl-purple:#9333ea52;--lib-hl-text:#f1f5f9}html.dark .lib-q-option.correct,html.dark .lib-case-option.correct{background:#22c55e1f;border-color:#4ade80}html.dark .lib-q-option.correct .lib-q-letter{color:#06210f;background:#4ade80;border-color:#4ade80}html.dark .lib-q-option.wrong,html.dark .lib-case-option.wrong{background:#f871711f;border-color:#f87171}html.dark .lib-q-option.wrong .lib-q-letter{color:#2a0a0a;background:#f87171;border-color:#f87171}html.dark .lib-q-tick{color:#4ade80}html.dark .lib-q-result.right{color:#86efac;background:#22c55e1f}html.dark .lib-q-result.wrong{color:#fca5a5;background:#f871711f}html.dark .lib-figure-img{filter:brightness(.92)}.lib-ext{gap:var(--space-3);background:var(--lib-ext-bg);border:1px solid var(--lib-ext-border);border-left:3px solid var(--lib-ext);border-radius:var(--radius-md);padding:var(--space-4);display:grid}.lib-ext-gap{color:var(--lib-gap);background:var(--lib-gap-bg);border:1px solid var(--lib-gap-border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);align-items:flex-start;gap:.4rem;margin:0;font-size:.82rem;line-height:1.55;display:flex}.lib-ext-gap strong{font-weight:700}.lib-ext-label{letter-spacing:.05em;text-transform:uppercase;color:var(--lib-ext);align-items:center;gap:.3rem;font-size:.68rem;font-weight:750;display:inline-flex}.lib-ext-body{gap:var(--space-2);display:grid}.lib-ext-refs{gap:.3rem;margin:0;padding:0;list-style:none;display:grid}.lib-ext-ref{color:var(--lib-ext);background:var(--surface);border:1px solid var(--lib-ext-border);border-radius:var(--radius-sm);padding:.3rem var(--space-3);flex-wrap:wrap;align-items:center;gap:.4rem;font-size:.76rem;display:flex}.lib-ext-work{font-weight:700}.lib-ext-loc{color:var(--muted)}.lib-ext-pub,.lib-ext-year{color:var(--muted);background:var(--surface-alt);border-radius:var(--radius-pill);padding:0 .35rem;font-size:.7rem;font-weight:600}.lib-ext-link{color:var(--lib-ext);align-items:center;gap:.15rem;margin-left:auto;font-size:.72rem;font-weight:650;text-decoration:none;display:inline-flex}.lib-ext-link:hover{text-decoration:underline}.lib-ext-foot{color:var(--muted);margin:0;font-size:.72rem;line-height:1.5}mark.lib-hl{background:var(--lib-hl-yellow);color:var(--lib-hl-text);cursor:pointer;border-radius:2px;padding:0}mark.lib-hl-yellow{background:var(--lib-hl-yellow)}mark.lib-hl-green{background:var(--lib-hl-green)}mark.lib-hl-blue{background:var(--lib-hl-blue)}mark.lib-hl-pink{background:var(--lib-hl-pink)}mark.lib-hl-orange{background:var(--lib-hl-orange)}mark.lib-hl-purple{background:var(--lib-hl-purple)}.lib-hl-bar{z-index:60;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-pill);box-shadow:var(--shadow-lg);align-items:center;gap:.35rem;padding:.3rem .45rem;animation:.12s ease-out lib-hl-bar-in;display:flex;position:fixed;transform:translate(-50%,calc(-100% - 10px))}@keyframes lib-hl-bar-in{0%{opacity:0;transform:translate(-50%,calc(-100% - 4px))}to{opacity:1;transform:translate(-50%,calc(-100% - 10px))}}.lib-hl-bar-label{color:var(--muted);align-items:center;gap:.25rem;padding-left:.2rem;font-size:.7rem;font-weight:650;display:inline-flex}.lib-hl-swatch{cursor:pointer;border:1px solid #0000002e;border-radius:50%;width:20px;height:20px;padding:0;transition:transform .1s}.lib-hl-swatch:hover{transform:scale(1.15)}.lib-hl-swatch.lib-hl-yellow{background:var(--lib-hl-yellow)}.lib-hl-swatch.lib-hl-green{background:var(--lib-hl-green)}.lib-hl-swatch.lib-hl-blue{background:var(--lib-hl-blue)}.lib-hl-swatch.lib-hl-pink{background:var(--lib-hl-pink)}.lib-hl-swatch.lib-hl-orange{background:var(--lib-hl-orange)}.lib-hl-swatch.lib-hl-purple{background:var(--lib-hl-purple)}.lib-hl-remove{cursor:pointer;color:var(--text);background:0 0;border:none;align-items:center;gap:.3rem;padding:.1rem .3rem;font-family:inherit;font-size:.75rem;font-weight:600;display:inline-flex}.lib-hl-remove:hover{color:#b42318}.lib-hl-bar-close{cursor:pointer;color:var(--muted);background:0 0;border:none;padding:.1rem;display:inline-flex}.lib-hl-warning{color:var(--lib-gap);background:var(--lib-gap-bg);border:1px solid var(--lib-gap-border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);margin:0;font-size:.76rem}.lib-notes{border:1px dashed var(--border);border-radius:var(--radius-md);background:var(--surface-alt)}.lib-notes.open{border-style:solid;border-color:var(--teal)}.lib-notes-toggle{cursor:pointer;text-align:left;width:100%;padding:var(--space-3);color:var(--muted);background:0 0;border:none;align-items:center;gap:.4rem;font-family:inherit;font-size:.8rem;font-weight:650;display:flex}.lib-notes-toggle:hover{color:var(--text)}.lib-notes.open .lib-notes-toggle{color:var(--teal)}.lib-notes-dot{background:var(--teal);border-radius:50%;width:6px;height:6px}.lib-notes-chev{margin-left:auto}.lib-notes-wrap{grid-template-rows:0fr;transition:grid-template-rows .22s;display:grid}.lib-notes.open .lib-notes-wrap{grid-template-rows:1fr}.lib-notes-inner{min-height:0;overflow:hidden}.lib-notes.open .lib-notes-inner{padding:0 var(--space-3) var(--space-3)}.lib-notes-label{color:var(--muted);margin-bottom:var(--space-2);font-size:.72rem;font-weight:650;display:block}.lib-notes-box{resize:vertical;background:var(--surface);width:100%;min-height:5rem;color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-3);font:inherit;font-size:.85rem;line-height:1.6}.lib-notes-box:focus{outline:2px solid var(--teal);outline-offset:-1px;border-color:var(--teal)}.lib-notes-foot{align-items:center;gap:var(--space-3);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.lib-notes-state{color:var(--muted);align-items:center;gap:.25rem;min-height:1rem;font-size:.72rem;font-weight:600;display:inline-flex}.lib-notes-state.state-saved{color:var(--teal)}.lib-notes-state.state-error{color:#b42318}.lib-notes-privacy{color:var(--muted);margin-left:auto;font-size:.7rem}.lib-notes-signin{color:var(--muted);align-items:flex-start;gap:.4rem;margin:0;font-size:.78rem;line-height:1.55;display:flex}.lib-notes-signin-btn{cursor:pointer;font:inherit;color:var(--blue);background:0 0;border:none;padding:0;font-weight:650;text-decoration:underline}@media (width<=760px){.lib-topicbar-scroll{display:none}.lib-topicbar-menu{cursor:pointer;text-align:left;background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-pill);min-width:0;color:var(--text);flex:1;align-items:center;gap:.4rem;padding:.3rem .7rem;font-family:inherit;font-size:.78rem;font-weight:650;display:inline-flex}.lib-topicbar-here{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:500;overflow:hidden}.lib-topicbar-here:before{content:"·";margin-right:.35rem}}.lib-toc-backdrop{z-index:70;background:#0a102080;animation:.15s ease-out lib-fade-in;position:fixed;inset:0}.lib-toc-drawer{z-index:71;background:var(--surface);border-left:1px solid var(--border);flex-direction:column;width:min(82vw,20rem);animation:.18s cubic-bezier(.2,.8,.2,1) lib-slide-in;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-8px 0 32px #0a102040}@keyframes lib-fade-in{0%{opacity:0}to{opacity:1}}@keyframes lib-slide-in{0%{transform:translate(100%)}to{transform:none}}.lib-toc-drawer-head{padding:var(--space-4);border-bottom:1px solid var(--border);color:var(--muted);text-transform:uppercase;letter-spacing:.05em;justify-content:space-between;align-items:center;font-size:.8rem;font-weight:700;display:flex}.lib-toc-drawer-close{cursor:pointer;color:var(--muted);background:0 0;border:none;padding:0}.lib-toc-list{padding:var(--space-2);gap:.15rem;margin:0;list-style:none;display:grid;overflow-y:auto}.lib-toc-item{align-items:center;gap:var(--space-2);text-align:left;cursor:pointer;border-radius:var(--radius-md);width:100%;padding:var(--space-3);color:var(--text);background:0 0;border:none;font-family:inherit;font-size:.85rem;display:flex}.lib-toc-item:hover{background:var(--hover-bg)}.lib-toc-item.active{background:var(--selected-bg);color:var(--blue);font-weight:650}.lib-toc-item-title{flex:1;min-width:0}.lib-toc-item-noted{color:var(--teal)}.lib-toc-item-open{text-transform:uppercase;letter-spacing:.05em;color:var(--teal);background:var(--teal-soft);border-radius:var(--radius-pill);padding:.05rem .35rem;font-size:.62rem;font-weight:700}@media (width<=640px){.lib-table{font-size:.74rem}.lib-table th,.lib-table td{padding:var(--space-2)}.lib-article-head{padding:var(--space-4)}.lib-article-title{font-size:1.3rem}.lib-article-summary{font-size:.88rem}.lib-article-version{margin-left:0}.lib-block{padding:var(--space-3)}.lib-section-title{font-size:1rem}.lib-section-body{padding:0}.lib-section-toggle{padding:var(--space-2)}.lib-notes-privacy{width:100%;margin-left:0}.lib-ext{padding:var(--space-3)}.lib-mm-frame{height:300px}.lib-mm-collapse{margin-left:0}.lib-mo-children{margin-left:var(--space-3);padding-left:var(--space-2)}}@media (prefers-reduced-motion:reduce){.lib-q-option,.lib-topic,.lib-section-chev,.lib-qpanel-chev{transition:none}.lib-toc-backdrop,.lib-toc-drawer{animation:none}.lib-qpanel-wrap,.lib-notes-wrap{transition:none}.lib-section-body,.lib-hl-bar{animation:none}}.adm-lib{gap:var(--space-4);display:grid}.adm-lib-empty{color:var(--muted);font-size:.85rem;font-style:italic}.adm-lib-rowsum{color:var(--muted);max-width:52ch;margin-top:.15rem;font-size:.76rem}.adm-lib-sub{color:var(--muted);font-size:.78rem}.adm-lib-vnum{color:var(--muted);font-size:.8rem;font-weight:500}.adm-lib-unpub{color:var(--muted);font-size:.74rem;font-style:italic}.adm-lib-pending{color:var(--lib-gap);font-size:.74rem;font-weight:650}.adm-lib-ok{color:var(--muted);font-size:.74rem}.adm-lib-err{color:var(--lib-conflict);font-size:.74rem;font-weight:650}.adm-lib-status{text-transform:uppercase;letter-spacing:.03em;border-radius:var(--radius-sm);background:var(--surface-alt);color:var(--muted);border:1px solid var(--border);padding:.1rem .4rem;font-size:.68rem;font-weight:700;display:inline-block}.adm-lib-status.status-published{background:var(--teal-soft);color:var(--teal);border-color:var(--teal)}.adm-lib-status.status-in_review{background:var(--lib-gap-bg);color:var(--lib-gap);border-color:var(--lib-gap-border)}.adm-lib-status.status-archived{opacity:.7}.adm-lib-queue{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4);background:var(--lib-gap-bg);border:1px solid var(--lib-gap-border);border-radius:var(--radius-md);flex-wrap:wrap;display:flex}.adm-lib-queue strong{color:var(--lib-gap);font-size:.92rem}.adm-lib-queue p{color:var(--muted);max-width:56ch;margin:.2rem 0 0;font-size:.78rem}.adm-lib-queue-list{margin:var(--space-3) 0 0;gap:.2rem;padding-left:1.2rem;font-size:.8rem;display:grid}.adm-lib-queue-list li{align-items:baseline;gap:var(--space-2);display:flex}.adm-lib-qflag{text-transform:uppercase;letter-spacing:.04em;color:var(--lib-gap);font-size:.64rem;font-weight:700}.adm-lib-qmore{color:var(--muted);font-style:italic;list-style:none}.adm-lib-qlink{font:inherit;color:var(--text);text-align:left;cursor:pointer;text-decoration:underline;-webkit-text-decoration-color:var(--lib-gap-border);text-decoration-color:var(--lib-gap-border);text-underline-offset:2px;background:0 0;border:0;padding:0}.adm-lib-qlink:hover{color:var(--lib-gap)}.adm-lib-queue-clear{color:var(--teal);align-items:center;gap:.4rem;font-size:.82rem;display:flex}.adm-lib-qpos{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto;font-size:.74rem;font-weight:650}.adm-lib-qnext{margin-left:auto}.adm-lib-qend{color:var(--muted);align-self:center;margin-left:auto;font-size:.76rem;font-style:italic}.adm-lib-review,.adm-lib-detail{gap:var(--space-4);display:grid}.adm-lib-review-bar{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.adm-lib-review-bar h3{margin:0;font-size:1.1rem;font-weight:680}.adm-lib-meta{gap:var(--space-4);color:var(--muted);flex-wrap:wrap;font-size:.76rem;display:flex}.adm-lib-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.adm-lib-clean{color:var(--teal);background:var(--teal-soft);border:1px solid var(--teal);border-radius:var(--radius-sm);padding:var(--space-3);align-items:center;gap:.4rem;font-size:.82rem;display:flex}.adm-lib-issues{background:var(--surface);border:1px solid var(--lib-conflict-border);border-radius:var(--radius-md);padding:var(--space-4);gap:var(--space-2);display:grid}.adm-lib-issues-head{margin:0;font-size:.84rem;font-weight:680}.adm-lib-issues-head.error{color:var(--lib-conflict)}.adm-lib-issues-head.warn{color:var(--lib-gap)}.adm-lib-issues ul{gap:.25rem;list-style:none;display:grid}.adm-lib-issue{align-items:baseline;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-sm);background:var(--surface-alt);flex-wrap:wrap;font-size:.78rem;line-height:1.5;display:flex}.adm-lib-issue code{color:var(--muted);font-size:.72rem}.adm-lib-issue-code{text-transform:uppercase;background:var(--lib-conflict-bg);color:var(--lib-conflict);border-radius:3px;padding:.05rem .3rem;font-size:.66rem;font-weight:700}.adm-lib-refusal,.adm-lib-stale{align-items:flex-start;gap:var(--space-3);border-radius:var(--radius-md);padding:var(--space-4);font-size:.82rem;line-height:1.55;display:flex}.adm-lib-refusal{background:var(--lib-conflict-bg);border:1px solid var(--lib-conflict-border);color:var(--lib-conflict)}.adm-lib-stale{background:var(--lib-gap-bg);border:1px solid var(--lib-gap-border);color:var(--lib-gap)}.adm-lib-refusal p,.adm-lib-stale p{margin:.25rem 0 0}.adm-lib-refusal svg,.adm-lib-stale svg{flex-shrink:0;margin-top:.15rem}.adm-lib-sections{gap:var(--space-3);display:grid}.adm-lib-block{border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:var(--space-3);overflow:hidden}.adm-lib-block-head{align-items:center;gap:var(--space-2);background:var(--surface-alt);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.adm-lib-kind{text-transform:uppercase;letter-spacing:.05em;background:var(--selected-bg);color:var(--blue);border-radius:3px;padding:.1rem .35rem;font-size:.64rem;font-weight:700}.adm-lib-kind.kind-gap{background:var(--lib-gap-bg);color:var(--lib-gap)}.adm-lib-kind.kind-conflict{background:var(--lib-conflict-bg);color:var(--lib-conflict)}.adm-lib-blockid{color:var(--muted);font-size:.7rem}.adm-lib-blockhead{color:var(--text);font-size:.8rem;font-weight:600}.adm-lib-split{grid-template-columns:1fr 1fr;display:grid}.adm-lib-generated{padding:var(--space-3);border-right:1px solid var(--border)}.adm-lib-source{padding:var(--space-3);background:var(--surface-alt)}.adm-lib-col-label{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:var(--space-2);font-size:.66rem;font-weight:700}.adm-lib-text{color:var(--text);white-space:pre-wrap;word-break:break-word;margin:0;font-family:inherit;font-size:.8rem;line-height:1.6}.adm-lib-nosource{color:var(--muted);margin:0;font-size:.78rem;font-style:italic}.adm-lib-passage{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-2);margin-bottom:var(--space-2);gap:var(--space-2);display:grid}.adm-lib-passage.notfound{border-color:var(--lib-conflict);background:var(--lib-conflict-bg)}.adm-lib-passage-head{align-items:baseline;gap:var(--space-2);color:var(--muted);flex-wrap:wrap;font-size:.7rem;display:flex}.adm-lib-passage-page{font-variant-numeric:tabular-nums;font-weight:650}.adm-lib-notfound-flag{color:var(--lib-conflict);font-weight:700}.adm-lib-quote{color:var(--text);border-left:2px solid var(--teal);padding-left:var(--space-2);margin:0;font-size:.78rem;line-height:1.55}.adm-lib-fullpage summary{color:var(--blue);cursor:pointer;font-size:.7rem}.adm-lib-fullpage pre{color:var(--muted);white-space:pre-wrap;max-height:16rem;margin-top:var(--space-2);padding:var(--space-2);background:var(--surface-alt);border-radius:var(--radius-sm);font-family:inherit;font-size:.72rem;line-height:1.5;overflow-y:auto}.adm-lib-links{gap:var(--space-3);display:grid}.adm-lib-links-head{align-items:baseline;gap:var(--space-3);margin:var(--space-3) 0 0;flex-wrap:wrap;font-size:.95rem;font-weight:650;display:flex}.adm-lib-links-count{color:var(--muted);font-size:.74rem;font-weight:500}.adm-lib-links-note{color:var(--muted);max-width:76ch;margin:0;font-size:.78rem;line-height:1.55}.adm-lib-link{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3);gap:var(--space-2);display:grid}.adm-lib-link.compact{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.adm-lib-link-title{flex:1;font-size:.85rem;font-weight:600}.adm-lib-link-cards{color:var(--muted);font-size:.74rem}.adm-lib-link-meta{gap:var(--space-2);color:var(--muted);flex-wrap:wrap;font-size:.7rem;display:flex}.adm-lib-link-body{color:var(--text);margin:0;font-size:.84rem;line-height:1.55}.adm-lib-link-options{color:var(--muted);gap:.15rem;font-size:.78rem;display:grid}.adm-lib-link-options .correct{color:var(--teal);font-weight:650}.adm-lib-link-why{color:var(--muted);margin:0;font-size:.76rem;line-height:1.5}.adm-lib-link-actions{gap:var(--space-2);display:flex}.adm-lib-verified summary{color:var(--blue);cursor:pointer;font-size:.8rem}.adm-lib-verified ul{margin-top:var(--space-2);gap:.25rem;list-style:none;display:grid}.adm-lib-verified li{color:var(--muted);align-items:center;gap:var(--space-2);flex-wrap:wrap;font-size:.76rem;display:flex}.adm-lib-versions tr.live{background:var(--teal-soft)}.adm-lib-audit{gap:.2rem;list-style:none;display:grid}.adm-lib-audit li{align-items:baseline;gap:var(--space-3);padding:var(--space-2);border-bottom:1px solid var(--border);flex-wrap:wrap;font-size:.75rem;display:flex}.adm-lib-audit-at{color:var(--muted);font-variant-numeric:tabular-nums;min-width:11rem}.adm-lib-audit-action{color:var(--text);font-weight:650}.adm-lib-audit-who{color:var(--muted)}.adm-lib-audit-detail{color:var(--muted);word-break:break-all;font-size:.68rem}@media (width<=900px){.adm-lib-split{grid-template-columns:minmax(0,1fr)}.adm-lib-generated{border-right:none;border-bottom:1px solid var(--border)}.adm-lib-audit-at{min-width:0}}.adm-lib-access-form{gap:.5rem;max-width:520px;margin:.75rem 0;display:flex}.adm-lib-access-notice{color:var(--text);margin:.25rem 0 .75rem;font-size:.82rem}.topics-library{gap:var(--space-5);display:grid}.tl-intro{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5);gap:var(--space-2);display:grid}.tl-intro-title{align-items:center;gap:var(--space-2);color:var(--text);margin:0;font-size:1.05rem;font-weight:700;display:flex}.tl-intro-title .icon{color:var(--teal)}.tl-intro-text{color:var(--muted);max-width:78ch;margin:0;font-size:.85rem;line-height:1.65}.tl-groups{gap:var(--space-3);display:grid}.tl-group{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.tl-group-h{font-size:inherit;font-weight:inherit;margin:0}.tl-group-head{align-items:center;gap:var(--space-3);text-align:left;cursor:pointer;width:100%;padding:var(--space-4);border-radius:calc(var(--radius-lg) - 1px);background:0 0;border:none;font-family:inherit;transition:background .12s;display:flex}.tl-group.open .tl-group-head{border-bottom-right-radius:0;border-bottom-left-radius:0}.tl-group-head:hover{background:var(--hover-bg)}.tl-group-chev{color:var(--muted);flex-shrink:0;transition:transform .18s}.tl-group.open .tl-group-chev{color:var(--teal);transform:rotate(90deg)}.tl-group-img{border-radius:var(--radius-md);background:var(--surface-alt);width:34px;height:34px;color:var(--muted);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative;overflow:hidden}.tl-group-name{min-width:0;color:var(--text);letter-spacing:-.01em;flex:1;font-size:.98rem;font-weight:680}.tl-years{gap:var(--space-2);flex-wrap:wrap;display:flex}.tl-years .year-current-btn[aria-pressed=true]{border-color:var(--teal);color:var(--teal);background:var(--teal-soft)}.tl-group-year{margin-left:var(--space-2);color:var(--muted);letter-spacing:.02em;vertical-align:middle;font-size:.7rem;font-weight:600;display:inline-block}.tl-group-count{color:var(--teal);background:var(--teal-soft);border-radius:var(--radius-pill);white-space:nowrap;flex-shrink:0;padding:.1rem .5rem;font-size:.7rem;font-weight:700}.tl-list{gap:var(--space-2);padding:0 var(--space-4) var(--space-4);animation:.18s ease-out tl-open;display:grid}@keyframes tl-open{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@media (width>=820px){.tl-list{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr))}}.tl-rotations{padding:0 var(--space-4) var(--space-3);animation:.18s ease-out tl-open;display:grid}.tl-rotation+.tl-rotation{border-top:1px solid var(--border)}.tl-rotation-h{font-size:inherit;font-weight:inherit;margin:0}.tl-rotation-head{align-items:center;gap:var(--space-2);width:100%;min-height:44px;padding:var(--space-2) var(--space-2);border-radius:var(--radius-sm);color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.tl-rotation-head:hover{background:var(--hover-bg)}.tl-rotation.open .tl-group-chev{color:var(--teal);transform:rotate(90deg)}.tl-rotation-name{flex:1;min-width:0;font-size:.92rem;font-weight:600}.tl-rotation .tl-list{padding:0 0 var(--space-3) var(--space-5)}.tl-card-wrap{min-width:0;display:flex;position:relative}.tl-card{align-items:center;gap:var(--space-3);text-align:left;cursor:pointer;background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-md);min-width:0;padding:var(--space-3) var(--space-4);flex:1;padding-right:2.6rem;font-family:inherit;transition:border-color .14s,background .14s;display:flex}.tl-card:hover{border-color:var(--teal);background:var(--surface)}.tl-card-icon{border-radius:var(--radius-sm);background:var(--teal-soft);width:28px;height:28px;color:var(--teal);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.tl-card-title{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.92rem;font-weight:600;overflow:hidden}.tl-card-meta{gap:var(--space-2);flex-wrap:wrap;flex-shrink:0;display:flex}.tl-chip{color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-pill);white-space:nowrap;align-items:center;gap:.25rem;padding:.1rem .4rem;font-size:.7rem;font-weight:600;display:inline-flex}.tl-card-go{color:var(--muted);flex-shrink:0}.tl-card:hover .tl-card-go{color:var(--teal)}.tl-card-info{top:50%;right:var(--space-3);z-index:1;cursor:pointer;width:24px;height:24px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:color .12s,background .12s,border-color .12s;display:inline-flex;position:absolute;transform:translateY(-50%)}.tl-card-info:hover,.tl-card-info.open{color:var(--teal);background:var(--teal-soft);border-color:var(--teal)}.tl-card-summary{z-index:20;width:min(26rem,100vw - 3rem);padding:var(--space-3) var(--space-4);color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);opacity:0;visibility:hidden;margin:0;font-size:.8rem;line-height:1.55;transition:opacity .14s,transform .14s,visibility .14s;position:absolute;top:calc(100% + 6px);right:0;transform:translateY(-4px)}.tl-card-summary.open{opacity:1;visibility:visible;transform:none}@media (prefers-reduced-motion:reduce){.tl-card,.tl-card-info,.tl-group-chev,.tl-card-summary{transition:none}.tl-list,.tl-rotations{animation:none}}.mo-page{max-width:1040px;margin:0 auto}.mo-intro{margin-bottom:1.25rem}.mo-intro h2{color:var(--text);margin:0 0 .35rem;font-size:1.35rem;font-weight:800}.mo-intro p{color:var(--muted);max-width:70ch;margin:0;font-size:.92rem;line-height:1.6}.mo-subject-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.875rem;display:grid}.mo-subject-card{text-align:left;cursor:pointer;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);flex-direction:column;gap:.4rem;padding:1.1rem 2.5rem 1.1rem 1.15rem;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex;position:relative}.mo-subject-card:hover{border-color:var(--blue);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.mo-subject-card:focus-visible{box-shadow:var(--focus-ring);outline:none}.mo-subject-name{font-size:1rem;font-weight:700}.mo-subject-meta{color:var(--muted);font-size:.8rem}.mo-subject-progress{background:var(--border);border-radius:99px;height:5px;margin-top:.25rem;overflow:hidden}.mo-subject-progress-fill{background:#22c55e;height:100%;transition:width .3s}.mo-subject-chevron{color:var(--muted);position:absolute;top:50%;right:1rem;transform:translateY(-50%)}.mo-setup{max-width:760px;margin:0 auto;padding:1rem 0 3rem}.mo-setup-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:1.5rem;padding:1.75rem;display:flex}.mo-section-row{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.mo-hint{color:var(--muted);margin:-.35rem 0 .6rem;font-size:.78rem}.mo-topic-list{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.45rem;display:grid}.mo-topic{text-align:left;cursor:pointer;border-radius:var(--radius-sm);background:var(--surface-alt);border:1px solid var(--border);color:var(--text);align-items:center;gap:.6rem;padding:.6rem .75rem;font-size:.86rem;display:flex}.mo-topic:hover{border-color:var(--blue)}.mo-topic.selected{background:var(--selected-bg);border-color:var(--blue)}.mo-topic-check{border:1.5px solid var(--border);background:var(--surface);color:#fff;border-radius:5px;flex-shrink:0;place-items:center;width:18px;height:18px;display:grid}.mo-topic.selected .mo-topic-check{background:var(--blue);border-color:var(--blue)}.mo-topic-name{flex:1;font-weight:600}.mo-topic-count{color:var(--muted);white-space:nowrap;font-size:.74rem}.mo-topic-score{color:#16a34a;font-weight:700}.mo-filter-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.mo-filter{border-radius:var(--radius-pill);cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--text);padding:.4rem .85rem;font-size:.82rem}.mo-filter.active{background:var(--navy);border-color:var(--navy);color:#fff}.mo-random{color:var(--muted);cursor:pointer;align-items:center;gap:.4rem;margin-left:auto;font-size:.82rem;display:inline-flex}.mo-station-strip{background:#fff;border-bottom:1px solid #e9ecef;flex-shrink:0;gap:.3rem;padding:.5rem 1.25rem;display:flex;overflow-x:auto}.mo-station-dot{cursor:pointer;color:#475569;background:#fff;border:1.5px solid #dde4f0;border-radius:8px;min-width:30px;height:30px;padding:0 .4rem;font-size:.78rem;font-weight:700}.mo-station-dot.right{color:#15803d;background:#f0fdf4;border-color:#86efac}.mo-station-dot.mixed{color:#c2410c;background:#fff7ed;border-color:#fdba74}.mo-station-dot.current{border-color:var(--navy);box-shadow:0 0 0 2px #0a1b4d2e}.mo-content{padding-top:1.25rem}.mo-station-head{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.mo-station-head .uw-item-label{margin-bottom:0}.mo-topic-chip,.mo-repeated-chip{border-radius:99px;padding:.2rem .6rem;font-size:.72rem;font-weight:700}.mo-topic-chip{background:var(--selected-bg);color:var(--navy-med)}.mo-repeated-chip{color:#92400e;background:#fef3c7}.mo-station{max-width:1180px}.mo-station.has-images{grid-template-columns:minmax(260px,5fr) 7fr;align-items:start;gap:1.75rem;display:grid}.mo-station-media{position:sticky;top:0}.mo-stem{margin-bottom:1.25rem}.mo-images{grid-template-columns:repeat(2,1fr);gap:.6rem;display:grid}.mo-images.single{grid-template-columns:1fr}.mo-image-btn{cursor:zoom-in;background:#0b0f19;border:1px solid #e2e8f0;border-radius:10px;place-items:center;min-height:120px;padding:0;display:grid;position:relative;overflow:hidden}.mo-image{object-fit:contain;width:100%;max-height:420px;display:block}.mo-image-label{color:#fff;background:#0a1b4dd9;border-radius:6px;padding:.1rem .45rem;font-size:.72rem;font-weight:800;position:absolute;top:.45rem;left:.45rem}.mo-image-zoom{color:#0f172a;opacity:.85;background:#ffffffe6;border-radius:50%;place-items:center;width:26px;height:26px;display:grid;position:absolute;bottom:.45rem;right:.45rem}.mo-lightbox{z-index:400;background:#050810eb;flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:3.5rem 1rem 1.5rem;display:flex;position:fixed;inset:0}.mo-lightbox-img{object-fit:contain;border-radius:6px;max-width:100%;max-height:calc(100vh - 9rem)}.mo-lightbox-close{color:#fff;cursor:pointer;background:#ffffff1f;border:none;border-radius:50%;place-items:center;width:40px;height:40px;display:grid;position:absolute;top:.75rem;right:.75rem}.mo-lightbox-nav{color:#e2e8f0;align-items:center;gap:1rem;font-size:.85rem;display:flex}.mo-question{background:#fff;border:1px solid #e2e8f0;border-left:4px solid #cbd5e1;border-radius:12px;margin-bottom:1rem;padding:1rem 1.1rem}.mo-question.correct{border-left-color:#16a34a}.mo-question.wrong{border-left-color:#dc2626}.mo-question.shown{border-left-color:#0ea5e9}.mo-question-prompt{color:#1e293b;margin-bottom:.75rem;font-size:.93rem;font-weight:600;line-height:1.6}.mo-question-letter{color:var(--navy-med);font-weight:800}.mo-question-actions{flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:.9rem;display:flex}.mo-question-actions .uw-submit-q-btn,.mo-question-actions .tm-show-btn{margin-top:0}.uw-choice.mo-choice-inspected{background:#fff7ed;border-left-color:#f97316}.uw-choice.mo-choice-inspected .uw-choice-letter{color:#ea580c}.mo-reveal .uw-status-bar{margin-top:1rem}.mo-why-wrong{background:#fef2f2;border:1px solid #fecaca;border-radius:10px;margin-top:.85rem;overflow:hidden}.mo-why-wrong-title{color:#b91c1c;border-bottom:1px solid #fecaca;flex-wrap:wrap;align-items:center;gap:.4rem;padding:.55rem .9rem;font-size:.8rem;font-weight:700;display:flex}.mo-why-wrong-sub{color:#9f1239;opacity:.8;font-weight:500}.mo-why-wrong-text{color:#1e293b;white-space:pre-wrap;padding:.75rem .9rem;font-size:.88rem;line-height:1.65}.mo-why-right{color:#15803d;align-items:center;gap:.4rem;margin-top:.85rem;font-size:.84rem;font-weight:600;display:flex}.mo-reveal .uw-explanation{margin-top:.85rem}.mo-answer-input{box-sizing:border-box;resize:vertical;color:#0f172a;width:100%;min-height:64px;font:inherit;background:#fff;border:1.5px solid #cbd5e1;border-radius:10px;padding:.65rem .8rem;font-size:.92rem;line-height:1.55}.mo-answer-input:focus{border-color:var(--blue);box-shadow:var(--focus-ring);outline:none}.mo-answer-input:disabled{color:#334155;background:#f8fafc}.mo-label{text-transform:uppercase;letter-spacing:.06em;color:#64748b;margin-bottom:.25rem;font-size:.7rem;font-weight:800;display:block}.mo-file-answer{background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;margin-top:.85rem;padding:.8rem .95rem}.mo-file-answer .mo-label{color:#1d4ed8}.mo-file-answer-text{color:#0f172a;white-space:pre-wrap;font-size:.95rem;font-weight:600;line-height:1.55}.mo-accepted{color:#475569;flex-wrap:wrap;align-items:center;gap:.3rem;margin-top:.55rem;font-size:.78rem;display:flex}.mo-accepted-chip{color:#334155;background:#fff;border:1px solid #cbd5e1;border-radius:99px;padding:.1rem .5rem}.mo-accepted-chip.hit{color:#166534;background:#dcfce7;border-color:#86efac;font-weight:700}.mo-your-answer{color:#1e293b;white-space:pre-wrap;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin-top:.85rem;padding:.65rem .9rem;font-size:.9rem}.mo-self-mark{cursor:pointer;color:#334155;background:0 0;border:1px dashed #94a3b8;border-radius:8px;align-items:center;gap:.35rem;margin-top:.6rem;padding:.4rem .75rem;font-size:.8rem;font-weight:600;display:inline-flex}.mo-self-mark:hover:not(:disabled){color:#15803d;border-color:#16a34a}.mo-correction{background:#fffbeb;border:1px solid #fcd34d;border-radius:10px;margin-top:.85rem;overflow:hidden}.mo-correction-title{color:#92400e;border-bottom:1px solid #fde68a;align-items:center;gap:.4rem;padding:.55rem .9rem;font-size:.8rem;font-weight:700;display:flex}.mo-correction-text{color:#451a03;white-space:pre-wrap;padding:.75rem .9rem;font-size:.86rem;line-height:1.6}.mo-tip{color:#94a3b8;margin:.6rem 0 0;font-size:.76rem}.mo-submit-station{width:100%;margin-top:.5rem}.mo-summary{flex-direction:column;gap:1rem;max-width:720px;margin:0 auto;padding:1rem 0 3rem;display:flex}.mo-summary-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:1.5rem}.mo-summary-card h3{color:var(--text);margin:0 0 .75rem;font-size:1rem}.mo-summary-list{margin:0 0 1.25rem;padding:0;list-style:none}.mo-summary-list li{border-bottom:1px solid var(--border);color:var(--text);justify-content:space-between;gap:1rem;padding:.55rem 0;font-size:.88rem;display:flex}.mo-summary-score{color:var(--navy-med);white-space:nowrap;font-weight:700}.mo-summary-actions{flex-wrap:wrap;justify-content:flex-end;gap:.75rem;display:flex}html.dark .mo-station-strip{background:#151a24;border-color:#ffffff14}html.dark .mo-station-dot{color:#cbd5e1;background:#1b2130;border-color:#ffffff1f}html.dark .mo-station-dot.right{color:#86efac;background:#16a34a26;border-color:#22c55e}html.dark .mo-station-dot.mixed{color:#fdba74;background:#ea580c26;border-color:#fb923c}html.dark .mo-station-dot.current{border-color:#93c5fd;box-shadow:0 0 0 2px #93c5fd40}html.dark .mo-question{background:#151a24;border-color:#ffffff14}html.dark .mo-question-prompt{color:#e2e8f0}html.dark .mo-question-letter{color:#93c5fd}html.dark .mo-topic-chip{color:#bfdbfe;background:#93c5fd1f}html.dark .mo-repeated-chip{color:#fcd34d;background:#f59e0b26}html.dark .mo-image-btn{border-color:#ffffff1a}html.dark .uw-choice.mo-choice-inspected{background:#f973161f;border-left-color:#fb923c}html.dark .mo-why-wrong{background:#dc26261a;border-color:#f8717159}html.dark .mo-why-wrong-title{color:#fca5a5;border-color:#f8717140}html.dark .mo-why-wrong-sub{color:#fecdd3}html.dark .mo-why-wrong-text{color:#e2e8f0}html.dark .mo-why-right{color:#86efac}html.dark .mo-answer-input{color:#e2e8f0;background:#0f131c;border-color:#ffffff24}html.dark .mo-answer-input:disabled{color:#cbd5e1;background:#121722}html.dark .mo-label{color:#94a3b8}html.dark .mo-file-answer{background:#3b82f61a;border-color:#93c5fd4d}html.dark .mo-file-answer .mo-label{color:#93c5fd}html.dark .mo-file-answer-text{color:#f1f5f9}html.dark .mo-accepted{color:#94a3b8}html.dark .mo-accepted-chip{color:#cbd5e1;background:0 0;border-color:#ffffff2e}html.dark .mo-accepted-chip.hit{color:#86efac;background:#16a34a2e;border-color:#22c55e}html.dark .mo-your-answer{color:#e2e8f0;background:#ffffff0a;border-color:#ffffff14}html.dark .mo-self-mark{color:#cbd5e1;border-color:#ffffff40}html.dark .mo-correction{background:#f59e0b1a;border-color:#fcd34d59}html.dark .mo-correction-title{color:#fcd34d;border-color:#fcd34d33}html.dark .mo-correction-text{color:#fde68a}html.dark .mo-topic-check{background:0 0}@media (width<=900px){.mo-station.has-images{grid-template-columns:1fr;gap:1rem}.mo-station-media{position:static}.mo-image{max-height:300px}}@media (width<=600px){.mo-setup-card{border-radius:12px;gap:1.2rem;padding:1.15rem}.mo-topic-list{grid-template-columns:1fr}.mo-random{margin-left:0}.mo-station-strip{padding:.45rem .75rem}.mo-question{padding:.85rem .8rem}}.mo-report{justify-content:flex-end;margin-top:.6rem;display:flex}.mo-adm-body{padding:1rem 1.25rem 1.25rem}.mo-adm-toolbar{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.9rem;display:flex}.mo-adm-toolbar .adm-input{flex:160px}.mo-adm-hint{color:var(--muted);font-size:.74rem;font-weight:400}.mo-adm-count{color:var(--muted);margin-bottom:.4rem;font-size:.76rem}.mo-adm-tab-badge{margin-left:.35rem}.mo-adm-station{border:1px solid var(--border);background:var(--surface);border-radius:10px;margin-bottom:.5rem}.mo-adm-station-head{cursor:pointer;text-align:left;width:100%;color:var(--text);font:inherit;background:0 0;border:0;align-items:center;gap:.6rem;padding:.6rem .8rem;display:flex}.mo-adm-station-topic{color:var(--navy);white-space:nowrap;text-overflow:ellipsis;max-width:30%;font-size:.8rem;font-weight:600;overflow:hidden}.mo-adm-station-stem{min-width:0;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.82rem;overflow:hidden}.mo-adm-station-body{border-top:1px solid var(--border);padding:.2rem .9rem .9rem}.mo-adm-station-form{flex-direction:column;gap:.5rem;margin:.6rem 0 .8rem;display:flex}.mo-adm-tags{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.3rem;display:inline-flex}.mo-adm-tag{background:var(--surface-alt);border:1px solid var(--border);color:var(--muted);border-radius:999px;align-items:center;gap:.2rem;padding:.1rem .45rem;font-size:.68rem;display:inline-flex}.mo-adm-tag.warn{color:#9a3412;background:#fff7ed;border-color:#fdba74}.mo-adm-tag.danger{color:#991b1b;background:#fef2f2;border-color:#fca5a5}.mo-adm-images{flex-wrap:wrap;gap:.5rem;margin:.7rem 0;display:flex}.mo-adm-image{color:var(--muted);cursor:zoom-in;flex-direction:column;align-items:center;gap:.2rem;font-size:.7rem;display:flex}.mo-adm-image img{object-fit:contain;border:1px solid var(--border);background:#000;border-radius:6px;max-width:220px;height:110px}.mo-adm-q{border-top:1px dashed var(--border);padding:.6rem 0}.mo-adm-q.hidden .mo-adm-q-main{opacity:.5}.mo-adm-q-head{flex-wrap:wrap;align-items:flex-start;gap:.55rem;display:flex}.mo-adm-q-letter{color:var(--navy);font-weight:700}.mo-adm-q-main{flex:260px;min-width:0}.mo-adm-q-prompt{color:var(--text);font-size:.86rem}.mo-adm-q-answer{color:#15803d;margin-top:.2rem;font-size:.78rem}.mo-adm-q-actions{gap:.35rem;display:flex}.mo-adm-form{border:1px solid var(--border);background:var(--surface-alt);border-radius:10px;margin-top:.7rem;padding:.9rem}.mo-adm-choice{border:1px solid var(--border);background:var(--surface);border-radius:8px;align-items:flex-start;gap:.5rem;margin-bottom:.4rem;padding:.45rem;display:flex}.mo-adm-choice.correct{border-color:#22c55e}.mo-adm-choice input[type=radio]{margin-top:.5rem}.mo-adm-choice-fields{flex-direction:column;flex:1;gap:.3rem;min-width:0;display:flex}.mo-adm-keys{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.5rem;display:grid}.mo-adm-key{flex-direction:column;gap:.25rem;display:flex}.mo-adm-key-head{color:var(--muted);justify-content:space-between;align-items:center;font-size:.74rem;font-weight:600;display:flex}.mo-adm-inline{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.4rem;display:flex}.mo-adm-need{color:var(--text);align-items:center;gap:.4rem;font-size:.8rem;display:inline-flex}.mo-adm-need .adm-input{flex:none;width:60px}.mo-adm-check{color:var(--text);align-items:center;gap:.4rem;font-size:.82rem;display:inline-flex}.mo-adm-mistake{grid-template-columns:1fr 2fr auto;align-items:start;gap:.4rem;margin-bottom:.4rem;display:grid}.mo-adm-try{border:1px dashed var(--border-strong,var(--border));border-radius:8px;flex-direction:column;gap:.3rem;padding:.6rem;display:flex}.mo-adm-try-result{flex-wrap:wrap;align-items:center;gap:.3rem;font-size:.8rem;display:flex}.mo-adm-try-result.ok{color:#15803d}.mo-adm-try-result.no{color:#b91c1c}.mo-adm-try-note{color:var(--muted)}.mo-adm-their-answer{color:var(--text);margin-top:.4rem;font-size:.84rem}.mo-adm-report-case{margin:.6rem 0}@media (width<=640px){.mo-adm-body{padding:.75rem}.mo-adm-station-topic{max-width:40%}.mo-adm-mistake{grid-template-columns:1fr auto}.mo-adm-mistake textarea:nth-child(2){grid-column:1}}html.dark .mo-adm-station-topic,html.dark .mo-adm-q-letter{color:#93c5fd}html.dark .mo-adm-q-answer{color:#86efac}html.dark .mo-adm-tag.warn{color:#fdba74;background:#ea580c26;border-color:#fb923c80}html.dark .mo-adm-tag.danger{color:#fca5a5;background:#dc262626;border-color:#f8717180}html.dark .mo-adm-try-result.ok{color:#86efac}html.dark .mo-adm-try-result.no{color:#fca5a5}.fv-root{z-index:1100;color:#f1f3f7;background:#1b1f27;flex-direction:column;display:flex;position:fixed;inset:0}.fv-root:fullscreen{width:100%;height:100%}.fv-bar{min-height:56px;padding:.5rem .75rem;padding-top:max(.5rem, env(safe-area-inset-top));background:#12151b;border-bottom:1px solid #ffffff14;flex-shrink:0;align-items:center;gap:.6rem;display:flex}.fv-close{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff38;border-radius:10px;flex-shrink:0;align-items:center;gap:.4rem;min-height:40px;padding:0 .9rem 0 .7rem;font-family:inherit;font-size:.85rem;font-weight:600;display:inline-flex}.fv-close:hover,.fv-close:focus-visible{background:#ffffff29}.fv-title{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:.9rem;font-weight:500;overflow:hidden}.fv-tools{flex-shrink:0;align-items:center;gap:.35rem;display:flex}.fv-zoom{align-items:center;gap:.15rem;display:flex}.fv-zoom-label{text-align:center;color:#c9ced8;font-variant-numeric:tabular-nums;min-width:3.2em;font-size:.78rem}.fv-pages{color:#c9ced8;font-variant-numeric:tabular-nums;white-space:nowrap;background:#ffffff14;border-radius:999px;padding:.25rem .55rem;font-size:.78rem}.fv-tool{color:#e6e9ef;cursor:pointer;background:0 0;border:none;border-radius:9px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.fv-tool:hover:not(:disabled),.fv-tool:focus-visible{background:#ffffff1f}.fv-tool:disabled{opacity:.35;cursor:default}.fv-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:1;overflow:auto}.fv-pages-col{padding:1rem .5rem calc(1.5rem + env(safe-area-inset-bottom));flex-direction:column;align-items:center;gap:.75rem;min-width:min-content;display:flex}.fv-page{background:#fff;flex-shrink:0;box-shadow:0 2px 12px #00000073}.fv-canvas{width:100%;height:100%;display:block}.fv-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.6rem;height:100%;padding:2rem 1.25rem;display:flex}.fv-state-title{margin:0;font-size:1rem;font-weight:600}.fv-state-sub{color:#aab1be;margin:0;font-size:.85rem}.fv-state-actions{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:.5rem;display:flex}.fv-state-btn{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff40;border-radius:10px;min-height:40px;padding:0 1rem;font-family:inherit;font-size:.85rem;font-weight:500}.fv-state-btn:hover{background:#ffffff29}.fv-spinner{border:3px solid #ffffff2e;border-top-color:#fff;border-radius:50%;width:34px;height:34px;animation:.8s linear infinite fv-spin}@keyframes fv-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.fv-spinner{animation-duration:2.4s}}@media (width<=560px){.fv-bar{gap:.35rem;padding-left:.5rem;padding-right:.4rem}.fv-title{display:none}.fv-tools{gap:.1rem;margin-left:auto}.fv-zoom-label{display:none}.fv-tool{width:36px;height:36px}}.oc-page{max-width:880px;margin:0 auto;padding-bottom:3rem}.oc-intro{margin-bottom:1.25rem}.oc-intro h2{color:var(--text);margin:0 0 .35rem;font-size:1.35rem;font-weight:800}.oc-intro p{color:var(--muted);max-width:70ch;margin:0;font-size:.92rem;line-height:1.6}.oc-years{margin-bottom:1rem}.oc-subject-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.875rem;display:grid}.oc-subject-card{text-align:left;cursor:pointer;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);flex-direction:column;gap:.35rem;padding:1.1rem 2.5rem 1.1rem 1.15rem;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex;position:relative}.oc-subject-card:hover{border-color:var(--blue);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.oc-subject-card:focus-visible{box-shadow:var(--focus-ring);outline:none}.oc-subject-name{font-size:1rem;font-weight:700}.oc-subject-meta,.oc-subject-rot{color:var(--muted);font-size:.8rem}.oc-subject-chevron{color:var(--muted);position:absolute;top:50%;right:1rem;transform:translateY(-50%)}.oc-seg{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-pill);flex-wrap:wrap;gap:2px;padding:3px;display:inline-flex}.oc-seg button{color:var(--muted);cursor:pointer;font:inherit;border-radius:var(--radius-pill);background:0 0;border:none;padding:.35rem .8rem;font-size:.82rem;font-weight:600}.oc-seg button.on{background:var(--surface);color:var(--text);box-shadow:var(--shadow-xs)}.oc-seg button:focus-visible{box-shadow:var(--focus-ring);outline:none}.oc-chip{cursor:pointer;font:inherit;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);color:var(--muted);align-items:center;gap:.3rem;padding:.35rem .75rem;font-size:.8rem;font-weight:600;display:inline-flex}.oc-chip.on{background:var(--selected-bg);border-color:var(--accent-border);color:var(--accent-text)}.oc-chip.ghost{border-style:dashed}.oc-chip:focus-visible{box-shadow:var(--focus-ring);outline:none}.oc-list-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.oc-list-head h2{color:var(--text);margin:0 0 .2rem;font-size:1.3rem;font-weight:800}.oc-list-head p{color:var(--muted);margin:0;font-size:.85rem}.oc-list-head .btn-primary{align-items:center;gap:.4rem;display:inline-flex}.oc-filters{flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:1.25rem;display:flex}.oc-search{min-width:0;height:var(--control-h-sm,34px);font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-pill);flex:180px;padding:0 .8rem;font-size:.85rem}.oc-search:focus{box-shadow:var(--focus-ring);outline:none}.oc-chapter{margin-bottom:1.5rem}.oc-chapter h3{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);align-items:center;gap:.5rem;margin:0 0 .5rem;font-size:.78rem;font-weight:700;display:flex}.oc-chapter h3 span{text-transform:none;letter-spacing:0;color:var(--muted);opacity:.8;font-weight:600}.oc-rows{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);flex-direction:column;display:flex;overflow:hidden}.oc-station-row{text-align:left;cursor:pointer;border:none;border-top:1px solid var(--border);color:var(--text);font:inherit;background:0 0;align-items:center;gap:.75rem;padding:.8rem 1rem;display:flex}.oc-station-row:first-child{border-top:none}.oc-station-row:hover{background:var(--hover-bg)}.oc-station-row:focus-visible{box-shadow:inset var(--focus-ring);outline:none}.oc-row-main{flex-direction:column;flex:1;gap:.2rem;min-width:0;display:flex}.oc-row-title{font-size:.92rem;font-weight:600}.oc-row-meta{color:var(--muted);font-size:.76rem}.oc-row-chevron{color:var(--muted)}.oc-badge{border-radius:var(--radius-pill);white-space:nowrap;border:1px solid;padding:.2rem .5rem;font-size:.75rem;font-weight:700}.oc-badge.good{color:var(--success-fg);background:var(--success-bg);border-color:var(--success-border)}.oc-badge.ok{color:var(--warning-fg);background:var(--warning-bg);border-color:var(--warning-border)}.oc-badge.low{color:var(--error-fg);background:var(--error-bg);border-color:var(--error-border)}.oc-bar{background:var(--border);border-radius:99px;height:6px;overflow:hidden}.oc-bar.small{max-width:220px;height:4px}.oc-bar>div{background:var(--success-fg);height:100%;transition:width .3s}.oc-station-head{margin-bottom:1rem}.oc-crumb{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.oc-station-head h2{color:var(--text);margin:.2rem 0;font-size:1.35rem;font-weight:800;line-height:1.25}.oc-station-meta{color:var(--muted);font-size:.82rem}.oc-modes{border-bottom:1px solid var(--border);gap:.25rem;margin-bottom:1.25rem;display:flex;overflow-x:auto}.oc-modes button{cursor:pointer;font:inherit;color:var(--muted);background:0 0;border:none;border-bottom:2px solid #0000;flex:none;margin-bottom:-1px;padding:.6rem .9rem;font-size:.9rem;font-weight:600}.oc-modes button.on{color:var(--text);border-bottom-color:var(--blue)}.oc-modes button:focus-visible{box-shadow:var(--focus-ring);outline:none}.oc-scenarios{background:var(--info-bg);border:1px solid var(--info-border);color:var(--text);border-radius:var(--radius-md);margin-bottom:1rem;padding:.85rem 1rem}.oc-scenarios-label{text-transform:uppercase;letter-spacing:.05em;color:var(--info-fg);margin:0 0 .35rem;font-size:.72rem;font-weight:700}.oc-scenarios ul{flex-direction:column;gap:.3rem;margin:0;padding-left:1.1rem;display:flex}.oc-scenarios li{font-size:.88rem;line-height:1.5}.oc-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.oc-learned{min-width:160px;color:var(--text);flex-direction:column;gap:.3rem;font-size:.82rem;font-weight:600;display:flex}.oc-toggles{flex-wrap:wrap;gap:.4rem;display:flex}.oc-hint{color:var(--muted);margin:0 0 .75rem;font-size:.82rem}.oc-checklist{flex-direction:column;gap:.9rem;display:flex}.oc-group{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.oc-group-head{color:var(--text);background:var(--surface-alt);border-bottom:1px solid var(--border);padding:.55rem .9rem;font-size:.8rem;font-weight:700}.oc-group-empty{color:var(--muted);padding:.6rem .9rem;font-size:.8rem;font-style:italic}.oc-item{border-top:1px solid var(--border);align-items:flex-start;gap:.6rem;padding:.5rem .9rem;display:flex}.oc-group-head+.oc-item,.oc-group>.oc-item:first-child{border-top:none}.oc-item.missed-last{box-shadow:inset 3px 0 0 var(--error-border)}.oc-tick{cursor:pointer;border:1.5px solid var(--border-strong);background:var(--surface);width:22px;height:22px;color:var(--on-accent);border-radius:6px;flex:none;justify-content:center;align-items:center;margin-top:1px;display:inline-flex}.oc-tick:focus-visible{box-shadow:var(--focus-ring);outline:none}.oc-item.on .oc-tick{background:var(--success-fg);border-color:var(--success-fg)}.oc-item.on.learned .oc-item-text{color:var(--muted)}.oc-item-text{text-align:left;cursor:pointer;font:inherit;color:var(--text);background:0 0;border:none;flex:1;padding:0;font-size:.9rem;line-height:1.45}.oc-item-cover{text-align:left;cursor:pointer;font:inherit;color:var(--muted);background:repeating-linear-gradient(135deg, var(--surface-alt) 0 8px, var(--hover-bg) 8px 16px);border:1px dashed var(--border);border-radius:var(--radius-sm);flex:1;padding:.3rem .6rem;font-size:.8rem}.oc-star{color:#d97706;margin-right:.3rem;font-size:.85em}.oc-checklist.big .oc-item{padding:.8rem 1rem}.oc-checklist.big .oc-tick{width:28px;height:28px}.oc-checklist.big .oc-item-text{font-size:1rem}.oc-checklist.big .oc-item.on{background:var(--success-bg)}.oc-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;gap:1rem;padding:1.1rem;display:flex}.oc-panel p{color:var(--text);margin:0;font-size:.9rem;line-height:1.55}.oc-row{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.oc-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:700}.oc-notes{box-sizing:border-box;resize:vertical;width:100%;font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.7rem .8rem;font-size:.9rem;line-height:1.5}.oc-notes:focus{box-shadow:var(--focus-ring);outline:none}.oc-mynotes{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:1rem;padding:.8rem 1rem}.oc-mynotes p:last-child{white-space:pre-wrap;color:var(--text);margin:0;font-size:.88rem}.oc-clock{font-variant-numeric:tabular-nums;color:var(--text);font-size:1.6rem;font-weight:800}.oc-clock.warn{color:var(--warning-fg)}.oc-clock.over{color:var(--error-fg)}.oc-sticky-actions{z-index:2;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);color:var(--text);justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;padding:.75rem 1rem;font-size:.88rem;font-weight:600;display:flex;position:sticky;bottom:0}.oc-scenario-pick{flex-direction:column;gap:.4rem;display:flex}.oc-scenario-opt{text-align:left;cursor:pointer;font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.6rem .8rem;font-size:.88rem;line-height:1.45}.oc-scenario-opt.on{border-color:var(--accent-border);background:var(--selected-bg)}.oc-start{align-self:flex-start}.oc-exam-bar{top:var(--topbar-h,0);z-index:3;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.75rem;padding:.6rem .9rem;display:flex;position:sticky}.oc-exam-score{color:var(--text);font-variant-numeric:tabular-nums;font-size:1.4rem;font-weight:800}.oc-exam-score span{color:var(--muted);font-size:.9rem;font-weight:600}.oc-exam-scenario{background:var(--info-bg);border:1px solid var(--info-border);border-radius:var(--radius-md);margin-bottom:.9rem;padding:.6rem .9rem}.oc-exam-scenario summary{cursor:pointer;color:var(--info-fg);font-size:.8rem;font-weight:700}.oc-exam-scenario p{color:var(--text);margin:.4rem 0 0;font-size:.9rem;line-height:1.5}.oc-result{flex-direction:column;gap:1rem;display:flex}.oc-result-score{border-radius:var(--radius-lg);border:1px solid;flex-direction:column;align-items:center;gap:.15rem;padding:1.4rem 1rem;display:flex}.oc-result-score.good{background:var(--success-bg);border-color:var(--success-border);color:var(--success-fg)}.oc-result-score.ok{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-fg)}.oc-result-score.low{background:var(--error-bg);border-color:var(--error-border);color:var(--error-fg)}.oc-result-num{font-variant-numeric:tabular-nums;font-size:2.6rem;font-weight:800;line-height:1}.oc-result-num span{opacity:.75;font-size:1.2rem}.oc-result-pct{font-size:1.05rem;font-weight:700}.oc-result-meta{opacity:.85;font-size:.8rem}.oc-result-saved{text-align:center;color:var(--muted);margin:0;font-size:.82rem}.oc-result-save{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;align-items:flex-start;gap:.6rem;padding:.9rem 1rem;display:flex}.oc-result-save p{color:var(--text);margin:0;font-size:.85rem;line-height:1.5}.oc-result-actions{flex-wrap:wrap;gap:.5rem;display:flex}.oc-result-actions button{align-items:center;gap:.35rem;display:inline-flex}.oc-missed{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:.9rem 1rem}.oc-missed h4{color:var(--text);margin:0 0 .6rem;font-size:.95rem}.oc-missed-stars{color:#d97706}.oc-missed-group{margin-bottom:.7rem}.oc-missed-group .oc-group-head{color:var(--muted);background:0 0;border:none;padding:0 0 .2rem}.oc-missed-group ul{flex-direction:column;gap:.2rem;margin:0;padding-left:1.1rem;display:flex}.oc-missed-group li{color:var(--text);font-size:.88rem;line-height:1.45}.oc-perfect{text-align:center;color:var(--success-fg);font-weight:600}@media (width<=640px){.oc-list-head .btn-primary{justify-content:center;width:100%}.oc-toolbar{flex-direction:column;align-items:stretch}.oc-modes button{padding:.55rem .7rem;font-size:.85rem}.oc-clock{font-size:1.3rem}.oc-exam-bar{top:var(--topbar-h,0)}}
