:root{--green-950:#06160d;--green-900:#0a2415;--green-850:#0d2a1a;--green-800:#0c2a18;--green-750:#0f2f1c;--green-700:#123a25;--green-650:#143f28;--green-600:#17472e;--green-550:#1a4f33;--green-500:#1f6b45;--green-450:#2a7a52;--green-400:#358a5f;--green-300:#4aa873;--green-200:#7cc49a;--green-100:#b5dfc9;--green-50:#e6f3ec;--gold-600:#c9a44c;--gold-550:#d1ad55;--gold-500:#d6b25e;--gold-450:#dbb867;--gold-400:#e0be70;--gold-300:#e8cd8a;--gold-200:#efdba5;--gold-100:#f6eac2;--gold-50:#fbf6e8;--surface-1:#0f3320;--surface-2:#123a25;--surface-3:#17472e;--paper-0:#f8fcf9;--paper-1:#f6fbf7;--paper-2:#eff6f1;--paper-3:#e8f0ea;--color-primary:var(--green-900);--color-primary-light:#0a24151f;--color-primary-dark:var(--green-950);--color-primary-rgb:10, 36, 21;--color-accent:var(--gold-600);--color-accent-light:#c9a44c26;--color-accent-rgb:201, 164, 76;--app-bg-gradient:linear-gradient(180deg, var(--green-900) 0%, var(--green-800) 35%, var(--green-750) 70%, var(--green-900) 100%);--color-bg-primary:var(--paper-1);--color-bg-secondary:var(--paper-2);--color-bg-tertiary:#fff;--color-bg-surface:#fff;--color-bg-panel:#0a24150d;--color-text-primary:#1a1a1a;--color-text-secondary:#5a5548;--color-text-tertiary:#8a8578;--color-text-muted:#8a8578;--color-border:#d5cfc4;--color-border-light:#e2ddd4;--color-border-dark:#c4beb3;--color-border-accent:#c9a44c40;--color-success:#1f6b45;--color-success-light:#1f6b451f;--color-warning:#e8a53a;--color-warning-light:#e8a53a1f;--color-danger:#b91c1c;--color-danger-light:#b91c1c1f;--color-info:#3b82f6;--color-info-light:#3b82f61f;--color-deep-bg:var(--color-bg-primary);--color-deep-card:var(--color-bg-surface);--color-deep-ink:var(--color-text-primary);--color-deep-ink-muted:var(--color-text-secondary);--color-deep-grid:var(--color-border);--color-deep-grid-soft:var(--color-border-light);--shadow-default:0 4px 12px #0000000f;--shadow-medium:0 6px 16px #00000014;--shadow-large:0 8px 24px #0000001a;--shadow-elevated:0 12px 36px #0000001f;--radius-sm:2px;--radius-md:4px;--radius-lg:4px;--radius-xl:4px;--radius-2xl:4px;--radius-full:9999px;--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:20px;--space-2xl:24px;--space-3xl:32px;--space-4xl:40px;--space-5xl:48px;--space-6xl:56px;--font-family-sans:"SF Mono", "JetBrains Mono", "Menlo", "Consolas", monospace;--font-family-serif:"SF Mono", "JetBrains Mono", "Menlo", "Consolas", monospace;--font-family-mono:"SF Mono", "JetBrains Mono", "Menlo", "Consolas", monospace;--text-xs:13px;--text-sm:15px;--text-base:16px;--text-md:17px;--text-lg:19px;--text-xl:21px;--text-2xl:23px;--text-3xl:27px;--text-4xl:31px;--text-5xl:35px;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--leading-tight:1.2;--leading-snug:1.3;--leading-normal:1.5;--leading-relaxed:1.6;--sidebar-width:260px;--topbar-height:56px;--container-max-width:1400px;--transition-fast:.15s ease;--transition-normal:.25s ease;--transition-slow:.35s ease;--transition-bounce:.4s cubic-bezier(.34, 1.56, .64, 1);--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070;--z-toast:1080}@media (prefers-color-scheme:dark){:root{--color-bg-primary:#0a120c;--color-bg-secondary:#0d1a10;--color-bg-tertiary:#102214;--color-bg-surface:#142818;--color-bg-panel:#ffffff0a;--color-text-primary:#e8e8e8;--color-text-secondary:#e8e8e8b3;--color-text-tertiary:#e8e8e880;--color-text-muted:#e8e8e899;--color-border:#e8e8e826;--color-border-light:#e8e8e814;--color-border-dark:#e8e8e840;--color-border-accent:#c9a44c40;--shadow-default:0 4px 12px #0000004d;--shadow-medium:0 6px 16px #00000059;--shadow-large:0 8px 24px #0006;--shadow-elevated:0 12px 36px #00000073;--color-deep-bg:var(--color-bg-primary);--color-deep-card:var(--color-bg-surface);--color-deep-ink:var(--color-text-primary);--color-deep-ink-muted:var(--color-text-secondary);--color-deep-grid:var(--color-border);--color-deep-grid-soft:var(--color-border-light);--paper-0:#0a120c;--paper-1:#0d1a10;--paper-2:#102214;--paper-3:#142818}}[data-theme=dark]{--color-bg-primary:#0a120c;--color-bg-secondary:#0d1a10;--color-bg-tertiary:#102214;--color-bg-surface:#142818;--color-bg-panel:#ffffff0a;--color-text-primary:#e8e8e8;--color-text-secondary:#e8e8e8b3;--color-text-tertiary:#e8e8e880;--color-text-muted:#e8e8e899;--color-border:#e8e8e826;--color-border-light:#e8e8e814;--color-border-dark:#e8e8e840;--color-border-accent:#c9a44c40;--shadow-default:0 4px 12px #0000004d;--shadow-medium:0 6px 16px #00000059;--shadow-large:0 8px 24px #0006;--shadow-elevated:0 12px 36px #00000073;--color-deep-bg:var(--color-bg-primary);--color-deep-card:var(--color-bg-surface);--color-deep-ink:var(--color-text-primary);--color-deep-ink-muted:var(--color-text-secondary);--color-deep-grid:var(--color-border);--color-deep-grid-soft:var(--color-border-light);--paper-0:#0a120c;--paper-1:#0d1a10;--paper-2:#102214;--paper-3:#142818}[data-theme=light]{--color-bg-primary:var(--paper-1);--color-bg-secondary:var(--paper-2);--color-bg-tertiary:#fff;--color-bg-surface:#fff;--color-bg-panel:#0a24150d;--color-text-primary:#1a1a1a;--color-text-secondary:#5a5548;--color-text-tertiary:#8a8578;--color-text-muted:#8a8578;--color-border:#d5cfc4;--color-border-light:#e2ddd4;--color-border-dark:#c4beb3;--color-border-accent:#c9a44c40;--shadow-default:0 4px 12px #0000000f;--shadow-medium:0 6px 16px #00000014;--shadow-large:0 8px 24px #0000001a;--shadow-elevated:0 12px 36px #0000001f;--paper-0:#f8fcf9;--paper-1:#f6fbf7;--paper-2:#eff6f1;--paper-3:#e8f0ea}@media print{:root{--color-bg-primary:#fff;--color-bg-secondary:#f5f5f5;--color-bg-surface:#fff;--color-text-primary:#000;--color-text-secondary:#333;--color-text-tertiary:#666;--color-border:#ccc;--color-border-light:#eee;--shadow-default:none;--shadow-medium:none;--shadow-large:none;--shadow-elevated:none}}@media (prefers-reduced-motion:reduce){:root{--transition-fast:0s ease;--transition-normal:0s ease;--transition-slow:0s ease;--transition-bounce:0s ease}}@media (prefers-contrast:high){:root{--color-border:#4a4a4a;--color-border-light:#6a6a6a;--color-border-dark:#2a2a2a;--color-text-primary:#000;--color-text-secondary:#333;--color-text-tertiary:#555}}*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}html,html:focus-within{scroll-behavior:smooth}body{text-rendering:optimizespeed;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--color-bg-primary);min-height:100dvh;color:var(--color-text-primary);line-height:1.5}img,picture,video,canvas,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}#root,#__next{isolation:isolate}@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--typo-font:"SF Mono", "JetBrains Mono", "Menlo", "Consolas", monospace;--typo-xs:13px;--typo-sm:15px;--typo-base:16px;--typo-md:17px;--typo-lg:19px;--typo-xl:21px;--typo-2xl:23px;--typo-3xl:27px;--typo-4xl:31px;--typo-light:300;--typo-normal:1.5;--typo-medium:500;--typo-semibold:600;--typo-bold:700;--typo-extrabold:800;--typo-tight:1.2;--typo-snug:1.3;--typo-relaxed:1.6;--typo-loose:2;--typo-text:#1a1a1a;--typo-muted:#8a8578;--typo-faint:#c4beb3;--typo-green:#1f6b45;--typo-gold:#c9a44c;--typo-gold-soft:#c9a44c0f}body{font-family:var(--typo-font);font-size:var(--typo-base);font-weight:var(--typo-normal);line-height:var(--typo-normal);color:var(--typo-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--typo-font);font-weight:var(--typo-bold);line-height:var(--typo-tight);color:var(--typo-text);letter-spacing:-.2px;text-transform:uppercase;margin-bottom:14px}h1{font-size:var(--typo-3xl);font-weight:var(--typo-extrabold);letter-spacing:-.5px}h2{font-size:var(--typo-2xl);letter-spacing:-.3px}h3{font-size:var(--typo-xl);letter-spacing:-.2px}h4{font-size:var(--typo-lg);letter-spacing:-.1px}h5{font-size:var(--typo-md);font-weight:var(--typo-semibold);letter-spacing:.3px}h6{font-size:var(--typo-sm);font-weight:var(--typo-semibold);text-transform:uppercase;letter-spacing:.5px;color:var(--typo-muted)}p{line-height:var(--typo-relaxed);color:var(--typo-muted);font-size:var(--typo-base);margin-bottom:14px}p:last-child{margin-bottom:0}a{color:var(--typo-green);font-weight:var(--typo-medium);text-decoration:none;transition:all .15s}a:hover{color:var(--typo-green-hover,#174f34);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:2px;-webkit-text-decoration-color:var(--typo-gold);text-decoration-color:var(--typo-gold)}a:focus-visible{outline:2px solid var(--typo-gold);outline-offset:2px;border-radius:2px}ul,ol{font-family:var(--typo-font);margin-bottom:14px;padding-left:24px}li{color:var(--typo-muted);font-size:var(--typo-base);line-height:var(--typo-normal);margin-bottom:6px}li:last-child{margin-bottom:0}code{font-family:var(--typo-font);background-color:var(--typo-gold-soft);color:var(--typo-green);border:1px solid #c9a44c26;border-radius:2px;padding:.15em .5em;font-size:.9em}pre{font-family:var(--typo-font);background-color:var(--typo-gold-soft);border:1px solid var(--typo-gold-border,#c9a44c26);font-size:var(--typo-sm);line-height:var(--typo-normal);border-radius:4px;margin-bottom:14px;padding:16px;overflow-x:auto}pre code{color:inherit;background-color:#0000;border:none;padding:0}blockquote{border-left:3px solid var(--typo-gold);color:var(--typo-muted);font-style:italic;font-size:var(--typo-md);line-height:var(--typo-relaxed);background:var(--typo-gold-soft);border-radius:0 4px 4px 0;margin-bottom:14px;padding:12px 18px}small{font-size:var(--typo-xs);color:var(--typo-faint);font-family:var(--typo-font)}.text-uppercase{text-transform:uppercase}.text-lowercase{text-transform:lowercase}.text-capitalize{text-transform:capitalize}.text-truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.text-tertiary{color:var(--typo-faint)}.font-light{font-weight:var(--typo-light)}.font-normal{font-weight:var(--typo-normal)}.font-medium{font-weight:var(--typo-medium)}.font-semibold{font-weight:var(--typo-semibold)}.font-bold{font-weight:var(--typo-bold)}.font-extrabold{font-weight:var(--typo-extrabold)}.leading-tight{line-height:var(--typo-tight)}.leading-snug{line-height:var(--typo-snug)}.leading-normal{line-height:var(--typo-normal)}.leading-relaxed{line-height:var(--typo-relaxed)}.leading-loose{line-height:var(--typo-loose)}.tracking-tight{letter-spacing:-.3px}.tracking-normal{letter-spacing:0}.tracking-wide{letter-spacing:.3px}.tracking-wider{letter-spacing:.5px}.tracking-widest{letter-spacing:.8px}.heading-sm{font-size:var(--typo-md);font-weight:var(--typo-semibold);text-transform:uppercase;letter-spacing:.3px}.heading-xs{font-size:var(--typo-sm);font-weight:var(--typo-semibold);text-transform:uppercase;letter-spacing:.5px;color:var(--typo-muted)}.muted{color:var(--typo-muted)}.faint{color:var(--typo-faint)}@media (width<=768px){h1{font-size:var(--typo-2xl)}h2{font-size:var(--typo-xl)}h3{font-size:var(--typo-lg)}h4{font-size:var(--typo-md)}body,p{font-size:var(--typo-sm)}}@media (width<=480px){h1{font-size:var(--typo-xl)}h2{font-size:var(--typo-lg)}h3{font-size:var(--typo-md)}.text-uppercase-sm{text-transform:uppercase}}@media print{body{color:#000;font-size:12pt;line-height:1.4}h1,h2,h3,h4,h5,h6{color:#000;page-break-after:avoid}a{color:#000;text-decoration:underline}a:after{content:" (" attr(href) ")";color:#666;font-size:10pt}blockquote{border-left-color:#000}code,pre{background:#f5f5f5;border-color:#ddd}}::selection{background:var(--typo-gold-soft);color:var(--typo-text)}::selection{background:var(--typo-gold-soft);color:var(--typo-text)}.focus-visible:focus-visible{outline:2px solid var(--typo-gold);outline-offset:2px}.text-area-scroll::-webkit-scrollbar{width:4px}.text-area-scroll::-webkit-scrollbar-track{background:var(--typo-gold-soft);border-radius:2px}.text-area-scroll::-webkit-scrollbar-thumb{background:var(--typo-gold);border-radius:2px}.hidden{display:none!important}.visible{display:block!important}.inline{display:inline!important}.inline-block{display:inline-block!important}.flex{display:flex!important}.inline-flex{display:inline-flex!important}.grid{display:grid!important}.block{display:block!important}.contents{display:contents!important}.flex-col{flex-direction:column!important}.flex-row{flex-direction:row!important}.flex-col-reverse{flex-direction:column-reverse!important}.flex-row-reverse{flex-direction:row-reverse!important}.items-center{align-items:center!important}.items-start{align-items:flex-start!important}.items-end{align-items:flex-end!important}.items-baseline{align-items:baseline!important}.items-stretch{align-items:stretch!important}.justify-center{justify-content:center!important}.justify-start{justify-content:flex-start!important}.justify-end{justify-content:flex-end!important}.justify-between{justify-content:space-between!important}.justify-around{justify-content:space-around!important}.justify-evenly{justify-content:space-evenly!important}.self-center{align-self:center!important}.self-start{align-self:flex-start!important}.self-end{align-self:flex-end!important}.self-stretch{align-self:stretch!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-1{flex:1!important}.flex-auto{flex:auto!important}.flex-none{flex:none!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink{flex-shrink:1!important}.flex-grow-0{flex-grow:0!important}.flex-grow{flex-grow:1!important}.gap-0{gap:0!important}.gap-1{gap:4px!important}.gap-2{gap:8px!important}.gap-3{gap:12px!important}.gap-4{gap:16px!important}.gap-5{gap:20px!important}.gap-6{gap:24px!important}.gap-8{gap:32px!important}.gap-10{gap:40px!important}.gap-12{gap:48px!important}.gap-x-0{column-gap:0!important}.gap-x-1{column-gap:4px!important}.gap-x-2{column-gap:8px!important}.gap-x-3{column-gap:12px!important}.gap-x-4{column-gap:16px!important}.gap-y-0{row-gap:0!important}.gap-y-1{row-gap:4px!important}.gap-y-2{row-gap:8px!important}.gap-y-3{row-gap:12px!important}.gap-y-4{row-gap:16px!important}.grid-cols-1{grid-template-columns:repeat(1,1fr)!important}.grid-cols-2{grid-template-columns:repeat(2,1fr)!important}.grid-cols-3{grid-template-columns:repeat(3,1fr)!important}.grid-cols-4{grid-template-columns:repeat(4,1fr)!important}.grid-cols-5{grid-template-columns:repeat(5,1fr)!important}.grid-cols-6{grid-template-columns:repeat(6,1fr)!important}.grid-cols-7{grid-template-columns:repeat(7,1fr)!important}.grid-cols-8{grid-template-columns:repeat(8,1fr)!important}.grid-cols-9{grid-template-columns:repeat(9,1fr)!important}.grid-cols-10{grid-template-columns:repeat(10,1fr)!important}.grid-cols-11{grid-template-columns:repeat(11,1fr)!important}.grid-cols-12{grid-template-columns:repeat(12,1fr)!important}.grid-rows-1{grid-template-rows:repeat(1,1fr)!important}.grid-rows-2{grid-template-rows:repeat(2,1fr)!important}.grid-rows-3{grid-template-rows:repeat(3,1fr)!important}.grid-rows-4{grid-template-rows:repeat(4,1fr)!important}.col-span-1{grid-column:span 1!important}.col-span-2{grid-column:span 2!important}.col-span-3{grid-column:span 3!important}.col-span-4{grid-column:span 4!important}.col-span-5{grid-column:span 5!important}.col-span-6{grid-column:span 6!important}.col-span-7{grid-column:span 7!important}.col-span-8{grid-column:span 8!important}.col-span-9{grid-column:span 9!important}.col-span-10{grid-column:span 10!important}.col-span-11{grid-column:span 11!important}.col-span-12{grid-column:span 12!important}.col-span-full{grid-column:1/-1!important}.row-span-1{grid-row:span 1!important}.row-span-2{grid-row:span 2!important}.row-span-3{grid-row:span 3!important}.row-span-full{grid-row:1/-1!important}.m-0{margin:0!important}.m-1{margin:4px!important}.m-2{margin:8px!important}.m-3{margin:12px!important}.m-4{margin:16px!important}.m-5{margin:20px!important}.m-6{margin:24px!important}.m-8{margin:32px!important}.m-auto{margin:auto!important}.mx-0{margin-left:0!important;margin-right:0!important}.mx-1{margin-left:4px!important;margin-right:4px!important}.mx-2{margin-left:8px!important;margin-right:8px!important}.mx-3{margin-left:12px!important;margin-right:12px!important}.mx-4{margin-left:16px!important;margin-right:16px!important}.mx-auto{margin-left:auto!important;margin-right:auto!important}.my-0{margin-top:0!important;margin-bottom:0!important}.my-1{margin-top:4px!important;margin-bottom:4px!important}.my-2{margin-top:8px!important;margin-bottom:8px!important}.my-3{margin-top:12px!important;margin-bottom:12px!important}.my-4{margin-top:16px!important;margin-bottom:16px!important}.mt-0{margin-top:0!important}.mt-1{margin-top:4px!important}.mt-2{margin-top:8px!important}.mt-3{margin-top:12px!important}.mt-4{margin-top:16px!important}.mt-5{margin-top:20px!important}.mt-6{margin-top:24px!important}.mb-0{margin-bottom:0!important}.mb-1{margin-bottom:4px!important}.mb-2{margin-bottom:8px!important}.mb-3{margin-bottom:12px!important}.mb-4{margin-bottom:16px!important}.mb-5{margin-bottom:20px!important}.mb-6{margin-bottom:24px!important}.ml-0{margin-left:0!important}.ml-1{margin-left:4px!important}.ml-2{margin-left:8px!important}.ml-3{margin-left:12px!important}.ml-4{margin-left:16px!important}.ml-auto{margin-left:auto!important}.mr-0{margin-right:0!important}.mr-1{margin-right:4px!important}.mr-2{margin-right:8px!important}.mr-3{margin-right:12px!important}.mr-4{margin-right:16px!important}.mr-auto{margin-right:auto!important}.p-0{padding:0!important}.p-1{padding:4px!important}.p-2{padding:8px!important}.p-3{padding:12px!important}.p-4{padding:16px!important}.p-5{padding:20px!important}.p-6{padding:24px!important}.p-8{padding:32px!important}.px-0{padding-left:0!important;padding-right:0!important}.px-1{padding-left:4px!important;padding-right:4px!important}.px-2{padding-left:8px!important;padding-right:8px!important}.px-3{padding-left:12px!important;padding-right:12px!important}.px-4{padding-left:16px!important;padding-right:16px!important}.px-5{padding-left:20px!important;padding-right:20px!important}.px-6{padding-left:24px!important;padding-right:24px!important}.py-0{padding-top:0!important;padding-bottom:0!important}.py-1{padding-top:4px!important;padding-bottom:4px!important}.py-2{padding-top:8px!important;padding-bottom:8px!important}.py-3{padding-top:12px!important;padding-bottom:12px!important}.py-4{padding-top:16px!important;padding-bottom:16px!important}.py-5{padding-top:20px!important;padding-bottom:20px!important}.py-6{padding-top:24px!important;padding-bottom:24px!important}.pt-0{padding-top:0!important}.pt-1{padding-top:4px!important}.pt-2{padding-top:8px!important}.pt-3{padding-top:12px!important}.pt-4{padding-top:16px!important}.pb-0{padding-bottom:0!important}.pb-1{padding-bottom:4px!important}.pb-2{padding-bottom:8px!important}.pb-3{padding-bottom:12px!important}.pb-4{padding-bottom:16px!important}.pl-0{padding-left:0!important}.pl-1{padding-left:4px!important}.pl-2{padding-left:8px!important}.pl-3{padding-left:12px!important}.pl-4{padding-left:16px!important}.pr-0{padding-right:0!important}.pr-1{padding-right:4px!important}.pr-2{padding-right:8px!important}.pr-3{padding-right:12px!important}.pr-4{padding-right:16px!important}.w-full{width:100%!important}.w-auto{width:auto!important}.w-screen{width:100vw!important}.w-min{width:min-content!important}.w-max{width:max-content!important}.w-fit{width:fit-content!important}.h-full{height:100%!important}.h-auto{height:auto!important}.h-screen{height:100vh!important}.h-min{height:min-content!important}.h-max{height:max-content!important}.h-fit{height:fit-content!important}.min-w-0{min-width:0!important}.min-w-full{min-width:100%!important}.min-h-0{min-height:0!important}.min-h-screen{min-height:100vh!important}.max-w-full{max-width:100%!important}.max-w-screen{max-width:100vw!important}.max-h-full{max-height:100%!important}.rounded-none{border-radius:0!important}.rounded-sm{border-radius:2px!important}.rounded,.rounded-md,.rounded-lg,.rounded-xl,.rounded-2xl{border-radius:4px!important}.rounded-full{border-radius:9999px!important}.rounded-t{border-radius:4px 4px 0 0!important}.rounded-b{border-radius:0 0 4px 4px!important}.rounded-l{border-radius:4px 0 0 4px!important}.rounded-r{border-radius:0 4px 4px 0!important}.rounded-tl{border-radius:4px 0 0!important}.rounded-tr{border-radius:0 4px 0 0!important}.rounded-bl{border-radius:0 0 0 4px!important}.rounded-br{border-radius:0 0 4px!important}.border{border:1px solid var(--ui-border,#e2ddd4)!important}.border-0{border:0!important}.border-2{border-width:2px!important}.border-3{border-width:3px!important}.border-t{border-top:1px solid var(--ui-border,#e2ddd4)!important}.border-b{border-bottom:1px solid var(--ui-border,#e2ddd4)!important}.border-l{border-left:1px solid var(--ui-border,#e2ddd4)!important}.border-r{border-right:1px solid var(--ui-border,#e2ddd4)!important}.border-transparent{border-color:#0000!important}.border-current{border-color:currentColor!important}.bg-transparent{background-color:#0000!important}.bg-white{background-color:#fff!important}.bg-black{background-color:#000!important}.bg-surface{background-color:var(--ui-surface,#fff)!important}.bg-muted{background-color:var(--ui-muted,#f5f3ef)!important}.bg-primary{background-color:var(--ui-primary,#1f6b45)!important}.bg-accent{background-color:var(--ui-accent,#c9a44c)!important}.text-inherit{color:inherit!important}.text-current{color:currentColor!important}.text-white{color:#fff!important}.text-black{color:#000!important}.text-primary{color:var(--ui-text,#1a1a1a)!important}.text-secondary{color:var(--ui-muted,#8a8578)!important}.text-muted{color:var(--ui-faint,#c4beb3)!important}.text-green{color:var(--ui-primary,#1f6b45)!important}.text-gold{color:var(--ui-accent,#c9a44c)!important}.text-success{color:#1f6b45!important}.text-danger{color:#b91c1c!important}.text-warning{color:#e8a53a!important}.overflow-hidden{overflow:hidden!important}.overflow-auto{overflow:auto!important}.overflow-visible{overflow:visible!important}.overflow-scroll{overflow:scroll!important}.overflow-x-auto{overflow-x:auto!important}.overflow-y-auto{overflow-y:auto!important}.overflow-x-hidden{overflow-x:hidden!important}.overflow-y-hidden{overflow-y:hidden!important}.static{position:static!important}.fixed{position:fixed!important}.absolute{position:absolute!important}.relative{position:relative!important}.sticky{position:sticky!important}.inset-0{inset:0!important}.inset-auto{inset:auto!important}.top-0{top:0!important}.right-0{right:0!important}.bottom-0{bottom:0!important}.left-0{left:0!important}.z-0{z-index:0!important}.z-10{z-index:10!important}.z-20{z-index:20!important}.z-30{z-index:30!important}.z-40{z-index:40!important}.z-50{z-index:50!important}.z-auto{z-index:auto!important}.shadow-none{box-shadow:none!important}.shadow-sm{box-shadow:0 2px 8px #0000000f!important}.shadow{box-shadow:0 4px 12px #0000000f!important}.shadow-md{box-shadow:0 4px 12px #00000014!important}.shadow-lg{box-shadow:0 8px 24px #0000001a!important}.shadow-xl{box-shadow:0 12px 36px #0000001f!important}.cursor-pointer{cursor:pointer!important}.cursor-default{cursor:default!important}.cursor-not-allowed{cursor:not-allowed!important}.cursor-grab{cursor:grab!important}.cursor-grabbing{cursor:grabbing!important}.cursor-text{cursor:text!important}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.select-none{-webkit-user-select:none!important;user-select:none!important}.select-text{-webkit-user-select:text!important;user-select:text!important}.select-all{-webkit-user-select:all!important;user-select:all!important}.pointer-events-none{pointer-events:none!important}.pointer-events-auto{pointer-events:auto!important}.opacity-0{opacity:0!important}.opacity-25{opacity:.25!important}.opacity-50{opacity:.5!important}.opacity-75{opacity:.75!important}.opacity-100{opacity:1!important}@media (width<=900px){.hidden-md{display:none!important}.block-md{display:block!important}.flex-md{display:flex!important}.grid-md{display:grid!important}}@media (width<=768px){.hidden-sm{display:none!important}.block-sm{display:block!important}.flex-sm{display:flex!important}.grid-sm{display:grid!important}.flex-col-sm{flex-direction:column!important}.items-center-sm{align-items:center!important}.justify-center-sm{justify-content:center!important}}@media (width<=480px){.hidden-xs{display:none!important}.block-xs{display:block!important}.flex-xs{display:flex!important}.grid-xs{display:grid!important}.w-full-xs{width:100%!important}.text-center-xs{text-align:center!important}}.btn{cursor:pointer;font:inherit;font-weight:var(--font-weight-semibold);white-space:nowrap;vertical-align:middle;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:9px 13px;text-decoration:none;transition:background-color .16s,border-color .16s,color .16s,transform .12s,box-shadow .16s;display:inline-flex;position:relative;overflow:hidden}.btn--primary{background:color-mix(in srgb, var(--color-primary) 88%, #000 12%);color:#fffffff5;box-shadow:var(--shadow-default);border-color:#c9a44c38}.btn--secondary{background:var(--color-bg-surface);color:var(--color-text-primary);border-color:var(--color-border-light)}.btn--icon{background:var(--color-bg-surface);border-color:var(--color-border-light);color:var(--color-text-primary);border-radius:10px;min-width:36px;min-height:36px;padding:7px}.btn--danger{background:color-mix(in srgb, var(--color-danger) 10%, transparent);border-color:color-mix(in srgb, var(--color-danger) 22%, var(--color-border-light));color:var(--color-danger)}.btn--sm{font-size:var(--text-xs);padding:6px 10px}.btn--lg{font-size:var(--text-base);padding:12px 20px}.card-action,.add-button,.neo-btn{cursor:pointer;background:color-mix(in srgb, var(--color-primary) 88%, #000 12%);color:#fffffff5;box-shadow:var(--shadow-default);border:1px solid #c9a44c38;border-radius:10px;padding:9px 13px;transition:background-color .16s,border-color .16s,transform .12s,box-shadow .16s}.neo-btn{background:var(--color-bg-surface);color:var(--color-text-primary);border-color:var(--color-border-light);box-shadow:none}.neo-btn.warn{background:color-mix(in srgb, var(--color-danger) 10%, transparent);border-color:color-mix(in srgb, var(--color-danger) 22%, var(--color-border-light));color:var(--color-danger)}.auth-btn{font-size:var(--text-sm);font-weight:var(--font-weight-semibold);cursor:pointer;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;margin-top:6px;padding:10px 13px;transition:transform .12s,box-shadow .16s,filter .16s,border-color .16s;display:inline-flex}.auth-btn-primary{background:linear-gradient(90deg, #c9a44c2e, color-mix(in srgb, var(--color-primary) 86%, #000 14%));color:#fffffff5;border-color:#c9a44c47;box-shadow:0 14px 30px #0206172e}.quick-action-btn{background:var(--color-bg-surface);border:1px solid var(--color-border-light);cursor:pointer;border-radius:12px;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:12px;transition:transform .12s,border-color .16s,background-color .16s,box-shadow .16s;display:flex}.focus-toggle{background:color-mix(in srgb, var(--color-primary) 88%, #000 12%);color:#fffffff5;cursor:pointer;width:50px;height:50px;box-shadow:var(--shadow-default);z-index:100;border:1px solid #c9a44c38;border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;bottom:20px;right:20px}.mini-icon{border:1px solid var(--color-border-light);background:var(--color-bg-surface);cursor:pointer;border-radius:10px;padding:4px 6px}.btn-mini{font-weight:var(--font-weight-bold);border:1px solid var(--color-border-light);background:var(--color-bg-surface);color:var(--color-text-primary);cursor:pointer;border-radius:12px;padding:10px 12px}.btn-mini i{margin-right:8px}.close-modal{background:var(--color-bg-surface);border:1px solid var(--color-border-light);color:var(--color-text-primary);cursor:pointer;border-radius:10px;padding:6px 10px}.schedule-toolbar .btn{background:var(--color-bg-surface);color:var(--color-text-primary);border:1px solid var(--color-border-light);font-size:var(--text-xs);cursor:pointer;border-radius:10px;padding:6px 10px}.event-actions .btn-edit,.event-actions .btn-delete{background:var(--color-bg-surface);border:1px solid var(--color-border-light);color:var(--color-text-primary);cursor:pointer;border-radius:9px;padding:4px 6px}.class-actions button{background:var(--color-bg-surface);border:1px solid var(--color-border-light);color:var(--color-text-primary);border-radius:10px;padding:7px 9px}.assignment-actions .btn-icon{background:var(--color-bg-surface);border:1px solid var(--color-border-light);color:var(--color-text-primary);cursor:pointer;border-radius:10px;padding:6px 8px}.note-actions .btn-edit,.note-actions .btn-delete{background:var(--color-bg-surface);border:1px solid var(--color-border-light);border-radius:10px;padding:7px}.modal-footer .btn-primary,.modal-footer .btn-secondary{font-weight:var(--font-weight-semibold);border-radius:10px;padding:9px 13px}.btn:hover:not(:disabled),.card-action:hover:not(:disabled),.add-button:hover:not(:disabled),.neo-btn:hover:not(:disabled){border-color:#c9a44c47;transform:translateY(-1px);box-shadow:0 14px 28px #02061724}.btn--secondary:hover:not(:disabled),.quick-action-btn:hover:not(:disabled),.schedule-toolbar .btn:hover:not(:disabled),.event-actions .btn-edit:hover:not(:disabled),.assignment-actions .btn-icon:hover:not(:disabled),.class-actions button:hover:not(:disabled),.note-actions .btn-edit:hover:not(:disabled),.note-actions .btn-delete:hover:not(:disabled),.close-modal:hover:not(:disabled){background:var(--color-bg-tertiary);border-color:#0a241538;transform:translateY(-1px);box-shadow:0 12px 26px #0206171a}.event-actions .btn-delete:hover:not(:disabled){border-color:color-mix(in srgb, var(--color-danger) 30%, var(--color-border-light));background:color-mix(in srgb, var(--color-danger) 10%, transparent)}.auth-btn-primary:hover:not(:disabled){filter:brightness(1.03);transform:translateY(-1px)}.auth-btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:0 10px 22px #02061724}.btn:disabled,.card-action:disabled,.add-button:disabled,.neo-btn:disabled{opacity:.6;cursor:not-allowed;filter:none!important;box-shadow:none!important;transform:none!important}.btn:focus-visible,.card-action:focus-visible,.add-button:focus-visible{outline-offset:2px;outline:2px solid #c9a44cbf}.btn:active:not(:disabled),.card-action:active:not(:disabled){transition-duration:50ms;transform:translateY(0)}.auth-spinner{border-radius:var(--radius-full);border:2px solid #ffffff38;border-top-color:#ffffffeb;width:16px;height:16px;animation:.8s linear infinite authSpin;display:none}@keyframes authSpin{to{transform:rotate(360deg)}}.btn i,.card-action i,.auth-btn i{justify-content:center;align-items:center;display:inline-flex}.btn-group{gap:var(--space-xs);display:inline-flex}.btn-group .btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.btn-group .btn:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.btn--full{width:100%;display:flex}:root{--card-bg:#fff;--card-line:#e2ddd4;--card-line-strong:#d5cfc4;--card-text:#1a1a1a;--card-muted:#8a8578;--card-faint:#c4beb3;--card-green:#1f6b45;--card-green-soft:#1f6b450f;--card-gold:#c9a44c;--card-gold-soft:#c9a44c0f;--card-shadow:0 4px 12px #0000000f;--card-font:"SF Mono", "JetBrains Mono", monospace}.card{background:var(--card-bg);border:1px solid var(--card-line);box-shadow:var(--card-shadow);border-radius:4px;flex-direction:column;min-width:0;transition:all .15s;display:flex;overflow:hidden}.card:hover{border-color:var(--card-gold-border);transform:translateY(-1px);box-shadow:0 6px 16px #00000014}.card-header{border-bottom:1px solid var(--card-line);background:var(--card-gold-soft);justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex}.card-title{color:var(--card-text);font-size:13px;font-weight:600;font-family:var(--card-font);text-transform:uppercase;letter-spacing:.3px;margin:0}.card-actions{align-items:center;gap:6px;display:flex}.card-content{font-family:var(--card-font);color:var(--card-text);flex:1;padding:14px}.card-content:only-child{padding:16px}.card-footer{border-top:1px solid var(--card-line);background:var(--card-gold-soft);padding:10px 14px}.card--elevated{box-shadow:0 8px 24px #0000001a}.card--flat{box-shadow:none;border:1px solid var(--card-line)}.card--bordered{border:2px solid var(--card-line)}.card--accent{border-left:3px solid var(--card-gold)}.card--accent-green{border-left:3px solid var(--card-green)}.card-schedule .card-header{background:var(--card-gold-soft);border-bottom:1px solid var(--card-line);padding:10px 14px}.card-schedule .card-title{font-family:var(--card-font);letter-spacing:.3px;text-transform:uppercase;font-weight:600}.stat-card{background:var(--card-bg);border:1px solid var(--card-line);text-align:center;border-radius:4px;padding:14px 16px;transition:all .15s}.stat-card:hover{border-color:var(--card-gold-border);box-shadow:var(--card-shadow)}.stat-icon{opacity:.8;color:var(--card-gold);font-size:20px}.stat-label{color:var(--card-muted);text-transform:uppercase;letter-spacing:.5px;font-size:9px;font-family:var(--card-font);font-weight:600}.note-card:hover{border-color:var(--card-gold-border);box-shadow:var(--card-shadow);transform:translateY(-1px)}.note-title{font-family:var(--card-font);color:var(--card-text);text-transform:uppercase;letter-spacing:.3px;flex:1;min-width:0;font-size:13px;font-weight:600}.note-body{color:var(--card-muted);white-space:pre-wrap;word-break:break-word;font-size:12px;line-height:1.5;font-family:var(--card-font);margin-bottom:6px}.task-card{background:var(--card-bg);border:1px solid var(--card-line);box-shadow:none;border-radius:4px;align-items:flex-start;margin-bottom:8px;padding:10px 14px;transition:all .15s;display:flex}.task-card:hover{border-color:var(--card-gold-border);box-shadow:var(--card-shadow);transform:translateY(-1px)}.task-card.completed .task-title{text-decoration:line-through}.goal-card{background:var(--card-bg);border:1px solid var(--card-line);box-shadow:none;border-radius:4px;transition:all .15s;position:relative;overflow:hidden}.goal-card:hover{border-color:var(--card-gold-border);box-shadow:var(--card-shadow);transform:translateY(-1px)}.goal-card.completed{opacity:.85;background:var(--card-green-soft)}.goal-card.completed:before{content:"";background:var(--card-green);clip-path:polygon(100% 0,0 0,100% 100%);width:48px;height:48px;position:absolute;top:0;right:0}.goal-card.completed:after{content:"✓";color:#fff;z-index:1;font-size:14px;font-weight:700;font-family:var(--card-font);position:absolute;top:4px;right:6px}.auth-card{background:var(--card-bg);border:1px solid var(--card-line);box-shadow:var(--card-shadow);transform-origin:50%;opacity:0;border-radius:4px;animation:.4s cubic-bezier(.22,.8,.35,1) forwards authCardIn;overflow:hidden;transform:translateY(12px)scale(.99)}@keyframes authCardIn{0%{opacity:0;transform:translateY(12px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}.progress-circle{background:conic-gradient(var(--card-gold) 0% 88%, var(--card-line) 88% 100%);border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;display:flex;position:relative}.progress-circle-inner{background:var(--card-bg);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:64px;height:64px;display:flex}.progress-circle-value{color:var(--card-text);font-size:16px;font-weight:700;font-family:var(--card-font)}.progress-circle-label{color:var(--card-muted);text-transform:uppercase;letter-spacing:.3px;font-size:8px;font-family:var(--card-font)}.timer-card,.insights-card,.risk-item,.class-item{border:1px solid var(--card-line);background:var(--card-bg);border-radius:4px;padding:12px 14px;transition:all .15s}.timer-card:hover,.insights-card:hover,.risk-item:hover,.class-item:hover{border-color:var(--card-gold-border);box-shadow:var(--card-shadow)}.timer-header{color:var(--card-text);font-size:13px;font-weight:600;font-family:var(--card-font);text-transform:uppercase;letter-spacing:.3px;margin-bottom:6px}.insights-header{font-weight:600;font-family:var(--card-font);justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.risk-top{justify-content:space-between;gap:10px;margin-bottom:6px;display:flex}.event-card{background:var(--card-gold-soft);border:1px solid var(--card-gold-border);border-left:3px solid var(--card-gold);box-shadow:none;border-radius:4px;max-width:100%;margin:4px 0;padding:8px 12px;transition:all .15s;overflow:hidden}.event-card:hover{border-color:var(--card-gold-border);box-shadow:var(--card-shadow);transform:translateY(-1px)}.assignment-item{background:var(--card-gold-soft);border:1px solid var(--card-line);border-left:3px solid var(--card-gold);box-shadow:none;border-radius:4px;grid-template-columns:32px 1fr auto;align-items:start;gap:10px;padding:10px 14px;transition:all .15s;display:grid}.assignment-item:hover{border-color:var(--card-gold-border);box-shadow:var(--card-shadow)}.history-item:hover{border-color:var(--card-gold-border);box-shadow:var(--card-shadow)}.template-card,.milestone-item{background:var(--card-bg);border:1px solid var(--card-line);border-radius:4px;transition:all .15s}.template-card{cursor:pointer;align-items:flex-start;gap:10px;padding:14px;display:flex;position:relative;overflow:hidden}.template-card:hover{border-color:var(--card-gold-border);box-shadow:var(--card-shadow);transform:translateY(-1px)}.milestone-item{align-items:center;gap:10px;margin-bottom:8px;padding:10px 14px;display:flex;position:relative}.milestone-item:hover{border-color:var(--card-gold-border);box-shadow:var(--card-shadow);transform:translate(4px)}.empty-state{color:var(--card-muted);place-items:center;gap:6px;padding:24px 16px;display:grid}.empty-state i{opacity:.6;color:var(--card-faint);font-size:28px}.empty-state p{text-align:center;font-size:12px;font-family:var(--card-font);margin:0}.card--no-padding .card-content{padding:0}.card--no-shadow{box-shadow:none}.card--interactive{cursor:pointer}.card--interactive:hover{border-color:var(--card-gold-border)}.card--horizontal{flex-direction:row}.card--horizontal .card-content{flex:1}.card--with-image .card-header{border-bottom:none;padding:0}.card--with-image img{object-fit:cover;width:100%;height:160px}.cards-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}@media (width<=768px){.card{border-radius:4px}.card-header,.card-content,.card-footer{padding:10px 12px}.cards-grid{grid-template-columns:1fr;gap:10px}.stat-value{font-size:20px}.card-title{font-size:12px}}@media (width<=480px){.card-header,.card-content,.card-footer{padding:8px 10px}.stat-value{font-size:18px}.card-title{font-size:11px}.assignment-item{grid-template-columns:1fr;gap:6px}.goal-card.completed:before{width:36px;height:36px}.goal-card.completed:after{font-size:10px;top:2px;right:4px}}@media print{.card{break-inside:avoid;page-break-inside:avoid;box-shadow:none!important;border:1px solid #000!important;border-radius:0!important}.card:hover{transform:none!important}.card--accent,.card--accent-green{border-left:3px solid #000!important}}.card:focus-visible,.note-card:focus-visible,.task-card:focus-visible,.goal-card:focus-visible,.template-card:focus-visible,.milestone-item:focus-visible{outline:2px solid var(--card-gold);outline-offset:2px}@keyframes cardSlideIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}input,select,textarea,button{font-family:inherit;font-size:inherit;line-height:inherit}input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=time],input[type=search],input[type=tel],input[type=url],select,textarea{background:var(--color-bg-surface);width:100%;color:var(--color-text-primary);border:1px solid var(--color-border-light);font-size:var(--text-sm);border-radius:12px;outline:none;padding:10px 12px;transition:border-color .18s,box-shadow .18s,transform .12s}input:focus,select:focus,textarea:focus{border-color:#c9a44c8c;box-shadow:0 0 0 3px #c9a44c24}input:disabled,select:disabled,textarea:disabled{background:var(--color-bg-secondary);color:var(--color-text-tertiary);cursor:not-allowed;opacity:.75}::placeholder{color:var(--color-text-tertiary);opacity:.75}.mini-input{max-width:120px}.neo-input,.neo-select,.add-input,.auth-input,.modal-input{background:var(--color-bg-surface);width:100%;color:var(--color-text-primary);border:1px solid var(--color-border-light);border-radius:12px;outline:none;padding:10px 12px}.auth-input{background:color-mix(in srgb, var(--color-bg-surface) 88%, transparent);border:1px solid var(--color-border-light);color:var(--color-text-primary);border-radius:14px;padding:10px 12px;transition:border-color .18s,box-shadow .18s,transform .12s}.auth-input::placeholder{color:var(--color-text-tertiary)}.auth-input:focus{border-color:#c9a44c99;outline:none;transform:translateY(-1px);box-shadow:0 0 0 3px #c9a44c24,0 12px 26px #0206171f}.modal-input{background:var(--color-bg-surface);border:1px solid var(--color-border-light);font-size:var(--text-sm);border-radius:12px;padding:10px 12px}.modal-input:focus{border-color:#c9a44c8c;outline:none;box-shadow:0 0 0 3px #c9a44c24}.task-input{background:var(--color-bg-surface);border:1px solid var(--color-border-light);color:var(--color-text-primary);border-radius:12px;flex:1;padding:10px 12px}.gpa-input,.gpa-select{border:1px solid var(--color-border-light);background:var(--color-bg-surface);width:100%;color:var(--color-text-primary);font-size:var(--text-sm);border-radius:12px;padding:10px 12px}.gpa-input[disabled]{background:var(--color-bg-secondary)}.weight-input{border:1px solid var(--color-border-light);background:var(--color-bg-surface);width:100%;color:var(--color-text-primary);font-size:15px;font-weight:var(--font-weight-medium);border-radius:12px;padding:10px 36px 10px 12px;transition:border-color .18s,box-shadow .18s}.weight-input:focus{border-color:#c9a44c8c;outline:none;box-shadow:0 0 0 3px #c9a44c24}.weight-input.valid{border-color:var(--color-success)}.weight-input.invalid{border-color:var(--color-danger)}select{appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%238a8f98' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .7rem center;background-repeat:no-repeat;background-size:1.2em 1.2em;padding-right:2.5rem}textarea{resize:vertical;min-height:110px;font-family:inherit;line-height:1.5}.form-group{margin-bottom:16px}.form-group:last-child{margin-bottom:0}.input-label,.form-label,.auth-label,.modal-label{font-size:var(--text-xs);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);margin-bottom:6px;display:block}.hint{font-size:var(--text-xs);color:var(--color-text-tertiary);margin-top:4px;display:block}.checkbox-label,.radio-label{cursor:pointer;font-size:var(--text-sm);-webkit-user-select:none;user-select:none;align-items:center;gap:8px;display:flex}.checkbox-label input[type=checkbox],.radio-label input[type=radio]{width:16px;height:16px;margin:0}.task-checkbox{background:var(--color-bg-secondary);border:1px solid var(--color-border-light);cursor:pointer;border-radius:7px;place-items:center;width:22px;height:22px;display:grid;position:relative}.assignment-check.checked{background:var(--color-success);border-color:var(--color-success);color:#fffffff5}.milestone-checkbox input{opacity:0;cursor:pointer;z-index:1;width:100%;height:100%;position:absolute}@keyframes checkmarkPop{0%{transform:scale(.8)}50%{transform:scale(1.1)}to{transform:scale(1)}}.form-grid{gap:10px;display:grid}.form-grid.two-col{grid-template-columns:1fr 1fr}.form-grid.three-col{grid-template-columns:1fr 1fr 1fr}.add-item-form,.task-input-container{gap:10px;margin-top:12px;display:flex}.timer-row{gap:6px;margin-top:10px;display:grid}.weight-row{grid-template-columns:minmax(220px,1fr) 360px;align-items:center;gap:18px;display:grid}.weight-controls{grid-template-columns:1fr 1fr;place-content:start end;gap:14px;margin:0;display:grid}.weight-control{min-width:0}.weight-input-wrapper{width:100%}.weight-unit{color:var(--color-text-tertiary);font-size:14px;font-weight:var(--font-weight-medium);position:absolute;top:50%;right:12px;transform:translateY(-50%)}.weight-validation{background:color-mix(in srgb, var(--color-danger) 10%, transparent);color:var(--color-danger);border:1px solid color-mix(in srgb, var(--color-danger) 18%, var(--color-border-light));border-radius:12px;align-items:center;gap:8px;margin-top:12px;padding:10px 12px;font-size:13px;display:flex}.weight-validation i{font-size:14px}.auth-form{flex-direction:column;gap:10px;margin-top:4px;display:none}.auth-form.active{display:flex}.auth-field{flex-direction:column;gap:4px;display:flex}.auth-pass{display:grid;position:relative}.auth-eye{border:1px solid var(--color-border-light);background:var(--color-bg-surface);color:var(--color-text-secondary);cursor:pointer;border-radius:10px;place-items:center;width:36px;height:34px;transition:background-color .16s,border-color .16s,transform .12s;display:grid;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.auth-eye:hover{background:var(--color-bg-tertiary);border-color:#c9a44c4d;transform:translateY(-1px)}.auth-tabs{background:color-mix(in srgb, var(--color-bg-secondary) 72%, transparent);border:1px solid var(--color-border-light);border-radius:999px;gap:8px;margin-bottom:12px;padding:4px;display:inline-flex}.auth-tab{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:999px;flex:1;padding:7px 14px;font-size:13px;transition:color .2s,background-color .2s;position:relative}.auth-tab.active{color:#fffffff5}.auth-tab.active:before{content:"";border-radius:inherit;background:color-mix(in srgb, var(--color-primary) 88%, #000 12%);z-index:-1;border:1px solid #c9a44c38;position:absolute;inset:0;box-shadow:0 12px 26px #02061729}.search-form{position:relative}.search-input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238a8f98' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E");background-position:12px;background-repeat:no-repeat;background-size:16px;padding-left:36px}.file-input{border:2px dashed var(--color-border);background:var(--color-bg-secondary);text-align:center;cursor:pointer;border-radius:12px;padding:10px}.file-input:hover{background:var(--color-bg-tertiary);border-color:#c9a44c73}input[type=range]{background:var(--color-border);appearance:none;border-radius:3px;outline:none;height:6px}input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--color-primary);cursor:pointer;border-radius:50%;width:18px;height:18px}input[type=range]::-moz-range-thumb{background:var(--color-primary);cursor:pointer;border:none;border-radius:50%;width:18px;height:18px}.field-with-icon{position:relative}.field-with-icon i{color:var(--color-text-tertiary);position:absolute;top:50%;left:12px;transform:translateY(-50%)}.field-with-icon input{padding-left:36px}input.error,select.error,textarea.error{border-color:var(--color-danger)}.error-message{font-size:var(--text-xs);color:var(--color-danger);margin-top:4px}input.success,select.success,textarea.success{border-color:var(--color-success)}input.warning,select.warning,textarea.warning{border-color:var(--color-warning)}@media (width<=768px){.form-grid.two-col,.form-grid.three-col,.weight-row{grid-template-columns:1fr}.weight-controls{grid-template-columns:1fr;justify-content:start}.add-item-form,.auth-tabs{flex-direction:column}.auth-tab{width:100%}}@media print{input,select,textarea{box-shadow:none;background:0 0;border:1px solid #000}}:root{--modal-bg:#f5f3ef;--modal-card:#fff;--modal-line:#e2ddd4;--modal-line-strong:#d5cfc4;--modal-text:#1a1a1a;--modal-muted:#8a8578;--modal-faint:#c4beb3;--modal-green:#1f6b45;--modal-green-hover:#174f34;--modal-green-soft:#1f6b450f;--modal-gold:#c9a44c;--modal-gold-soft:#c9a44c0f;--modal-shadow:0 4px 12px #0000000f;--modal-font:"SF Mono", "JetBrains Mono", monospace}.modal{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--z-modal-backdrop,1000);opacity:1;background:#02061799;place-items:center;padding:16px;transition:opacity .2s;display:none;position:fixed;inset:0}.modal[style*="display: none"]{display:none!important}.modal-content{background:var(--modal-card);border:1px solid var(--modal-line);width:100%;max-width:640px;z-index:var(--z-modal,1001);border-radius:4px;animation:.2s modalSlideIn;position:relative;overflow:hidden;box-shadow:0 16px 48px #0000001f}.modal-content.wide{max-width:860px}.event-details-modal{z-index:9999;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-header{border-bottom:1px solid var(--modal-line);background:var(--modal-gold-soft);justify-content:space-between;align-items:center;min-height:48px;padding:14px 18px;display:flex}.modal-header h3{color:var(--modal-text);font-size:15px;font-weight:600;font-family:var(--modal-font);text-transform:uppercase;letter-spacing:.3px;margin:0}.modal-body{max-height:70vh;padding:18px;overflow-y:auto}.modal-body::-webkit-scrollbar{width:4px}.modal-body::-webkit-scrollbar-track{background:var(--modal-line);border-radius:2px}.modal-body::-webkit-scrollbar-thumb{background:var(--modal-gold);border-radius:2px}.modal-footer{border-top:1px solid var(--modal-line);background:var(--modal-gold-soft);justify-content:flex-end;gap:8px;padding:12px 18px;display:flex}.close-modal{background:var(--modal-card);border:1px solid var(--modal-line);color:var(--modal-muted);cursor:pointer;font-size:13px;font-family:var(--modal-font);border-radius:4px;padding:5px 10px;transition:all .15s}.close-modal:hover{background:var(--modal-gold-soft);border-color:var(--modal-gold-border);color:var(--modal-text);transform:translateY(-1px)}.modal-close{color:var(--modal-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;padding:4px 8px;font-size:16px;line-height:1;transition:all .15s}.modal-close:hover{background:var(--modal-gold-soft);border-color:var(--modal-line);color:var(--modal-text)}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.grid-2{grid-template-columns:1fr 1fr;gap:12px;display:grid}.grid-3{grid-template-columns:1fr 1fr 1fr;gap:12px;display:grid}@media (width<=600px){.grid-2,.grid-3{grid-template-columns:1fr}}.modal-label{color:var(--modal-muted);font-size:10px;font-weight:600;font-family:var(--modal-font);text-transform:uppercase;letter-spacing:.3px;margin-bottom:4px;display:block}.detail-title{color:var(--modal-text);font-size:18px;font-weight:700;line-height:1.3;font-family:var(--modal-font);margin-bottom:8px}.detail-time{color:var(--modal-green);font-size:12px;font-weight:600;font-family:var(--modal-font);align-items:center;gap:6px;margin-bottom:6px;display:flex}.detail-label{text-transform:uppercase;color:var(--modal-muted);letter-spacing:.5px;font-size:9px;font-family:var(--modal-font);align-items:center;gap:6px;margin-bottom:6px;font-weight:600;display:flex}.detail-value{color:var(--modal-text);font-size:13px;line-height:1.5;font-family:var(--modal-font);padding-left:14px}.modal-sm .modal-content{max-width:400px}.modal-lg .modal-content{max-width:860px}.modal-xl .modal-content{max-width:1100px}.modal-full .modal-content{max-width:95vw;max-height:95vh}.modal-top .modal-content{margin-top:20px;margin-bottom:auto}.modal-bottom .modal-content{margin-top:auto;margin-bottom:20px}.modal-center .modal-content{margin:auto}.modal-backdrop-blur .modal{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.modal-backdrop-dark .modal{background:#020617bf}.modal-backdrop-light .modal{background:#ffffffb3}.modal-scrollable .modal-body{overflow-y:auto}.modal-close-top-right{z-index:10;position:absolute;top:12px;right:12px}.modal-close-top-left{z-index:10;position:absolute;top:12px;left:12px}.modal-with-image .modal-header{border-bottom:none;padding:0}.modal-with-image img{object-fit:cover;width:100%;height:200px}.modal-loading .modal-content{min-height:180px;position:relative}.modal-loading:after{content:"";border:2px solid var(--modal-line);border-top-color:var(--modal-gold);border-radius:50%;width:32px;height:32px;animation:1s linear infinite modalSpin;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes modalSpin{to{transform:translate(-50%,-50%)rotate(360deg)}}.modal-tabs{border-bottom:1px solid var(--modal-line);background:var(--modal-gold-soft);display:flex}.modal-tab{text-align:center;color:var(--modal-muted);cursor:pointer;font-family:var(--modal-font);text-transform:uppercase;letter-spacing:.3px;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:10px 14px;font-size:11px;transition:all .15s}.modal-tab.active{color:var(--modal-green);border-bottom-color:var(--modal-gold);font-weight:600}.modal-tab:hover:not(.active){background:var(--modal-gold-soft);color:var(--modal-text)}.modal-confirmation .modal-content{max-width:400px}.modal-confirmation .modal-body{text-align:center;padding:24px}.modal-confirmation .modal-footer{justify-content:center}.modal-with-sidebar{max-height:80vh;display:flex}.modal-sidebar{background:var(--modal-gold-soft);border-right:1px solid var(--modal-line);width:240px;padding:14px;overflow-y:auto}.modal-sidebar::-webkit-scrollbar{width:4px}.modal-sidebar::-webkit-scrollbar-track{background:var(--modal-line);border-radius:2px}.modal-sidebar::-webkit-scrollbar-thumb{background:var(--modal-gold);border-radius:2px}.modal-main{flex:1;padding:14px;overflow-y:auto}.modal-main::-webkit-scrollbar{width:4px}.modal-main::-webkit-scrollbar-track{background:var(--modal-line);border-radius:2px}.modal-main::-webkit-scrollbar-thumb{background:var(--modal-gold);border-radius:2px}@media (width<=768px){.modal{padding:10px}.modal-content{max-width:95%;margin:10px}.modal-actions{flex-direction:column}.modal-actions .btn-primary,.modal-actions .btn-secondary{width:100%}.grid-2,.grid-3{grid-template-columns:1fr}.modal-with-sidebar{flex-direction:column}.modal-sidebar{border-right:none;border-bottom:1px solid var(--modal-line);width:100%}}@media (width<=480px){.modal-header,.modal-body,.modal-footer{padding:12px}.modal-header h3{font-size:13px}.detail-title{font-size:16px}}@media print{.modal{background:#fff;position:static;display:block!important}.modal-content{box-shadow:none;border:1px solid #000;border-radius:0}.modal-close,.close-modal,.modal-overlay{display:none!important}}.modal:focus{outline:none}.modal-content:focus,.close-modal:focus-visible,.modal-close:focus-visible,.modal-tab:focus-visible{outline:2px solid var(--modal-gold);outline-offset:2px}.modal .btn-primary{background:var(--modal-green);color:#fff;font-size:11px;font-weight:500;font-family:var(--modal-font);cursor:pointer;letter-spacing:.3px;text-transform:uppercase;border:none;border-radius:4px;padding:6px 18px;transition:all .15s}.modal .btn-primary:hover:not(:disabled){background:var(--modal-green-hover);transform:translateY(-1px);box-shadow:0 4px 12px #1f6b4533}.modal .btn-secondary{color:var(--modal-muted);border:1px solid var(--modal-line);font-size:11px;font-weight:500;font-family:var(--modal-font);cursor:pointer;text-transform:uppercase;letter-spacing:.3px;background:0 0;border-radius:4px;padding:6px 18px;transition:all .15s}.modal .btn-secondary:hover{background:var(--modal-card);border-color:var(--modal-gold-border);color:var(--modal-text)}.modal .btn-danger{color:#fff;font-size:11px;font-weight:500;font-family:var(--modal-font);cursor:pointer;text-transform:uppercase;letter-spacing:.3px;background:#b91c1c;border:none;border-radius:4px;padding:6px 18px;transition:all .15s}.modal .btn-danger:hover{background:#7f1d1d;transform:translateY(-1px)}.modal .modal-input{border:1px solid var(--modal-line);background:var(--modal-card);width:100%;color:var(--modal-text);font-size:13px;font-family:var(--modal-font);border-radius:4px;padding:8px 12px;transition:all .15s}.modal .modal-input:focus{border-color:var(--modal-gold);outline:none;box-shadow:0 0 0 3px #c9a44c1f}.modal .modal-input::placeholder{color:var(--modal-faint)}.modal textarea.modal-input{resize:vertical;min-height:80px;padding:10px 12px}.modal select.modal-input{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%238a8578'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:32px}#confirmModal,#promptModal,.modal{position:fixed;inset:0;z-index:20000!important}#confirmModal .modal-content,#promptModal .modal-content,.modal .modal-content{position:relative;z-index:20001!important}:root{--table-bg:#f5f3ef;--table-card:#fff;--table-line:#e2ddd4;--table-line-strong:#d5cfc4;--table-text:#1a1a1a;--table-muted:#8a8578;--table-faint:#c4beb3;--table-green:#1f6b45;--table-green-soft:#1f6b450f;--table-gold:#c9a44c;--table-gold-soft:#c9a44c0f;--table-font:"SF Mono", "JetBrains Mono", monospace}table{border-collapse:collapse;width:100%;font-size:12px;font-family:var(--table-font);border-radius:4px;overflow:hidden}th,td{border-bottom:1px solid var(--table-line);text-align:left;vertical-align:middle;padding:8px 12px}thead th{color:var(--table-muted);background:var(--table-gold-soft);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--table-line);z-index:10;font-size:9px;font-weight:600;position:sticky;top:0}tbody tr{transition:all .15s}tbody tr:hover{background:var(--table-gold-soft)}tbody tr:last-child td{border-bottom:none}.schedule-table thead th{background:var(--table-gold-soft);color:var(--table-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--table-line);z-index:2;padding:8px 10px;font-size:9px;font-weight:600;position:sticky;top:0}.time-group-header td{background:var(--table-gold-soft);color:var(--table-muted);border-top:1px solid var(--table-line);border-bottom:1px solid var(--table-line);font-weight:600}.time-slot{color:var(--table-muted);white-space:nowrap;font-size:11px;font-weight:500}.grades-table{border:1px solid var(--table-line);border-radius:4px;overflow:hidden}.grades-header,.table-header{background:var(--table-gold-soft);border-bottom:2px solid var(--table-line);color:var(--table-muted);text-transform:uppercase;letter-spacing:.5px;grid-template-columns:1.5fr repeat(3,1fr) 1fr;gap:0;padding:8px 12px;font-size:9px;font-weight:600;display:grid}.table-row,.grades-row{border-bottom:1px solid var(--table-line);grid-template-columns:1.5fr repeat(3,1fr) 1fr;align-items:center;gap:0;padding:8px 12px;font-size:12px;display:grid}.course-name{font-weight:600}.grade-table{border-collapse:collapse;width:100%}.grade-table th,.grade-table td{border-bottom:1px solid var(--table-line);padding:8px 12px}.grade-table th{background:var(--table-gold-soft);color:var(--table-muted);text-transform:uppercase;letter-spacing:.5px;font-size:9px;font-weight:600}.gpa-ops-table{background:var(--table-card);border:1px solid var(--table-line);border-radius:4px;overflow:hidden}.gpa-ops-table-head{background:var(--table-gold-soft);border-bottom:2px solid var(--table-line);color:var(--table-muted);text-transform:uppercase;letter-spacing:.5px;font-size:9px;font-weight:600;font-family:var(--table-font);grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:10px;padding:10px 14px;display:grid}.gpa-ops-table-body{max-height:560px;overflow-y:auto}.gpa-ops-table-body::-webkit-scrollbar{width:4px}.gpa-ops-table-body::-webkit-scrollbar-track{background:var(--table-line);border-radius:2px}.gpa-ops-table-body::-webkit-scrollbar-thumb{background:var(--table-gold);border-radius:2px}.gpa-row{border-top:1px solid var(--table-line);grid-template-columns:2fr 1fr 1fr 1fr 1fr;align-items:center;gap:10px;padding:10px 14px;font-size:12px;display:grid}.gpa-course{color:var(--table-text);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.history-table{border-collapse:collapse;width:100%}.history-table th{background:var(--table-gold-soft);text-align:left;color:var(--table-muted);border-bottom:2px solid var(--table-line);text-transform:uppercase;letter-spacing:.5px;padding:8px 12px;font-size:9px;font-weight:600}.history-table td{border-bottom:1px solid var(--table-line);padding:8px 12px;font-size:12px}.ev-cell{vertical-align:top;min-width:100px;padding:6px}.ev-stack{flex-direction:column;gap:4px;display:flex}.text-center{text-align:center}.text-right{text-align:right}.text-left{text-align:left}.table-striped tbody tr:nth-child(odd){background:var(--table-gold-soft)}.table-bordered th,.table-bordered td{border:1px solid var(--table-line)}.table-hover tbody tr:hover{background:var(--table-gold-soft)}.table-sm th,.table-sm td{padding:4px 8px;font-size:10px}.table-lg th,.table-lg td{padding:12px 16px;font-size:14px}caption{caption-side:bottom;color:var(--table-muted);text-align:center;font-size:10px;font-family:var(--table-font);padding:6px}.table-fixed-header{max-height:400px;display:block;overflow-y:auto}.table-fixed-header thead{z-index:10;position:sticky;top:0}.table-fixed-header::-webkit-scrollbar{width:4px}.table-fixed-header::-webkit-scrollbar-track{background:var(--table-line);border-radius:2px}.table-fixed-header::-webkit-scrollbar-thumb{background:var(--table-gold);border-radius:2px}@media (width<=900px){.schedule-table th:nth-child(2),.schedule-table td:nth-child(2),.schedule-table th:nth-child(3),.schedule-table td:nth-child(3),.schedule-table th:nth-child(4),.schedule-table td:nth-child(4){display:none}.schedule-table th:first-child,.schedule-table td:first-child{width:60px}}@media (width<=768px){.grade-table{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto}.grade-table th,.grade-table td{min-width:100px}.gpa-ops-table-head,.gpa-row{grid-template-columns:1.6fr 1fr 1fr;row-gap:6px}.gpa-ops-table-head span:last-child,.gpa-row span:last-child{display:none}.grades-header,.table-header,.table-row,.grades-row{grid-template-columns:1.5fr 1fr 1fr 1fr;gap:4px}.grades-header span:last-child,.table-header span:last-child,.table-row span:last-child,.grades-row span:last-child{display:none}}@media (width<=480px){th,td{padding:6px 8px;font-size:10px}.gpa-ops-table-head,.gpa-row{grid-template-columns:1.4fr .8fr .8fr;gap:4px;padding:8px 10px;font-size:10px}.grades-header,.table-header,.table-row,.grades-row{grid-template-columns:1.2fr .8fr .8fr;padding:6px 8px;font-size:8px}.schedule-table th:first-child,.schedule-table td:first-child{width:50px}.time-slot{font-size:9px}.grade-table th,.grade-table td{min-width:80px;padding:6px 8px;font-size:10px}}@media print{table{border:1px solid #000!important;border-radius:0!important}thead th{background:#f0f0f0!important;border-bottom:2px solid #000!important}tbody tr:hover{background:0 0!important}.schedule-table{border:1px solid #000!important}.is-today{background:#f5f5f5!important;outline:1px solid #000!important}.table-fixed-header{max-height:none!important;overflow:visible!important}.table-fixed-header thead{position:static!important}}th:focus-visible,td:focus-visible{outline:2px solid var(--table-gold);outline-offset:2px}@keyframes tableRowIn{0%{opacity:0;transform:translate(-4px)}to{opacity:1;transform:translate(0)}}tbody tr{animation:.15s tableRowIn}tbody tr:nth-child(2){animation-delay:50ms}tbody tr:nth-child(3){animation-delay:.1s}tbody tr:nth-child(4){animation-delay:.15s}tbody tr:nth-child(5){animation-delay:.2s}.badge,.chip{border:1px solid var(--color-border-light);background:var(--color-bg-surface);font-size:var(--text-xs);font-weight:var(--font-weight-medium);white-space:nowrap;vertical-align:middle;border-radius:999px;align-items:center;gap:6px;padding:2px 8px;display:inline-flex}.badge-sm,.chip-sm{padding:1px 6px;font-size:10px}.badge-lg,.chip-lg{font-size:var(--text-sm);padding:4px 12px}.badge-primary,.chip-primary{background:color-mix(in srgb, var(--color-primary) 12%, transparent);color:var(--color-primary);border-color:color-mix(in srgb, var(--color-primary) 22%, var(--color-border-light))}.badge-secondary,.chip-secondary{background:var(--color-bg-secondary);color:var(--color-text-secondary);border-color:var(--color-border-light)}.badge-success,.chip-success{background:color-mix(in srgb, var(--color-success) 12%, transparent);color:var(--color-success);border-color:color-mix(in srgb, var(--color-success) 22%, var(--color-border-light))}.badge-warning,.chip-warning{background:color-mix(in srgb, var(--color-warning) 12%, transparent);color:var(--color-warning);border-color:color-mix(in srgb, var(--color-warning) 22%, var(--color-border-light))}.badge-danger,.chip-danger{background:color-mix(in srgb, var(--color-danger) 12%, transparent);color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 22%, var(--color-border-light))}.badge-info,.chip-info{background:color-mix(in srgb, var(--color-info) 12%, transparent);color:var(--color-info);border-color:color-mix(in srgb, var(--color-info) 22%, var(--color-border-light))}.badge-course{background:color-mix(in srgb, var(--color-accent) 14%, transparent);color:var(--color-text-primary);border:1px solid color-mix(in srgb, var(--color-accent) 26%, var(--color-border-light))}.event-chip{border:1px solid var(--color-border-light);background:var(--color-bg-surface);font-size:var(--text-xs);border-radius:10px;align-items:center;margin:4px 0;padding:8px;display:inline-flex}.event-chip-time,.event-chip-loc{opacity:.8;margin-top:4px;font-size:11px}.alert-chip{border:1px solid var(--color-border-light);font-size:var(--text-xs);background:var(--color-bg-surface);font-weight:var(--font-weight-medium);border-radius:999px;margin:4px 6px 0 0;padding:6px 10px;display:inline-block}.alert-danger{border-color:color-mix(in srgb, var(--color-danger) 28%, var(--color-border-light));background:color-mix(in srgb, var(--color-danger) 12%, transparent);color:var(--color-danger)}.alert-warn{border-color:color-mix(in srgb, var(--color-warning) 28%, var(--color-border-light));background:color-mix(in srgb, var(--color-warning) 12%, transparent);color:var(--color-warning)}.alert-ok{opacity:.9;border-color:color-mix(in srgb, var(--color-success) 28%, var(--color-border-light));background:color-mix(in srgb, var(--color-success) 10%, transparent);color:var(--color-success)}.risk-badge{font-size:var(--text-xs);font-weight:var(--font-weight-extrabold);border:1px solid var(--color-border-light);background:var(--color-bg-secondary);border-radius:999px;padding:4px 10px}.risk-badge.risk-danger{color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 26%, var(--color-border-light))}.risk-badge.risk-warn{color:var(--color-warning);border-color:color-mix(in srgb, var(--color-warning) 26%, var(--color-border-light))}.risk-badge.risk-watch{color:var(--color-accent);border-color:color-mix(in srgb, var(--color-accent) 26%, var(--color-border-light))}.risk-badge.risk-ok{color:var(--color-success);border-color:color-mix(in srgb, var(--color-success) 26%, var(--color-border-light))}.risk-tag{font-size:var(--text-xs);font-weight:var(--font-weight-bold);border:1px solid var(--color-border-light);background:var(--color-bg-secondary);color:var(--color-text-secondary);border-radius:999px;padding:4px 8px}.risk-tag-danger{color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 26%, var(--color-border-light))}.risk-tag-warn{color:var(--color-warning);border-color:color-mix(in srgb, var(--color-warning) 26%, var(--color-border-light))}.risk-tag-ok{color:var(--color-success);border-color:color-mix(in srgb, var(--color-success) 26%, var(--color-border-light))}.grade-badge{font-weight:var(--font-weight-bold);border:1px solid var(--color-border-light);background:var(--color-bg-secondary);color:var(--color-text-primary);border-radius:12px;padding:2px 8px;font-size:.85em}.grade-A,.grade-A\+{background:color-mix(in srgb, var(--color-success) 14%, transparent);color:var(--color-success)}.grade-A-{background:color-mix(in srgb, var(--color-info) 14%, transparent);color:var(--color-info)}.grade-B\+,.grade-B{background:color-mix(in srgb, var(--color-warning) 14%, transparent);color:var(--color-warning)}.grade-B-{background:color-mix(in srgb, var(--color-warning) 10%, transparent);color:var(--color-warning)}.grade-C\+,.grade-C{background:color-mix(in srgb, var(--color-danger) 10%, transparent);color:var(--color-danger)}.grade-C-{background:color-mix(in srgb, var(--color-danger) 12%, transparent);color:var(--color-danger)}.grade-D\+,.grade-D{background:color-mix(in srgb, var(--color-text-primary) 6%, transparent);color:var(--color-text-primary)}.grade-F{background:var(--color-danger);color:#fffffff5;border-color:color-mix(in srgb, var(--color-danger) 40%, var(--color-border-light))}.grade-P,.grade-CR{background:var(--color-success);color:#fffffff5;border-color:color-mix(in srgb, var(--color-success) 40%, var(--color-border-light))}.grade-W,.grade-I{background:color-mix(in srgb, var(--color-text-primary) 18%, transparent);color:var(--color-text-primary)}.task-priority{border:1px solid var(--color-border-light);background:var(--color-bg-surface);border-radius:999px;padding:4px 8px;font-size:11px}.priority-low{background:color-mix(in srgb, var(--color-info) 10%, transparent);color:var(--color-info)}.priority-medium{background:color-mix(in srgb, var(--color-warning) 12%, transparent);color:var(--color-warning)}.priority-high{background:color-mix(in srgb, var(--color-danger) 12%, transparent);color:var(--color-danger)}.notification-badge{background:var(--color-danger);color:#fffffff5;width:18px;height:18px;font-size:10px;font-weight:var(--font-weight-bold);border:1px solid #ffffffa6;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:-5px;right:-5px}.today-badge{background:color-mix(in srgb, var(--color-primary) 86%, #000 14%);color:#fffffff5;font-size:11px;font-weight:var(--font-weight-semibold);border:1px solid #c9a44c38;border-radius:10px;margin-top:6px;padding:2px 8px;display:inline-block}.goal-progress-badge{font-size:.75rem;font-weight:var(--font-weight-semibold);color:#fffffff5;background:color-mix(in srgb, var(--color-primary) 86%, #000 14%);border:1px solid #c9a44c38;border-radius:9999px;margin-left:.5rem;padding:.25rem .5rem}.overdue-badge{background:color-mix(in srgb, var(--color-danger) 12%, transparent);color:var(--color-danger);border:1px solid color-mix(in srgb, var(--color-danger) 22%, var(--color-border-light));border-radius:6px;margin-left:.5rem;padding:.15rem .5rem;font-size:.7rem}.days-badge{background:color-mix(in srgb, var(--color-info) 10%, transparent);color:var(--color-info);border:1px solid color-mix(in srgb, var(--color-info) 20%, var(--color-border-light));border-radius:6px;margin-left:.5rem;padding:.15rem .5rem;font-size:.7rem}.badge-pill{font-size:.75em;font-weight:var(--font-weight-semibold);text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:10rem;padding:.25em .6em;line-height:1}.badge-pill.badge-danger{background-color:var(--color-danger);color:#fffffff5}.badge-pill.badge-success{background-color:var(--color-success);color:#fffffff5}.badge-pill.badge-secondary{background-color:var(--color-text-tertiary);color:#fffffff5}.badge-pill.badge-info{background-color:var(--color-info);color:#fffffff5}.badge-pill.badge-light{background-color:var(--color-bg-secondary);color:var(--color-text-primary);border:1px solid var(--color-border-light)}.status-dot{background:var(--color-border);border-radius:50%;width:8px;height:8px;display:inline-block}.status-dot.online{background:var(--color-success)}.status-dot.offline{background:var(--color-danger)}.status-dot.away{background:var(--color-warning)}.status-dot.busy{background:var(--color-danger)}.badge-close{cursor:pointer;padding-right:4px}.badge-close:hover{opacity:.85}.badge-group{flex-wrap:wrap;gap:4px;display:inline-flex}.badge-with-icon,.chip-with-icon{padding-left:6px}.badge-with-icon i,.chip-with-icon i{opacity:.85;font-size:10px}.badge-outlined,.chip-outlined{background:0 0;border:1px solid}.badge-soft,.chip-soft{background:color-mix(in srgb, var(--color-text-primary) 6%, transparent);border:none}@media (width<=480px){.badge,.chip{padding:1px 6px;font-size:10px}.badge-lg,.chip-lg{font-size:var(--text-xs);padding:3px 8px}}@keyframes badgePulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.badge-pulse{animation:2s infinite badgePulse}a .badge,a .chip{text-decoration:none}a .badge:hover,a .chip:hover{opacity:.92}:root{--nt-bg:#f5f3ef;--nt-card:#fff;--nt-soft:#faf8f5;--nt-line:#e2ddd4;--nt-line-strong:#d5cfc4;--nt-text:#1a1a1a;--nt-muted:#8a8578;--nt-faint:#c4beb3;--nt-green:#1f6b45;--nt-green-soft:#1f6b450f;--nt-gold:#c9a44c;--nt-gold-soft:#c9a44c0f;--nt-shadow:0 4px 12px #0000000f;--nt-font:"SF Mono", "JetBrains Mono", monospace}section[data-view=notifications]{min-height:calc(100vh - var(--topbar-height,56px));background:var(--nt-bg)}.notifications-page{color:var(--nt-text);padding:16px 20px}.notifications-page-header{background:var(--nt-card);border:1px solid var(--nt-line);border-top:3px solid var(--nt-green);box-shadow:var(--nt-shadow);border-radius:4px;justify-content:space-between;gap:16px;margin-bottom:14px;padding:16px 20px;display:flex}.notifications-kicker{color:var(--nt-gold);font-size:9px;font-weight:600;font-family:var(--nt-font);letter-spacing:.5px;text-transform:uppercase;margin:0 0 4px}.notifications-page-header h1{font-size:20px;font-weight:700;font-family:var(--nt-font);text-transform:uppercase;letter-spacing:-.3px;margin:0}.notifications-page-header p:last-child{color:var(--nt-muted);font-size:12px;font-family:var(--nt-font);margin:4px 0 0}.notifications-header-actions,.notification-detail-card footer{flex-wrap:wrap;gap:6px;display:flex}.notifications-btn{border:1px solid var(--nt-line);background:var(--nt-card);min-height:34px;color:var(--nt-text);font-size:10px;font-weight:500;font-family:var(--nt-font);text-transform:uppercase;letter-spacing:.3px;cursor:pointer;border-radius:4px;align-items:center;gap:6px;padding:0 14px;transition:all .15s;display:inline-flex}.notifications-btn:hover{background:var(--nt-gold-soft);border-color:var(--nt-gold-border);transform:translateY(-1px)}.notifications-btn-primary{background:var(--nt-green);border-color:var(--nt-green);color:#fff}.notifications-btn-primary:hover{background:var(--nt-green-hover,#174f34);border-color:var(--nt-green-hover,#174f34)}#notificationsTopbarBtn,[data-open-notifications]{color:#ffffffb3;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:38px;height:38px;margin:0;padding:0;font-size:18px;transition:all .15s;display:inline-flex;position:relative}#notificationsTopbarBtn:hover,[data-open-notifications]:hover{color:#fff;background:#ffffff14}#notificationsTopbarBtn:active,[data-open-notifications]:active{transform:scale(.95)}#notificationsTopbarBadge,[data-notifications-badge]{border:2px solid var(--nav-bg,#0c5137);color:#fff;min-width:18px;height:18px;font-size:9px;font-weight:700;font-family:var(--nt-font);background:#b91c1c;border-radius:4px;justify-content:center;align-items:center;padding:0 5px;line-height:1;display:none;position:absolute;top:-4px;right:-6px;box-shadow:0 2px 6px #b91c1c4d}#notificationsTopbarBadge.visible,[data-notifications-badge].visible{display:flex}.notifications-stats{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px;display:grid}.notifications-stats>div{background:var(--nt-card);border:1px solid var(--nt-line);box-shadow:var(--nt-shadow);border-bottom:2px solid var(--nt-line-strong);border-radius:4px;padding:12px 16px;transition:all .15s}.notifications-stats>div:hover{border-color:var(--nt-gold-border)}.notifications-stats>div.is-unread{border-bottom-color:var(--nt-green)}.notifications-stats span,.notifications-stats small{color:var(--nt-muted);font-family:var(--nt-font);display:block}.notifications-stats span{text-transform:uppercase;letter-spacing:.5px;font-size:9px;font-weight:600}.notifications-stats strong{font-size:24px;font-weight:700;font-family:var(--nt-font);margin:4px 0;display:block}.notifications-stats small{font-size:10px}.notifications-workspace{grid-template-columns:minmax(380px,.85fr) minmax(400px,1.15fr);align-items:start;gap:12px;display:grid}.notifications-list-panel,.notification-detail-panel{background:var(--nt-card);border:1px solid var(--nt-line);box-shadow:var(--nt-shadow);border-radius:4px;overflow:hidden}.notifications-panel-heading{border-bottom:2px solid var(--nt-line);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.notifications-panel-heading h2{font-size:13px;font-weight:600;font-family:var(--nt-font);text-transform:uppercase;letter-spacing:.3px;margin:0}.notifications-panel-heading>span{font-size:10px;font-family:var(--nt-font);color:var(--nt-muted)}.notifications-filter-bar{background:var(--nt-soft);border-bottom:1px solid var(--nt-line);grid-template-columns:1fr 120px 140px;gap:6px;padding:10px 12px;display:grid}.notifications-filter-bar label{background:var(--nt-card);border:1px solid var(--nt-line);border-radius:4px;align-items:center;gap:6px;padding:0 10px;transition:all .15s;display:flex}.notifications-filter-bar label:focus-within{border-color:var(--nt-gold);box-shadow:0 0 0 3px #c9a44c1f}.notifications-filter-bar input,.notifications-filter-bar select{width:100%;min-height:34px;font-family:var(--nt-font);color:var(--nt-text);background:0 0;border:none;border-radius:4px;outline:none;padding:0 8px;font-size:12px}.notifications-filter-bar select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%238a8578'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;padding-right:28px}.notifications-filter-bar label input{border:none;outline:none;padding:0}.notifications-list{max-height:calc(100vh - 340px);overflow:auto}.notifications-list::-webkit-scrollbar{width:4px}.notifications-list::-webkit-scrollbar-track{background:var(--nt-line);border-radius:2px}.notifications-list::-webkit-scrollbar-thumb{background:var(--nt-gold);border-radius:2px}.notification-row{border:none;border-bottom:1px solid var(--nt-line);background:var(--nt-card);text-align:left;cursor:pointer;grid-template-columns:36px 1fr 14px;gap:10px;width:100%;padding:10px 14px;transition:all .15s;display:grid;position:relative}.notification-row:hover{background:var(--nt-gold-soft)}.notification-row.is-unread{background:var(--nt-green-soft)}.notification-row.is-selected{background:var(--nt-gold-soft)}.notification-row.is-unread:before,.notification-row.is-selected:before{content:"";background:var(--nt-green);width:3px;position:absolute;inset:0 auto 0 0}.notification-row.is-selected:before{background:var(--nt-gold)}.notification-row-icon,.notification-detail-icon{border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.notification-row-icon{width:36px;height:36px;font-size:14px}.notification-detail-icon{width:48px;height:48px;font-size:18px}.notification-row-icon.is-support,.notification-detail-icon.is-support{background:var(--nt-green-soft);color:var(--nt-green)}.is-broadcasts{background:var(--nt-gold-soft);color:#8a6500}.is-academics{color:#2563eb;background:#3b82f614}.is-staff{color:#5c437d;background:#5c437d14}.is-system{color:#b91c1c;background:#b91c1c0f}.notification-row-content{min-width:0}.notification-row-title{align-items:center;gap:6px;display:flex}.notification-row-title strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;font-family:var(--nt-font);overflow:hidden}.notification-row-title em{background:var(--nt-green);color:#fff;font-size:7px;font-weight:600;font-family:var(--nt-font);text-transform:uppercase;letter-spacing:.3px;border-radius:4px;flex-shrink:0;padding:1px 8px;font-style:normal}.notification-row-message{color:var(--nt-muted);font-size:11px;font-family:var(--nt-font);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:4px 0 3px;line-height:1.4;display:-webkit-box;overflow:hidden}.notification-row small{color:var(--nt-faint);font-size:9px;font-family:var(--nt-font);text-transform:uppercase;letter-spacing:.3px}.notification-row-arrow{color:var(--nt-faint);align-self:center;font-size:12px}.notification-detail-panel{top:calc(var(--topbar-height,56px) + 12px);min-height:400px;position:sticky}.notification-detail-card>header{border-bottom:2px solid var(--nt-line);justify-content:space-between;gap:14px;padding:16px 20px;display:flex}.notification-detail-card h2{font-size:16px;font-weight:700;font-family:var(--nt-font);text-transform:uppercase;letter-spacing:-.3px;margin:0}.notification-detail-card header small{color:var(--nt-muted);font-size:9px;font-family:var(--nt-font);text-transform:uppercase;letter-spacing:.3px;margin-top:4px;display:block}.notification-detail-message{border-bottom:1px solid var(--nt-line);font-size:13px;font-family:var(--nt-font);color:var(--nt-text);padding:16px 20px;line-height:1.7}.notification-detail-card dl{grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:14px 20px;display:grid}.notification-detail-card dl>div{background:var(--nt-soft);border:1px solid var(--nt-line);border-radius:4px;padding:10px 12px;transition:all .15s}.notification-detail-card dl>div:hover{border-color:var(--nt-gold-border)}.notification-detail-card dt{color:var(--nt-muted);font-size:8px;font-weight:600;font-family:var(--nt-font);text-transform:uppercase;letter-spacing:.5px}.notification-detail-card dd{font-size:12px;font-family:var(--nt-font);overflow-wrap:anywhere;color:var(--nt-text);margin:4px 0 0}.notification-detail-card footer{padding:0 20px 20px}.notification-detail-empty,.notifications-empty{text-align:center;min-height:260px;color:var(--nt-muted);flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex}.notification-detail-empty{min-height:400px}.notification-detail-empty i,.notifications-empty i{color:var(--nt-gold);opacity:.3;font-size:32px}.notification-detail-empty h3,.notifications-empty h3{color:var(--nt-text);font-size:14px;font-weight:600;font-family:var(--nt-font);text-transform:uppercase;letter-spacing:.3px;margin:10px 0 4px}.notification-detail-empty p,.notifications-empty p{font-size:12px;font-family:var(--nt-font);color:var(--nt-muted);margin:0}.notifications-mount,.notifications-bell,#notificationsBellBtn,#notificationsModal{display:none!important}@media (width<=1100px){.notifications-workspace{grid-template-columns:1fr}.notification-detail-panel{min-height:auto;position:static}.notifications-list{max-height:420px}}@media (width<=820px){.notifications-page{padding:12px 14px}.notifications-page-header{flex-direction:column;padding:14px 16px}.notifications-stats{grid-template-columns:1fr 1fr}.notifications-filter-bar{grid-template-columns:1fr}.notifications-header-actions{width:100%}.notifications-header-actions .notifications-btn{flex:1;justify-content:center}}@media (width<=520px){.notifications-page{padding:8px 10px}.notifications-stats{grid-template-columns:1fr 1fr;gap:6px}.notifications-stats>div{padding:10px 12px}.notifications-stats strong{font-size:20px}.notifications-page-header h1{font-size:18px}.notification-detail-card dl{grid-template-columns:1fr}.notification-detail-card>header{flex-direction:column;gap:10px}.notification-row{grid-template-columns:32px 1fr 12px;gap:8px;padding:8px 12px}.notification-row-icon{width:32px;height:32px;font-size:12px}.notifications-filter-bar label{padding:0 8px}.notifications-filter-bar input,.notifications-filter-bar select{min-height:32px;font-size:11px}.notification-detail-icon{width:40px;height:40px;font-size:16px}#notificationsTopbarBtn,[data-open-notifications]{width:34px;height:34px;font-size:16px}#notificationsTopbarBadge,[data-notifications-badge]{min-width:16px;height:16px;font-size:8px;top:-3px;right:-5px}}.notifications-btn:focus-visible,.notification-row:focus-visible,.notifications-filter-bar input:focus-visible,.notifications-filter-bar select:focus-visible,#notificationsTopbarBtn:focus-visible,[data-open-notifications]:focus-visible{outline:2px solid var(--nt-gold);outline-offset:2px}@keyframes notifSlideIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.notification-row{animation:.2s notifSlideIn}.notification-row:nth-child(2){animation-delay:50ms}.notification-row:nth-child(3){animation-delay:.1s}.notification-row:nth-child(4){animation-delay:.15s}@media print{section[data-view=notifications]{background:#fff!important;min-height:auto!important}.notifications-page{padding:0!important}.notifications-page-header{box-shadow:none!important;border:1px solid #000!important}.notifications-stats>div,.notification-row{border:1px solid #000!important}.notifications-btn,.notifications-filter-bar,#notificationsTopbarBtn{display:none!important}.notification-detail-panel{position:static!important}}:root{--impersonation-banner-height:48px;--impersonation-bg:#8d2020;--impersonation-bg-hover:#a12828;--impersonation-text:#fff;--impersonation-border:#fff3;--impersonation-shadow:0 5px 16px #0003;--impersonation-font:"SF Mono", "JetBrains Mono", "Roboto Mono", monospace}.impersonation-banner{top:var(--topbar-height,56px);z-index:3000;min-height:var(--impersonation-banner-height);background:var(--impersonation-bg);color:var(--impersonation-text);box-shadow:var(--impersonation-shadow);font-family:var(--impersonation-font);border-bottom:1px solid #ffffff26;justify-content:space-between;align-items:center;gap:16px;padding:7px 20px;animation:.18s ease-out impersonation-slide-down;display:flex;position:fixed;left:0;right:0}.impersonation-banner[hidden]{display:none!important}.impersonation-info{align-items:center;gap:10px;min-width:0;display:flex}.impersonation-icon{background:#ffffff1a;border:1px solid #ffffff26;border-radius:5px;flex:0 0 30px;justify-content:center;align-items:center;width:30px;height:30px;font-size:13px;display:inline-flex}.impersonation-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.impersonation-copy>strong{color:#ffffffb8;font-family:var(--impersonation-font);letter-spacing:.55px;text-transform:uppercase;font-size:9px;font-weight:700;line-height:1;display:block}.impersonation-user{min-width:0;color:var(--impersonation-text);font-family:var(--impersonation-font);align-items:center;gap:7px;font-size:13px;font-weight:700;line-height:1.2;display:inline-flex}.impersonation-user>i{opacity:.7;flex-shrink:0;font-size:11px}#impersonationTargetName{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.impersonation-exit-btn{border:1px solid var(--impersonation-border);min-height:34px;color:var(--impersonation-text);font-family:var(--impersonation-font);letter-spacing:.35px;text-transform:uppercase;white-space:nowrap;cursor:pointer;background:#ffffff14;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;gap:7px;padding:0 16px;font-size:10px;font-weight:700;transition:background .15s,border-color .15s,transform .15s,opacity .15s;display:inline-flex}.impersonation-exit-btn:hover:not(:disabled){background:#ffffff2b;border-color:#ffffff59;transform:translateY(-1px)}.impersonation-exit-btn:active:not(:disabled){transform:translateY(0)}.impersonation-exit-btn:disabled{cursor:wait;opacity:.65}.impersonation-exit-btn:focus-visible{outline-offset:2px;outline:2px solid #ffffffb3}body.is-impersonating main#appMain,body.is-impersonating .app-main{padding-top:calc(var(--impersonation-banner-height) + 12px)}body.is-impersonating{--active-impersonation-height:var(--impersonation-banner-height)}@media (width<=768px){:root{--impersonation-banner-height:44px}.impersonation-banner{top:var(--topbar-height-mobile,52px);gap:10px;padding:6px 14px}.impersonation-icon{flex-basis:26px;width:26px;height:26px;font-size:11px}.impersonation-copy>strong{font-size:8px}.impersonation-user{font-size:11px}.impersonation-exit-btn{min-height:30px;padding:0 11px;font-size:9px}}@media (width<=480px){:root{--impersonation-banner-height:74px}.impersonation-banner{top:var(--topbar-height-mobile,48px);flex-wrap:wrap;align-content:center;padding:7px 10px}.impersonation-info{flex:auto;max-width:calc(100% - 45px)}.impersonation-exit-btn{width:100%;min-height:28px}}@keyframes impersonation-slide-down{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media print{.impersonation-banner{display:none!important}body.is-impersonating main#appMain,body.is-impersonating .app-main{padding-top:0!important}}:root{--grid-bg:#f5f3ef;--grid-card:#fff;--grid-line:#e2ddd4;--grid-line-strong:#d5cfc4;--grid-text:#1a1a1a;--grid-muted:#8a8578;--grid-faint:#c4beb3;--grid-green:#1f6b45;--grid-gold:#c9a44c;--grid-gold-soft:#c9a44c0f;--grid-shadow:0 4px 12px #0000000f;--grid-font:"SF Mono", "JetBrains Mono", monospace}.container{background:var(--grid-bg);flex-direction:column;width:100%;min-height:100dvh;display:flex;overflow-x:hidden}.dashboard-grid-view{box-sizing:border-box;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;width:100%;max-width:none;margin:0;padding:0;display:grid}section[data-view=dashboard]{width:100%;max-width:none;margin:0;padding:0}.card{background:var(--grid-card);border:1px solid var(--grid-line);box-shadow:var(--grid-shadow);border-radius:4px;grid-column:span 6;padding:16px 18px;transition:all .15s}.card:hover{border-color:var(--grid-gold-border);box-shadow:0 6px 16px #00000014}.card-large{grid-column:span 12}.card-half{grid-column:span 6}.card-tasks{grid-column:span 8}.card-calendar,.card-stats{grid-column:span 4}.card-grades,.card.command-center,.card-gpa{grid-column:span 12}.notes-grid .card{grid-column:auto}.goals-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.goals-grid .card{grid-column:auto}.full-width{grid-column:1/-1}.card .card-header{border-bottom:1px solid var(--grid-line);justify-content:space-between;align-items:center;margin-bottom:12px;padding:0 0 10px;display:flex}.card .card-header h2,.card .card-header h3{font-family:var(--grid-font);color:var(--grid-text);text-transform:uppercase;letter-spacing:.3px;margin:0;font-size:13px;font-weight:600}.card .card-header .card-actions{gap:6px;display:flex}.card .card-header .card-actions button{border:1px solid var(--grid-line);font-family:var(--grid-font);color:var(--grid-muted);cursor:pointer;text-transform:uppercase;letter-spacing:.3px;background:0 0;border-radius:4px;padding:4px 10px;font-size:10px;transition:all .15s}.card .card-header .card-actions button:hover{background:var(--grid-gold-soft);border-color:var(--grid-gold-border);color:var(--grid-text)}.card .card-content{font-family:var(--grid-font);color:var(--grid-text);padding:0}.card-accent{border-left:3px solid var(--grid-gold)}.card-accent-green{border-left:3px solid var(--grid-green)}.card-no-shadow{box-shadow:none}.card-compact{padding:12px 14px}.card-compact .card-header{margin-bottom:10px;padding:0 0 8px}.card .empty-state{text-align:center;color:var(--grid-muted);padding:24px 16px}.card .empty-state i{color:var(--grid-faint);margin-bottom:8px;font-size:28px}.card .empty-state p{font-size:12px;font-family:var(--grid-font);margin:0}@media (width<=1200px){.dashboard-grid-view{gap:14px}.card-tasks{grid-column:span 7}.card-calendar{grid-column:span 5}.card-stats{grid-column:span 4}}@media (width<=1024px){.card-tasks{grid-column:span 12}.card-calendar,.card-stats{grid-column:span 6}}@media (width<=900px){.dashboard-grid-view{grid-template-columns:1fr;gap:12px;padding:16px 0}.card,.card-large,.card-half,.card-tasks,.card-calendar,.card-stats,.card-grades,.card.command-center,.card-gpa{grid-column:1/-1}.notes-grid,.goals-grid{grid-template-columns:1fr}.card{padding:14px 16px}}@media (width<=600px){.dashboard-grid-view{gap:10px;padding:12px 0}.card{padding:12px}.card .card-header h2,.card .card-header h3{font-size:12px}.card .card-header .card-actions button{padding:3px 8px;font-size:9px}.notes-grid,.goals-grid{gap:10px}}@media (width<=400px){.card{padding:10px}.card .card-header{flex-direction:column;align-items:flex-start;gap:6px}.card .card-header .card-actions{width:100%}.card .card-header .card-actions button{text-align:center;flex:1}}@media print{.container{background:#fff!important}.card{break-inside:avoid;page-break-inside:avoid;box-shadow:none!important;border:1px solid #000!important;border-radius:0!important}.card-accent,.card-accent-green{border-left:3px solid #000!important}.dashboard-grid-view{gap:12px}}.card:focus-visible,.card .card-header .card-actions button:focus-visible{outline:2px solid var(--grid-gold);outline-offset:2px}.card{animation:.2s cardSlideIn}.card:nth-child(2){animation-delay:50ms}.card:nth-child(3){animation-delay:.1s}.card:nth-child(4){animation-delay:.15s}.card:nth-child(5){animation-delay:.2s}.card:nth-child(6){animation-delay:.25s}.card .card-content::-webkit-scrollbar{width:3px}.card .card-content::-webkit-scrollbar-track{background:var(--grid-line);border-radius:2px}.card .card-content::-webkit-scrollbar-thumb{background:var(--grid-gold);border-radius:2px}.card .card-content::-webkit-scrollbar-thumb:hover{background:var(--grid-gold-border)}:root{--sidebar-bg:#fff;--sidebar-line:#e2ddd4;--sidebar-line-strong:#d5cfc4;--sidebar-text:#1a1a1a;--sidebar-muted:#8a8578;--sidebar-faint:#c4beb3;--sidebar-green:#1f6b45;--sidebar-green-soft:#1f6b450f;--sidebar-gold:#c9a44c;--sidebar-gold-soft:#c9a44c0f;--sidebar-shadow:0 4px 16px #0000001a;--sidebar-font:"SF Mono", "JetBrains Mono", monospace}.mobile-nav-drawer{background:var(--sidebar-bg);border-right:1px solid var(--sidebar-line);width:280px;height:100dvh;z-index:var(--z-modal,1000);box-shadow:var(--sidebar-shadow);transition:transform .25s;position:fixed;top:0;left:0;overflow-y:auto;transform:translate(-100%)}.mobile-nav-drawer.open{transform:translate(0)}.mobile-nav-drawer::-webkit-scrollbar{width:4px}.mobile-nav-drawer::-webkit-scrollbar-track{background:var(--sidebar-line);border-radius:2px}.mobile-nav-drawer::-webkit-scrollbar-thumb{background:var(--sidebar-gold);border-radius:2px}.mobile-nav-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:calc(var(--z-modal,1000) - 1);background:#02061780;display:none;position:fixed;inset:0}.mobile-nav-content{padding:0}.mobile-nav-section{margin:0;padding:18px 16px 4px}.mobile-nav-title{margin:0 0 8px;padding:0 10px}.mobile-nav-header{background:linear-gradient(135deg,#176b47 0%,#0b5135 55%,#073d28 100%);border-bottom:3px solid #d9b64f;justify-content:space-between;align-items:center;gap:16px;min-height:104px;padding:16px 18px;display:flex}.mobile-nav-logo{background:0 0;border:0;flex:1;align-items:center;min-width:0;margin:0;padding:0;text-decoration:none;display:flex}.mobile-nav-logo-image{object-fit:contain;object-position:left center;filter:drop-shadow(0 4px 10px #0000002e);width:auto;max-width:calc(100% - 8px);height:68px;transition:transform .18s;display:block}.mobile-nav-logo:hover .mobile-nav-logo-image{transform:scale(1.02)}.mobile-nav-close{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff29;border-radius:8px;flex:0 0 44px;place-items:center;width:44px;height:44px;padding:0;font-size:18px;transition:background .18s,border-color .18s,transform .18s;display:grid}.mobile-nav-close:hover{background:#ffffff26;border-color:#d9b64f8c}.mobile-nav-close:active{transform:scale(.96)}.mobile-nav-badge{color:#fff;background:#c81e1e;border:2px solid #fff;border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:22px;margin-left:auto;padding:0 6px;font-size:10px;font-weight:700;line-height:1;display:inline-flex}.mobile-nav-badge[hidden]{display:none!important}.mobile-nav-item.has-unread .fa-bell{color:var(--nav-gold,#d9b64f)}.mobile-nav-section{margin-bottom:24px}.mobile-nav-section:last-child{margin-bottom:0}.mobile-nav-title{text-transform:uppercase;color:var(--sidebar-muted);letter-spacing:.5px;font-size:9px;font-weight:600;font-family:var(--sidebar-font);margin-bottom:8px;padding-left:8px}.mobile-nav-item{color:var(--sidebar-text);font-family:var(--sidebar-font);text-transform:uppercase;letter-spacing:.3px;border:1px solid #0000;border-radius:4px;align-items:center;gap:10px;margin-bottom:2px;padding:8px 12px;font-size:12px;text-decoration:none;transition:all .15s;display:flex}.mobile-nav-item:hover{background:var(--sidebar-gold-soft);border-color:var(--sidebar-line)}.mobile-nav-item.active{background:var(--sidebar-green-soft);color:var(--sidebar-green);border-color:var(--sidebar-gold-border);border-left:3px solid var(--sidebar-gold);font-weight:600}.mobile-nav-item i{text-align:center;width:18px;color:var(--sidebar-muted);font-size:14px}.mobile-nav-item.active i{color:var(--sidebar-gold)}.mobile-nav-divider{background:var(--sidebar-line);height:1px;margin:16px 8px}.mobile-nav-footer{border-top:1px solid var(--sidebar-line);margin-top:24px;padding-top:14px}.mobile-nav-footer .mobile-nav-item{color:var(--sidebar-muted);font-size:11px}.mobile-nav-footer .mobile-nav-item:hover{color:var(--sidebar-text)}.dark-theme .mobile-nav-drawer{border-right-color:var(--sidebar-border-dark,#2a2a2a);background:#1a1a1a}.dark-theme .mobile-nav-header{border-bottom-color:var(--sidebar-border-dark,#2a2a2a)}.dark-theme .mobile-nav-logo{color:#fff}.dark-theme .mobile-nav-item{color:#fffc}.dark-theme .mobile-nav-item:hover{background:#ffffff0f;border-color:#ffffff14}.dark-theme .mobile-nav-item.active{color:var(--sidebar-gold);background:#c9a44c1f;border-color:#c9a44c33}.dark-theme .mobile-nav-item i{color:#fff6}.dark-theme .mobile-nav-item.active i{color:var(--sidebar-gold)}.dark-theme .mobile-nav-divider{background:var(--sidebar-border-dark,#2a2a2a)}.dark-theme .mobile-nav-footer{border-top-color:var(--sidebar-border-dark,#2a2a2a)}.dark-theme .mobile-nav-title{color:#fff6}.dark-theme .mobile-nav-close{border-color:var(--sidebar-border-dark,#2a2a2a);color:#fff9}.dark-theme .mobile-nav-close:hover{color:#fff;background:#ffffff0f;border-color:#c9a44c33}@media (width<=900px){.mobile-nav-drawer{width:260px}}@media (width<=480px){.mobile-nav-drawer{width:100%;max-width:300px}.mobile-nav-content{padding:16px 12px}.mobile-nav-header{margin-bottom:18px;padding-bottom:10px}.mobile-nav-logo{font-size:14px}.mobile-nav-item{padding:8px 10px;font-size:11px}}@keyframes slideInNav{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.mobile-nav-item{animation:.2s slideInNav}.mobile-nav-item:nth-child(2){animation-delay:50ms}.mobile-nav-item:nth-child(3){animation-delay:.1s}.mobile-nav-item:nth-child(4){animation-delay:.15s}.mobile-nav-item:nth-child(5){animation-delay:.2s}.mobile-nav-item:focus-visible,.mobile-nav-close:focus-visible{outline:2px solid var(--sidebar-gold);outline-offset:2px}@media print{.mobile-nav-drawer,.mobile-nav-overlay{display:none!important}}@supports (padding:env(safe-area-inset-left)){.mobile-nav-drawer{padding-left:env(safe-area-inset-left)}}body.nav-open{overflow:hidden}.mobile-nav-drawer,.mobile-nav-overlay{will-change:transform, opacity}.mobile-nav-item{will-change:transform}:root{--topbar-height:84px;--nav-bg:#0b5135;--nav-bg-start:#176b47;--nav-bg-end:#0a3f2a;--nav-bg-deep:#062f1f;--nav-surface:#ffffff14;--nav-surface-hover:#ffffff1f;--nav-surface-active:#ffffff29;--nav-text:#ffffffd9;--nav-text-strong:#fff;--nav-border:#ffffff1a;--nav-gold:#d9b64f;--nav-gold-soft:#d9b64f26;--nav-shadow:0 1px 0 #ffffff0f inset, 0 8px 24px #021a113d;--nav-font:"SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--z-header:3500;--z-impersonation:3000;--z-nav-dropdown:4000}.university-header,.app-header{z-index:var(--z-header);width:100%;height:var(--topbar-height);background:linear-gradient(135deg, var(--nav-bg-start) 0%, var(--nav-bg) 48%, var(--nav-bg-end) 100%);box-shadow:var(--nav-shadow);border-bottom:1px solid #d9b64f4d;position:fixed;inset:0 0 auto}.top-bar,.app-top-bar{width:100%;height:var(--topbar-height);box-sizing:border-box;grid-template-columns:420px 1fr auto;align-items:center;gap:24px;padding:0 22px;display:grid}.app-brand,.university-branding{flex:0 0 420px;align-items:center;min-width:420px;display:flex}.app-brand-link,.wordmark{color:inherit;border-radius:12px;align-items:center;gap:16px;padding:4px 10px;text-decoration:none;transition:all .25s;display:inline-flex}.app-brand-link:hover,.wordmark:hover{background:#ffffff0d}.app-brand-icon,.wordmark-logo{object-fit:contain;filter:drop-shadow(0 6px 18px #00000047);flex:none;width:auto;max-width:260px;height:74px;transition:transform .25s}.app-brand-link:hover .app-brand-icon,.wordmark:hover .wordmark-logo{transform:scale(1.04)}.wordmark-logo-wrap{flex:none;justify-content:flex-start;align-items:center;width:auto;height:74px;display:flex}.app-brand-copy,.wordmark-copy{flex-direction:column;justify-content:center;display:flex}.app-brand-name,.wordmark-main{color:#fff;font-family:var(--nav-font);letter-spacing:-.04em;text-transform:uppercase;margin:0;font-size:22px;font-weight:800;line-height:1.05}.app-brand-badge,.wordmark-sub{width:fit-content;color:var(--nav-gold);letter-spacing:.14em;text-transform:uppercase;background:#d4ad431f;border:1px solid #d4ad4347;border-radius:999px;align-items:center;margin-top:6px;padding:4px 10px;font-size:9px;font-weight:700;display:inline-flex}.app-command-nav,.primary-navigation{min-width:0;box-shadow:none;background:#ffffff0a;border:1px solid #ffffff0f;border-radius:4px;justify-self:center;align-items:center;gap:2px;padding:4px 6px;display:inline-flex}.command-nav-item,.nav-link,.mega-trigger{color:#fffc;min-height:34px;font-family:var(--nav-font);text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:11px;font-weight:500;line-height:1;text-decoration:none;transition:all .15s;display:inline-flex;position:relative}.command-nav-item:hover,.nav-link:hover,.mega-trigger:hover{color:#fff;background:#ffffff14;border-color:#ffffff0f}.command-nav-item.active,.nav-link.active{color:#fff;background:#ffffff1a;border-color:#c9a44c26}.command-nav-item.active:after,.nav-link.active:after{content:"";background:var(--nav-gold);border-radius:2px;height:2px;position:absolute;bottom:2px;left:14px;right:14px;box-shadow:0 0 10px #d9b64f33}.command-nav-item i,.nav-link i,.mega-trigger i{opacity:.7;font-size:10px}.command-chevron{opacity:.65;font-size:8px!important}.mega{align-items:center;display:inline-flex;position:relative}.mega-panel{width:310px;z-index:var(--z-nav-dropdown);background:#102219;border:1px solid #d4ad432e;border-radius:4px;padding:8px;display:none;position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%);box-shadow:0 18px 48px #00000057}.mega-panel.open{display:block}.mega-panel:before{content:"";background:#102219;border-top:1px solid #d4ad432e;border-left:1px solid #d4ad432e;width:12px;height:12px;position:absolute;top:-6px;left:50%;transform:translate(-50%)rotate(45deg)}.mega-link{color:#ffffffc2;font-family:var(--nav-font);text-transform:uppercase;letter-spacing:.24px;border-radius:4px;align-items:center;gap:10px;padding:10px 12px;font-size:11px;font-weight:500;text-decoration:none;transition:background .16s,color .16s;display:flex}.mega-link i{text-align:center;color:#ffffff6b;width:17px}.mega-link:hover{color:#fff;background:#ffffff0f}.mega-link:hover i{color:var(--nav-gold)}.app-header-actions,.user-controls{align-items:center;gap:12px;min-width:0;display:flex}.app-utilities{align-items:center;gap:5px;display:flex}.utility-button{color:#ffffffa8;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;place-items:center;width:38px;height:38px;text-decoration:none;transition:color .18s,background .18s,border-color .18s;display:grid;position:relative}.utility-button:hover{color:#fff;background:var(--nav-surface-hover);border-color:var(--nav-border)}.utility-indicator{background:var(--nav-gold);border:2px solid var(--nav-bg-deep);border-radius:50%;width:7px;height:7px;position:absolute;top:7px;right:7px}.account-control,.user-profile{max-width:220px;min-height:44px;color:inherit;cursor:pointer;background:#ffffff17;border:1px solid #d9b64f57;border-radius:4px;align-items:center;gap:9px;padding:4px 10px 4px 5px;transition:background .18s,border-color .18s,transform .18s;display:inline-flex;box-shadow:inset 0 1px #ffffff12,0 4px 12px #00000017}.account-control:hover,.user-profile:hover{background:var(--nav-surface-hover);border-color:#d4ad4361}.account-avatar,.user-avatar{color:#fff;width:34px;height:34px;font-family:var(--nav-font);background:linear-gradient(145deg,#d4ad433d,#ffffff0f);border:1px solid #d4ad434d;border-radius:4px;flex:0 0 34px;place-items:center;font-size:11px;font-weight:700;display:grid}.account-copy,.user-info-mini{text-align:left;flex-direction:column;min-width:0;display:flex}.account-name,.user-name{color:#fff;font-family:var(--nav-font);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:600;overflow:hidden}.account-role,.user-status{color:#ffffff6b;font-family:var(--nav-font);letter-spacing:.08em;text-transform:uppercase;margin-top:2px;font-size:8px}.account-chevron{color:#ffffff7a;margin-left:2px;font-size:9px}.mobile-menu-toggle{color:#ffffffd6;background:var(--nav-surface);border:1px solid var(--nav-border);cursor:pointer;border-radius:4px;place-items:center;width:38px;height:38px;display:none}.mobile-menu-toggle:hover{color:#fff;background:var(--nav-surface-hover);border-color:#d4ad434d}.impersonation-bar{color:#fff;background:#241d0d;border-bottom:1px solid #d4ad4342;justify-content:space-between;align-items:center;gap:12px;min-height:38px;padding:6px 18px;display:flex;position:absolute;top:100%;left:0;right:0}.impersonation-banner{z-index:var(--z-impersonation)}.impersonation-bar.hidden{display:none}.impersonation-left{align-items:center;gap:10px;display:flex}.impersonation-label{color:var(--nav-gold);letter-spacing:.1em;font-size:8px;font-weight:700}.impersonation-name{font-size:11px;font-weight:650}.impersonation-exit{color:#fff;font:inherit;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff29;border-radius:4px;padding:7px 10px;font-size:10px}.mobile-nav-overlay{top:var(--topbar-height);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:99;background:#00000080;display:none;position:fixed;bottom:0;left:0;right:0}.mobile-nav-overlay.open{display:block}.mobile-nav-panel{top:var(--topbar-height);box-shadow:var(--nav-shadow);z-index:100;background:#102219;border-bottom:1px solid #d4ad432e;padding:12px 16px;display:none;position:fixed;left:0;right:0}.mobile-nav-panel.open{display:block}.mobile-nav-panel .nav-link{justify-content:flex-start;width:100%;margin-bottom:4px;display:flex}@media (width<=1260px){.top-bar,.app-top-bar{gap:16px;padding:0 16px}.command-nav-item,.nav-link,.mega-trigger{padding:0 12px}}@media (width<=1080px){.app-brand-name,.wordmark-main{font-size:14px}.app-command-nav,.primary-navigation{gap:1px;padding:3px 4px}.command-nav-item,.nav-link,.mega-trigger{min-height:32px;padding:0 10px;font-size:10px}}@media (width<=940px){.app-command-nav,.primary-navigation{display:none}.mobile-menu-toggle{display:grid}.app-brand-badge,.wordmark-sub{display:none}}@media (width<=720px){:root{--topbar-height:58px}.top-bar,.app-top-bar{gap:10px;padding:0 10px}.wordmark-logo,.app-brand-icon{object-fit:contain;width:auto;max-width:260px;height:52px}.wordmark-logo-wrap{flex:none;width:auto;height:54px}.app-brand-link,.wordmark{gap:0;padding:0}.app-brand-name,.wordmark-main{font-size:13px}.app-utilities,.account-copy,.user-info-mini,.account-chevron{display:none}.account-control,.user-profile{border-radius:4px;min-height:40px;padding:3px}.account-avatar,.user-avatar{flex-basis:32px;width:32px;height:32px}}@media (width<=480px){.app-brand-name,.wordmark-main{display:none}.app-brand-link,.wordmark{gap:0;padding-right:2px}}.sidebar{background:var(--nav-side-bg,#f8f7f4);border-right:1px solid var(--nav-side-line,#e2ddd4);height:100%;box-shadow:none;padding:16px 12px;overflow:auto}.sidebar::-webkit-scrollbar{width:4px}.sidebar::-webkit-scrollbar-track{background:var(--nav-side-line,#e2ddd4);border-radius:2px}.sidebar::-webkit-scrollbar-thumb{background:var(--nav-side-gold,#c9a44c);border-radius:2px}.logo{color:var(--nav-side-text,#1a1a1a);border-bottom:2px solid var(--nav-side-line,#e2ddd4);align-items:center;gap:10px;margin:4px 4px 12px;padding:4px 8px 12px;display:flex}.logo i{color:var(--nav-side-gold,#c9a44c);font-size:16px}.logo h1{letter-spacing:.3px;text-transform:uppercase;color:var(--nav-side-text,#1a1a1a);font-size:13px;font-weight:700;font-family:var(--nav-font);margin:0}.nav-section{margin:14px 4px}.nav-title{color:var(--nav-side-muted,#8a8578);text-transform:uppercase;letter-spacing:.5px;font-size:9px;font-weight:600;font-family:var(--nav-font);margin:4px 8px 6px}.nav-item{color:var(--nav-side-text,#1a1a1a);cursor:pointer;font-family:var(--nav-font);background:0 0;border:1px solid #0000;border-radius:4px;align-items:center;gap:10px;padding:8px 10px;font-size:12px;font-weight:500;text-decoration:none;transition:all .15s;display:flex;position:relative}.nav-item i{text-align:center;opacity:.6;width:18px;color:var(--nav-side-muted,#8a8578);font-size:14px;transition:all .15s}.nav-item:hover{background:var(--nav-side-gold-soft,#c9a44c0f);border-color:var(--nav-side-line,#e2ddd4);transform:translateY(-1px)}.nav-item:hover i{color:var(--nav-side-gold,#c9a44c);opacity:1}.nav-item.active{background:var(--nav-side-green-soft,#1f6b450f);border-color:var(--nav-side-gold-border,#c9a44c26);border-left:3px solid var(--nav-side-gold,#c9a44c);font-weight:600}.nav-item.active i{color:var(--nav-side-gold,#c9a44c);opacity:1}.nav-badge{background:var(--nav-side-green,#1f6b45);color:#fff;text-align:center;min-width:18px;font-size:9px;font-weight:600;font-family:var(--nav-font);border:1px solid #1f6b4526;border-radius:4px;margin-left:auto;padding:2px 8px}.nav-badge.warning{background:#e8a53a;border-color:#e8a53a26}.nav-badge.danger{background:#b91c1c;border-color:#b91c1c26}.nav-submenu{border-left:2px solid var(--nav-side-line,#e2ddd4);margin-top:2px;margin-left:20px;padding-left:10px}.nav-subitem{color:var(--nav-side-muted,#8a8578);font-size:11px;font-family:var(--nav-font);border:1px solid #0000;border-radius:4px;padding:5px 8px;text-decoration:none;transition:all .15s;display:block}.nav-subitem:hover{background:var(--nav-side-gold-soft,#c9a44c0f);color:var(--nav-side-text,#1a1a1a);border-color:var(--nav-side-line,#e2ddd4)}.nav-subitem.active{background:var(--nav-side-green-soft,#1f6b450f);color:var(--nav-side-text,#1a1a1a);border-color:var(--nav-side-gold-border,#c9a44c26);border-left:2px solid var(--nav-side-gold,#c9a44c);font-weight:500}.nav-link:focus-visible,.mega-trigger:focus-visible,.mega-link:focus-visible,.mobile-menu-toggle:focus-visible,.user-profile:focus-visible,.account-control:focus-visible,.utility-button:focus-visible,.app-brand-link:focus-visible,.wordmark:focus-visible,.nav-item:focus-visible,.nav-subitem:focus-visible{outline:2px solid var(--nav-gold);outline-offset:2px}@media print{.university-header,.app-header,.sidebar{display:none!important}}@media (width<=940px){.top-bar,.app-top-bar{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 10px;display:grid;overflow:hidden}.app-brand,.university-branding{width:100%;min-width:0;overflow:hidden}.app-brand-link,.wordmark{width:100%;min-width:0;max-width:100%;padding:0;overflow:hidden}.wordmark-logo-wrap{justify-content:flex-start;align-items:center;width:100%;min-width:0;height:52px;display:flex;overflow:hidden}.app-brand-icon,.wordmark-logo{object-fit:contain;object-position:left center;flex-shrink:1;width:auto;max-width:min(58vw,300px);height:50px;display:block}.app-header-actions,.user-controls{flex:none;justify-content:flex-end;align-items:center;gap:6px;min-width:max-content;display:flex}.app-utilities{align-items:center;gap:3px;display:flex}.utility-button{flex:0 0 34px;width:34px;height:34px}.account-control,.user-profile{flex:none;max-width:none;min-height:38px;padding:3px}.account-copy,.user-info-mini,.account-chevron{display:none}.account-avatar,.user-avatar{flex:0 0 32px;width:32px;height:32px}.mobile-menu-toggle{flex:0 0 38px;place-items:center;width:38px;height:38px;padding:0;display:grid!important}}@media (width<=520px){.app-brand-icon,.wordmark-logo{max-width:48vw;height:44px}.app-utilities .utility-button{display:none}.account-control,.user-profile{min-height:36px}.mobile-menu-toggle{flex-basis:36px;width:36px;height:36px}}:root{--layout-bg:#f5f3ef;--layout-card:#fff;--layout-line:#e2ddd4;--layout-line-strong:#d5cfc4;--layout-text:#1a1a1a;--layout-muted:#8a8578;--layout-faint:#c4beb3;--layout-green:#1f6b45;--layout-green-hover:#174f34;--layout-green-soft:#1f6b450f;--layout-gold:#c9a44c;--layout-gold-soft:#c9a44c0f;--layout-shadow:0 4px 12px #0000000f;--layout-font:"SF Mono", "JetBrains Mono", monospace}section[data-view]{display:none}section[data-view].active{opacity:1;animation:.25s fadeIn;display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}main#appMain{width:100%;max-width:none;margin-top:var(--topbar-height,56px);background:var(--layout-bg);box-sizing:border-box;flex:1;padding:8px 0 24px}.page-header{border-bottom:2px solid var(--layout-line);margin-bottom:24px;padding-bottom:14px}.page-title{font-family:var(--layout-font);color:var(--layout-text);letter-spacing:-.3px;text-transform:uppercase;margin:0 0 6px;font-size:20px;font-weight:600}.page-subtitle{color:var(--layout-muted);max-width:900px;font-size:13px;font-family:var(--layout-font);margin:0}.dashboard-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;margin-bottom:24px;display:grid}.academic-card{background:var(--layout-card);border:1px solid var(--layout-line);border-radius:4px;height:100%;padding:16px 18px;transition:all .15s}.academic-card:hover{border-color:var(--layout-gold-border);box-shadow:var(--layout-shadow)}.academic-card-header{border-bottom:1px solid var(--layout-line);justify-content:space-between;align-items:flex-start;margin-bottom:14px;padding-bottom:10px;display:flex}.academic-card-title{font-family:var(--layout-font);color:var(--layout-text);text-transform:uppercase;letter-spacing:.3px;margin:0;font-size:13px;font-weight:600}.academic-card-subtitle{color:var(--layout-muted);font-size:11px;font-family:var(--layout-font);margin:3px 0 0}.academic-card-actions{align-items:center;gap:6px;display:flex}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px;display:grid}.metric-card{background:var(--layout-card);border:1px solid var(--layout-line);text-align:center;border-radius:4px;padding:16px 18px;transition:all .15s;position:relative;overflow:hidden}.metric-card:before{content:"";background:var(--layout-gold);opacity:.6;width:100%;height:2px;position:absolute;top:0;left:0}.metric-value{font-family:var(--layout-font);color:var(--layout-text);letter-spacing:-.5px;margin:0 0 6px;font-size:32px;font-weight:700}.metric-label{color:var(--layout-muted);text-transform:uppercase;letter-spacing:.5px;font-size:10px;font-weight:600;font-family:var(--layout-font);margin:0 0 8px}.metric-change{font-size:11px;font-weight:500;font-family:var(--layout-font);justify-content:center;align-items:center;gap:4px;display:flex}.metric-change.positive{color:var(--layout-green)}.metric-change.negative{color:#b91c1c}.charts-grid{grid-template-columns:2fr 1fr;gap:16px;margin-bottom:24px;display:grid}.chart-container{background:var(--layout-card);border:1px solid var(--layout-line);border-radius:4px;padding:16px 18px}.chart-header{justify-content:space-between;align-items:flex-start;margin-bottom:14px;display:flex}.chart-title{font-family:var(--layout-font);color:var(--layout-text);text-transform:uppercase;letter-spacing:.3px;margin:0 0 3px;font-size:13px;font-weight:600}.chart-description{color:var(--layout-muted);max-width:500px;font-size:11px;font-family:var(--layout-font);margin:0}.activity-feed{background:var(--layout-card);border:1px solid var(--layout-line);border-radius:4px;max-height:360px;padding:16px 18px;overflow-y:auto}.activity-feed::-webkit-scrollbar{width:4px}.activity-feed::-webkit-scrollbar-track{background:var(--layout-line);border-radius:2px}.activity-feed::-webkit-scrollbar-thumb{background:var(--layout-gold);border-radius:2px}.activity-title{font-family:var(--layout-font);color:var(--layout-text);text-transform:uppercase;letter-spacing:.3px;margin:0 0 14px;font-size:13px;font-weight:600}.activity-item{border-bottom:1px solid var(--layout-line);gap:10px;padding:12px 0;display:flex}.activity-item:last-child{border-bottom:none;padding-bottom:0}.activity-icon{background:var(--layout-gold-soft);width:32px;height:32px;color:var(--layout-gold);border:1px solid var(--layout-line);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.activity-content{flex:1;min-width:0}.activity-text{color:var(--layout-text);font-size:12px;line-height:1.4;font-family:var(--layout-font);margin:0 0 3px}.activity-time{color:var(--layout-muted);font-size:10px;font-family:var(--layout-font);margin:0}.quick-stats-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px;display:grid}.stat-item{background:var(--layout-card);border:1px solid var(--layout-line);border-radius:4px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.stat-value{font-family:var(--layout-font);color:var(--layout-text);letter-spacing:-.3px;margin:0;font-size:24px;font-weight:700}.stat-label{color:var(--layout-muted);text-transform:uppercase;letter-spacing:.5px;font-size:10px;font-weight:600;font-family:var(--layout-font);margin:0}.stat-subtitle{color:var(--layout-faint);font-size:10px;font-family:var(--layout-font);margin:0}.empty-state{background:var(--layout-card);border:1px solid var(--layout-line);text-align:center;border-radius:4px;padding:32px 20px}.empty-state i{color:var(--layout-faint);margin-bottom:12px;font-size:36px}.empty-state-title{color:var(--layout-text);font-size:16px;font-weight:600;font-family:var(--layout-font);margin:0 0 6px}.empty-state-description{color:var(--layout-muted);max-width:400px;font-size:12px;font-family:var(--layout-font);margin:0 auto}@media (width<=1200px){.charts-grid{grid-template-columns:1fr}.quick-stats-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=900px){main#appMain{padding:16px 12px}.metrics-grid,.quick-stats-grid{grid-template-columns:1fr}.dashboard-grid{gap:12px}.academic-card{padding:14px 16px}.metric-value{font-size:28px}.chart-container,.activity-feed{padding:14px 16px}.page-title{font-size:18px}.page-subtitle{font-size:12px}}@media (width<=680px){.quick-stats-grid{grid-template-columns:1fr 1fr}.charts-grid{grid-template-columns:1fr}.stat-value{font-size:20px}.metric-value{font-size:24px}}@media (width<=480px){main#appMain{padding:12px 8px}.page-title{font-size:16px}.page-subtitle{font-size:11px}.quick-stats-grid{grid-template-columns:1fr}.metric-card,.chart-container,.activity-feed,.academic-card{padding:12px}.metric-value{font-size:22px}.stat-value{font-size:18px}.page-header{margin-bottom:16px;padding-bottom:10px}}@media print{main#appMain{box-shadow:none!important;background:#fff!important;border:1px solid #000!important;padding:20px!important}.academic-card,.metric-card,.chart-container,.activity-feed{break-inside:avoid;page-break-inside:avoid;border-color:#000!important}.activity-feed{max-height:none;overflow:visible}.metric-card:before{background:#000!important}.page-header{border-bottom-color:#000!important}}.academic-card:focus-visible,.metric-card:focus-visible,.stat-item:focus-visible{outline:2px solid var(--layout-gold);outline-offset:2px}@keyframes statSlideIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.metric-card,.stat-item,.academic-card{animation:.2s statSlideIn}.metric-card:nth-child(2),.stat-item:nth-child(2){animation-delay:50ms}.metric-card:nth-child(3),.stat-item:nth-child(3){animation-delay:.1s}.metric-card:nth-child(4),.stat-item:nth-child(4){animation-delay:.15s}section[data-view] .card,section[data-view] .card-content{overflow:visible!important}section[data-view]{background:var(--layout-bg);margin:0;padding:0}section[data-view] .card-content{background:0 0;padding:0}.partial-mount{display:contents}.startup-error{border:1px solid var(--border);background:var(--surface,#fffdf7);max-width:42rem;color:var(--text,#17231b);text-align:center;border-radius:12px;margin:10vh auto;padding:2rem}#historyPreviewWrap{border:1px solid var(--border);background:var(--surface,#fff);border-radius:8px;max-height:360px;padding:8px;overflow-y:auto}.year-block{margin-bottom:16px}.year-block h3{margin:6px 0 8px;font-size:1rem;font-weight:700}.history-table{border-collapse:collapse;width:100%;font-size:.92rem}.history-table th,.history-table td{border-bottom:1px solid var(--border);text-align:left;white-space:nowrap;padding:8px 10px}.history-table th:nth-child(2),.history-table td:nth-child(2){white-space:normal}.year-summary{opacity:.8;margin-top:4px;font-size:.85rem}.theme-toggle-group{gap:10px;margin-top:8px;display:grid}.theme-option{border:1px solid var(--border);cursor:pointer;background:#fffdf7;border-radius:8px;align-items:flex-start;gap:8px;padding:8px 10px;display:flex}.theme-option input{margin-top:3px}body.theme-dark .theme-option{background:#141f36}.theme-label-main{font-size:13px;font-weight:600}.theme-label-sub{color:var(--muted);font-size:12px}:root{--auth-green-950:#031a12;--auth-green-900:#05271b;--auth-green-800:#0a3b28;--auth-green-700:#0e5737;--auth-green-600:#167044;--auth-green-500:#238451;--auth-gold-500:#c9a44c;--auth-gold-400:#d6b25e;--auth-white:#fff;--auth-text:#f7faf8;--auth-muted:#ffffffad;--auth-faint:#ffffff70;--auth-card-bg:#031911eb;--auth-card-border:#c1e2cd33;--auth-field-bg:#041f1599;--auth-field-border:#53b3724d;--auth-shadow:0 16px 48px #0006, 0 4px 12px #0003;--auth-font:"SF Mono", "JetBrains Mono", monospace;--auth-card-width:480px;--auth-card-padding:28px 32px 26px}.auth{z-index:9999;width:100%;height:100dvh;font-family:var(--auth-font);color:var(--auth-text);background:var(--auth-green-950);isolation:isolate;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.auth,.auth *{box-sizing:border-box}.auth-backdrop{z-index:-3;background-color:#0000;background-image:linear-gradient(#02120c80 0%,#02130d99 45%,#010d09d9 100%),linear-gradient(90deg,#00130c66 0%,#00130c14 48%,#00130c59 100%),url(/assets/branding/login-background.png);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;position:fixed;inset:0;transform:scale(1.015)}.auth-backdrop:after{content:"";background:radial-gradient(circle at 50% 34%,#0000 0%,#00000014 38%,#00000080 100%);position:absolute;inset:0}.auth-effects{z-index:-2;pointer-events:none;position:fixed;inset:0;overflow:hidden}.auth-effects:before{content:"";filter:blur(100px);background:#1d824814;border-radius:50%;width:540px;height:540px;position:absolute;top:5%;left:50%;transform:translate(-50%)}.auth-effects:after{content:"";opacity:.05;background-image:linear-gradient(#ffffff26 1px,#0000 1px),linear-gradient(90deg,#ffffff26 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 20% 75%,#0000);mask-image:linear-gradient(#0000,#000 20% 75%,#0000)}.auth-shell{flex-direction:column;justify-content:center;align-items:center;width:min(100%,1180px);height:100dvh;margin:0 auto;padding:20px 24px;display:flex;overflow:hidden}.auth-brand{flex-shrink:0;justify-content:center;width:100%;margin-bottom:14px;animation:.6s both authFadeDown;display:flex}.auth-brand-logo{object-fit:contain;filter:drop-shadow(0 8px 24px #00000059)drop-shadow(0 0 16px #c9a44c0f);width:clamp(180px,24vw,320px);max-height:80px;display:block}.auth-card{width:min(100%, var(--auth-card-width));max-width:560px;max-height:85vh;padding:var(--auth-card-padding);background:var(--auth-card-bg);border:1px solid var(--auth-card-border);box-shadow:var(--auth-shadow);-webkit-backdrop-filter:blur(20px)saturate(120%);border-radius:4px;animation:.6s 80ms both authFadeUp;position:relative;overflow:hidden auto}.auth-card::-webkit-scrollbar{width:4px}.auth-card::-webkit-scrollbar-track{background:#ffffff0d;border-radius:2px}.auth-card::-webkit-scrollbar-thumb{background:var(--auth-gold-400);border-radius:2px}.auth-card:before{content:"";pointer-events:none;background:radial-gradient(circle at 50% 0,#3fa76414,#0000 42%);position:absolute;inset:0}.auth-card-accent{z-index:2;background:linear-gradient(90deg, transparent, var(--auth-gold-500), transparent);height:2px;position:absolute;top:0;left:20%;right:20%;box-shadow:0 0 16px #c9a44c66}.auth-card-head{z-index:1;text-align:center;margin-bottom:20px;position:relative}.auth-heading{flex-direction:column;align-items:center;display:flex}.auth-heading-icon{width:40px;height:40px;color:var(--auth-gold-400);background:#135c3433;border:1px solid #57bb7740;border-radius:4px;place-items:center;margin-bottom:10px;display:grid}.auth-title{color:var(--auth-white);letter-spacing:-.3px;font-size:clamp(20px,2.4vw,28px);font-weight:700;line-height:1.1;font-family:var(--auth-font);text-transform:uppercase;margin:0}.auth-subtitle{max-width:320px;color:var(--auth-muted);font-size:12px;line-height:1.5;font-family:var(--auth-font);margin:6px 0 0}.auth-panel{z-index:1;display:none;position:relative}.auth-panel.is-active{animation:.3s both authPanelIn;display:block}.auth-field{margin-bottom:14px;display:block}.auth-label{color:#ffffffd9;text-transform:uppercase;letter-spacing:.5px;font-size:10px;font-weight:600;font-family:var(--auth-font);margin-bottom:4px;display:block}.auth-input-wrap{background:var(--auth-field-bg);border:1px solid var(--auth-field-border);border-radius:4px;align-items:center;min-height:44px;transition:all .2s;display:flex;position:relative}.auth-input-wrap:focus-within{background:#042719e6;border-color:#5bdd84b3;transform:translateY(-1px);box-shadow:0 0 0 3px #3dbc651a,0 8px 24px #0000001a}.auth-input-wrap>i{color:#5ddd86b3;pointer-events:none;font-size:14px;position:absolute;left:14px}.auth-input{width:100%;height:42px;color:var(--auth-white);font-family:var(--auth-font);background:0 0;border:0;outline:0;padding:0 42px;font-size:13px}.auth-input::placeholder{color:#ffffff4d;font-weight:400}.auth-eye{color:#ffffff80;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;place-items:center;width:30px;height:30px;transition:all .2s;display:grid;position:absolute;right:8px}.auth-eye:hover{color:var(--auth-white);background:#ffffff0f;border-color:#ffffff0f}.auth-meta{justify-content:space-between;align-items:center;gap:12px;margin:2px 0 18px;display:flex}.auth-check{color:#ffffffb3;cursor:pointer;font-size:12px;font-family:var(--auth-font);align-items:center;gap:6px;display:inline-flex}.auth-check input{width:14px;height:14px;accent-color:var(--auth-green-500);cursor:pointer}.auth-link-btn{color:#5cdb84;font-family:var(--auth-font);cursor:pointer;background:0 0;border:0;border-bottom:1px solid #0000;padding:0;font-size:12px;font-weight:500;transition:color .2s}.auth-link-btn:hover{color:#8beaab;border-bottom-color:#5bdd844d}.auth-btn{width:100%;min-height:44px;font-family:var(--auth-font);text-transform:uppercase;letter-spacing:.3px;cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:8px;font-size:11px;font-weight:600;transition:all .2s;display:inline-flex}.auth-btn-primary{color:var(--auth-white);background:linear-gradient(135deg,#1f6b45,#2a7a52);border:1px solid #4cba6d80;box-shadow:0 8px 24px #0b5c2e33,inset 0 1px #ffffff0f}.auth-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#2a7a52,#358a5f);transform:translateY(-2px);box-shadow:0 12px 32px #0b5c2e4d,inset 0 1px #ffffff14}.auth-btn-primary:active{transform:translateY(0)}.auth-btn-primary:disabled{opacity:.5;cursor:not-allowed}.auth-btn-secondary{color:#ffffffb3;background:#ffffff0a;border:1px solid #ffffff1f;margin-top:10px}.auth-btn-secondary:hover{color:var(--auth-white);background:#ffffff14;border-color:#fff3;transform:translateY(-1px)}.auth-spinner{border:2px solid #ffffff40;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite authSpin;display:none}.auth-btn.is-loading .auth-spinner{display:inline-block}.auth-btn.is-loading .auth-btn-icon{display:none}.auth-status{color:#fffc;border:1px solid #c9a44c26;border-left:3px solid var(--auth-gold-500);font-family:var(--auth-font);background:#c9a44c0f;border-radius:4px;margin-top:12px;padding:8px 12px;font-size:11px;line-height:1.5;display:none}.auth-status:not(:empty){display:block}.auth-status.error{color:#f87171;background:#b91c1c0f;border-color:#b91c1c26}.auth-status.success{border-left-color:var(--auth-green-500);color:#6ee7b7;background:#1f6b450f;border-color:#1f6b4526}.auth-social-divider{z-index:1;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin:18px 0 14px;display:grid;position:relative}.auth-social-divider span{background:#ffffff1a;height:1px}.auth-social-divider p{color:#fff6;text-transform:uppercase;letter-spacing:.5px;font-size:9px;font-weight:600;font-family:var(--auth-font);margin:0}.auth-social-row{z-index:1;position:relative}.auth-social-btn{color:#1a1a1a;width:100%;min-height:44px;font-family:var(--auth-font);cursor:pointer;background:#fff;border:1px solid #fffc;border-radius:4px;justify-content:center;align-items:center;gap:8px;font-size:12px;font-weight:500;transition:all .2s;display:inline-flex;box-shadow:0 8px 20px #0000001f}.auth-social-btn:hover{background:#f8faf9;transform:translateY(-2px);box-shadow:0 12px 28px #0000002e}.auth-social-btn i{color:#4285f4;font-size:16px}.auth-switch{z-index:1;color:#fff9;font-family:var(--auth-font);flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin-top:16px;font-size:12px;display:flex;position:relative}.auth-switch button{color:#5cdb84;font-family:var(--auth-font);cursor:pointer;background:0 0;border:0;border-bottom:1px solid #0000;padding:0;font-weight:600;transition:color .2s}.auth-switch button:hover{color:#8beaab;border-bottom-color:#5bdd844d}.auth-signup-switch{display:none}.auth-card:has(#signupForm.is-active) .auth-signin-switch{display:none}.auth-card:has(#signupForm.is-active) .auth-signup-switch{display:flex}.auth-feature-strip{flex-shrink:0;grid-template-columns:repeat(3,1fr);gap:10px;width:min(100%,880px);margin-top:14px;animation:.6s .18s both authFadeUp;display:grid}@media (height<=700px){.auth-feature-strip{display:none!important}}.auth-feature{-webkit-backdrop-filter:blur(12px);background:#031d1366;border:1px solid #74cd8f14;border-radius:4px;align-items:flex-start;gap:10px;min-width:0;padding:10px 12px;transition:all .2s;display:flex}.auth-feature:hover{background:#031d1380;border-color:#74cd8f26}.auth-feature-icon{width:32px;height:32px;color:var(--auth-gold-400);background:#16704426;border:1px solid #46bf6b33;border-radius:4px;flex:none;place-items:center;display:grid}.auth-feature strong{color:#fff;font-size:11px;font-weight:600;font-family:var(--auth-font);margin-bottom:2px;display:block}.auth-feature small{color:#ffffff80;font-size:10px;line-height:1.4;font-family:var(--auth-font);display:block}.auth-legal{color:#ffffff59;font-family:var(--auth-font);flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;margin-top:14px;padding-bottom:2px;font-size:10px;display:flex}.auth-legal button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #0000;padding:0;transition:color .2s}.auth-legal button:hover{color:#fff9;border-bottom-color:#ffffff1a}.auth button:focus-visible,.auth input:focus-visible{outline:2px solid var(--auth-gold-400);outline-offset:2px}@keyframes authFadeDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes authFadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes authPanelIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (height<=820px) and (width>=761px){.auth-shell{padding:12px 20px}.auth-brand{margin-bottom:8px}.auth-brand-logo{width:180px;max-height:56px}.auth-card{max-height:80vh;padding:16px 22px 14px}.auth-heading-icon{width:34px;height:34px;margin-bottom:6px}.auth-card-head{margin-bottom:14px}.auth-field{margin-bottom:10px}.auth-input-wrap,.auth-input{height:38px;min-height:38px}.auth-btn{min-height:38px}.auth-social-divider{margin:12px 0 10px}.auth-social-btn{min-height:38px}.auth-switch,.auth-feature-strip{margin-top:10px}.auth-feature{padding:8px 10px}.auth-legal{margin-top:8px}}@media (width<=900px){.auth-shell{padding-left:18px;padding-right:18px}.auth-feature-strip{width:min(100%,650px)}.auth-feature{padding:10px 12px}.auth-feature small{display:none}}@media (width<=680px){.auth{width:100%;height:auto;min-height:100svh;position:relative;overflow:hidden visible}.auth-shell{width:100%!important;height:auto!important;min-height:100svh!important;padding:16px 16px max(16px, env(safe-area-inset-bottom))!important;flex-direction:column!important;justify-content:flex-start!important;align-items:center!important;display:flex!important;overflow:visible!important}.auth-brand{flex-shrink:0!important;margin-bottom:8px!important}.auth-brand-logo{width:min(55vw,180px)!important;max-height:56px!important}.auth-card{box-sizing:border-box!important;border-radius:4px!important;flex-shrink:0!important;width:100%!important;max-width:400px!important;height:auto!important;max-height:none!important;margin:0 auto!important;padding:18px 14px 16px!important;position:relative!important;overflow:hidden visible!important}.auth-card::-webkit-scrollbar{width:3px}.auth-card::-webkit-scrollbar-thumb{background:var(--auth-gold-400);border-radius:2px}.auth-card-accent{pointer-events:none}.auth-card-head{margin-bottom:14px!important}.auth-heading-icon{width:34px!important;height:34px!important;margin-bottom:8px!important}.auth-title{font-size:20px!important}.auth-subtitle{max-width:260px!important;font-size:11px!important}.auth-field{margin-bottom:12px!important}.auth-label{font-size:9px!important}.auth-input-wrap{min-height:40px!important}.auth-input{height:38px!important;padding-left:34px!important;padding-right:36px!important;font-size:12px!important}.auth-input-wrap>i{font-size:12px!important;left:10px!important}.auth-eye{width:26px!important;height:26px!important;font-size:12px!important;right:4px!important}.auth-meta{flex-wrap:wrap!important;gap:6px!important;margin:0 0 14px!important}.auth-check,.auth-link-btn{font-size:11px!important}.auth-btn{min-height:40px!important;font-size:10px!important}.auth-status{margin-top:10px!important;padding:6px 10px!important;font-size:10px!important}.auth-social-divider{margin:14px 0 10px!important}.auth-social-divider p{font-size:8px!important}.auth-social-btn{min-height:40px!important;font-size:11px!important}.auth-switch{margin-top:14px!important;font-size:11px!important}.auth-feature-strip{display:none!important}.auth-legal{gap:4px 10px!important;margin-top:10px!important;font-size:9px!important}}@media (width<=390px){.auth-card{max-height:none!important;padding:14px 10px 12px!important}.auth-title{font-size:18px!important}.auth-heading-icon{width:30px!important;height:30px!important}.auth-input{height:34px!important;padding-left:30px!important;padding-right:32px!important;font-size:11px!important}.auth-input-wrap{min-height:34px!important}.auth-input-wrap>i{font-size:11px!important;left:8px!important}.auth-eye{width:24px!important;height:24px!important;font-size:10px!important}.auth-btn{min-height:36px!important;font-size:9px!important}.auth-social-btn{min-height:36px!important;font-size:10px!important}.auth-meta{flex-direction:column!important;align-items:flex-start!important;gap:4px!important}.auth-link-btn{align-self:flex-start!important}.auth-switch{flex-direction:column!important;gap:2px!important;font-size:10px!important}.auth-legal{gap:4px 8px!important;font-size:8px!important}}@media (width<=360px){.auth-card{max-height:65vh!important;padding:12px 8px 10px!important}.auth-title{font-size:16px!important}.auth-subtitle{font-size:10px!important}.auth-input{height:32px!important;padding-left:28px!important;padding-right:30px!important;font-size:10px!important}.auth-input-wrap{min-height:32px!important}.auth-btn{min-height:34px!important;font-size:8px!important}.auth-social-btn{min-height:34px!important;font-size:9px!important}}@media (prefers-reduced-motion:reduce){.auth *,.auth :before,.auth :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{.auth{background:#fff!important;position:static!important}.auth-backdrop,.auth-effects{display:none!important}.auth-card{box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:#fff!important;border:1px solid #000!important}.auth-btn,.auth-social-row,.auth-social-divider,.auth-feature-strip{display:none!important}.auth-brand-logo{filter:none!important}.auth-title{color:#000!important}.auth-subtitle{color:#666!important}}.auth-verification{align-items:flex-start;position:fixed;overflow:hidden auto}.auth-verification .auth-backdrop{filter:saturate(.78);background-color:#0000;background-image:linear-gradient(105deg,#02140df7 0%,#032216eb 48%,#02130df5 100%),url(/assets/branding/logo-primary.png);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box}.auth-verification .auth-backdrop:after{background:radial-gradient(circle at 18% 22%,#c9a44c21,#0000 35%),radial-gradient(circle at 82% 78%,#23845124,#0000 35%)}.auth-verification .auth-shell{grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr);align-items:center;gap:clamp(40px,7vw,96px);width:min(100%,1240px);height:auto;min-height:100vh;padding:48px 32px 32px;display:grid;overflow:visible}.auth-purpose{width:100%;max-width:680px;color:var(--auth-text);animation:.6s both authFadeUp}.auth-purpose-logo{object-fit:contain;object-position:left center;border-radius:3px;width:clamp(180px,25vw,300px);max-height:122px;margin:0 0 26px;display:block}.auth-eyebrow{color:var(--auth-gold-400);letter-spacing:.16em;text-transform:uppercase;margin:0 0 12px;font-size:11px;font-weight:700}.auth-purpose h1{color:#fff;letter-spacing:-.035em;max-width:650px;margin:0;font-family:"Source Serif 4",Georgia,serif;font-size:clamp(38px,5vw,66px);font-weight:700;line-height:1.04}.auth-purpose-lead{color:#fffc;max-width:660px;margin:20px 0 0;font-family:Inter,system-ui,sans-serif;font-size:16px;line-height:1.72}.auth-purpose-features{gap:12px;margin:28px 0 0;padding:0;list-style:none;display:grid}.auth-purpose-features li{color:#ffffffab;grid-template-columns:36px 1fr;align-items:center;gap:12px;font-family:Inter,system-ui,sans-serif;font-size:13px;line-height:1.45;display:grid}.auth-purpose-features li>i{width:36px;height:36px;color:var(--auth-gold-400);background:#c9a44c1a;border:1px solid #c9a44c38;border-radius:4px;place-items:center;display:grid}.auth-purpose-features strong{color:#fff;margin-bottom:1px;font-size:13px;display:block}.auth-google-disclosure{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#031d13b8;border:1px solid #74cd8f33;border-radius:5px;grid-template-columns:34px 1fr;gap:14px;margin-top:28px;padding:18px;display:grid}.auth-google-disclosure-icon{color:#4285f4;background:#fff;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.auth-google-disclosure h2{color:#fff;margin:1px 0 6px;font-family:Inter,system-ui,sans-serif;font-size:14px;font-weight:700}.auth-google-disclosure p{color:#ffffffa8;margin:0;font-family:Inter,system-ui,sans-serif;font-size:12px;line-height:1.58}.auth-purpose-legal{color:#ffffff8c;margin:16px 0 0;font-family:Inter,system-ui,sans-serif;font-size:12px;line-height:1.5}.auth-purpose-legal a,.auth-verification .auth-legal a{color:#8beaab;text-underline-offset:3px;text-decoration:underline}.auth-access{justify-self:end;width:100%;max-width:480px}.auth-verification .auth-card{width:100%;max-height:none}.auth-verification .auth-legal a{font:inherit}@media (width<=900px){.auth-verification .auth-shell{grid-template-columns:1fr;gap:32px;padding:32px 20px 28px}.auth-purpose,.auth-access{justify-self:center;max-width:680px}.auth-purpose-logo{width:220px}.auth-purpose h1{font-size:clamp(36px,9vw,54px)}}@media (width<=520px){.auth-verification .auth-shell{padding:24px 14px}.auth-purpose-logo{width:190px;margin-bottom:20px}.auth-purpose h1{font-size:36px}.auth-purpose-lead{font-size:14px}.auth-google-disclosure{grid-template-columns:1fr;padding:14px}.auth-verification .auth-card{max-height:none!important}}:root{--prof-bg:#f5f3ef;--prof-card:#fff;--prof-line:#e2ddd4;--prof-line-strong:#d5cfc4;--prof-text:#1a1a1a;--prof-muted:#8a8578;--prof-faint:#c4beb3;--prof-green:#1f6b45;--prof-green-hover:#174f34;--prof-green-soft:#1f6b450f;--prof-gold:#c9a44c;--prof-gold-soft:#c9a44c0f;--prof-shadow:0 4px 12px #0000000f;--prof-font:"SF Mono", "JetBrains Mono", monospace}section[data-view=profile]{background:var(--prof-bg)}section[data-view=profile] .dashboard-grid-view{grid-template-columns:1fr;gap:0;max-width:100%;display:grid;overflow-x:hidden}section[data-view=profile] .academic-card{box-sizing:border-box;background:var(--prof-card);border:1px solid var(--prof-line);width:100%;min-width:0;max-width:100%;box-shadow:var(--prof-shadow);border-radius:4px;transition:all .15s;overflow:hidden}section[data-view=profile] .academic-card:hover{border-color:var(--prof-gold-border)}section[data-view=profile] .profile-card{box-sizing:border-box;width:100%;min-width:0;max-width:100%}section[data-view=profile] input,section[data-view=profile] textarea{box-sizing:border-box;max-width:100%}section[data-view=profile] *{min-width:0}section[data-view=profile] .academic-card-header{border-bottom:2px solid var(--prof-line);background:var(--prof-gold-soft);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:16px 20px 12px;display:flex}section[data-view=profile] .academic-card-title{letter-spacing:.3px;color:var(--prof-text);font-size:15px;font-weight:600;font-family:var(--prof-font);text-transform:uppercase;margin:0}section[data-view=profile] .academic-card-subtitle{color:var(--prof-muted);font-size:12px;font-family:var(--prof-font);margin:3px 0 0}section[data-view=profile] .academic-card-actions{align-items:center;gap:8px;display:flex}#profileContent{padding:18px 20px 20px}#profileContent .empty-state{border:2px dashed var(--prof-line);background:var(--prof-card);text-align:center;color:var(--prof-muted);border-radius:4px;padding:40px 20px}#profileContent .empty-state i{color:var(--prof-gold);opacity:.4;margin-bottom:10px;font-size:32px;display:block}#profileContent .empty-state p{font-family:var(--prof-font);margin:0;font-size:13px}.profile-grid{grid-template-columns:1fr;gap:0;display:grid}.profile-card{box-shadow:none;background:0 0;border:none;border-radius:4px;padding:0}.profile-row{border-bottom:1px solid var(--prof-line);grid-template-columns:150px 1fr;align-items:center;gap:14px;padding:12px 0;display:grid}.profile-row:last-of-type{border-bottom:none}.profile-row.two{grid-template-columns:1fr 1fr;gap:14px;padding-top:14px}.profile-row.two>div{border:1px solid var(--prof-line);background:var(--prof-gold-soft);border-radius:4px;padding:12px 14px}.profile-label{letter-spacing:.5px;text-transform:uppercase;color:var(--prof-muted);font-size:11px;font-weight:600;font-family:var(--prof-font)}.profile-value{color:var(--prof-text);word-break:break-word;font-size:14px;font-family:var(--prof-font);font-weight:500}#profileContent .neo-input{border:1px solid var(--prof-line);background:var(--prof-card);width:100%;color:var(--prof-text);font-family:var(--prof-font);border-radius:4px;outline:none;min-height:40px;padding:8px 14px;font-size:14px;transition:all .15s}#profileContent .neo-input::placeholder{color:var(--prof-faint)}#profileContent .neo-input:focus{border-color:var(--prof-gold);background:var(--prof-card);box-shadow:0 0 0 3px #c9a44c1f}.profile-actions{border-top:2px solid var(--prof-line);flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:10px;padding-top:14px;display:flex}#profileContent .btn-primary,#profileContent .btn-secondary{letter-spacing:.3px;text-transform:uppercase;min-height:38px;font-size:11px;font-weight:500;font-family:var(--prof-font);cursor:pointer;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;gap:8px;padding:8px 20px;transition:all .15s;display:inline-flex}#profileContent .btn-primary{background:var(--prof-green);border-color:var(--prof-green);color:#fff}#profileContent .btn-primary:hover{background:var(--prof-green-hover);border-color:var(--prof-green-hover);transform:translateY(-1px);box-shadow:0 4px 12px #1f6b4533}#profileContent .btn-secondary{border-color:var(--prof-line);color:var(--prof-text);background:0 0}#profileContent .btn-secondary:hover{background:var(--prof-gold-soft);border-color:var(--prof-gold-border);transform:translateY(-1px)}.profile-meta{border-top:1px solid var(--prof-line);color:var(--prof-muted);font-size:11px;font-family:var(--prof-font);grid-template-columns:1fr 1fr;gap:10px;margin-top:12px;padding-top:12px;display:grid}.text-line-through{opacity:.65;text-decoration:line-through}#accountManagementContent{padding:18px 20px 20px}#accountManagementContent .account-management-grid{gap:12px;display:grid}#accountManagementContent .account-panel{border:none;border-bottom:1px solid var(--prof-line);box-shadow:none;background:0 0;border-radius:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 0;display:grid}#accountManagementContent .account-panel:last-child{border-bottom:none}#accountManagementContent .account-panel:hover{border-color:#0000}#accountManagementContent .account-panel__icon{background:var(--prof-green-soft);width:40px;height:40px;color:var(--prof-green);border:1px solid #1f6b4514;border-radius:4px;flex-shrink:0;place-items:center;font-size:16px;display:grid}#accountManagementContent .account-panel--danger .account-panel__icon{color:#b91c1c;background:#b91c1c14;border-color:#b91c1c1a}#accountManagementContent .account-panel h3{color:var(--prof-text);font-size:14px;font-weight:600;font-family:var(--prof-font);text-transform:uppercase;letter-spacing:.3px;margin:0 0 3px}#accountManagementContent .account-panel p{color:var(--prof-muted);font-size:13px;line-height:1.5;font-family:var(--prof-font);margin:0}#accountManagementContent .account-panel p strong{color:var(--prof-text)}#accountManagementContent .account-status{text-transform:uppercase;letter-spacing:.3px;font-size:10px;font-weight:600;font-family:var(--prof-font);border:1px solid #0000;border-radius:4px;flex-shrink:0;padding:4px 14px}#accountManagementContent .account-status--active{background:var(--prof-green-soft);color:var(--prof-green);border-color:#1f6b4526}#accountManagementContent .account-status--scheduled_for_deletion{color:#b91c1c;background:#b91c1c14;border-color:#b91c1c26}#accountManagementContent .btn-danger{color:#fff;min-height:38px;font-family:var(--prof-font);text-transform:uppercase;letter-spacing:.3px;cursor:pointer;background:#b91c1c;border:1px solid #b91c1c;border-radius:4px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:11px;font-weight:500;transition:all .15s;display:inline-flex}#accountManagementContent .btn-danger:hover:not(:disabled){background:#7f1d1d;border-color:#7f1d1d;transform:translateY(-1px);box-shadow:0 4px 12px #b91c1c33}#accountManagementContent .btn-danger:disabled{opacity:.5;cursor:not-allowed}#accountManagementContent .account-deletion-notice{color:#b91c1c;font-family:var(--prof-font);background:#b91c1c14;border-left:3px solid #b91c1c;border-radius:4px;margin-top:8px;padding:8px 12px;font-size:12px;line-height:1.5}@media (width<=820px){#profileContent,#accountManagementContent{padding:14px 16px 16px}.profile-row{grid-template-columns:1fr;gap:6px;padding:10px 0}.profile-row.two{grid-template-columns:1fr}#accountManagementContent .account-panel{grid-template-columns:auto 1fr;gap:10px;padding:12px 0}#accountManagementContent .account-panel>:last-child{grid-column:1/-1;width:100%}.profile-actions{justify-content:stretch}#profileContent .btn-primary,#profileContent .btn-secondary,#accountManagementContent .btn-danger{justify-content:center;width:100%;min-width:0}.profile-meta{grid-template-columns:1fr}.profile-label{font-size:10px}.profile-value{font-size:13px}#profileContent .neo-input{min-height:36px;padding:6px 12px;font-size:13px}}@media (width<=480px){section[data-view=profile] .academic-card-header{flex-direction:column;align-items:flex-start;padding:12px 14px 10px}section[data-view=profile] .academic-card-title{font-size:13px}section[data-view=profile] .academic-card-subtitle{font-size:11px}#profileContent,#accountManagementContent{padding:12px 14px 14px}#profileContent .btn-primary,#profileContent .btn-secondary,#accountManagementContent .btn-danger{min-height:34px;padding:6px 16px;font-size:10px}#accountManagementContent .account-panel h3{font-size:13px}#accountManagementContent .account-panel p{font-size:12px}#accountManagementContent .account-panel__icon{width:36px;height:36px;font-size:14px}.profile-meta{font-size:10px}}#profileContent .btn-primary:focus-visible,#profileContent .btn-secondary:focus-visible,#profileContent .neo-input:focus-visible,#accountManagementContent .btn-danger:focus-visible{outline:2px solid var(--prof-gold);outline-offset:2px}@keyframes profileSlideIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.profile-row,#accountManagementContent .account-panel{animation:.2s profileSlideIn}.profile-row:nth-child(2),#accountManagementContent .account-panel:nth-child(2){animation-delay:50ms}.profile-row:nth-child(3),#accountManagementContent .account-panel:nth-child(3){animation-delay:.1s}@media print{section[data-view=profile] .academic-card{box-shadow:none!important;border:1px solid #000!important}.profile-actions,#accountManagementContent .btn-danger{display:none!important}#profileContent .neo-input{border:1px solid #000!important}#accountManagementContent .account-panel{border-bottom:1px solid #000!important}}section[data-view=settings]{max-width:1180px;margin:0 auto}.settings-layout{grid-template-columns:220px minmax(0,1fr);gap:24px;display:grid}.settings-nav{flex-direction:column;align-self:start;gap:6px;display:flex;position:sticky;top:90px}.settings-nav button{color:var(--color-text-secondary);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:12px}.settings-nav button i{width:24px}.settings-nav button.is-active{background:var(--color-primary-light);color:var(--color-primary);font-weight:700}.settings-content{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:12px;padding:26px}.settings-panel{gap:18px;display:none}.settings-panel.is-active{display:grid}.settings-panel h2,.settings-panel p{margin:0}.settings-panel label{gap:7px;font-weight:650;display:grid}.settings-panel input,.settings-panel select{border:1px solid var(--color-border);background:var(--color-bg-surface);min-height:42px;color:var(--color-text-primary);border-radius:7px;padding:8px 10px}.settings-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.settings-check{grid-template-columns:auto 1fr;align-items:center;display:flex!important}.settings-check input{min-height:auto}.settings-choice-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.settings-choice-grid label{border:1px solid var(--color-border);border-radius:8px;align-items:center;padding:14px;display:flex}.settings-choice-list{border:1px solid var(--color-border);border-radius:9px;grid-template-columns:1fr 1fr;gap:12px;padding:16px;display:grid}.settings-note{color:var(--color-text-tertiary);font-size:12px}.settings-calendar-list{border:1px solid var(--color-border);border-radius:9px;gap:10px;padding:16px;display:grid}.settings-calendar-list legend{padding:0 6px;font-weight:700}.settings-calendar-dot{border-radius:50%;flex:none;width:11px;height:11px}.settings-security-card,.settings-security-heading,.settings-session-list article,.settings-activity-list article{justify-content:space-between;align-items:center;gap:14px;display:flex}.settings-security-card{border:1px solid var(--color-border);border-radius:9px;padding:16px}.settings-security-card p,.settings-session-list p,.settings-activity-list p{color:var(--color-text-tertiary);margin-top:4px;font-size:12px}.settings-security-heading{margin-top:12px}.settings-session-list,.settings-activity-list{border:1px solid var(--color-border);border-radius:9px;display:grid;overflow:hidden}.settings-session-list article,.settings-activity-list article{border-bottom:1px solid var(--color-border-light);padding:14px 16px}.settings-session-list article:last-child,.settings-activity-list article:last-child{border-bottom:0}.settings-activity-list article{justify-content:flex-start}.settings-current-session{background:var(--color-primary-light);color:var(--color-primary);border-radius:999px;padding:4px 9px;font-size:11px;font-weight:750}.settings-mfa-overlay{z-index:10000;background:#020617ad;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.settings-mfa-dialog{background:var(--color-bg-surface);width:min(420px,100%);color:var(--color-text-primary);border-radius:12px;gap:15px;padding:26px;display:grid;position:relative;box-shadow:0 25px 70px #00000059}.settings-mfa-dialog img{background:#fff;border-radius:8px;width:210px;max-width:100%;margin:0 auto;padding:8px}.settings-mfa-dialog label{gap:7px;font-weight:700;display:grid}.settings-mfa-dialog input{border:1px solid var(--color-border);letter-spacing:.3em;text-align:center;border-radius:7px;min-height:44px;padding:8px 12px;font-size:18px}.settings-mfa-close{color:inherit;cursor:pointer;background:0 0;border:0;font-size:26px;position:absolute;top:10px;right:12px}.settings-integration{border:1px solid var(--color-border);border-radius:9px;justify-content:space-between;align-items:center;gap:16px;padding:18px;display:flex}.settings-integration p{margin-top:5px}.settings-savebar{border-top:1px solid var(--color-border);justify-content:flex-end;align-items:center;gap:12px;margin-top:26px;padding-top:20px;display:flex}.density-compact .card-content{padding:12px}.reduce-motion *,.reduce-motion :before,.reduce-motion :after{transition-duration:.01ms!important;animation-duration:.01ms!important}@media (width<=760px){.settings-layout{grid-template-columns:1fr}.settings-nav{flex-direction:row;position:static;overflow-x:auto}.settings-nav button{white-space:nowrap}.settings-row,.settings-choice-grid,.settings-choice-list{grid-template-columns:1fr}.settings-integration{flex-direction:column;align-items:flex-start}}section[data-view=classes]{background:#f5f3ef;border-radius:0;margin:0;padding:0}section[data-view=classes] .card-content{background:0 0;padding:0}.classes-header{border-bottom:2px solid #e2ddd4;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding:0 0 16px;display:flex}.classes-header-left h2{letter-spacing:-.3px;color:#1a1a1a;text-transform:uppercase;margin:0;font-family:SF Mono,JetBrains Mono,monospace;font-size:20px;font-weight:600}.classes-header-left p{color:#8a8578;margin:4px 0 0;font-family:SF Mono,monospace;font-size:12px}.classes-header-right{align-items:center;gap:12px;display:flex}#classesContainer{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:16px;width:100%;display:grid;position:relative;overflow:visible}.class-item{min-width:0;box-shadow:none;z-index:1;isolation:isolate;background:#fff;border:1px solid #e2ddd4;border-radius:8px;transition:all .15s;display:flex;position:relative;overflow:visible}.class-item:hover{border-color:#c4beb3;transform:translateY(-2px);box-shadow:0 4px 12px #0000000f}.class-item.class-menu-open{z-index:50}.class-shell{flex-direction:column;gap:8px;width:100%;padding:16px;display:flex;position:relative}.class-rail{background:#c4beb3;border-radius:0;width:3px;position:absolute;top:0;bottom:0;left:0}.class-tone-excellent .class-rail{background:#4a7c59}.class-tone-good .class-rail{background:#6b8c5c}.class-tone-watch .class-rail{background:#e8a53a}.class-tone-risk .class-rail{background:#d95550}.class-header.class-header-compact{flex-direction:column;gap:6px;display:flex}.class-title-row.class-title-row-compact{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.class-title-wrap{min-width:0}.class-title{color:#1a1a1a;letter-spacing:-.02em;word-break:break-word;margin:0;font-family:SF Mono,monospace;font-size:15px;font-weight:600;line-height:1.3}.class-subtitle{color:#8a8578;margin-top:2px;font-family:SF Mono,monospace;font-size:11px;font-weight:400;line-height:1.35}.class-header-badges{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.class-status-badge{text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;border:none;border-radius:4px;align-items:center;gap:5px;min-height:20px;padding:0 8px;font-family:SF Mono,monospace;font-size:9px;font-weight:600;display:inline-flex}.class-status-dot{background:currentColor;border-radius:50%;width:5px;height:5px}.class-status-excellent{color:#2d6a4f;background:#e8f3ea}.class-status-good{color:#3d6b4a;background:#edf3ec}.class-status-watch{color:#b45309;background:#fef3e2}.class-status-risk{color:#b91c1c;background:#fee9e8}.class-grade-chip{color:#1a1a1a;white-space:nowrap;background:#fff;border:1px solid #e2ddd4;border-radius:4px;align-items:center;gap:5px;min-height:20px;padding:0 8px;font-family:SF Mono,monospace;font-size:9px;font-weight:700;display:inline-flex}.class-grade-label{color:#8a8578;font-weight:400}.class-grade-excellent{color:#2d6a4f;background:#e8f3ea;border-color:#e8f3ea}.class-grade-good{color:#3d6b4a;background:#edf3ec;border-color:#edf3ec}.class-grade-watch{color:#b45309;background:#fef3e2;border-color:#fef3e2}.class-grade-risk{color:#b91c1c;background:#fee9e8;border-color:#fee9e8}.class-grade-muted{color:#8a8578;background:#f0ede8;border-color:#f0ede8}.class-progress-strip{flex-direction:column;gap:4px;display:flex}.class-progress-strip-text{color:#8a8578;font-family:SF Mono,monospace;font-size:10px;font-weight:400}.class-main.class-main-compact{flex-direction:column;gap:8px;min-width:0;display:flex}.class-meta-stack{flex-direction:column;gap:6px;display:flex}.class-meta-line{color:#8a8578;align-items:center;gap:8px;min-width:0;font-family:SF Mono,monospace;font-size:12px;line-height:1.35;display:flex}.class-meta-line i{color:#8a8578;text-align:center;flex:0 0 14px;width:14px;font-size:11px}.class-meta-line span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.progress-bar{background:#e6e2da;border:none;border-radius:2px;width:100%;height:4px;position:relative;overflow:hidden}.progress-fill{border-radius:2px;width:50%;height:100%;transition:width .35s;position:relative}.progress-fill:after{content:"";background:linear-gradient(90deg,#ffffff0d,#ffffff2e,#ffffff0d);position:absolute;inset:0}.progress-bar-excellent .progress-fill{background:#4a7c59}.progress-bar-good .progress-fill{background:#6b8c5c}.progress-bar-watch .progress-fill{background:#e8a53a}.progress-bar-risk .progress-fill{background:#d95550}.class-bottom-row.class-bottom-row-compact{border-top:1px solid #eeebe6;justify-content:flex-end;align-items:center;gap:12px;padding-top:8px;display:flex}.class-actions{justify-content:space-between;align-items:center;gap:6px;width:100%;display:flex;position:relative;overflow:visible}.class-actions button{appearance:none;color:#1a1a1a;cursor:pointer;background:#fff;border:1px solid #e2ddd4;font-family:SF Mono,monospace;transition:all .15s}.class-actions button:hover{background:#faf8f5;border-color:#c4beb3;transform:translateY(-1px)}.btn-notes,.btn-assignments,.btn-graduate{min-height:32px;box-shadow:none;white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:11px;font-weight:500;display:inline-flex}.btn-notes{color:#5a5548;background:#faf8f5;border-color:#e2ddd4;flex:1 1 0}.btn-notes:hover{background:#f0ede8;border-color:#c4beb3}.btn-assignments{color:#1a1a1a;background:#fff;border-color:#e2ddd4;flex:1 1 0}.btn-assignments:hover{background:#faf8f5;border-color:#c4beb3}.btn-graduate{color:#1a1a1a;background:#fff;border-color:#e2ddd4;flex:none}.btn-graduate:hover{color:#2d6a4f;background:#edf3ec;border-color:#6b8c5c}.class-menu{z-index:60;position:relative;overflow:visible}.class-menu-trigger{width:32px;height:32px;box-shadow:none;color:#8a8578;background:#fff;border:1px solid #e2ddd4;border-radius:4px;justify-content:center;align-items:center;display:inline-flex}.class-menu-trigger i{font-size:12px}.class-menu-trigger:hover{color:#1a1a1a;background:#faf8f5;border-color:#c4beb3}.class-menu-dropdown{z-index:9999;background:#fff;border:1px solid #e2ddd4;border-radius:6px;min-width:160px;padding:6px;display:none;position:absolute;top:auto;bottom:calc(100% + 8px);right:0;box-shadow:0 8px 24px #00000014}.class-menu.open .class-menu-dropdown{display:block}.class-menu-item{color:#1a1a1a;width:100%;min-height:32px;box-shadow:none;background:0 0;border:0;border-radius:4px;align-items:center;gap:8px;padding:0 10px;font-family:SF Mono,monospace;font-size:11px;font-weight:500;display:flex}.class-menu-item:hover{background:#f0ede8;transform:none}.class-menu-item i{text-align:center;width:14px;font-size:11px}.class-menu-item-danger{color:#b91c1c}.class-menu-item-danger:hover{background:#fee9e8}.classes-empty-command{color:#1a1a1a;text-align:center;background:#faf8f5;border:1px dashed #e2ddd4;border-radius:8px;flex-direction:column;grid-column:1/-1;justify-content:center;align-items:center;gap:12px;min-height:200px;padding:40px 20px;display:flex}.classes-empty-icon{color:#8a8578;background:#f0ede8;border:1px solid #e2ddd4;border-radius:8px;place-items:center;width:56px;height:56px;font-size:24px;display:grid}.classes-empty-title{color:#1a1a1a;letter-spacing:-.02em;margin:0;font-family:SF Mono,monospace;font-size:18px;font-weight:600;line-height:1.2}.classes-empty-copy{color:#8a8578;max-width:520px;margin:0;font-family:SF Mono,monospace;font-size:12px;line-height:1.6}#addClassModal .modal-content,#editClassModal .modal-content,#classDatesModal .modal-content{color:#1a1a1a;background:#fff;border:1px solid #e2ddd4;border-radius:8px;width:min(640px,92vw);max-width:640px;max-height:85vh;overflow:hidden;box-shadow:0 16px 48px #0000001f}#addClassModal .modal-header,#editClassModal .modal-header,#classDatesModal .modal-header{background:#fff;border-bottom:1px solid #eeebe6;justify-content:space-between;align-items:center;min-height:56px;padding:16px 24px;display:flex}#addClassModal .modal-header h2,#editClassModal .modal-header h2,#classDatesModal .modal-header h2{color:#1a1a1a;letter-spacing:-.02em;text-transform:uppercase;margin:0;font-family:SF Mono,JetBrains Mono,monospace;font-size:16px;font-weight:600;line-height:1.3}#addClassModal .close-modal,#editClassModal .close-modal,#classDatesModal .close-modal{color:#8a8578;cursor:pointer;background:#fff;border:1px solid #e2ddd4;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;font-size:18px;line-height:1;transition:all .15s;display:inline-flex}#addClassModal .close-modal:hover,#editClassModal .close-modal:hover,#classDatesModal .close-modal:hover{color:#1a1a1a;background:#faf8f5;border-color:#c4beb3;transform:none}#addClassModal .modal-body,#editClassModal .modal-body,#classDatesModal .modal-body{background:#fff;max-height:calc(85vh - 140px);padding:24px;overflow-y:auto}#addClassModal form,#editClassModal form,#classDatesModal form{grid-template-columns:1fr 1fr;gap:16px 24px;display:grid}#addClassModal .modal-field,#editClassModal .modal-field,#classDatesModal .modal-field{flex-direction:column;gap:6px;min-width:0;display:flex}#addClassModal .modal-field-full,#editClassModal .modal-field-full,#classDatesModal .modal-field-full{grid-column:1/-1}#addClassModal .modal-label,#editClassModal .modal-label,#classDatesModal .modal-label{color:#8a8578;letter-spacing:.3px;text-transform:uppercase;margin:0;font-family:SF Mono,monospace;font-size:10px;font-weight:600;display:block}#addClassModal .modal-input,#editClassModal .modal-input,#classDatesModal .modal-input{color:#1a1a1a;background:#fff;border:1px solid #e2ddd4;border-radius:4px;outline:none;width:100%;min-height:40px;padding:0 14px;font-family:SF Mono,monospace;font-size:13px;font-weight:400;transition:all .15s}#addClassModal .modal-input::placeholder,#editClassModal .modal-input::placeholder,#classDatesModal .modal-input::placeholder{color:#c4beb3;font-weight:400}#addClassModal .modal-input:focus,#editClassModal .modal-input:focus,#classDatesModal .modal-input:focus{border-color:#8a8578;box-shadow:0 0 0 2px #8a85781a}#addClassModal select.modal-input,#editClassModal select.modal-input,#classDatesModal select.modal-input{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%238a8578'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:36px}#classDatesModal .modal-help-text,#classDatesModal .muted{margin:16px 0 0;font-family:SF Mono,monospace;font-size:11px;line-height:1.5;color:#8a8578!important}#addClassModal .modal-footer,#editClassModal .modal-footer,#classDatesModal .modal-footer{background:#faf8f5;border-top:1px solid #eeebe6;justify-content:flex-end;align-items:center;gap:12px;min-height:64px;padding:16px 24px;display:flex}#addClassModal .btn-primary,#editClassModal .btn-primary,#classDatesModal .btn-primary{color:#fff;letter-spacing:.3px;min-width:120px;min-height:40px;box-shadow:none;cursor:pointer;text-transform:uppercase;background:#1a1a1a;border:1px solid #1a1a1a;border-radius:4px;padding:0 20px;font-family:SF Mono,monospace;font-size:12px;font-weight:500;transition:all .15s}#addClassModal .btn-primary:hover,#editClassModal .btn-primary:hover,#classDatesModal .btn-primary:hover{box-shadow:none;background:#333;border-color:#333;transform:none}#addClassModal .btn-secondary,#editClassModal .btn-secondary,#classDatesModal .btn-secondary{color:#1a1a1a;cursor:pointer;background:#fff;border:1px solid #e2ddd4;border-radius:4px;min-width:100px;min-height:40px;padding:0 16px;font-family:SF Mono,monospace;font-size:12px;font-weight:500;transition:all .15s}#addClassModal .btn-secondary:hover,#editClassModal .btn-secondary:hover,#classDatesModal .btn-secondary:hover{background:#faf8f5;border-color:#c4beb3;transform:none}.graduation-undo-fab{color:#fff;cursor:pointer;z-index:9999;background:#1a1a1a;border:1px solid #e2ddd4;border-radius:6px;place-items:center;width:44px;height:44px;font-size:16px;transition:all .15s;display:grid;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 24px #0000001f}.graduation-undo-fab:hover{transform:translateY(-2px);box-shadow:0 12px 32px #00000029}.classes-screen-tabs{border-bottom:1px solid var(--border-color,#d9e2dc);justify-content:flex-end;gap:.5rem;margin:0 0 1rem;display:flex}.classes-screen-tab{cursor:pointer;font:inherit;background:0 0;border:0;border-bottom:3px solid #0000;align-items:center;gap:.5rem;padding:.75rem 1rem;display:inline-flex}.classes-screen-tab.active{border-bottom-color:var(--primary,#1f6b45);font-weight:700}.classes-tab-count{background:var(--surface-muted,#eef3ef);text-align:center;border-radius:999px;min-width:1.5rem;padding:.1rem .4rem;font-size:.8rem}.classes-tab-panel{gap:1rem;display:grid}.class-history-banner{align-items:center;gap:.5rem;margin-bottom:.75rem;font-weight:700;display:flex}.class-history-graduated{color:var(--primary,#1f6b45)}.class-history-deleted{color:var(--danger,#a43131)}@media (width<=640px){.classes-screen-tabs{justify-content:stretch}.classes-screen-tab{flex:1;justify-content:center}}@media (width<=1180px){#classesContainer{grid-template-columns:1fr}}@media (width<=900px){#addClassModal .modal-content,#editClassModal .modal-content,#classDatesModal .modal-content{width:94vw;max-width:94vw}#addClassModal form,#editClassModal form,#classDatesModal form{grid-template-columns:1fr}}@media (width<=760px){.class-shell{padding:14px}.class-title{font-size:14px}.class-meta-line{font-size:11px}.class-bottom-row.class-bottom-row-compact{align-items:stretch}.class-actions{gap:6px}.btn-notes,.btn-assignments{flex:1;font-size:10px}#addClassModal .modal-header,#editClassModal .modal-header,#classDatesModal .modal-header{min-height:48px;padding:12px 16px}#addClassModal .modal-header h2,#editClassModal .modal-header h2,#classDatesModal .modal-header h2{font-size:14px}#addClassModal .modal-body,#editClassModal .modal-body,#classDatesModal .modal-body{max-height:calc(85vh - 120px);padding:16px}#addClassModal .modal-footer,#editClassModal .modal-footer,#classDatesModal .modal-footer{flex-direction:column-reverse;gap:8px;min-height:56px;padding:12px 16px}#addClassModal .btn-primary,#editClassModal .btn-primary,#classDatesModal .btn-primary,#addClassModal .btn-secondary,#editClassModal .btn-secondary,#classDatesModal .btn-secondary{width:100%;min-height:36px;font-size:11px}#addClassModal .modal-input,#editClassModal .modal-input,#classDatesModal .modal-input{border-radius:4px;min-height:36px;font-size:12px}}@media (width<=540px){.class-actions{flex-wrap:wrap}.btn-notes,.btn-assignments{width:calc(50% - 4px)}.btn-graduate{flex:100%}.class-menu{margin-left:auto}#addClassModal .modal-content,#editClassModal .modal-content,#classDatesModal .modal-content{border-radius:6px;width:96vw}#addClassModal .close-modal,#editClassModal .close-modal,#classDatesModal .close-modal{width:28px;height:28px;font-size:14px}.classes-empty-icon{width:48px;height:48px;font-size:20px}.classes-empty-title{font-size:16px}}section[data-view=classes],section[data-view=classes] .card,section[data-view=classes] .card-content{overflow:visible!important}.class-menu-trigger:focus-visible,.class-menu-item:focus-visible,.btn-notes:focus-visible,.btn-assignments:focus-visible,.btn-graduate:focus-visible,#addClassModal .modal-input:focus-visible,#editClassModal .modal-input:focus-visible,#classDatesModal .modal-input:focus-visible{outline-offset:2px;outline:2px solid #1a1a1a}.classes-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.classes-header .add-button{flex-shrink:0;margin:0}.classes-tabs{border-bottom:1px solid var(--border-color);flex-wrap:wrap;gap:12px;margin-bottom:22px;padding-bottom:14px;display:flex}.classes-tab{color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:10px;padding:10px 18px;font-size:.92rem;font-weight:600;transition:background .2s,color .2s,border-color .2s,transform .15s;display:inline-flex}.classes-tab:hover{background:#0000000a;transform:translateY(-1px)}.classes-tab.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.classes-tab-count{background:#ffffff2e;border-radius:999px;justify-content:center;align-items:center;min-width:24px;height:24px;padding:0 8px;font-size:.75rem;font-weight:700;display:inline-flex}.classes-tab:not(.active) .classes-tab-count{background:var(--surface-2);color:var(--text-color)}.class-history-card{opacity:.96}.class-status-badge{border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.72rem;font-weight:700;display:inline-flex}.class-status-badge.deleted{color:#d9534f;background:#dc35451f}.class-status-badge.graduated{color:#198754;background:#1987541f}.recover-class-btn{background:var(--success-color);color:#fff}.recover-class-btn:hover{filter:brightness(.95)}#classesContainer .empty-state{text-align:center;padding:60px 20px}#classesContainer .empty-state i{opacity:.45;margin-bottom:12px;font-size:46px}#classesContainer .empty-state p{color:var(--text-muted);margin:0}@media (width<=768px){.classes-header{flex-direction:column;align-items:stretch}.classes-header .add-button{width:100%}.classes-tabs{flex-wrap:nowrap;padding-bottom:10px;overflow-x:auto}.classes-tab{white-space:nowrap}}.class-history-card{opacity:1;overflow:hidden}.class-history-shell{gap:16px;padding:20px 20px 18px 24px;position:relative}.class-history-rail{width:4px;position:absolute;inset:0 auto 0 0}.class-history-rail-graduated{background:#2d6a4f}.class-history-rail-deleted{background:#b91c1c}.class-history-card-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.class-history-status{letter-spacing:.35px;text-transform:uppercase;border-radius:999px;flex:none;align-items:center;gap:7px;min-height:28px;padding:0 11px;font-family:SF Mono,monospace;font-size:10px;font-weight:700;display:inline-flex}.class-history-status-graduated{color:#2d6a4f;background:#e8f3ea}.class-history-status-deleted{color:#b91c1c;background:#fee9e8}.class-history-meta{flex-direction:column;gap:9px;display:flex}.class-history-warning{color:#7a5510;background:#fff8e7;border:1px solid #ead7a7;border-radius:6px;align-items:flex-start;gap:9px;padding:11px 12px;font-family:SF Mono,monospace;font-size:10px;line-height:1.5;display:flex}.class-history-warning i{flex:none;margin-top:2px}.class-history-actions{border-top:1px solid #eeebe6;justify-content:flex-end;padding-top:14px;display:flex}.recover-class-btn{appearance:none;color:#fff;cursor:pointer;background:#2d6a4f;border:1px solid #2d6a4f;border-radius:5px;justify-content:center;align-items:center;gap:8px;min-height:38px;padding:0 16px;font-family:SF Mono,monospace;font-size:11px;font-weight:600;transition:transform .15s,background .15s,border-color .15s;display:inline-flex}.recover-class-btn:hover{filter:none;background:#24583f;border-color:#24583f;transform:translateY(-1px)}.recover-class-btn:focus-visible{outline-offset:2px;outline:2px solid #1a1a1a}.btn-graduate{flex:none}.classes-tab{color:#1a1a1a;text-indent:0;min-width:max-content;font-family:SF Mono,monospace;font-size:12px;line-height:1}.classes-tab.active{color:#fff}.classes-tab span,.classes-tab i{visibility:visible;opacity:1}@media (width<=640px){.class-history-card-header{flex-direction:column}.class-history-status{align-self:flex-start}.class-history-actions{justify-content:stretch}.recover-class-btn{width:100%}}.classes-header{border-bottom:1px solid #e2ddd4;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:16px 24px;display:flex}.classes-header-left{flex:0 auto}.classes-header-left .card-title{color:#1a1a1a;margin:0;font-size:20px;font-weight:600}.classes-header-left .page-subtitle{color:#8a8578;margin:4px 0 0;font-size:13px}.classes-header-right{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.classes-tabs-wrapper{background:#f5f3ef;border:1px solid #e2ddd4;border-radius:6px;align-items:center;gap:4px;padding:4px;display:flex}.classes-tab{color:#8a8578;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:4px;align-items:center;gap:8px;padding:8px 16px;font-family:SF Mono,JetBrains Mono,monospace;font-size:12px;font-weight:500;transition:all .15s;display:inline-flex}.classes-tab:hover{color:#1a1a1a;background:#0000000a}.classes-tab.active{color:#1a1a1a;background:#fff;box-shadow:0 1px 3px #00000014}.classes-tab i{font-size:13px}.classes-tab-count{color:#5a5548;background:#e6e2da;border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 7px;font-size:10px;font-weight:700;display:inline-flex}.classes-tab.active .classes-tab-count{color:#fff;background:#1a1a1a}.add-button{color:#fff;cursor:pointer;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;background:#1a1a1a;border:1px solid #1a1a1a;border-radius:4px;align-items:center;gap:8px;min-height:38px;padding:0 20px;font-family:SF Mono,JetBrains Mono,monospace;font-size:12px;font-weight:500;transition:all .15s;display:inline-flex}.add-button:hover{background:#333;border-color:#333;transform:translateY(-1px)}.add-button i{font-size:13px}#classesTabs.classes-tabs{display:none}@media (width<=900px){.classes-header{flex-direction:column;align-items:stretch;gap:12px}.classes-header-right{flex-wrap:wrap;justify-content:stretch}.classes-tabs-wrapper{flex:1;justify-content:stretch}.classes-tab,.add-button{flex:1;justify-content:center}}@media (width<=600px){.classes-header{padding:12px 16px}.classes-header-left .card-title{font-size:18px}.classes-header-left .page-subtitle{font-size:12px}.classes-tab{padding:6px 12px;font-size:11px}.classes-tab-count{min-width:18px;height:18px;padding:0 5px;font-size:9px}.add-button{min-height:34px;padding:0 14px;font-size:11px}}:root{--grades-bg:#f5f3ef;--grades-card:#fff;--grades-line:#e2ddd4;--grades-line-strong:#d5cfc4;--grades-text:#1a1a1a;--grades-muted:#8a8578;--grades-faint:#c4beb3;--grades-green:#1f6b45;--grades-green-hover:#174f34;--grades-green-soft:#1f6b450f;--grades-gold:#c9a44c;--grades-gold-soft:#c9a44c0f;--grades-gold-border:#b8963a;--grades-shadow:0 4px 12px #0000000f;--grades-radius:8px;--grades-transition:.2s ease}.metrics-section{margin-bottom:20px}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:10px;display:grid}.metric-card{background:var(--grades-card);border:1px solid var(--grades-line);border-radius:var(--grades-radius);text-align:center;transition:var(--grades-transition);padding:10px 12px}.metric-card:hover{border-color:var(--grades-gold-border);box-shadow:var(--grades-shadow)}.metric-value{color:var(--grades-text);font-family:SF Mono,JetBrains Mono,monospace;font-size:22px;font-weight:700;line-height:1.2}.metric-value.empty{color:var(--grades-muted)}.metric-value.warning{color:#e8a53a}.metric-label{color:var(--grades-muted);text-transform:uppercase;letter-spacing:.3px;margin-top:2px;font-size:10px;font-weight:500}.course-list-section{margin-top:4px}.course-cards-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;display:grid}.course-card{background:var(--grades-card);border:1px solid var(--grades-line);border-radius:var(--grades-radius);transition:var(--grades-transition);flex-direction:column;padding:12px 14px 10px;display:flex}.course-card:hover{border-color:var(--grades-gold-border);box-shadow:var(--grades-shadow);transform:translateY(-1px)}.course-card-header{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:6px;display:flex}.course-card-title{flex:1;min-width:0}.course-code{color:var(--grades-muted);text-transform:uppercase;letter-spacing:.5px;font-family:SF Mono,JetBrains Mono,monospace;font-size:10px;font-weight:600;display:block}.course-card-title h3{color:var(--grades-text);word-break:break-word;margin:0;font-size:15px;font-weight:600;line-height:1.2}.course-status{text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;border-radius:12px;flex-shrink:0;padding:2px 8px;font-family:SF Mono,JetBrains Mono,monospace;font-size:9px;font-weight:600}.course-status.status-ready{background:var(--grades-green-soft);color:var(--grades-green);border:1px solid #1f6b4526}.course-status.status-danger{color:#d95550;background:#fee9e8;border:1px solid #d9555026}.course-status.status-warning{color:#e8a53a;background:#fef3e2;border:1px solid #e8a53a26}.course-status.status-info{color:#2c7a9e;background:#e3f0f7;border:1px solid #2c7a9e26}.course-status.status-muted{background:var(--grades-gold-soft);color:var(--grades-muted);border:1px solid var(--grades-line)}.course-card-body{color:var(--grades-muted);flex-wrap:wrap;gap:12px;margin-bottom:6px;font-size:12px;display:flex}.course-card-body i{width:14px;color:var(--grades-gold)}.course-card-stats{border-top:1px solid var(--grades-line);border-bottom:1px solid var(--grades-line);grid-template-columns:repeat(4,1fr);gap:4px;margin-bottom:8px;padding:6px 0;display:grid}.stat-item{text-align:center}.stat-item .stat-label{text-transform:uppercase;letter-spacing:.5px;color:var(--grades-muted);font-family:SF Mono,JetBrains Mono,monospace;font-size:7px;font-weight:600;display:block}.stat-item .stat-value{color:var(--grades-text);font-family:SF Mono,JetBrains Mono,monospace;font-size:14px;font-weight:600;display:block}.stat-item .stat-value.valid{color:var(--grades-green)}.stat-item .stat-value.invalid{color:#d95550}.stat-item .stat-letter{color:var(--grades-muted);font-family:SF Mono,JetBrains Mono,monospace;font-size:10px;font-weight:500;display:block}.course-card-actions .btn-primary{width:100%;padding:5px 10px;font-size:11px}.detail-header-section{margin-bottom:12px}.detail-header{border-bottom:2px solid var(--grades-line);flex-wrap:wrap;align-items:center;gap:14px;padding:10px 0;display:flex}.detail-header .back-btn{flex-shrink:0}.detail-title{flex:1;min-width:0}.detail-title .course-code{font-size:11px}.detail-title h2{color:var(--grades-text);margin:0;font-size:18px;font-weight:600}.detail-title .course-status{margin-top:2px;display:inline-block}.detail-grade-summary{flex-shrink:0}.grade-display{background:var(--grades-gold-soft);border:1px solid var(--grades-line);border-radius:var(--grades-radius);align-items:baseline;gap:6px;padding:4px 12px;display:flex}.grade-numeric{color:var(--grades-text);font-family:SF Mono,JetBrains Mono,monospace;font-size:20px;font-weight:700}.grade-letter{color:var(--grades-muted);font-family:SF Mono,JetBrains Mono,monospace;font-size:13px;font-weight:600}.detail-stats-section{margin-bottom:14px}.detail-stats{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:8px;display:grid}.detail-stats .stat-item{background:var(--grades-card);border:1px solid var(--grades-line);border-radius:var(--grades-radius);text-align:center;padding:8px 10px}.detail-stats .stat-item .stat-value.valid{color:var(--grades-green)}.detail-stats .stat-item .stat-value.invalid{color:#d95550}.detail-categories-section{background:var(--grades-card);border:1px solid var(--grades-line);border-radius:var(--grades-radius);padding:14px 16px}.categories-toolbar{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.categories-toolbar h3{color:var(--grades-text);margin:0;font-size:13px;font-weight:600}.categories-toolbar .btn-secondary{padding:4px 12px;font-size:11px}.categories-container{min-height:50px}.category-row{border:1px solid var(--grades-line);border-radius:var(--grades-radius);transition:var(--grades-transition);margin-bottom:6px;overflow:hidden}.category-row:hover{border-color:var(--grades-gold-border)}.category-row.editing{border-color:var(--grades-gold-border);box-shadow:0 0 0 2px #c9a44c26}.category-row-header{background:var(--grades-gold-soft);border-bottom:1px solid var(--grades-line);justify-content:space-between;align-items:center;gap:8px;padding:6px 10px;display:flex}.category-name-wrapper{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.category-name{color:var(--grades-text);font-size:13px;font-weight:500}.category-weight-display{color:var(--grades-muted);white-space:nowrap;background:var(--grades-card);border:1px solid var(--grades-line);border-radius:4px;padding:1px 6px;font-family:SF Mono,JetBrains Mono,monospace;font-size:11px;font-weight:600}.category-name-input{border:1px solid var(--grades-line);background:var(--grades-card);color:var(--grades-text);width:120px;transition:var(--grades-transition);border-radius:4px;padding:3px 6px;font-size:13px;font-weight:500}.category-name-input:focus{border-color:var(--grades-gold-border);outline:none;box-shadow:0 0 0 2px #c9a44c1f}.category-weight-input-field{border:1px solid var(--grades-line);background:var(--grades-card);color:var(--grades-text);width:50px;transition:var(--grades-transition);border-radius:4px;padding:3px 6px;font-family:SF Mono,JetBrains Mono,monospace;font-size:13px}.category-weight-input-field:focus{border-color:var(--grades-gold-border);outline:none;box-shadow:0 0 0 2px #c9a44c1f}.category-weight-label{color:var(--grades-muted);font-size:13px}.category-actions{flex-shrink:0;gap:4px;display:flex}.category-row-body{grid-template-columns:1fr 1fr 1fr;align-items:center;gap:8px;padding:6px 10px;display:grid}.category-row-body.editing{grid-template-columns:1fr}.category-grade{flex-direction:column;gap:1px;display:flex}.category-grade .grade-value{color:var(--grades-text);font-family:SF Mono,JetBrains Mono,monospace;font-size:16px;font-weight:700}.category-grade .grade-source{text-transform:uppercase;letter-spacing:.3px;font-family:SF Mono,JetBrains Mono,monospace;font-size:9px;font-weight:500}.category-grade .grade-source.source-assignments{color:var(--grades-green)}.category-grade .grade-source.source-manual{color:var(--grades-gold)}.category-grade .grade-source.source-ungraded{color:var(--grades-faint)}.category-contribution{text-align:center}.category-contribution .contribution-label{text-transform:uppercase;letter-spacing:.5px;color:var(--grades-muted);font-family:SF Mono,JetBrains Mono,monospace;font-size:7px;font-weight:600;display:block}.category-contribution .contribution-value{color:var(--grades-text);font-family:SF Mono,JetBrains Mono,monospace;font-size:14px;font-weight:600;display:block}.category-graded-count{text-align:right}.category-graded-count .graded-label{text-transform:uppercase;letter-spacing:.5px;color:var(--grades-muted);font-family:SF Mono,JetBrains Mono,monospace;font-size:7px;font-weight:600;display:block}.category-graded-count .graded-value{color:var(--grades-text);font-size:13px;font-weight:500;display:block}.category-score-input{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.category-score-input label{color:var(--grades-muted);font-size:11px;font-weight:500}.category-score-input-field{border:1px solid var(--grades-line);background:var(--grades-card);color:var(--grades-text);width:70px;transition:var(--grades-transition);border-radius:4px;padding:3px 6px;font-family:SF Mono,JetBrains Mono,monospace;font-size:13px}.category-score-input-field:focus{border-color:var(--grades-gold-border);outline:none;box-shadow:0 0 0 2px #c9a44c1f}.category-assignments{border-top:1px solid var(--grades-line);background:var(--grades-bg);padding:8px 10px}.assignments-header{text-transform:uppercase;letter-spacing:.5px;color:var(--grades-muted);border-bottom:1px solid var(--grades-line);grid-template-columns:2fr 1fr 1fr;gap:8px;padding-bottom:4px;font-family:SF Mono,JetBrains Mono,monospace;font-size:9px;font-weight:600;display:grid}.assignment-row{border-bottom:1px solid var(--grades-line-strong);grid-template-columns:2fr 1fr 1fr;gap:8px;padding:3px 0;font-size:12px;display:grid}.assignment-row.graded{color:var(--grades-text)}.assignment-row.ungraded{color:var(--grades-muted)}.assignment-row.empty{color:var(--grades-muted);padding:8px 0;font-style:italic}.assignment-name{word-break:break-word}.weight-summary-container{border-top:2px solid var(--grades-line);margin-top:12px;padding-top:10px}.weight-summary{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.weight-summary-sticky{background:var(--grades-card);border-radius:var(--grades-radius);border:1px solid var(--grades-line);margin-top:10px;padding:10px 14px;position:sticky;bottom:0;box-shadow:0 -4px 12px #0000000f}.weight-total,.weight-remaining{align-items:baseline;gap:4px;display:flex}.weight-label{text-transform:uppercase;letter-spacing:.3px;color:var(--grades-muted);font-family:SF Mono,JetBrains Mono,monospace;font-size:10px;font-weight:600}.weight-value{font-family:SF Mono,JetBrains Mono,monospace;font-size:18px;font-weight:700}.weight-value.valid{color:var(--grades-green)}.weight-value.warning{color:#e8a53a}.weight-value.error{color:#d95550}.weight-status{border-radius:4px;align-items:center;gap:4px;padding:3px 10px;font-size:11px;display:flex}.weight-status.valid{background:var(--grades-green-soft);color:var(--grades-green)}.weight-status.warning{color:#e8a53a;background:#fef3e2}.weight-status.error{color:#d95550;background:#fee9e8}.weight-summary .save-categories{margin-left:auto}.empty-state{text-align:center;background:var(--grades-card);border:1px solid var(--grades-line);border-radius:var(--grades-radius);padding:30px 16px}.empty-content{color:var(--grades-muted);flex-direction:column;align-items:center;gap:6px;display:flex}.empty-content i{color:var(--grades-faint);font-size:30px}.empty-content p{color:var(--grades-text);margin:0;font-size:13px;font-weight:500}.empty-content small{opacity:.7;font-size:11px}.empty-actions{gap:8px;margin-top:8px;display:flex}.empty-actions .btn-secondary,.empty-actions .btn-primary{padding:4px 14px;font-size:11px}.loading-state,.error-state{text-align:center;color:var(--grades-muted);padding:30px 16px}.loading-spinner{border:3px solid var(--grades-line);border-top-color:var(--grades-gold);border-radius:50%;width:28px;height:28px;margin:0 auto 8px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error-state i{color:#d95550;margin-bottom:6px;font-size:28px}.error-state p{margin:0 0 10px;font-size:13px}@media (width<=768px){.metrics-grid{grid-template-columns:repeat(3,1fr)}.course-cards-grid{grid-template-columns:1fr}.detail-header{flex-direction:column;align-items:flex-start;gap:8px}.detail-grade-summary{align-self:stretch}.grade-display{justify-content:center}.category-row-body{grid-template-columns:1fr 1fr;gap:6px}.category-row-header{flex-wrap:wrap}.weight-summary{flex-direction:column;align-items:stretch;gap:8px}.weight-summary .save-categories{margin-left:0}.detail-stats{grid-template-columns:repeat(2,1fr)}.assignments-header,.assignment-row{grid-template-columns:1fr;gap:2px}}@media (width<=480px){.metrics-grid,.course-card-stats{grid-template-columns:repeat(2,1fr)}.category-row-body{grid-template-columns:1fr}.category-row-body .category-grade{order:-1}.categories-toolbar{flex-direction:column;align-items:stretch;gap:6px}.empty-actions{flex-direction:column;width:100%}.empty-actions button{width:100%}.detail-stats{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.btn-primary:focus-visible,.btn-secondary:focus-visible,.btn-icon:focus-visible,input:focus-visible{outline:2px solid var(--grades-gold);outline-offset:2px}.btn-icon{border:1px solid var(--grades-line);color:var(--grades-muted);cursor:pointer;width:28px;height:28px;transition:var(--grades-transition);background:0 0;border-radius:4px;justify-content:center;align-items:center;display:inline-flex}.btn-icon:hover{background:var(--grades-gold-soft);border-color:var(--grades-gold-border)}.btn-icon:disabled{opacity:.4;cursor:not-allowed}@media (prefers-color-scheme:dark){:root{--grades-bg:#1a1a1a;--grades-card:#2a2a2a;--grades-line:#3a3a3a;--grades-line-strong:#4a4a4a;--grades-text:#e8e4de;--grades-muted:#9a9588;--grades-faint:#5a5550;--grades-shadow:0 4px 12px #0000004d}.course-card:hover,.metric-card:hover,.category-row:hover{border-color:var(--grades-gold-border)}}#courseGradesRoot,#courseGradesRoot *{box-sizing:border-box}#courseGradesRoot .card-content{width:100%;min-width:0}.course-cards-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-auto-rows:1fr;align-items:stretch}.course-card{height:100%;min-height:272px;padding:12px}.course-card-header{min-height:72px}.course-card-title h3{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;min-height:38px;display:-webkit-box;overflow:hidden}.course-card-body{grid-template-columns:1fr;align-content:start;gap:4px;min-height:45px;margin-bottom:7px;display:grid}.course-instructor,.course-term{align-items:center;gap:5px;min-width:0;display:flex}.course-instructor{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.course-card-stats{min-height:72px;margin-top:auto}.course-card-stats .stat-item{border:1px solid var(--grades-line);border-radius:5px;min-width:0;padding:5px 3px}.course-card-actions{margin-top:1px}.course-card-actions .btn-primary{min-height:32px}.detail-stats{grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch}.detail-stats .stat-item{flex-direction:column;justify-content:center;align-items:center;min-height:68px;display:flex}.categories-list{gap:7px;display:grid}.category-row{margin-bottom:0}.category-row-header{min-height:44px;padding:7px 10px}.category-row-body{min-height:58px;padding:7px 10px}.category-row:not(.editing) .category-row-body{grid-template-columns:minmax(180px,1fr) minmax(130px,.65fr) minmax(110px,.45fr)}.category-assignments{background:var(--grades-card);scrollbar-gutter:stable;width:100%;max-height:320px;padding:0;overflow:hidden auto}.assignments-header,.assignment-row{grid-template-columns:minmax(0,2.4fr) minmax(110px,.8fr) minmax(90px,.65fr);align-items:center;column-gap:14px;width:100%;display:grid}.assignments-header{z-index:1;background:var(--grades-bg);min-height:36px;padding:8px 12px;position:sticky;top:0}.assignment-row{background:var(--grades-card);border-bottom:1px solid var(--grades-line);min-height:46px;padding:8px 12px}.assignment-row:last-child{border-bottom:0}.assignment-row.empty{min-height:48px;padding:14px 12px;display:block}.assignment-name-cell,.assignment-score-cell,.assignment-grade-cell{min-width:0}.assignment-name,.assignment-score,.assignment-grade{min-width:0;display:block}.assignment-name{overflow-wrap:anywhere;word-break:normal;line-height:1.35}.assignment-score-cell,.assignment-grade-cell{text-align:right;white-space:nowrap}.assignment-score,.assignment-grade{font-family:SF Mono,JetBrains Mono,monospace}.categories-container{padding-bottom:4px}.weight-summary-container{z-index:3;position:relative}.weight-summary-sticky{bottom:8px}@media (width>=1500px){.course-cards-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (width<=1100px){.detail-stats,.course-cards-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=820px){.course-cards-grid,.detail-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.category-row:not(.editing) .category-row-body{grid-template-columns:1fr 1fr}.category-graded-count{text-align:left;grid-column:1/-1}.assignments-header,.assignment-row{grid-template-columns:minmax(0,1.7fr) minmax(90px,.8fr) minmax(80px,.7fr)}}@media (width<=620px){.course-cards-grid,.detail-stats{grid-template-columns:1fr}.course-card,.course-card-header,.course-card-body,.course-card-stats{min-height:0}.category-row:not(.editing) .category-row-body{grid-template-columns:1fr}.category-contribution,.category-graded-count{text-align:left;grid-column:auto}.category-assignments{max-height:360px}.assignments-header{display:none}.assignment-row{grid-template-columns:1fr auto;row-gap:4px}.assignment-name-cell{grid-column:1/-1}.assignment-score-cell{text-align:left}}.categories-list{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:start;gap:14px}.category-row{background:var(--grades-card);border-radius:10px;flex-direction:column;min-width:0;height:100%;display:flex;box-shadow:0 2px 8px #201c140d}.category-row:hover{transform:translateY(-2px);box-shadow:0 8px 20px #201c1417}.category-row-header{background:linear-gradient(135deg, var(--grades-gold-soft), var(--grades-card));min-height:58px;padding:12px 14px}.category-name{overflow-wrap:anywhere;font-size:15px;font-weight:650;line-height:1.3;overflow:hidden}.category-weight-display{border-radius:999px;padding:3px 7px}.category-row:not(.editing) .category-row-body{grid-template-columns:minmax(0,1.25fr) repeat(2,minmax(72px,.75fr));gap:12px;min-height:96px;padding:14px}.category-grade .grade-value{font-size:21px}.category-contribution,.category-graded-count{text-align:left;border-left:1px solid var(--grades-line);flex-direction:column;justify-content:center;align-self:stretch;padding-left:12px;display:flex}.category-contribution .contribution-label,.category-graded-count .graded-label{margin-bottom:4px}.category-actions .btn-icon{border-radius:8px;width:32px;height:32px}.category-assignments{background:var(--grades-bg);max-height:370px;padding:12px}.category-assignments .assignments-header{display:none}.category-assignments{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:9px;display:grid}.category-assignments .assignment-row{border:1px solid var(--grades-line);background:var(--grades-card);border-radius:8px;grid-template-columns:1fr 1fr;align-content:space-between;gap:10px 14px;min-height:112px;padding:12px}.category-assignments .assignment-row:last-child{border-bottom:1px solid var(--grades-line)}.category-assignments .assignment-row:hover{border-color:var(--grades-gold-border);box-shadow:0 3px 10px #201c140f}.category-assignments .assignment-name-cell{grid-column:1/-1}.category-assignments .assignment-name{-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;font-size:12px;font-weight:600;line-height:1.4;display:-webkit-box;overflow:hidden}.category-assignments .assignment-score-cell,.category-assignments .assignment-grade-cell{text-align:left;flex-direction:column;gap:3px;min-width:0;display:flex}.category-assignments .assignment-grade-cell{text-align:right;align-items:flex-end}.assignment-field-label{color:var(--grades-muted);letter-spacing:.5px;text-transform:uppercase;font-family:SF Mono,JetBrains Mono,monospace;font-size:8px;font-weight:600}.category-assignments .assignment-row.empty{border:1px dashed var(--grades-line);grid-column:1/-1;justify-content:center;align-items:center;min-height:80px;display:flex}@media (width>=1500px){.categories-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=760px){.categories-list{grid-template-columns:1fr}.category-row:not(.editing) .category-row-body{grid-template-columns:1fr 1fr}.category-grade{grid-column:1/-1}.category-contribution{border-left:0;padding-left:0}}.goals-feature{padding:1.5rem}.goal-stats-container{color:#fffffff5;background:radial-gradient(900px 520px at 100% 0%, color-mix(in srgb, var(--color-accent) 20%, transparent), transparent 55%), radial-gradient(900px 520px at 0% 100%, #c9a44c32, transparent 55%), linear-gradient(135deg, color-mix(in srgb, var(--color-bg-primary) 92%, #0a2415 8%), color-mix(in srgb, var(--color-bg-secondary) 88%, #0a2415 12%));border:1px solid color-mix(in srgb, var(--color-border-light) 70%, #c9a44c59);border-radius:16px;margin-bottom:2rem;padding:1.5rem;box-shadow:0 18px 44px #02061738}.goal-stats-container h2{font-size:1.35rem;font-weight:var(--font-weight-extrabold);letter-spacing:.02em;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.goal-stats-container h2 i{color:#c9a44cf2;font-size:1.15rem}.stat-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff14;border:1px solid #ffffff29;border-radius:14px;padding:1.25rem;transition:transform .25s,background .25s,border-color .25s}.stat-card:hover{background:#ffffff1c;border-color:#ffffff38;transform:translateY(-4px)}.stat-value{font-size:2.15rem;font-weight:var(--font-weight-extrabold);align-items:center;gap:.5rem;margin-bottom:.5rem;line-height:1;display:flex}.stat-value .progress-ring{width:40px;height:40px}.stat-label{opacity:.9;font-size:.875rem;font-weight:var(--font-weight-medium)}.stat-trend{align-items:center;gap:.25rem;margin-top:.5rem;font-size:.75rem;display:flex}.stat-trend.positive{color:var(--color-success)}.stat-trend.negative{color:var(--color-danger)}.category-filter-section{margin-bottom:1.5rem}.category-filter-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.category-filter-header h3{font-size:1.125rem;font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.category-filter-grid{flex-wrap:wrap;gap:.75rem;display:flex}.category-filter-item{cursor:pointer;background:var(--color-bg-surface);border:1px solid var(--color-border-light);color:var(--color-text-secondary);font-size:.875rem;font-weight:var(--font-weight-medium);border-radius:999px;align-items:center;gap:.5rem;padding:.625rem 1rem;transition:transform .22s,box-shadow .22s,border-color .22s,background .22s,color .22s;display:inline-flex}.category-filter-item:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary);border-color:#c9a44c59;transform:translateY(-2px);box-shadow:0 10px 26px #0206171f}.category-filter-item.active{color:#fffffff5;background:#897034f1;border-color:#c9a44c40;box-shadow:0 14px 30px #02061729}.category-dot{border-radius:50%;flex-shrink:0;width:12px;height:12px}.category-count{background:var(--color-bg-secondary);border:1px solid var(--color-border-light);font-size:.75rem;font-weight:var(--font-weight-semibold);color:var(--color-text-tertiary);border-radius:999px;padding:.125rem .625rem;transition:all .22s}.category-filter-item.active .category-count{color:#fffffff5;background:#ffffff29;border-color:#ffffff2e}.goals-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem;margin-top:1.5rem;display:grid}.goal-card{background:var(--color-bg-surface);border:1px solid var(--color-border-light);cursor:pointer;border-radius:16px;transition:transform .28s,box-shadow .28s,border-color .28s,filter .28s;position:relative;overflow:hidden;box-shadow:0 10px 26px #0206171a}.goal-card:hover{border-color:#c9a44c38;transform:translateY(-6px);box-shadow:0 18px 44px #02061729}.goal-card.completed{opacity:.88;filter:saturate(.92);background:linear-gradient(180deg, #c9a44c12, transparent), var(--color-bg-surface)}.goal-card.completed:before{content:"";background:linear-gradient(135deg, color-mix(in srgb, var(--color-success) 75%, #000 25%), var(--color-success));clip-path:polygon(100% 0,0 0,100% 100%);opacity:.95;width:62px;height:62px;position:absolute;top:0;right:0}.goal-card.completed:after{content:"✓";color:#fffffff5;font-size:1rem;font-weight:var(--font-weight-extrabold);z-index:1;position:absolute;top:10px;right:10px}.goal-card-header{justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem 1.25rem 0;display:flex}.goal-category{font-size:.75rem;font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-primary);background:#c9a44c16;border:1px solid #c9a44c38;border-radius:999px;align-items:center;gap:.5rem;padding:.375rem .875rem;display:inline-flex}.goal-category i{font-size:.75rem}.goal-actions{gap:.375rem;display:flex}.goal-card-body{padding:1.25rem}.goal-title{font-size:1.25rem;font-weight:var(--font-weight-extrabold);color:var(--color-text-primary);margin-bottom:.75rem;line-height:1.4}.goal-card.completed .goal-title{color:var(--color-text-tertiary);text-decoration:line-through}.goal-description{color:var(--color-text-secondary);-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;margin-bottom:1.25rem;font-size:.9375rem;line-height:1.6;display:-webkit-box;overflow:hidden}.goal-target{background:color-mix(in srgb, var(--color-bg-tertiary) 82%, transparent);border:1px solid var(--color-border-light);border-left:4px solid #c9a44cbf;border-radius:12px;align-items:center;gap:.75rem;margin-bottom:1.25rem;padding:.75rem;display:flex}.goal-target i{color:#c9a44cf2;font-size:1.125rem}.goal-target span{font-size:.9375rem;font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.goal-meta{color:var(--color-text-secondary);flex-wrap:wrap;gap:1rem;margin-top:1rem;font-size:.8125rem;display:flex}.goal-due,.goal-milestones{background:var(--color-bg-secondary);border:1px solid var(--color-border-light);font-weight:var(--font-weight-medium);border-radius:10px;align-items:center;gap:.5rem;padding:.375rem .75rem;display:inline-flex}.goal-due.overdue{background:color-mix(in srgb, var(--color-danger) 10%, transparent);border-color:color-mix(in srgb, var(--color-danger) 22%, var(--color-border-light));color:var(--color-danger)}.goal-due.overdue .badge{background:var(--color-danger);color:#fffffff5;font-size:.6875rem;font-weight:var(--font-weight-semibold);border-radius:6px;padding:.125rem .5rem}.goal-card-footer{border-top:1px solid var(--color-border-light);background:color-mix(in srgb, var(--color-bg-secondary) 84%, transparent);padding:1.25rem}.goal-progress{margin-bottom:1.25rem}.progress-info{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.progress-label{font-size:.875rem;font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);align-items:center;gap:.5rem;display:flex}.progress-value{font-size:1.125rem;font-weight:var(--font-weight-extrabold);color:var(--color-text-primary)}.progress-bar{background:var(--color-border);border-radius:999px;height:10px;position:relative;overflow:hidden}.progress-fill{background:linear-gradient(90deg, #c9a44cd9, var(--color-accent));border-radius:999px;height:100%;transition:width .8s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.progress-fill:after{content:"";background:linear-gradient(90deg,#ffffff1f 0%,#ffffff47 50%,#ffffff1f 100%);animation:2s infinite shimmer;position:absolute;inset:0}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.goal-actions-footer{gap:.75rem;display:flex}.goal-actions-footer .btn{font-size:.875rem;font-weight:var(--font-weight-semibold);border-radius:12px;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1rem;display:flex}.milestone-item{background:var(--color-bg-surface);border:1px solid var(--color-border-light);border-radius:14px;align-items:center;gap:1rem;margin-bottom:.75rem;padding:1rem;transition:transform .22s,box-shadow .22s,border-color .22s,background .22s;display:flex;position:relative}.milestone-item:hover{border-color:#c9a44c47;transform:translate(4px);box-shadow:0 12px 26px #0206171a}.milestone-item.completed{background:color-mix(in srgb, var(--color-success) 10%, transparent);border-color:color-mix(in srgb, var(--color-success) 22%, var(--color-border-light))}.milestone-checkbox{width:24px;height:24px;position:relative}.milestone-checkbox input{opacity:0;cursor:pointer;z-index:1;position:absolute;inset:0}.milestone-checkbox .checkmark{border:2px solid var(--color-border);background:var(--color-bg-secondary);border-radius:8px;width:24px;height:24px;transition:all .22s;display:block;position:relative}.milestone-checkbox input:checked+.checkmark{background:var(--color-success);border-color:var(--color-success);animation:.3s checkmarkPop}.milestone-checkbox input:checked+.checkmark:after{content:"✓";color:#fffffff5;font-size:14px;font-weight:var(--font-weight-extrabold);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.milestone-main{flex:1;min-width:0}.milestone-title{font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:.375rem;font-size:.9375rem}.milestone-item.completed .milestone-title{color:var(--color-text-secondary);text-decoration:line-through}.milestone-description{color:var(--color-text-secondary);margin-bottom:.5rem;font-size:.8125rem;line-height:1.4}.milestone-meta{color:var(--color-text-tertiary);gap:1rem;font-size:.75rem;display:flex}.templates-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem;margin-top:1rem;display:grid}.template-card{background:var(--color-bg-surface);border:1px solid var(--color-border-light);cursor:pointer;border-radius:16px;align-items:flex-start;gap:1rem;padding:1.5rem;transition:transform .28s,box-shadow .28s,border-color .28s,background .28s;display:flex;position:relative;overflow:hidden}.template-card:hover{border-color:#c9a44c38;transform:translateY(-4px);box-shadow:0 18px 44px #0206171f}.template-card:before{content:"";background:linear-gradient(135deg, #c9a44cf2, var(--color-accent));clip-path:polygon(100% 0,0 0,100% 100%);opacity:.1;width:64px;height:64px;position:absolute;top:0;right:0}.template-icon{color:#fffffff5;background:linear-gradient(135deg, #c9a44ceb, var(--color-accent));border:1px solid #c9a44c38;border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;font-size:1.5rem;display:flex;box-shadow:0 14px 30px #0206172e}.template-content{flex:1;min-width:0}.template-title{font-size:1.125rem;font-weight:var(--font-weight-extrabold);color:var(--color-text-primary);margin-bottom:.5rem}.template-description{color:var(--color-text-secondary);margin-bottom:1rem;font-size:.875rem;line-height:1.5}.template-meta{color:var(--color-text-tertiary);gap:1rem;font-size:.75rem;display:flex}.template-category{background:var(--color-bg-secondary);border:1px solid var(--color-border-light);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);border-radius:999px;padding:.25rem .75rem}.empty-state{text-align:center;background:var(--color-bg-surface);border:2px dashed var(--color-border);color:var(--color-text-secondary);border-radius:16px;margin:2rem 0;padding:4rem 2rem}.empty-state-sm{text-align:center;background:var(--color-bg-secondary);border:1px dashed var(--color-border);color:var(--color-text-tertiary);border-radius:12px;margin:1rem 0;padding:2rem 1rem}.empty-icon i{color:#c9a44c8c;font-size:3rem}.empty-state h3{font-size:1.35rem;font-weight:var(--font-weight-extrabold);color:var(--color-text-primary);margin-bottom:.75rem}.empty-state p{color:var(--color-text-secondary);max-width:440px;margin-bottom:1.5rem;margin-left:auto;margin-right:auto}.completed-section{border-top:1px solid var(--color-border-light);margin-top:3rem;padding-top:2rem}.section-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.section-title{font-size:1.125rem;font-weight:var(--font-weight-extrabold);color:var(--color-text-primary);align-items:center;gap:.75rem;display:flex}.section-title i{color:var(--color-success)}.progress-ring{width:80px;height:80px;position:relative}.progress-ring-bg{fill:none;stroke:var(--color-border);stroke-width:8px}.progress-ring-fill{fill:none;stroke-linecap:round;stroke-width:8px;transform-origin:50%;transition:stroke-dashoffset 1s;transform:rotate(-90deg)}.progress-ring-text{font-size:1.25rem;font-weight:var(--font-weight-extrabold);color:#fffffff5;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.goal-progress-badge{font-size:.75rem;font-weight:var(--font-weight-semibold);color:#fffffff5;border-radius:999px;margin-left:.5rem;padding:.25rem .5rem}.goal-click-hint{border-top:1px solid var(--color-border-light);color:var(--color-accent);font-size:.75rem;font-weight:var(--font-weight-medium);justify-content:center;align-items:center;padding-top:.75rem;display:flex}@media (width<=768px){.goals-grid{grid-template-columns:1fr;gap:1rem}.stats-grid{grid-template-columns:1fr 1fr}.category-filter-grid{flex-wrap:nowrap;padding-bottom:.5rem;overflow-x:auto}.template-card{flex-direction:column}.template-icon{align-self:center}.goal-card-header,.goal-card-body,.goal-card-footer{padding:1rem}.goal-title{font-size:1.125rem}.section-header{flex-direction:column;align-items:flex-start;gap:1rem}}@media (width<=480px){.goal-stats-container{padding:1rem}.goal-actions-footer{flex-direction:column}.stat-card{padding:1rem}.stat-value{font-size:1.75rem}.template-card{padding:1rem}.template-icon{width:48px;height:48px;font-size:1.25rem}}.card-schedule .card-title{font-weight:var(--font-weight-bold);letter-spacing:.2px;color:var(--color-text-primary)}.schedule-toolbar .btn{color:var(--color-text-primary);border:1px solid var(--color-border);cursor:pointer;background:#fff7e0;border-radius:8px;padding:6px 10px;font-size:12px;transition:border-color .2s}.schedule-table thead th{color:var(--color-text-primary);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.4px;border-bottom:1px solid var(--color-border);z-index:2;background:#fff5dd;padding:9px 8px;font-size:12px;position:sticky;top:0}.time-group-label{font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.4px;font-size:12px}.time-slot{color:var(--color-text-secondary);font-weight:var(--font-weight-semibold);font-feature-settings:"tnum" 1;white-space:nowrap}.event-card{border:1px solid #f59e0b66;border-left:3px solid var(--color-primary);cursor:pointer;background:#fff5dd;border-radius:9px;max-width:100%;margin:6px 0;padding:7px 9px;transition:all .2s;overflow:hidden;box-shadow:0 2px 8px #94794d40}.event-title{white-space:normal;word-break:break-word;font-size:14px;font-weight:var(--font-weight-medium);color:var(--color-text-primary);line-height:1.3}.events-calendar-view{background:#fff;border-radius:12px;margin-bottom:24px;padding:24px;box-shadow:0 4px 20px #00000014}.calendar-header{border-bottom:1px solid #e9ecef;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;display:flex}.calendar-title{align-items:center;gap:12px;display:flex}.calendar-title i{color:#4361ee;font-size:24px}.calendar-title h3{font-size:20px;font-weight:var(--font-weight-semibold);color:#2d3748;margin:0}.calendar-summary{color:#718096;background:#f7fafc;border-radius:20px;padding:6px 12px;font-size:14px}.calendar-days-container{gap:20px;min-height:400px;padding-bottom:16px;display:flex;overflow-x:auto}.calendar-days-container::-webkit-scrollbar{height:6px}.calendar-days-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.calendar-days-container::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:3px}.calendar-days-container::-webkit-scrollbar-thumb:hover{background:#a0aec0}.event-day-column{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;flex:0 0 280px;min-height:350px;transition:all .2s;overflow:hidden}.event-day-column:hover{border-color:#cbd5e0;box-shadow:0 4px 12px #0000000d}.event-day-column.today{background:linear-gradient(#f0f4ff,#f8fafc);border-color:#4361ee}.day-header{text-align:center;background:#fff;border-bottom:1px solid #e2e8f0;padding:16px}.day-name{color:#718096;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;font-size:14px}.day-date{font-size:24px;font-weight:var(--font-weight-bold);color:#2d3748}.today-badge{color:#fff;font-size:11px;font-weight:var(--font-weight-semibold);background:#4361ee;border-radius:10px;margin-top:6px;padding:2px 8px;display:inline-block}.day-events{flex-direction:column;gap:12px;height:calc(100% - 80px);padding:16px;display:flex;overflow-y:auto}.event-card{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:16px;transition:all .2s;position:relative}.event-card:hover{border-color:#4361ee;transform:translateY(-2px);box-shadow:0 4px 12px #4361ee26}.event-time{color:#4361ee;font-size:13px;font-weight:var(--font-weight-semibold);align-items:center;gap:6px;margin-bottom:6px;display:flex}.event-time:before{content:"";background:#4361ee;border-radius:50%;width:8px;height:8px;display:inline-block}.event-title{font-size:16px;font-weight:var(--font-weight-semibold);color:#2d3748;margin-bottom:8px;line-height:1.3}.event-location{color:#718096;align-items:center;gap:6px;margin-bottom:8px;font-size:13px;display:flex}.event-description-preview{color:#4a5568;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin-bottom:12px;font-size:13px;line-height:1.4;display:-webkit-box;overflow:hidden}.event-view-details{justify-content:center;display:flex}.btn-view-details{color:#718096;cursor:pointer;background:0 0;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;transition:all .2s;display:flex}.btn-view-details:hover{color:#4a5568;background:#f7fafc;border-color:#cbd5e0}.no-events{text-align:center;color:#a0aec0;padding:40px 20px}.no-events i{opacity:.5;margin-bottom:12px;font-size:32px}.no-events p{margin:0;font-size:14px}.events-empty-state{text-align:center;background:#fff;border:2px dashed #e2e8f0;border-radius:12px;padding:60px 20px}.empty-icon{color:#cbd5e0;margin-bottom:20px;font-size:48px}.events-empty-state h3{color:#4a5568;font-weight:var(--font-weight-semibold);margin-bottom:8px}.events-empty-state p{color:#718096;margin-bottom:24px}.calendar-footer{text-align:center;color:#718096;border-top:1px solid #e9ecef;margin-top:20px;padding-top:16px;font-size:14px}.ev-chip{text-align:left;border:1px solid var(--color-border);background:var(--color-bg-surface);cursor:pointer;border-radius:10px;width:100%;padding:8px}.ev-chip:hover{opacity:.95}.ev-title{font-weight:var(--font-weight-extrabold);color:var(--color-text-primary);font-size:12.5px}.ev-meta{opacity:.8;color:var(--color-text-secondary);margin-top:2px;font-size:11.5px}.ev-more{opacity:.75;padding-left:2px;font-size:11px}.ev-compact .ev-meta{display:none}.event-actions .btn-edit,.event-actions .btn-delete{border:1px solid var(--color-border);color:var(--color-text-primary);cursor:pointer;background:#fff7df;border-radius:7px;padding:4px 6px;font-size:12px}.ev-time{opacity:.8;white-space:nowrap;color:var(--color-text-secondary);font-size:12px}@media (width<=900px){.schedule-table th:nth-child(2),.schedule-table td:nth-child(2),.schedule-table th:nth-child(3),.schedule-table td:nth-child(3),.schedule-table th:nth-child(4),.schedule-table td:nth-child(4){display:none}.schedule-table th:first-child,.schedule-table td:first-child{width:64px}}@media (width<=768px){.calendar-days-container{flex-direction:column;gap:16px;overflow-x:visible}.event-day-column{flex:1;min-width:100%}.calendar-header{flex-direction:column;align-items:flex-start;gap:12px}.events-calendar-view{padding:16px}}.event-details-modal{z-index:9999;opacity:1;justify-content:center;align-items:center;padding:20px;transition:opacity .3s;display:flex;position:fixed;inset:0}.event-details-modal[style*="display: none"]{display:none!important}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;position:absolute;inset:0}.modal-content{z-index:10000;background:#fff;border-radius:16px;width:100%;max-width:500px;max-height:90vh;margin:auto;animation:.3s modalSlideIn;position:relative;overflow-y:auto;box-shadow:0 20px 60px #0000004d}body.modal-open{overflow:hidden}.event-detail-header{border-bottom:1px solid #e2e8f0;margin-bottom:24px;padding-bottom:20px}.detail-title{font-size:24px;font-weight:var(--font-weight-bold);color:#2d3748;margin-bottom:12px;line-height:1.3}.detail-date{color:#718096;margin-bottom:12px;font-size:15px}.detail-time{color:#4361ee;font-size:15px;font-weight:var(--font-weight-semibold);align-items:center;gap:8px;margin-bottom:8px;display:flex}.event-detail-content{margin-bottom:32px}.detail-section{margin-bottom:20px}.detail-label{text-transform:uppercase;color:#718096;letter-spacing:.5px;align-items:center;gap:6px;margin-bottom:8px;font-size:12px;display:flex}.detail-value{color:#4a5568;padding-left:18px;font-size:15px;line-height:1.5}.modal-actions{border-top:1px solid #e2e8f0;justify-content:flex-end;gap:12px;padding-top:20px;display:flex}.btn-primary,.btn-secondary{font-size:14px;font-weight:var(--font-weight-semibold);cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-width:100px;padding:10px 20px;transition:all .2s;display:flex}.btn-primary{color:#fff;background:#4361ee}.btn-primary:hover{background:#3a56d4;transform:translateY(-1px);box-shadow:0 4px 12px #4361ee4d}.btn-secondary{color:#4a5568;background:#f7fafc;border:1px solid #e2e8f0}.btn-secondary:hover{background:#edf2f7}@media (width<=768px){.event-details-modal{padding:10px}.modal-content{max-width:95%;margin:10px}.modal-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}.detail-title{font-size:20px}}section[data-view=assignments],section[data-view=classAssignments]{background:#f5f3ef;border-radius:0;margin:0;padding:0}section[data-view=assignments] .card-content,section[data-view=classAssignments] .card-content{background:0 0;padding:0}.assignments-header{border-bottom:2px solid #e2ddd4;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding:0 0 16px;display:flex}.assignments-header-left h2,#assignmentsHeaderTitle{letter-spacing:-.3px;color:#1a1a1a;text-transform:uppercase;margin:0;font-family:SF Mono,JetBrains Mono,monospace;font-size:20px;font-weight:600}.assignments-header-left p,#assignmentsHeaderSubtitle{color:#8a8578;margin:4px 0 0;font-family:SF Mono,monospace;font-size:12px}.assignments-header-right{align-items:center;gap:12px;display:flex}.cmd-add-btn{color:#fff;cursor:pointer;letter-spacing:.3px;text-transform:uppercase;background:#1a1a1a;border:none;border-radius:4px;align-items:center;gap:8px;padding:8px 18px;font-family:SF Mono,monospace;font-size:12px;font-weight:500;transition:all .15s;display:inline-flex}.cmd-add-btn:hover{background:#333;transform:translateY(-1px)}.cmd-add-btn i{font-size:12px}.class-assignments-header{flex-flow:wrap;justify-content:space-between;align-items:center}.class-assignments-topline{margin-bottom:0}.class-assignments-back{color:#5a5548;cursor:pointer;background:0 0;border:1px solid #e2ddd4;border-radius:4px;padding:6px 14px;font-family:SF Mono,monospace;font-size:12px;font-weight:500;transition:all .15s}.class-assignments-back:hover{background:#f0ede8;border-color:#c4beb3}.class-assignments-summary{background:#e2ddd4;border-radius:4px;gap:1px;margin-bottom:28px;display:flex;overflow:hidden}.class-assignments-summary-card{background:#faf8f5;flex:1;justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;display:flex}.class-assignments-summary-card .summary-label{text-transform:uppercase;color:#8a8578;letter-spacing:.5px;font-family:SF Mono,monospace;font-size:10px;font-weight:600}.class-assignments-summary-card strong{color:#1a1a1a;font-family:SF Mono,monospace;font-size:24px;font-weight:600}.class-assignments-filters{border-bottom:1px solid #e2ddd4;flex-wrap:wrap;gap:8px;margin-bottom:24px;padding:0 0 16px;display:flex}.filter-chip{color:#6b6558;cursor:pointer;text-transform:uppercase;letter-spacing:.3px;background:0 0;border:1px solid #0000;border-radius:4px;padding:6px 14px;font-family:SF Mono,monospace;font-size:11px;font-weight:500;transition:all .12s}.filter-chip:hover{color:#1a1a1a;background:#edebe6;border-color:#e2ddd4}.filter-chip.is-active{color:#fff;background:#1a1a1a;border-color:#1a1a1a}#assignmentsContainer,#classAssignmentsContainer{width:100%;display:block}.assignments-table-header{letter-spacing:.5px;text-transform:uppercase;color:#6b6558;background:#f0ede8;border-bottom:2px solid #e2ddd4;border-radius:4px 4px 0 0;grid-template-columns:32px minmax(200px,2fr) 120px 100px 80px 100px 80px;gap:12px;padding:10px 16px;font-family:SF Mono,monospace;font-size:10px;font-weight:600;display:grid}.assignment-row{background:#fff;border-bottom:1px solid #eeebe6;grid-template-columns:minmax(220px,2fr) 130px 150px 70px 100px 80px;align-items:center;gap:12px;padding:12px 16px;font-family:SF Mono,monospace;font-size:13px;transition:all .12s;display:grid}.assignment-row.is-class-scoped{grid-template-columns:minmax(220px,2fr) 150px 70px 100px 80px}.assignments-workspace{gap:18px;margin-bottom:20px;display:grid}.assignments-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.assignment-summary-card{color:#6b6558;cursor:pointer;text-align:left;background:#fff;border:1px solid #e2ddd4;border-radius:8px;justify-content:space-between;align-items:flex-end;min-height:78px;padding:14px 16px;display:flex}.assignment-summary-card span{letter-spacing:.04em;text-transform:uppercase;font:600 11px/1.3 SF Mono,monospace}.assignment-summary-card strong{color:#1a1a1a;font:700 26px/1 SF Mono,monospace}.assignment-summary-card:hover,.assignment-summary-card.is-active{border-color:#8a8578;box-shadow:0 4px 14px #221f1a14}.assignment-summary-card.tone-risk{border-left:4px solid #d95550}.assignment-summary-card.tone-watch{border-left:4px solid #e8a53a}.assignment-summary-card.tone-primary{border-left:4px solid #46705a}.assignment-summary-card.tone-good{border-left:4px solid #6b8c5c}.assignments-toolbar{background:#faf8f5;border:1px solid #e2ddd4;border-radius:8px;grid-template-columns:minmax(220px,1fr) repeat(3,minmax(140px,auto));gap:10px;padding:12px;display:grid}.assignments-toolbar select,.assignments-search input{color:#27241f;background:#fff;border:1px solid #d8d2c8;border-radius:6px;width:100%;min-height:40px;padding:0 12px;font:500 12px/1 SF Mono,monospace}.assignments-search{position:relative}.assignments-search i{color:#8a8578;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.assignments-search input{padding-left:36px}.assignment-deadline-group{background:#fff;border:1px solid #e2ddd4;border-radius:8px;margin-bottom:18px;overflow:hidden}.assignment-deadline-group>header{background:#f0ede8;border-bottom:1px solid #e2ddd4;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.assignment-deadline-group>header h3{color:#3b372f;letter-spacing:.06em;text-transform:uppercase;margin:0;font:700 11px/1.2 SF Mono,monospace}.assignment-deadline-group>header span{text-align:center;background:#fff;border-radius:999px;min-width:24px;padding:3px 7px;font:700 10px/1 SF Mono,monospace}.assignment-deadline-group.group-overdue>header{color:#a93b37;background:#fff0ef}.assignment-title-wrap{gap:3px;min-width:0;display:grid}.assignment-title-wrap strong{color:#24211d;font-family:var(--font-family,system-ui, sans-serif);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.assignment-title-wrap small{color:#8a8578;font:400 11px/1.35 var(--font-family,system-ui, sans-serif);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}body.theme-dark .assignment-summary-card,body.theme-dark .assignment-deadline-group,body.theme-dark .assignment-toolbar select,body.theme-dark .assignments-search input{border-color:var(--border-color);background:var(--bg-secondary);color:var(--text-primary)}body.theme-dark .assignment-summary-card strong,body.theme-dark .assignment-title-wrap strong,body.theme-dark .assignment-deadline-group>header h3{color:var(--text-primary)}body.theme-dark .assignments-toolbar,body.theme-dark .assignment-deadline-group>header{border-color:var(--border-color);background:var(--bg-tertiary)}body.theme-dark .assignment-deadline-group.group-overdue>header{background:#d9555024}.assignment-row:hover{background:#fefcf9;transform:translate(2px)}.assignment-priority-indicator{border-radius:50%;width:6px;height:6px;display:inline-block}.priority-good{background:#4a7c59}.priority-watch{background:#e8a53a}.priority-risk{background:#d95550}.priority-neutral{background:#9a9588}.priority-completed{background:#6b8c5c}.assignment-name-cell{color:#2a2a2a;align-items:center;gap:10px;font-size:13px;font-weight:500;display:flex}.assignment-name-cell.completed{opacity:.6;text-decoration:line-through}.assignment-checkbox{cursor:pointer;background:#fff;border:1.5px solid #c4beb3;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;transition:all .12s;display:inline-flex}.assignment-checkbox.checked{color:#fff;background:#1a1a1a;border-color:#1a1a1a}.assignment-checkbox.checked i{font-size:9px}.assignment-meta-cell{color:#6b6558;white-space:nowrap;text-overflow:ellipsis;font-family:SF Mono,monospace;font-size:11px;overflow:hidden}.assignment-status-badge{text-transform:uppercase;letter-spacing:.3px;border-radius:3px;padding:3px 8px;font-family:SF Mono,monospace;font-size:9px;font-weight:600;display:inline-block}.status-good{color:#2d6a4f;background:#e8f3ea}.status-watch{color:#b45309;background:#fef3e2}.status-risk{color:#b91c1c;background:#fee9e8}.status-neutral{color:#6b6558;background:#f0ede8}.status-completed{color:#4a7c59;background:#e8f0e6}.assignment-actions-cell{justify-content:flex-end;gap:6px;display:flex}.cmd-action-btn{color:#9a9588;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:3px;padding:4px 8px;font-size:11px;transition:all .1s}.cmd-action-btn:hover{color:#1a1a1a;background:#f0ede8;border-color:#e2ddd4}.cmd-action-btn.delete:hover{color:#b91c1c;background:#fee9e8;border-color:#fee9e8}.assignment-notes-preview{color:#9a9588;white-space:nowrap;text-overflow:ellipsis;max-width:150px;font-family:SF Mono,monospace;font-size:10px;overflow:hidden}.empty-state-cmd{text-align:center;color:#8a8578;background:#faf8f5;border-radius:4px;padding:60px 20px}.empty-state-cmd i{opacity:.4;margin-bottom:16px;font-size:40px}.empty-state-cmd h3{color:#4a4538;margin:0 0 8px;font-family:SF Mono,monospace;font-size:16px;font-weight:600}.empty-state-cmd p{margin:0 0 20px;font-family:SF Mono,monospace;font-size:12px}#addAssignmentModal .modal-content,#editAssignmentModal .modal-content,#assignmentDetailsModal .modal-content{color:#1a1a1a;background:#fff;border:1px solid #e2ddd4;border-radius:8px;width:min(640px,92vw);max-width:640px;max-height:85vh;overflow:hidden;box-shadow:0 16px 48px #0000001f}#addAssignmentModal .modal-header,#editAssignmentModal .modal-header,#assignmentDetailsModal .modal-header{background:#fff;border-bottom:1px solid #eeebe6;justify-content:space-between;align-items:center;min-height:56px;padding:16px 24px;display:flex}#addAssignmentModal .modal-header h2,#editAssignmentModal .modal-header h2,#assignmentDetailsModal .modal-header h2{color:#1a1a1a;letter-spacing:-.02em;text-transform:uppercase;margin:0;font-family:SF Mono,JetBrains Mono,monospace;font-size:16px;font-weight:600;line-height:1.3}#addAssignmentModal .close-modal,#editAssignmentModal .close-modal,#assignmentDetailsModal .close-modal{color:#8a8578;cursor:pointer;background:#fff;border:1px solid #e2ddd4;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;font-size:18px;line-height:1;transition:all .15s;display:inline-flex}#addAssignmentModal .close-modal:hover,#editAssignmentModal .close-modal:hover,#assignmentDetailsModal .close-modal:hover{color:#1a1a1a;background:#faf8f5;border-color:#c4beb3;transform:none}#addAssignmentModal .modal-body,#editAssignmentModal .modal-body,#assignmentDetailsModal .modal-body{background:#fff;max-height:calc(85vh - 140px);padding:24px;overflow-y:auto}#addAssignmentModal form,#editAssignmentModal form,#assignmentDetailsModal form{grid-template-columns:1fr 1fr;gap:16px 24px;display:grid}#addAssignmentModal .modal-field,#editAssignmentModal .modal-field,#assignmentDetailsModal .modal-field{flex-direction:column;gap:6px;min-width:0;display:flex}#addAssignmentModal .modal-field-full,#editAssignmentModal .modal-field-full,#assignmentDetailsModal .modal-field-full{grid-column:1/-1}#addAssignmentModal .modal-label,#editAssignmentModal .modal-label,#assignmentDetailsModal .modal-label{color:#8a8578;letter-spacing:.3px;text-transform:uppercase;margin:0;font-family:SF Mono,monospace;font-size:10px;font-weight:600;display:block}#addAssignmentModal .modal-input,#editAssignmentModal .modal-input,#assignmentDetailsModal .modal-input{color:#1a1a1a;background:#fff;border:1px solid #e2ddd4;border-radius:4px;outline:none;width:100%;min-height:40px;padding:0 14px;font-family:SF Mono,monospace;font-size:13px;font-weight:400;transition:all .15s}#addAssignmentModal .modal-input::placeholder,#editAssignmentModal .modal-input::placeholder,#assignmentDetailsModal .modal-input::placeholder{color:#c4beb3;font-weight:400}#addAssignmentModal .modal-input:focus,#editAssignmentModal .modal-input:focus,#assignmentDetailsModal .modal-input:focus{border-color:#8a8578;box-shadow:0 0 0 2px #8a85781a}#addAssignmentModal select.modal-input,#editAssignmentModal select.modal-input,#assignmentDetailsModal select.modal-input{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%238a8578'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:36px}#addAssignmentModal textarea.modal-input,#editAssignmentModal textarea.modal-input,#assignmentDetailsModal textarea.modal-input{resize:vertical;min-height:80px;padding:12px 14px;font-family:SF Mono,monospace}#addAssignmentModal .modal-footer,#editAssignmentModal .modal-footer,#assignmentDetailsModal .modal-footer{background:#faf8f5;border-top:1px solid #eeebe6;justify-content:flex-end;align-items:center;gap:12px;min-height:64px;padding:16px 24px;display:flex}#addAssignmentModal .btn-primary,#editAssignmentModal .btn-primary,#assignmentDetailsModal .btn-primary{color:#fff;letter-spacing:.3px;min-width:120px;min-height:40px;box-shadow:none;cursor:pointer;text-transform:uppercase;background:#1a1a1a;border:1px solid #1a1a1a;border-radius:4px;padding:0 20px;font-family:SF Mono,monospace;font-size:12px;font-weight:500;transition:all .15s}#addAssignmentModal .btn-primary:hover,#editAssignmentModal .btn-primary:hover,#assignmentDetailsModal .btn-primary:hover{box-shadow:none;background:#333;border-color:#333;transform:none}#addAssignmentModal .btn-secondary,#editAssignmentModal .btn-secondary,#assignmentDetailsModal .btn-secondary{color:#1a1a1a;cursor:pointer;background:#fff;border:1px solid #e2ddd4;border-radius:4px;min-width:100px;min-height:40px;padding:0 16px;font-family:SF Mono,monospace;font-size:12px;font-weight:500;transition:all .15s}#addAssignmentModal .btn-secondary:hover,#editAssignmentModal .btn-secondary:hover,#assignmentDetailsModal .btn-secondary:hover{background:#faf8f5;border-color:#c4beb3;transform:none}@media (width<=900px){.assignments-summary-grid,.assignments-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.assignments-search{grid-column:1/-1}.assignments-table-header{display:none}.assignment-row{background:#fff;border:1px solid #eeebe6;border-radius:4px;margin-bottom:12px;padding:14px 16px;display:block}.assignment-row .assignment-meta-cell.class-name:before{content:"Course";text-transform:uppercase;color:#9a9588;margin-right:12px;font-family:SF Mono,monospace;font-size:9px;font-weight:600}.assignment-row>*{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.assignment-row>:last-child{margin-bottom:0}.assignment-row .assignment-name-cell:before{content:"Assignment";text-transform:uppercase;color:#9a9588;letter-spacing:.3px;margin-right:12px;font-family:SF Mono,monospace;font-size:9px;font-weight:600}.assignment-row .assignment-meta-cell.due:before{content:"Due";text-transform:uppercase;color:#9a9588;letter-spacing:.3px;margin-right:12px;font-family:SF Mono,monospace;font-size:9px;font-weight:600}.assignment-row .assignment-meta-cell.weight:before{content:"Weight";text-transform:uppercase;color:#9a9588;letter-spacing:.3px;margin-right:12px;font-family:SF Mono,monospace;font-size:9px;font-weight:600}.assignment-row .assignment-status-badge{text-align:right}.assignment-actions-cell{border-top:1px solid #eeebe6;justify-content:flex-end;margin-top:8px;padding-top:8px}.class-assignments-summary{border-radius:4px;flex-direction:column;gap:1px}.class-assignments-summary-card{justify-content:space-between}#addAssignmentModal .modal-content,#editAssignmentModal .modal-content,#assignmentDetailsModal .modal-content{width:94vw;max-width:94vw}#addAssignmentModal form,#editAssignmentModal form,#assignmentDetailsModal form{grid-template-columns:1fr}}@media (width<=760px){.class-assignments-summary-card{padding:12px 16px}.class-assignments-summary-card strong{font-size:20px}#addAssignmentModal .modal-header,#editAssignmentModal .modal-header,#assignmentDetailsModal .modal-header{min-height:48px;padding:12px 16px}#addAssignmentModal .modal-header h2,#editAssignmentModal .modal-header h2,#assignmentDetailsModal .modal-header h2{font-size:14px}#addAssignmentModal .modal-body,#editAssignmentModal .modal-body,#assignmentDetailsModal .modal-body{max-height:calc(85vh - 120px);padding:16px}#addAssignmentModal .modal-footer,#editAssignmentModal .modal-footer,#assignmentDetailsModal .modal-footer{flex-direction:column-reverse;gap:8px;min-height:56px;padding:12px 16px}#addAssignmentModal .btn-primary,#editAssignmentModal .btn-primary,#assignmentDetailsModal .btn-primary,#addAssignmentModal .btn-secondary,#editAssignmentModal .btn-secondary,#assignmentDetailsModal .btn-secondary{width:100%;min-height:36px;font-size:11px}#addAssignmentModal .modal-input,#editAssignmentModal .modal-input,#assignmentDetailsModal .modal-input{border-radius:4px;min-height:36px;font-size:12px}}@media (width<=600px){.assignments-summary-grid,.assignments-toolbar{grid-template-columns:1fr}.assignments-search{grid-column:auto}.assignment-summary-card{min-height:64px}.assignments-header{flex-direction:column;align-items:flex-start}.assignments-header-right{width:100%}.cmd-add-btn{justify-content:center;width:100%}.class-assignments-header{flex-direction:column;align-items:flex-start}.class-assignments-back{justify-content:center;width:100%;display:inline-flex}}@media (width<=540px){#addAssignmentModal .modal-content,#editAssignmentModal .modal-content,#assignmentDetailsModal .modal-content{border-radius:6px;width:96vw}#addAssignmentModal .close-modal,#editAssignmentModal .close-modal,#assignmentDetailsModal .close-modal{width:28px;height:28px;font-size:14px}}.filter-chip:focus-visible,.cmd-action-btn:focus-visible,.assignment-checkbox:focus-visible,.class-assignments-back:focus-visible,.cmd-add-btn:focus-visible{outline-offset:2px;outline:2px solid #1a1a1a}#addAssignmentModal .modal-body::-webkit-scrollbar{width:4px}#editAssignmentModal .modal-body::-webkit-scrollbar{width:4px}#assignmentDetailsModal .modal-body::-webkit-scrollbar{width:4px}#addClassModal .modal-body::-webkit-scrollbar{width:4px}#editClassModal .modal-body::-webkit-scrollbar{width:4px}#classDatesModal .modal-body::-webkit-scrollbar{width:4px}#addAssignmentModal .modal-body::-webkit-scrollbar-track{background:#f0ede8;border-radius:2px}#editAssignmentModal .modal-body::-webkit-scrollbar-track{background:#f0ede8;border-radius:2px}#assignmentDetailsModal .modal-body::-webkit-scrollbar-track{background:#f0ede8;border-radius:2px}#addClassModal .modal-body::-webkit-scrollbar-track{background:#f0ede8;border-radius:2px}#editClassModal .modal-body::-webkit-scrollbar-track{background:#f0ede8;border-radius:2px}#classDatesModal .modal-body::-webkit-scrollbar-track{background:#f0ede8;border-radius:2px}#addAssignmentModal .modal-body::-webkit-scrollbar-thumb{background:#c4beb3;border-radius:2px}#editAssignmentModal .modal-body::-webkit-scrollbar-thumb{background:#c4beb3;border-radius:2px}#assignmentDetailsModal .modal-body::-webkit-scrollbar-thumb{background:#c4beb3;border-radius:2px}#addClassModal .modal-body::-webkit-scrollbar-thumb{background:#c4beb3;border-radius:2px}#editClassModal .modal-body::-webkit-scrollbar-thumb{background:#c4beb3;border-radius:2px}#classDatesModal .modal-body::-webkit-scrollbar-thumb{background:#c4beb3;border-radius:2px}#addAssignmentModal .modal-body::-webkit-scrollbar-thumb:hover{background:#9a9588}#editAssignmentModal .modal-body::-webkit-scrollbar-thumb:hover{background:#9a9588}#assignmentDetailsModal .modal-body::-webkit-scrollbar-thumb:hover{background:#9a9588}#addClassModal .modal-body::-webkit-scrollbar-thumb:hover{background:#9a9588}#editClassModal .modal-body::-webkit-scrollbar-thumb:hover{background:#9a9588}#classDatesModal .modal-body::-webkit-scrollbar-thumb:hover{background:#9a9588}section[data-view=tasks]{width:100%;max-width:none;margin:0}section[data-view=tasks] .dashboard-grid-view{width:100%;max-width:none;margin:0;display:block}section[data-view=tasks] .card-tasks{grid-column:1/-1;width:100%;max-width:none}section[data-view=tasks] #tasksContainer{width:100%;max-width:none}.tasks-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;padding:10px 0;display:grid}.task-card{background:var(--color-bg-surface);border:1px solid var(--color-border-light);cursor:pointer;border-radius:16px;flex-direction:column;padding:20px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden;box-shadow:0 4px 20px #0206170d}.task-card:hover{background:color-mix(in srgb, var(--color-bg-surface) 96%, var(--color-bg-secondary) 4%);border-color:#c9a44c66;transform:translateY(-4px);box-shadow:0 12px 40px #0206171f}.task-card.completed{opacity:.7;background:color-mix(in srgb, var(--color-bg-secondary) 90%, transparent)}.task-card.completed:hover{opacity:.85}.task-card-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.task-checkbox{background:var(--color-bg-secondary);border:2px solid var(--color-border-light);cursor:pointer;border-radius:8px;place-items:center;width:24px;height:24px;transition:all .2s;display:grid;position:relative}.task-checkbox:hover{border-color:#c9a44c80;transform:scale(1.05)}.task-checkbox input[type=checkbox]{opacity:0;cursor:pointer;z-index:2;width:100%;height:100%;position:absolute}.task-checkbox .checkmark{background:var(--color-bg-surface);border-radius:5px;width:20px;height:20px;transition:all .2s;display:inline-block;position:relative}.task-checkbox input:checked+.checkmark{background:var(--color-success);border-color:var(--color-success);transform:scale(1.1)}.task-checkbox input:checked+.checkmark:after{content:"✓";color:#fffffffa;font-size:14px;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.task-priority{font-size:11px;font-weight:var(--font-weight-extrabold);letter-spacing:.05em;text-transform:uppercase;border:2px solid #0000;border-radius:999px;padding:6px 12px}.priority-high{background:color-mix(in srgb, var(--color-danger) 12%, transparent);color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 25%, transparent)}.priority-medium{background:color-mix(in srgb, var(--color-warning) 12%, transparent);color:var(--color-warning);border-color:color-mix(in srgb, var(--color-warning) 25%, transparent)}.priority-low{background:color-mix(in srgb, var(--color-accent) 12%, transparent);color:var(--color-accent);border-color:color-mix(in srgb, var(--color-accent) 25%, transparent)}.task-card-body{flex:1;margin-bottom:16px}.task-title{font-size:16px;font-weight:var(--font-weight-extrabold);color:var(--color-text-primary);word-break:break-word;margin-bottom:12px;line-height:1.4}.task-title.text-line-through{color:var(--color-text-tertiary);text-decoration:line-through}.task-description{color:var(--color-text-secondary);-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;margin-bottom:16px;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.task-due-info{margin-top:auto}.due-date{background:var(--color-bg-secondary);color:var(--color-text-secondary);border:1px solid var(--color-border-light);border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:12px;display:inline-flex}.due-date.overdue{background:color-mix(in srgb, var(--color-danger) 10%, transparent);color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 25%, transparent)}.due-date.due-soon{background:color-mix(in srgb, var(--color-warning) 10%, transparent);color:var(--color-warning);border-color:color-mix(in srgb, var(--color-warning) 25%, transparent)}.due-badge{font-size:10px;font-weight:var(--font-weight-extrabold);border-radius:4px;margin-left:4px;padding:2px 6px}.overdue-badge{background:var(--color-danger);color:#fff}.due-soon-badge{background:var(--color-warning);color:#fff}.task-card-footer{border-top:1px solid var(--color-border-light);gap:8px;padding-top:16px;display:flex}.task-card-footer .btn{flex:1;padding:8px 12px;font-size:13px}.task-details-modal{background:var(--color-bg-surface);border:1px solid var(--color-border-light);border-radius:24px;max-width:600px;overflow:hidden;box-shadow:0 20px 60px #02061733}.task-details-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.task-details-priority{font-size:12px;font-weight:var(--font-weight-extrabold);letter-spacing:.05em;text-transform:uppercase;border-radius:999px;padding:8px 16px}.task-details-status{background:var(--color-bg-secondary);color:var(--color-text-secondary);font-size:13px;font-weight:var(--font-weight-semibold);border-radius:999px;padding:6px 12px}.task-details-status.completed{background:color-mix(in srgb, var(--color-success) 15%, transparent);color:var(--color-success)}.task-details-title{font-size:24px;font-weight:var(--font-weight-extrabold);color:var(--color-text-primary);word-break:break-word;margin-bottom:24px;line-height:1.3}.task-details-description{margin-bottom:32px}.task-details-description h4{font-size:16px;font-weight:var(--font-weight-extrabold);color:var(--color-text-secondary);margin-bottom:12px}.task-details-description p{color:var(--color-text-primary);background:var(--color-bg-secondary);border:1px solid var(--color-border-light);border-radius:12px;padding:20px;font-size:15px;line-height:1.6}.task-details-meta{background:var(--color-bg-secondary);border:1px solid var(--color-border-light);border-radius:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;padding:24px;display:grid}.meta-item{color:var(--color-text-primary);align-items:center;gap:12px;font-size:14px;display:flex}.meta-item i{width:20px;color:var(--color-text-secondary);font-size:14px}.task-details-actions{border-top:1px solid var(--color-border-light);justify-content:space-between;align-items:center;width:100%;padding:20px 0 0;display:flex}.action-buttons{gap:12px;display:flex}.task-details-actions .btn{font-size:14px;font-weight:var(--font-weight-semibold);padding:10px 20px}.task-details-actions .btn-toggle-complete{min-width:150px}@media (width<=768px){.tasks-grid{grid-template-columns:1fr;gap:16px}.task-card{padding:16px}.task-details-modal{max-width:calc(100% - 20px);margin:10px}.task-details-meta{grid-template-columns:1fr}.task-details-actions{flex-direction:column;gap:16px}.action-buttons{flex-direction:column;width:100%}.action-buttons .btn{width:100%}}@media (width<=480px){.task-card-header{flex-direction:column;align-items:flex-start;gap:12px}.task-priority{align-self:flex-start}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.task-card{animation:.4s forwards fadeInUp}.empty-state i{opacity:.3;margin-bottom:20px;font-size:48px}.empty-state p{color:var(--color-text-secondary);margin-bottom:8px;font-size:16px}.empty-state .text-muted{opacity:.7;font-size:14px}#taskDetailsModal .modal-footer{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}#taskDetailsModal .modal-footer .btn-primary,#taskDetailsModal .modal-footer .btn-secondary{min-width:110px}.note-card{border:1px solid var(--color-border-light);background:var(--color-bg-surface);cursor:pointer;border-radius:16px;padding:14px;transition:transform .18s,box-shadow .18s,border-color .18s,background .18s;position:relative;overflow:hidden;box-shadow:0 10px 26px #0206171a}.note-card:before{content:"";background:radial-gradient(700px 320px at 100% 0%, color-mix(in srgb, var(--color-accent) 16%, transparent), transparent 55%), radial-gradient(700px 320px at 0% 100%, #c9a44c20, transparent 55%);opacity:.55;pointer-events:none;position:absolute;inset:0}.note-card>*{z-index:1;position:relative}.note-card:hover{background:color-mix(in srgb, var(--color-bg-surface) 92%, var(--color-bg-secondary) 8%);border-color:#c9a44c4d;transform:translateY(-2px);box-shadow:0 14px 34px #02061724}.note-card-head{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px;display:flex}.note-title{font-weight:var(--font-weight-extrabold);color:var(--color-text-primary);flex:1;font-size:16px;line-height:1.3}.note-tag{color:var(--color-text-primary);font-size:12px;font-weight:var(--font-weight-semibold);white-space:nowrap;background:#c9a44c16;border:1px solid #c9a44c38;border-radius:999px;padding:3px 10px}.note-body,.note-content{color:var(--color-text-secondary);white-space:pre-wrap;word-break:break-word;margin-bottom:8px;font-size:13px;line-height:1.5}.note-actions{gap:6px;display:flex}.note-actions .btn-edit,.note-actions .btn-delete{background:var(--color-bg-secondary);border:1px solid var(--color-border-light);cursor:pointer;color:var(--color-text-secondary);border-radius:12px;padding:8px;font-size:12px;transition:background .18s,border-color .18s,transform .12s,color .18s}.note-actions .btn-edit:hover{background:color-mix(in srgb, var(--color-accent) 12%, transparent);border-color:color-mix(in srgb, var(--color-accent) 28%, var(--color-border-light));color:var(--color-accent);transform:translateY(-1px)}.note-actions .btn-delete:hover{background:color-mix(in srgb, var(--color-danger) 10%, transparent);border-color:color-mix(in srgb, var(--color-danger) 24%, var(--color-border-light));color:var(--color-danger);transform:translateY(-1px)}.note-tags{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.note-tag-item{background:var(--color-bg-secondary);border:1px solid var(--color-border-light);color:var(--color-text-secondary);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:11px;transition:background .18s,border-color .18s,color .18s;display:inline-flex}.note-tag-item:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary);border-color:#c9a44c4d}.note-category{background:var(--color-bg-secondary);border:1px solid var(--color-border-light);font-size:11px;font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);border-radius:999px;align-items:center;gap:6px;margin-bottom:10px;padding:3px 10px;display:inline-flex}.note-priority{font-size:11px;font-weight:var(--font-weight-extrabold);text-transform:uppercase;letter-spacing:.06em;border:1px solid var(--color-border-light);border-radius:999px;align-items:center;gap:6px;padding:3px 10px;display:inline-flex}.note-priority.high{background:color-mix(in srgb, var(--color-danger) 10%, transparent);color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 24%, var(--color-border-light))}.note-priority.medium{background:color-mix(in srgb, var(--color-warning) 10%, transparent);color:var(--color-warning);border-color:color-mix(in srgb, var(--color-warning) 24%, var(--color-border-light))}.note-priority.low{background:color-mix(in srgb, var(--color-accent) 10%, transparent);color:var(--color-accent);border-color:color-mix(in srgb, var(--color-accent) 24%, var(--color-border-light))}.note-preview{max-height:200px;position:relative;overflow:hidden}.note-preview:after{content:"";background:linear-gradient(transparent, var(--color-bg-surface));pointer-events:none;height:46px;position:absolute;bottom:0;left:0;right:0}.note-full-content{max-height:none;overflow:visible}.note-full-content .note-preview:after{display:none}.note-metadata{border-top:1px solid var(--color-border-light);color:var(--color-text-tertiary);justify-content:space-between;align-items:center;margin-top:10px;padding-top:10px;font-size:11px;display:flex}.note-info{align-items:center;gap:12px;display:flex}.note-stat{align-items:center;gap:6px;display:flex}.note-stat i{opacity:.85;font-size:10px}.note-search{margin-bottom:16px}.search-input-wrapper{position:relative}.search-input-wrapper i{color:var(--color-text-tertiary);font-size:14px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.note-search-input{border:1px solid var(--color-border-light);background:var(--color-bg-surface);width:100%;color:var(--color-text-primary);border-radius:12px;padding:10px 12px 10px 36px;font-size:14px}.note-search-input:focus{border-color:#c9a44c8c;outline:none;box-shadow:0 0 0 3px #c9a44c24}.note-filters{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.filter-chip{border:1px solid var(--color-border-light);background:var(--color-bg-surface);color:var(--color-text-secondary);font-size:12px;font-weight:var(--font-weight-semibold);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:7px 12px;transition:background .18s,border-color .18s,color .18s,transform .12s;display:inline-flex}.filter-chip:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary);border-color:#c9a44c4d;transform:translateY(-1px)}.filter-chip.active{color:#fffffff5;background:#897034f1;border-color:#c9a44c38}.note-sort{color:var(--color-text-secondary);align-items:center;gap:10px;margin-bottom:16px;font-size:13px;display:flex}.sort-options{flex-wrap:wrap;gap:8px;display:flex}.sort-option{border:1px solid var(--color-border-light);background:var(--color-bg-surface);color:var(--color-text-secondary);font-size:12px;font-weight:var(--font-weight-semibold);cursor:pointer;border-radius:12px;padding:7px 12px;transition:background .18s,border-color .18s,color .18s}.sort-option:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary);border-color:#c9a44c4d}.sort-option.active{color:#fffffff5;background:#897034f1;border-color:#c9a44c38}.note-editor{background:var(--color-bg-surface);border:1px solid var(--color-border-light);border-radius:16px;margin-bottom:18px;padding:18px;box-shadow:0 10px 26px #02061714}.editor-toolbar{border-bottom:1px solid var(--color-border-light);flex-wrap:wrap;gap:8px;margin-bottom:12px;padding-bottom:12px;display:flex}.toolbar-button{border:1px solid var(--color-border-light);background:var(--color-bg-secondary);width:38px;height:38px;color:var(--color-text-secondary);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;transition:background .18s,border-color .18s,color .18s,transform .12s;display:flex}.toolbar-button:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary);border-color:#c9a44c4d;transform:translateY(-1px)}.toolbar-button.active{color:#fffffff5;background:#897034f1;border-color:#c9a44c38}.note-editor-input{border:1px solid var(--color-border-light);background:var(--color-bg-surface);width:100%;min-height:200px;color:var(--color-text-primary);resize:vertical;border-radius:14px;padding:12px;font-size:14px;line-height:1.6}.note-editor-input:focus{border-color:#c9a44c8c;outline:none;box-shadow:0 0 0 3px #c9a44c24}.note-empty-state{text-align:center;color:var(--color-text-secondary);background:var(--color-bg-surface);border:2px dashed var(--color-border);border-radius:16px;padding:60px 20px}.note-empty-icon{color:#c9a44c8c;opacity:.7;margin-bottom:16px;font-size:48px}.note-empty-state h3{font-size:18px;font-weight:var(--font-weight-extrabold);color:var(--color-text-primary);margin-bottom:8px}.note-empty-state p{color:var(--color-text-secondary);max-width:320px;margin-bottom:24px;margin-left:auto;margin-right:auto}.note-pinned{background:linear-gradient(90deg, #c9a44c16 0%, transparent 14%), var(--color-bg-surface);border-left:4px solid #c9a44cf2}.note-shared{border-left:4px solid var(--color-accent);background:linear-gradient(90deg, color-mix(in srgb, var(--color-accent) 10%, transparent) 0%, transparent 14%), var(--color-bg-surface)}.note-locked{opacity:.85;position:relative}.note-locked .note-body{filter:blur(4px);-webkit-user-select:none;user-select:none}.note-locked:hover .note-body{filter:none;-webkit-user-select:text;user-select:text}@media (width<=1100px){.notes-grid{grid-template-columns:1fr}}@media (width<=768px){.note-card-head{flex-direction:column;align-items:flex-start;gap:8px}}:root{--event-default-bg:#fff;--event-default-border:var(--cal-line);--event-default-text:var(--cal-text);--event-class-bg:#1f6b450f;--event-class-border:#1f6b45;--event-class-text:#1f6b45;--event-meeting-bg:#c9a44c0f;--event-meeting-border:#c9a44c;--event-meeting-text:#c9a44c;--event-personal-bg:#1f6b450a;--event-personal-border:#1f6b45;--event-personal-text:#1f6b45;--event-deadline-bg:#b91c1c0f;--event-deadline-border:#b91c1c;--event-deadline-text:#b91c1c;--event-study-bg:#1f6b450f;--event-study-border:#1f6b45;--event-study-text:#1f6b45;--event-workout-bg:#c9a44c0f;--event-workout-border:#c9a44c;--event-workout-text:#c9a44c;--event-social-bg:#c9a44c0a;--event-social-border:#c9a44c;--event-social-text:#c9a44c;--cal-bg:#f5f3ef;--cal-card:#fff;--cal-line:#e2ddd4;--cal-line-strong:#d5cfc4;--cal-text:#1a1a1a;--cal-muted:#8a8578;--cal-faint:#c4beb3;--cal-green:#1f6b45;--cal-green-soft:#1f6b450f;--cal-gold:#c9a44c;--cal-gold-soft:#c9a44c0f;--cal-shadow:0 4px 12px #0000000f;--cal-font:"SF Mono", "JetBrains Mono", monospace}.calendar-grid-view{box-shadow:none;background:0 0;border:none;border-radius:0;margin-bottom:24px;padding:0}.calendar-week-header{border-bottom:2px solid var(--cal-line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;padding-bottom:12px;display:flex}.week-number-badge{background:var(--cal-gold-soft);border:1px solid var(--cal-line);color:var(--cal-text);font-size:11px;font-weight:600;font-family:var(--cal-font);text-transform:uppercase;letter-spacing:.3px;border-radius:4px;align-items:center;gap:8px;padding:6px 14px;display:inline-flex}.week-number-badge i{color:var(--cal-gold);font-size:14px}.week-range{color:var(--cal-muted);background:var(--cal-card);border:1px solid var(--cal-line);font-size:12px;font-family:var(--cal-font);border-radius:4px;padding:4px 12px}.calendar-view-tools{gap:6px;display:flex}.btn-icon{background:var(--cal-card);border:1px solid var(--cal-line);cursor:pointer;color:var(--cal-muted);font-size:13px;font-family:var(--cal-font);border-radius:4px;align-items:center;gap:6px;padding:6px 10px;transition:all .15s;display:inline-flex}.btn-icon:hover{border-color:var(--cal-gold-border);color:var(--cal-green);background:var(--cal-gold-soft);transform:translateY(-1px)}.search-bar-container{background:var(--cal-card);border:1px solid var(--cal-line);border-radius:4px;margin-bottom:16px;padding:12px 14px;animation:.2s slideDown}@keyframes slideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.search-bar{background:var(--cal-card);border:1px solid var(--cal-line);border-radius:4px;align-items:center;gap:10px;margin-bottom:12px;padding:4px 12px;transition:all .15s;display:flex}.search-bar:focus-within{border-color:var(--cal-gold);box-shadow:0 0 0 3px #c9a44c1f}.search-bar i{color:var(--cal-gold);font-size:13px}.search-bar input{color:var(--cal-text);font-size:13px;font-family:var(--cal-font);background:0 0;border:none;outline:none;flex:1;padding:6px 0}.search-bar input::placeholder{color:var(--cal-faint)}.btn-clear-search{cursor:pointer;color:var(--cal-muted);background:0 0;border:1px solid #0000;border-radius:4px;padding:4px 6px;font-size:12px;transition:all .15s}.btn-clear-search:hover{color:var(--cal-text);background:var(--cal-gold-soft);border-color:var(--cal-line)}.filter-tags{flex-wrap:wrap;gap:6px;display:flex}.filter-tag{background:var(--cal-card);border:1px solid var(--cal-line);cursor:pointer;color:var(--cal-muted);font-size:10px;font-family:var(--cal-font);text-transform:uppercase;letter-spacing:.3px;border-radius:4px;padding:4px 12px;font-weight:500;transition:all .15s}.filter-tag:hover{border-color:var(--cal-gold-border);color:var(--cal-text);background:var(--cal-gold-soft)}.filter-tag.active{background:var(--cal-green);border-color:var(--cal-green);color:#fff}.calendar-grid{background:var(--cal-line);border-radius:4px;grid-template-columns:repeat(7,1fr);gap:1px;margin-bottom:20px;display:grid;overflow:hidden}.calendar-day-cell{background:var(--cal-card);flex-direction:column;min-height:360px;padding:10px;transition:all .15s;display:flex;position:relative}.calendar-day-cell.is-today{background:var(--cal-gold-soft);position:relative}.calendar-day-cell.is-today:before{content:"";background:var(--cal-gold);height:2px;position:absolute;top:0;left:0;right:0}.calendar-day-cell.is-weekend{background:#faf8f5}.calendar-day-header{text-align:center;border-bottom:1px solid var(--cal-line);margin-bottom:10px;padding-bottom:8px;position:relative}.day-name{text-transform:uppercase;letter-spacing:.5px;color:var(--cal-muted);font-size:9px;font-weight:600;font-family:var(--cal-font);margin-bottom:2px}.day-date{color:var(--cal-text);font-size:18px;font-weight:700;font-family:var(--cal-font)}.today-badge{background:var(--cal-gold);color:#fff;font-size:8px;font-weight:600;font-family:var(--cal-font);text-transform:uppercase;letter-spacing:.3px;border-radius:3px;margin-top:4px;padding:1px 8px;display:inline-block}.calendar-day-events{flex-direction:column;flex:1;gap:6px;min-height:260px;max-height:300px;padding-right:2px;display:flex;overflow-y:auto}.empty-day-message{text-align:center;color:var(--cal-faint);font-size:10px;font-family:var(--cal-font);padding:20px 10px}.event-card{background:var(--cal-card);border-left:3px solid var(--event-color,var(--cal-line));cursor:pointer;box-shadow:none;border:1px solid var(--cal-line);border-radius:4px;padding:8px 10px;transition:all .15s;position:relative}.event-card:hover{box-shadow:var(--cal-shadow);border-color:var(--cal-gold-border);transform:translate(2px)}.event-card-header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.event-time-badge{color:var(--cal-gold);font-size:10px;font-weight:600;font-family:var(--cal-font);align-items:center;gap:4px;display:flex}.event-time-badge i{font-size:9px}.event-duration{color:var(--cal-muted);font-size:9px;font-weight:400}.event-category-dot{background:var(--event-color);border-radius:50%;width:6px;height:6px}.event-title{color:var(--cal-text);font-size:12px;font-weight:600;line-height:1.3;font-family:var(--cal-font);margin-bottom:3px}.event-location{color:var(--cal-muted);font-size:10px;font-family:var(--cal-font);align-items:center;gap:4px;display:flex}.event-location i{font-size:8px}.event-description-preview{color:var(--cal-muted);-webkit-line-clamp:2;line-clamp:2;font-size:10px;line-height:1.3;font-family:var(--cal-font);-webkit-box-orient:vertical;margin-top:4px;display:-webkit-box;overflow:hidden}.event-card-compact{background:var(--cal-card);border-left:2px solid var(--event-color);cursor:pointer;border:1px solid var(--cal-line);border-radius:4px;padding:6px 8px;transition:all .15s}.event-card-compact:hover{box-shadow:var(--cal-shadow);transform:translate(2px)}.event-time-compact{color:var(--cal-gold);font-size:9px;font-weight:600;font-family:var(--cal-font);margin-bottom:2px}.event-title-compact{color:var(--cal-text);font-size:11px;font-weight:600;font-family:var(--cal-font)}.event-location-compact{color:var(--cal-muted);font-size:9px;font-family:var(--cal-font);align-items:center;gap:4px;margin-top:2px;display:flex}.event-card[data-color-category=class]{--event-color:var(--event-class-border);background:var(--event-class-bg);border-left-color:var(--event-class-border)}.event-card[data-color-category=meeting]{--event-color:var(--event-meeting-border);background:var(--event-meeting-bg);border-left-color:var(--event-meeting-border)}.event-card[data-color-category=personal]{--event-color:var(--event-personal-border);background:var(--event-personal-bg);border-left-color:var(--event-personal-border)}.event-card[data-color-category=deadline]{--event-color:var(--event-deadline-border);background:var(--event-deadline-bg);border-left-color:var(--event-deadline-border)}.event-card[data-color-category=study]{--event-color:var(--event-study-border);background:var(--event-study-bg);border-left-color:var(--event-study-border)}.event-card[data-color-category=workout]{--event-color:var(--event-workout-border);background:var(--event-workout-bg);border-left-color:var(--event-workout-border)}.event-card[data-color-category=social]{--event-color:var(--event-social-border);background:var(--event-social-bg);border-left-color:var(--event-social-border)}.add-event-quick{background:var(--cal-card);border:1px solid var(--cal-line);cursor:pointer;color:var(--cal-muted);opacity:0;font-size:10px;font-family:var(--cal-font);border-radius:4px;align-items:center;gap:4px;padding:4px 8px;transition:all .15s;display:flex;position:absolute;bottom:6px;right:6px}.calendar-day-cell:hover .add-event-quick{opacity:1}.add-event-quick:hover{background:var(--cal-gold-soft);border-color:var(--cal-gold);color:var(--cal-green)}.mini-calendar-container{border-top:1px solid var(--cal-line);margin-top:20px;padding-top:16px}.mini-calendar{background:var(--cal-card);border:1px solid var(--cal-line);border-radius:4px;max-width:300px;margin:0 auto;padding:14px}.mini-calendar-header{justify-content:space-between;align-items:center;margin-bottom:12px;padding:0 4px;display:flex}.mini-calendar-header button{border:1px solid var(--cal-line);cursor:pointer;color:var(--cal-muted);background:0 0;border-radius:4px;padding:4px 8px;font-size:12px;transition:all .15s}.mini-calendar-header button:hover{border-color:var(--cal-gold);color:var(--cal-green);background:var(--cal-gold-soft)}.mini-cal-month{color:var(--cal-text);font-size:12px;font-weight:600;font-family:var(--cal-font);text-transform:uppercase;letter-spacing:.3px}.mini-cal-weekdays{text-align:center;color:var(--cal-muted);text-transform:uppercase;letter-spacing:.3px;font-size:9px;font-weight:600;font-family:var(--cal-font);grid-template-columns:repeat(7,1fr);margin-bottom:8px;display:grid}.mini-cal-days{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.mini-cal-day{aspect-ratio:1;cursor:pointer;color:var(--cal-text);font-size:11px;font-family:var(--cal-font);border-radius:4px;flex-direction:column;justify-content:center;align-items:center;transition:all .15s;display:flex;position:relative}.mini-cal-day:hover{background:var(--cal-gold-soft)}.mini-cal-day.today{background:var(--cal-gold-soft);color:var(--cal-gold);font-weight:700}.mini-cal-day.selected{background:var(--cal-green);color:#fff}.mini-cal-day.has-events{position:relative}.day-number{font-size:11px}.event-dot{background:var(--cal-gold);color:#fff;text-align:center;border-radius:2px;min-width:12px;padding:1px 4px;font-size:6px;position:absolute;bottom:2px}.event-card[data-recurring=true]:after{content:"⟳";color:var(--cal-gold);opacity:.6;font-size:9px;position:absolute;top:6px;right:6px}.modal-section{margin-bottom:14px}.modal-section label{color:var(--cal-muted);text-transform:uppercase;letter-spacing:.3px;font-size:10px;font-weight:600;font-family:var(--cal-font);margin-bottom:4px;display:block}.form-select{background:var(--cal-card);border:1px solid var(--cal-line);width:100%;color:var(--cal-text);font-size:13px;font-family:var(--cal-font);border-radius:4px;padding:8px 12px;transition:all .15s}.form-select:focus{border-color:var(--cal-gold);outline:none;box-shadow:0 0 0 3px #c9a44c1f}.category-preview{color:var(--cal-muted);font-size:11px;font-family:var(--cal-font);align-items:center;gap:6px;margin-top:6px;display:flex}.category-dot-preview{border-radius:50%;width:10px;height:10px}.modal-actions{border-top:1px solid var(--cal-line);justify-content:flex-end;gap:10px;margin-top:20px;padding-top:14px;display:flex}.modal-actions .btn-danger{margin-right:auto}#deleteSeriesBtn{color:#b91c1c;background:#b91c1c0f;border-color:#b91c1c26}#deleteSeriesBtn:hover{background:#b91c1c1f;border-color:#b91c1c}.event-detail-header{padding-left:12px;position:relative}.category-indicator{border-radius:2px;width:3px;position:absolute;top:0;bottom:0;left:0}.detail-title{color:var(--cal-text);font-size:18px;font-weight:700;font-family:var(--cal-font);margin-bottom:6px}.detail-date{color:var(--cal-muted);font-size:12px;font-family:var(--cal-font);margin-bottom:6px}.detail-time{color:var(--cal-gold);font-size:12px;font-family:var(--cal-font);align-items:center;gap:6px;display:flex}.modal-header{border-left:3px solid var(--event-color,var(--cal-gold))}.events-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;display:flex}.toolbar-group{align-items:center;gap:6px;display:flex}#naturalLangBtn{background:var(--cal-gold-soft);border-color:var(--cal-gold-border);color:var(--cal-green);transition:all .15s}#naturalLangBtn:hover{background:var(--cal-gold-soft);border-color:var(--cal-gold);transform:scale(1.02)}#naturalLangBtn i{animation:2s infinite magicSparkle}@keyframes magicSparkle{0%,to{opacity:.5}50%{opacity:1}}@keyframes eventAppear{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.event-card{animation:.2s eventAppear}.event-card.dragging{opacity:.4;cursor:grabbing}.calendar-day-cell.drag-over{background:var(--cal-gold-soft);border:2px dashed var(--cal-gold)}@media (width<=1200px){.calendar-grid{grid-template-columns:repeat(7,minmax(180px,1fr));overflow-x:auto}.calendar-day-cell{min-width:180px;min-height:300px}}@media (width<=900px){.calendar-grid{background:0 0;gap:10px;padding-bottom:8px;display:flex;overflow-x:auto}.calendar-day-cell{background:var(--cal-card);border:1px solid var(--cal-line);border-radius:4px;min-width:250px;min-height:320px}.calendar-week-header{flex-direction:column;align-items:flex-start}.filter-tags{flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}.filter-tag{white-space:nowrap}.toolbar-group{flex-wrap:wrap}.events-toolbar{flex-direction:column;align-items:stretch}}@media (width<=600px){.calendar-day-cell{min-width:220px;min-height:280px;padding:8px}.event-card{padding:6px 8px}.event-title{font-size:11px}.mini-calendar{max-width:100%}.calendar-grid-view{padding:0}}@media (width<=400px){.calendar-day-cell{min-width:180px;min-height:240px}.day-date{font-size:15px}.calendar-day-events{min-height:180px;max-height:200px}}.event-card:focus-visible,.filter-tag:focus-visible,.btn-icon:focus-visible,.add-event-quick:focus-visible,.mini-cal-day:focus-visible{outline:2px solid var(--cal-gold);outline-offset:2px}.calendar-day-events::-webkit-scrollbar{width:3px}.calendar-day-events::-webkit-scrollbar-track{background:var(--cal-line);border-radius:2px}.calendar-day-events::-webkit-scrollbar-thumb{background:var(--cal-gold);border-radius:2px}.calendar-day-events::-webkit-scrollbar-thumb:hover{background:var(--cal-gold-border)}@media print{.calendar-grid-view{box-shadow:none;padding:0}.btn-icon,.add-event-quick,.search-bar-container,.calendar-view-tools,.mini-calendar-container{display:none!important}.calendar-day-cell{break-inside:avoid;page-break-inside:avoid}.event-card{box-shadow:none;border:1px solid var(--cal-line)}}.calendar-page-header{align-items:center;min-height:58px!important;padding-block:8px!important}.calendar-page-header>div:first-child{align-items:baseline;gap:12px;min-width:0;display:flex}.calendar-page-header .card-title{white-space:nowrap;font-size:1rem}.calendar-page-description{color:var(--cal-muted);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.75rem;overflow:hidden}.calendar-page-header .card-actions{flex-wrap:wrap}.calendar-add-event{gap:7px;background:var(--cal-green)!important;color:#fff!important}.calendar-google-connect{align-items:center;gap:8px;display:inline-flex;border:1px solid var(--cal-line)!important;padding:8px 12px!important}.calendar-google-connect.is-connected{background:#f2faf5;border-color:#78a68d!important}.google-g-icon{flex:none;width:18px;height:18px}.calendar-all-day-control{color:var(--cal-text);cursor:pointer;align-items:center;gap:8px;margin-top:10px;font-size:.82rem;display:inline-flex}.calendar-all-day-control input{accent-color:var(--cal-green)}.calendar-toolbar{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;min-height:50px;padding:6px 0;display:grid}.calendar-toolbar h2{text-align:center;color:var(--cal-text);margin:0;font-size:.92rem}.calendar-week-navigation,.calendar-view-switcher{align-items:center;gap:5px;display:flex}.calendar-view-switcher{justify-self:end}.calendar-week-navigation button,.calendar-view-switcher button{border:1px solid var(--cal-line);color:var(--cal-text);cursor:pointer;background:#fff;border-radius:6px;min-height:32px;padding:5px 9px}.calendar-week-navigation strong{text-transform:uppercase;padding:0 4px;font-size:.68rem}.calendar-view-switcher button.is-active{color:#fff;background:var(--cal-green);border-color:var(--cal-green)}.calendar-time-grid-scroll{border:1px solid var(--cal-line);overscroll-behavior:contain;scrollbar-gutter:stable;background:#fff;border-radius:9px;min-height:320px;overflow:hidden auto}.calendar-grid-view.calendar-view--week{flex-direction:column;height:clamp(700px,100dvh - 195px,1040px);display:flex}.calendar-grid-view.calendar-view--week .calendar-toolbar,.calendar-grid-view.calendar-view--week .calendar-lower{flex:none}.calendar-grid-view.calendar-view--week .calendar-time-grid-scroll{flex:auto;min-height:0}.calendar-week-grid{grid-template-columns:62px repeat(7,minmax(0,1fr));grid-template-rows:58px var(--calendar-grid-height);width:100%;min-width:0;display:grid;position:relative}.calendar-time-corner{color:var(--cal-muted);border-right:1px solid var(--cal-line);border-bottom:1px solid var(--cal-line);z-index:6;background:#fff;grid-area:1/1;padding:38px 6px 0;font-size:.62rem;position:sticky;top:0;left:0}.calendar-day-header{z-index:5;border-right:1px solid var(--cal-line);border-bottom:1px solid var(--cal-line);background:#fff;flex-direction:column;grid-row:1;justify-content:center;align-items:center;display:flex;position:sticky;top:0}.calendar-day-header span{color:var(--cal-muted);text-transform:uppercase;font-size:.69rem;font-weight:700}.calendar-day-header strong{margin-top:1px;font-size:.84rem}.calendar-day-header em{color:#fff;background:#d39a20;border-radius:4px;margin-top:2px;padding:1px 7px;font-size:.5rem;font-style:normal}.calendar-day-header.is-today{background:#fff9e8}.calendar-time-rail{z-index:4;border-right:1px solid var(--cal-line);background:#fff;grid-area:2/1;position:sticky;left:0}.calendar-time-rail span{color:var(--cal-muted);font-size:.67rem;position:absolute;right:8px;transform:translateY(-50%)}.calendar-day-column{border-right:1px solid var(--cal-line);min-height:var(--calendar-grid-height);background:#fff;grid-row:2;position:relative}.calendar-today-column{background:#fffae9}.calendar-all-day{z-index:2;height:24px;position:absolute;top:-27px;left:3px;right:3px;overflow:hidden}.calendar-all-day button{border:0;border-left:3px solid var(--cal-gold);text-align:left;background:#fff4d8;width:100%;padding:3px;font-size:.68rem}.calendar-day-hours span{pointer-events:none;border-top:1px solid #ede9e1;position:absolute;left:0;right:0}.calendar-event{z-index:2;border:0;border-left:4px solid var(--calendar-event-border);background:var(--calendar-event-bg);color:var(--calendar-event-text);text-align:left;cursor:pointer;border-radius:5px;flex-direction:column;align-items:stretch;gap:2px;padding:6px 7px;display:flex;position:absolute;overflow:hidden;box-shadow:0 1px 3px #112d1f14}.calendar-event:hover{z-index:3;filter:saturate(1.08);box-shadow:0 4px 12px #112d1f24}.calendar-event.is-dragging{opacity:.45}.calendar-day-column.is-drop-target{box-shadow:inset 0 0 0 2px var(--cal-green);background:#edf8f1}.calendar-event-time{opacity:.78;white-space:nowrap;font-size:.63rem;font-weight:700}.calendar-event-source{align-items:center;gap:4px;font-size:.65rem;font-weight:700;display:flex}.calendar-event-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.75rem;line-height:1.2;display:-webkit-box;overflow:hidden}.calendar-event-location{opacity:.72;white-space:nowrap;text-overflow:ellipsis;font-size:.62rem;overflow:hidden}.calendar-event--compact{gap:0;padding-block:3px}.calendar-event--compact .calendar-event-source{display:none}.calendar-event--compact .calendar-event-time{display:inline}.calendar-google-mark{color:#4285f4;font:800 .72rem Arial,sans-serif}.calendar-empty-day{text-align:center;color:#aaa397;font-size:.72rem;line-height:1.5;position:absolute;top:42%;left:0;right:0}.calendar-lower{z-index:20;background:var(--cal-bg);margin-top:8px;display:block;position:relative}.calendar-week-summary{border:1px solid var(--cal-line);background:#fff;border-radius:8px;grid-template-columns:130px minmax(0,1fr);align-items:center;gap:10px;width:100%;padding:8px 10px;display:grid;box-shadow:0 -3px 12px #0f31220f}.calendar-week-summary h3{margin:0;font-size:.72rem;line-height:1.25}.calendar-summary-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.calendar-summary-card{border:1px solid var(--cal-line);border-radius:7px;align-items:center;gap:8px;min-width:0;padding:7px 9px;display:flex}.calendar-summary-card>i{color:var(--cal-green);background:var(--cal-green-soft);border-radius:50%;padding:7px;font-size:.72rem}.calendar-summary-card strong,.calendar-summary-card span{display:block}.calendar-summary-card strong{color:var(--cal-text);font-size:.86rem}.calendar-summary-card span{color:var(--cal-muted);margin-top:1px;font-size:.56rem}.calendar-agenda{gap:10px;display:grid}.calendar-agenda-day{border:1px solid var(--cal-line);border-radius:8px;padding:12px}.calendar-agenda-day h3{margin:0 0 8px;font-size:.83rem}.calendar-agenda-day .calendar-empty-day{text-align:left;margin:0;position:static}.calendar-agenda-event{border:0;border-left:4px solid var(--calendar-event-border);background:var(--calendar-event-bg);text-align:left;border-radius:4px;grid-template-columns:130px 1fr auto;align-items:center;gap:10px;width:100%;margin-top:5px;padding:9px;display:grid}.calendar-agenda-event span,.calendar-agenda-event small{color:var(--cal-muted)}.calendar-month-grid{border:1px solid var(--cal-line);border-radius:8px;grid-template-columns:repeat(7,1fr);display:grid;overflow:hidden}.calendar-month-day{border-right:1px solid var(--cal-line);border-bottom:1px solid var(--cal-line);min-height:112px;padding:6px}.calendar-month-day.is-outside{opacity:.55;background:#faf9f6}.calendar-month-day>button:first-child{background:0 0;border:0;font-weight:700}.calendar-month-event{border:0;border-left:3px solid var(--calendar-event-border);text-align:left;text-overflow:ellipsis;white-space:nowrap;background:#f7f7f4;width:100%;margin-top:4px;padding:4px;font-size:.65rem;display:block;overflow:hidden}.calendar-loading{grid-template-columns:repeat(7,1fr);gap:8px;height:420px;display:grid;position:relative}.calendar-loading span{background:linear-gradient(90deg,#f1eee8,#faf9f6,#f1eee8) 0 0/200%;border-radius:7px;animation:1.4s infinite calendar-shimmer}.calendar-loading p{text-align:center;color:var(--cal-muted);position:absolute;inset:auto 0 20px}@keyframes calendar-shimmer{to{background-position:-200% 0}}.calendar-event:focus-visible,.calendar-toolbar button:focus-visible{outline-offset:2px;outline:3px solid #c9a44c73}.event-details-overlay{z-index:10000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f1f1775;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.calendar-event-details-dialog{align-items:initial;justify-content:initial;border:1px solid var(--cal-line);background:#fff;border-radius:12px;width:min(520px,100%);max-height:min(720px,90vh);padding:24px;display:block;position:relative;overflow-y:auto;box-shadow:0 24px 70px #0f1f173d}.calendar-event-details-dialog h2{color:var(--cal-text);overflow-wrap:break-word;margin:6px 36px 18px 0;font-size:1.35rem}.event-details-close{border:1px solid var(--cal-line);cursor:pointer;background:#fff;border-radius:7px;width:34px;height:34px;font-size:1.4rem;position:absolute;top:12px;right:12px}.event-details-source{color:var(--cal-green);align-items:center;gap:7px;margin:0;font-size:.78rem;font-weight:700;display:flex}.calendar-event-details-dialog dl{grid-template-columns:82px minmax(0,1fr);gap:10px 14px;margin:0 0 20px;display:grid}.calendar-event-details-dialog dt{color:var(--cal-muted);font-size:.75rem;font-weight:700}.calendar-event-details-dialog dd{color:var(--cal-text);white-space:pre-wrap;overflow-wrap:break-word;margin:0}.event-readonly-note{color:#67531a;background:#fff9e8;border:1px solid #e2d39d;border-radius:7px;padding:12px;font-size:.82rem;line-height:1.45}@media (width<=900px){.calendar-page-description{display:none}.calendar-toolbar{grid-template-columns:1fr 1fr}.calendar-toolbar h2{grid-area:1/1/auto/-1}.calendar-week-navigation,.calendar-view-switcher{grid-row:2}.calendar-week-summary{grid-template-columns:1fr}.calendar-week-summary h3{display:none}.calendar-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=600px){.calendar-page-header{align-items:flex-start}.calendar-page-header .card-actions{width:100%}.calendar-google-connect span{display:inline}.calendar-toolbar{flex-direction:column;align-items:stretch;display:flex}.calendar-toolbar h2{order:-1}.calendar-view-switcher{justify-self:auto}.calendar-view-switcher button{flex:1}.calendar-week-navigation{justify-content:center}.calendar-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-agenda-event{grid-template-columns:1fr;gap:3px}.calendar-month-day{min-height:76px}.calendar-month-event{display:none}.calendar-week-grid{grid-template-columns:44px repeat(7,minmax(0,1fr))}.calendar-time-rail span{font-size:.55rem;right:3px}.calendar-day-header strong{font-size:.7rem}.calendar-day-header span{font-size:.55rem}.calendar-event{padding-inline:3px}.calendar-event-title{-webkit-line-clamp:3;font-size:.62rem}.calendar-event-time{white-space:normal;font-size:.52rem}.calendar-event-source,.calendar-event-location{display:none}.calendar-grid-view.calendar-view--week{height:clamp(560px,100dvh - 210px,760px)}}:root{--dash-bg:#f5f3ef;--dash-card:#fff;--dash-line:#e2ddd4;--dash-line-strong:#d5cfc4;--dash-text:#1a1a1a;--dash-muted:#8a8578;--dash-faint:#c4beb3;--dash-green:#1f6b45;--dash-green-hover:#174f34;--dash-green-soft:#1f6b450f;--dash-green-border:#1f6b451f;--dash-gold:#c9a44c;--dash-gold-soft:#c9a44c0f;--dash-gold-border:#c9a44c26;--dash-shadow:0 4px 12px #0000000f;--dash-font:"SF Mono", "JetBrains Mono", monospace}.card.command-center{box-shadow:none;background:0 0;border:none}.card.command-center .card-content.acc-grid,.acc-grid{grid-template-columns:minmax(0,1.22fr) minmax(320px,.78fr);align-items:stretch;gap:16px;padding:0;display:grid}.acc-charts,.acc-risk-insights{flex-direction:column;gap:16px;min-width:0;height:100%;display:flex}.acc-side{grid-template-rows:minmax(0,1fr) minmax(0,1fr);align-content:stretch;gap:16px;display:grid}.acc-chart,.chart-container,.risk-section,.focus-card,.insights-card{background:var(--dash-card);border:1px solid var(--dash-line);box-shadow:var(--dash-shadow);border-radius:4px;transition:all .15s}.acc-chart:hover,.chart-container:hover,.risk-section:hover,.focus-card:hover,.insights-card:hover{border-color:var(--dash-gold-border)}.acc-chart,.chart-container{flex:1;min-height:0;padding:14px 16px}.risk-section,.focus-card,.insights-card{flex-direction:column;flex:1;padding:14px 16px;display:flex}.chart-container:first-child,.risk-section{min-height:240px}.chart-container:last-child,.insights-card{min-height:260px}.acc-chart-title,.chart-title,.acc-subtitle,.insights-title,.focus-title,.section-header h3{color:var(--dash-text);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:600;font-family:var(--dash-font)}.acc-chart-title,.chart-title,.acc-subtitle{margin-bottom:8px}.chart-header,.insights-header,.section-header,.focus-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.section-header{border-bottom:1px solid var(--dash-line);padding-bottom:6px}.chart-header{margin-bottom:10px}.chart-legend{color:var(--dash-muted);font-size:10px;font-family:var(--dash-font)}.legend-dot{border-radius:50%;width:6px;height:6px;margin-right:4px;display:inline-block}.chart-container canvas{flex:1;min-height:160px;width:100%!important;height:100%!important}.risk-summary,.risk-summary-badges,.alerts-strip{flex-wrap:wrap;gap:6px;display:flex}.risk-summary-badge,.alert-chip,.risk-tag,.risk-badge,.focus-meta,.status-badge{white-space:nowrap;text-transform:uppercase;letter-spacing:.3px;font-size:9px;font-weight:600;font-family:var(--dash-font);border:1px solid #0000;border-radius:3px;justify-content:center;align-items:center;gap:4px;padding:3px 8px;display:inline-flex}.risk-summary-badge,.alert-chip,.risk-tag,.risk-badge,.focus-meta{border-color:var(--dash-line);background:var(--dash-card);color:var(--dash-muted)}.risk-summary-badge.high,.risk-tag-danger,.risk-badge.risk-danger,.alert-danger{color:#b91c1c;background:#fee9e8;border-color:#b91c1c26}.risk-summary-badge.medium,.risk-tag-warn,.risk-badge.risk-warn,.alert-warn{color:#b45309;background:#fef3e2;border-color:#b4530926}.risk-summary-badge.low,.risk-tag-ok,.risk-badge.risk-ok,.alert-ok,.status-badge.status-ok{color:var(--dash-green);border-color:var(--dash-green-border);background:var(--dash-green-soft)}.status-badge.status-watch,.status-badge.status-warn{color:#b45309;background:#fef3e2}.status-badge.status-danger{color:#b91c1c;background:#fee9e8}.risk-list{display:block}.risk-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:12px;font-family:var(--dash-font)}.risk-table thead th{text-align:left;letter-spacing:.5px;text-transform:uppercase;color:var(--dash-muted);border-bottom:2px solid var(--dash-line);background:0 0;padding:8px 6px 6px;font-size:9px;font-weight:600}.risk-table tbody td{border-bottom:1px solid var(--dash-line);vertical-align:middle;padding:8px 6px}.risk-table tbody tr:last-child td{border-bottom:none}.risk-table tbody tr:hover{background:var(--dash-gold-soft)}.risk-table .course-name{width:100%;color:var(--dash-text);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.risk-table .risk-percent{width:56px;color:var(--dash-text);font-weight:600}.risk-table .progress-cell{width:100px}.risk-table .status-cell{text-align:right;width:72px}.progress-bar,.risk-bar,.risk-factor-bar{background:var(--dash-line);border-radius:2px;width:100%;height:4px;overflow:hidden}.progress-fill,.risk-fill,.risk-factor-fill{border-radius:inherit;background:var(--dash-green);height:100%;transition:width .3s}.risk-row.risk-high .progress-fill,.risk-row.risk-danger .progress-fill,.risk-item.risk-danger .risk-fill{background:#b91c1c}.risk-row.risk-medium .progress-fill,.risk-row.risk-warn .progress-fill,.risk-item.risk-warn .risk-fill{background:#e8a53a}.risk-row.risk-watch .progress-fill,.risk-item.risk-watch .risk-fill{background:#fbbf24}.risk-item,.risk-card{background:var(--dash-card);border:1px solid var(--dash-line);border-radius:4px;padding:10px 12px}.risk-top{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.risk-name{max-width:62%;color:var(--dash-text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;overflow:hidden}.risk-right,.risk-header{align-items:center;gap:6px;display:inline-flex}.risk-footnote,.insights-list,.focus-reason,.empty-state,.empty-subtitle,.risk-factor-value,.risk-meter-labels,.risk-confidence,.mini-link{color:var(--dash-muted)}.risk-footnote,.risk-factor-value,.risk-confidence,.stat-label{font-size:10px;font-family:var(--dash-font)}.risk-meta,.risk-stats,.risk-actions,.focus-actions,.quick-actions-grid,.quick-stats{gap:8px;display:grid}.risk-meta{grid-template-columns:repeat(3,minmax(0,1fr))}.risk-stats,.quick-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.risk-actions,.focus-actions,.quick-actions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.risk-kv,.risk-stat,.stat-card{background:var(--dash-gold-soft);border:1px solid var(--dash-line);border-radius:4px;padding:8px 10px}.risk-kv{justify-content:space-between;align-items:baseline;gap:6px;display:flex}.risk-kv .k,.risk-stat-label{text-transform:uppercase;letter-spacing:.5px;color:var(--dash-muted);font-size:9px;font-family:var(--dash-font)}.risk-kv .v,.risk-stat-value,.stat-value{color:var(--dash-text);font-size:12px;font-weight:600}.risk-stat-value.warning{color:#b45309}.risk-stat-value.danger{color:#b91c1c}.btn-mini,.quick-action-btn{border:1px solid var(--dash-line);background:var(--dash-card);color:var(--dash-text);cursor:pointer;font-size:10px;font-weight:500;font-family:var(--dash-font);text-transform:uppercase;letter-spacing:.3px;border-radius:4px;padding:6px 10px;transition:all .15s}.btn-mini:hover,.quick-action-btn:hover{border-color:var(--dash-gold);background:var(--dash-gold-soft);transform:translateY(-1px)}.quick-action-btn{flex-direction:column;align-items:center;gap:6px;padding:10px 8px;font-size:9px;display:flex}.quick-action-btn i{color:var(--dash-green);font-size:16px}.quick-actions-card{background:linear-gradient(135deg, var(--dash-green), var(--dash-green-hover));color:#fff;border:none;border-radius:4px;padding:16px 18px}.quick-actions-header{font-size:14px;font-weight:600;font-family:var(--dash-font);text-transform:uppercase;letter-spacing:.3px;margin-bottom:12px}.quick-actions-card .quick-action-btn{color:#fff;background:#ffffff0f;border-color:#ffffff26}.quick-actions-card .quick-action-btn:hover{border-color:var(--dash-gold);background:#ffffff1f}.quick-actions-card .quick-action-btn i{color:var(--dash-gold)}.insights-card{flex-direction:column;display:flex}.insights-header{color:var(--dash-text);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:600;font-family:var(--dash-font);margin-bottom:8px}.insights-list{flex:1;max-height:180px;margin:0;padding-left:16px;font-size:12px;line-height:1.5;overflow-y:auto}.insight-item{color:var(--dash-text);margin:4px 0}.insights-tabs,.insights-chips{flex-wrap:wrap;gap:6px;display:flex}.insights-tabs{border-bottom:1px solid var(--dash-line);margin:10px 0;padding-bottom:8px}.insights-tab,.insight-chip{font-size:10px;font-family:var(--dash-font);text-transform:uppercase;letter-spacing:.3px;border-radius:3px;padding:4px 10px}.insights-tab{color:var(--dash-muted);cursor:pointer;background:0 0;border:1px solid #0000;transition:all .15s}.insights-tab:hover{border-color:var(--dash-gold-border);background:var(--dash-gold-soft);color:var(--dash-text)}.insights-tab.active{background:var(--dash-green);color:#fff;border-color:var(--dash-green)}.insight-chip{background:var(--dash-gold-soft);color:var(--dash-text);border:1px solid var(--dash-line);font-weight:500}.focus-card{flex-direction:column;display:flex}.focus-head{margin-bottom:8px}.focus-course{color:var(--dash-green);font-size:14px;font-weight:700;font-family:var(--dash-font);margin-bottom:4px}.focus-reason{color:var(--dash-muted);font-size:12px;line-height:1.4}.focus-meta{font-size:9px}.term-gpa-header{border-bottom:1px solid var(--dash-line);color:var(--dash-muted);font-size:12px;font-weight:600;font-family:var(--dash-font);text-transform:uppercase;letter-spacing:.3px;justify-content:space-between;align-items:center;gap:8px;margin:0 0 10px;padding:6px 0 10px;display:flex}.term-gpa-value{color:var(--dash-green);font-size:20px;font-weight:700;font-family:var(--dash-font)}.empty-state{text-align:center;color:var(--dash-muted);padding:30px 16px}.empty-icon{opacity:.4;color:var(--dash-gold);margin-bottom:10px;font-size:32px}.empty-subtitle{font-size:12px;font-family:var(--dash-font)}.mini-link{cursor:pointer;color:var(--dash-green);font-size:10px;font-weight:600;font-family:var(--dash-font);text-transform:uppercase;letter-spacing:.3px;background:0 0;border:none;transition:all .15s}.mini-link:hover{color:var(--dash-green-hover);text-decoration:underline}@keyframes slideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.risk-card,.insight-item,.risk-row{animation:.25s slideIn}@media (width<=1200px){.card.command-center .card-content.acc-grid,.acc-grid{grid-template-columns:1fr;gap:16px}.acc-charts,.acc-risk-insights,.acc-side{grid-template-rows:auto}.risk-table .course-name{max-width:140px}}@media (width<=1100px){.acc-grid{grid-template-columns:1fr}.chart-container,.risk-section,.insights-card{min-height:auto}}@media (width<=768px){.risk-table{font-size:11px}.risk-table .course-name{max-width:100px}.risk-table .progress-cell{width:80px}.risk-table .status-cell{width:64px}.risk-stats,.quick-stats,.risk-actions,.focus-actions,.quick-actions-grid{grid-template-columns:repeat(2,1fr)}.risk-meta{grid-template-columns:1fr}}@media (width<=540px){.acc-chart,.chart-container,.risk-section,.focus-card,.insights-card{padding:10px 12px}.risk-stats,.quick-stats,.risk-actions,.focus-actions,.quick-actions-grid{grid-template-columns:1fr}.risk-table{font-size:10px}.risk-table .course-name{max-width:72px}.risk-table .progress-cell{width:60px}.risk-table .status-cell{width:56px}.chart-container canvas{min-height:120px}}.insights-list::-webkit-scrollbar{width:3px}.insights-list::-webkit-scrollbar-track{background:var(--dash-gold-soft);border-radius:2px}.insights-list::-webkit-scrollbar-thumb{background:var(--dash-gold);border-radius:2px}.insights-list::-webkit-scrollbar-thumb:hover{background:var(--dash-gold-border)}.btn-mini:focus-visible,.quick-action-btn:focus-visible,.insights-tab:focus-visible,.mini-link:focus-visible{outline:2px solid var(--dash-gold);outline-offset:2px}:root{--prep-bg:#f4f8f4;--prep-panel:#ffffffeb;--prep-panel-strong:#fff;--prep-ink:#121a2f;--prep-muted:#667085;--prep-line:#121a2f1a;--prep-green:#062f1b;--prep-green-2:#0d5a38;--prep-gold:#c9a44c;--prep-gold-soft:#f4e7bc;--prep-red:#b42318;--prep-shadow:0 22px 60px #0f172a14;--prep-radius:24px}.prepcenter-section{background:radial-gradient(circle at 20% 0%, #c9a44c29, transparent 34%), radial-gradient(circle at 100% 20%, #062f1b1c, transparent 30%), var(--prep-bg);min-height:calc(100vh - 96px);color:var(--prep-ink)}.compact-prep-header{z-index:5;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f5f2e2d1;border-bottom:1px solid #121a2f14;padding:14px 22px;position:sticky;top:0}.compact-prep-header .card-title{letter-spacing:-.03em;align-items:center;gap:10px;font-size:1.15rem;font-weight:900;display:flex}.prep-grid{grid-template-columns:minmax(340px,.75fr) minmax(640px,1.65fr);align-items:start;gap:20px;padding:22px;display:grid}.prep-timer,.prep-history{min-width:0}.prep-timer{overscroll-behavior:contain;border:1px solid var(--prep-line);border-radius:var(--prep-radius);background:linear-gradient(180deg, #fffffff5, #fffcf2e6), var(--prep-panel);max-height:calc(100vh - 96px);box-shadow:var(--prep-shadow);gap:13px;padding:20px;display:grid;position:sticky;top:78px;overflow-y:auto}.prep-timer-topbar{gap:14px;display:grid}.prep-eyebrow,.input-label,.prep-mini-kicker,.stat-label,.prep-overview-kicker,.session-notes-label{color:var(--prep-muted);letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;font-weight:850;display:block}.prep-timer h3,.prep-overview-heading h3,.prep-panel-head h4,.prep-goal-head h4{color:var(--prep-ink);letter-spacing:-.04em;margin:4px 0 0;font-family:Georgia,Times New Roman,serif;font-weight:900}.prep-timer h3{font-size:1.65rem}.prep-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.prep-actions .btn-primary,.prep-actions .btn-secondary,#distractionBtn{letter-spacing:.03em;border-radius:14px;min-height:48px;font-weight:900}.prep-actions button:disabled{cursor:not-allowed;opacity:.62}.prep-actions .btn-primary{background:linear-gradient(135deg, var(--prep-green), var(--prep-green-2));box-shadow:0 14px 28px #062f1b33}#distractionBtn{color:var(--prep-red);background:#ffffffdb;border:1px solid #b423182e;grid-column:1/-1}.timer-big{min-height:148px;color:var(--prep-ink);letter-spacing:.03em;background:radial-gradient(circle,#f4e7bce6,#ffffff47 58%),linear-gradient(135deg,#062f1b0a,#c9a44c1a);border:1px solid #c9a44c57;border-radius:30px;place-items:center;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:clamp(2.4rem,4vw,4.4rem);font-weight:950;display:grid;box-shadow:inset 0 0 0 12px #ffffff6b}.prep-phase-status{color:var(--prep-green);letter-spacing:.1em;text-transform:uppercase;background:#062f1b14;border-radius:999px;justify-self:center;margin-bottom:-8px;padding:6px 12px;font-size:.74rem;font-weight:900}.prep-phase-status.is-break{color:#5a470f;background:#c9a44c33}.timer-pulse{animation:1.4s ease-in-out infinite prepPulse}@keyframes prepPulse{0%,to{transform:scale(1)}50%{transform:scale(1.015)}}.timer-row{gap:8px;display:grid}.timer-row.two{grid-template-columns:1fr 1fr;gap:12px}.neo-input,.neo-select,#studyNotesInput{border:1px solid var(--prep-line);width:100%;color:var(--prep-ink);background:#ffffffeb;border-radius:14px;outline:none;padding:13px 14px;font-size:.95rem;transition:border-color .16s,box-shadow .16s,transform .16s}.neo-input:focus,.neo-select:focus,#studyNotesInput:focus{border-color:#0d5a3873;box-shadow:0 0 0 4px #0d5a381a}.tag-selector{grid-template-columns:1fr 48px;gap:8px;display:grid}#studyTagsSelect{min-height:48px}.btn-icon{border:1px solid var(--prep-line);color:var(--prep-green);background:#062f1b0f;border-radius:14px;font-weight:900}.timer-hint,.keyboard-hint{border-radius:14px;padding:12px 14px;font-size:.88rem}.timer-hint{color:#51400f;background:#f4e7bc75;border:1px solid #c9a44c42;font-weight:750}.hint-success{color:var(--prep-green);background:#0d5a3814;border-color:#0d5a383d}.hint-warning{color:var(--prep-red);background:#b4231814;border-color:#b423183d}.keyboard-hint{color:var(--prep-muted);background:#ffffff94}.keyboard-hint kbd{border:1px solid var(--prep-line);color:var(--prep-ink);background:#fff;border-radius:6px;padding:2px 6px;font-weight:850}.prep-history{grid-template-columns:minmax(0,1fr) minmax(300px,.55fr);align-items:start;gap:18px;display:grid}#statsContainer{grid-column:1/2}#goalDisplay{grid-column:2/3}#studySessionsList{grid-column:1/-1}.prep-overview-shell,.prep-goal-card,.prep-session-panel{border:1px solid var(--prep-line);border-radius:var(--prep-radius);background:var(--prep-panel-strong);box-shadow:var(--prep-shadow)}.prep-overview-shell{padding:20px}.prep-overview-top,.prep-goal-head,.prep-panel-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.prep-overview-heading p{max-width:560px;color:var(--prep-muted);margin:6px 0 0}.prep-momentum-ring{--prep-score:0;background:radial-gradient(circle closest-side, #fff 70%, transparent 72%), conic-gradient(var(--prep-green) calc(var(--prep-score) * 1%), #121a2f1a 0);border-radius:50%;flex:none;place-items:center;width:92px;height:92px;display:grid}.prep-momentum-ring span{font-size:1.25rem;font-weight:950}.prep-momentum-ring small{color:var(--prep-muted);text-transform:uppercase;margin-top:-22px;font-size:.62rem;font-weight:800}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.stat-card{border:1px solid var(--prep-line);background:linear-gradient(#fff,#f4f8f4b3);border-radius:18px;align-items:center;gap:12px;padding:16px;display:flex}.stat-card.primary{color:#fff;background:linear-gradient(135deg,#062f1bf5,#0d5a38e6)}.stat-card.primary .stat-label,.stat-card.primary .stat-icon{color:#ffffffb8}.stat-icon{width:40px;height:40px;color:var(--prep-green);background:#c9a44c24;border-radius:14px;place-items:center;display:grid}.stat-value{font-size:1.65rem;font-weight:950;line-height:1}.prep-progress-rows{grid-template-columns:1fr 1fr;gap:12px;margin-top:14px;display:grid}.prep-progress-card,.prep-goal-row{gap:9px;display:grid}.prep-progress-card{border:1px solid var(--prep-line);background:#ffffffb8;border-radius:18px;padding:14px}.prep-progress-head,.prep-progress-meta,.prep-goal-row-top{justify-content:space-between;gap:12px;display:flex}.prep-progress-head,.prep-goal-row-top{font-weight:850}.prep-progress-meta{color:var(--prep-muted);font-size:.82rem}.prep-progress-bar{background:#121a2f17;border-radius:999px;height:9px;overflow:hidden}.prep-progress-bar span,.progress-fill{border-radius:inherit;background:linear-gradient(90deg, var(--prep-green), var(--prep-gold));height:100%;display:block}.prep-goal-card{padding:18px}.prep-goal-card h4{font-size:1.08rem}.streak-badge,.prep-count-pill,.session-duration-chip{color:#4d3b07;white-space:nowrap;background:#f4e7bcc7;border-radius:999px;justify-content:center;align-items:center;padding:7px 10px;font-size:.8rem;font-weight:900;display:inline-flex}.prep-goal-row{margin-top:16px}.prep-session-panel{border-color:color-mix(in srgb, var(--prep-line) 65%, transparent);padding:18px;box-shadow:0 14px 38px #0f172a0e}.prep-session-stack{gap:12px;max-height:390px;margin-top:14px;padding-right:4px;display:grid;overflow:auto}.session-item{border:1px solid var(--prep-line);cursor:pointer;background:linear-gradient(#fff,#f4f8f4a3);border-radius:18px;grid-template-columns:34px 1fr;gap:12px;padding:14px;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.session-item:hover{border-color:#0d5a3847;transform:translateY(-1px);box-shadow:0 10px 24px #062f1b14}.session-item:focus-visible{outline-offset:2px;outline:3px solid #0d5a3838}.session-rank{width:34px;height:34px;color:var(--prep-green);background:#062f1b14;border-radius:12px;place-items:center;font-weight:950;display:grid}.session-top,.session-meta-row,.session-tags{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.session-top{justify-content:space-between}.session-title{align-items:center;gap:8px;min-width:0;max-width:min(52vw,680px);font-weight:950;display:flex}.session-title>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.session-time{color:var(--prep-muted);margin-top:3px;font-size:.8rem}.session-meta-row{margin-top:8px}.session-meta-pill,.session-tag{color:var(--prep-muted);background:#121a2f0a;border:1px solid #121a2f14;border-radius:999px;padding:5px 8px;font-size:.75rem;font-weight:800}.session-meta-pill.warning{color:var(--prep-red);background:#b4231814}.session-tags{margin-top:9px}.session-tag{color:#5a470f;background:#c9a44c24}.session-notes{background:#ffffffb8;border-radius:14px;margin-top:10px;padding:10px}.session-notes p{color:var(--prep-muted);margin:4px 0 0;line-height:1.45}.session-view-cue{color:var(--prep-green);align-items:center;gap:6px;margin-top:10px;font-size:.78rem;font-weight:850;display:inline-flex}.prep-session-detail-modal{width:min(640px,100vw - 28px)}.prep-session-detail-body{gap:16px;display:grid}.prep-session-detail-summary{align-items:center;gap:14px;display:flex}.prep-session-detail-summary>.session-emoji{background:#062f1b14;border-radius:15px;flex:none;place-items:center;width:48px;height:48px;font-size:1.25rem;display:grid}.prep-session-detail-summary>div{gap:3px;min-width:0;display:grid}.prep-session-detail-summary strong{overflow-wrap:anywhere;font-size:1.1rem}.prep-session-detail-summary>div>span:last-child{color:var(--prep-muted);font-size:.82rem}.prep-session-detail-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.prep-session-detail-grid>div{border:1px solid var(--prep-line);background:#062f1b0a;border-radius:14px;gap:4px;padding:12px;display:grid}.prep-session-detail-grid span{color:var(--prep-muted);text-transform:uppercase;font-size:.72rem;font-weight:800}.prep-session-detail-block{border:1px solid var(--prep-line);background:#f4f8f4bd;border-radius:14px;padding:14px}.prep-session-detail-block p{color:var(--prep-ink);overflow-wrap:anywhere;white-space:pre-wrap;margin:7px 0 0;line-height:1.6}.prep-empty-state.upgraded{text-align:left;background:#f4e7bc52;border-radius:18px;margin-top:14px;padding:18px}.prep-empty-state h4,.prep-empty-state p{margin:0}.prep-empty-state p{color:var(--prep-muted);margin-top:8px}.prep-empty-suggestions{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.prep-empty-suggestions span{color:var(--prep-green);background:#fff;border-radius:999px;padding:7px 10px;font-size:.8rem;font-weight:850}@media (width<=1350px){.prep-grid{grid-template-columns:360px minmax(0,1fr)}.prep-history{grid-template-columns:1fr}#statsContainer,#goalDisplay,#studySessionsList{grid-column:1}}@media (width<=980px){.prep-grid{grid-template-columns:1fr;padding:14px}.prep-timer{position:relative;top:auto}.stats-grid,.prep-progress-rows{grid-template-columns:1fr 1fr}}@media (width<=640px){.prep-actions,.stats-grid,.prep-progress-rows,.timer-row.two{grid-template-columns:1fr}.prep-overview-top,.prep-goal-head,.prep-panel-head{flex-direction:column;align-items:stretch}.prep-momentum-ring{width:78px;height:78px}.prep-session-detail-grid{grid-template-columns:1fr 1fr}.session-title{max-width:68vw}}:root{--hist-bg:#f5f3ef;--hist-card:#fff;--hist-line:#e2ddd4;--hist-line-strong:#d5cfc4;--hist-text:#1a1a1a;--hist-muted:#8a8578;--hist-faint:#c4beb3;--hist-green:#1f6b45;--hist-green-soft:#1f6b450f;--hist-gold:#c9a44c;--hist-gold-soft:#c9a44c0f;--hist-shadow:0 4px 12px #0000000f;--hist-font:"SF Mono", "JetBrains Mono", monospace}#historyContainer{box-shadow:none;color:var(--hist-text);background:0 0;border:none;border-radius:0;flex-direction:column;gap:10px;min-height:120px;max-height:10880px;padding:0;display:flex;overflow-y:auto}#historyContainer::-webkit-scrollbar{width:4px}#historyContainer::-webkit-scrollbar-track{background:var(--hist-line);border-radius:2px}#historyContainer::-webkit-scrollbar-thumb{background:var(--hist-gold);border-radius:2px}#historyContainer::-webkit-scrollbar-thumb:hover{background:var(--hist-gold-border)}.history-item{background:var(--hist-card);border:1px solid var(--hist-line);border-left:3px solid var(--hist-gold);box-shadow:var(--hist-shadow);border-radius:4px;padding:10px 14px;transition:all .15s}.history-item:hover{background:var(--hist-gold-soft);border-color:var(--hist-gold-border);transform:translateY(-1px);box-shadow:0 6px 16px #00000014}.history-title{color:var(--hist-text);font-size:14px;font-weight:600;font-family:var(--hist-font);margin-bottom:3px}.history-meta{color:var(--hist-muted);font-size:11px;font-family:var(--hist-font);flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:4px;display:flex}.history-meta i{color:var(--hist-gold);opacity:.8;font-size:10px}.history-desc{color:var(--hist-muted);white-space:pre-wrap;font-size:12px;line-height:1.4;font-family:var(--hist-font);margin-top:2px}#historyContainer .empty-state{text-align:center;color:var(--hist-muted);flex-direction:column;align-items:center;gap:8px;padding:30px 16px;display:flex}#historyContainer .empty-state i{color:var(--hist-gold);opacity:.4;font-size:24px}#historyContainer .empty-state p{font-size:13px;font-family:var(--hist-font)}.history-term-block{border:1px solid var(--hist-line);background:var(--hist-card);box-shadow:var(--hist-shadow);border-radius:4px;margin-bottom:14px;overflow:hidden}.history-term-header{background:var(--hist-gold-soft);border-bottom:1px solid var(--hist-line);justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex}.history-term-title{color:var(--hist-text);font-size:14px;font-weight:600;font-family:var(--hist-font);text-transform:uppercase;letter-spacing:.3px;margin:0}.history-term-gpa{color:var(--hist-text);border:1px solid var(--hist-line);background:var(--hist-card);white-space:nowrap;font-size:12px;font-weight:600;font-family:var(--hist-font);border-radius:4px;padding:4px 10px}.history-term-gpa i{color:var(--hist-gold);margin-right:4px}.history-table{border-collapse:collapse;width:100%;font-family:var(--hist-font)}.history-table th{background:var(--hist-gold-soft);text-align:left;color:var(--hist-muted);border-bottom:2px solid var(--hist-line);letter-spacing:.5px;text-transform:uppercase;padding:8px 12px;font-size:9px;font-weight:600}.history-table td{border-bottom:1px solid var(--hist-line);color:var(--hist-text);padding:8px 12px;font-size:12px}.history-table tr:last-child td{border-bottom:none}.history-table tr:hover td{background:var(--hist-gold-soft)}.history-term-summary{background:var(--hist-gold-soft);font-weight:600}.history-term-summary td{border-top:2px solid var(--hist-line)}#advPreviewWrap{border:1px solid var(--hist-line);background:var(--hist-card);border-radius:4px;max-height:240px;padding:8px;overflow-y:auto}#advPreviewWrap::-webkit-scrollbar{width:4px}#advPreviewWrap::-webkit-scrollbar-track{background:var(--hist-line);border-radius:2px}#advPreviewWrap::-webkit-scrollbar-thumb{background:var(--hist-gold);border-radius:2px}.adv-preview-table{border-collapse:collapse;width:100%;font-size:12px;font-family:var(--hist-font)}.adv-preview-table th,.adv-preview-table td{border-bottom:1px solid var(--hist-line);text-align:left;white-space:nowrap;padding:6px 10px}.adv-preview-table th{background:var(--hist-gold-soft);color:var(--hist-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--hist-line);font-size:9px;font-weight:600}.adv-preview-table th:nth-child(2),.adv-preview-table td:nth-child(2){white-space:normal;min-width:160px;max-width:240px}.adv-preview-table td.editing{background:var(--hist-gold-soft);padding:4px}.adv-preview-table input[type=text],.adv-preview-table input[type=number]{border:1px solid var(--hist-line);background:var(--hist-card);width:100%;font-size:12px;font-family:var(--hist-font);border-radius:4px;padding:4px 8px;transition:all .15s}.adv-preview-table input[type=text]:focus,.adv-preview-table input[type=number]:focus{border-color:var(--hist-gold);outline:none;box-shadow:0 0 0 3px #c9a44c1f}.adv-preview-table select{border:1px solid var(--hist-line);background:var(--hist-card);width:100%;font-size:12px;font-family:var(--hist-font);border-radius:4px;padding:4px 8px;transition:all .15s}.adv-preview-table select:focus{border-color:var(--hist-gold);outline:none;box-shadow:0 0 0 3px #c9a44c1f}.row-actions{justify-content:center;gap:4px;display:flex}.row-actions button{border:1px solid var(--hist-line);background:var(--hist-card);cursor:pointer;font-size:10px;font-family:var(--hist-font);border-radius:4px;padding:3px 8px;transition:all .15s}.row-actions button:hover{background:var(--hist-gold-soft);border-color:var(--hist-gold-border)}.row-actions .save-btn{background:var(--hist-green);color:#fff;border-color:var(--hist-green)}.row-actions .save-btn:hover{background:var(--hist-green-hover);border-color:var(--hist-green-hover)}.row-actions .cancel-btn{color:#fff;background:#b91c1c;border-color:#b91c1c}.row-actions .cancel-btn:hover{background:#7f1d1d;border-color:#7f1d1d}.adv-preview-table tr.valid-row{background:var(--hist-green-soft)}.adv-preview-table tr.invalid-row{background:#b91c1c0a}.adv-preview-table tr.invalid-row td{border-left:2px solid #b91c1c}@media (width<=900px){#historyContainer{padding:0}.history-term-header{flex-direction:column;align-items:flex-start;gap:6px}.adv-preview-table th:nth-child(2),.adv-preview-table td:nth-child(2){min-width:120px;max-width:160px}.adv-preview-table{font-size:11px}.adv-preview-table th,.adv-preview-table td{padding:4px 8px}}@media (width<=680px){.history-item{padding:8px 12px}.history-title{font-size:13px}.history-meta{gap:4px;font-size:10px}.history-desc{font-size:11px}.history-term-title{font-size:12px}.history-term-gpa{padding:3px 8px;font-size:11px}.history-table{font-size:11px}.history-table th,.history-table td{padding:6px 8px}.adv-preview-table{font-size:10px}.adv-preview-table th,.adv-preview-table td{padding:4px 6px}.adv-preview-table th:nth-child(2),.adv-preview-table td:nth-child(2){min-width:100px;max-width:140px}.row-actions button{padding:2px 6px;font-size:9px}#advPreviewWrap{max-height:180px;padding:4px}}@media (width<=480px){.history-item{padding:6px 10px}.history-title{font-size:12px}.history-meta{font-size:9px}.history-desc{font-size:10px}.history-term-header{padding:8px 10px}.history-table th,.history-table td{padding:4px 6px;font-size:10px}.adv-preview-table th,.adv-preview-table td{padding:3px 4px;font-size:9px}.adv-preview-table th:nth-child(2),.adv-preview-table td:nth-child(2){min-width:80px;max-width:100px}.adv-preview-table input[type=text],.adv-preview-table input[type=number],.adv-preview-table select{padding:2px 4px;font-size:9px}.row-actions{gap:2px}.row-actions button{padding:2px 4px;font-size:8px}}.history-item:focus-visible,.row-actions button:focus-visible,.adv-preview-table input:focus-visible,.adv-preview-table select:focus-visible{outline:2px solid var(--hist-gold);outline-offset:2px}@keyframes historySlideIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.history-item,.history-term-block{animation:.2s historySlideIn}.history-term-block{animation-delay:50ms}@media print{#historyContainer{box-shadow:none;border:none;padding:0}.history-item{break-inside:avoid;page-break-inside:avoid;box-shadow:none;border:1px solid #ddd}.history-term-block{break-inside:avoid;page-break-inside:avoid;box-shadow:none}}:root{--gpa-bg:#f5f3ef;--gpa-card:#fff;--gpa-line:#e2ddd4;--gpa-line-strong:#d5cfc4;--gpa-text:#1a1a1a;--gpa-muted:#8a8578;--gpa-faint:#c4beb3;--gpa-green:#1f6b45;--gpa-green-hover:#174f34;--gpa-green-soft:#1f6b450f;--gpa-green-border:#1f6b451f;--gpa-gold:#c9a44c;--gpa-gold-soft:#c9a44c0f;--gpa-gold-border:#c9a44c26;--gpa-shadow:0 4px 12px #0000000f;--gpa-font:"SF Mono", "JetBrains Mono", monospace}.card.gpa-ops{box-shadow:none;background:0 0;border:none;border-radius:0;overflow:visible}.card.gpa-ops .card-header{border-bottom:2px solid var(--gpa-line);background:0 0;justify-content:space-between;align-items:center;margin-bottom:16px;padding:0 0 12px;display:flex}.card.gpa-ops .gpa-ops-title{color:var(--gpa-text);font-size:16px;font-weight:600;font-family:var(--gpa-font);text-transform:uppercase;letter-spacing:.3px}.card.gpa-ops .card-actions{gap:8px;display:flex}.card.gpa-ops .card-action{background:var(--gpa-card);border:1px solid var(--gpa-line);width:32px;height:32px;color:var(--gpa-muted);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.card.gpa-ops .card-action:hover{border-color:var(--gpa-gold-border);background:var(--gpa-gold-soft);color:var(--gpa-text);transform:translateY(-1px)}.card.gpa-ops .card-content{background:0 0;padding:0}.gpa-ops-grid{grid-template-columns:minmax(280px,.7fr) minmax(560px,1.3fr);align-items:start;gap:20px;display:grid}.gpa-ops-section-title{color:var(--gpa-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--gpa-line);font-size:10px;font-weight:600;font-family:var(--gpa-font);margin-bottom:14px;padding-bottom:8px;position:relative}.gpa-ops-section-title:after{content:"";background:var(--gpa-gold);width:40px;height:2px;position:absolute;bottom:-2px;left:0}.gpa-ops-cards{grid-template-columns:1fr 1fr;gap:12px;display:grid}.gpa-ops-cards .gpa-ops-card:nth-child(3){grid-column:1/-1}.gpa-ops-card{background:var(--gpa-card);border:1px solid var(--gpa-line);min-height:120px;box-shadow:var(--gpa-shadow);border-radius:4px;padding:14px 16px;transition:all .15s}.gpa-ops-card:hover{border-color:var(--gpa-gold-border)}.gpa-ops-card-head{color:var(--gpa-muted);text-transform:uppercase;letter-spacing:.5px;font-size:9px;font-weight:600;font-family:var(--gpa-font)}.gpa-ops-big{color:var(--gpa-text);text-align:center;font-size:36px;font-weight:700;line-height:1;font-family:var(--gpa-font);margin:12px 0 8px}.gpa-ops-big.gpa-green-text{color:var(--gpa-green)}.gpa-ops-big.gpa-gold-text{color:var(--gpa-gold)}.gpa-ops-sub,.gpa-ops-footnote{color:var(--gpa-muted);text-align:center;font-size:11px;font-family:var(--gpa-font)}.gpa-change{text-align:center;font-size:12px;font-weight:600;font-family:var(--gpa-font);margin-top:6px}.gpa-change .positive{color:var(--gpa-green)}.gpa-change .negative{color:#b91c1c}.gpa-whatif-panel{background:var(--gpa-card);border:1px solid var(--gpa-line);box-shadow:var(--gpa-shadow);border-radius:4px;overflow:hidden}.gpa-whatif-header{background:var(--gpa-gold-soft);border-bottom:1px solid var(--gpa-line);justify-content:space-between;align-items:flex-end;gap:16px;padding:16px 20px 14px;display:flex}.gpa-whatif-kicker{color:var(--gpa-muted);text-transform:uppercase;letter-spacing:.5px;font-size:9px;font-weight:600;font-family:var(--gpa-font);margin-bottom:4px}.gpa-whatif-header h3{color:var(--gpa-text);font-size:20px;font-weight:700;line-height:1.1;font-family:var(--gpa-font);margin:0}.gpa-whatif-header p{max-width:280px;color:var(--gpa-muted);text-align:right;font-size:12px;line-height:1.4;font-family:var(--gpa-font);margin:0}.gpa-whatif-table{width:100%}.gpa-whatif-head,.gpa-row{grid-template-columns:minmax(300px,1.7fr) 100px minmax(180px,.7fr);align-items:center;gap:12px;display:grid}.gpa-whatif-head{background:var(--gpa-gold-soft);border-bottom:2px solid var(--gpa-line);padding:10px 20px}.gpa-whatif-head span{color:var(--gpa-muted);text-transform:uppercase;letter-spacing:.5px;font-size:9px;font-weight:600;font-family:var(--gpa-font)}.gpa-row{border-bottom:1px solid var(--gpa-line);min-height:72px;padding:12px 20px;transition:all .15s}.gpa-row:last-child{border-bottom:0}.gpa-row:hover{background:var(--gpa-gold-soft)}.gpa-course{flex-direction:column;gap:4px;min-width:0;display:flex}.course-code{color:var(--gpa-text);letter-spacing:-.01em;white-space:normal;text-overflow:unset;font-size:14px;font-weight:600;line-height:1.2;font-family:var(--gpa-font);display:block;overflow:visible}.course-title{color:var(--gpa-muted);font-size:11px;font-weight:400;line-height:1.25;font-family:var(--gpa-font);display:block}.gpa-credits-cell{justify-content:flex-start;display:flex}.course-credits-badge{background:var(--gpa-green-soft);min-width:48px;height:30px;color:var(--gpa-green);border:1px solid var(--gpa-green-border);font-size:12px;font-weight:600;font-family:var(--gpa-font);border-radius:3px;justify-content:center;align-items:center;padding:0 12px;display:inline-flex}.gpa-controls-cell{justify-content:flex-start;display:flex}.gpa-select{border:1px solid var(--gpa-line);background:var(--gpa-card);width:160px;height:40px;color:var(--gpa-text);cursor:pointer;box-shadow:none;font-size:14px;font-weight:600;font-family:var(--gpa-font);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%238a8578'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;border-left-width:3px;border-radius:4px;padding:0 32px 0 12px;transition:all .15s}.gpa-select:hover{border-color:var(--gpa-gold-border);background:var(--gpa-card)}.gpa-select:focus{border-color:var(--gpa-gold);outline:none;box-shadow:0 0 0 3px #c9a44c26}.gpa-select option{font-weight:400}.gpa-empty-state{background:var(--gpa-card);border:1px dashed var(--gpa-line);text-align:center;color:var(--gpa-muted);border-radius:4px;padding:32px 20px}.gpa-empty-icon{background:var(--gpa-green-soft);width:48px;height:48px;color:var(--gpa-green);border-radius:4px;place-items:center;margin:0 auto 10px;font-size:20px;display:grid}.gpa-empty-title{color:var(--gpa-text);font-size:16px;font-weight:600;font-family:var(--gpa-font)}.gpa-empty-copy{font-size:12px;font-family:var(--gpa-font);margin-top:4px}.gpa-ops-table-head{display:none!important}.gpa-ops-table{box-shadow:none;background:0 0;border:0;overflow:visible}.gpa-ops-table-body{max-height:none;overflow:visible}.gpa-btn,.gpa-btn.add,.gpa-btn.remove{display:none!important}@media (width<=1200px){.gpa-ops-grid{grid-template-columns:1fr}.gpa-whatif-head,.gpa-row{grid-template-columns:minmax(240px,1fr) 80px 160px}}@media (width<=900px){.gpa-whatif-head,.gpa-row{grid-template-columns:minmax(200px,1fr) 70px 140px;gap:8px}.gpa-select{width:130px;height:36px;font-size:12px}.course-code{font-size:12px}}@media (width<=768px){.card.gpa-ops .card-content{padding:0}.gpa-ops-cards{grid-template-columns:1fr 1fr}.gpa-ops-cards .gpa-ops-card:nth-child(3){grid-column:1/-1}.gpa-whatif-header{flex-direction:column;align-items:flex-start;padding:14px 16px 12px}.gpa-whatif-header p{text-align:left;max-width:none;font-size:11px}.gpa-whatif-head{display:none}.gpa-row{grid-template-columns:1fr;gap:10px;padding:14px 16px}.gpa-row .gpa-credits-cell,.gpa-row .gpa-controls-cell{justify-content:flex-start}.gpa-select{width:100%;max-width:200px}.gpa-ops-big{font-size:28px}}@media (width<=540px){.gpa-ops-cards{grid-template-columns:1fr}.gpa-ops-cards .gpa-ops-card:nth-child(3){grid-column:1}.gpa-ops-card{min-height:100px;padding:12px 14px}.gpa-ops-big{margin:8px 0 6px;font-size:24px}.gpa-whatif-header h3{font-size:16px}.gpa-select{height:34px;padding:0 28px 0 10px;font-size:12px}.course-code{font-size:13px}.course-title{font-size:10px}.card.gpa-ops .card-header{flex-direction:column;align-items:flex-start;gap:8px}}.gpa-select:focus-visible,.card.gpa-ops .card-action:focus-visible{outline:2px solid var(--gpa-gold);outline-offset:2px}@keyframes gpaSlideIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.gpa-ops-card,.gpa-row{animation:.2s gpaSlideIn}.gpa-ops-card:nth-child(2){animation-delay:50ms}.gpa-ops-card:nth-child(3){animation-delay:.1s}:root{--cn-app-bg:#f5f3ef;--cn-panel:#fff;--cn-paper:#fff;--cn-line:#e2ddd4;--cn-line-strong:#d5cfc4;--cn-text:#1a1a1a;--cn-muted:#8a8578;--cn-faint:#c4beb3;--cn-green:#4a7c59;--cn-green-hover:#3d6b4a;--cn-green-soft:#4a7c5914;--cn-green-border:#4a7c5926;--cn-gold:#c4beb3;--cn-gold-soft:#c4beb314;--cn-gold-border:#c4beb333;--cn-shadow:0 4px 12px #0000000f;--cn-font-ui:"SF Mono", "JetBrains Mono", monospace;--cn-font-doc:"SF Mono", "JetBrains Mono", monospace}.cn-overlay{background:var(--cn-app-bg);color:var(--cn-text);font-family:var(--cn-font-ui);display:none;position:fixed;inset:0;z-index:9000!important}.cn-overlay.is-open{display:flex}.cn-shell{background:var(--cn-app-bg);grid-template-rows:56px 48px minmax(0,1fr) 32px;width:100%;height:100vh;display:grid;overflow:hidden}.cn-topbar{background:#1a1a1a;border-bottom:2px solid #2a2a2a;grid-template-columns:minmax(240px,1fr) minmax(240px,480px) minmax(240px,1fr);align-items:center;gap:12px;height:56px;padding:0 16px;display:grid;position:relative}.cn-topbar:after{content:"";opacity:.3;background:#c4beb3;height:2px;position:absolute;bottom:0;left:0;right:0}.cn-top-left,.cn-top-right,.cn-toolbar-inner,.cn-status-left,.cn-status-right{align-items:center;display:flex}.cn-top-left{gap:10px;min-width:0}.cn-top-right{justify-content:flex-end;gap:8px;min-width:0}.cn-breadcrumbs{color:#ffffffb3;white-space:nowrap;min-width:0;font-size:12px;font-family:var(--cn-font-ui);align-items:center;gap:8px;display:flex}.cn-breadcrumbs span,.cn-breadcrumbs strong{text-overflow:ellipsis;overflow:hidden}.cn-breadcrumbs strong{color:#fff;font-weight:600}.cn-icon-btn,.cn-mini-btn,.cn-format-btn,.cn-share-btn,.cn-new-note,.cn-module-nav button,.cn-note-item{font-family:var(--cn-font-ui)}.cn-icon-btn{color:#ffffffb3;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;transition:all .15s;display:inline-flex}.cn-back-btn{font-size:20px;line-height:1}.cn-title-center{justify-content:center;min-width:0;display:flex}.cn-lecture-title{color:#fff;text-align:center;width:100%;max-width:420px;height:34px;font-size:14px;font-weight:600;font-family:var(--cn-font-ui);letter-spacing:.2px;background:#ffffff0f;border:1px solid #ffffff14;border-radius:4px;outline:none;padding:0 12px;transition:all .15s}.cn-lecture-title:hover,.cn-lecture-title:focus{background:#ffffff1a;border-color:#ffffff29}.cn-status{color:#fff9;white-space:nowrap;font-size:11px;font-family:var(--cn-font-ui);align-items:center;gap:6px;display:inline-flex}.cn-status-dot{border:1.5px solid #fff6;border-radius:50%;width:12px;height:12px;position:relative}.cn-status-saved .cn-status-dot:after{content:"";border-bottom:1.5px solid #fff9;border-left:1.5px solid #fff9;width:6px;height:3px;position:absolute;top:2px;left:2px;transform:rotate(-45deg)}.cn-status-saving .cn-status-dot{border-color:#0000 #e8a53a #e8a53a;animation:.8s linear infinite cnSpin}.cn-status-error .cn-status-dot{border-color:#d95550}@keyframes cnSpin{to{transform:rotate(360deg)}}.cn-share-btn{color:#1a1a1a;cursor:pointer;height:34px;font-size:11px;font-weight:600;font-family:var(--cn-font-ui);text-transform:uppercase;letter-spacing:.3px;background:#c4beb3;border:1px solid #ffffff14;border-radius:4px;padding:0 16px;transition:all .15s}.cn-share-btn:hover{background:#d5cfc4;transform:translateY(-1px)}.cn-format-toolbar{border-bottom:1px solid var(--cn-line);background:#fff;justify-content:center;align-items:center;height:48px;padding:0 16px;display:flex}.cn-toolbar-inner{gap:6px;width:max-content;max-width:860px;position:relative}.cn-format-select{border:1px solid var(--cn-line);height:30px;color:var(--cn-text);font-size:11px;font-family:var(--cn-font-ui);cursor:pointer;background:#fff;border-radius:4px;outline:none;padding:0 28px 0 10px;transition:all .15s}.cn-format-select:hover{border-color:var(--cn-line-strong)}.cn-format-select:focus{border-color:var(--cn-muted);box-shadow:0 0 0 2px #8a85781a}.cn-size-select{width:54px;padding-right:6px}.cn-format-btn{min-width:30px;height:30px;color:var(--cn-muted);cursor:pointer;font-size:13px;font-family:var(--cn-font-ui);background:0 0;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;gap:4px;padding:0 8px;transition:all .15s;display:inline-flex}.cn-format-btn:hover{background:var(--cn-gold-soft);border-color:var(--cn-line);color:var(--cn-text)}.cn-color-btn{text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:2px}.cn-divider{background:var(--cn-line);width:1px;height:20px;margin:0 4px}.cn-hidden-tool{display:none!important}.cn-main{background:var(--cn-app-bg);grid-template-columns:280px minmax(0,1fr) 250px;min-height:0;display:grid}.cn-workspace-controls{border-bottom:1px solid var(--cn-line);gap:8px;padding:12px;display:grid}.cn-search{border:1px solid var(--cn-line);color:var(--cn-muted);border-radius:5px;align-items:center;gap:8px;padding:0 10px;display:flex}.cn-search input,.cn-workspace-controls select{width:100%;min-width:0;height:34px;color:var(--cn-text);font:11px var(--cn-font-ui);background:#fff;border:0;outline:none}.cn-new-menu-wrap{position:relative}.cn-new-menu-wrap .cn-new-note{width:100%;margin:0}.cn-new-menu{width:100%;top:100%}.cn-context-panel{border-left:1px solid var(--cn-line);background:#fff;padding:12px;font-size:11px;overflow:auto}.cn-context-tabs{gap:4px;margin-bottom:16px;display:flex;overflow-x:auto}.cn-context-tabs button{color:var(--cn-muted);font:10px var(--cn-font-ui);background:0 0;border:0;border-bottom:2px solid #0000;padding:8px 4px}.cn-context-tabs button.is-active{color:var(--cn-green);border-color:var(--cn-green)}.cn-detail-row{border-bottom:1px solid var(--cn-line);gap:3px;padding:9px 0;display:grid}.cn-detail-row span{color:var(--cn-muted);text-transform:uppercase;font-size:9px}.cn-file-preview{min-height:70vh}.cn-file-preview iframe{border:0;width:100%;min-height:70vh}.cn-file-card{text-align:center;justify-items:center;gap:16px;padding:80px 24px;display:grid}.cn-file-card>i{color:var(--cn-green);font-size:56px}.cn-file-card a{color:#fff;background:var(--cn-green);border-radius:4px;padding:10px 16px;text-decoration:none}.cn-sidebar{border-right:1px solid var(--cn-line);background:#fff;flex-direction:column;min-width:0;display:flex;overflow:hidden}.cn-current-class{background:var(--cn-gold-soft);border:1px solid var(--cn-line);border-radius:4px;margin:12px 14px 8px;padding:12px 14px}.cn-current-class-label{text-transform:uppercase;letter-spacing:.5px;color:var(--cn-muted);font-size:9px;font-weight:600;font-family:var(--cn-font-ui);margin-bottom:4px;display:block}.cn-current-class-name{color:var(--cn-text);font-size:13px;font-weight:600;font-family:var(--cn-font-ui)}.cn-class-picker{display:none}.cn-module-nav{display:none!important}.cn-notes-head{height:44px;color:var(--cn-muted);text-transform:uppercase;letter-spacing:.5px;font-size:9px;font-weight:600;font-family:var(--cn-font-ui);border-bottom:1px solid var(--cn-line);justify-content:space-between;align-items:center;padding:0 16px;display:flex}.cn-mini-btn{color:var(--cn-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;width:24px;height:24px;font-size:16px;transition:all .15s}.cn-mini-btn:hover{background:var(--cn-gold-soft);border-color:var(--cn-line);color:var(--cn-text)}.cn-notes-list{flex:1;gap:4px;padding:8px 12px 12px;display:grid;overflow:auto}.cn-note-row{border-radius:4px;grid-template-columns:minmax(0,1fr) 32px;align-items:center;display:grid;position:relative}.cn-note-row.is-active{background:var(--cn-green-soft);box-shadow:inset 2px 0 0 var(--cn-green)}.cn-note-row .cn-note-item,.cn-note-row .cn-note-item:hover{box-shadow:none;background:0 0}.cn-note-item{text-align:left;cursor:pointer;width:100%;min-height:44px;color:var(--cn-text);font-family:var(--cn-font-ui);background:0 0;border:1px solid #0000;border-radius:4px;align-content:center;gap:3px;padding:6px 10px;transition:all .15s;display:grid;position:relative}.cn-note-item.is-active{background:var(--cn-green-soft);border-color:var(--cn-green-border);box-shadow:inset 2px 0 0 var(--cn-green)}.cn-note-title{white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:500;overflow:hidden}.cn-note-date{color:var(--cn-muted);font-size:10px;font-family:var(--cn-font-ui)}.cn-notes-list{flex:1;padding:0;display:block;overflow:auto}.cn-note-row{border-bottom:1px solid var(--cn-line);background:#fff;border-radius:0;grid-template-columns:minmax(0,1fr) 36px;align-items:center;min-height:76px;padding:0 18px;display:grid;position:relative}.cn-note-row:hover{background:#faf8f5}.cn-note-row.is-active{box-shadow:inset 3px 0 0 var(--cn-green);background:#f4f8f5}.cn-note-item{background:0 0;border:0;border-radius:0;flex-direction:column;justify-content:center;gap:7px;min-height:76px;padding:12px 10px 12px 6px;display:flex}.cn-note-item:hover{background:0 0;border-color:#0000}.cn-note-title{color:var(--cn-text);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}.cn-note-date{color:var(--cn-muted);font-size:12px}.cn-note-action{opacity:0;width:28px;height:28px;color:var(--cn-muted);background:0 0;border:0;font-size:18px}.cn-note-row:hover .cn-note-action{opacity:1}.cn-note-action:hover{color:#1a1a1a;background:0 0}.cn-new-note{border:1px solid var(--cn-line);height:34px;color:var(--cn-green);cursor:pointer;font-size:11px;font-weight:500;font-family:var(--cn-font-ui);text-transform:uppercase;letter-spacing:.3px;background:0 0;border-radius:4px;justify-content:flex-start;align-items:center;gap:8px;margin:4px 12px 12px;padding:0 12px;transition:all .15s;display:inline-flex}.cn-new-note:hover{background:var(--cn-green-soft);border-color:var(--cn-green-border)}.cn-trash-head{border-top:1px solid var(--cn-line);padding:14px 18px 10px}.cn-trash-list{max-height:220px;padding:0;overflow:auto}.cn-trash-row{opacity:1;grid-template-columns:minmax(0,1fr) 70px}.cn-note-actions{justify-content:flex-end;gap:8px;display:flex}.cn-doc-wrap{background:var(--cn-app-bg);min-width:0;padding:20px 0 40px;overflow:auto}.cn-page{background:var(--cn-paper);width:min(8.5in,100vw - 320px);min-height:11in;box-shadow:var(--cn-shadow);border:1px solid var(--cn-line);margin:0 auto;padding:.7in .85in}.cn-editor{min-height:9.35in;color:var(--cn-text);font-family:var(--cn-font-doc);caret-color:var(--cn-green);outline:none;font-size:12pt;line-height:1.6}.cn-editor:empty:before{content:attr(data-placeholder);color:var(--cn-faint)}.cn-editor h1{letter-spacing:-.02em;margin-bottom:12pt;font-size:24pt;font-weight:700;line-height:1.2}.cn-editor h2{margin:20pt 0 10pt;font-size:18pt;font-weight:600;line-height:1.25}.cn-editor h3{margin:16pt 0 8pt;font-size:15pt;font-weight:600;line-height:1.3}.cn-editor h4{margin:14pt 0 6pt;font-size:13pt;font-weight:600}.cn-editor p{margin-bottom:10pt}.cn-editor ul,.cn-editor ol{margin-bottom:10pt;padding-left:22px}.cn-editor li{margin:2pt 0}.cn-editor hr{border:0;border-top:1px solid var(--cn-line);margin:14pt 0 18pt}.cn-editor blockquote{border-left:3px solid var(--cn-muted);color:var(--cn-muted);background:var(--cn-gold-soft);border-radius:0 4px 4px 0;margin:12pt 0;padding:8pt 14pt}.cn-editor table{border-collapse:collapse;width:100%;margin-bottom:12pt}.cn-editor th,.cn-editor td{border:1px solid var(--cn-line);text-align:left;padding:6px 8px;font-size:11pt}.cn-editor th{background:var(--cn-gold-soft);font-weight:600}.cn-editor pre{background:var(--cn-gold-soft);border:1px solid var(--cn-line);border-radius:4px;padding:10px;font-family:SF Mono,Menlo,Consolas,monospace;font-size:10pt;overflow:auto}.cn-editor code{background:var(--cn-gold-soft);border-radius:3px;padding:1px 4px;font-family:SF Mono,Menlo,Consolas,monospace;font-size:10.5pt}.cn-editor img{max-width:100%;height:auto;margin:10pt auto;display:block}.cn-editor figcaption{text-align:center;color:var(--cn-muted);font-size:10pt}.math-notation{background:var(--cn-gold-soft);border:1px solid var(--cn-line);border-radius:4px;padding:0 4px;font-family:SF Mono,Cambria Math,serif}.cn-group{position:relative}.cn-menu{border:1px solid var(--cn-line);z-index:20;background:#fff;border-radius:6px;min-width:170px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 8px 24px #00000014}.cn-menu-right{left:auto;right:0}.cn-menu button{text-align:left;width:100%;color:var(--cn-text);cursor:pointer;font-size:12px;font-family:var(--cn-font-ui);background:0 0;border:1px solid #0000;border-radius:4px;padding:8px 10px;transition:all .15s}.cn-menu button:hover{background:var(--cn-gold-soft);border-color:var(--cn-line)}.cn-status-bar{border-top:1px solid var(--cn-line);height:32px;color:var(--cn-muted);font-size:10px;font-family:var(--cn-font-ui);background:#fff;justify-content:space-between;align-items:center;padding:0 20px;display:flex}.cn-status-left,.cn-status-right{align-items:center;gap:16px;display:flex}.cn-status-right [data-cn-date]{color:var(--cn-faint)}.cn-zoom-control{border:1px solid var(--cn-line);height:24px;color:var(--cn-text);background:#fff;border-radius:4px;align-items:center;gap:8px;padding:0 6px;font-size:10px;display:inline-flex}.cn-zoom-control button{cursor:pointer;color:var(--cn-muted);background:0 0;border:1px solid #0000;padding:0 4px;font-size:14px;transition:all .15s}.cn-zoom-control button:hover{background:var(--cn-gold-soft);border-color:var(--cn-line);color:var(--cn-text)}.cn-focus .cn-sidebar,.cn-focus .cn-format-toolbar,.cn-focus .cn-status-bar{display:none}.cn-focus .cn-shell{grid-template-rows:56px minmax(0,1fr)}.cn-focus .cn-main{grid-template-columns:1fr}.cn-focus .cn-page{width:min(8.5in,100vw - 80px)}.cn-context-menu{border:1px solid var(--cn-line);z-index:60010;background:#fff;border-radius:6px;min-width:160px;padding:6px;position:fixed;box-shadow:0 8px 24px #00000014}.cn-context-menu-item{text-align:left;cursor:pointer;width:100%;font-size:12px;font-family:var(--cn-font-ui);background:0 0;border:1px solid #0000;border-radius:4px;padding:8px 10px;transition:all .15s}.cn-context-menu-item:hover{background:var(--cn-gold-soft);border-color:var(--cn-line)}.cn-context-menu-divider{background:var(--cn-line);height:1px;margin:4px 0}@media (width<=1050px){.cn-topbar{grid-template-columns:minmax(180px,1fr) minmax(200px,340px) auto;gap:8px}.cn-main{grid-template-columns:220px minmax(0,1fr)}.cn-context-panel{display:none}.cn-page{width:min(8.5in,100vw - 270px);padding:.6in .65in}.cn-toolbar-inner{justify-content:flex-start;width:100%;overflow-x:auto}}@media (width<=760px){.cn-shell{grid-template-rows:auto 48px minmax(0,1fr) 32px}.cn-topbar{grid-template-columns:1fr;gap:8px;height:auto;padding:8px 12px}.cn-title-center{justify-content:flex-start}.cn-lecture-title{text-align:left;padding-left:0}.cn-main{grid-template-columns:1fr}.cn-sidebar{display:none}.cn-page{width:calc(100vw - 24px);min-height:10in;padding:28px 20px}.cn-status-right [data-cn-date]{display:none}.cn-toolbar-inner{flex-wrap:nowrap}}#classNotesOverlay .cn-lecture-title{max-width:360px}#classNotesOverlay .cn-note-item[title]{min-width:0}#classNotesOverlay .cn-workspace-summary{gap:7px}#classNotesOverlay .cn-workspace-summary span{padding:5px 7px;line-height:1.2}#classNotesOverlay.cn-type-pdf .cn-page{background:#f7f5f0;border:1px solid #8a857847;box-shadow:0 3px 12px #1f2a2312}#classNotesOverlay .cn-toolbar-secondary{display:none!important}.cn-toolbar-dropdown{flex:none;position:relative}.cn-toolbar-menu-btn{height:30px;color:var(--cn-muted);font:10px var(--cn-font-ui);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:4px;align-items:center;gap:6px;padding:0 9px;display:inline-flex}.cn-toolbar-menu-btn:hover,.cn-toolbar-menu-btn[aria-expanded=true]{color:var(--cn-green);background:var(--cn-green-soft);border-color:var(--cn-green-border)}.cn-toolbar-menu-btn:focus-visible{outline:2px solid var(--cn-green);outline-offset:2px}.cn-toolbar-menu{z-index:9010;min-width:210px;max-height:min(420px,100vh - 150px);top:calc(100% + 7px);overflow-y:auto}.cn-toolbar-menu button{align-items:center;gap:9px;display:flex}.cn-toolbar-menu button i{width:16px;color:var(--cn-green);text-align:center}.cn-toolbar-menu button:disabled{opacity:.45;cursor:not-allowed}.cn-menu-color{min-height:34px;color:var(--cn-text);justify-content:space-between;align-items:center;gap:12px;padding:7px 10px;font-size:11px;display:flex}.cn-menu-color input{cursor:pointer;border:0;width:34px;height:22px;padding:0}@media (width<=1260px){.cn-toolbar-menu-btn span{display:none}.cn-toolbar-menu-btn{justify-content:center;width:30px;padding:0}.cn-toolbar-menu-btn .fa-caret-down{display:none}}@media (width<=760px){#classNotesOverlay .cn-lecture-title{max-width:none}.cn-toolbar-low-priority:not(:last-child){display:none}}@media (width<=540px){.cn-topbar{padding:6px 10px}.cn-breadcrumbs{font-size:10px}.cn-lecture-title{height:30px;font-size:12px}.cn-page{padding:20px 16px}.cn-editor{font-size:11pt}.cn-editor h1{font-size:20pt}.cn-editor h2{font-size:16pt}.cn-editor h3{font-size:14pt}.cn-share-btn{height:30px;padding:0 12px;font-size:10px}}.cn-notes-list::-webkit-scrollbar{width:4px}.cn-trash-list::-webkit-scrollbar{width:4px}.cn-doc-wrap::-webkit-scrollbar{width:4px}.cn-notes-list::-webkit-scrollbar-track{background:var(--cn-app-bg);border-radius:2px}.cn-trash-list::-webkit-scrollbar-track{background:var(--cn-app-bg);border-radius:2px}.cn-doc-wrap::-webkit-scrollbar-track{background:var(--cn-app-bg);border-radius:2px}.cn-notes-list::-webkit-scrollbar-thumb{background:var(--cn-line);border-radius:2px}.cn-trash-list::-webkit-scrollbar-thumb{background:var(--cn-line);border-radius:2px}.cn-doc-wrap::-webkit-scrollbar-thumb{background:var(--cn-line);border-radius:2px}.cn-notes-list::-webkit-scrollbar-thumb:hover{background:var(--cn-line-strong)}.cn-trash-list::-webkit-scrollbar-thumb:hover{background:var(--cn-line-strong)}.cn-doc-wrap::-webkit-scrollbar-thumb:hover{background:var(--cn-line-strong)}.cn-format-btn:focus-visible,.cn-icon-btn:focus-visible,.cn-mini-btn:focus-visible,.cn-note-item:focus-visible,.cn-new-note:focus-visible,.cn-share-btn:focus-visible,.cn-lecture-title:focus-visible{outline-offset:2px;outline:2px solid #1a1a1a}.cn-overlay{--cn-green:var(--ui-primary,#1f6b45);--cn-green-hover:#185638;--cn-green-soft:#1f6b4517;--cn-green-border:#1f6b4533;--cn-gold:var(--ui-accent,#c9a44c);--cn-gold-soft:#c9a44c17;--cn-gold-border:#c9a44c3d}.cn-topbar{border-bottom-color:var(--cn-gold-border);background:#fffdf8}.cn-breadcrumbs{color:var(--cn-muted)}.cn-breadcrumbs strong{color:var(--cn-text)}.cn-icon-btn{color:var(--cn-green)}.cn-icon-btn:hover{background:var(--cn-green-soft);color:var(--cn-green-hover);border-color:var(--cn-green-border)}.cn-lecture-title:hover,.cn-lecture-title:focus{border-color:var(--cn-green-border);box-shadow:0 0 0 3px var(--cn-green-soft);background:#fff}.cn-status{color:var(--cn-muted)}.cn-share-btn{background:var(--cn-green);color:#fff}.cn-share-btn:hover{background:var(--cn-green-hover)}.cn-format-toolbar{padding:0 12px;overflow:hidden}.cn-toolbar-inner{scrollbar-width:thin;gap:4px;width:100%;max-width:none;overflow-x:auto}.cn-format-btn,.cn-format-select,.cn-divider{flex:none}.cn-format-btn:focus-visible,.cn-icon-btn:focus-visible,.cn-format-select:focus-visible,.cn-color-control:focus-within{outline:2px solid var(--cn-green);outline-offset:2px}.cn-format-btn:disabled,.cn-icon-btn:disabled{opacity:.38;cursor:not-allowed}.cn-color-control{width:30px;height:30px;color:var(--cn-muted);cursor:pointer;border:1px solid #0000;border-radius:4px;flex:none;justify-content:center;align-items:center;display:inline-flex;position:relative}.cn-color-control:hover{background:var(--cn-gold-soft);border-color:var(--cn-line)}.cn-color-control input{opacity:.8;cursor:pointer;border:0;width:22px;height:4px;padding:0;position:absolute;inset:auto 4px 2px}.cn-note-row{grid-template-columns:minmax(0,1fr) auto}.cn-note-row .cn-note-actions{gap:1px}.cn-note-row .cn-note-actions .cn-note-action{width:26px;font-size:11px}.cn-workspace-summary{color:var(--cn-muted);flex-wrap:wrap;gap:5px;font-size:9px;display:flex}.cn-workspace-summary span{border:1px solid var(--cn-line);background:#fffdf8;border-radius:3px;padding:3px 5px}.cn-empty-state{text-align:center;min-height:190px;color:var(--cn-muted);align-content:center;justify-items:center;gap:9px;padding:28px 20px;display:grid}.cn-empty-state i{color:var(--cn-gold);font-size:24px}.cn-empty-state strong{color:var(--cn-text)}.cn-empty-state span{font-size:10px;line-height:1.5}.cn-file-badge{background:var(--cn-green-soft);color:var(--cn-green);border-radius:999px;padding:4px 8px;font-size:10px;font-weight:700}.cn-docx-card h2{margin:0}.cn-docx-card p{max-width:560px;color:var(--cn-muted);line-height:1.6}.cn-file-facts{flex-wrap:wrap;justify-content:center;gap:18px;margin:0;display:flex}.cn-file-facts div{gap:3px;display:grid}.cn-file-facts dt{color:var(--cn-muted);text-transform:uppercase;font-size:9px}.cn-file-facts dd{margin:0}.cn-topbar{background:var(--cn-green);border-bottom-color:var(--cn-gold)}.cn-topbar:after{background:var(--cn-gold);opacity:1}.cn-breadcrumbs,.cn-breadcrumbs strong,.cn-icon-btn,.cn-status{color:#fff}.cn-icon-btn:hover{color:#fff;background:#ffffff24;border-color:#ffffff3d}.cn-icon-btn:disabled{color:#ffffffad}.cn-status-dot{border-color:#fff}.cn-status-saved .cn-status-dot:after{border-bottom-color:#fff;border-left-color:#fff}.cn-lecture-title{color:#fff;background:#ffffff1a;border-color:#ffffff38}.cn-lecture-title::placeholder{color:#ffffffb3}.cn-lecture-title:hover,.cn-lecture-title:focus{color:var(--cn-text);border-color:var(--cn-gold);background:#fff;box-shadow:0 0 0 3px #c9a44c47}.cn-share-btn{color:var(--cn-green);background:#fff;border-color:#fffc}.cn-share-btn:hover{color:var(--cn-green-hover);background:#fff8e8}.cn-toolbar-inner{white-space:nowrap;align-items:center;min-width:0;display:flex}.cn-toolbar-inner .cn-format-select{flex-grow:0;flex-shrink:0;width:auto;min-width:0;max-width:none}.cn-toolbar-inner [data-cn-heading]{width:132px}.cn-toolbar-inner [data-cn-font-family]{width:122px}.cn-toolbar-inner [data-cn-font-size]{width:58px}@media (width>=1100px){.cn-toolbar-inner{justify-content:center}}@media (width<=1099px){.cn-toolbar-inner{justify-content:flex-start;overflow-x:auto}}#classNotesOverlay .cn-lecture-title,#classNotesOverlay .cn-lecture-title:hover,#classNotesOverlay .cn-lecture-title:focus{color:#fff!important;box-shadow:none!important;background:#0000001a!important;border-color:#ffffff4d!important}#classNotesOverlay .cn-lecture-title:focus{border-color:var(--cn-gold)!important;box-shadow:0 0 0 3px #c9a44c40!important}#classNotesOverlay .cn-lecture-title::placeholder{color:#ffffffb8!important}#classNotesOverlay.cn-type-pdf .cn-doc-wrap{padding:12px;overflow:hidden}#classNotesOverlay.cn-type-pdf .cn-page{width:100%;max-width:none;height:100%;min-height:0;box-shadow:none;border-radius:5px;margin:0;padding:0;overflow:hidden}#classNotesOverlay.cn-type-pdf .cn-file-preview,#classNotesOverlay.cn-type-pdf .cn-file-preview iframe{width:100%;height:100%;min-height:calc(100vh - 160px);display:block}#classNotesOverlay.cn-type-pdf .cn-file-preview iframe{background:#3f3f3f;border:0}#classNotesOverlay.cn-type-pdf .cn-zoom-control{display:none}@media (width<=760px){#classNotesOverlay.cn-type-pdf .cn-doc-wrap{padding:6px}#classNotesOverlay.cn-type-pdf .cn-file-preview,#classNotesOverlay.cn-type-pdf .cn-file-preview iframe{min-height:calc(100vh - 190px)}}:root{--staff-green:#174f38;--staff-green-strong:#103d2b;--staff-green-soft:#eaf3ee;--staff-gold:#c8a44d;--staff-gold-soft:#f7f0dd;--staff-bg:#f6f5f1;--staff-card:#fff;--staff-border:#e3e1d9;--staff-text:#202722;--staff-muted:#68716b;--staff-shadow:0 10px 28px #1b312614;--staff-sidebar-width:252px;--staff-header-height:78px}body.staff-ops-active{background:var(--staff-bg);overflow:hidden}body.staff-ops-active #appHeaderMount,body.staff-ops-active #appUtilitiesMount,body.staff-ops-active #mobileNavigationMount{display:none!important}body.staff-ops-active .container{background:var(--staff-bg);min-height:100vh}body.staff-ops-active main#appMain{height:100vh;margin:0;padding:0;overflow:hidden}body.staff-ops-active section[data-view=staff]{width:100%;height:100vh;margin:0;padding:0;animation:none}body.staff-drawer-open{overflow:hidden}#staffRoot{height:100%}.staff-page{background:var(--staff-bg);min-height:100%;padding:24px}.staff-module{min-width:0}.staff-module-error{min-height:320px}.staff-ops-shell{grid-template-columns:var(--staff-sidebar-width) minmax(0, 1fr);background:var(--staff-bg);width:100%;min-height:100vh;color:var(--staff-text);font-family:Inter,system-ui,sans-serif;display:grid}.staff-ops-sidebar{z-index:210;width:var(--staff-sidebar-width);background:var(--staff-green);color:#fff;height:100vh;position:fixed;inset:0 auto 0 0;overflow-y:auto;box-shadow:6px 0 24px #092a1c21}.staff-ops-sidebar-brand{min-height:var(--staff-header-height);border-bottom:1px solid #ffffff21;align-items:center;gap:12px;padding:16px 18px;display:flex}.staff-ops-brand-mark{background:var(--staff-gold);width:38px;height:38px;color:var(--staff-green-strong);border-radius:10px;flex:none;place-items:center;display:grid}.staff-ops-sidebar-brand strong,.staff-ops-sidebar-brand span{display:block}.staff-ops-sidebar-brand strong{font-size:14px;line-height:1.25}.staff-ops-sidebar-brand>div>span{color:#ffffffa8;margin-top:3px;font-size:11px}.staff-ops-drawer-close{margin-left:auto;display:none}.staff-ops-nav{padding:18px 12px 28px}.staff-nav-group{margin-bottom:22px}.staff-nav-title{color:#ffffff85;letter-spacing:.09em;text-transform:uppercase;margin-bottom:7px;padding:0 12px;font-size:10px;font-weight:700;display:block}.staff-tab{color:#ffffffc9;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:11px;width:100%;min-height:42px;padding:9px 12px;font:500 13px/1.25 Inter,system-ui,sans-serif;transition:background .16s,color .16s,border-color .16s;display:flex;position:relative}.staff-tab i{color:#ffffffad;text-align:center;width:18px}.staff-tab:hover{color:#fff;background:#ffffff17}.staff-tab.active{background:var(--staff-gold);color:var(--staff-green-strong);border-color:#fff3;font-weight:700}.staff-tab.active i{color:var(--staff-green-strong)}.staff-ops-main{grid-column:2;min-width:0;height:100vh;overflow-y:auto}.staff-ops-header{z-index:100;min-height:var(--staff-header-height);border-bottom:1px solid var(--staff-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffdf5;justify-content:space-between;align-items:center;gap:24px;padding:12px 26px;display:flex;position:sticky;top:0}.staff-ops-header-left,.staff-ops-header-actions,.staff-ops-identity{align-items:center;display:flex}.staff-ops-header-left{gap:18px;min-width:0}.staff-ops-header-actions{flex:none;gap:14px}.staff-ops-back,.staff-ops-refresh,.staff-ops-menu-toggle,.staff-ops-drawer-close{border:1px solid var(--staff-border);color:var(--staff-text);cursor:pointer;background:#fff;border-radius:8px}.staff-ops-back,.staff-ops-refresh{align-items:center;gap:8px;min-height:38px;padding:8px 12px;font:600 12px/1 Inter,system-ui,sans-serif;display:inline-flex}.staff-ops-back:hover,.staff-ops-refresh:hover{background:var(--staff-green-soft);border-color:#b7bcb8}.staff-ops-heading{border-left:1px solid var(--staff-border);min-width:0;padding-left:18px}.staff-ops-heading h1{color:var(--staff-text);letter-spacing:-.02em;margin:0;font-size:clamp(16px,1.5vw,21px);line-height:1.2}.staff-ops-heading p{color:var(--staff-muted);margin:4px 0 0;font-size:11px}.staff-ops-refresh.is-loading i{animation:.8s linear infinite staffSpin}.staff-ops-identity{border-left:1px solid var(--staff-border);gap:9px;padding-left:14px}.staff-ops-avatar{background:var(--staff-green);color:#fff;border-radius:50%;place-items:center;width:36px;height:36px;font-size:11px;font-weight:800;display:grid}.staff-ops-user strong,.staff-ops-user span{text-overflow:ellipsis;white-space:nowrap;max-width:190px;display:block;overflow:hidden}.staff-ops-user strong{font-size:12px}.staff-ops-role{background:var(--staff-gold-soft);color:#755b1c;border-radius:999px;width:fit-content;max-width:190px;margin-top:3px;padding:2px 7px;font-size:9px;font-weight:700}.staff-ops-menu-toggle{width:38px;height:38px;display:none}.staff-ops-content{width:100%;max-width:1600px;min-height:calc(100vh - var(--staff-header-height));margin:0 auto;padding:24px 28px 36px}.staff-module-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.staff-module-header h2{color:var(--staff-text);letter-spacing:-.01em;margin:0;font-size:19px}.staff-module-header p{color:var(--staff-muted);margin:5px 0 0;font-size:12px}.staff-loading,.staff-empty,.staff-denied{min-height:240px;color:var(--staff-muted);text-align:center;place-items:center;display:grid}.staff-loading i{color:var(--staff-green)}.staff-denied-card{border:1px solid var(--staff-border);background:var(--staff-card);max-width:440px;box-shadow:var(--staff-shadow);border-radius:12px;padding:32px}.staff-denied-card i{color:var(--staff-gold);font-size:30px}.staff-denied-card h2{margin:12px 0 6px}.staff-denied-card p{color:var(--staff-muted);margin:0}.staff-table,.staff-history{gap:8px;display:grid}.staff-row{border:1px solid var(--staff-border);background:var(--staff-card);border-radius:9px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:13px 15px;display:grid}.staff-row p{color:var(--staff-muted);margin:4px 0 0;font-size:12px}.staff-status{border:1px solid var(--staff-border);background:#fff;border-radius:8px;margin-bottom:16px;padding:10px 12px}.staff-status.error{color:#9b2929;background:#fff4f4;border-color:#e6b9b9}.staff-status.success{color:#17643d;background:#f1faf4;border-color:#b9dac6}.staff-ops-back:focus-visible,.staff-ops-refresh:focus-visible,.staff-ops-menu-toggle:focus-visible,.staff-ops-drawer-close:focus-visible,.staff-tab:focus-visible,.staff-btn:focus-visible{outline-offset:2px;outline:3px solid #f0cf79}.staff-ops-backdrop{display:none}@keyframes staffSpin{to{transform:rotate(360deg)}}@media (width<=900px){.staff-ops-shell{display:block}.staff-ops-main{height:100vh}.staff-ops-sidebar{width:min(292px,86vw);transition:transform .2s;transform:translate(-105%)}.staff-ops-shell.drawer-open .staff-ops-sidebar{transform:translate(0)}.staff-ops-backdrop{z-index:200;opacity:0;visibility:hidden;background:#0f1e1670;transition:opacity .2s,visibility .2s;display:block;position:fixed;inset:0}.staff-ops-shell.drawer-open .staff-ops-backdrop{opacity:1;visibility:visible}.staff-ops-menu-toggle,.staff-ops-drawer-close{place-items:center;display:grid}.staff-ops-drawer-close{color:#fff;background:#ffffff14;border-color:#ffffff38;width:34px;height:34px}.staff-ops-header{padding-inline:18px}.staff-ops-content{padding-inline:20px}}@media (width<=700px){:root{--staff-header-height:66px}.staff-ops-header{gap:10px;padding:9px 12px}.staff-ops-header-left{flex:1;gap:8px}.staff-ops-back{justify-content:center;width:38px;padding:0}.staff-ops-back span,.staff-ops-heading p,.staff-ops-refresh span,.staff-ops-user{display:none}.staff-ops-heading{flex:1;padding-left:10px}.staff-ops-heading h1{font-size:15px}.staff-ops-header-actions{gap:7px}.staff-ops-refresh{justify-content:center;width:38px;padding:0}.staff-ops-identity{padding-left:7px}.staff-ops-avatar{width:34px;height:34px}.staff-ops-content{padding:18px 14px 28px}.staff-module-header{flex-direction:column;align-items:stretch}.staff-row{grid-template-columns:1fr}}@media (width<=390px){.staff-ops-heading h1{max-width:112px;font-size:13px}.staff-ops-avatar{display:none}}@media (prefers-reduced-motion:reduce){.staff-ops-sidebar,.staff-ops-backdrop,.staff-tab{transition:none}}@media print{.staff-ops-sidebar,.staff-ops-header{display:none!important}.staff-ops-shell,.staff-ops-main{height:auto;display:block}}:root{--ad-bg:#f5f3ef;--ad-card:#fff;--ad-line:#e2ddd4;--ad-line-strong:#d5cfc4;--ad-text:#1a1a1a;--ad-muted:#8a8578;--ad-faint:#c4beb3;--ad-green:#1f6b45;--ad-green-hover:#174f34;--ad-green-soft:#1f6b450f;--ad-gold:#c9a44c;--ad-gold-soft:#c9a44c0f;--ad-shadow:0 4px 12px #0000000f;--ad-font:"SF Mono", "JetBrains Mono", monospace;--ad-danger:#b91c1c;--ad-danger-soft:#b91c1c0f;--ad-warning:#e8a53a;--ad-warning-soft:#e8a53a0f}.account-deletions-stats{grid-template-columns:repeat(4,minmax(120px,1fr));gap:10px;margin-bottom:14px;display:grid}.account-deletion-metric{border:1px solid var(--ad-line);background:var(--ad-card);box-shadow:var(--ad-shadow);border-radius:4px;align-items:center;gap:10px;padding:12px 14px;transition:all .15s;display:flex}.account-deletion-metric:hover{border-color:var(--ad-gold-border);box-shadow:0 6px 16px #00000014}.account-deletion-metric i{background:var(--ad-green-soft);width:34px;height:34px;color:var(--ad-green);border-radius:4px;flex-shrink:0;place-items:center;font-size:14px;display:grid}.account-deletion-metric.warn i{background:var(--ad-warning-soft);color:#b45309}.account-deletion-metric.danger i{background:var(--ad-danger-soft);color:var(--ad-danger)}.account-deletion-metric span{color:var(--ad-muted);text-transform:uppercase;letter-spacing:.5px;font-size:9px;font-weight:600;font-family:var(--ad-font);display:block}.account-deletion-metric strong{font-size:20px;font-weight:700;font-family:var(--ad-font);color:var(--ad-text)}.account-deletions-card{border:1px solid var(--ad-line);background:var(--ad-card);box-shadow:var(--ad-shadow);border-radius:4px;overflow:hidden}.account-deletions-toolbar{border-bottom:2px solid var(--ad-line);background:var(--ad-gold-soft);grid-template-columns:minmax(240px,1fr) 160px 160px;gap:8px;padding:12px 14px;display:grid}.account-deletions-search{border:1px solid var(--ad-line);background:var(--ad-card);border-radius:4px;align-items:center;gap:6px;padding:0 12px;transition:all .15s;display:flex}.account-deletions-search:focus-within{border-color:var(--ad-gold);box-shadow:0 0 0 3px #c9a44c1f}.account-deletions-search i{color:var(--ad-muted);font-size:13px}.account-deletions-search input{width:100%;color:var(--ad-text);font-family:var(--ad-font);background:0 0;border:none;outline:none;padding:8px 4px;font-size:12px}.account-deletions-search input::placeholder{color:var(--ad-faint)}.account-deletions-filter{border:1px solid var(--ad-line);background:var(--ad-card);width:100%;color:var(--ad-text);font-family:var(--ad-font);appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%238a8578'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;border-radius:4px;outline:none;padding:7px 28px 7px 10px;font-size:10px;transition:all .15s}.account-deletions-filter:focus{border-color:var(--ad-gold);box-shadow:0 0 0 3px #c9a44c1f}.account-deletion-row{border-bottom:1px solid var(--ad-line);justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;transition:all .15s;display:flex}.account-deletion-row:hover{background:var(--ad-gold-soft)}.account-deletion-row:last-child{border-bottom:none}.account-deletion-row-main{align-items:center;gap:10px;min-width:0;display:flex}.account-deletion-avatar{background:var(--ad-green);color:#fff;width:44px;height:44px;font-size:13px;font-weight:700;font-family:var(--ad-font);border-radius:4px;flex-shrink:0;place-items:center;display:grid}.account-deletion-avatar.mini{border-radius:4px;flex-shrink:0;width:34px;height:34px;font-size:11px}.account-deletion-row-title{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.account-deletion-row-title strong{font-size:13px;font-weight:600;font-family:var(--ad-font);color:var(--ad-text)}.account-deletion-row-main p{color:var(--ad-muted);font-size:10px;font-family:var(--ad-font);margin:2px 0 0}.account-deletion-row-meta{color:var(--ad-muted);font-size:9px;font-family:var(--ad-font);flex-wrap:wrap;gap:4px 10px;display:flex}.staff-badge.danger{background:var(--ad-danger-soft);color:var(--ad-danger);border-color:#b91c1c26}.account-deletion-drawer{z-index:500;pointer-events:none;visibility:hidden;position:fixed;inset:0}.account-deletion-drawer.open{pointer-events:auto;visibility:visible}.account-deletion-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;background:#02061780;transition:opacity .2s;position:absolute;inset:0}.account-deletion-drawer.open .account-deletion-backdrop{opacity:1}.account-deletion-panel{background:var(--ad-card);width:min(560px,96vw);height:100%;transition:transform .25s;position:absolute;top:0;right:0;overflow-y:auto;transform:translate(100%);box-shadow:-8px 0 32px #0000001a}.account-deletion-drawer.open .account-deletion-panel{transform:none}.account-deletion-panel::-webkit-scrollbar{width:4px}.account-deletion-panel::-webkit-scrollbar-track{background:var(--ad-line);border-radius:2px}.account-deletion-panel::-webkit-scrollbar-thumb{background:var(--ad-gold);border-radius:2px}.account-deletion-panel-head{z-index:2;border-bottom:2px solid var(--ad-line);background:var(--ad-card);justify-content:space-between;align-items:center;padding:14px 18px;display:flex;position:sticky;top:0}.account-deletion-panel-head h3{font-size:14px;font-weight:600;font-family:var(--ad-font);text-transform:uppercase;letter-spacing:.3px;color:var(--ad-text);margin:0}.account-deletion-panel-close{border:1px solid var(--ad-line);background:var(--ad-card);width:32px;height:32px;color:var(--ad-muted);cursor:pointer;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;transition:all .15s;display:inline-flex}.account-deletion-panel-close:hover{background:var(--ad-gold-soft);border-color:var(--ad-gold-border);color:var(--ad-text);transform:rotate(90deg)}.account-deletion-panel-body{padding:18px}.account-deletion-detail-profile{border-bottom:1px solid var(--ad-line);align-items:center;gap:12px;padding-bottom:14px;display:flex}.account-deletion-detail-profile .account-deletion-avatar{width:48px;height:48px;font-size:16px}.account-deletion-detail-profile h2{font-size:16px;font-weight:700;font-family:var(--ad-font);text-transform:uppercase;letter-spacing:.3px;color:var(--ad-text);margin:0}.account-deletion-detail-profile p{color:var(--ad-muted);font-size:12px;font-family:var(--ad-font);margin:2px 0 0}.account-deletion-badge-row{gap:6px;margin:12px 0;display:flex}.account-deletion-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.account-deletion-detail-grid>div{border:1px solid var(--ad-line);background:var(--ad-gold-soft);border-radius:4px;padding:10px 12px;transition:all .15s}.account-deletion-detail-grid>div:hover{border-color:var(--ad-gold-border)}.account-deletion-detail-grid span{color:var(--ad-muted);text-transform:uppercase;letter-spacing:.5px;font-size:8px;font-weight:600;font-family:var(--ad-font);display:block}.account-deletion-detail-grid strong{overflow-wrap:anywhere;font-size:12px;font-weight:500;font-family:var(--ad-font);color:var(--ad-text);margin-top:3px;display:block}.account-deletion-detail-section{border-top:1px solid var(--ad-line);margin-top:16px;padding-top:14px}.account-deletion-detail-section h4{font-size:11px;font-weight:600;font-family:var(--ad-font);text-transform:uppercase;letter-spacing:.3px;color:var(--ad-muted);margin:0 0 10px}.account-deletion-timeline{gap:10px;display:grid}.account-deletion-timeline-item{grid-template-columns:14px 1fr;gap:10px;padding:4px 0;display:grid}.account-deletion-timeline-dot{background:var(--ad-green);width:8px;height:8px;box-shadow:0 0 0 4px var(--ad-green-soft);border-radius:50%;flex-shrink:0;margin-top:5px}.account-deletion-timeline-item strong{font-size:12px;font-weight:600;font-family:var(--ad-font);color:var(--ad-text);display:block}.account-deletion-timeline-item p{color:var(--ad-muted);font-size:11px;font-family:var(--ad-font);margin:2px 0 0}.account-deletion-timeline-item small{color:var(--ad-faint);font-size:9px;font-family:var(--ad-font);margin-top:2px;display:block}.account-deletion-admin-action{border:1px solid #b91c1c26;border-left:3px solid var(--ad-danger);background:var(--ad-danger-soft);border-radius:4px;justify-content:space-between;align-items:center;gap:12px;margin-top:20px;padding:14px 16px;display:flex}.account-deletion-admin-action p{font-size:9px;font-family:var(--ad-font);color:var(--ad-muted);margin:3px 0 0}.account-deletion-admin-action strong{font-family:var(--ad-font);color:var(--ad-text)}.ad-btn{border:1px solid var(--ad-line);background:var(--ad-card);min-height:32px;color:var(--ad-text);font-family:var(--ad-font);text-transform:uppercase;letter-spacing:.3px;cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:9px;font-weight:500;transition:all .15s;display:inline-flex}.ad-btn:hover{background:var(--ad-gold-soft);border-color:var(--ad-gold-border);transform:translateY(-1px)}.ad-btn-primary{background:var(--ad-green);border-color:var(--ad-green);color:#fff}.ad-btn-primary:hover{background:var(--ad-green-hover);border-color:var(--ad-green-hover)}.ad-btn-danger{background:var(--ad-danger);border-color:var(--ad-danger);color:#fff}.ad-btn-danger:hover{background:#7f1d1d;border-color:#7f1d1d}.ad-btn-secondary{border-color:var(--ad-line);color:var(--ad-muted);background:0 0}.ad-btn-secondary:hover{background:var(--ad-gold-soft);border-color:var(--ad-gold-border);color:var(--ad-text)}@media (width<=1024px){.account-deletions-stats{grid-template-columns:repeat(2,1fr)}.account-deletions-toolbar{grid-template-columns:1fr}}@media (width<=768px){.account-deletions-stats{grid-template-columns:repeat(2,1fr);gap:8px}.account-deletion-metric{padding:10px 12px}.account-deletion-metric strong{font-size:18px}.account-deletion-row{flex-direction:column;align-items:stretch;gap:10px}.account-deletion-row-main{flex-wrap:wrap}.account-deletion-admin-action{flex-direction:column;align-items:stretch}.account-deletion-admin-action .ad-btn{justify-content:center;width:100%}.account-deletion-detail-grid{grid-template-columns:1fr}.account-deletion-panel{width:100vw}.account-deletion-panel-head{padding:12px 16px}}@media (width<=480px){.account-deletions-stats{grid-template-columns:1fr}.account-deletion-metric{padding:8px 12px}.account-deletion-metric strong{font-size:16px}.account-deletion-row{padding:8px 12px}.account-deletion-panel-body{padding:14px}.account-deletion-detail-profile h2{font-size:14px}.account-deletion-timeline-item{grid-template-columns:12px 1fr}.account-deletion-timeline-dot{width:6px;height:6px}}.account-deletions-search input:focus-visible,.account-deletions-filter:focus-visible,.ad-btn:focus-visible,.account-deletion-panel-close:focus-visible{outline:2px solid var(--ad-gold);outline-offset:2px}@keyframes adSlideIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.account-deletion-metric,.account-deletion-row{animation:.2s adSlideIn}.account-deletion-metric:nth-child(2),.account-deletion-row:nth-child(2){animation-delay:50ms}.account-deletion-metric:nth-child(3),.account-deletion-row:nth-child(3){animation-delay:.1s}.account-deletion-metric:nth-child(4),.account-deletion-row:nth-child(4){animation-delay:.15s}@media print{.account-deletions-card{box-shadow:none!important;border:1px solid #000!important}.account-deletion-metric{border:1px solid #000!important}.account-deletion-drawer,.account-deletions-toolbar,.ad-btn{display:none!important}}:root{--ticket-bg:#f5f3ef;--ticket-card:#fff;--ticket-line:#e2ddd4;--ticket-line-strong:#d5cfc4;--ticket-text:#1a1a1a;--ticket-muted:#8a8578;--ticket-faint:#c4beb3;--ticket-green:#1f6b45;--ticket-green-hover:#174f34;--ticket-green-soft:#1f6b450f;--ticket-gold:#c9a44c;--ticket-gold-soft:#c9a44c0f;--ticket-shadow:0 4px 12px #0000000f;--ticket-font:"SF Mono", "JetBrains Mono", monospace}.tickets-module{flex-direction:column;gap:16px;display:flex}.tickets-toolbar{border-bottom:2px solid var(--ticket-line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-bottom:12px;display:flex}.staff-search{border:1px solid var(--ticket-line);background:var(--ticket-card);min-width:280px;font:inherit;color:var(--ticket-text);font-family:var(--ticket-font);border-radius:4px;flex:1;padding:8px 14px;font-size:12px;transition:all .15s}.staff-search:focus{border-color:var(--ticket-gold);outline:none;box-shadow:0 0 0 3px #c9a44c1f}.staff-search::placeholder{color:var(--ticket-faint)}.tickets-filters{flex-wrap:wrap;gap:6px;display:flex}.tickets-workspace{grid-template-columns:340px 1fr;gap:16px;min-height:600px;display:grid}.tickets-list{flex-direction:column;gap:8px;max-height:700px;padding-right:4px;display:flex;overflow-y:auto}.tickets-list::-webkit-scrollbar{width:4px}.tickets-list::-webkit-scrollbar-track{background:var(--ticket-line);border-radius:2px}.tickets-list::-webkit-scrollbar-thumb{background:var(--ticket-gold);border-radius:2px}.ticket-list-item{text-align:left;border:1px solid var(--ticket-line);background:var(--ticket-card);cursor:pointer;width:100%;font-family:var(--ticket-font);border-radius:4px;padding:12px 14px;transition:all .15s}.ticket-list-item:hover{border-color:var(--ticket-gold-border);box-shadow:var(--ticket-shadow);transform:translateY(-1px)}.ticket-list-item.is-selected{border-color:var(--ticket-green);box-shadow:0 0 0 2px #1f6b451f}.ticket-list-top{justify-content:space-between;gap:10px;margin-bottom:6px;display:flex}.ticket-list-top strong{color:var(--ticket-text);font-size:13px;font-weight:600;font-family:var(--ticket-font)}.ticket-list-top .ticket-status{text-transform:uppercase;letter-spacing:.3px;border-radius:4px;padding:2px 10px;font-size:9px;font-weight:600}.ticket-list-item p{color:var(--ticket-muted);font-size:12px;line-height:1.5;font-family:var(--ticket-font);margin:0}.ticket-list-meta{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.ticket-list-meta span{color:var(--ticket-faint);font-size:10px;font-family:var(--ticket-font)}.ticket-detail{min-width:0}.ticket-detail-card{background:var(--ticket-card);border:1px solid var(--ticket-line);box-shadow:var(--ticket-shadow);border-radius:4px;padding:18px 20px}.ticket-detail-header{border-bottom:1px solid var(--ticket-line);justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;padding-bottom:14px;display:flex}.ticket-detail-header h3{color:var(--ticket-text);font-size:18px;font-weight:700;font-family:var(--ticket-font);text-transform:uppercase;letter-spacing:-.3px;margin:4px 0 8px}.ticket-detail-header p{color:var(--ticket-muted);font-size:12px;line-height:1.6;font-family:var(--ticket-font)}.ticket-actions{flex-wrap:wrap;gap:8px;display:flex}.ticket-actions select{border:1px solid var(--ticket-line);background:var(--ticket-card);min-width:120px;color:var(--ticket-text);font-family:var(--ticket-font);appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%238a8578'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;border-radius:4px;padding:6px 32px 6px 12px;font-size:11px;transition:all .15s}.ticket-actions select:focus{border-color:var(--ticket-gold);outline:none;box-shadow:0 0 0 3px #c9a44c1f}.ticket-btn{border:1px solid var(--ticket-line);background:var(--ticket-card);color:var(--ticket-text);font-family:var(--ticket-font);text-transform:uppercase;letter-spacing:.3px;cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:6px 16px;font-size:10px;font-weight:500;transition:all .15s;display:inline-flex}.ticket-btn:hover{background:var(--ticket-gold-soft);border-color:var(--ticket-gold-border);transform:translateY(-1px)}.ticket-btn:active{transform:translateY(0)}.ticket-btn-primary{background:var(--ticket-green);border-color:var(--ticket-green);color:#fff}.ticket-btn-primary:hover{background:var(--ticket-green-hover);border-color:var(--ticket-green-hover)}.ticket-btn-danger{color:#fff;background:#b91c1c;border-color:#b91c1c}.ticket-btn-danger:hover{background:#7f1d1d;border-color:#7f1d1d}.ticket-btn-secondary{border-color:var(--ticket-line);color:var(--ticket-muted);background:0 0}.ticket-btn-secondary:hover{background:var(--ticket-gold-soft);border-color:var(--ticket-gold-border);color:var(--ticket-text)}.ticket-btn.small{min-height:28px;padding:4px 12px;font-size:9px}.ticket-assignment-box{gap:8px;min-width:260px;display:grid;position:relative}.ticket-assignment-label{text-transform:uppercase;letter-spacing:.5px;color:var(--ticket-muted);font-size:9px;font-weight:600;font-family:var(--ticket-font)}.ticket-assignment-search-wrap{position:relative}.ticket-assignment-search-wrap i{color:var(--ticket-muted);pointer-events:none;font-size:13px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.ticket-assignment-search{border:1px solid var(--ticket-line);background:var(--ticket-card);width:100%;min-height:36px;color:var(--ticket-text);font-family:var(--ticket-font);border-radius:4px;outline:none;padding:0 12px 0 34px;font-size:12px;transition:all .15s}.ticket-assignment-search::placeholder{color:var(--ticket-faint)}.ticket-assignment-search:focus{border-color:var(--ticket-gold);box-shadow:0 0 0 3px #c9a44c1f}.ticket-assignment-results{border:1px solid var(--ticket-line);background:var(--ticket-card);z-index:20;border-radius:4px;max-height:220px;padding:6px;animation:.15s resultsSlideDown;display:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto;box-shadow:0 12px 32px #0000001f}@keyframes resultsSlideDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.ticket-assignment-results.is-open{gap:4px;display:grid}.ticket-assignment-results::-webkit-scrollbar{width:4px}.ticket-assignment-results::-webkit-scrollbar-track{background:var(--ticket-line);border-radius:2px}.ticket-assignment-results::-webkit-scrollbar-thumb{background:var(--ticket-gold);border-radius:2px}.ticket-assignment-option{background:var(--ticket-card);text-align:left;cursor:pointer;border:1px solid #0000;border-radius:4px;grid-template-columns:32px 1fr 18px;align-items:center;gap:10px;width:100%;padding:8px 10px;transition:all .15s;display:grid}.ticket-assignment-option:hover{background:var(--ticket-gold-soft);border-color:var(--ticket-line)}.ticket-assignment-option.is-selected{background:var(--ticket-green-soft);border-color:var(--ticket-green-border)}.ticket-assignment-option.is-selected:hover{background:#1f6b451a}.ticket-assignment-avatar{background:var(--ticket-green-soft);width:32px;height:32px;color:var(--ticket-green);font-size:11px;font-weight:700;font-family:var(--ticket-font);border:1px solid #1f6b4514;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.ticket-assignment-person{min-width:0}.ticket-assignment-person strong{color:var(--ticket-text);font-size:12px;font-weight:600;font-family:var(--ticket-font);white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.ticket-assignment-person small{color:var(--ticket-muted);font-size:10px;font-weight:400;font-family:var(--ticket-font);white-space:nowrap;text-overflow:ellipsis;margin-top:1px;display:block;overflow:hidden}.ticket-assignment-option>i{color:var(--ticket-green);opacity:0;font-size:14px;transition:all .15s}.ticket-assignment-option.is-selected>i{opacity:1}.ticket-assignment-empty{color:var(--ticket-muted);text-align:center;font-size:11px;font-family:var(--ticket-font);padding:12px 14px}.ticket-assign-submit{border:1px solid var(--ticket-line);background:var(--ticket-card);width:100%;min-height:36px;color:var(--ticket-text);font-family:var(--ticket-font);text-transform:uppercase;letter-spacing:.3px;cursor:pointer;border-radius:4px;padding:6px 16px;font-size:10px;font-weight:500;transition:all .15s}.ticket-assign-submit:hover{background:var(--ticket-gold-soft);border-color:var(--ticket-gold-border);transform:translateY(-1px)}.ticket-assign-submit.btn-primary{background:var(--ticket-green);border-color:var(--ticket-green);color:#fff}.ticket-assign-submit.btn-primary:hover{background:var(--ticket-green-hover);border-color:var(--ticket-green-hover)}.ticket-meta-grid{grid-template-columns:repeat(4,minmax(120px,1fr));gap:10px;margin-bottom:20px;display:grid}.ticket-meta-card{border:1px solid var(--ticket-line);background:var(--ticket-gold-soft);border-radius:4px;padding:10px 12px}.ticket-meta-card span{text-transform:uppercase;letter-spacing:.5px;color:var(--ticket-muted);font-size:9px;font-weight:600;font-family:var(--ticket-font);margin-bottom:4px;display:block}.ticket-meta-card strong{color:var(--ticket-text);font-size:13px;font-weight:600;font-family:var(--ticket-font)}.ticket-thread{margin-bottom:20px}.ticket-thread h4{color:var(--ticket-muted);font-size:12px;font-weight:600;font-family:var(--ticket-font);text-transform:uppercase;letter-spacing:.3px;margin-bottom:10px}.ticket-message{border:1px solid var(--ticket-line);background:var(--ticket-card);border-radius:4px;margin-bottom:8px;padding:10px 14px}.ticket-message-head{justify-content:space-between;gap:10px;margin-bottom:6px;display:flex}.ticket-message-head strong{color:var(--ticket-text);font-size:12px;font-weight:600;font-family:var(--ticket-font)}.ticket-message-head span{color:var(--ticket-faint);font-size:10px;font-family:var(--ticket-font)}.ticket-message p{color:var(--ticket-muted);font-size:12px;line-height:1.6;font-family:var(--ticket-font);margin:0}.ticket-message.is-internal{background:var(--ticket-gold-soft);border-color:var(--ticket-gold-border);border-left:3px solid var(--ticket-gold)}.ticket-reply-form{flex-direction:column;gap:10px;display:flex}.ticket-reply-form textarea{resize:vertical;border:1px solid var(--ticket-line);min-height:100px;font-family:var(--ticket-font);color:var(--ticket-text);background:var(--ticket-card);border-radius:4px;padding:10px 12px;font-size:12px;transition:all .15s}.ticket-reply-form textarea:focus{border-color:var(--ticket-gold);outline:none;box-shadow:0 0 0 3px #c9a44c1f}.input-label{text-transform:uppercase;letter-spacing:.3px;color:var(--ticket-muted);font-size:10px;font-weight:600;font-family:var(--ticket-font)}.checkbox-label{cursor:pointer;color:var(--ticket-muted);font-size:12px;font-family:var(--ticket-font);align-items:center;gap:6px;display:flex}.checkbox-label input[type=checkbox]{accent-color:var(--ticket-green);cursor:pointer}.staff-status{font-size:12px;font-family:var(--ticket-font);border-left:3px solid #0000;border-radius:4px;margin-bottom:12px;padding:8px 12px}.staff-status.success{background:var(--ticket-green-soft);color:var(--ticket-green);border-left-color:var(--ticket-green)}.staff-status.error{color:#b91c1c;background:#fee9e8;border-left-color:#b91c1c}.staff-status.info{background:var(--ticket-gold-soft);color:var(--ticket-gold);border-left-color:var(--ticket-gold)}.ticket-activity{background:var(--ticket-card);border:1px solid var(--ticket-line);box-shadow:var(--ticket-shadow);border-radius:4px;margin:20px 0;padding:16px 18px}.ticket-activity h4{color:var(--ticket-muted);font-size:12px;font-weight:600;font-family:var(--ticket-font);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--ticket-line);margin:0 0 14px;padding-bottom:10px}.ticket-activity-item{border-bottom:1px solid var(--ticket-line);grid-template-columns:20px 1fr;gap:12px;padding:10px 0;transition:all .15s;display:grid}.ticket-activity-item:last-child{border-bottom:none;padding-bottom:0}.ticket-activity-item:hover{background:var(--ticket-gold-soft);border-radius:4px;margin:0 -4px;padding-left:4px;padding-right:4px}.ticket-activity-dot{background:var(--ticket-green);border:1px solid #1f6b4533;border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:6px}.ticket-activity-dot.gold{background:var(--ticket-gold);border-color:#c9a44c33}.ticket-activity-dot.muted{background:var(--ticket-muted);border-color:#8a857833}.ticket-activity-dot.danger{background:#b91c1c;border-color:#b91c1c33}.ticket-activity-item strong{color:var(--ticket-text);font-size:13px;font-weight:600;font-family:var(--ticket-font);display:block}.ticket-activity-item p{color:var(--ticket-muted);font-size:12px;font-family:var(--ticket-font);margin:4px 0 0;line-height:1.5}.ticket-activity-item .activity-time{color:var(--ticket-faint);font-size:10px;font-family:var(--ticket-font);margin-top:2px;display:block}.ticket-activity-item.has-icon{grid-template-columns:32px 1fr}.ticket-activity-item .activity-icon{background:var(--ticket-gold-soft);border:1px solid var(--ticket-line);width:28px;height:28px;color:var(--ticket-gold);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;font-size:12px;display:flex}.ticket-activity-badge{text-transform:uppercase;letter-spacing:.3px;font-size:9px;font-weight:600;font-family:var(--ticket-font);border-radius:4px;margin-left:8px;padding:2px 10px;display:inline-block}.ticket-activity-badge.new{background:var(--ticket-green-soft);color:var(--ticket-green);border:1px solid #1f6b4526}.ticket-activity-badge.updated{background:var(--ticket-gold-soft);color:var(--ticket-gold);border:1px solid #c9a44c26}.ticket-activity-badge.resolved{color:#2d6a4f;background:#e8f3ea;border:1px solid #2d6a4f26}.ticket-activity-count{background:var(--ticket-gold-soft);border:1px solid var(--ticket-line);min-width:20px;height:20px;color:var(--ticket-muted);font-size:10px;font-weight:600;font-family:var(--ticket-font);border-radius:4px;justify-content:center;align-items:center;margin-left:8px;padding:0 6px;display:inline-flex}.ticket-activity-empty{text-align:center;color:var(--ticket-muted);padding:24px 16px}.ticket-activity-empty i{color:var(--ticket-faint);opacity:.4;margin-bottom:8px;font-size:28px;display:block}.ticket-activity-empty p{font-size:12px;font-family:var(--ticket-font);margin:0}.staff-empty p{font-family:var(--ticket-font);font-size:12px}@media (width<=1200px){.tickets-workspace{grid-template-columns:1fr}.ticket-meta-grid{grid-template-columns:repeat(2,1fr)}.tickets-list{max-height:400px}}@media (width<=900px){.ticket-meta-grid{grid-template-columns:1fr 1fr}}@media (width<=768px){.ticket-detail-header{flex-direction:column}.ticket-meta-grid{grid-template-columns:1fr}.tickets-toolbar{flex-direction:column;align-items:stretch}.staff-search{min-width:unset}.ticket-actions{flex-direction:column;width:100%}.ticket-actions select{width:100%}.ticket-detail-card{padding:14px 16px}.ticket-detail-header h3{font-size:16px}.ticket-assignment-box{min-width:unset;width:100%}.ticket-assignment-search{min-height:34px;padding:0 10px 0 32px;font-size:11px}.ticket-assignment-search-wrap i{font-size:12px;left:10px}.ticket-assignment-results{max-height:180px}.ticket-assignment-option{gap:8px;padding:6px 8px}.ticket-assignment-avatar{width:28px;height:28px;font-size:10px}.ticket-assignment-person strong{font-size:11px}.ticket-assignment-person small{font-size:9px}.ticket-assign-submit{min-height:34px;font-size:9px}.ticket-activity{margin:16px 0;padding:12px 14px}.ticket-activity-item{grid-template-columns:16px 1fr;gap:10px;padding:8px 0}.ticket-activity-dot{width:6px;height:6px;margin-top:5px}.ticket-activity-item strong{font-size:12px}.ticket-activity-item p{font-size:11px}.ticket-activity-item.has-icon{grid-template-columns:28px 1fr}.ticket-activity-item .activity-icon{width:24px;height:24px;font-size:10px}.ticket-activity-badge{margin-left:4px;padding:1px 8px;font-size:8px}}@media (width<=480px){.tickets-filters{gap:4px}.filter-chip{padding:4px 10px;font-size:9px}.ticket-list-item{padding:10px 12px}.ticket-message{padding:8px 10px}.ticket-reply-form textarea{min-height:80px}.ticket-assignment-search{min-height:32px;padding:0 8px 0 30px;font-size:10px}.ticket-assignment-search-wrap i{font-size:11px;left:8px}.ticket-assignment-results{max-height:160px;padding:4px}.ticket-assignment-option{grid-template-columns:26px 1fr 16px;gap:6px;padding:4px 6px}.ticket-assignment-avatar{width:24px;height:24px;font-size:9px}.ticket-assignment-person strong{font-size:10px}.ticket-assignment-person small{font-size:8px}.ticket-assignment-option>i{font-size:12px}.ticket-assignment-label{font-size:8px}.ticket-assign-submit{min-height:32px;padding:4px 12px;font-size:8px}.ticket-activity{padding:10px 12px}.ticket-activity h4{margin-bottom:10px;font-size:11px}.ticket-activity-item{padding:6px 0}.ticket-activity-item strong{font-size:11px}.ticket-activity-item p{font-size:10px}.ticket-activity-item .activity-time{font-size:9px}.ticket-activity-badge{padding:1px 6px;font-size:7px}}.filter-chip:focus-visible,.ticket-list-item:focus-visible,.ticket-btn:focus-visible,.staff-search:focus-visible,.ticket-reply-form textarea:focus-visible,.ticket-actions select:focus-visible,.ticket-assignment-search:focus-visible,.ticket-assignment-option:focus-visible,.ticket-assign-submit:focus-visible,.ticket-activity-item:focus-visible{outline:2px solid var(--ticket-gold);outline-offset:2px}.ticket-assign-submit:disabled,.ticket-btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.ticket-assignment-search:disabled{opacity:.6;cursor:not-allowed}@keyframes ticketSlideIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes optionSlideIn{0%{opacity:0;transform:translate(-4px)}to{opacity:1;transform:translate(0)}}@keyframes activitySlideIn{0%{opacity:0;transform:translate(-4px)}to{opacity:1;transform:translate(0)}}.ticket-list-item,.ticket-message{animation:.2s ticketSlideIn}.ticket-list-item:nth-child(2){animation-delay:50ms}.ticket-list-item:nth-child(3){animation-delay:.1s}.ticket-assignment-option{animation:.15s optionSlideIn}.ticket-assignment-option:nth-child(2){animation-delay:30ms}.ticket-assignment-option:nth-child(3){animation-delay:60ms}.ticket-assignment-option:nth-child(4){animation-delay:90ms}.ticket-activity-item{animation:.2s activitySlideIn}.ticket-activity-item:nth-child(2){animation-delay:50ms}.ticket-activity-item:nth-child(3){animation-delay:.1s}.ticket-activity-item:nth-child(4){animation-delay:.15s}.ticket-activity-item:nth-child(5){animation-delay:.2s}@media print{.tickets-toolbar,.tickets-filters,.ticket-actions,.ticket-reply-form,.ticket-assignment-box{display:none!important}.tickets-workspace{display:block!important}.tickets-list{display:none!important}.ticket-detail-card{box-shadow:none!important;border:1px solid #000!important}.ticket-meta-card{border:1px solid #000!important}.ticket-activity{break-inside:avoid;page-break-inside:avoid;box-shadow:none!important;border:1px solid #000!important}.ticket-activity-item{border-bottom-color:#000!important}.ticket-activity-dot{border:1px solid #000!important}}.case-management-form{border:1px solid var(--ticket-line);background:var(--ticket-card);border-radius:18px;gap:14px;margin-top:18px;padding:16px;display:grid}.case-management-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.case-management-heading h4{margin:3px 0 0}.case-management-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.case-management-grid label,.case-resolution-notes,.ticket-attachment-control{color:var(--ticket-muted);gap:6px;font-size:.76rem;font-weight:750;display:grid}.case-management-grid :where(input,select),.case-resolution-notes textarea,.ticket-attachment-control input{border:1px solid var(--ticket-line);width:100%;color:var(--ticket-text);background:var(--ticket-card);border-radius:10px;padding:9px 10px}.staff-badge.is-danger{color:#b42318;background:#b423181a}@media (width<=900px){.case-management-grid{grid-template-columns:1fr 1fr}}:root{--bc-bg:#f5f3ef;--bc-card:#fff;--bc-line:#e2ddd4;--bc-line-strong:#d5cfc4;--bc-text:#1a1a1a;--bc-muted:#8a8578;--bc-faint:#c4beb3;--bc-green:#1f6b45;--bc-green-hover:#174f34;--bc-green-soft:#1f6b450f;--bc-gold:#c9a44c;--bc-gold-soft:#c9a44c0f;--bc-shadow:0 4px 12px #0000000f;--bc-font:"SF Mono", "JetBrains Mono", monospace}.broadcasts-module{gap:16px;display:grid}.broadcasts-layout{grid-template-columns:minmax(320px,.85fr) minmax(380px,1.15fr);align-items:start;gap:16px;display:grid}.broadcast-card{background:var(--bc-card);border:1px solid var(--bc-line);box-shadow:var(--bc-shadow);border-radius:4px;padding:16px 18px;transition:all .15s}.broadcast-card:hover{border-color:var(--bc-gold)}.broadcast-card-header{border-bottom:2px solid var(--bc-line);margin-bottom:14px;padding-bottom:12px}.broadcast-card-header h3{color:var(--bc-text);font-size:14px;font-weight:600;font-family:var(--bc-font);text-transform:uppercase;letter-spacing:.3px;margin:0}.broadcast-card-header p{color:var(--bc-muted);font-size:12px;font-family:var(--bc-font);margin:4px 0 0}.broadcast-form{gap:14px;display:grid}.broadcast-form label{color:var(--bc-text);text-transform:uppercase;letter-spacing:.3px;font-size:10px;font-weight:600;font-family:var(--bc-font);gap:4px;display:grid}.broadcast-form input,.broadcast-form textarea,.broadcast-form select{border:1px solid var(--bc-line);font:inherit;background:var(--bc-card);color:var(--bc-text);font-family:var(--bc-font);border-radius:4px;outline:none;padding:8px 12px;font-size:12px;transition:all .15s}.broadcast-form input:focus,.broadcast-form textarea:focus,.broadcast-form select:focus{border-color:var(--bc-gold);box-shadow:0 0 0 3px #c9a44c1f}.broadcast-form input::placeholder,.broadcast-form textarea::placeholder{color:var(--bc-faint)}.broadcast-form textarea{resize:vertical;min-height:200px;line-height:1.5}.recipient-count-display{color:var(--bc-muted);font-size:11px;font-family:var(--bc-font);border-top:1px solid var(--bc-line);padding:10px 0 4px}.broadcast-actions{flex-wrap:wrap;gap:8px;padding-top:4px;display:flex}.broadcast-controls{border-bottom:1px solid var(--bc-line);flex-direction:column;gap:10px;margin-bottom:12px;padding-bottom:12px;display:flex}.broadcast-filters{flex-wrap:wrap;gap:6px;display:flex}.broadcast-search{align-items:center;display:flex;position:relative}.broadcast-search input{border:1px solid var(--bc-line);width:100%;font-family:var(--bc-font);background:var(--bc-card);color:var(--bc-text);border-radius:4px;outline:none;padding:6px 12px 6px 32px;font-size:11px;transition:all .15s}.broadcast-search input:focus{border-color:var(--bc-gold);box-shadow:0 0 0 3px #c9a44c1f}.broadcast-search .search-icon{color:var(--bc-faint);font-size:12px;position:absolute;left:10px}.filter-chip{border:1px solid var(--bc-line);background:var(--bc-card);color:var(--bc-muted);cursor:pointer;font-size:10px;font-weight:500;font-family:var(--bc-font);text-transform:uppercase;letter-spacing:.3px;border-radius:4px;padding:4px 14px;transition:all .15s}.filter-chip:hover{background:var(--bc-gold-soft);border-color:var(--bc-gold);color:var(--bc-text)}.filter-chip.is-active{background:var(--bc-green);color:#fff;border-color:var(--bc-green)}.broadcast-list{gap:10px;display:grid}.broadcast-row{border:1px solid var(--bc-line);background:var(--bc-card);border-radius:4px;grid-template-columns:1fr auto;align-items:start;gap:14px;padding:12px 14px;transition:all .15s;display:grid}.broadcast-row:hover{border-color:var(--bc-gold);box-shadow:var(--bc-shadow)}.broadcast-row-top{justify-content:space-between;gap:10px;margin-bottom:6px;display:flex}.broadcast-row-top strong{color:var(--bc-text);font-size:13px;font-weight:600;font-family:var(--bc-font)}.broadcast-row-main p{color:var(--bc-muted);font-size:12px;line-height:1.5;font-family:var(--bc-font);margin:0 0 10px}.broadcast-meta{flex-wrap:wrap;gap:8px;display:flex}.broadcast-meta span{color:var(--bc-faint);font-size:10px;font-family:var(--bc-font)}.staff-badge{text-transform:uppercase;letter-spacing:.3px;font-size:9px;font-weight:600;font-family:var(--bc-font);border-radius:4px;padding:2px 10px;display:inline-flex}.staff-badge.status-draft{background:var(--bc-gold-soft);color:var(--bc-gold);border:1px solid #c9a44c26}.staff-badge.status-sent{color:#065f46;background:#d1fae5;border:1px solid #10b98133}.staff-badge.status-failed{color:#991b1b;background:#fee2e2;border:1px solid #ef444433}.staff-badge.status-partial{color:#92400e;background:#fef3c7;border:1px solid #d9770633}.staff-badge.status-scheduled{color:#3730a3;background:#e0e7ff;border:1px solid #6366f133}.staff-badge.status-sending{color:#5b21b6;background:#ede9fe;border:1px solid #8b5cf633}.broadcast-row-actions{flex-direction:column;gap:6px;min-width:100px;display:flex}.btn-primary{border:1px solid var(--bc-green);background:var(--bc-green);color:#fff;font-family:var(--bc-font);text-transform:uppercase;letter-spacing:.3px;cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:6px;padding:6px 16px;font-size:10px;font-weight:500;transition:all .15s;display:inline-flex}.btn-primary:hover{background:var(--bc-green-hover);border-color:var(--bc-green-hover);transform:translateY(-1px)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary{border:1px solid var(--bc-line);background:var(--bc-card);color:var(--bc-text);font-family:var(--bc-font);text-transform:uppercase;letter-spacing:.3px;cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:6px;padding:6px 16px;font-size:10px;font-weight:500;transition:all .15s;display:inline-flex}.btn-secondary:hover{background:var(--bc-gold-soft);border-color:var(--bc-gold);transform:translateY(-1px)}.btn-danger{color:#fff;font-family:var(--bc-font);text-transform:uppercase;letter-spacing:.3px;cursor:pointer;background:#b91c1c;border:1px solid #b91c1c;border-radius:4px;justify-content:center;align-items:center;gap:6px;padding:6px 16px;font-size:10px;font-weight:500;transition:all .15s;display:inline-flex}.btn-danger:hover{background:#7f1d1d;border-color:#7f1d1d;transform:translateY(-1px)}.btn-success{color:#fff;font-family:var(--bc-font);text-transform:uppercase;letter-spacing:.3px;cursor:pointer;background:#059669;border:1px solid #059669;border-radius:4px;justify-content:center;align-items:center;gap:6px;padding:6px 16px;font-size:10px;font-weight:500;transition:all .15s;display:inline-flex}.btn-success:hover{background:#047857;border-color:#047857;transform:translateY(-1px)}.btn-secondary.small,.btn-primary.small,.btn-danger.small,.btn-success.small{padding:4px 12px;font-size:9px}.staff-empty{border:2px dashed var(--bc-line);text-align:center;color:var(--bc-muted);border-radius:4px;padding:32px 20px}.staff-empty i{color:var(--bc-gold);opacity:.4;margin-bottom:8px;font-size:28px;display:block}.staff-empty p{font-family:var(--bc-font);margin:0;font-size:12px}.staff-empty.compact{padding:20px}.staff-empty.compact i{font-size:20px}.staff-status{font-size:12px;font-family:var(--bc-font);border-radius:4px;margin-bottom:12px;padding:10px 16px}.staff-status.info{background:var(--bc-gold-soft);color:var(--bc-gold);border:1px solid #c9a44c33}.staff-status.success{color:#065f46;background:#d1fae5;border:1px solid #10b98133}.staff-status.error{color:#991b1b;background:#fee2e2;border:1px solid #ef444433}.staff-status.warn{color:#92400e;background:#fef3c7;border:1px solid #d9770633}.broadcast-preview-modal{z-index:99999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#02061799;justify-content:center;align-items:center;padding:20px;animation:.2s previewFadeIn;display:flex;position:fixed;inset:0}@keyframes previewFadeIn{0%{opacity:0}to{opacity:1}}.broadcast-preview-container{background:var(--bc-card);border:1px solid var(--bc-line);border-radius:4px;flex-direction:column;width:min(75vw,1400px);max-height:calc(100vh - 40px);animation:.2s previewSlideUp;display:flex;position:relative;overflow:hidden;box-shadow:0 16px 48px #00000026}@keyframes previewSlideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.broadcast-preview-header{background:var(--bc-gold-soft);border-bottom:2px solid var(--bc-line);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 22px;display:flex}.broadcast-preview-header-left{align-items:center;gap:12px;min-width:0;display:flex}.broadcast-preview-badge{background:var(--bc-green);color:#fff;text-transform:uppercase;letter-spacing:.3px;font-size:9px;font-weight:600;font-family:var(--bc-font);border-radius:4px;align-items:center;gap:4px;padding:2px 12px;display:inline-flex}.broadcast-preview-title{color:var(--bc-text);font-size:15px;font-weight:600;font-family:var(--bc-font);white-space:nowrap;text-overflow:ellipsis;margin:0;overflow:hidden}.broadcast-preview-header-right{flex-shrink:0;align-items:center;gap:10px;display:flex}.broadcast-preview-close{border:1px solid var(--bc-line);background:var(--bc-card);width:32px;height:32px;color:var(--bc-muted);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;font-size:16px;transition:all .15s;display:inline-flex}.broadcast-preview-close:hover{background:var(--bc-gold-soft);border-color:var(--bc-gold);color:var(--bc-text);transform:rotate(90deg)}.broadcast-preview-meta-grid{background:var(--bc-gold-soft);border-bottom:1px solid var(--bc-line);flex-shrink:0;grid-template-columns:repeat(4,1fr);gap:12px;padding:12px 22px;display:grid}.broadcast-preview-meta-item{flex-direction:column;gap:2px;display:flex}.broadcast-preview-meta-item .meta-label{text-transform:uppercase;letter-spacing:.5px;color:var(--bc-muted);font-size:9px;font-weight:600;font-family:var(--bc-font)}.broadcast-preview-meta-item .meta-value{color:var(--bc-text);font-size:12px;font-weight:500;font-family:var(--bc-font)}.broadcast-preview-meta-item .meta-id{font-family:var(--bc-font);color:var(--bc-green)}.broadcast-preview-body-wrapper{background:var(--bc-card);flex:1;padding:20px 22px 24px;overflow-y:auto}.broadcast-preview-body-wrapper::-webkit-scrollbar{width:4px}.broadcast-preview-body-wrapper::-webkit-scrollbar-track{background:var(--bc-line);border-radius:2px}.broadcast-preview-body-wrapper::-webkit-scrollbar-thumb{background:var(--bc-gold);border-radius:2px}.broadcast-preview-subject{color:var(--bc-text);font-size:18px;font-weight:700;font-family:var(--bc-font);border-bottom:2px solid var(--bc-line);margin-bottom:10px;padding-bottom:10px;line-height:1.3}.broadcast-preview-divider{background:var(--bc-gold);opacity:.3;height:2px;margin-bottom:16px}.broadcast-preview-body{color:var(--bc-text);font-size:13px;line-height:1.7;font-family:var(--bc-font)}.broadcast-preview-body .preview-placeholder{color:var(--bc-muted);text-align:center;margin:0;padding:32px 0;font-style:italic}.broadcast-preview-body p{color:var(--bc-text);margin-bottom:12px;font-size:13px;line-height:1.7}.broadcast-preview-body p:last-child{margin-bottom:0}.broadcast-preview-body h1,.broadcast-preview-body h2,.broadcast-preview-body h3,.broadcast-preview-body h4{font-family:var(--bc-font);color:var(--bc-text);text-transform:uppercase;letter-spacing:.3px;margin:16px 0 10px;font-weight:600}.broadcast-preview-body h1{font-size:20px}.broadcast-preview-body h2{font-size:17px}.broadcast-preview-body h3{font-size:15px}.broadcast-preview-body h4{font-size:13px}.broadcast-preview-body ul,.broadcast-preview-body ol{margin-bottom:12px;padding-left:20px}.broadcast-preview-body li{margin-bottom:4px;font-size:13px;line-height:1.6}.broadcast-preview-body blockquote{border-left:3px solid var(--bc-gold);background:var(--bc-gold-soft);color:var(--bc-muted);border-radius:0 4px 4px 0;margin:12px 0;padding:10px 16px;font-style:italic}.broadcast-preview-body code{font-family:var(--bc-font);background:var(--bc-gold-soft);color:var(--bc-green);border:1px solid #c9a44c26;border-radius:2px;padding:1px 6px;font-size:.9em}.broadcast-preview-body pre{background:var(--bc-gold-soft);border:1px solid var(--bc-line);font-size:12px;font-family:var(--bc-font);border-radius:4px;margin:12px 0;padding:12px 14px;overflow-x:auto}.broadcast-preview-body pre code{color:var(--bc-text);background:0 0;border:none;padding:0}.broadcast-preview-body a{color:var(--bc-green);border-bottom:1px dotted var(--bc-gold);text-decoration:none;transition:all .15s}.broadcast-preview-body a:hover{color:var(--bc-green-hover);border-bottom-color:var(--bc-green)}.broadcast-preview-body hr{border:0;border-top:1px solid var(--bc-line);margin:16px 0}.broadcast-preview-body img{border-radius:4px;max-width:100%;height:auto;margin:12px 0}.broadcast-preview-body table{border-collapse:collapse;width:100%;margin:12px 0}.broadcast-preview-body th,.broadcast-preview-body td{border:1px solid var(--bc-line);text-align:left;padding:6px 10px;font-size:12px}.broadcast-preview-body th{background:var(--bc-gold-soft);font-weight:600}.broadcast-preview-status{text-transform:uppercase;letter-spacing:.3px;font-size:9px;font-weight:600;font-family:var(--bc-font);border-radius:4px;padding:2px 12px;display:inline-flex}.broadcast-preview-status.draft{background:var(--bc-gold-soft);color:var(--bc-gold);border:1px solid #c9a44c26}.broadcast-preview-status.sent{color:#065f46;background:#d1fae5;border:1px solid #10b98133}.broadcast-preview-status.failed{color:#991b1b;background:#fee2e2;border:1px solid #ef444433}.broadcast-preview-status.partially_failed{color:#92400e;background:#fef3c7;border:1px solid #d9770633}.broadcast-preview-footer{background:var(--bc-gold-soft);border-top:2px solid var(--bc-line);flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 22px;display:flex}.broadcast-preview-actions{gap:8px;display:flex}.preview-action-btn{font-size:10px;font-weight:500;font-family:var(--bc-font);text-transform:uppercase;letter-spacing:.3px;border:1px solid var(--bc-line);cursor:pointer;border-radius:4px;padding:6px 16px;transition:all .15s}.preview-action-btn.btn-primary{background:var(--bc-green);border-color:var(--bc-green);color:#fff}.preview-action-btn.btn-primary:hover{background:var(--bc-green-hover);border-color:var(--bc-green-hover);transform:translateY(-1px)}.preview-action-btn.btn-secondary{background:var(--bc-card);border-color:var(--bc-line);color:var(--bc-text)}.preview-action-btn.btn-secondary:hover{background:var(--bc-gold-soft);border-color:var(--bc-gold);transform:translateY(-1px)}.preview-action-btn.btn-success{color:#fff;background:#059669;border-color:#059669}.preview-action-btn.btn-success:hover{background:#047857;border-color:#047857;transform:translateY(-1px)}.broadcast-preview-timestamp{color:var(--bc-muted);font-size:10px;font-family:var(--bc-font);align-items:center;gap:4px;display:flex}@media (width<=1100px){.broadcasts-layout,.broadcast-row{grid-template-columns:1fr}.broadcast-row-actions{min-width:unset;flex-flow:wrap}.broadcast-row-actions .btn-secondary,.broadcast-row-actions .btn-primary,.broadcast-row-actions .btn-danger{flex:1;min-width:80px}}@media (width<=900px){.broadcast-preview-meta-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.broadcasts-module{gap:12px}.broadcast-card{padding:14px 16px}.broadcast-form textarea{min-height:160px}.broadcast-row{padding:10px 12px}.broadcast-row-top{flex-direction:column;align-items:flex-start;gap:4px}.broadcast-preview-container{width:calc(100vw - 24px);max-height:calc(100vh - 30px)}.broadcast-preview-header{flex-wrap:wrap;gap:8px;padding:14px 18px}.broadcast-preview-title{white-space:normal;font-size:13px}.broadcast-preview-meta-grid{gap:8px;padding:10px 18px}.broadcast-preview-body-wrapper{padding:16px 18px}.broadcast-preview-subject{font-size:16px}.broadcast-preview-footer{flex-direction:column;gap:10px;padding:12px 18px}.broadcast-preview-actions{width:100%}.preview-action-btn{text-align:center;flex:1;justify-content:center}}@media (width<=640px){.broadcast-actions{flex-direction:column}.broadcast-actions .btn-primary,.broadcast-actions .btn-secondary{justify-content:center;width:100%}.broadcast-card-header h3{font-size:13px}.broadcast-filters{gap:4px}.filter-chip{padding:3px 10px;font-size:9px}.broadcast-row-actions .btn-secondary,.broadcast-row-actions .btn-primary,.broadcast-row-actions .btn-danger{min-width:60px;padding:4px 10px;font-size:9px}.broadcast-preview-modal{padding:10px}.broadcast-preview-container{width:calc(100vw - 20px);max-height:calc(100vh - 20px)}.broadcast-preview-header{padding:10px 14px}.broadcast-preview-badge{padding:2px 10px;font-size:8px}.broadcast-preview-title{font-size:12px}.broadcast-preview-meta-grid{grid-template-columns:1fr 1fr;gap:6px;padding:8px 14px}.broadcast-preview-meta-item .meta-value{font-size:11px}.broadcast-preview-body-wrapper{padding:14px 16px}.broadcast-preview-subject{font-size:14px}.broadcast-preview-body,.broadcast-preview-body p{font-size:12px}.broadcast-preview-footer{padding:10px 14px}.broadcast-preview-actions{flex-direction:column}.preview-action-btn{justify-content:center;width:100%;padding:8px}}@media (width<=400px){.broadcast-card{padding:10px 12px}.broadcast-form label{font-size:9px}.broadcast-form input,.broadcast-form textarea,.broadcast-form select{padding:6px 10px;font-size:11px}.broadcast-form textarea{min-height:120px}.broadcast-row{padding:8px 10px}.broadcast-row-top strong{font-size:12px}.broadcast-row-main p{font-size:11px}.broadcast-preview-meta-grid{grid-template-columns:1fr}}.btn-primary:focus-visible,.btn-secondary:focus-visible,.btn-danger:focus-visible,.btn-success:focus-visible,.filter-chip:focus-visible,.broadcast-form input:focus-visible,.broadcast-form textarea:focus-visible,.broadcast-form select:focus-visible,.broadcast-preview-close:focus-visible,.preview-action-btn:focus-visible,.broadcast-search input:focus-visible{outline:2px solid var(--bc-gold);outline-offset:2px}@keyframes bcSlideIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.broadcast-row,.broadcast-card{animation:.2s bcSlideIn}.broadcast-row:nth-child(2){animation-delay:50ms}.broadcast-row:nth-child(3){animation-delay:.1s}@media print{.broadcast-card{break-inside:avoid;page-break-inside:avoid;box-shadow:none!important;border:1px solid #000!important}.broadcast-row{break-inside:avoid;page-break-inside:avoid;border:1px solid #000!important}.broadcast-actions,.broadcast-row-actions,.broadcast-filters,.broadcast-search,.broadcast-preview-close,.broadcast-preview-actions{display:none!important}.broadcast-preview-modal{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:#fff!important;padding:0!important;position:static!important}.broadcast-preview-container{box-shadow:none!important;border:1px solid #000!important;border-radius:0!important;max-height:none!important;overflow:visible!important}.broadcast-preview-header,.broadcast-preview-footer{display:none!important}.broadcast-preview-meta-grid,.broadcast-preview-body{border:1px solid #000!important}}:root{--users-bg:#f5f3ef;--users-card:#fff;--users-line:#e2ddd4;--users-line-strong:#d5cfc4;--users-text:#1a1a1a;--users-muted:#8a8578;--users-faint:#c4beb3;--users-green:#1f6b45;--users-green-hover:#174f34;--users-green-soft:#1f6b450f;--users-gold:#c9a44c;--users-gold-soft:#c9a44c0f;--users-shadow:0 4px 12px #0000000f;--users-font:"SF Mono", "JetBrains Mono", monospace}.users-module{gap:16px;display:grid}.users-card{background:var(--users-card);border:1px solid var(--users-line);box-shadow:var(--users-shadow);border-radius:4px;padding:16px 18px;transition:all .15s}.users-card:hover{border-color:var(--users-gold-border)}.users-toolbar{border-bottom:2px solid var(--users-line);justify-content:space-between;gap:12px;margin-bottom:14px;padding-bottom:14px;display:flex}.users-search-wrap{width:min(480px,100%);position:relative}.users-search-wrap i{color:var(--users-muted);pointer-events:none;font-size:13px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.users-search-wrap input{border:1px solid var(--users-line);background:var(--users-card);width:100%;color:var(--users-text);font-size:12px;font-family:var(--users-font);border-radius:4px;outline:none;padding:8px 14px 8px 36px;transition:all .15s}.users-search-wrap input::placeholder{color:var(--users-faint)}.users-search-wrap input:focus{border-color:var(--users-gold);box-shadow:0 0 0 3px #c9a44c1f}.users-list{gap:8px;display:grid}.user-row{border:1px solid var(--users-line);background:var(--users-card);border-radius:4px;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:12px 14px;transition:all .15s;display:grid}.user-row:hover{border-color:var(--users-gold-border);box-shadow:var(--users-shadow)}.user-row-main{gap:12px;min-width:0;display:flex}.user-avatar-mini{background:var(--users-green);color:#fff;width:40px;height:40px;font-size:13px;font-weight:700;font-family:var(--users-font);border:1px solid #1f6b4533;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.user-row-info{min-width:0}.user-row-top{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:2px;display:flex}.user-row-top strong{color:var(--users-text);font-size:13px;font-weight:600;font-family:var(--users-font)}.user-row-info p{color:var(--users-muted);word-break:break-word;font-size:12px;font-family:var(--users-font);margin:0 0 6px}.user-role-pills{flex-wrap:wrap;gap:4px;margin-bottom:6px;display:flex}.user-role-pill{background:var(--users-green-soft);color:var(--users-green);text-transform:uppercase;letter-spacing:.3px;font-size:9px;font-weight:600;font-family:var(--users-font);border:1px solid #1f6b4526;border-radius:4px;align-items:center;padding:2px 10px;display:inline-flex}.user-role-pill.muted{border-color:var(--users-line);background:var(--users-gold-soft);color:var(--users-muted)}.user-meta{color:var(--users-muted);font-size:10px;font-family:var(--users-font);flex-wrap:wrap;gap:8px;display:flex}.user-row-actions{align-items:center;gap:6px;display:flex}.users-btn{border:1px solid var(--users-line);background:var(--users-card);color:var(--users-text);font-family:var(--users-font);text-transform:uppercase;letter-spacing:.3px;cursor:pointer;border-radius:4px;align-items:center;gap:6px;padding:6px 16px;font-size:10px;font-weight:500;transition:all .15s;display:inline-flex}.users-btn:hover{background:var(--users-gold-soft);border-color:var(--users-gold-border);transform:translateY(-1px)}.users-btn:active{transform:translateY(0)}.users-btn-primary{background:var(--users-green);border-color:var(--users-green);color:#fff}.users-btn-primary:hover{background:var(--users-green-hover);border-color:var(--users-green-hover)}.users-btn-secondary{border-color:var(--users-line);color:var(--users-muted);background:0 0}.users-btn-secondary:hover{background:var(--users-gold-soft);border-color:var(--users-gold-border);color:var(--users-text)}.users-btn-danger{color:#fff;background:#b91c1c;border-color:#b91c1c}.users-btn-danger:hover{background:#7f1d1d;border-color:#7f1d1d}.users-btn.small{padding:4px 12px;font-size:9px}@keyframes drawerFadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInDrawer{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@media (width<=768px){.users-filter-select{min-width:120px;padding:6px 28px 6px 10px;font-size:11px}.user-details-panel{width:min(400px,100vw)}.user-avatar-large{width:56px;height:56px;font-size:18px}.user-details-profile h2{font-size:15px}.user-details-grid>div{padding:8px 12px}.user-details-grid strong{font-size:12px}}@media (width<=480px){.users-filter-select{min-width:100px;padding:5px 24px 5px 8px;font-size:10px}.user-details-panel{border-left:none;width:100vw}.user-details-head{padding:12px 16px}.user-details-head h3{font-size:13px}.user-details-body{padding:16px}.user-avatar-large{border-radius:4px;width:48px;height:48px;font-size:16px}.user-details-profile h2{font-size:14px}.user-details-grid{gap:6px}.user-details-grid>div{padding:6px 10px}.user-details-grid strong{font-size:11px}.user-details-close{width:28px;height:28px;font-size:14px}}.users-stats-grid{grid-template-columns:repeat(4,minmax(120px,1fr));gap:10px;margin-bottom:16px;display:grid}.users-stats-grid>div{background:var(--users-card);border:1px solid var(--users-line);border-radius:4px;padding:12px 16px;transition:all .15s}.users-stats-grid>div:hover{border-color:var(--users-gold-border);box-shadow:var(--users-shadow)}.users-stats-grid span{color:var(--users-muted);text-transform:uppercase;letter-spacing:.5px;font-size:9px;font-weight:600;font-family:var(--users-font);margin-bottom:4px;display:block}.users-stats-grid strong{color:var(--users-green);font-size:22px;font-weight:700;font-family:var(--users-font)}.users-filter-select{border:1px solid var(--users-line);background:var(--users-card);color:var(--users-text);font-family:var(--users-font);appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%238a8578'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;border-radius:4px;outline:none;min-width:150px;padding:8px 32px 8px 12px;font-size:12px;transition:all .15s}.users-filter-select:hover{border-color:var(--users-gold-border)}.users-filter-select:focus{border-color:var(--users-gold);box-shadow:0 0 0 3px #c9a44c1f}.users-filter-select option{font-family:var(--users-font);padding:4px 8px}.user-details-drawer{z-index:9999;display:none;position:fixed;inset:0}.user-details-drawer.open{animation:.2s drawerFadeIn;display:block}.user-details-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#02061780;position:absolute;inset:0}.user-details-panel{background:var(--users-card);border-left:1px solid var(--users-line);width:min(440px,100vw);height:100%;animation:.25s slideInDrawer;position:absolute;top:0;right:0;overflow:auto;box-shadow:-8px 0 32px #0000001a}.user-details-panel::-webkit-scrollbar{width:4px}.user-details-panel::-webkit-scrollbar-track{background:var(--users-line);border-radius:2px}.user-details-panel::-webkit-scrollbar-thumb{background:var(--users-gold);border-radius:2px}.user-details-head{border-bottom:2px solid var(--users-line);background:var(--users-gold-soft);justify-content:space-between;align-items:center;gap:14px;padding:16px 20px;display:flex}.user-details-head h3{color:var(--users-text);font-size:14px;font-weight:600;font-family:var(--users-font);text-transform:uppercase;letter-spacing:.3px;margin:0}.user-details-close{border:1px solid var(--users-line);background:var(--users-card);width:32px;height:32px;color:var(--users-muted);cursor:pointer;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;transition:all .15s;display:inline-flex}.user-details-close:hover{background:var(--users-gold-soft);border-color:var(--users-gold-border);color:var(--users-text);transform:rotate(90deg)}.user-details-body{padding:20px}.user-details-profile{text-align:center;border-bottom:1px solid var(--users-line);padding-bottom:18px}.user-avatar-large{background:var(--users-green);color:#fff;width:64px;height:64px;font-size:20px;font-weight:700;font-family:var(--users-font);border:1px solid #1f6b4533;border-radius:4px;justify-content:center;align-items:center;margin-bottom:10px;display:inline-flex}.user-details-profile h2{color:var(--users-text);font-size:16px;font-weight:600;font-family:var(--users-font);text-transform:uppercase;letter-spacing:.3px;margin:0}.user-details-profile p{color:var(--users-muted);font-size:12px;font-family:var(--users-font);margin:4px 0 0}.user-details-status-row{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:10px;display:flex}.user-details-grid{gap:8px;margin-top:16px;display:grid}.user-details-grid>div{border:1px solid var(--users-line);background:var(--users-card);border-radius:4px;padding:10px 14px;transition:all .15s}.user-details-grid>div:hover{border-color:var(--users-gold-border);background:var(--users-gold-soft)}.user-details-grid span{color:var(--users-muted);text-transform:uppercase;letter-spacing:.5px;font-size:9px;font-weight:600;font-family:var(--users-font);margin-bottom:3px;display:block}.user-details-grid strong{color:var(--users-text);word-break:break-word;font-size:13px;font-weight:500;font-family:var(--users-font)}.user-details-section{margin-top:18px}.user-details-section h4{color:var(--users-muted);font-size:11px;font-weight:600;font-family:var(--users-font);text-transform:uppercase;letter-spacing:.5px;margin:0 0 10px}.user-details-actions{margin-top:20px}.user-details-actions .btn-primary,.user-details-actions .users-btn-primary{justify-content:center;width:100%}@media (width<=900px){.users-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.users-toolbar{flex-direction:column;align-items:stretch}.users-filter-select{width:100%;min-width:unset}}@media (width<=768px){.users-stats-grid{gap:8px}.users-stats-grid>div{padding:10px 14px}.users-stats-grid strong{font-size:18px}.users-filter-select{padding:6px 28px 6px 10px;font-size:11px}.user-details-panel{width:min(400px,100vw)}.user-avatar-large{width:56px;height:56px;font-size:18px}.user-details-profile h2{font-size:15px}.user-details-grid>div{padding:8px 12px}.user-details-grid strong{font-size:12px}}@media (width<=480px){.users-stats-grid{grid-template-columns:1fr 1fr;gap:6px}.users-stats-grid>div{padding:8px 12px}.users-stats-grid strong{font-size:16px}.users-stats-grid span{font-size:8px}.users-filter-select{min-width:100px;padding:5px 24px 5px 8px;font-size:10px}.user-details-panel{border-left:none;width:100vw}.user-details-head{padding:12px 16px}.user-details-head h3{font-size:13px}.user-details-body{padding:16px}.user-avatar-large{width:48px;height:48px;font-size:16px}.user-details-profile h2{font-size:14px}.user-details-grid{gap:6px}.user-details-grid>div{padding:6px 10px}.user-details-grid strong{font-size:11px}.user-details-close{width:28px;height:28px;font-size:14px}}.users-stats-grid>div{animation:.2s statSlideIn}.users-stats-grid>div:nth-child(2){animation-delay:50ms}.users-stats-grid>div:nth-child(3){animation-delay:.1s}.users-stats-grid>div:nth-child(4){animation-delay:.15s}.users-filter-select:focus-visible,.user-details-close:focus-visible{outline:2px solid var(--users-gold);outline-offset:2px}.staff-badge{text-transform:uppercase;letter-spacing:.3px;font-size:9px;font-weight:600;font-family:var(--users-font);border:1px solid #0000;border-radius:4px;padding:3px 10px;display:inline-flex}.staff-badge.success{background:var(--users-green-soft);color:var(--users-green);border-color:#1f6b4526}.staff-badge.warn{background:var(--users-gold-soft);color:#8a6500;border-color:#c9a44c33}.staff-badge.danger{color:#b91c1c;background:#b91c1c14;border-color:#b91c1c26}.user-role-options{gap:10px;display:grid}.role-options-list{gap:8px;display:grid}.role-option{border:1px solid var(--users-line);background:var(--users-card);cursor:pointer;border-radius:4px;align-items:center;gap:10px;padding:10px 14px;transition:all .15s;display:flex}.role-option:hover{border-color:var(--users-gold-border);background:var(--users-gold-soft)}.role-option input[type=radio]{width:16px;height:16px;accent-color:var(--users-green);cursor:pointer;flex-shrink:0}.role-option strong{color:var(--users-text);font-size:13px;font-weight:600;font-family:var(--users-font);display:block}.role-option span{color:var(--users-muted);font-size:11px;font-family:var(--users-font);margin-top:2px;display:block}.modal-subtitle{color:var(--users-muted);font-size:12px;font-family:var(--users-font);margin:4px 0 0}.user-details-actions{border-top:2px solid var(--uda-line);flex-wrap:wrap;gap:10px;margin-top:24px;padding-top:16px;display:flex}.user-details-actions .btn-primary,.user-details-actions .btn-secondary,.user-details-actions .btn-danger{min-width:160px;min-height:38px;font-size:11px;font-weight:500;font-family:var(--uda-font);text-transform:uppercase;letter-spacing:.3px;cursor:pointer;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;gap:8px;padding:0 20px;transition:all .15s;display:inline-flex}.user-details-actions .btn-primary i,.user-details-actions .btn-secondary i,.user-details-actions .btn-danger i{font-size:14px}.user-details-actions .btn-primary{background:var(--uda-green);border-color:var(--uda-green);color:#fff}.user-details-actions .btn-primary:hover{background:var(--uda-green-hover);border-color:var(--uda-green-hover);transform:translateY(-1px);box-shadow:0 4px 12px #1f6b4533}.user-details-actions .btn-primary:active{transform:translateY(0)}.user-details-actions .btn-secondary{background:var(--uda-card);border-color:var(--uda-line);color:var(--uda-text)}.user-details-actions .btn-secondary:hover{background:var(--uda-gold-soft);border-color:var(--uda-gold-border);transform:translateY(-1px)}.user-details-actions .btn-danger{color:#fff;background:#b91c1c;border-color:#b91c1c}.user-details-actions .btn-danger:hover{background:#7f1d1d;border-color:#7f1d1d;transform:translateY(-1px);box-shadow:0 4px 12px #b91c1c33}#drawerResetPasswordBtn{background:var(--uda-card);border:1px solid var(--uda-line);color:var(--uda-muted);font-weight:600}#drawerResetPasswordBtn:hover{background:var(--uda-gold-soft);border-color:var(--uda-gold-border);color:var(--uda-text);transform:translateY(-1px)}#drawerSuspendUserBtn:hover{background:#7f1d1d;border-color:#7f1d1d;transform:translateY(-1px);box-shadow:0 4px 12px #b91c1c33}#drawerUnsuspendUserBtn{background:var(--uda-green);border:1px solid var(--uda-green);color:#fff}#drawerUnsuspendUserBtn:hover{background:var(--uda-green-hover);border-color:var(--uda-green-hover);transform:translateY(-1px);box-shadow:0 4px 12px #1f6b4533}#drawerManageRolesBtn{background:var(--uda-green);border:1px solid var(--uda-green);color:#fff}#drawerManageRolesBtn:hover{background:var(--uda-green-hover);border-color:var(--uda-green-hover);transform:translateY(-1px);box-shadow:0 4px 12px #1f6b4533}.user-details-actions button i{flex-shrink:0;font-size:14px}.user-details-actions .btn-small{min-width:120px;min-height:32px;padding:0 14px;font-size:10px}.user-details-actions .btn-large{min-width:200px;min-height:44px;padding:0 24px;font-size:12px}.user-details-actions .btn-icon-only{border-radius:4px;min-width:38px;min-height:38px;padding:0}@media (width<=768px){.user-details-actions{flex-direction:column;gap:8px;margin-top:20px;padding-top:14px}.user-details-actions .btn-primary,.user-details-actions .btn-secondary,.user-details-actions .btn-danger,#drawerResetPasswordBtn,#drawerSuspendUserBtn,#drawerUnsuspendUserBtn,#drawerManageRolesBtn{width:100%;min-width:unset;justify-content:center}.user-details-actions .btn-small,.user-details-actions .btn-large{min-width:unset;width:100%}}@media (width<=480px){.user-details-actions{gap:6px;margin-top:16px;padding-top:12px}.user-details-actions .btn-primary,.user-details-actions .btn-secondary,.user-details-actions .btn-danger,#drawerResetPasswordBtn,#drawerSuspendUserBtn,#drawerUnsuspendUserBtn,#drawerManageRolesBtn{min-height:34px;padding:0 16px;font-size:10px}.user-details-actions button i{font-size:13px}}.user-details-actions .btn-primary:focus-visible,.user-details-actions .btn-secondary:focus-visible,.user-details-actions .btn-danger:focus-visible,#drawerResetPasswordBtn:focus-visible,#drawerSuspendUserBtn:focus-visible,#drawerUnsuspendUserBtn:focus-visible,#drawerManageRolesBtn:focus-visible{outline:2px solid var(--uda-gold);outline-offset:2px}.user-details-actions .btn-primary:disabled,.user-details-actions .btn-secondary:disabled,.user-details-actions .btn-danger:disabled,#drawerResetPasswordBtn:disabled,#drawerSuspendUserBtn:disabled,#drawerUnsuspendUserBtn:disabled,#drawerManageRolesBtn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none;transform:none!important}@media print{.user-details-actions{display:none!important}}@media (width<=900px){.users-toolbar{flex-direction:column;align-items:stretch}.users-search-wrap{width:100%}}@media (width<=768px){.users-card{padding:14px 16px}.user-row{grid-template-columns:1fr;gap:10px}.user-row-actions{flex-wrap:wrap;justify-content:flex-start}.user-row-main{flex-wrap:wrap}.user-avatar-mini{width:36px;height:36px;font-size:11px}.user-row-top strong{font-size:12px}.user-row-info p{font-size:11px}}@media (width<=480px){.users-card{padding:12px}.users-search-wrap input{padding:6px 12px 6px 34px;font-size:11px}.users-search-wrap i{font-size:12px;left:10px}.user-row{padding:10px 12px}.user-row-top{flex-direction:column;align-items:flex-start;gap:4px}.user-row-actions{flex-direction:column;align-items:stretch;width:100%}.user-row-actions .users-btn{justify-content:center;width:100%}.role-option{padding:8px 12px}.role-option strong{font-size:12px}.role-option span{font-size:10px}}.users-btn:focus-visible,.users-search-wrap input:focus-visible,.role-option input:focus-visible{outline:2px solid var(--users-gold);outline-offset:2px}@keyframes usersSlideIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.user-row{animation:.2s usersSlideIn}.user-row:nth-child(2){animation-delay:50ms}.user-row:nth-child(3){animation-delay:.1s}.user-row:nth-child(4){animation-delay:.15s}@media print{.users-card{break-inside:avoid;page-break-inside:avoid;box-shadow:none!important;border:1px solid #000!important}.user-row{break-inside:avoid;page-break-inside:avoid;border:1px solid #000!important}.users-toolbar,.user-row-actions{display:none!important}}#drawerManageRolesBtn{grid-column:1/-1;width:100%}.user-details-actions button{width:100%}.user-details-actions{border-top:2px solid var(--uda-line,#e2ddd4);grid-template-columns:1fr 1fr;gap:10px;margin-top:24px;padding-top:16px;display:grid!important}.user-details-actions button{justify-content:center;align-items:center;gap:8px;min-height:42px;width:100%!important;min-width:0!important;display:inline-flex!important}#drawerManageRolesBtn{grid-column:1/-1;background:var(--uda-green,#1f6b45)!important;border:1px solid var(--uda-green,#1f6b45)!important;color:#fff!important;visibility:visible!important;opacity:1!important;display:inline-flex!important}@media (width<=640px){.user-details-actions{grid-template-columns:1fr}#drawerManageRolesBtn,#drawerResetPasswordBtn,#drawerSuspendUserBtn,#drawerUnsuspendUserBtn{grid-column:1/-1}}#drawerManageRolesBtn,#drawerResetPasswordBtn,#drawerSuspendUserBtn,#drawerUnsuspendUserBtn{visibility:visible!important;opacity:1!important;pointer-events:auto!important;white-space:nowrap!important;justify-content:center!important;align-items:center!important;width:100%!important;min-width:0!important;min-height:44px!important;padding:0 18px!important;display:flex!important;position:relative!important;overflow:visible!important}.user-details-actions{grid-template-columns:1fr 1fr!important;gap:12px!important;display:grid!important}#drawerManageRolesBtn{grid-column:1/-1!important}#drawerResetPasswordBtn{grid-column:1!important}#drawerSuspendUserBtn,#drawerUnsuspendUserBtn{grid-column:2!important}#drawerUnsuspendUserBtn{color:#fff!important;background:#1f6b45!important;border:1px solid #1f6b45!important}#drawerUnsuspendUserBtn:hover{background:#185437!important}#drawerSuspendUserBtn{color:#fff!important;background:#b91c1c!important;border:1px solid #b91c1c!important}#drawerResetPasswordBtn{color:#1d2742!important;background:#fff!important;border:1px solid #d6d1c7!important}.user-details-drawer{pointer-events:none;visibility:hidden;display:block}.user-details-drawer.open{pointer-events:auto;visibility:visible;display:block}.user-details-backdrop,.account-deletion-backdrop{opacity:0;transition:opacity .25s}.user-details-drawer.open .user-details-backdrop,.account-deletion-drawer.open .account-deletion-backdrop{opacity:1}.user-details-panel,.account-deletion-panel{border:1px solid var(--users-line);opacity:0;background:#fbfcfb;border-radius:18px;width:min(1180px,100vw - 48px);height:auto;transition:transform .28s,opacity .2s;animation:none;top:12px;bottom:12px;right:12px;overflow-y:auto;transform:translate(calc(100% + 24px));box-shadow:-12px 0 48px #042f2033}.user-details-drawer.open .user-details-panel,.account-deletion-drawer.open .account-deletion-panel{opacity:1;transform:translate(0)}.user-details-head,.account-deletion-panel-head{z-index:5;border-bottom:1px solid var(--users-line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fbfcfbf0;min-height:58px;padding:12px 32px;position:sticky;top:0}.user-details-back-button,.account-deletion-back-button{color:#194d3a;font:700 12px var(--users-font);cursor:pointer;background:0 0;border:0}.user-details-back-button i,.account-deletion-back-button i{margin-right:8px}.user-details-close,.account-deletion-panel-close{border:1px solid var(--users-line);width:34px;height:34px;color:var(--users-muted);cursor:pointer;background:#fff;border-radius:8px}.user-details-close:hover,.account-deletion-panel-close:hover{color:var(--users-text);border-color:var(--users-gold);background:var(--users-gold-soft);transform:none}.user-details-body,.account-deletion-panel-body{gap:20px;padding:30px 32px 32px;display:grid}.staff-detail-titlebar{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.staff-detail-titlebar h1{color:#0d3f2f;font:750 28px/1.15 var(--users-font);letter-spacing:-.04em;margin:3px 0 6px}.staff-detail-titlebar>div>p:last-child{color:var(--users-muted);margin:0;font-size:13px}.staff-detail-titlebar>.btn-danger{white-space:nowrap;min-height:42px}.staff-detail-hero{color:#fff;background:radial-gradient(circle at 75% 10%,#c9a44c21,#0000 28%),linear-gradient(120deg,#073f31,#07533e);border-radius:12px;align-items:center;gap:24px;min-height:160px;padding:28px 32px;display:flex;box-shadow:0 10px 26px #043f2d26}.staff-detail-hero .user-avatar-large,.staff-detail-hero .account-deletion-avatar{color:#fff;width:92px;height:92px;font:700 31px var(--users-font);background:#ffffff0f;border:4px solid #ffffffeb;border-radius:50%;flex:none;place-items:center;margin:0;display:grid}.staff-detail-hero-copy{min-width:0}.staff-detail-hero-copy h2{color:#fff;font:750 24px var(--users-font);text-transform:none;letter-spacing:-.025em;margin:0 0 6px}.staff-detail-hero-copy>p{color:#ffffffc7;margin:0 0 14px;font-size:14px}.staff-detail-hero-role{background:#ffffff12;border:1px solid #ffffff14;border-radius:10px;align-items:center;gap:13px;min-width:245px;margin-left:auto;padding:16px 18px;display:flex}.staff-detail-hero-role>i{color:#e7bd50;background:#0000001f;border-radius:9px;place-items:center;width:42px;height:42px;font-size:19px;display:grid}.staff-detail-hero-role strong,.staff-detail-hero-role span{display:block}.staff-detail-hero-role strong{font-size:12px}.staff-detail-hero-role span{color:#ffffffb8;margin-top:4px;font-size:11px}.staff-detail-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.staff-detail-card,.account-deletion-detail-section,.staff-detail-security{border:1px solid var(--users-line);background:#fff;border-radius:10px;box-shadow:0 4px 14px #1630270a}.staff-detail-card{min-width:0;padding:22px}.staff-detail-card h3,.account-deletion-detail-section h3{color:#173f32;font:700 14px var(--users-font);margin:0 0 20px}.staff-detail-card h3 i,.account-deletion-detail-section h3>i{width:24px;color:var(--users-green)}.staff-detail-card dl{margin:0}.staff-detail-card dl>div{border-bottom:1px solid #ece9e3;grid-template-columns:minmax(90px,.8fr) minmax(0,1.2fr);align-items:center;gap:14px;min-height:45px;display:grid}.staff-detail-card dl>div:last-child{border-bottom:0}.staff-detail-card dt{color:var(--users-muted);font-size:11px}.staff-detail-card dd{color:#243a32;text-align:right;overflow-wrap:anywhere;justify-content:flex-end;align-items:center;gap:7px;min-width:0;margin:0;font-size:11px;font-weight:650;display:flex}.staff-detail-card dd.is-success,.staff-detail-card dd.is-warning,.staff-detail-card dd.is-danger{border-radius:6px;justify-self:end;width:fit-content;padding:4px 8px}.staff-detail-card dd.is-success{color:#167447;background:#eaf7ef}.staff-detail-card dd.is-warning{color:#946713;background:#fff7df}.staff-detail-card dd.is-danger{color:#a82b2b;background:#fff0f0}.staff-copy-value{color:var(--users-muted);cursor:pointer;background:0 0;border:0;padding:2px}.staff-detail-access-level{color:#174c38;background:var(--users-green-soft);border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:18px;padding:14px;display:flex}.staff-detail-access-level span,.staff-detail-label{color:var(--users-muted);text-transform:uppercase;letter-spacing:.05em;font-size:10px}.staff-detail-access-level strong{font-size:22px}.staff-detail-card-action{width:100%;min-height:38px;margin-top:18px}.staff-detail-security{align-items:center;gap:16px;padding:18px 22px;display:flex}.staff-detail-security-icon{width:42px;height:42px;color:var(--users-green);background:var(--users-green-soft);border-radius:50%;flex:none;place-items:center;font-size:18px;display:grid}.staff-detail-security strong{color:#173f32;font-size:13px}.staff-detail-security p{color:var(--users-muted);margin:4px 0 0;font-size:11px}.staff-detail-security>.staff-badge{margin-left:auto}.staff-detail-security.danger .staff-detail-security-icon{color:#b91c1c;background:#b91c1c12}.staff-detail-titlebar .user-details-actions{border:0;flex-wrap:wrap;justify-content:flex-end;margin:0;padding:0;grid-template-columns:none!important;display:flex!important}.staff-detail-titlebar .user-details-actions button{width:auto!important;min-height:42px!important;padding:0 14px!important}.account-deletion-reason-card>p{color:#56665f;min-height:80px;margin:0 0 20px;font-size:12px;line-height:1.7}.account-deletion-history{padding:22px}.account-deletion-history h3{align-items:center;display:flex}.account-deletion-history h3 span{color:var(--users-muted);margin-left:auto;font-size:10px;font-weight:500}@media (width<=980px){.staff-detail-titlebar{flex-direction:column;align-items:flex-start}.staff-detail-titlebar .user-details-actions{justify-content:flex-start}.staff-detail-hero{flex-wrap:wrap}.staff-detail-hero-role{width:100%;margin-left:0}.staff-detail-card-grid{grid-template-columns:1fr 1fr}.staff-detail-card-grid>:last-child{grid-column:1/-1}}@media (width<=680px){.user-details-panel,.account-deletion-panel{border:0;border-radius:0;width:100vw;height:100%;inset:0}.user-details-head,.account-deletion-panel-head,.user-details-body,.account-deletion-panel-body{padding-left:18px;padding-right:18px}.staff-detail-titlebar .user-details-actions,.staff-detail-titlebar .user-details-actions button,.staff-detail-titlebar>.btn-danger{width:100%!important}.staff-detail-hero{align-items:flex-start;padding:22px}.staff-detail-hero .user-avatar-large,.staff-detail-hero .account-deletion-avatar{width:68px;height:68px;font-size:23px}.staff-detail-card-grid{grid-template-columns:1fr}.staff-detail-card-grid>:last-child{grid-column:auto}.staff-detail-security{align-items:flex-start}.staff-detail-security>.staff-badge{display:none}}.staff-detail-hero{min-height:190px;padding:28px 34px;position:relative;overflow:hidden}.staff-detail-hero:after{content:"";opacity:.12;pointer-events:none;background-image:linear-gradient(30deg,#0000 46%,#d7ad43 47% 49%,#0000 50%),linear-gradient(150deg,#0000 46%,#d7ad43 47% 49%,#0000 50%);background-size:72px 42px;position:absolute;inset:0 18% 0 42%}.staff-detail-hero>*{z-index:1;position:relative}.staff-detail-hero-copy{flex:1}.staff-detail-hero-meta{color:#ffffffb8!important;margin-top:15px!important;font-size:11px!important}.staff-detail-hero-meta span{color:#e4b845;padding:0 7px}.staff-detail-hero-access{border-left:1px solid #ffffff2e;grid-template-columns:52px 1fr;align-items:center;gap:15px;min-width:290px;margin-left:auto;padding-left:34px;display:grid}.staff-detail-hero-access>i{color:#e4b845;border:1px solid #e4b84547;border-radius:10px;place-items:center;width:52px;height:52px;font-size:21px;display:grid}.staff-detail-hero-access span,.staff-detail-hero-access strong,.staff-detail-hero-access p{margin:0;display:block}.staff-detail-hero-access span{color:#e4b845;text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:800}.staff-detail-hero-access strong{color:#efbd3f;font:800 45px/1 var(--users-font);margin:1px 0}.staff-detail-hero-access p{color:#fff;font-size:12px;font-weight:700}.user-workspace-metrics{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.user-workspace-metric{border:1px solid var(--users-line);background:#fff;border-radius:9px;grid-template-columns:43px minmax(0,1fr);align-items:center;gap:12px;min-height:96px;padding:15px;display:grid;box-shadow:0 3px 12px #1630270a}.user-workspace-metric>i{width:43px;height:43px;color:var(--users-green);background:#f0f5f2;border-radius:8px;place-items:center;font-size:17px;display:grid}.user-workspace-metric span,.user-workspace-metric strong,.user-workspace-metric small{display:block}.user-workspace-metric span{color:#56675f;font-size:10px;font-weight:700}.user-workspace-metric strong{color:#143e30;font:800 18px/1.05 var(--users-font);text-overflow:ellipsis;white-space:nowrap;margin:3px 0;overflow:hidden}.user-workspace-metric small{color:var(--users-muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.user-workspace-metric.danger>i{color:#b91c1c;background:#fff0f0}.user-workspace-metric.danger strong{color:#a61f1f}.user-workspace-card-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.user-workspace-card-grid .staff-detail-card{min-height:330px;padding:19px}.user-workspace-card-grid .staff-detail-card h3{margin-bottom:14px;font-size:12px}.user-workspace-card-grid .staff-detail-card dl>div{grid-template-columns:minmax(80px,.85fr) minmax(0,1.15fr);gap:8px;min-height:42px}.user-workspace-card-grid .staff-detail-card dt,.user-workspace-card-grid .staff-detail-card dd{font-size:9.5px}.staff-detail-access-level{grid-template-columns:1fr auto;align-items:center;margin-bottom:14px;display:grid}.staff-detail-access-level small{color:#285a47;grid-column:1/-1;margin-top:4px;font-size:10px;font-weight:700}.staff-security-card dl dt{color:#334b41}.staff-security-card dl dt i{color:#258454;width:15px}.staff-security-card dl dd{color:#244438}.user-workspace-restrictions,.user-workspace-activity{border:1px solid var(--users-line);background:#fff;border-radius:9px;box-shadow:0 3px 12px #1630270a}.user-workspace-restrictions{padding:20px}.user-workspace-restrictions h3,.user-workspace-activity>h3{color:#173f32;font:700 12px var(--users-font);align-items:center;gap:9px;margin:0;display:flex}.user-workspace-restrictions h3>i{color:#b91c1c}.user-workspace-restrictions h3 span,.user-workspace-activity>h3 span{color:var(--users-muted);margin-left:auto;font-size:9px;font-weight:500}.user-workspace-restrictions>div{gap:8px;margin-top:14px;display:grid}.user-workspace-restrictions article{background:#fff8f8;border:1px solid #f0d6d6;border-radius:7px;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 13px;display:grid}.user-workspace-restrictions article>i{color:#b91c1c;background:#ffeaea;border-radius:7px;place-items:center;width:34px;height:34px;display:grid}.user-workspace-restrictions article strong{color:#702828;font-size:10px}.user-workspace-restrictions article p{color:#866363;margin:3px 0 0;font-size:9px}.user-workspace-restrictions article>span{color:#866363;font-size:9px}.user-workspace-activity{overflow:hidden}.user-workspace-activity>h3{border-bottom:1px solid var(--users-line);min-height:48px;padding:0 18px}.user-workspace-activity>h3>i{color:var(--users-green)}.user-workspace-activity-table{min-width:760px}.user-workspace-activity{overflow-x:auto}.activity-table-head,.user-workspace-activity-table article{grid-template-columns:1.1fr 1.5fr 1fr .9fr;align-items:center;gap:18px;min-height:42px;padding:0 18px;display:grid}.activity-table-head{color:#6d766f;text-transform:uppercase;letter-spacing:.04em;background:#f7f8f7;min-height:32px;font-size:8px;font-weight:800}.user-workspace-activity-table article{color:#475a51;border-top:1px solid #eceeea;font-size:9px}.user-workspace-activity-table article>span:first-child{color:#214b3b;font-weight:700}.user-workspace-activity-table article>span:first-child i{color:#27915a;margin-right:7px;font-size:8px}.activity-table-empty{color:var(--users-muted);text-align:center;padding:28px 18px;font-size:10px}@media (width<=1180px){.user-workspace-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.user-workspace-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.staff-detail-hero-access{border-top:1px solid #ffffff2e;border-left:0;width:100%;margin-left:0;padding:16px 0 0}.user-workspace-metrics{grid-template-columns:1fr 1fr}.user-workspace-card-grid{grid-template-columns:1fr}.user-workspace-card-grid .staff-detail-card{min-height:0}}@media (width<=480px){.user-workspace-metrics{grid-template-columns:1fr}.user-workspace-restrictions article{grid-template-columns:34px 1fr}.user-workspace-restrictions article>span{grid-column:2}}@media (prefers-reduced-motion:reduce){.user-details-panel,.account-deletion-panel,.user-details-backdrop,.account-deletion-backdrop{transition:none}}.user-details-backdrop,.account-deletion-backdrop{display:none}.user-details-panel,.account-deletion-panel{width:100vw;max-width:none;height:100dvh;box-shadow:none;background:#f8faf8;border:0;border-radius:0;position:fixed;inset:0;transform:translateY(12px)}.user-details-drawer.open .user-details-panel,.account-deletion-drawer.open .account-deletion-panel{transform:translateY(0)}.user-details-head,.account-deletion-panel-head{border-bottom:1px solid #e4e7e3;border-radius:0;width:100%;min-height:64px;padding:0 max(28px,50vw - 720px)}.user-details-body,.account-deletion-panel-body{gap:22px;width:min(1440px,100% - 56px);margin:0 auto;padding:32px 0 40px}.staff-detail-titlebar{grid-template-columns:minmax(320px,1fr) auto;align-items:center;gap:28px;display:grid}.staff-detail-titlebar .user-details-actions{justify-content:flex-end;align-items:center;flex-flow:row!important;gap:10px!important;width:auto!important;display:flex!important}.staff-detail-titlebar .user-details-actions #drawerManageRolesBtn,.staff-detail-titlebar .user-details-actions #drawerResetPasswordBtn,.staff-detail-titlebar .user-details-actions #drawerImpersonateUserBtn,.staff-detail-titlebar .user-details-actions #drawerSuspendUserBtn,.staff-detail-titlebar .user-details-actions #drawerUnsuspendUserBtn{white-space:nowrap!important;grid-column:auto!important;width:auto!important;min-width:0!important;min-height:40px!important;padding:0 14px!important;display:inline-flex!important}.staff-detail-titlebar .user-details-actions #drawerResetPasswordBtn{background:#fff!important}.staff-detail-titlebar .user-details-actions #drawerSuspendUserBtn{box-shadow:none}.staff-detail-hero{min-height:174px}.staff-detail-card-grid{align-items:stretch}.staff-detail-card{flex-direction:column;min-height:310px;display:flex}.staff-detail-card dl{flex:1}.staff-detail-roles-card .staff-detail-card-action{margin-top:auto}.account-deletion-reason-card .staff-detail-access-level{margin-top:auto;margin-bottom:0}@media (width<=1100px){.staff-detail-titlebar{grid-template-columns:1fr}.staff-detail-titlebar .user-details-actions{justify-content:flex-start;flex-wrap:wrap!important}}@media (width<=680px){.user-details-head,.account-deletion-panel-head{padding:0 16px}.user-details-body,.account-deletion-panel-body{width:calc(100% - 32px);padding-top:22px}.staff-detail-titlebar .user-details-actions{grid-template-columns:1fr 1fr!important;width:100%!important;display:grid!important}.staff-detail-titlebar .user-details-actions #drawerManageRolesBtn,.staff-detail-titlebar .user-details-actions #drawerResetPasswordBtn,.staff-detail-titlebar .user-details-actions #drawerImpersonateUserBtn,.staff-detail-titlebar .user-details-actions #drawerSuspendUserBtn,.staff-detail-titlebar .user-details-actions #drawerUnsuspendUserBtn{width:100%!important}.staff-detail-titlebar .user-details-actions>:last-child:nth-child(odd){grid-column:1/-1!important}.staff-detail-card{min-height:0}}:root{--audit-bg:#f5f3ef;--audit-card:#fff;--audit-line:#e2ddd4;--audit-line-strong:#d5cfc4;--audit-text:#1a1a1a;--audit-muted:#8a8578;--audit-faint:#c4beb3;--audit-green:#1f6b45;--audit-green-hover:#174f34;--audit-green-soft:#1f6b450f;--audit-gold:#c9a44c;--audit-gold-soft:#c9a44c0f;--audit-shadow:0 4px 12px #0000000f;--audit-font:"SF Mono", "JetBrains Mono", monospace}.audit-module{gap:16px;display:grid}.audit-card{background:var(--audit-card);border:1px solid var(--audit-line);box-shadow:var(--audit-shadow);border-radius:4px;padding:16px 18px;transition:all .15s}.audit-card:hover{border-color:var(--audit-gold-border)}.audit-toolbar{border-bottom:2px solid var(--audit-line);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;padding-bottom:14px;display:flex}.audit-search-wrap{flex:1;min-width:240px;position:relative}.audit-search-wrap i{color:var(--audit-muted);pointer-events:none;font-size:13px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.audit-search-wrap input{border:1px solid var(--audit-line);background:var(--audit-card);width:100%;color:var(--audit-text);font-family:var(--audit-font);border-radius:4px;outline:none;padding:8px 14px 8px 36px;font-size:12px;transition:all .15s}.audit-search-wrap input::placeholder{color:var(--audit-faint)}.audit-search-wrap input:focus{border-color:var(--audit-gold);box-shadow:0 0 0 3px #c9a44c1f}.audit-filter-select{border:1px solid var(--audit-line);background:var(--audit-card);color:var(--audit-text);font-family:var(--audit-font);appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%238a8578'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;border-radius:4px;outline:none;min-width:140px;padding:8px 32px 8px 12px;font-size:12px;transition:all .15s}.audit-filter-select:hover{border-color:var(--audit-gold-border)}.audit-filter-select:focus{border-color:var(--audit-gold);box-shadow:0 0 0 3px #c9a44c1f}.audit-filter-select option{font-family:var(--audit-font);padding:4px 8px}.audit-list{gap:8px;display:grid}.audit-row{border:1px solid var(--audit-line);background:var(--audit-card);border-radius:4px;grid-template-columns:40px 1fr;align-items:start;gap:12px;padding:12px 14px;transition:all .15s;display:grid}.audit-row:hover{border-color:var(--audit-gold-border);box-shadow:var(--audit-shadow)}.audit-icon{background:var(--audit-green-soft);width:40px;height:40px;color:var(--audit-green);border:1px solid #1f6b451a;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;display:flex}.audit-top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.audit-top strong{color:var(--audit-text);font-size:13px;font-weight:600;font-family:var(--audit-font)}.audit-top span{color:var(--audit-muted);font-size:11px;font-family:var(--audit-font);white-space:nowrap}.audit-main p{color:var(--audit-text);font-size:12px;font-family:var(--audit-font);margin:6px 0 8px;line-height:1.5}.audit-meta{flex-wrap:wrap;gap:8px;margin-top:2px;display:flex}.audit-meta span{color:var(--audit-muted);font-size:10px;font-family:var(--audit-font)}.audit-meta .audit-badge{text-transform:uppercase;letter-spacing:.3px;font-size:9px;font-weight:600;font-family:var(--audit-font);border:1px solid #0000;border-radius:4px;padding:2px 10px;display:inline-flex}.audit-badge.success{background:var(--audit-green-soft);color:var(--audit-green);border-color:#1f6b4526}.audit-badge.warning{background:var(--audit-gold-soft);color:#8a6500;border-color:#c9a44c33}.audit-badge.danger{color:#b91c1c;background:#b91c1c14;border-color:#b91c1c26}.audit-badge.info{color:#2563eb;background:#3b82f614;border-color:#3b82f626}.audit-empty{border:2px dashed var(--audit-line);text-align:center;color:var(--audit-muted);border-radius:4px;padding:32px 20px}.audit-empty i{color:var(--audit-gold);opacity:.4;margin-bottom:8px;font-size:28px;display:block}.audit-empty p{font-family:var(--audit-font);margin:0;font-size:12px}@media (width<=900px){.audit-toolbar{flex-direction:column;align-items:stretch}.audit-search-wrap{min-width:unset}.audit-filter-select{width:100%;min-width:unset}}@media (width<=768px){.audit-card{padding:14px 16px}.audit-row{grid-template-columns:1fr;gap:8px;padding:10px 14px}.audit-icon{width:36px;height:36px;font-size:14px}.audit-top{flex-wrap:wrap}.audit-top strong{font-size:12px}.audit-top span{font-size:10px}.audit-main p{font-size:11px}.audit-meta span{font-size:9px}}@media (width<=480px){.audit-card{padding:12px}.audit-search-wrap input{padding:6px 12px 6px 34px;font-size:11px}.audit-search-wrap i{font-size:12px;left:10px}.audit-filter-select{padding:6px 28px 6px 10px;font-size:11px}.audit-row{padding:8px 12px}.audit-top strong{font-size:11px}.audit-main p{font-size:10px}.audit-meta{gap:4px}.audit-meta span{font-size:8px}}.audit-search-wrap input:focus-visible,.audit-filter-select:focus-visible{outline:2px solid var(--audit-gold);outline-offset:2px}@keyframes auditSlideIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.audit-row{animation:.2s auditSlideIn}.audit-row:nth-child(2){animation-delay:50ms}.audit-row:nth-child(3){animation-delay:.1s}.audit-row:nth-child(4){animation-delay:.15s}@media print{.audit-card{break-inside:avoid;page-break-inside:avoid;box-shadow:none!important;border:1px solid #000!important}.audit-row{break-inside:avoid;page-break-inside:avoid;border:1px solid #000!important}.audit-toolbar{display:none!important}}:root{--roles-bg:#f5f3ef;--roles-card:#fff;--roles-line:#e2ddd4;--roles-line-strong:#d5cfc4;--roles-text:#1a1a1a;--roles-muted:#8a8578;--roles-faint:#c4beb3;--roles-green:#1f6b45;--roles-green-hover:#174f34;--roles-green-soft:#1f6b450f;--roles-gold:#c9a44c;--roles-gold-soft:#c9a44c0f;--roles-shadow:0 4px 12px #0000000f;--roles-font:"SF Mono", "JetBrains Mono", monospace}.roles-module{gap:16px;display:grid}.roles-editor-layout{grid-template-columns:280px 1fr;align-items:start;gap:16px;display:grid}.roles-list-card,.permissions-editor-card{background:var(--roles-card);border:1px solid var(--roles-line);box-shadow:var(--roles-shadow);border-radius:4px;padding:16px 18px;transition:all .15s}.roles-list-card:hover,.permissions-editor-card:hover{border-color:var(--roles-gold-border)}.roles-list-card h3,.permissions-editor-card h3{color:var(--roles-text);font-size:14px;font-weight:600;font-family:var(--roles-font);text-transform:uppercase;letter-spacing:.3px;margin:0 0 12px}.roles-list-head,.role-form-section-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.roles-list-head h3,.role-form-section-head h3{margin-bottom:0}.roles-list{gap:6px;display:grid}.role-editor-row{border:1px solid var(--roles-line);background:var(--roles-card);text-align:left;cursor:pointer;width:100%;font-family:var(--roles-font);border-radius:4px;justify-content:space-between;gap:10px;padding:10px 14px;transition:all .15s;display:flex}.role-editor-row:hover{border-color:var(--roles-gold-border);background:var(--roles-gold-soft)}.role-editor-row.is-active{border-color:var(--roles-green);background:var(--roles-green-soft);box-shadow:0 0 0 2px #1f6b451a}.role-editor-row strong{color:var(--roles-text);font-size:13px;font-weight:600;font-family:var(--roles-font);display:block}.role-editor-row span{color:var(--roles-muted);font-size:11px;font-family:var(--roles-font);margin-top:2px;display:block}.role-editor-row .role-badge{text-transform:uppercase;letter-spacing:.3px;font-size:8px;font-weight:600;font-family:var(--roles-font);border:1px solid #0000;border-radius:4px;flex-shrink:0;align-self:center;padding:2px 10px;display:inline-flex}.role-badge.admin{background:var(--roles-green-soft);color:var(--roles-green);border-color:#1f6b4526}.role-badge.staff{background:var(--roles-gold-soft);color:#8a6500;border-color:#c9a44c33}.role-badge.user{color:#2563eb;background:#3b82f614;border-color:#3b82f626}.permission-editor-head{border-bottom:2px solid var(--roles-line);justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;padding-bottom:12px;display:flex}.permission-editor-head h3{color:var(--roles-text);font-size:14px;font-weight:600;font-family:var(--roles-font);text-transform:uppercase;letter-spacing:.3px;margin:0}.permission-editor-head p{color:var(--roles-muted);font-size:12px;font-family:var(--roles-font);margin:4px 0 0}.permission-editor-head .role-description{max-width:620px;line-height:1.5}.role-editor-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.role-form-body{gap:22px;display:grid}.role-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.role-form-grid label{color:var(--roles-text);font-family:var(--roles-font);gap:6px;font-size:12px;font-weight:600;display:grid}.role-form-grid small{color:var(--roles-muted);font-size:10px;font-weight:400}.role-form-wide{grid-column:1/-1}.role-form-permissions{max-height:360px;padding-right:4px;overflow:auto}.permissions-grid{grid-template-columns:repeat(2,minmax(200px,1fr));gap:8px;display:grid}.permission-option{border:1px solid var(--roles-line);background:var(--roles-card);cursor:pointer;border-radius:4px;align-items:flex-start;gap:10px;padding:10px 14px;transition:all .15s;display:flex}.permission-option:hover{border-color:var(--roles-gold-border);background:var(--roles-gold-soft)}.permission-option input[type=checkbox]{width:16px;height:16px;accent-color:var(--roles-green);cursor:pointer;flex-shrink:0;margin-top:2px}.permission-option strong{color:var(--roles-text);font-size:12px;font-weight:600;font-family:var(--roles-font);display:block}.permission-option span{color:var(--roles-muted);font-size:11px;font-family:var(--roles-font);margin-top:2px;display:block}.roles-empty{border:2px dashed var(--roles-line);text-align:center;color:var(--roles-muted);border-radius:4px;padding:32px 20px}.roles-empty i{color:var(--roles-gold);opacity:.4;margin-bottom:8px;font-size:28px;display:block}.roles-empty p{font-family:var(--roles-font);margin:0;font-size:12px}@media (width<=1024px){.permissions-grid{grid-template-columns:1fr}}@media (width<=900px){.roles-editor-layout{grid-template-columns:1fr}.roles-list-card{max-height:300px;overflow-y:auto}.roles-list-card::-webkit-scrollbar{width:4px}.roles-list-card::-webkit-scrollbar-track{background:var(--roles-line);border-radius:2px}.roles-list-card::-webkit-scrollbar-thumb{background:var(--roles-gold);border-radius:2px}}@media (width<=768px){.role-form-grid{grid-template-columns:1fr}.role-form-wide{grid-column:auto}.role-editor-actions{justify-content:flex-start}.roles-list-card,.permissions-editor-card{padding:14px 16px}.roles-list-card h3,.permissions-editor-card h3{font-size:13px}.role-editor-row{padding:8px 12px}.role-editor-row strong{font-size:12px}.role-editor-row span{font-size:10px}.permission-editor-head{flex-direction:column;gap:8px}.permission-editor-head h3{font-size:13px}.permission-editor-head p{font-size:11px}.permission-option{padding:8px 12px}.permission-option strong{font-size:11px}.permission-option span{font-size:10px}}@media (width<=480px){.roles-list-card,.permissions-editor-card{padding:12px}.role-editor-row{flex-wrap:wrap;padding:6px 10px}.role-editor-row strong{font-size:11px}.role-editor-row span{font-size:9px}.permission-option{padding:6px 10px}.permission-option input[type=checkbox]{width:14px;height:14px}.permission-option strong{font-size:10px}.permission-option span{font-size:9px}}.role-editor-row:focus-visible,.permission-option:focus-visible{outline:2px solid var(--roles-gold);outline-offset:2px}@keyframes rolesSlideIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.role-editor-row,.permission-option{animation:.2s rolesSlideIn}.role-editor-row:nth-child(2),.permission-option:nth-child(2){animation-delay:50ms}.role-editor-row:nth-child(3),.permission-option:nth-child(3){animation-delay:.1s}@media print{.roles-list-card,.permissions-editor-card{break-inside:avoid;page-break-inside:avoid;box-shadow:none!important;border:1px solid #000!important}.role-editor-row,.permission-option{border:1px solid #000!important}}.overview-module{flex-direction:column;gap:22px;display:flex}.overview-stats-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;display:grid}.overview-stat-card{border:1px solid var(--staff-border);background:var(--staff-card);border-radius:11px;justify-content:space-between;align-items:center;gap:12px;min-height:112px;padding:17px 18px;display:flex;box-shadow:0 3px 12px #1b31260a}.overview-stat-card span{color:var(--staff-muted);margin-bottom:8px;font-size:11px;font-weight:600;display:block}.overview-stat-card strong{color:var(--staff-green);font-size:27px;font-weight:800;line-height:1;display:block}.overview-stat-card>i{background:var(--staff-gold-soft);color:#9b7728;border-radius:10px;flex:none;place-items:center;width:42px;height:42px;font-size:17px;display:grid}.overview-layout{grid-template-columns:minmax(0,2fr) minmax(300px,1fr);align-items:start;gap:18px;display:grid}.overview-card{border:1px solid var(--staff-border);background:var(--staff-card);border-radius:11px;overflow:hidden;box-shadow:0 3px 12px #1b31260a}.overview-card-header{border-bottom:1px solid var(--staff-border);padding:16px 18px 13px}.overview-card-header h3{color:var(--staff-text);margin:0;font-size:14px}.overview-card-header p{color:var(--staff-muted);margin:4px 0 0;font-size:11px}.overview-audit-list{flex-direction:column;display:flex}.overview-audit-item{border-bottom:1px solid #eeece6;gap:12px;min-width:0;padding:13px 18px;display:flex;position:relative}.overview-audit-item:last-child{border-bottom:0}.overview-audit-item:before{content:"";background:#5d9c75;border-radius:0 2px 2px 0;width:3px;position:absolute;inset:13px auto 13px 0}.overview-audit-item.is-warning:before{background:#d49b25}.overview-audit-item.is-failure:before{background:#bd4b4b}.overview-audit-item.is-security:before{background:#4579a7}.overview-audit-item.is-impersonation:before{background:#8059a9}.overview-audit-icon{background:var(--staff-green-soft);width:34px;height:34px;color:var(--staff-green);border-radius:8px;flex:none;place-items:center;display:grid}.overview-audit-item>div:last-child{min-width:0}.overview-audit-item strong{color:var(--staff-text);margin-bottom:2px;font-size:12px;display:block}.overview-audit-item p{overflow-wrap:anywhere;color:var(--staff-muted);margin:0;font-size:11px;line-height:1.45}.overview-audit-item span{color:#858d88;margin-top:5px;font-size:10px;display:block}.overview-actions{gap:7px;padding:12px;display:grid}.overview-action{width:100%;color:var(--staff-text);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.overview-action:hover{border-color:var(--staff-border);background:var(--staff-green-soft)}.overview-action>i:first-child{background:var(--staff-green);color:#fff;border-radius:8px;place-items:center;width:34px;height:34px;display:grid}.overview-action strong,.overview-action span{display:block}.overview-action strong{font-size:12px}.overview-action span{color:var(--staff-muted);margin-top:3px;font-size:10px}.overview-action .overview-action-chevron{color:#8b938e;background:0 0;width:auto;height:auto;font-size:10px}.overview-action:focus-visible{outline-offset:2px;outline:3px solid #f0cf79}.overview-card .staff-empty{min-height:150px;padding:24px}@media (width<=1180px){.overview-layout{grid-template-columns:1fr}}@media (width<=900px){.overview-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.overview-module{gap:16px}.overview-stats-grid{grid-template-columns:1fr;gap:9px}.overview-stat-card{min-height:88px}.overview-stat-card strong{font-size:23px}.overview-audit-item{padding-inline:13px}}@media print{.overview-card,.overview-stat-card{break-inside:avoid;box-shadow:none}.overview-actions{display:none}}:root{--sys-bg:#f5f3ef;--sys-card:#fff;--sys-line:#e2ddd4;--sys-line-strong:#d5cfc4;--sys-text:#1a1a1a;--sys-muted:#8a8578;--sys-faint:#c4beb3;--sys-green:#1f6b45;--sys-green-hover:#174f34;--sys-green-soft:#1f6b450f;--sys-gold:#c9a44c;--sys-gold-soft:#c9a44c0f;--sys-shadow:0 4px 12px #0000000f;--sys-font:"SF Mono", "JetBrains Mono", monospace}.system-module{gap:16px;display:grid}.system-grid{grid-template-columns:repeat(4,minmax(140px,1fr));gap:10px;display:grid}.system-status-card{background:var(--sys-card);border:1px solid var(--sys-line);box-shadow:var(--sys-shadow);border-radius:4px;align-items:flex-start;gap:12px;padding:14px 16px;transition:all .15s;display:flex}.system-status-card:hover{border-color:var(--sys-gold-border);box-shadow:0 6px 16px #00000014}.system-status-card i{background:var(--sys-green-soft);width:36px;height:36px;color:var(--sys-green);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;display:inline-flex}.system-status-card.warn i{background:var(--sys-gold-soft);color:var(--sys-gold)}.system-status-card.danger i{color:#b91c1c;background:#b91c1c14}.system-status-card.success i{background:var(--sys-green-soft);color:var(--sys-green)}.system-status-card span{color:var(--sys-muted);text-transform:uppercase;letter-spacing:.5px;font-size:9px;font-weight:600;font-family:var(--sys-font);display:block}.system-status-card strong{color:var(--sys-text);font-size:13px;font-weight:600;font-family:var(--sys-font);margin-top:2px;display:block}.system-status-card p{color:var(--sys-muted);font-size:10px;line-height:1.5;font-family:var(--sys-font);margin:4px 0 0}.system-layout{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.system-card{background:var(--sys-card);border:1px solid var(--sys-line);box-shadow:var(--sys-shadow);border-radius:4px;transition:all .15s;overflow:hidden}.system-card:hover{border-color:var(--sys-gold-border)}.system-card-header{border-bottom:2px solid var(--sys-line);background:var(--sys-gold-soft);padding:12px 16px}.system-card-header h3{text-transform:uppercase;letter-spacing:.3px;color:var(--sys-text);font-size:12px;font-weight:600;font-family:var(--sys-font);margin:0}.system-card-header p{color:var(--sys-muted);font-size:10px;font-family:var(--sys-font);margin:3px 0 0}.system-metrics-grid{grid-template-columns:repeat(4,minmax(140px,1fr));gap:10px;display:grid}.system-metric-card{background:var(--sys-card);border:1px solid var(--sys-line);box-shadow:var(--sys-shadow);border-radius:4px;align-items:center;gap:12px;padding:14px 16px;display:flex}.system-metric-card i{background:var(--sys-green-soft);width:34px;height:34px;color:var(--sys-green);border-radius:4px;justify-content:center;align-items:center;display:inline-flex}.system-metric-card span{color:var(--sys-muted);text-transform:uppercase;letter-spacing:.5px;font-size:9px;font-family:var(--sys-font);display:block}.system-metric-card strong{color:var(--sys-text);font-size:16px;font-family:var(--sys-font);margin-top:2px;display:block}.system-kv-row{border-bottom:1px solid var(--sys-line);justify-content:space-between;align-items:center;gap:14px;padding:12px 16px;display:flex}.system-kv-row:last-child{border-bottom:none}.system-kv-row span{color:var(--sys-muted);font-size:10px;font-family:var(--sys-font);text-transform:uppercase;letter-spacing:.3px}.system-kv-row strong{color:var(--sys-text);font-size:12px;font-family:var(--sys-font)}.system-state.online{color:var(--sys-green)}@media (width<=1100px){.system-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.system-metrics-grid{grid-template-columns:1fr}}.system-list{display:grid}.system-list-item{border-bottom:1px solid var(--sys-line);gap:10px;padding:12px 16px;transition:all .15s;display:flex}.system-list-item:last-child{border-bottom:none}.system-list-item:hover{background:var(--sys-gold-soft)}.system-list-item>i{background:var(--sys-green-soft);width:34px;height:34px;color:var(--sys-green);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;display:inline-flex}.system-list-item>i.warn{background:var(--sys-gold-soft);color:var(--sys-gold)}.system-list-item>i.danger{color:#b91c1c;background:#b91c1c14}.system-list-item strong{color:var(--sys-text);font-size:12px;font-weight:600;font-family:var(--sys-font);display:block}.system-list-item p{color:var(--sys-muted);font-size:10px;font-family:var(--sys-font);margin:3px 0 4px;line-height:1.5}.system-list-item span{color:var(--sys-faint);font-size:9px;font-family:var(--sys-font)}.system-badge{text-transform:uppercase;letter-spacing:.3px;font-size:8px;font-weight:600;font-family:var(--sys-font);border:1px solid #0000;border-radius:4px;padding:2px 10px;display:inline-flex}.system-badge.online{background:var(--sys-green-soft);color:var(--sys-green);border-color:#1f6b4526}.system-badge.offline{color:#b91c1c;background:#b91c1c14;border-color:#b91c1c26}.system-badge.warning{background:var(--sys-gold-soft);color:#8a6500;border-color:#c9a44c33}.system-badge.maintenance{color:#2563eb;background:#3b82f614;border-color:#3b82f626}.system-state.degraded{color:#9a6700}.system-state.offline{color:#b42318}.system-function-info{flex-direction:column;gap:6px;display:flex}.system-function-info small{color:var(--text-muted);font-size:.78rem}.system-empty{border:2px dashed var(--sys-line);text-align:center;color:var(--sys-muted);border-radius:4px;padding:32px 20px}.system-empty i{color:var(--sys-gold);opacity:.4;margin-bottom:8px;font-size:28px;display:block}.system-empty p{font-family:var(--sys-font);margin:0;font-size:12px}@media (width<=1100px){.system-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.system-layout{grid-template-columns:1fr}}@media (width<=768px){.system-module{gap:14px}.system-grid{gap:8px}.system-status-card{padding:12px 14px}.system-status-card strong{font-size:12px}.system-status-card p{font-size:9px}.system-card-header{padding:10px 14px}.system-card-header h3{font-size:11px}.system-list-item{padding:10px 14px}.system-list-item strong{font-size:11px}.system-list-item p{font-size:9px}}@media (width<=560px){.system-grid{grid-template-columns:1fr}.system-module{gap:12px}.system-status-card{padding:10px 12px}.system-status-card i{width:32px;height:32px;font-size:14px}.system-status-card strong{font-size:11px}.system-card-header{padding:8px 12px}.system-card-header h3{font-size:10px}.system-card-header p{font-size:9px}.system-list-item{gap:8px;padding:8px 12px}.system-list-item>i{width:30px;height:30px;font-size:12px}.system-list-item strong{font-size:10px}.system-list-item p,.system-list-item span{font-size:8px}.system-badge{padding:1px 8px;font-size:7px}}.system-status-card:focus-visible,.system-list-item:focus-visible{outline:2px solid var(--sys-gold);outline-offset:2px}@keyframes sysSlideIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.system-status-card,.system-list-item{animation:.2s sysSlideIn}.system-status-card:nth-child(2),.system-list-item:nth-child(2){animation-delay:50ms}.system-status-card:nth-child(3),.system-list-item:nth-child(3){animation-delay:.1s}.system-status-card:nth-child(4),.system-list-item:nth-child(4){animation-delay:.15s}@media print{.system-card{break-inside:avoid;page-break-inside:avoid;box-shadow:none!important;border:1px solid #000!important}.system-status-card{break-inside:avoid;page-break-inside:avoid;border:1px solid #000!important}}:root{--ops-bg:#f5f3ef;--ops-card:#fff;--ops-line:#e2ddd4;--ops-line-strong:#d5cfc4;--ops-text:#1a1a1a;--ops-muted:#8a8578;--ops-faint:#c4beb3;--ops-green:#1f6b45;--ops-green-hover:#174f34;--ops-green-soft:#1f6b450f;--ops-gold:#c9a44c;--ops-gold-soft:#c9a44c0f;--ops-gold-border:#c9a44c47;--ops-shadow:0 4px 12px #0000000f;--ops-font:"SF Mono", "JetBrains Mono", monospace}.operations-module{gap:16px;display:grid}.operations-health-grid,.operations-count-grid{grid-template-columns:repeat(4,minmax(130px,1fr));gap:10px;display:grid}.operations-health-card{background:var(--ops-card);border:1px solid var(--ops-line);box-shadow:var(--ops-shadow);border-radius:4px;align-items:center;gap:12px;padding:14px 16px;transition:all .15s;display:flex}.operations-health-card:hover{border-color:var(--ops-gold-border);box-shadow:0 6px 16px #00000014}.operations-health-card i{background:var(--ops-green-soft);width:36px;height:36px;color:var(--ops-green);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;display:inline-flex}.operations-health-card.warn i{background:var(--ops-gold-soft);color:var(--ops-gold)}.operations-health-card.danger i{color:#b91c1c;background:#b91c1c14}.operations-health-card.success i{background:var(--ops-green-soft);color:var(--ops-green)}.operations-health-card span{color:var(--ops-muted);text-transform:uppercase;letter-spacing:.5px;font-size:9px;font-weight:600;font-family:var(--ops-font);display:block}.operations-health-card strong{color:var(--ops-text);font-size:13px;font-weight:600;font-family:var(--ops-font);margin-top:2px;display:block}.operations-health-card small,.operations-health-card time,.operations-last-refresh{color:var(--ops-muted);font-family:var(--ops-font);font-size:10px;line-height:1.4;display:block}.operations-health-card time{margin-top:4px}.operations-last-refresh{margin:-10px 0 0}.operations-diagnostics-output{white-space:pre-wrap;overflow-wrap:anywhere;max-height:55vh;font-size:12px;overflow:auto}.operations-typed-confirm{gap:8px;margin-top:16px;display:grid}.operations-count-card{background:var(--ops-card);border:1px solid var(--ops-line);box-shadow:var(--ops-shadow);border-radius:4px;padding:14px 16px;transition:all .15s}.operations-count-card:hover{border-color:var(--ops-gold-border);box-shadow:0 6px 16px #00000014}.operations-count-card span{color:var(--ops-muted);text-transform:uppercase;letter-spacing:.5px;font-size:9px;font-weight:600;font-family:var(--ops-font);display:block}.operations-count-card strong{color:var(--ops-text);font-size:20px;font-weight:700;font-family:var(--ops-font);margin-top:2px;display:block}.operations-count-card .count-green{color:var(--ops-green)}.operations-count-card .count-gold{color:var(--ops-gold)}.operations-count-card .count-danger{color:#b91c1c}.operations-layout{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.operations-card{background:var(--ops-card);border:1px solid var(--ops-line);box-shadow:var(--ops-shadow);border-radius:4px;transition:all .15s;overflow:hidden}.operations-card:hover{border-color:var(--ops-gold-border)}.operations-card.wide{grid-column:1/-1}.operations-card-header{border-bottom:2px solid var(--ops-line);background:var(--ops-gold-soft);padding:12px 16px}.operations-card-header h3{text-transform:uppercase;letter-spacing:.3px;color:var(--ops-text);font-size:12px;font-weight:600;font-family:var(--ops-font);margin:0}.operations-card-header p{color:var(--ops-muted);font-size:10px;font-family:var(--ops-font);margin:3px 0 0}.operations-form{gap:12px;padding:16px;display:grid}.operations-form label{color:var(--ops-text);font-size:10px;font-weight:600;font-family:var(--ops-font);text-transform:uppercase;letter-spacing:.3px;gap:4px;display:grid}.operations-form textarea,.operations-form select{border:1px solid var(--ops-line);font:inherit;font-family:var(--ops-font);text-transform:none;background:var(--ops-card);color:var(--ops-text);border-radius:4px;outline:none;padding:8px 12px;font-size:12px;transition:all .15s}.operations-form textarea:focus,.operations-form select:focus{border-color:var(--ops-gold);box-shadow:0 0 0 3px #c9a44c1f}.operations-form textarea{resize:vertical;min-height:100px;line-height:1.5}.operations-form select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%238a8578'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:32px}.operations-toggle-row,.operations-feature-toggle{border:1px solid var(--ops-line);background:var(--ops-card);border-radius:4px;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;transition:all .15s;display:flex!important}.operations-toggle-row:hover,.operations-feature-toggle:hover{border-color:var(--ops-gold-border)}.operations-toggle-row strong,.operations-feature-toggle strong{color:var(--ops-text);font-size:12px;font-weight:600;font-family:var(--ops-font)}.operations-toggle-row small,.operations-feature-toggle small{color:var(--ops-muted);text-transform:none;font-size:9px;font-weight:400;font-family:var(--ops-font);margin-top:2px;display:block}.toggle-switch{flex-shrink:0;width:40px;height:22px;position:relative}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{cursor:pointer;background:var(--ops-line);border-radius:11px;transition:all .3s;position:absolute;inset:0}.toggle-slider:before{content:"";background:var(--ops-card);border-radius:50%;width:16px;height:16px;transition:all .3s;position:absolute;bottom:3px;left:3px}.toggle-switch input:checked+.toggle-slider{background:var(--ops-green)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(18px)}.toggle-switch input:focus-visible+.toggle-slider{outline:2px solid var(--ops-gold);outline-offset:2px}.operations-feature-grid,.operations-emergency-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:16px;display:grid}.operations-emergency-btn{justify-content:center;min-height:44px}.danger-zone{border-color:#b91c1c33!important}.danger-zone .operations-card-header{background:#b91c1c0f;border-bottom-color:#b91c1c26}.danger-zone .operations-card-header h3{color:#b91c1c}.ops-btn{border:1px solid var(--ops-line);background:var(--ops-card);color:var(--ops-text);font-family:var(--ops-font);text-transform:uppercase;letter-spacing:.3px;cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:6px;padding:6px 16px;font-size:10px;font-weight:500;transition:all .15s;display:inline-flex}.ops-btn:hover{background:var(--ops-gold-soft);border-color:var(--ops-gold-border);transform:translateY(-1px)}.ops-btn-primary{background:var(--ops-green);border-color:var(--ops-green);color:#fff}.ops-btn-primary:hover{background:var(--ops-green-hover);border-color:var(--ops-green-hover)}.ops-btn-danger{color:#fff;background:#b91c1c;border-color:#b91c1c}.ops-btn-danger:hover{background:#7f1d1d;border-color:#7f1d1d;box-shadow:0 4px 12px #b91c1c33}.ops-btn-secondary{border-color:var(--ops-line);color:var(--ops-muted);background:0 0}.ops-btn-secondary:hover{background:var(--ops-gold-soft);border-color:var(--ops-gold-border);color:var(--ops-text)}.ops-empty{border:2px dashed var(--ops-line);text-align:center;color:var(--ops-muted);border-radius:4px;padding:32px 20px}.ops-empty i{color:var(--ops-gold);opacity:.4;margin-bottom:8px;font-size:28px;display:block}.ops-empty p{font-family:var(--ops-font);margin:0;font-size:12px}@media (width<=1024px){.operations-health-grid,.operations-count-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.operations-health-grid,.operations-count-grid,.operations-layout,.operations-feature-grid,.operations-emergency-grid{grid-template-columns:1fr}.operations-card.wide{grid-column:auto}.operations-module{gap:14px}}@media (width<=768px){.operations-health-card,.operations-count-card{padding:12px 14px}.operations-health-card strong,.operations-count-card strong{font-size:12px}.operations-card-header{padding:10px 14px}.operations-card-header h3{font-size:11px}.operations-form{padding:14px}.operations-form textarea{min-height:80px}.operations-toggle-row,.operations-feature-toggle{padding:8px 12px}.operations-feature-grid,.operations-emergency-grid{padding:14px}}@media (width<=480px){.operations-health-grid,.operations-count-grid{gap:8px}.operations-health-card,.operations-count-card{padding:10px 12px}.operations-health-card i{width:32px;height:32px;font-size:14px}.operations-health-card strong,.operations-count-card strong{font-size:11px}.operations-health-card span,.operations-count-card span{font-size:8px}.operations-form{gap:10px;padding:12px}.operations-form textarea{min-height:60px}.operations-toggle-row,.operations-feature-toggle{flex-direction:column;align-items:stretch;gap:8px}.operations-feature-grid,.operations-emergency-grid{padding:12px}.ops-btn{justify-content:center;width:100%}}.operations-health-card:focus-visible,.operations-count-card:focus-visible,.ops-btn:focus-visible,.operations-form textarea:focus-visible,.operations-form select:focus-visible{outline:2px solid var(--ops-gold);outline-offset:2px}@keyframes opsSlideIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.operations-health-card,.operations-count-card{animation:.2s opsSlideIn}.operations-health-card:nth-child(2),.operations-count-card:nth-child(2){animation-delay:50ms}.operations-health-card:nth-child(3),.operations-count-card:nth-child(3){animation-delay:.1s}.operations-health-card:nth-child(4),.operations-count-card:nth-child(4){animation-delay:.15s}@media print{.operations-card{break-inside:avoid;page-break-inside:avoid;box-shadow:none!important;border:1px solid #000!important}.operations-health-card,.operations-count-card{break-inside:avoid;page-break-inside:avoid;border:1px solid #000!important}.ops-btn,.toggle-switch{display:none!important}}:root{--maint-bg:#f5f3ef;--maint-card:#fff;--maint-line:#e2ddd4;--maint-line-strong:#d5cfc4;--maint-text:#1a1a1a;--maint-muted:#8a8578;--maint-faint:#c4beb3;--maint-green:#1f6b45;--maint-gold:#c9a44c;--maint-gold-soft:#c9a44c0f;--maint-shadow:0 8px 24px #00000014;--maint-font:"SF Mono", "JetBrains Mono", monospace}.maintenance-screen{background:var(--maint-bg);place-items:center;min-height:100dvh;padding:24px;display:grid}.maintenance-card{background:var(--maint-card);border:1px solid var(--maint-line);text-align:center;width:100%;max-width:560px;box-shadow:var(--maint-shadow);border-radius:4px;padding:40px 44px;transition:all .15s}.maintenance-card:hover{border-color:var(--maint-gold-border)}.maintenance-card i{color:var(--maint-gold);opacity:.85;margin-bottom:16px;font-size:40px;display:block}.maintenance-card h1{color:var(--maint-text);font-size:22px;font-weight:700;font-family:var(--maint-font);text-transform:uppercase;letter-spacing:-.3px;margin:0 0 10px}.maintenance-card .maintenance-status{text-transform:uppercase;letter-spacing:.3px;background:var(--maint-gold-soft);border:1px solid var(--maint-line);color:var(--maint-muted);font-size:10px;font-weight:600;font-family:var(--maint-font);border-radius:4px;margin-bottom:14px;padding:4px 16px;display:inline-block}.maintenance-card .maintenance-status.active{color:#b91c1c;background:#b91c1c14;border-color:#b91c1c26}.maintenance-card .maintenance-status.scheduled{background:var(--maint-gold-soft);color:#8a6500;border-color:#c9a44c33}.maintenance-card .maintenance-status.completed{color:var(--maint-green);background:#1f6b450f;border-color:#1f6b4526}.maintenance-card p{color:var(--maint-muted);font-size:13px;line-height:1.7;font-family:var(--maint-font);margin:0 0 16px}.maintenance-card p:last-child{margin-bottom:0}.maintenance-card .maintenance-time{background:var(--maint-gold-soft);border:1px solid var(--maint-line);color:var(--maint-muted);font-size:11px;font-family:var(--maint-font);border-radius:4px;align-items:center;gap:8px;margin:12px 0 16px;padding:8px 16px;display:inline-flex}.maintenance-card .maintenance-time i{color:var(--maint-gold);margin:0;font-size:14px}.maintenance-card .maintenance-time strong{color:var(--maint-text);font-weight:600}.maintenance-card .maintenance-progress{background:var(--maint-line);border-radius:2px;width:100%;height:4px;margin:16px 0 12px;overflow:hidden}.maintenance-card .maintenance-progress .progress-fill{background:linear-gradient(90deg, var(--maint-green), var(--maint-gold));border-radius:2px;width:0%;height:100%;transition:width .6s}.maintenance-card .maintenance-progress .progress-fill.active{animation:1.5s ease-in-out infinite progressPulse}@keyframes progressPulse{0%,to{opacity:1}50%{opacity:.6}}.maintenance-card .maint-btn{border:1px solid var(--maint-line);background:var(--maint-card);color:var(--maint-text);font-family:var(--maint-font);text-transform:uppercase;letter-spacing:.3px;cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:8px;margin-top:12px;padding:8px 24px;font-size:11px;font-weight:500;text-decoration:none;transition:all .15s;display:inline-flex}.maintenance-card .maint-btn:hover{background:var(--maint-gold-soft);border-color:var(--maint-gold-border);transform:translateY(-1px)}.maintenance-card .maint-btn-primary{background:var(--maint-green);border-color:var(--maint-green);color:#fff}.maintenance-card .maint-btn-primary:hover{background:var(--maint-green-hover,#174f34);border-color:var(--maint-green-hover,#174f34)}.maintenance-card .maint-divider{background:var(--maint-line);height:1px;margin:20px 0}@media (width<=640px){.maintenance-card{padding:28px 24px}.maintenance-card h1{font-size:18px}.maintenance-card i{font-size:32px}.maintenance-card p{font-size:12px}.maintenance-card .maintenance-time{padding:6px 14px;font-size:10px}.maintenance-card .maint-btn{padding:6px 18px;font-size:10px}}@media (width<=400px){.maintenance-card{padding:20px 16px}.maintenance-card h1{font-size:16px}.maintenance-card i{font-size:28px}.maintenance-card p{font-size:11px}.maintenance-card .maintenance-status{padding:3px 12px;font-size:8px}.maintenance-card .maintenance-time{flex-wrap:wrap;justify-content:center;padding:4px 12px;font-size:9px}.maintenance-card .maint-btn{justify-content:center;width:100%;padding:6px 16px;font-size:9px}}.maintenance-card .maint-btn:focus-visible{outline:2px solid var(--maint-gold);outline-offset:2px}@media print{.maintenance-screen{background:#fff!important;padding:0!important}.maintenance-card{box-shadow:none!important;border:1px solid #000!important;padding:32px!important}.maintenance-card .maint-btn{display:none!important}}.account-status-screen{background:var(--maint-bg,#f5f3ef);place-items:center;min-height:100dvh;padding:24px;display:grid}.account-status-card{background:var(--maint-card,#fff);border:1px solid var(--maint-line,#e2ddd4);text-align:center;width:100%;max-width:560px;box-shadow:var(--maint-shadow,0 8px 24px #00000014);border-radius:4px;padding:40px 44px}.account-status-card i{color:var(--maint-gold,#c9a44c);opacity:.85;margin-bottom:16px;font-size:40px;display:block}.account-status-card h1{color:var(--maint-text,#1a1a1a);font-size:22px;font-weight:700;font-family:var(--maint-font,"SF Mono", "JetBrains Mono", monospace);margin:0 0 10px}.account-status-card p{color:var(--maint-muted,#8a8578);font-size:13px;line-height:1.7;font-family:var(--maint-font,"SF Mono", "JetBrains Mono", monospace);margin:0 0 16px}.account-status-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px;display:flex}.account-status-actions .btn{font-family:var(--maint-font,"SF Mono", "JetBrains Mono", monospace);text-transform:uppercase;letter-spacing:.3px;font-size:12px}.account-status-error{color:#b91c1c;margin-top:14px;font-size:12px}.account-status-error[hidden]{display:none}@media (width<=640px){.account-status-card{padding:28px 24px}.account-status-card h1{font-size:18px}}:root{--security-bg:#f5f3ef;--security-panel:#fff;--security-panel-soft:#faf8f5;--security-border:#e2ddd4;--security-border-strong:#d5cfc4;--security-text:#1a1a1a;--security-muted:#8a8578;--security-faint:#c4beb3;--security-green:#1f6b45;--security-green-hover:#174f34;--security-green-soft:#1f6b450f;--security-gold:#c9a44c;--security-gold-soft:#c9a44c0f;--security-red:#b91c1c;--security-red-soft:#b91c1c0f;--security-orange:#e8a53a;--security-orange-soft:#e8a53a0f;--security-blue:#3b82f6;--security-blue-soft:#3b82f60f;--security-shadow:0 4px 12px #0000000f;--security-font:"SF Mono", "JetBrains Mono", monospace}.security-center{width:100%;min-height:100%;color:var(--security-text);font-family:var(--security-font);padding:0}.security-header{border-bottom:2px solid var(--security-border);justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;padding:0 0 16px;display:flex}.security-header>div{min-width:0}.security-eyebrow{color:var(--security-gold);letter-spacing:.5px;text-transform:uppercase;font-size:9px;font-weight:600;font-family:var(--security-font);margin:0 0 4px}.security-header h2{color:var(--security-text);letter-spacing:-.3px;font-size:clamp(20px,2.5vw,28px);font-weight:700;line-height:1.1;font-family:var(--security-font);text-transform:uppercase;margin:0}.security-header p:not(.security-eyebrow){max-width:720px;color:var(--security-muted);font-size:12px;line-height:1.6;font-family:var(--security-font);margin:6px 0 0}.security-header #securityRefreshBtn{border:1px solid var(--security-green);background:var(--security-green);color:#fff;min-height:36px;font-family:var(--security-font);text-transform:uppercase;letter-spacing:.3px;cursor:pointer;border-radius:4px;flex:none;justify-content:center;align-items:center;gap:6px;padding:0 18px;font-size:10px;font-weight:500;transition:all .15s;display:inline-flex}.security-header #securityRefreshBtn:hover{background:var(--security-green-hover);transform:translateY(-1px);box-shadow:0 4px 12px #1f6b4533}.security-header #securityRefreshBtn:active{transform:translateY(0)}.security-status{border:1px solid var(--security-border);background:var(--security-panel);color:var(--security-text);font-size:11px;font-weight:500;font-family:var(--security-font);border-radius:4px;margin-bottom:14px;padding:8px 14px}.security-status[hidden]{display:none}.security-last-refresh,.security-metadata-summary{color:var(--security-muted);font-family:var(--security-font);font-size:10px}.security-last-refresh{margin:-8px 0 0}.security-metadata-summary{color:var(--security-gold);margin-top:4px;display:block}.security-status.info{background:var(--security-blue-soft);color:#2563eb;border-color:#3b82f633 #3b82f633 #3b82f633 #2563eb;border-left-style:solid;border-left-width:3px}.security-status.success{background:var(--security-green-soft);color:var(--security-green);border-color:#1f6b4533;border-left:3px solid var(--security-green)}.security-status.warning{background:var(--security-orange-soft);color:#b45309;border-color:#e8a53a33 #e8a53a33 #e8a53a33 #b45309;border-left-style:solid;border-left-width:3px}.security-status.error{background:var(--security-red-soft);color:var(--security-red);border-color:#b91c1c33;border-left:3px solid var(--security-red)}.security-toolbar{grid-template-columns:minmax(220px,1fr) minmax(160px,200px);gap:10px;margin-bottom:16px;display:grid}.security-search-wrap{position:relative}.security-search-wrap>i{z-index:1;color:var(--security-muted);pointer-events:none;font-size:13px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.security-search-wrap input,#securityFilter{border:1px solid var(--security-border);background:var(--security-panel);width:100%;min-height:36px;color:var(--security-text);font-family:var(--security-font);border-radius:4px;font-size:12px;transition:all .15s}.security-search-wrap input{padding:0 12px 0 36px}#securityFilter{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%238a8578'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding:0 32px 0 12px}.security-search-wrap input::placeholder{color:var(--security-faint)}.security-search-wrap input:focus,#securityFilter:focus{border-color:var(--security-gold);background:var(--security-panel);outline:none;box-shadow:0 0 0 3px #c9a44c1f}.security-cards{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:18px;display:grid}.security-card{border:1px solid var(--security-border);background:var(--security-panel);min-width:0;box-shadow:var(--security-shadow);border-radius:4px;align-items:center;gap:10px;padding:12px 14px;transition:all .15s;display:flex}.security-card:hover{border-color:var(--security-gold-border);transform:translateY(-2px);box-shadow:0 6px 16px #00000014}.security-card-icon{background:var(--security-green-soft);width:34px;height:34px;color:var(--security-green);border-radius:4px;flex:0 0 34px;justify-content:center;align-items:center;font-size:14px;display:inline-flex}.security-card[data-type=locked] .security-card-icon,.security-card[data-type=error] .security-card-icon{background:var(--security-red-soft);color:var(--security-red)}.security-card[data-type=impersonation] .security-card-icon{background:var(--security-orange-soft);color:#b45309}.security-card[data-type=role] .security-card-icon,.security-card[data-type=permission] .security-card-icon{background:var(--security-gold-soft);color:var(--security-gold)}.security-card span{color:var(--security-muted);letter-spacing:.5px;text-transform:uppercase;font-size:8px;font-weight:600;font-family:var(--security-font);margin-bottom:2px;display:block}.security-card strong{color:var(--security-text);font-size:20px;font-weight:700;line-height:1;font-family:var(--security-font);display:block}.security-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px;display:grid}.security-panel{border:1px solid var(--security-border);background:var(--security-panel);min-width:0;box-shadow:var(--security-shadow);border-radius:4px;overflow:hidden}.security-panel--sessions{grid-column:1/-1}.security-session-identity{min-width:0}.security-session-identity strong{overflow-wrap:anywhere}.security-panel-header{border-bottom:2px solid var(--security-border);background:var(--security-panel-soft);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.security-panel-header h3{color:var(--security-text);font-size:12px;font-weight:600;font-family:var(--security-font);text-transform:uppercase;letter-spacing:.3px;margin:0}.security-panel-header p{color:var(--security-muted);font-size:10px;line-height:1.4;font-family:var(--security-font);margin:3px 0 0}.security-table{max-height:360px;overflow:auto}.security-table::-webkit-scrollbar{width:4px}.security-table::-webkit-scrollbar-track{background:var(--security-border);border-radius:2px}.security-table::-webkit-scrollbar-thumb{background:var(--security-gold);border-radius:2px}.security-row{border-bottom:1px solid var(--security-border);background:var(--security-panel);grid-template-columns:minmax(160px,1.4fr) repeat(2,minmax(100px,.75fr)) auto;align-items:center;gap:12px;min-height:60px;padding:10px 14px;transition:all .15s;display:grid}.security-row:last-child{border-bottom:0}.security-row:hover{background:var(--security-gold-soft)}.security-row[hidden]{display:none!important}.security-row>div{min-width:0}.security-row strong{color:var(--security-text);overflow-wrap:anywhere;font-size:12px;font-weight:600;line-height:1.4;font-family:var(--security-font);display:block}.security-row small{color:var(--security-muted);overflow-wrap:anywhere;font-size:10px;line-height:1.4;font-family:var(--security-font);margin-top:2px;display:block}.security-person{align-items:center;gap:10px;display:flex}.security-avatar{background:var(--security-green-soft);width:32px;height:32px;color:var(--security-green);font-size:11px;font-weight:700;font-family:var(--security-font);border:1px solid #1f6b4514;border-radius:4px;flex:0 0 32px;justify-content:center;align-items:center;display:inline-flex}.security-meta span{color:var(--security-muted);letter-spacing:.5px;text-transform:uppercase;font-size:8px;font-weight:600;font-family:var(--security-font);margin-bottom:2px;display:block}.security-meta strong{font-size:11px;font-family:var(--security-font)}.security-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.security-actions button,.security-center .btn-secondary{border:1px solid var(--security-border-strong);background:var(--security-panel);min-height:30px;color:var(--security-text);font-family:var(--security-font);text-transform:uppercase;letter-spacing:.3px;cursor:pointer;white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;gap:4px;padding:0 12px;font-size:9px;font-weight:500;transition:all .15s;display:inline-flex}.security-actions button:hover,.security-center .btn-secondary:hover{border-color:var(--security-green);background:var(--security-green);color:#fff;transform:translateY(-1px)}.security-actions button[data-security-action=revokeSessions],.security-actions button[data-security-action=forceLogout],.security-actions button[data-security-action=lockUser]{color:var(--security-red);border-color:#b91c1c33}.security-actions button[data-security-action=revokeSessions]:hover,.security-actions button[data-security-action=forceLogout]:hover,.security-actions button[data-security-action=lockUser]:hover{border-color:var(--security-red);background:var(--security-red);color:#fff}.security-audit-row{grid-template-columns:minmax(180px,1.5fr) repeat(3,minmax(90px,.7fr))}.security-audit-row>div:first-child strong{color:var(--security-green)}.security-empty-row{min-height:72px;color:var(--security-muted);text-align:center;font-size:11px;font-family:var(--security-font);justify-content:center;align-items:center;gap:8px;padding:16px 20px;display:flex}.security-empty-row i{color:var(--security-gold);opacity:.4}.security-loading,.security-empty,.security-error{border:2px dashed var(--security-border);background:var(--security-panel);color:var(--security-muted);text-align:center;font-size:12px;font-family:var(--security-font);border-radius:4px;margin-top:14px;padding:24px 20px}.security-loading i{color:var(--security-gold);margin-right:6px}.security-error{background:var(--security-red-soft);color:var(--security-red);border-color:#b91c1c33}.security-loading.hidden,.security-empty.hidden,.security-error.hidden{display:none}.security-error-state{place-items:center;min-height:320px;display:grid}.security-error-card{background:var(--security-panel);max-width:480px;box-shadow:var(--security-shadow);text-align:center;border:1px solid #b91c1c26;border-radius:4px;padding:32px 36px}.security-error-card>i{color:var(--security-red);opacity:.6;margin-bottom:12px;font-size:32px}.security-error-card h2{font-size:18px;font-weight:700;font-family:var(--security-font);text-transform:uppercase;letter-spacing:.3px;margin:0 0 6px}.security-error-card p{color:var(--security-muted);font-size:12px;line-height:1.6;font-family:var(--security-font);margin:0 0 16px}.security-modal{z-index:7000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#02061780;justify-content:center;align-items:center;padding:20px;display:none;position:fixed;inset:0}.security-modal.open{animation:.2s modalFadeIn;display:flex}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.security-modal-card{border:1px solid var(--security-border-strong);background:var(--security-panel);border-radius:4px;width:min(100%,480px);animation:.2s modalSlideUp;overflow:hidden;box-shadow:0 16px 48px #00000026}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.security-modal-header{border-bottom:2px solid var(--security-border);background:var(--security-panel-soft);justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 18px;display:flex}.security-modal-header h3{font-size:14px;font-weight:600;font-family:var(--security-font);text-transform:uppercase;letter-spacing:.3px;margin:0}.security-modal-header p{color:var(--security-muted);font-size:10px;font-family:var(--security-font);margin:3px 0 0}.security-modal-close{border:1px solid var(--security-border);background:var(--security-panel);width:30px;height:30px;color:var(--security-muted);cursor:pointer;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;transition:all .15s;display:inline-flex}.security-modal-close:hover{background:var(--security-gold-soft);border-color:var(--security-gold-border);color:var(--security-text);transform:rotate(90deg)}.security-modal-body{padding:18px}.security-modal-body label{color:var(--security-muted);letter-spacing:.5px;text-transform:uppercase;font-size:9px;font-weight:600;font-family:var(--security-font);margin-bottom:4px;display:block}.security-modal-body input,.security-modal-body textarea,.security-modal-body select{border:1px solid var(--security-border);background:var(--security-panel);width:100%;color:var(--security-text);font-family:var(--security-font);border-radius:4px;font-size:12px;transition:all .15s}.security-modal-body input,.security-modal-body select{min-height:36px;padding:0 12px}.security-modal-body textarea{resize:vertical;min-height:100px;padding:10px 12px;line-height:1.5}.security-modal-body input:focus,.security-modal-body textarea:focus,.security-modal-body select:focus{border-color:var(--security-gold);outline:none;box-shadow:0 0 0 3px #c9a44c1f}.security-modal-body input::placeholder,.security-modal-body textarea::placeholder{color:var(--security-faint)}.security-modal-footer{border-top:2px solid var(--security-border);background:var(--security-panel-soft);justify-content:flex-end;gap:8px;padding:12px 18px;display:flex}.security-modal-footer button{min-height:34px;font-family:var(--security-font);text-transform:uppercase;letter-spacing:.3px;cursor:pointer;border-radius:4px;padding:0 16px;font-size:10px;font-weight:500;transition:all .15s}.security-modal-cancel{border:1px solid var(--security-border-strong);background:var(--security-panel);color:var(--security-text)}.security-modal-cancel:hover{background:var(--security-gold-soft);border-color:var(--security-gold-border)}.security-modal-confirm{border:1px solid var(--security-red);background:var(--security-red);color:#fff}.security-modal-confirm:hover{background:#7f1d1d;border-color:#7f1d1d}@media (width<=1180px){.security-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.security-grid{grid-template-columns:1fr}}@media (width<=820px){.security-header{flex-direction:column}.security-header #securityRefreshBtn{justify-content:center;width:100%}.security-toolbar{grid-template-columns:1fr}.security-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.security-row,.security-audit-row{grid-template-columns:1fr;gap:8px;min-height:52px;padding:10px 14px}.security-actions{justify-content:flex-start}}@media (width<=600px){.security-cards{grid-template-columns:1fr 1fr;gap:8px}.security-card{padding:10px 12px}.security-card strong{font-size:18px}}@media (width<=520px){.security-center{padding:0}.security-cards{grid-template-columns:1fr}.security-card,.security-panel-header{padding:10px 12px}.security-panel-header h3{font-size:11px}.security-row{padding:8px 12px}.security-actions{grid-template-columns:1fr;display:grid}.security-actions button{justify-content:center;width:100%}.security-modal-card{width:calc(100% - 16px)}.security-modal-footer{flex-direction:column}.security-modal-footer button{justify-content:center;width:100%}.security-header h2{font-size:18px}.security-error-card{padding:24px 20px}}.security-header #securityRefreshBtn:focus-visible,.security-search-wrap input:focus-visible,#securityFilter:focus-visible,.security-actions button:focus-visible,.security-modal-close:focus-visible,.security-modal-confirm:focus-visible,.security-modal-cancel:focus-visible{outline:2px solid var(--security-gold);outline-offset:2px}@media print{.security-center{background:#fff!important;padding:0!important}.security-panel{break-inside:avoid;page-break-inside:avoid;box-shadow:none!important;border:1px solid #000!important}.security-card{break-inside:avoid;page-break-inside:avoid;border:1px solid #000!important}.security-header #securityRefreshBtn,.security-actions,.security-toolbar{display:none!important}.security-status{border:1px solid #000!important}}:root{--support-bg:#f4f1eb;--support-surface:#fff;--support-surface-soft:#faf8f4;--support-border:#ded8cd;--support-border-strong:#cfc7b9;--support-text:#171a18;--support-muted:#777166;--support-faint:#aaa397;--support-green:#1f6b45;--support-green-dark:#164f34;--support-green-soft:#1f6b4514;--support-gold:#c59b3d;--support-gold-soft:#c59b3d1a;--support-red:#b83b36;--support-red-soft:#b83b3617;--support-shadow:0 8px 24px #1c201d0f;--support-radius:8px;--support-font:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--support-mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace}section[data-view=support]{width:100%;min-width:0}.support-shell{background:var(--support-bg);width:100%;color:var(--support-text);font-family:var(--support-font);padding:18px}.support-command-header{grid-template-columns:minmax(260px,1fr) minmax(560px,1.7fr);align-items:stretch;gap:18px;margin-bottom:14px;display:grid}.support-command-title,.support-stat-card,.support-create-panel,.support-workspace,.support-detail-panel{background:var(--support-surface);border:1px solid var(--support-border);box-shadow:var(--support-shadow)}.support-command-title{border-radius:var(--support-radius);border-top:3px solid var(--support-green);padding:18px 20px}.support-kicker{color:var(--support-gold);font:700 10px/1 var(--support-mono);letter-spacing:.11em;text-transform:uppercase;margin:0 0 5px}.support-command-title h1,.support-panel-heading h2,.support-workspace-header h2,.support-detail-header h3{color:var(--support-text);margin:0;font-weight:750}.support-command-title h1{letter-spacing:-.04em;font-size:clamp(22px,2vw,30px)}.support-command-title>p:last-child{color:var(--support-muted);margin:7px 0 0;font-size:13px;line-height:1.5}.support-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.support-stat-card{border-radius:var(--support-radius);min-width:0;padding:14px 16px;position:relative;overflow:hidden}.support-stat-card:after{content:"";background:var(--support-border-strong);height:3px;position:absolute;inset:auto 0 0}.support-stat-card.is-open:after{background:var(--support-green)}.support-stat-card.is-pending:after{background:var(--support-gold)}.support-stat-card.is-closed:after{background:#7d877f}.support-stat-card span{color:var(--support-muted);font:700 9px/1 var(--support-mono);letter-spacing:.08em;text-transform:uppercase;display:block}.support-stat-card strong{margin-top:8px;font-size:26px;line-height:1;display:block}.support-stat-card small{color:var(--support-muted);margin-top:7px;font-size:11px;display:block}.support-command-grid{grid-template-columns:minmax(320px,.78fr) minmax(620px,1.72fr);align-items:start;gap:14px;display:grid}.support-create-panel,.support-workspace{border-radius:var(--support-radius);min-width:0}.support-create-panel{top:calc(var(--topbar-height,56px) + 12px);padding:16px;position:sticky}.support-panel-heading,.support-workspace-header,.support-detail-header,.support-thread-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.support-panel-heading{border-bottom:1px solid var(--support-border);margin-bottom:13px;padding-bottom:13px}.support-panel-heading h2,.support-workspace-header h2{text-transform:uppercase;letter-spacing:.02em;font-size:15px;font-family:var(--support-mono)}.support-panel-heading>i{color:var(--support-green);font-size:22px}.support-form{gap:11px;display:grid}.support-field-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.support-field{gap:5px;min-width:0;display:grid}.support-field>span{color:var(--support-muted);font:700 9px/1 var(--support-mono);letter-spacing:.06em;text-transform:uppercase}.support-field input,.support-field select,.support-field textarea,.support-search-box,.support-filter-select,.support-reply-bar textarea{border:1px solid var(--support-border);background:var(--support-surface-soft);color:var(--support-text);font:13px/1.4 var(--support-font);border-radius:6px;transition:border-color .16s,box-shadow .16s,background .16s}.support-field input,.support-field select{height:40px;padding:0 11px}.support-field textarea{resize:vertical;width:100%;min-height:150px;padding:10px 11px}.support-field input:focus,.support-field select:focus,.support-field textarea:focus,.support-filter-select:focus,.support-search-box:focus-within,.support-reply-bar textarea:focus{border-color:var(--support-gold);box-shadow:0 0 0 3px var(--support-gold-soft);background:#fff;outline:none}.support-form-actions{gap:8px;padding-top:2px;display:flex}.support-btn{border:1px solid var(--support-border-strong);background:var(--support-surface);min-height:36px;color:var(--support-text);font:700 10px/1 var(--support-mono);letter-spacing:.03em;text-transform:uppercase;cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:7px;padding:0 13px;transition:all .16s;display:inline-flex}.support-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 5px 12px #0000000f}.support-btn:disabled{opacity:.6;cursor:wait}.support-btn-primary{color:#fff;background:var(--support-green);border-color:var(--support-green)}.support-btn-primary:hover:not(:disabled){background:var(--support-green-dark);border-color:var(--support-green-dark)}.support-btn-danger{color:var(--support-red);background:var(--support-red-soft);border-color:#b83b3647}.support-workspace{overflow:hidden}.support-workspace-header{border-bottom:1px solid var(--support-border);padding:14px 16px}.support-toolbar{align-items:center;gap:8px;min-width:0;display:flex}.support-search-box{align-items:center;gap:8px;min-width:260px;height:38px;padding:0 11px;display:flex}.support-search-box i{color:var(--support-faint);font-size:12px}.support-search-box input{width:100%;color:var(--support-text);background:0 0;border:0;outline:0;font-size:12px}.support-filter-select{min-width:120px;height:38px;padding:0 30px 0 10px}.support-table-wrap{overflow-x:auto}.support-ticket-table{border-collapse:collapse;table-layout:fixed;width:100%}.support-ticket-table th{color:var(--support-muted);border-bottom:1px solid var(--support-border);text-align:left;font:700 9px/1 var(--support-mono);letter-spacing:.07em;text-transform:uppercase;background:#f6f3ed;padding:9px 12px}.support-ticket-table th:first-child{width:48%}.support-ticket-table th:nth-child(2),.support-ticket-table th:nth-child(3){width:14%}.support-ticket-table th:nth-child(4){width:20%}.support-ticket-table th:last-child{width:4%}.support-ticket-row{cursor:pointer;transition:background .14s,box-shadow .14s}.support-ticket-row td{border-bottom:1px solid var(--support-border);color:var(--support-muted);vertical-align:middle;padding:11px 12px;font-size:12px}.support-ticket-row:hover,.support-ticket-row.is-selected{background:var(--support-green-soft)}.support-ticket-row.is-selected{box-shadow:inset 3px 0 0 var(--support-green)}.support-ticket-row td:first-child strong{color:var(--support-text);white-space:nowrap;text-overflow:ellipsis;font-size:12px;line-height:1.3;display:block;overflow:hidden}.support-ticket-row td:first-child span{color:var(--support-faint);font:10px/1.2 var(--support-mono);margin-top:3px;display:block}.support-ticket-row td:last-child{color:var(--support-faint);text-align:right}.support-badge{min-height:23px;font:700 9px/1 var(--support-mono);text-transform:uppercase;letter-spacing:.04em;border-radius:999px;align-items:center;padding:0 8px;display:inline-flex}.status-open,.priority-normal{color:var(--support-green);background:var(--support-green-soft)}.status-pending,.priority-low{color:#8a6a20;background:var(--support-gold-soft)}.status-closed{color:#677068;background:#eef0ed}.priority-high,.priority-urgent{color:var(--support-red);background:var(--support-red-soft)}.priority-urgent{box-shadow:inset 0 0 0 1px #b83b3640}.support-detail-panel{box-shadow:none;border-radius:7px;margin:12px;overflow:hidden}.support-detail-header{border-bottom:1px solid var(--support-border);align-items:flex-start;padding:14px}.support-detail-header h3{font-family:var(--support-mono);text-transform:uppercase;letter-spacing:.01em;font-size:16px}.support-detail-meta-line{color:var(--support-muted);flex-wrap:wrap;gap:10px 16px;margin-top:7px;font-size:11px;display:flex}.support-detail-meta-line strong{color:var(--support-text)}.support-detail-badges{flex-shrink:0;gap:6px;display:flex}.support-ticket-summary{color:var(--support-muted);background:var(--support-surface-soft);border-bottom:1px solid var(--support-border);padding:12px 14px;font-size:12px;line-height:1.55}.support-thread{padding:13px 14px 8px}.support-thread-heading{margin-bottom:9px}.support-thread-heading h4{font:750 12px/1 var(--support-mono);text-transform:uppercase;margin:0}.support-thread-heading span{color:var(--support-faint);font-size:11px}.support-message-list{gap:7px;max-height:300px;padding-right:2px;display:grid;overflow-y:auto}.support-message{border:1px solid var(--support-border);background:var(--support-surface);border-radius:6px;padding:10px 12px}.support-message.is-staff{background:var(--support-gold-soft);border-left:3px solid var(--support-gold)}.support-message header{justify-content:space-between;align-items:center;gap:12px;display:flex}.support-message header div{align-items:center;gap:7px;display:flex}.support-message header strong{color:var(--support-text);font-size:11px}.support-message header span{color:#8a6a20;font:700 8px/1 var(--support-mono);text-transform:uppercase}.support-message time{color:var(--support-faint);font:9px/1 var(--support-mono)}.support-message p{color:var(--support-muted);margin:7px 0 0;font-size:12px;line-height:1.5}.support-reply-bar{grid-template-columns:minmax(0,1fr) auto auto;gap:8px;padding:10px 14px 14px;display:grid}.support-reply-bar textarea{resize:vertical;min-height:44px;padding:10px 11px}.support-closed-notice{color:#677068;background:#eef0ed;border-radius:6px;margin:10px 14px 14px;padding:10px 12px;font-size:12px}.support-status{border:1px solid #0000;border-radius:6px;margin-bottom:12px;padding:10px 13px;font-size:12px}.support-status.is-info{color:#765b1f;background:var(--support-gold-soft);border-color:#c59b3d38}.support-status.is-success{color:var(--support-green);background:var(--support-green-soft);border-color:#1f6b452e}.support-status.is-error{color:var(--support-red);background:var(--support-red-soft);border-color:#b83b362e}.support-empty-state,.support-detail-empty,.support-loading-state,.support-error-state,.support-thread-empty{text-align:center;color:var(--support-muted);flex-direction:column;justify-content:center;align-items:center;display:flex}.support-empty-state{min-height:180px;padding:24px}.support-detail-empty{flex-direction:row;gap:12px;min-height:220px}.support-empty-state i,.support-detail-empty i,.support-loading-state i,.support-error-state i{color:var(--support-gold);font-size:24px}.support-empty-state h3,.support-detail-empty h3,.support-error-state h2{margin:8px 0 3px}.support-empty-state p,.support-detail-empty p,.support-error-state p{margin:0;font-size:12px}.support-loading-state,.support-error-state{background:var(--support-bg);gap:10px;min-height:420px}.support-thread-empty{border:1px dashed var(--support-border);border-radius:6px;min-height:80px}@media (width<=1180px){.support-command-header{grid-template-columns:1fr}.support-command-grid{grid-template-columns:minmax(300px,.85fr) minmax(540px,1.4fr)}.support-stat-grid{grid-template-columns:repeat(4,1fr)}}@media (width<=980px){.support-command-grid{grid-template-columns:1fr}.support-create-panel{position:static}.support-workspace-header{flex-direction:column;align-items:flex-start}.support-toolbar{width:100%}.support-search-box{flex:1}}@media (width<=720px){.support-shell{padding:10px}.support-stat-grid{grid-template-columns:repeat(2,1fr)}.support-field-row,.support-reply-bar{grid-template-columns:1fr}.support-toolbar{grid-template-columns:1fr 1fr;display:grid}.support-search-box{grid-column:1/-1;min-width:0}.support-ticket-table th:nth-child(3),.support-ticket-table td:nth-child(3),.support-ticket-table th:nth-child(4),.support-ticket-table td:nth-child(4){display:none}.support-ticket-table th:first-child{width:65%}.support-ticket-table th:nth-child(2){width:30%}.support-ticket-table th:last-child{width:5%}.support-detail-header{flex-direction:column}}@media (width<=440px){.support-stat-grid,.support-toolbar{grid-template-columns:1fr}.support-search-box{grid-column:auto}.support-filter-select{width:100%}}.support-case-facts{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.support-case-facts span{border:1px solid var(--support-border);color:var(--support-muted);border-radius:12px;gap:4px;padding:11px 12px;font-size:.76rem;display:grid}.support-case-facts strong{color:var(--support-text);text-transform:capitalize;font-size:.86rem}.support-timeline-event{border-bottom:1px solid var(--support-border);grid-template-columns:12px 1fr;gap:10px;padding:10px 0;display:grid}.support-timeline-event>i{color:var(--support-green);margin-top:5px;font-size:.55rem}.support-timeline-event>div{justify-content:space-between;gap:12px;display:flex}.support-timeline-event time{color:var(--support-muted);font-size:.76rem}.support-attachments,.ticket-message-attachments{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.support-attachments a,.ticket-message-attachments span{border:1px solid var(--support-border);color:var(--support-green);background:var(--support-green-soft);border-radius:999px;align-items:center;gap:6px;padding:6px 9px;font-size:.78rem;font-weight:750;display:inline-flex}.support-attachment-control{cursor:pointer;justify-content:center;align-items:center;min-width:44px;display:inline-flex}.support-attachment-control input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=760px){.support-case-facts{grid-template-columns:1fr 1fr}}:root{--acct-bg:#f5f3ef;--acct-card:#fff;--acct-line:#e2ddd4;--acct-line-strong:#d5cfc4;--acct-text:#1a1a1a;--acct-muted:#8a8578;--acct-faint:#c4beb3;--acct-green:#1f6b45;--acct-green-hover:#174f34;--acct-green-soft:#1f6b450f;--acct-gold:#c9a44c;--acct-gold-soft:#c9a44c0f;--acct-shadow:0 4px 12px #0000000f;--acct-font:"SF Mono", "JetBrains Mono", monospace;--acct-danger:#b91c1c;--acct-danger-soft:#b91c1c0f}.account-management-grid{gap:12px;padding:0 2px;display:grid}.account-panel{border:1px solid var(--acct-line);background:var(--acct-card);box-shadow:var(--acct-shadow);border-radius:4px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 18px;transition:all .15s;display:grid}.account-panel:hover{border-color:var(--acct-gold-border)}.account-panel__icon{background:var(--acct-green-soft);width:38px;height:38px;color:var(--acct-green);border:1px solid #1f6b4514;border-radius:4px;flex-shrink:0;place-items:center;font-size:15px;transition:all .15s;display:grid}.account-panel:hover .account-panel__icon{border-color:var(--acct-gold-border)}.account-panel h3{color:var(--acct-text);font-size:13px;font-weight:600;font-family:var(--acct-font);text-transform:uppercase;letter-spacing:.3px;margin:0 0 3px}.account-panel p{color:var(--acct-muted);font-size:12px;line-height:1.5;font-family:var(--acct-font);margin:0}.account-panel p strong{color:var(--acct-text)}.account-panel__body{min-width:0}.account-status{text-transform:uppercase;letter-spacing:.3px;font-size:9px;font-weight:600;font-family:var(--acct-font);border:1px solid #0000;border-radius:4px;flex-shrink:0;padding:3px 12px}.account-status--active{background:var(--acct-green-soft);color:var(--acct-green);border-color:#1f6b4526}.account-status--scheduled_for_deletion{background:var(--acct-danger-soft);color:var(--acct-danger);border-color:#b91c1c26}.account-status--pending{color:#b45309;background:#e8a53a0f;border-color:#e8a53a26}.account-panel--danger{background:var(--acct-danger-soft);border-color:#b91c1c26}.account-panel--danger:hover{border-color:#b91c1c40}.account-panel--danger .account-panel__icon{color:var(--acct-danger);background:#b91c1c14;border-color:#b91c1c1a}.account-deletion-notice{background:var(--acct-danger-soft);color:var(--acct-danger);border-left:3px solid var(--acct-danger);font-family:var(--acct-font);border-radius:4px;margin-top:8px;padding:8px 12px;font-size:11px;line-height:1.5}.account-deletion-notice strong{color:var(--acct-danger)}.btn-danger{border:1px solid var(--acct-danger);background:var(--acct-danger);color:#fff;min-height:34px;font-family:var(--acct-font);text-transform:uppercase;letter-spacing:.3px;cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:6px;padding:0 16px;font-size:10px;font-weight:500;transition:all .15s;display:inline-flex}.btn-danger:hover:not(:disabled){background:#7f1d1d;border-color:#7f1d1d;transform:translateY(-1px);box-shadow:0 4px 12px #b91c1c33}.btn-danger:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.account-close-modal .modal-content{border:1px solid var(--acct-line);border-radius:4px;width:min(540px,100vw - 32px);box-shadow:0 16px 48px #0000001f}.account-warning-box{border:1px solid #b91c1c26;border-left:3px solid var(--acct-danger);background:var(--acct-danger-soft);border-radius:4px;margin-bottom:14px;padding:10px 14px}.account-warning-box strong{color:var(--acct-danger);font-family:var(--acct-font)}.account-form-group{gap:4px;margin-bottom:12px;display:grid}.account-form-group label{text-transform:uppercase;letter-spacing:.3px;color:var(--acct-text);font-size:10px;font-weight:600;font-family:var(--acct-font)}.account-form-group input,.account-form-group select{border:1px solid var(--acct-line);background:var(--acct-card);width:100%;min-height:38px;color:var(--acct-text);font-family:var(--acct-font);border-radius:4px;padding:8px 12px;font-size:13px;transition:all .15s}.account-form-group input:focus,.account-form-group select:focus{border-color:var(--acct-gold);outline:none;box-shadow:0 0 0 3px #c9a44c1f}.account-form-group input::placeholder{color:var(--acct-faint)}.account-form-group select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%238a8578'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:32px}.account-form-help{color:var(--acct-muted);font-size:11px;font-family:var(--acct-font);margin:0}.account-form-error{color:var(--acct-danger);font-weight:600;font-family:var(--acct-font);margin:10px 0 0;font-size:12px}.account-deactivated-screen{z-index:100000;background:radial-gradient(circle at top,#0a3b28,#031a12 70%);place-items:center;padding:24px;display:grid;position:fixed;inset:0}.account-deactivated-card{text-align:center;background:#fffffff7;border:1px solid #ffffff14;border-radius:4px;width:min(520px,100%);padding:clamp(20px,4vw,36px);box-shadow:0 16px 48px #00000059}.account-deactivated-card__icon{width:56px;height:56px;color:var(--acct-gold);background:#c9a44c1a;border:1px solid #c9a44c26;border-radius:4px;place-items:center;margin:0 auto 12px;font-size:22px;display:grid}.account-deactivated-card .eyebrow{color:var(--acct-gold);letter-spacing:.5px;text-transform:uppercase;font-size:9px;font-weight:600;font-family:var(--acct-font);margin-bottom:6px}.account-deactivated-card h1{font-size:20px;font-weight:700;font-family:var(--acct-font);text-transform:uppercase;letter-spacing:-.3px;color:var(--acct-text);margin:0 0 8px}.account-deactivated-card p{color:var(--acct-muted);line-height:1.6;font-family:var(--acct-font);font-size:13px}.account-deactivated-card p strong{color:var(--acct-text)}.account-deactivated-actions{justify-content:center;gap:10px;margin-top:18px;display:flex}.account-deactivated-actions .btn-primary{border:1px solid var(--acct-green);background:var(--acct-green);color:#fff;min-height:34px;font-family:var(--acct-font);text-transform:uppercase;letter-spacing:.3px;cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:6px;padding:0 20px;font-size:10px;font-weight:500;transition:all .15s;display:inline-flex}.account-deactivated-actions .btn-primary:hover{background:var(--acct-green-hover);border-color:var(--acct-green-hover);transform:translateY(-1px);box-shadow:0 4px 12px #1f6b4533}.account-deactivated-actions .btn-secondary{border:1px solid var(--acct-line);min-height:34px;color:var(--acct-text);font-family:var(--acct-font);text-transform:uppercase;letter-spacing:.3px;cursor:pointer;background:0 0;border-radius:4px;justify-content:center;align-items:center;gap:6px;padding:0 20px;font-size:10px;font-weight:500;transition:all .15s;display:inline-flex}.account-deactivated-actions .btn-secondary:hover{background:var(--acct-gold-soft);border-color:var(--acct-gold-border);transform:translateY(-1px)}.account-deactivated-actions .btn-primary:focus-visible,.account-deactivated-actions .btn-secondary:focus-visible{outline:2px solid var(--acct-gold);outline-offset:2px}@media (width<=680px){.account-panel{grid-template-columns:auto 1fr;gap:10px;padding:12px 14px}.account-panel>:last-child{grid-column:1/-1;width:100%}.account-panel h3{font-size:12px}.account-panel p{font-size:11px}.account-deactivated-actions{flex-direction:column}.account-deactivated-actions .btn-primary,.account-deactivated-actions .btn-secondary{justify-content:center;width:100%}.account-deactivated-card{padding:20px 16px}.account-deactivated-card h1{font-size:18px}.account-deactivated-card__icon{width:48px;height:48px;font-size:20px}.account-form-group input,.account-form-group select{min-height:34px;font-size:12px}.btn-danger{justify-content:center;width:100%;min-height:32px;font-size:9px}}@media (width<=480px){.account-panel{text-align:center;grid-template-columns:1fr;padding:10px 12px}.account-panel__icon{margin:0 auto}.account-panel>:last-child{grid-column:1;width:100%}.account-status{align-self:center}.account-deactivated-card{padding:16px 12px}.account-deactivated-card h1{font-size:16px}.account-deactivated-card p{font-size:12px}.account-form-group{margin-bottom:10px}.account-form-group input,.account-form-group select{min-height:32px;padding:6px 10px;font-size:11px}.account-warning-box{padding:8px 10px;font-size:11px}.account-deletion-notice{padding:6px 10px;font-size:10px}.account-deactivated-actions .btn-primary,.account-deactivated-actions .btn-secondary{min-height:32px;padding:0 16px;font-size:9px}}.btn-danger:focus-visible,.account-form-group input:focus-visible,.account-form-group select:focus-visible{outline:2px solid var(--acct-gold);outline-offset:2px}@keyframes acctSlideIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.account-panel{animation:.2s acctSlideIn}.account-panel:nth-child(2){animation-delay:50ms}.account-panel:nth-child(3){animation-delay:.1s}@media print{.account-management-grid{gap:10px}.account-panel{break-inside:avoid;page-break-inside:avoid;box-shadow:none!important;border:1px solid #000!important}.btn-danger,.account-deactivated-actions{display:none!important}.account-deactivated-screen{background:#fff!important;position:static!important}.account-deactivated-card{box-shadow:none!important;border:1px solid #000!important}.account-status{border:1px solid #000!important}}.messages-page{gap:1rem;min-height:calc(100vh - 110px);padding:1.25rem;display:grid}.messages-header,.messages-thread-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.messages-header h1,.messages-thread-header h2{margin:0}.messages-header p{color:var(--text-muted,#64748b);margin:.25rem 0 0}.messages-kicker{letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:800;color:var(--primary,#2563eb)!important}.messages-warning{color:#92400e;background:#fffbeb;border:1px solid #f59e0b;border-radius:12px;align-items:center;gap:.7rem;padding:.85rem 1rem;display:flex}.messages-layout{border:1px solid var(--border-color,#e2e8f0);background:var(--surface,#fff);border-radius:16px;grid-template-columns:minmax(240px,320px) 1fr;min-height:650px;display:grid;overflow:hidden}.messages-sidebar{border-right:1px solid var(--border-color,#e2e8f0);padding:1rem}.messages-search{border:1px solid var(--border-color,#e2e8f0);border-radius:10px;align-items:center;gap:.5rem;padding:.65rem .75rem;display:flex}.messages-search input{background:0 0;border:0;outline:0;width:100%}.messages-conversation-list{gap:.35rem;margin-top:.75rem;display:grid}.messages-conversation{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:.75rem;width:100%;padding:.75rem;display:flex}.messages-conversation:hover,.messages-conversation.is-selected{background:var(--surface-soft,#eff6ff)}.messages-conversation>span:last-child{gap:.2rem;min-width:0;display:grid}.messages-conversation strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.messages-conversation small{color:var(--text-muted,#64748b)}.messages-avatar{color:#1d4ed8;background:#dbeafe;border-radius:50%;flex:0 0 40px;place-items:center;width:40px;height:40px;font-weight:800;display:inline-grid}.messages-thread{grid-template-rows:auto 1fr auto;min-width:0;display:grid}.messages-thread-header{border-bottom:1px solid var(--border-color,#e2e8f0);padding:1rem 1.25rem}.messages-thread-header span{color:var(--text-muted,#64748b);font-size:.85rem}.messages-feed{flex-direction:column;gap:.75rem;padding:1.25rem;display:flex;overflow-y:auto}.message-bubble{background:#f1f5f9;border-radius:14px 14px 14px 3px;align-self:flex-start;max-width:min(75%,700px);padding:.75rem 1rem}.message-bubble.is-own{background:#dbeafe;border-radius:14px 14px 3px;align-self:flex-end}.message-meta{align-items:center;gap:.65rem;font-size:.75rem;display:flex}.message-meta time{color:var(--text-muted,#64748b)}.message-bubble p{white-space:pre-wrap;overflow-wrap:anywhere;margin:.35rem 0}.message-actions{gap:.6rem;display:flex}.message-actions button{color:#64748b;cursor:pointer;background:0 0;border:0;padding:0;font-size:.72rem}.messages-composer{border-top:1px solid var(--border-color,#e2e8f0);gap:.75rem;padding:1rem;display:flex}.messages-composer textarea{resize:vertical;border:1px solid var(--border-color,#cbd5e1);border-radius:10px;flex:1;min-height:48px;max-height:160px;padding:.75rem}.messages-empty,.messages-thread-empty{min-height:180px;color:var(--text-muted,#64748b);text-align:center;align-content:center;place-items:center;gap:.5rem;display:grid}.messages-thread-empty{min-height:500px}.messages-picker-help{color:var(--text-muted,#64748b);margin:.45rem 0 .85rem;font-size:.85rem}.messages-group-toggle{align-items:center;gap:.55rem;margin:.8rem 0;font-weight:700;display:flex}#messageGroupTitleField{margin-bottom:.8rem}.messages-user-results{gap:.4rem;max-height:340px;display:grid;overflow-y:auto}.messages-user-result{border:1px solid var(--border-color,#e2e8f0);background:var(--surface,#fff);text-align:left;cursor:pointer;border-radius:10px;align-items:center;gap:.75rem;width:100%;padding:.75rem;display:flex}.messages-user-result:hover,.messages-user-result.is-selected{border-color:var(--primary,#2563eb);background:var(--surface-soft,#eff6ff)}.messages-user-result>span:last-child{gap:.15rem;display:grid}.messages-user-result small{color:var(--text-muted,#64748b)}.messages-picker-state{color:var(--text-muted,#64748b);text-align:center;padding:1.5rem .75rem}@media (width<=760px){.messages-page{padding:.75rem}.messages-layout{grid-template-columns:1fr}.messages-sidebar{border-right:0;border-bottom:1px solid var(--border-color,#e2e8f0);max-height:260px;overflow:auto}.message-bubble{max-width:90%}}.message-reports-toolbar{justify-content:space-between;align-items:end;gap:1rem;margin:1rem 0;display:flex}.message-reports-toolbar label{gap:.35rem;display:grid}.message-reports-toolbar select{border:1px solid var(--border-color,#cbd5e1);border-radius:8px;min-width:180px;padding:.6rem}.message-reports-layout{border:1px solid var(--border-color,#e2e8f0);border-radius:14px;grid-template-columns:minmax(280px,.9fr) minmax(360px,1.4fr);min-height:560px;display:grid;overflow:hidden}.message-reports-list{border-right:1px solid var(--border-color,#e2e8f0);max-height:700px;overflow-y:auto}.message-report-row{border:0;border-bottom:1px solid var(--border-color,#e2e8f0);text-align:left;cursor:pointer;background:0 0;gap:.4rem;width:100%;padding:1rem;display:grid}.message-report-row:hover,.message-report-row.is-selected{background:var(--surface-soft,#eff6ff)}.message-report-row p{margin:0}.message-report-row small{color:var(--text-muted,#64748b)}.message-report-state{text-transform:uppercase;background:#e2e8f0;border-radius:999px;justify-self:start;padding:.2rem .5rem;font-size:.7rem;font-weight:800}.message-report-state.is-open{color:#991b1b;background:#fee2e2}.message-report-state.is-reviewing{color:#92400e;background:#fef3c7}.message-report-state.is-resolved{color:#166534;background:#dcfce7}.message-report-detail{padding:1.25rem}.message-report-detail header{justify-content:space-between;gap:1rem;display:flex}.message-report-detail h3{margin:.5rem 0}.message-report-detail dl{gap:.65rem;display:grid}.message-report-detail dl div{grid-template-columns:90px 1fr;gap:.75rem;display:grid}.message-report-detail dt{color:var(--text-muted,#64748b);font-weight:700}.message-report-detail blockquote{border-left:4px solid var(--primary,#2563eb);white-space:pre-wrap;overflow-wrap:anywhere;background:#f8fafc;margin:1.25rem 0;padding:1rem}.message-report-detail footer{flex-wrap:wrap;justify-content:flex-end;gap:.6rem;margin-top:1rem;display:flex}.message-report-resolution{background:#f1f5f9;border-radius:10px;padding:1rem}@media (width<=900px){.message-reports-layout{grid-template-columns:1fr}.message-reports-list{border-right:0;border-bottom:1px solid var(--border-color,#e2e8f0);max-height:330px}}:root{--bg:#f6fbf7;--bg-2:#eef6f0;--panel:#f6fbf7;--card:#fff;--card-2:#f7faf8;--text:#0f172a;--muted:#475569;--brand:#0a2415;--brand-2:#123a22;--accent:#d6b25e;--danger:#b91c1c;--success:#166534;--warning:#a16207;--border:#0f172a1f;--shadow:0 14px 38px #0206171a;--radius:12px;--container-max-width:1400px;--color-bg-primary:var(--bg);--color-bg-secondary:var(--bg-2);--color-bg-surface:var(--card);--color-border:#0f172a24;--color-border-light:#0f172a14;--color-border-accent:#0a241540;--color-text-primary:var(--text);--color-text-secondary:#0f172ab8;--color-text-tertiary:#0f172a85;--color-primary:var(--brand);--color-primary-light:#0a24151f;--color-primary-dark:#06160d;--font-serif:Georgia, "Times New Roman", Times, serif;--text-xs:12px;--text-sm:13px;--text-md:14px;--text-lg:18px;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--border-color:var(--color-border);--card-bg:var(--color-bg-surface);--text-primary:var(--color-text-primary);--text-secondary:var(--color-text-secondary);--text-tertiary:var(--color-text-tertiary);--primary:var(--color-primary);--primary-light:var(--color-primary-light)}body{color:var(--text);background:radial-gradient(1200px 600px at 18% -10%,#0a24151a,#0000 55%),radial-gradient(900px 500px at 90% 10%,#d6b25e1a,#0000 58%),linear-gradient(#f8fcf9 0%,#eff6f1 55%,#f6fbf7 100%);margin:0;font:400 14px/1.45 system-ui,Segoe UI,Inter,Arial}.sidebar{color:#ffffffeb;background:linear-gradient(#0a2415fa 0%,#06160dfa 100%);border-right:1px solid #ffffff1a;height:100vh;padding:18px 14px;position:sticky;top:0;overflow:auto}.sidebar a,.sidebar button,.sidebar .nav-link{color:#ffffffe0}.sidebar a:hover,.sidebar button:hover,.sidebar .nav-link:hover{color:#fff}.card{background:linear-gradient(180deg, var(--card), var(--card-2));border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;grid-column:span 4;min-width:0;display:flex;overflow:hidden}.notes-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.note-item{border:1px solid var(--color-border-light);background:#fff;border-radius:12px;grid-template-columns:1fr auto;gap:12px;padding:12px;display:grid}.note-title{font-weight:600}.note-content{color:var(--color-text-secondary)}.note-actions .btn-edit,.note-actions .btn-delete{color:var(--color-text-primary);background:#0a24150f;border:1px solid #0a241529;border-radius:10px;padding:7px}.note-actions .btn-edit:hover,.note-actions .btn-delete:hover{border-color:#0a24154d}.task-item{border:1px solid var(--color-border-light);background:#fff;border-radius:12px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px;padding:10px;display:grid}.task-checkbox{background:#0a24150f;border:1px solid #0a24152e;border-radius:7px;place-items:center;width:22px;height:22px;display:grid}.task-checkbox.checked{background:linear-gradient(135deg,#166534f2,#22c55ed9);border-color:#16653473}.task-text.completed{opacity:.6;text-decoration:line-through}.mini-input,.neo-input,.neo-select,.add-input,.auth-input,.modal-input,textarea,input,select{width:100%;color:var(--color-text-primary);border:1px solid var(--color-border-light);background:#fff;border-radius:10px;outline:none;padding:10px 12px}.mini-input:focus,.neo-input:focus,.neo-select:focus,.add-input:focus,.auth-input:focus,.modal-input:focus,textarea:focus,input:focus,select:focus{border-color:#0a241566;box-shadow:0 0 0 3px #0a24151f}.btn-primary,.btn-secondary,.card-action,.add-button,.neo-btn{cursor:pointer;border:0;border-radius:10px;padding:10px 14px;transition:transform 80ms,filter .15s,box-shadow .15s;box-shadow:0 10px 24px #0206171a}.btn-primary,.add-button{background:linear-gradient(180deg, var(--brand), var(--color-primary-dark));color:#fff}.btn-primary:hover,.add-button:hover{filter:brightness(1.05)}.btn-primary:active,.add-button:active{transform:translateY(1px)}.btn-secondary{color:var(--color-text-primary);border:1px solid var(--color-border);box-shadow:none;background:#fff}.btn-secondary:hover{background:#0a24150a;border-color:#0a241538}.neo-btn{color:var(--color-text-primary);box-shadow:none;background:#d6b25e24;border:1px solid #d6b25e52}.neo-btn.warn{color:#7f1d1d;background:#b91c1c1a;border-color:#b91c1c40}.note-card{border:1px solid var(--border-color);background:var(--card-bg);cursor:pointer;border-radius:12px;padding:12px;transition:transform .18s,box-shadow .18s,border-color .18s}.note-card:hover{border-color:#0a241538;transform:translateY(-2px);box-shadow:0 14px 28px #0206171f}.note-card-head{justify-content:space-between;align-items:flex-start;margin-bottom:8px;display:flex}.note-title{color:var(--text-primary);flex:1;font-size:16px;font-weight:650}.note-tag{color:var(--primary);background:#0a24151a;border:1px solid #0a24152e;border-radius:999px;margin-left:8px;padding:3px 9px;font-size:12px}.note-body{color:var(--text-secondary);margin-bottom:8px;font-size:14px;line-height:1.5}.note-date{color:var(--text-tertiary);text-align:right;font-size:12px}.stats-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.stat-card{border:1px solid var(--color-border-light);background:#fff;border-radius:12px;padding:12px}.stat-icon{opacity:.9;font-size:18px}.stat-value{margin:6px 0;font-size:22px;font-weight:750}.stat-label{color:var(--muted);font-size:12px}@media (width<=900px){.notes-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=768px){.stats-grid{grid-template-columns:1fr}}:root{--deep-bg:var(--color-bg-primary,#f6fbf7);--deep-card:var(--color-bg-surface,#fff);--deep-ink:var(--color-text-primary,#0f172a);--deep-ink-muted:var(--color-text-secondary,#0f172ab8);--deep-grid:var(--color-border,#0f172a24);--deep-grid-soft:var(--color-border-light,#0f172a14);--deep-accent:var(--color-primary,#0a2415);--deep-accent-2:#0a2415b3;--google:#16a34a;--shadow:0 14px 32px #0206171f;--surface:var(--deep-card);--border:var(--deep-grid)}.card-schedule{background:var(--deep-card);color:var(--deep-ink);border:1px solid var(--deep-grid);box-shadow:var(--shadow);border-radius:12px;overflow:hidden}.card-schedule .card-header{border-bottom:1px solid var(--deep-grid);background:linear-gradient(#0a24151a,#0a241500);justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.card-schedule .card-title{letter-spacing:.2px;font-weight:700}.schedule-toolbar{gap:8px;display:flex}.schedule-toolbar .btn{color:var(--deep-ink);cursor:pointer;background:#0a241514;border:1px solid #0a241529;border-radius:10px;padding:6px 10px;font-size:12px}.schedule-toolbar .btn:hover{border-color:#0a241552}.schedule-table{border-collapse:separate;border-spacing:0;table-layout:fixed;background:var(--deep-card);width:100%;color:var(--deep-ink);border:1px solid var(--deep-grid);border-radius:12px;overflow:hidden}.schedule-table thead th{color:var(--deep-ink);text-transform:uppercase;letter-spacing:.4px;border-bottom:1px solid var(--deep-grid);z-index:2;background:#0a24150f;padding:10px 8px;font-size:12px;font-weight:650;position:sticky;top:0}.schedule-table th:first-child,.schedule-table td:first-child{width:80px}.schedule-table tbody td,.schedule-table tbody th{border-bottom:1px solid var(--deep-grid-soft);border-right:1px solid var(--deep-grid-soft);vertical-align:top;padding:8px}.schedule-table tbody td:last-child,.schedule-table thead th:last-child{border-right:none}.time-group-header td{color:var(--deep-ink-muted);border-top:1px solid var(--deep-grid);border-bottom:1px solid var(--deep-grid);background:#0a24150f}.time-group-label{text-transform:uppercase;letter-spacing:.4px;font-size:12px;font-weight:750}.time-slot{color:var(--deep-ink-muted);font-feature-settings:"tnum" 1;white-space:nowrap;font-weight:650}.day-cell{background:linear-gradient(#fffffffa,#f7faf8eb);min-height:60px;transition:background .15s}.day-cell:hover{background:#0a24150d}.is-today{background:linear-gradient(#0a24151a,#0a24150a);outline:1px solid #0a241538}.now-line{position:relative}.now-line:after{content:"";background:var(--deep-accent);opacity:.55;height:2px;position:absolute;top:calc(50% - 1px);left:0;right:0}.event-card{border:1px solid #0a24152e;border-left:3px solid var(--deep-accent);background:#fff;border-radius:11px;max-width:100%;margin:6px 0;padding:8px 10px;overflow:hidden;box-shadow:0 10px 22px #02061714}.event-card .event-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.event-time{color:var(--deep-ink-muted);font-size:12px;font-weight:650}.badge-google{color:var(--google);background:#16a34a14;border:1px solid #16a34a47;border-radius:999px;align-items:center;gap:6px;padding:2px 6px;font-size:11px;display:inline-flex}.event-title{white-space:normal;word-break:break-word;font-size:14px}.event-desc,.event-location,.event-meta{color:var(--deep-ink-muted);white-space:pre-wrap;word-break:break-word;margin-top:4px;font-size:12px}.event-meta{flex-wrap:wrap;gap:8px;display:flex}.event-chip{border:1px solid var(--deep-grid);background:#0a24150d;border-radius:999px;align-items:center;padding:2px 8px;font-size:11px;display:inline-flex}.events-only .time-row td{padding-top:10px;padding-bottom:10px}.schedule-table th:first-child,.schedule-table td:first-child{z-index:1;background:#0a24150a;position:sticky;left:0}#eventsContainer.compact .day-cell{padding:4px}#eventsContainer.compact .event-card{margin:4px 0;padding:7px 9px}.event-actions{gap:6px;margin-top:6px;display:flex}.event-actions .btn-edit,.event-actions .btn-delete{color:var(--deep-ink);cursor:pointer;background:#0a24150f;border:1px solid #0a241529;border-radius:9px;padding:5px 7px}.event-actions .btn-edit:hover{border-color:#0a24154d}.event-actions .btn-delete:hover{border-color:#b91c1c59}.span-fill{background:#0a24151a;border:1px solid #0a241538;border-radius:6px;height:8px;margin:6px 8px}.event-chip{border:1px solid var(--border);background:var(--surface);border-radius:10px;margin:4px 0;padding:8px;font-size:12px}.event-chip.is-complete{opacity:.7;text-decoration:line-through}.event-chip-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.event-chip-title{font-weight:750;line-height:1.2}.event-chip-actions{gap:6px;display:flex}.mini-icon{cursor:pointer;background:0 0;border:1px solid #0a24152e;border-radius:8px;padding:4px 6px}.event-chip-time,.event-chip-loc{opacity:.82;margin-top:4px}.schedule-compact .sched-row td,.schedule-compact .sched-row th{padding-top:6px;padding-bottom:6px}.schedule-table .is-today{background:#0a24150f}#assignmentsContainer{background:var(--deep-card);border:1px solid var(--deep-grid);box-shadow:var(--shadow);color:var(--deep-ink);border-radius:12px;flex-direction:column;gap:10px;min-height:140px;padding:10px;display:flex}.assignment-item{border:1px solid #0a24152e;border-left:3px solid var(--deep-accent);background:#fff;border-radius:12px;grid-template-columns:36px 1fr auto;align-items:start;gap:12px;padding:10px 12px;transition:background .2s,border-color .2s,transform 50ms;display:grid;box-shadow:0 12px 22px #02061714}.assignment-item:hover{background:#0a24150a;border-color:#0a241547}.assignment-check{cursor:pointer;background:#0a24150f;border:2px solid #0a241580;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;margin-top:2px;display:flex}.assignment-check.checked{color:#fff;background:#166534f2;border-color:#16653473}.assignment-check i{font-size:13px}.assignment-main{min-width:0}.assignment-title{letter-spacing:.2px;color:var(--deep-ink);word-break:break-word;margin-bottom:4px;font-weight:800;line-height:1.2}.assignment-main.completed .assignment-title{opacity:.65;text-decoration:line-through}.assignment-meta{color:var(--deep-ink-muted);flex-wrap:wrap;gap:8px;font-size:12px;display:flex}.assignment-meta .sep{opacity:.55}.badge,.chip{background:#0a24150d;border:1px solid #0a24152e;border-radius:999px;align-items:center;gap:6px;padding:2px 8px;font-size:11px;display:inline-flex}.chip-danger{color:#7f1d1d;background:#b91c1c14;border-color:#b91c1c47}.chip-warning{color:#854d0e;background:#a162071a;border-color:#a162074d}.chip-success{color:#166534;background:#1665341a;border-color:#16653447}.assignment-actions{gap:8px;display:flex}.btn-icon{color:var(--deep-ink);cursor:pointer;background:#0a24150f;border:1px solid #0a24152e;border-radius:10px;padding:6px 8px}.btn-icon:hover{border-color:#0a241552}#assignmentsContainer .empty-state{text-align:center;color:var(--deep-ink-muted);flex-direction:column;align-items:center;gap:8px;padding:24px 8px;display:flex}#assignmentsContainer .empty-state i{color:#0a2415bf;font-size:26px}@media (width<=900px){.schedule-table th:nth-child(2),.schedule-table td:nth-child(2),.schedule-table th:nth-child(3),.schedule-table td:nth-child(3),.schedule-table th:nth-child(4),.schedule-table td:nth-child(4){display:none}.schedule-table th:first-child,.schedule-table td:first-child{width:64px}}:root{--font-ui:"Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display:"Source Serif 4", Georgia, "Times New Roman", serif;--font-data:"SFMono-Regular", Consolas, "Liberation Mono", monospace;--font-family-sans:var(--font-ui);--font-family-serif:var(--font-display);--font-family-mono:var(--font-data);--typo-font:var(--font-ui);--table-font:var(--font-ui);--card-font:var(--font-ui);--modal-font:var(--font-ui);--sidebar-font:var(--font-ui);--nav-font:var(--font-ui);--layout-font:var(--font-ui);--grid-font:var(--font-ui);--dash-font:var(--font-ui);--text-xs:13px;--text-sm:14px;--text-base:16px;--text-md:16px;--text-lg:19px;--typo-xs:13px;--typo-sm:14px;--typo-base:16px;--typo-md:16px;--brand:#0a2415;--brand-2:#123a22;--accent:#d6b25e;--bg:#f6fbf7;--bg-2:#eef6f0;--card:#fff;--text:#0f172a;--muted:#475569;--color-primary:var(--brand);--color-accent:var(--accent);--color-bg-primary:var(--bg);--color-bg-secondary:var(--bg-2);--color-bg-surface:var(--card);--color-text-primary:var(--text);--color-text-secondary:var(--muted)}html{font-size:16px}body,button,input,select,textarea{font-family:var(--font-ui)}body{font-size:1rem;line-height:1.55}h1,h2,h3,h4,h5,h6,.page-title,.card-title,.section-title,.modal-title,.auth-title{font-family:var(--font-display);text-transform:none;letter-spacing:-.015em;line-height:1.2}.lead,.lede,.page-subtitle,.auth-subtitle,.hero-subtitle,.section-intro,.preview-text{font-family:var(--font-display);font-size:max(1rem,16px);line-height:1.6}.eyebrow,.overline,.kicker{font-family:var(--font-ui);letter-spacing:.06em;text-transform:uppercase;font-size:13px;font-weight:700}small,.hint,.help-text,.helper-text,.form-text,.field-hint,.meta,.card-meta,.table-meta,.timestamp,.status-text,.badge,.chip,.tag,label,th,td{font-size:max(13px,.8125rem);line-height:1.4}button,input,select,textarea{font-size:max(14px,.875rem);line-height:1.4}code,pre,kbd,samp,.numeric,.tabular,[data-value-type=number]{font-family:var(--font-data);font-variant-numeric:tabular-nums}body{color:var(--text);background:radial-gradient(1200px 600px at 18% -10%,#0a24151a,#0000 55%),radial-gradient(900px 500px at 90% 10%,#d6b25e1a,#0000 58%),linear-gradient(#f8fcf9 0%,#eff6f1 55%,#f6fbf7 100%)}::selection{color:#06160d;background:#d6b25e73}body.theme-dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#08110d;--bg-2:#0d1813;--panel:#0d1813;--card:#122019;--card-2:#17271f;--text:#edf7f0;--muted:#a9bdb0;--border:#e2f6e929;--shadow:0 14px 38px #00000057;--color-bg-primary:var(--bg);--color-bg-secondary:var(--bg-2);--color-bg-surface:var(--card);--color-text-primary:var(--text);--color-text-secondary:#b8c9be;--color-text-tertiary:#8ea298;--color-border:#e2f6e929;--color-border-light:#e2f6e917;--color-border-accent:#d6b25e5c;--color-primary:#79c99a;--color-primary-light:#79c99a24;--color-primary-dark:#b5e4c7;--layout-bg:#08110d;--layout-card:#122019;--layout-line:#e2f6e924;--layout-line-strong:#e2f6e93d;--layout-text:#edf7f0;--layout-muted:#a9bdb0;--layout-faint:#71877a;--layout-green:#79c99a;--layout-green-hover:#98dab1;--layout-green-soft:#79c99a1f;--layout-gold:#dfbf70;--layout-gold-soft:#dfbf701f;--layout-shadow:0 8px 24px #0000004d;--prof-bg:#08110d;--prof-card:#122019;--prof-line:#e2f6e924;--prof-text:#edf7f0;--prof-muted:#a9bdb0;--cal-bg:#08110d;--cal-card:#122019;--cal-line:#e2f6e924;--cal-line-strong:#e2f6e93d;--cal-text:#edf7f0;--cal-muted:#a9bdb0;--cal-faint:#71877a;--cal-green:#79c99a;--cal-green-soft:#79c99a1f;--cal-gold:#dfbf70;--cal-gold-soft:#dfbf701a;--cal-shadow:0 6px 18px #0000004d;--hist-bg:#08110d;--hist-card:#122019;--hist-line:#e2f6e924;--hist-line-strong:#e2f6e93d;--hist-text:#edf7f0;--hist-muted:#a9bdb0;--hist-faint:#71877a;--hist-green:#79c99a;--hist-green-soft:#79c99a1f;--hist-gold:#dfbf70;--hist-gold-soft:#dfbf701a;--hist-shadow:0 6px 18px #0000004d;--grades-bg:#08110d;--grades-card:#122019;--grades-line:#e2f6e924;--grades-line-strong:#e2f6e93d;--grades-text:#edf7f0;--grades-muted:#a9bdb0;--grades-faint:#71877a;--grades-green:#79c99a;--grades-green-hover:#98dab1;--grades-green-soft:#79c99a1f;--grades-gold:#dfbf70;--grades-gold-soft:#dfbf701a;--grades-shadow:0 6px 18px #0000004d;--gpa-bg:#08110d;--gpa-card:#122019;--gpa-line:#e2f6e924;--gpa-line-strong:#e2f6e93d;--gpa-text:#edf7f0;--gpa-muted:#a9bdb0;--gpa-faint:#71877a;--gpa-green:#79c99a;--gpa-green-hover:#98dab1;--gpa-green-soft:#79c99a1f;--gpa-gold:#dfbf70;--gpa-gold-soft:#dfbf701a;--gpa-shadow:0 6px 18px #0000004d;--dash-bg:#08110d;--dash-card:#122019;--dash-line:#e2f6e924;--dash-line-strong:#e2f6e93d;--dash-text:#edf7f0;--dash-muted:#a9bdb0;--dash-faint:#71877a;--dash-green:#79c99a;--dash-green-hover:#98dab1;--dash-green-soft:#79c99a1f;--dash-gold:#dfbf70;--dash-gold-soft:#dfbf701a;--dash-shadow:0 6px 18px #0000004d;--support-bg:#08110d;--support-surface:#122019;--support-surface-soft:#0d1813;--support-border:#e2f6e924;--support-border-strong:#e2f6e93d;--support-text:#edf7f0;--support-muted:#a9bdb0;--support-faint:#71877a;--support-green:#79c99a;--support-green-dark:#98dab1;--support-green-soft:#79c99a1f;--support-gold:#dfbf70;--support-gold-soft:#dfbf701a;--support-shadow:0 8px 24px #0000004d;--nt-bg:#08110d;--nt-card:#122019;--nt-soft:#0d1813;--nt-line:#e2f6e924;--nt-line-strong:#e2f6e93d;--nt-text:#edf7f0;--nt-muted:#a9bdb0;--nt-faint:#71877a;--nt-green:#79c99a;--nt-green-soft:#79c99a1f;--nt-gold:#dfbf70;--nt-gold-soft:#dfbf701a;--nt-shadow:0 6px 18px #0000004d;--cn-app-bg:#08110d;--cn-panel:#122019;--cn-paper:#122019;--cn-line:#e2f6e924;--cn-line-strong:#e2f6e93d;--cn-text:#edf7f0;--cn-muted:#a9bdb0;--cn-faint:#71877a;--cn-green:#79c99a;--cn-green-hover:#98dab1;--cn-green-soft:#79c99a1f;--cn-green-border:#79c99a3d;--cn-gold:#dfbf70;--cn-gold-soft:#dfbf701a;--cn-gold-border:#dfbf703d;--prep-bg:#08110d;--prep-panel:#122019f0;--prep-panel-strong:#122019;--prep-ink:#edf7f0;--prep-muted:#a9bdb0;--prep-line:#e2f6e924;--prep-green:#79c99a;--prep-green-2:#98dab1;--prep-gold:#dfbf70;--prep-gold-soft:#dfbf701f;--prep-shadow:0 14px 38px #00000057;--staff-green:#155f41;--staff-green-strong:#b5e4c7;--staff-green-soft:#79c99a1f;--staff-gold:#dfbf70;--staff-gold-soft:#dfbf701f;--staff-bg:#08110d;--staff-card:#122019;--staff-border:#e2f6e924;--staff-text:#edf7f0;--staff-muted:#a9bdb0;--staff-shadow:0 14px 38px #00000057;--ad-bg:#08110d;--ad-card:#122019;--ad-line:#e2f6e924;--ad-line-strong:#e2f6e93d;--ad-text:#edf7f0;--ad-muted:#a9bdb0;--ad-faint:#71877a;--ad-green:#79c99a;--ad-green-hover:#98dab1;--ad-green-soft:#79c99a1f;--ad-gold:#dfbf70;--ad-gold-soft:#dfbf701f;--ad-shadow:0 14px 38px #00000057;--ticket-bg:#08110d;--ticket-card:#122019;--ticket-line:#e2f6e924;--ticket-line-strong:#e2f6e93d;--ticket-text:#edf7f0;--ticket-muted:#a9bdb0;--ticket-faint:#71877a;--ticket-green:#79c99a;--ticket-green-hover:#98dab1;--ticket-green-soft:#79c99a1f;--ticket-gold:#dfbf70;--ticket-gold-soft:#dfbf701f;--ticket-shadow:0 14px 38px #00000057;--bc-bg:#08110d;--bc-card:#122019;--bc-line:#e2f6e924;--bc-line-strong:#e2f6e93d;--bc-text:#edf7f0;--bc-muted:#a9bdb0;--bc-faint:#71877a;--bc-green:#79c99a;--bc-green-hover:#98dab1;--bc-green-soft:#79c99a1f;--bc-gold:#dfbf70;--bc-gold-soft:#dfbf701f;--bc-shadow:0 14px 38px #00000057;--users-bg:#08110d;--users-card:#122019;--users-line:#e2f6e924;--users-line-strong:#e2f6e93d;--users-text:#edf7f0;--users-muted:#a9bdb0;--users-faint:#71877a;--users-green:#79c99a;--users-green-hover:#98dab1;--users-green-soft:#79c99a1f;--users-gold:#dfbf70;--users-gold-soft:#dfbf701f;--users-shadow:0 14px 38px #00000057;--audit-bg:#08110d;--audit-card:#122019;--audit-line:#e2f6e924;--audit-line-strong:#e2f6e93d;--audit-text:#edf7f0;--audit-muted:#a9bdb0;--audit-faint:#71877a;--audit-green:#79c99a;--audit-green-hover:#98dab1;--audit-green-soft:#79c99a1f;--audit-gold:#dfbf70;--audit-gold-soft:#dfbf701f;--audit-shadow:0 14px 38px #00000057;--roles-bg:#08110d;--roles-card:#122019;--roles-line:#e2f6e924;--roles-line-strong:#e2f6e93d;--roles-text:#edf7f0;--roles-muted:#a9bdb0;--roles-faint:#71877a;--roles-green:#79c99a;--roles-green-hover:#98dab1;--roles-green-soft:#79c99a1f;--roles-gold:#dfbf70;--roles-gold-soft:#dfbf701f;--roles-shadow:0 14px 38px #00000057;--sys-bg:#08110d;--sys-card:#122019;--sys-line:#e2f6e924;--sys-line-strong:#e2f6e93d;--sys-text:#edf7f0;--sys-muted:#a9bdb0;--sys-faint:#71877a;--sys-green:#79c99a;--sys-green-hover:#98dab1;--sys-green-soft:#79c99a1f;--sys-gold:#dfbf70;--sys-gold-soft:#dfbf701f;--sys-shadow:0 14px 38px #00000057;--ops-bg:#08110d;--ops-card:#122019;--ops-line:#e2f6e924;--ops-line-strong:#e2f6e93d;--ops-text:#edf7f0;--ops-muted:#a9bdb0;--ops-faint:#71877a;--ops-green:#79c99a;--ops-green-hover:#98dab1;--ops-green-soft:#79c99a1f;--ops-gold:#dfbf70;--ops-gold-soft:#dfbf701f;--ops-gold-border:#dfbf7047;--ops-shadow:0 14px 38px #00000057;--maint-bg:#08110d;--maint-card:#122019;--maint-line:#e2f6e924;--maint-line-strong:#e2f6e93d;--maint-text:#edf7f0;--maint-muted:#a9bdb0;--maint-faint:#71877a;--maint-green:#79c99a;--maint-gold:#dfbf70;--maint-gold-soft:#dfbf701f;--maint-shadow:0 14px 38px #00000057;--security-bg:#08110d;--security-panel:#122019;--security-panel-soft:#0d1813;--security-border:#e2f6e924;--security-border-strong:#e2f6e93d;--security-text:#edf7f0;--security-muted:#a9bdb0;--security-faint:#71877a;--security-green:#79c99a;--security-green-hover:#98dab1;--security-green-soft:#79c99a1f;--security-gold:#dfbf70;--security-gold-soft:#dfbf701f;--security-shadow:0 14px 38px #00000057;--modal-bg:#08110d;--modal-card:#122019;--modal-line:#e2f6e924;--modal-line-strong:#e2f6e93d;--modal-text:#edf7f0;--modal-muted:#a9bdb0;--modal-faint:#71877a;--modal-green:#79c99a;--modal-green-hover:#98dab1;--modal-green-soft:#79c99a1f;--modal-gold:#79c99a;--modal-gold-soft:#79c99a14;--modal-gold-border:#79c99a3d;--modal-shadow:0 24px 70px #00000075;--surface:#122019;--surface-soft:#17271f;--border-color:#e2f6e924;--text-muted:#a9bdb0;--primary:#79c99a;color:var(--text);background:radial-gradient(1100px 620px at 18% -10%,#3787582e,#0000 58%),radial-gradient(900px 540px at 90% 10%,#d6b25e14,#0000 60%),linear-gradient(#08110d 0%,#0b1510 55%,#08110d 100%)}body.theme-dark #appContent,body.theme-dark #appContent>.container,body.theme-dark #appViewsMount,body.theme-dark main#appMain,body.theme-dark section[data-view]{color:var(--color-text-primary);background-color:var(--color-bg-primary)}body.theme-dark .page-header{border-color:var(--layout-line)}body.theme-dark .page-title,body.theme-dark .card-title,body.theme-dark .academic-card-title,body.theme-dark .section-title,body.theme-dark h1,body.theme-dark h2,body.theme-dark h3,body.theme-dark h4,body.theme-dark label,body.theme-dark th{color:var(--color-text-primary)}body.theme-dark .page-subtitle,body.theme-dark .academic-card-subtitle,body.theme-dark .hint,body.theme-dark .help-text,body.theme-dark small{color:var(--color-text-secondary)}body.theme-dark :where(.card,.academic-card,.profile-card,.account-panel,.chart-container,.modal-content,.notifications-page,.notifications-list-panel,.notification-detail-panel,.messages-page,.support-panel,.settings-content){color:var(--color-text-primary);background-color:var(--color-bg-surface);border-color:var(--color-border)}body.theme-dark :where(input,select,textarea){color:var(--color-text-primary);border-color:var(--color-border);background-color:#0d1813}body.theme-dark :where(input,textarea)::placeholder{color:var(--color-text-tertiary)}body.theme-dark :where(table,thead,tbody,tr,th,td){color:var(--color-text-primary);border-color:var(--color-border-light)}body.theme-dark :where(thead,th){background-color:#17271f}body.theme-dark :where(.empty-state,.settings-nav,.settings-panel,.card-content,.modal-body){color:var(--color-text-primary)}body.theme-dark a:not(.btn-primary):not(.btn-secondary){color:#91d6ad}body.theme-dark ::selection{color:#08110d;background:#dfbf70bf}body.theme-dark .modal{color:var(--modal-text);background:#020805c7}body.theme-dark :where(.modal-content,.modal-header,.modal-body,.modal-footer){color:var(--modal-text);background:var(--modal-card);border-color:var(--modal-line)}body.theme-dark .modal-header,body.theme-dark .modal-footer{background:#0d1813}body.theme-dark :where(.modal-header h2,.modal-header h3,.modal-title,#confirmModalTitle,#promptModalTitle){color:var(--modal-text)}body.theme-dark :where(#confirmModalMessage,#promptModalMessage,.modal-help-text){color:var(--modal-muted)}body.theme-dark :where(.modal-input,.modal input,.modal select,.modal textarea){color:var(--modal-text);border-color:var(--modal-line);background-color:#0b1510}body.theme-dark :where(.close-modal,.modal-close,.modal-footer .btn-secondary,#confirmModalCancel,#promptModalCancel){color:var(--modal-text);border-color:var(--modal-line-strong);background:#17271f}body.theme-dark :where(.modal-footer .btn-primary,#confirmModalOk,#promptModalOk){color:#07110c;background:#79c99a;border-color:#79c99a}body.theme-dark :where(.btn-secondary,.settings-security-card button,.settings-security-heading button){color:var(--color-text-primary);border-color:var(--color-border);background:#17271f}body.theme-dark :where(button,.btn):disabled{color:#8ea298;border-color:var(--color-border-light);opacity:.62;background-color:#17271f}body.theme-dark .app-toast{color:var(--color-text-primary);border-color:var(--color-border)!important;background:#17271f!important;box-shadow:0 14px 38px #0006!important}body.theme-dark .app-toast[data-type=success]{border-left:4px solid #79c99a!important}body.theme-dark .app-toast[data-type=error]{border-left:4px solid #ef7777!important}body.theme-dark .app-toast[data-type=warning],body.theme-dark .app-toast[data-type=warn]{border-left:4px solid #dfbf70!important}body.theme-dark :is(#addAssignmentModal,#editAssignmentModal,#assignmentDetailsModal,#addClassModal,#editClassModal,#classDatesModal) :where(.modal-content,.modal-header,.modal-body,.modal-footer){color:var(--modal-text);background:var(--modal-card);border-color:var(--modal-line)}body.theme-dark :is(#addAssignmentModal,#editAssignmentModal,#assignmentDetailsModal,#addClassModal,#editClassModal,#classDatesModal) .modal-footer{background:#0d1813}body.theme-dark :is(#addAssignmentModal,#editAssignmentModal,#assignmentDetailsModal,#addClassModal,#editClassModal,#classDatesModal) :where(.modal-header h2,.modal-label){color:var(--modal-text)}body.theme-dark :is(#addAssignmentModal,#editAssignmentModal,#assignmentDetailsModal,#addClassModal,#editClassModal,#classDatesModal) :where(.modal-input,.close-modal){color:var(--modal-text);border-color:var(--modal-line);background-color:#0b1510}body.theme-dark :where(.calendar-time-grid-scroll,.calendar-time-corner,.calendar-day-header,.calendar-time-rail,.calendar-day-column,.calendar-week-summary,.calendar-summary-card,.calendar-agenda-day,.calendar-month-day,.calendar-event-details-dialog){color:var(--cal-text);background:var(--cal-card);border-color:var(--cal-line)}body.theme-dark .calendar-day-header.is-today,body.theme-dark .calendar-today-column{background:#dfbf701c}body.theme-dark .calendar-day-hours span{border-color:var(--cal-line)}body.theme-dark .calendar-week-navigation button,body.theme-dark .calendar-view-switcher button,body.theme-dark .calendar-event-details-dialog button{color:var(--cal-text);background:var(--cal-card);border-color:var(--cal-line)}body.theme-dark .calendar-view-switcher button.is-active{color:#07110c;background:var(--cal-green)}body.theme-dark .calendar-all-day button{color:#f5e8bd;background:#dfbf7026}body.theme-dark .calendar-month-day.is-outside,body.theme-dark .calendar-month-event{color:var(--cal-muted);background:#0d1813}body.theme-dark :where(.history-term-block,.history-term-header,.history-table,.history-table tbody,.history-table tr,.history-term-summary,.metric-card,.course-card,.gpa-ops-card,.gpa-whatif-panel,.gpa-empty-state,.focus-card,.insights-card,.risk-card){color:var(--color-text-primary);background:var(--color-bg-surface);border-color:var(--color-border)}body.theme-dark .history-table td,body.theme-dark .history-table th{color:var(--hist-text);background:var(--hist-card)}body.theme-dark section[data-view=assignments],body.theme-dark section[data-view=classAssignments],body.theme-dark section[data-view=classes]{background:var(--color-bg-primary)}body.theme-dark :where(.class-assignments-summary,.assignments-table-header,.class-assignments-summary-card,.assignment-summary-card,.assignments-toolbar,.assignment-deadline-group,.assignment-deadline-group>header,.assignment-row,.empty-state-cmd){color:var(--color-text-primary);background:var(--color-bg-surface);border-color:var(--color-border)}body.theme-dark #assignmentsContainer,body.theme-dark #classAssignmentsContainer{color:var(--color-text-primary);background:var(--color-bg-primary);border-color:var(--color-border);box-shadow:var(--shadow)}body.theme-dark .assignments-workspace{color:var(--color-text-primary);background:0 0}body.theme-dark .assignment-summary-card{color:var(--color-text-secondary);background:var(--color-bg-surface);border-color:var(--color-border);box-shadow:none}body.theme-dark .assignment-summary-card:hover,body.theme-dark .assignment-summary-card.is-active{color:var(--color-text-primary);background:var(--color-bg-secondary);border-color:var(--color-primary);box-shadow:0 6px 18px #0000003d}body.theme-dark .assignment-summary-card strong{color:var(--color-text-primary)}body.theme-dark .assignments-toolbar{background:var(--color-bg-surface);border-color:var(--color-border)}body.theme-dark .assignments-toolbar :where(input,select){color:var(--color-text-primary);background:var(--color-bg-secondary);border-color:var(--color-border)}body.theme-dark .assignments-toolbar :where(input,select):focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}body.theme-dark .assignments-toolbar input::placeholder,body.theme-dark .assignments-search i{color:var(--color-text-tertiary)}body.theme-dark .assignment-deadline-group{background:var(--color-bg-surface);border-color:var(--color-border)}body.theme-dark .assignment-deadline-group>header{background:var(--color-bg-secondary);border-color:var(--color-border)}body.theme-dark .assignment-deadline-group>header h3,body.theme-dark .assignment-title-wrap strong{color:var(--color-text-primary)}body.theme-dark .assignment-deadline-group>header span{color:var(--color-text-secondary);background:var(--color-bg-primary)}body.theme-dark .assignment-deadline-group.group-overdue>header{color:#ffaaa5;background:#d9555026}body.theme-dark .assignment-title-wrap small,body.theme-dark .assignment-meta-cell{color:var(--color-text-secondary)}body.theme-dark .assignment-checkbox{color:var(--color-text-primary);background:var(--color-bg-secondary);border-color:var(--color-border)}body.theme-dark .assignment-checkbox.checked{color:#07110c;background:var(--color-primary);border-color:var(--color-primary)}body.theme-dark .cmd-action-btn{color:var(--color-text-secondary)}body.theme-dark .cmd-action-btn:hover{color:var(--color-text-primary);background:var(--color-bg-secondary);border-color:var(--color-border)}body.theme-dark .empty-state-cmd{color:var(--color-text-secondary);background:var(--color-bg-surface);border:1px solid var(--color-border)}body.theme-dark .empty-state-cmd .cmd-add-btn{color:#07110c;background:var(--color-primary)}body.theme-dark .assignment-row:hover,body.theme-dark .filter-chip:hover{background:var(--color-bg-secondary)}body.theme-dark :where(.assignment-name-cell,.class-assignments-summary-card strong,.empty-state-cmd h3){color:var(--color-text-primary)}body.theme-dark :where(.classes-modal,.classes-modal-header,.classes-modal-body,.classes-tab.active,.class-actions button,.btn-assignments,.btn-graduate,.cn-format-toolbar,.cn-format-select,.cn-editor,.cn-sidebar,.cn-dropdown,.cn-topbar,.cn-lecture-title,.cn-workspace-summary span){color:var(--color-text-primary);background:var(--color-bg-surface);border-color:var(--color-border)}body.theme-dark .classes-header,body.theme-dark .classes-header-left h2,body.theme-dark .classes-header-left .card-title{border-color:var(--color-border);color:var(--color-text-primary)}body.theme-dark .classes-header-left p,body.theme-dark .classes-header-left .page-subtitle{color:var(--color-text-secondary)}body.theme-dark .classes-tabs-wrapper{background:var(--color-bg-secondary);border-color:var(--color-border)}body.theme-dark .classes-tab{color:var(--color-text-secondary)}body.theme-dark .classes-tab:hover{color:var(--color-text-primary);background:#e2f6e90f}body.theme-dark .classes-tab-count{background:var(--color-bg-secondary);color:var(--color-text-secondary)}body.theme-dark .classes-tab.active .classes-tab-count{color:#07110c;background:#08110d4d}body.theme-dark :where(.class-item,.class-history-card){background:var(--color-bg-surface);border-color:var(--color-border)}body.theme-dark .class-item:hover{border-color:var(--color-primary)}body.theme-dark .class-rail{background:var(--color-border)}body.theme-dark :where(.class-title,.class-history-card-header .class-title){color:var(--color-text-primary)}body.theme-dark :where(.class-subtitle,.class-meta-line,.class-meta-line i,.class-progress-strip-text,.class-grade-label){color:var(--color-text-secondary)}body.theme-dark .class-bottom-row.class-bottom-row-compact,body.theme-dark .class-history-actions{border-top-color:var(--color-border)}body.theme-dark .progress-bar{background:#e2f6e91a}body.theme-dark :where(.class-grade-chip,.class-menu-trigger,.class-menu-dropdown){background:var(--color-bg-secondary);border-color:var(--color-border);color:var(--color-text-primary)}body.theme-dark .class-menu-trigger:hover{background:var(--color-bg-primary);color:var(--color-text-primary)}body.theme-dark .class-menu-item{color:var(--color-text-primary)}body.theme-dark .class-menu-item:hover{background:var(--color-bg-primary)}body.theme-dark .class-menu-item-danger{color:#f2a29b}body.theme-dark .class-menu-item-danger:hover{background:#f2a29b1f}body.theme-dark :where(.class-grade-excellent,.class-status-excellent){color:#8fd6ac;background:#79c99a24;border-color:#79c99a4d}body.theme-dark :where(.class-grade-good,.class-status-good){color:#9fd8b0;background:#79c99a1a;border-color:#79c99a38}body.theme-dark :where(.class-grade-watch,.class-status-watch){color:#f0c479;background:#dfbf7024;border-color:#dfbf704d}body.theme-dark :where(.class-grade-risk,.class-status-risk){color:#f2a29b;background:#f2a29b24;border-color:#f2a29b4d}body.theme-dark .class-grade-muted{color:var(--color-text-tertiary);background:var(--color-bg-secondary);border-color:var(--color-border)}body.theme-dark .classes-empty-command,body.theme-dark .classes-empty-icon{background:var(--color-bg-secondary);border-color:var(--color-border);color:var(--color-text-secondary)}body.theme-dark .classes-empty-title{color:var(--color-text-primary)}body.theme-dark .classes-empty-copy{color:var(--color-text-secondary)}body.theme-dark .class-history-warning{color:#f0c479;background:#dfbf701a;border-color:#dfbf7047}body.theme-dark .class-history-status-graduated{color:#8fd6ac;background:#79c99a24}body.theme-dark .class-history-status-deleted{color:#f2a29b;background:#f2a29b24}body.theme-dark :where(.support-shell,.support-command-title,.support-stat-card,.support-create-panel,.support-workspace,.support-detail-panel,.support-message,.support-ticket-summary,.notifications-page-header,.notifications-stats>div,.notification-row,.notification-detail-card,.notification-detail-card dl>div,.messages-layout,.messages-sidebar,.messages-thread,.messages-feed,.messages-thread-header,.messages-composer){color:var(--color-text-primary);background:var(--color-bg-surface);border-color:var(--color-border)}body.theme-dark .support-field :where(input,select,textarea),body.theme-dark .support-search-box,body.theme-dark .support-filter-select{color:var(--support-text);background:var(--support-surface-soft);border-color:var(--support-border)}body.theme-dark .support-ticket-row,body.theme-dark .notification-row{color:var(--color-text-primary);background:var(--color-bg-surface)}body.theme-dark .support-ticket-row:hover,body.theme-dark .notification-row:hover{background:var(--color-bg-secondary)}body.theme-dark .message-bubble{color:var(--color-text-primary);background:#17271f}body.theme-dark .message-bubble.is-own{color:#edf7f0;background:#173b29}body.theme-dark .messages-conversation:hover,body.theme-dark .messages-conversation.is-selected{background:#79c99a21}body.theme-dark.staff-ops-active,body.theme-dark.staff-ops-active .container,body.theme-dark .staff-ops-shell,body.theme-dark .staff-ops-main,body.theme-dark .staff-ops-content,body.theme-dark .staff-page{color:var(--staff-text);background:var(--staff-bg)}body.theme-dark .staff-ops-header{color:var(--staff-text);border-color:var(--staff-border);background:#0d1813f5}body.theme-dark .staff-ops-sidebar{background:linear-gradient(#122019 0%,#0d1813 100%);border-right:1px solid #79c99a2e}body.theme-dark .staff-ops-sidebar-brand{background:#79c99a09;border-bottom-color:#79c99a29}body.theme-dark .staff-ops-brand-mark{color:#98dab1;background:#79c99a24;border:1px solid #79c99a33}body.theme-dark .staff-tab.active{color:#edf7f0;background:#79c99a29;border-color:#79c99a52;box-shadow:inset 3px 0 #79c99a}body.theme-dark .staff-tab.active i{color:#98dab1}body.theme-dark .staff-tab:not(.active):hover{background:#79c99a1a;border-color:#79c99a1f}body.theme-dark :where(.staff-ops-back,.staff-ops-refresh,.staff-ops-menu-toggle,.staff-ops-drawer-close,.staff-status,.staff-row,.staff-denied-card,.overview-stat-card,.overview-card,.overview-audit-item,.overview-action){color:var(--staff-text);background-color:var(--staff-card);border-color:var(--staff-border)}body.theme-dark .overview-audit-item{border-bottom-color:var(--staff-border)}body.theme-dark .overview-action:hover,body.theme-dark .staff-ops-back:hover,body.theme-dark .staff-ops-refresh:hover{color:var(--staff-text);background:var(--staff-green-soft);border-color:var(--staff-border)}body.theme-dark .overview-stat-card strong,body.theme-dark .overview-audit-icon{color:#98dab1}body.theme-dark .overview-stat-card>i{color:#dfbf70;background:var(--staff-gold-soft)}body.theme-dark .staff-ops-role{color:#f1d88f;background:var(--staff-gold-soft)}body.theme-dark :where(.users-stats-grid>*,.users-toolbar,.user-card,.user-details-close,.account-deletion-panel-close,.staff-detail-card,.account-deletion-detail-section,.staff-detail-security,.user-workspace-metric,.user-workspace-restrictions,.user-workspace-activity){color:var(--users-text);background:var(--users-card);border-color:var(--users-line)}body.theme-dark #drawerResetPasswordBtn,body.theme-dark .staff-detail-titlebar .user-details-actions #drawerResetPasswordBtn{color:var(--users-text)!important;background:var(--users-card)!important;border-color:var(--users-line)!important}body.theme-dark :where(.message-reports-layout,.message-reports-list,.message-report-detail,.message-report-row){color:var(--staff-text);background:var(--staff-card);border-color:var(--staff-border)}body.theme-dark .message-report-detail blockquote,body.theme-dark .message-report-resolution,body.theme-dark .message-report-row:hover,body.theme-dark .message-report-row.is-selected{color:var(--staff-text);background:var(--staff-green-soft)}body.theme-dark :where(.user-details-panel,.account-deletion-panel,.user-details-body,.account-deletion-panel-body){color:var(--users-text);background:var(--users-bg)}body.theme-dark .user-details-head,body.theme-dark .account-deletion-panel-head{color:var(--users-text);border-color:var(--users-line);background:#0d1813f5}body.theme-dark :where(.staff-detail-titlebar h1,.staff-detail-card h3,.account-deletion-detail-section h3,.user-workspace-metric span,.user-workspace-metric strong,.staff-detail-access-level small,.staff-security-card dl dt,.staff-security-card dl dd,.user-workspace-restrictions h3,.user-workspace-activity>h3,.staff-detail-card dd,.user-workspace-activity-table article,.user-workspace-activity-table article>span:first-child){color:var(--users-text)}body.theme-dark .staff-detail-card dl>div,body.theme-dark .user-workspace-activity-table article{border-color:var(--users-line)}body.theme-dark .user-workspace-metric>i,body.theme-dark .activity-table-head{color:var(--users-muted);background:var(--users-green-soft)}body.theme-dark.staff-ops-active :where(.btn-secondary,.users-btn-secondary,.ticket-btn,.broadcast-btn){color:var(--staff-text);background:var(--staff-card);border-color:var(--staff-border)}body.theme-dark.staff-ops-active :where(select,option,optgroup){color:var(--staff-text);background-color:#0d1813}body.theme-dark section[data-view=prepcenter]{color:var(--prep-ink);background:radial-gradient(circle at 18% 0%, #dfbf7014, transparent 34%), radial-gradient(circle at 100% 18%, #79c99a17, transparent 32%), var(--prep-bg)}body.theme-dark .compact-prep-header{color:var(--prep-ink);border-color:var(--prep-line);background:#08110de6}body.theme-dark .compact-prep-header .card-title,body.theme-dark .prep-timer h3,body.theme-dark .prep-overview-heading h3,body.theme-dark .prep-panel-head h4,body.theme-dark .prep-goal-head h4,body.theme-dark .session-title,body.theme-dark .stat-value{color:var(--prep-ink)}body.theme-dark .prep-timer{color:var(--prep-ink);background:linear-gradient(180deg, #122019fa, #0d1813f5), var(--prep-panel);border-color:var(--prep-line);box-shadow:var(--prep-shadow)}body.theme-dark :where(.prep-eyebrow,.prep-mini-kicker,.prep-overview-kicker,.session-notes-label,.prepcenter-section .input-label,.prepcenter-section .stat-label,.prepcenter-section .session-time,.prepcenter-section .prep-progress-meta,.prepcenter-section .session-notes p){color:var(--prep-muted)}body.theme-dark .prepcenter-section :where(.neo-input,.neo-select,#studyNotesInput){color:var(--prep-ink);border-color:var(--prep-line);background:#0d1813}body.theme-dark #studyNotesInput{color:var(--prep-ink);caret-color:var(--prep-ink);border-color:var(--prep-line);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background-color:#0d1813}body.theme-dark #studyNotesInput:focus,body.theme-dark #studyNotesInput:focus-visible{background-color:#0d1813;border-color:#79c99a94;box-shadow:0 0 0 4px #79c99a1f}body.theme-dark #studyNotesInput::placeholder{color:#71877a;opacity:1}body.theme-dark .prepcenter-section :where(.neo-input,#studyNotesInput)::placeholder{color:#71877a}body.theme-dark .prepcenter-section :where(.neo-select option,.neo-select optgroup){color:var(--prep-ink);background:#0d1813}body.theme-dark .timer-big{color:var(--prep-ink);background:radial-gradient(circle,#dfbf701f,#122019b8 58%),linear-gradient(135deg,#79c99a14,#dfbf7014);border-color:#dfbf704d;box-shadow:inset 0 0 0 12px #08110d57}body.theme-dark .prep-phase-status{color:var(--prep-green);background:#79c99a1f}body.theme-dark .prep-phase-status.is-break{color:var(--prep-gold);background:#dfbf701f}body.theme-dark .prep-actions .btn-secondary,body.theme-dark #distractionBtn,body.theme-dark .prepcenter-section .btn-icon{color:var(--prep-ink);border-color:var(--prep-line);background:#17271f}body.theme-dark #distractionBtn{color:#f2a29b;border-color:#f2a29b47}body.theme-dark .prep-actions :where(button:disabled,.btn-secondary:disabled),body.theme-dark #distractionBtn:disabled{color:#91a79a;opacity:.72;background:#101c16;border-color:#e2f6e921}body.theme-dark .timer-hint{color:#ead79f;background:#dfbf701a;border-color:#dfbf703d}body.theme-dark .timer-hint.hint-success{color:#b5e4c7;background:#79c99a1a;border-color:#79c99a3d}body.theme-dark .timer-hint.hint-warning{color:#f2a29b;background:#f2a29b14;border-color:#f2a29b38}body.theme-dark .keyboard-hint{color:var(--prep-muted);background:#0d1813b8}body.theme-dark .keyboard-hint kbd{color:var(--prep-ink);border-color:var(--prep-line);background:#17271f}body.theme-dark :where(.prep-overview-shell,.prep-goal-card,.prep-session-panel){color:var(--prep-ink);background:var(--prep-panel-strong);border-color:var(--prep-line);box-shadow:var(--prep-shadow)}body.theme-dark .session-item:hover,body.theme-dark .session-item:focus-visible{border-color:#79c99a5c;box-shadow:0 10px 26px #0000003d}body.theme-dark .session-view-cue{color:#98dab1}body.theme-dark :where(.prep-session-detail-grid>div,.prep-session-detail-block){color:var(--prep-ink);border-color:var(--prep-line);background:#17271f}body.theme-dark .prep-session-detail-summary>.session-emoji{background:#79c99a1a}body.theme-dark :where(.prep-session-detail-summary>div>span:last-child,.prep-session-detail-grid span){color:var(--prep-muted)}body.theme-dark .prep-session-detail-block p{color:var(--prep-ink)}body.theme-dark .prep-momentum-ring{background:radial-gradient(circle closest-side, var(--prep-panel-strong) 70%, transparent 72%), conic-gradient(var(--prep-green) calc(var(--prep-score) * 1%), #e2f6e91a 0)}body.theme-dark .prep-momentum-ring small{color:var(--prep-muted)}body.theme-dark .prepcenter-section .stat-card{color:var(--prep-ink);border-color:var(--prep-line);background:linear-gradient(#17271f,#122019)}body.theme-dark .prepcenter-section .stat-card.primary{color:#f5fff8;background:linear-gradient(135deg,#155f41,#0d4b32);border-color:#79c99a3d}body.theme-dark .prepcenter-section .stat-icon{color:var(--prep-green);background:#79c99a1a}body.theme-dark .prepcenter-section .stat-card.primary :where(.stat-label,.stat-icon){color:#f5fff8c2}body.theme-dark :where(.prep-progress-card,.prep-empty-state.upgraded,.session-item,.session-notes){color:var(--prep-ink);border-color:var(--prep-line);background:#17271f}body.theme-dark .prep-progress-bar{background:#e2f6e91a}body.theme-dark :where(.streak-badge,.prep-count-pill,.session-duration-chip){color:#ead79f;background:#dfbf701f}body.theme-dark .session-rank{color:var(--prep-green);background:#79c99a1a}body.theme-dark :where(.session-meta-pill,.session-tag){color:var(--prep-muted);background:#e2f6e90f;border-color:#e2f6e91a}body.theme-dark .session-tag{color:#ead79f;background:#dfbf701a}body.theme-dark .session-meta-pill.warning{color:#f2a29b;background:#f2a29b14}body.theme-dark .prep-empty-suggestions span{color:#b5e4c7;border:1px solid var(--prep-line);background:#0d1813}
