*{box-sizing:border-box;margin:0}:root{--bg:#14181f;--bg-raised:#1c222c;--bg-hover:#242c39;--border:#2d3748;--text:#e6ebf2;--text-dim:#8b98ab;--accent:#4f9cf9;--accent-hover:#6db0ff;--green:#4ade80;--red:#f87171}body{background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.5}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}.topbar{background:var(--bg-raised);border-bottom:1px solid var(--border);align-items:center;gap:1.5rem;padding:.75rem 1.5rem;display:flex}.topbar .brand{color:var(--text);letter-spacing:.02em;font-size:1.15rem;font-weight:700}.topbar .spacer{flex:1}.topbar .user{color:var(--text-dim);font-size:.9rem}.page{max-width:960px;margin:0 auto;padding:1.5rem}h1{margin-bottom:1rem;font-size:1.5rem}h2{margin:1.5rem 0 .75rem;font-size:1.1rem}.grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;display:grid}.card{background:var(--bg-raised);border:1px solid var(--border);color:var(--text);border-radius:8px;transition:background .15s;display:block;overflow:hidden}.card:hover{background:var(--bg-hover);color:var(--text)}.card .cover{aspect-ratio:460/215;color:var(--text-dim);background:linear-gradient(135deg,#232b38,#1a212c);justify-content:center;align-items:center;font-size:2rem;display:flex;overflow:hidden}.card .cover img{object-fit:cover;width:100%;height:100%}.card .body{padding:.6rem .8rem}.card .title{font-weight:600}.card .meta{color:var(--text-dim);font-size:.8rem}.panel{background:var(--bg-raised);border:1px solid var(--border);border-radius:8px;margin-bottom:1rem;padding:1rem 1.25rem}input,textarea,select{background:var(--bg);border:1px solid var(--border);color:var(--text);font:inherit;border-radius:6px;width:100%;padding:.5rem .7rem}input:focus,textarea:focus,select:focus{border-color:var(--accent);outline:none}label{color:var(--text-dim);margin:.75rem 0 .25rem;font-size:.85rem;display:block}button{background:var(--accent);color:#0b1220;font:inherit;cursor:pointer;border:none;border-radius:6px;padding:.5rem 1rem;font-weight:600}button:hover{background:var(--accent-hover)}button:disabled{opacity:.5;cursor:default}button.ghost{border:1px solid var(--border);color:var(--text);background:0 0}button.danger{border:1px solid var(--red);color:var(--red);background:0 0}.error{color:var(--red);margin-top:.5rem;font-size:.9rem}.success{color:var(--green);margin-top:.5rem;font-size:.9rem}table{border-collapse:collapse;width:100%;font-size:.9rem}th,td{text-align:left;border-bottom:1px solid var(--border);padding:.45rem .6rem}th{color:var(--text-dim);font-weight:500}code{background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:.1rem .35rem;font-size:.85em}.badge{border:1px solid var(--border);color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;border-radius:99px;padding:.1rem .5rem;font-size:.72rem;display:inline-block}.badge.green{border-color:var(--green);color:var(--green)}.progress{background:var(--bg);border-radius:99px;height:8px;margin-top:.5rem;overflow:hidden}.progress>div{background:var(--accent);height:100%;transition:width .2s}.auth-wrap{justify-content:center;align-items:center;min-height:100vh;display:flex}.auth-box{width:340px}.auth-box h1{text-align:center;margin-bottom:1.5rem}.auth-box button{width:100%;margin-top:1.25rem}.auth-box .alt{text-align:center;color:var(--text-dim);margin-top:1rem;font-size:.9rem}.play-frame{aspect-ratio:16/9;border:1px solid var(--border);background:#000;border-radius:8px;width:100%}.row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.mt{margin-top:1rem}.dim{color:var(--text-dim);font-size:.9rem}
