@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap";:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#fff;font-synthesis:none;--surface:#0a0a0a;--muted:#a1a1aa;--line:#1a1a1a;--strong:#27272a;--hover:#18181b;--purple:#7c3aed;background:#000;font-family:Inter,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{color:#fff;background:#000;margin:0;font-size:14px;line-height:1.5}a{color:inherit}button,input,select,textarea{font:inherit}.app{grid-template-columns:240px 1fr;min-height:100vh;display:grid}.app-with-rail{grid-template-columns:240px 220px 1fr}.sidebar,.app-rail{border-right:1px solid var(--line);min-width:0}.sidebar{flex-direction:column;height:100vh;padding:16px 12px 20px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:10px;padding:4px 8px 20px;display:flex}.mark{background:var(--purple);border-radius:6px;place-items:center;width:22px;height:22px;font-size:12px;font-weight:600;display:grid}.sidebar nav{flex-direction:column;flex:1;gap:2px;display:flex}.nav{color:var(--muted);border-radius:8px;padding:8px 10px;text-decoration:none}.nav:hover,.nav.active{color:#fff;background:var(--strong)}.sidebar footer{border-top:1px solid var(--line);padding:16px 8px 0;font-size:13px}.footer-links{color:var(--muted);gap:14px;margin-top:8px;display:flex}.footer-links a{text-decoration:none}.app-rail{flex-direction:column;height:100vh;padding:16px 8px 20px;display:flex;position:sticky;top:0}.app-rail>p{color:var(--muted);margin:0 8px 10px;font-size:12px;font-weight:500}.app-rail nav{flex:1;overflow-y:auto}.rail-item{min-width:0;color:var(--muted);border-radius:8px;align-items:center;gap:10px;padding:6px 8px;text-decoration:none;display:flex}.rail-item:hover,.rail-item.active{background:var(--strong);color:#fff}.rail-item>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-letter{background:var(--purple);color:#fff;border-radius:8px;flex:0 0 32px;place-items:center;width:32px;height:32px;font-size:13px;font-weight:600;display:grid}.app-rail>.button{margin-top:12px}main{min-width:0;padding:36px 48px 64px}.page-head{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:22px;display:flex}.page-head h1{letter-spacing:-.02em;min-height:42px;margin:0;font-size:28px}.page-head span,.muted{color:var(--muted);font-size:13px}h2{margin:30px 0 10px;font-size:15px}.toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:20px;display:flex}.toolbar.end{justify-content:flex-end;margin-top:22px;margin-bottom:0}.button{border:1px solid var(--strong);color:#fff;cursor:pointer;background:0 0;border-radius:999px;justify-content:center;align-items:center;min-height:34px;padding:7px 14px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.button:hover:not(:disabled){background:var(--hover)}.button.primary{color:#000;background:#fff;border-color:#fff}.button:disabled{opacity:.38;cursor:default}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13.5px}th{border-bottom:1px solid var(--line);color:var(--muted);text-align:left;padding:10px 8px;font-size:12px;font-weight:500}td{border-bottom:1px solid var(--line);padding:12px 8px}tbody tr{cursor:pointer}tbody tr:hover td,tr[aria-selected=true] td{background:var(--hover)}.chip{background:var(--hover);color:var(--muted);border-radius:999px;padding:2px 10px;font-size:12px;font-weight:500;display:inline-block}.chip.ok{color:#86efac;background:#052e16}.chip.warn{color:#fdba74;background:#451a03}.empty{border:1px dashed var(--strong);color:var(--muted);border-radius:8px;margin:16px 0;padding:16px}.alert,.banner{border-radius:8px;margin:10px 0 20px;padding:12px 14px}.alert{color:#fca5a5;background:#1c0a0a}.alert small{display:block}.banner{color:#fdba74;background:#1c1408}.centered{place-items:center;min-height:100vh;padding:24px;display:grid}.tabs{gap:6px;margin:-4px 0 12px;display:flex}.pill{color:var(--muted);border-radius:999px;padding:6px 12px;text-decoration:none}.pill.active{background:var(--strong);color:#fff}.setting{border-top:1px solid var(--line);grid-template-columns:1fr 280px;align-items:center;gap:32px;padding:24px 0;display:grid}.setting p{color:var(--muted);margin:3px 0 0;font-size:13px}input,textarea,select{border:1px solid var(--strong);color:#fff;background:#111;border-radius:8px;outline:none;width:100%;padding:9px 12px}input:focus,textarea:focus,select:focus{border-color:#71717a;box-shadow:0 0 0 2px #27272a}input[type=checkbox]{width:auto;accent-color:var(--purple)}.dialog label{color:var(--muted);gap:6px;margin:14px 0;font-size:12px;display:grid}.dialog-backdrop{z-index:10;background:#000000c2;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.dialog{border:1px solid var(--strong);background:var(--surface);border-radius:12px;width:min(520px,100%);max-height:90vh;padding:24px;overflow-y:auto}.dialog.wide{width:min(760px,100%)}.dialog h2{color:#fff;margin-top:0;font-size:19px}.form-grid{grid-template-columns:1fr 1fr;gap:0 14px;display:grid}.secret{overflow-wrap:anywhere;white-space:pre-wrap;border:1px solid var(--strong);background:#111;border-radius:8px;padding:12px}.split{grid-template-columns:240px 1fr;gap:20px;display:grid}.list{margin:0;padding:0;list-style:none}.list button{width:100%;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:10px 12px}.list button.selected{background:var(--strong);color:#fff}fieldset{border:1px solid var(--strong);border-radius:8px;padding:12px}legend{color:var(--muted);font-size:12px}.check{align-items:center;gap:10px;padding:6px;display:flex}.details{grid-template-columns:190px 1fr;padding:10px 0;display:grid}.details dt,.details dd{border-bottom:1px solid var(--line);margin:0;padding:9px 0}.details dt{color:var(--muted)}.details dd{overflow-wrap:anywhere}.assignment-editor{grid-template-columns:120px minmax(180px,1fr) minmax(160px,1fr) auto;gap:8px;margin:10px 0 16px;display:grid}@media (width<=900px){.app,.app-with-rail{display:block}.sidebar,.app-rail{border-right:0;border-bottom:1px solid var(--line);width:100%;height:auto;position:static}.sidebar nav{grid-template-columns:repeat(2,1fr);display:grid}.app-rail nav{max-height:240px}main{padding:24px 20px 48px}.setting,.split,.form-grid,.assignment-editor{grid-template-columns:1fr}}
