:root{color-scheme:light;--brand-primary: #10b981;--brand-primary-hover: #059669;--brand-primary-soft: #d1fae5;--brand-primary-fg: #047857;--brand-bg: #f1f5f9;--brand-surface: #ffffff;--brand-surface-2: #f8fafc;--brand-text: #0f172a;--brand-text-muted: #475569;--brand-text-subtle: #64748b;--brand-border: #e2e8f0;--brand-border-strong: #cbd5e1;--color-success: #10b981;--color-warning: #f59e0b;--color-danger: #ef4444;--color-info: #0ea5e9}html[data-theme=dark]{color-scheme:dark;--brand-bg: #0b1220;--brand-surface: #0f172a;--brand-surface-2: #1e293b;--brand-text: #e2e8f0;--brand-text-muted: #94a3b8;--brand-text-subtle: #64748b;--brand-border: #243049;--brand-border-strong: #334155;--brand-primary: #34d399;--brand-primary-hover: #10b981;--brand-primary-soft: rgba(16, 185, 129, .15);--brand-primary-fg: #34d399}*{box-sizing:border-box}html,body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:antialiased;background:var(--brand-bg);color:var(--brand-text);transition:background .3s ease,color .2s ease}#root{min-height:100vh}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--brand-border-strong);border-radius:8px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--brand-text-subtle);background-clip:padding-box;border:2px solid transparent}html[data-theme=dark] ::-webkit-scrollbar-thumb{background:var(--brand-border);background-clip:padding-box}a{color:var(--brand-primary);text-decoration:none;transition:color .2s ease}a:hover{color:var(--brand-primary-hover)}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.flat-card{background:var(--brand-surface);border:1px solid var(--brand-border);border-radius:24px;box-shadow:none}.flat-card-muted{background:var(--brand-surface-2);border:1px solid var(--brand-border);border-radius:24px}.btn-primary-flat{background:var(--brand-primary);border:1px solid var(--brand-primary);color:#fff;font-weight:600;border-radius:8px;padding:8px 16px;cursor:pointer;transition:background .15s ease,border-color .15s ease}.btn-primary-flat:hover{background:var(--brand-primary-hover);border-color:var(--brand-primary-hover)}.btn-primary-flat:disabled{background:var(--brand-border-strong);border-color:var(--brand-border-strong);cursor:not-allowed}.assignment-row-today>td{background:#fff7e6!important}.assignment-row-today>td:first-child{border-left:3px solid #fa8c16!important}.assignment-row-yesterday>td{background:#f0f5fa!important}.assignment-row-yesterday>td:first-child{border-left:3px solid #94a3b8!important}.assignment-row-thisweek>td{background:#f0f9ff!important}.assignment-row-thisweek>td:first-child{border-left:3px solid #7dd3fc!important}.assignment-row-old>td{background:#fafaf7!important}.assignment-row-old>td:first-child{border-left:3px solid #d4d4d8!important}.assignment-row-overdue>td{background:#fff1f0!important;box-shadow:inset 2px 0 #cf1322}.assignment-row-overdue>td:first-child{border-left:3px solid #cf1322!important}.assignment-row-done>td{background:#f6ffed!important}.assignment-row-done>td:first-child{border-left:3px solid #52c41a!important}.assignment-row-today:hover>td,.assignment-row-yesterday:hover>td,.assignment-row-thisweek:hover>td,.assignment-row-old:hover>td,.assignment-row-overdue:hover>td,.assignment-row-done:hover>td{filter:brightness(.97)}html[data-theme=dark] .assignment-row-today>td{background:#fa8c162e!important}html[data-theme=dark] .assignment-row-yesterday>td{background:#94a3b826!important}html[data-theme=dark] .assignment-row-thisweek>td{background:#7dd3fc1a!important}html[data-theme=dark] .assignment-row-old>td{background:#d4d4d80f!important}html[data-theme=dark] .assignment-row-overdue>td{background:#cf132238!important;box-shadow:inset 2px 0 #ff4d4f}html[data-theme=dark] .assignment-row-done>td{background:#52c41a2e!important}.assignment-section-header{position:relative;overflow:hidden}.assignment-section-header:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#10b981}.assignment-section-header.is-today:before{background:#fa8c16}.assignment-section-header.is-yesterday:before{background:#94a3b8}.assignment-section-header.has-overdue:before{background:#cf1322}.assignment-section-header.is-all-done:before{background:#52c41a}
