@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--font: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--bg: #F6F7F9;--surface: #FFFFFF;--surface-2: #F1F3F6;--text: #111827;--text-muted: #5B6472;--border: #E3E6EB;--accent: #4F46E5;--accent-hover: #4338CA;--accent-soft: #EEF0FF;--on-accent: #FFFFFF;--success: #0E8A5F;--success-soft: #E3F5EC;--warning: #9A6200;--warning-soft: #FDF3DC;--danger: #C2410C;--danger-soft: #FDECE4;--highlight: #FDE68A;--highlight-text: #5B4500;--radius: 12px;--radius-small: 8px;--shadow-sm: 0 1px 2px rgb(16 24 40 / .05);--shadow-md: 0 4px 10px -2px rgb(16 24 40 / .08);--page-width: 1180px;--sidebar-width: 236px;color-scheme:light;--primary: var(--accent);--primary-hover: var(--accent-hover);--secondary: var(--success);--background: var(--bg);--text-main: var(--text);--paper: var(--bg);--ink: var(--text);--muted: var(--text-muted);--line: var(--border);--cedar: var(--accent);--cedar-soft: var(--accent-soft);--alert: var(--danger);--alert-soft: var(--danger-soft);--amber: var(--warning);--amber-soft: var(--warning-soft);--highlight-ink: var(--highlight-text);--font-body: var(--font);--font-hand: var(--font)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #0F141B;--surface: #171E27;--surface-2: #1E2732;--text: #EEF1F5;--text-muted: #9AA5B4;--border: #2A3442;--accent: #7C83F7;--accent-hover: #9BA0FA;--accent-soft: #232A4A;--on-accent: #0F141B;--success: #4ADE9B;--success-soft: #133325;--warning: #F2C25B;--warning-soft: #33290F;--danger: #F59E7B;--danger-soft: #3A1E14;--highlight: #5B4A12;--highlight-text: #FDE68A;color-scheme:dark}}:root[data-theme=dark]{--bg: #0F141B;--surface: #171E27;--surface-2: #1E2732;--text: #EEF1F5;--text-muted: #9AA5B4;--border: #2A3442;--accent: #7C83F7;--accent-hover: #9BA0FA;--accent-soft: #232A4A;--on-accent: #0F141B;--success: #4ADE9B;--success-soft: #133325;--warning: #F2C25B;--warning-soft: #33290F;--danger: #F59E7B;--danger-soft: #3A1E14;--highlight: #5B4A12;--highlight-text: #FDE68A;color-scheme:dark}html{font-family:var(--font)}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased}button,input,select,textarea{font-family:inherit}.page-title{margin:0;font-family:var(--font);font-size:1.75rem;font-weight:700;letter-spacing:-.015em;line-height:1.2}.app-layout{display:flex;width:100%;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-width);display:flex;flex-direction:column;gap:.15rem;padding:1.1rem .8rem;overflow-y:auto;background:var(--surface);border-right:1px solid var(--border);z-index:50}.sidebar__brand{display:flex;align-items:center;gap:.55rem;padding:.2rem .6rem .9rem;color:var(--text);text-decoration:none}.sidebar__brand-mark{display:grid;place-items:center;width:2rem;height:2rem;border-radius:9px;background:var(--accent);color:var(--on-accent);font-weight:700;font-size:1.05rem}.sidebar__brand-name{font-weight:700;font-size:1.1rem;letter-spacing:-.01em}.sidebar__class{display:block;font-size:.75rem;font-weight:400;color:var(--text-muted)}.nav-section{margin:.9rem 0 .2rem;padding:0 .7rem;font-size:.7rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.nav-item{display:flex;align-items:center;gap:.6rem;padding:.5rem .7rem;border-radius:var(--radius-small);color:var(--text-muted);font-size:.92rem;font-weight:500;text-decoration:none}.nav-item:hover{background:var(--surface-2);color:var(--text)}.nav-item[aria-current=page]{background:var(--accent-soft);color:var(--accent);font-weight:600}.nav-icon{width:1.25rem;text-align:center;font-size:1rem}.nav-badge{margin-left:auto;padding:.05rem .45rem;border-radius:999px;font-size:.68rem;font-weight:600;background:var(--accent);color:var(--on-accent)}.nav-footer{margin-top:auto;padding:.9rem .7rem 0;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:.45rem;font-size:.82rem;color:var(--text-muted)}.nav-footer__account{word-break:break-all}.nav-footer__row{display:flex;gap:.4rem;flex-wrap:wrap}.nav-footer button,.nav-footer a.nav-footer__link{border:1px solid var(--border);background:none;color:var(--text-muted);border-radius:var(--radius-small);padding:.3rem .6rem;font-size:.8rem;cursor:pointer;text-decoration:none}.nav-footer button:hover{color:var(--text);background:var(--surface-2)}.content{flex:1;min-width:0;margin-left:var(--sidebar-width);padding:1.75rem 2rem 4rem}.mobile-bar{display:none}@media(max-width:900px){.app-layout{flex-direction:column}.mobile-bar{display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:60;padding:.55rem 1rem;background:var(--surface);border-bottom:1px solid var(--border)}.mobile-brand{display:flex;align-items:center;gap:.5rem;color:var(--text);text-decoration:none;font-weight:700}.menu-btn{border:1px solid var(--border);border-radius:var(--radius-small);background:none;color:var(--text);font-size:1.2rem;padding:.15rem .65rem;cursor:pointer}.sidebar{display:none;top:53px;width:100%}.sidebar.open{display:flex}.sidebar .sidebar__brand{display:none}.content{margin-left:0;padding:1rem}}@media print{.sidebar,.mobile-bar{display:none!important}.content{margin-left:0;padding:0}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.5rem .95rem;border:1px solid var(--border);border-radius:var(--radius-small);background:var(--surface);color:var(--text);font:inherit;font-size:.92rem;font-weight:500;line-height:1.2;text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.btn:hover{border-color:var(--text-muted)}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed}.btn--primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:600}.btn--primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn--quiet,.btn--ghost{background:none;border-color:transparent;color:var(--text-muted)}.btn--quiet:hover,.btn--ghost:hover{color:var(--text);background:var(--surface-2);border-color:transparent}.btn--danger{background:none;border-color:var(--danger);color:var(--danger)}.btn--danger:hover:not(:disabled){background:var(--danger-soft);border-color:var(--danger)}.btn--small{padding:.3rem .65rem;font-size:.85rem}.btn--large{padding:.75rem 1.4rem;font-size:1rem}.btn--icon{width:2.2rem;height:2.2rem;padding:0}.icon-btn{background:none;border:none;padding:.15rem .35rem;border-radius:6px;font-size:1.05rem;line-height:1;color:var(--text-muted);cursor:pointer}.icon-btn:hover{color:var(--text);background:var(--surface-2)}.icon-btn.danger:hover{color:var(--danger)}.icon-btn.sm{font-size:.95rem}.icon-btn:disabled{opacity:.3;cursor:not-allowed;pointer-events:none}.card,.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}.card h2,.panel h2{margin:0 0 .5rem;font-size:1.05rem;font-weight:600}.page-header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:.75rem 1rem;margin-bottom:1.5rem}.page-heading{min-width:0}.page-header h1,.page-title{margin:0;font-size:1.75rem;font-weight:700;line-height:1.2;letter-spacing:-.01em}.page-help{margin:.3rem 0 0;max-width:68ch;color:var(--text-muted);font-size:.95rem}.page-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem .75rem}.picker{display:inline-flex;align-items:center;gap:.4rem;font-size:.85rem;font-weight:500;color:var(--text-muted)}.picker select{width:auto;padding:.35rem .6rem;border:1px solid var(--border);border-radius:var(--radius-small);background:var(--surface);color:var(--text);font:inherit;font-size:.9rem}.banner{margin:0 0 1.25rem;padding:.7rem 1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);color:var(--text);font-size:.9rem;line-height:1.5}.banner--info{background:var(--accent-soft);border-color:transparent}.banner--warning{background:var(--warning-soft);border-color:transparent}.banner--success{background:var(--success-soft);border-color:transparent}.banner__title{font-weight:600}.banner__actions{display:inline-flex;flex-wrap:wrap;gap:.4rem;margin-left:.6rem;vertical-align:middle}.empty-state{padding:2.5rem 1rem;text-align:center;color:var(--text-muted);border:1px dashed var(--border);border-radius:var(--radius)}.empty-state h2{margin:0 0 .4rem;font-size:1.1rem;color:var(--text)}.empty-state p{margin:0 0 1rem}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--background);color:var(--text-main);line-height:1.5;-webkit-font-smoothing:antialiased}.glass{background:rgba(var(--surface-rgb),.7);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border)}
