:root{color-scheme:light dark;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;--bg: #0f1420;--bg-elevated: #171d2b;--border: #2a3242;--text: #e8ecf4;--text-secondary: #9aa5b8;--accent: #4f8ef7;--error-bg: #3a1c1c;--error-text: #ff9b9b}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}.page-loading{padding:2rem;color:var(--text-secondary)}.error-banner{background:var(--error-bg);color:var(--error-text);padding:.75rem 1rem;border-radius:6px;margin:1rem 0}.muted{color:var(--text-secondary)}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center}.login-form{display:flex;flex-direction:column;gap:.75rem;width:320px;background:var(--bg-elevated);padding:2rem;border-radius:10px;border:1px solid var(--border)}.login-form h1{font-size:1.1rem;margin:0 0 .5rem}.login-form label{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem;color:var(--text-secondary)}.login-form input{padding:.5rem;border-radius:6px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:1rem}.login-form button[type=submit]{margin-top:.5rem;padding:.6rem;border-radius:6px;border:none;background:var(--accent);color:#fff;font-size:1rem;cursor:pointer}.login-form button[type=submit]:disabled{opacity:.6;cursor:default}.login-hint{font-size:.75rem;color:var(--text-secondary);margin:0}.app-shell{min-height:100vh}.app-header{display:flex;align-items:center;gap:1.5rem;padding:1rem 1.5rem;border-bottom:1px solid var(--border);background:var(--bg-elevated)}.app-header-title{font-weight:600}.app-header nav{display:flex;gap:1rem;flex:1}.app-header nav a{color:var(--text-secondary);text-decoration:none}.app-header nav a:hover{color:var(--text)}.app-main{padding:1.5rem;max-width:1000px;margin:0 auto}.app-main section{margin-bottom:2rem}.app-main h3{font-size:.95rem;text-transform:uppercase;letter-spacing:.03em;color:var(--text-secondary);margin-bottom:.75rem}button.button-secondary{padding:.4rem .8rem;border-radius:6px;border:1px solid var(--border);background:transparent;color:var(--text);cursor:pointer;font-size:.85rem}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem}.stat-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;padding:.9rem 1rem}.stat-card-label{font-size:.75rem;color:var(--text-secondary);margin-bottom:.3rem}.stat-card-value{font-size:1.5rem;font-weight:600}.stat-card-hint{font-size:.7rem;color:var(--text-secondary);margin-top:.3rem}.stat-card-clickable{cursor:pointer}.stat-card-clickable:hover{border-color:var(--accent)}.stat-card-expand-hint{font-size:.65rem;color:var(--text-secondary);margin-top:.4rem;opacity:.7}.stat-card-detail{margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--border);font-size:.8rem}.stat-card-detail-desc{color:var(--text-secondary);font-size:.7rem;margin-top:.2rem}.date-range-picker{display:flex;align-items:flex-end;gap:1rem;margin:1rem 0 1.5rem}.date-range-picker label{display:flex;flex-direction:column;gap:.25rem;font-size:.75rem;color:var(--text-secondary)}.date-range-picker input,.date-range-picker select{padding:.4rem;border-radius:6px;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text)}.search-input{display:block;width:100%;max-width:360px;padding:.5rem .75rem;border-radius:6px;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text);font-size:.9rem;margin-bottom:1rem}.student-id-stack{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.75rem}.student-id-cell{display:flex;align-items:center;gap:.5rem}.student-number{font-family:ui-monospace,monospace;font-size:.9rem;font-weight:600;color:var(--text)}.student-id{font-family:ui-monospace,monospace;font-size:.75rem;color:var(--text-secondary)}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{text-align:left;padding:.5rem .75rem;border-bottom:1px solid var(--border);font-size:.9rem}.data-table th{color:var(--text-secondary);font-weight:500;font-size:.75rem;text-transform:uppercase}.clickable-rows tbody tr{cursor:pointer}.clickable-rows tbody tr:hover{background:var(--bg-elevated)}.filter-tabs{display:flex;gap:.5rem;margin-bottom:1rem}.filter-tab{padding:.4rem .9rem;border-radius:999px;border:1px solid var(--border);background:transparent;color:var(--text-secondary);cursor:pointer;font-size:.85rem}.filter-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.status-pill{display:inline-block;padding:.2rem .6rem;border-radius:999px;font-size:.75rem;font-weight:500;text-transform:capitalize}.status-pill.pending{background:#3a3420;color:#f0d878}.status-pill.accepted{background:#1c3a24;color:#7edb96}.status-pill.rejected{background:#3a1c1c;color:#ff9b9b}.idea-cell{max-width:340px;white-space:pre-wrap}.row-actions{display:flex;gap:.4rem}.row-actions button{padding:.3rem .7rem;border-radius:6px;border:1px solid var(--border);background:transparent;color:var(--text);cursor:pointer;font-size:.8rem}.row-actions button.accept:hover{border-color:#7edb96;color:#7edb96}.row-actions button.reject:hover{border-color:#ff9b9b;color:#ff9b9b}.row-actions button:disabled{opacity:.5;cursor:default}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:1rem}.whatsapp-box{background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;padding:1rem;display:flex;flex-direction:column;gap:.75rem;align-items:flex-start}.whatsapp-box pre{white-space:pre-wrap;font-family:ui-monospace,monospace;font-size:.85rem;margin:0}
