:root{ --bg:#0b1220; --bg-accent:#0e162a; --panel:#111827; --panel-2:#0d1830; --border:#223255; --text:#e9eef7; --muted:#9fb1c9; --brand:#6366f1; --brand-2:#22d3ee; --success:#10b981; --accent:#22d3ee; --danger:#ef4444; --warn:#f59e0b; } *{box-sizing:border-box} html,body{ margin:0;padding:0;color:var(--text); background: linear-gradient(180deg, var(--bg) 0%, var(--bg-accent) 100%); font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif } .container{max-width:960px;margin:0 auto;padding:1rem} .navbar{ background:linear-gradient( 180deg, color-mix(in srgb, var(--panel) 92%, transparent), color-mix(in srgb, var(--panel) 68%, transparent) ); border-bottom:1px solid color-mix(in srgb, var(--border) 70%, transparent); backdrop-filter:saturate(120%) blur(6px) } .nav-inner{display:flex;align-items:center;justify-content:space-between} .brand{color:#fff;text-decoration:none;font-weight:800;letter-spacing:.2px} .brand:hover{opacity:.9} a{color:color-mix(in srgb, var(--brand) 68%, #cbd5e1);text-decoration:underline dotted rgba(255,255,255,.18);text-underline-offset:2px} a:hover{color:#ffffff;text-decoration:underline} nav a{color:var(--text);text-decoration:none;margin-left:1rem;opacity:.9} nav a:hover{opacity:1;color:color-mix(in srgb, var(--brand) 40%, #ffffff)} .linklike{background:none;border:none;color:var(--muted);cursor:pointer} .linklike:hover{color:color-mix(in srgb, var(--brand) 35%, #ffffff)} .flash{background:rgba(16,185,129,.08);border:1px solid rgba(16,185,129,.45);padding:.6rem .8rem;border-radius:10px;margin:1rem 0;color:#c7f0db} .flash.error{background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.5)} .flash.warn{background:rgba(245,158,11,.1);border-color:rgba(245,158,11,.5)} .footer{opacity:.7;font-size:.9rem} .card{background:var(--panel);border:1px solid var(--border);padding:1rem;border-radius:14px;box-shadow:0 6px 20px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.02);margin:.9rem 0} label{display:block;margin:.65rem 0;color:var(--muted)} input,textarea,select{ width:100%;padding:.65rem .8rem;border-radius:10px;border:1px solid var(--border);background:#0c1426;color:var(--text); transition:border-color .15s ease, box-shadow .15s ease, background-color .2s ease } input:focus,textarea:focus,select:focus{ outline:none;border-color:color-mix(in srgb, var(--brand) 65%, var(--border)); box-shadow:0 0 0 4px color-mix(in srgb, var(--brand) 22%, transparent) } button,.btn{ background:linear-gradient(180deg, color-mix(in srgb, var(--panel) 85%, #000), color-mix(in srgb, var(--panel) 65%, #000)); color:var(--text); border:1px solid var(--border);border-radius:10px;padding:.55rem 1rem;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem; transition:transform .06s ease, box-shadow .2s ease, filter .2s ease, background-color .2s ease } button:hover,.btn:hover{filter:brightness(1.06);box-shadow:0 6px 18px rgba(0,0,0,.22)} button:active,.btn:active{transform:translateY(1px)} button:focus-visible,.btn:focus-visible{outline:2px solid transparent;box-shadow:0 0 0 3px color-mix(in srgb, var(--brand) 40%, transparent)} .btn.primary{ background:linear-gradient(135deg, var(--brand), var(--brand-2)); border-color:color-mix(in srgb, var(--brand) 65%, #000); color:#ffffff;font-weight:700 } .btn.danger{background:linear-gradient(180deg,#7f1d1d,#6b1111);border-color:#dc2626;color:#fee2e2} .btn.danger:hover{filter:brightness(1.05)} .btn.danger:active{transform:translateY(1px)} .btn.google{background:#fff;color:#111;border-color:#dadce0;display:flex;align-items:center;justify-content:center;gap:.6rem;padding:.65rem 1.1rem;border-radius:999px;font-weight:700;box-shadow:0 1px 1px rgba(0,0,0,.08);transition:transform .05s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease} .btn.google .g-icon{width:18px;height:18px;display:block} .btn.google:hover{background:#fff;border-color:#d2d3d7;box-shadow:0 2px 6px rgba(0,0,0,.12),0 4px 12px rgba(0,0,0,.08)} .btn.google:active{background:#f8f9fa;transform:translateY(0)} .btn.google:focus-visible{outline:2px solid transparent;box-shadow:0 0 0 3px rgba(99,102,241,.35)} .oauth{margin-top:.9rem;display:flex;justify-content:center} .muted{color:var(--muted)} .small{font-size:.9rem} .flex{display:flex;gap:.6rem} .between{justify-content:space-between} .center{align-items:center} .end{justify-content:flex-end} .list{display:flex;flex-direction:column} .list-item{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.1rem;border:1px solid var(--border);border-radius:12px;background:var(--panel);text-decoration:none;color:var(--text);margin:.55rem 0;transition:transform .06s ease, box-shadow .2s ease, border-color .2s ease} .list-item:hover{transform:translateY(1px);box-shadow:0 8px 24px rgba(0,0,0,.22);border-color:color-mix(in srgb, var(--brand) 35%, var(--border))} .subject{font-weight:700} .badge{padding:.25rem .6rem;border-radius:999px;font-size:.8rem;font-weight:700;letter-spacing:.2px;display:inline-block} .badge.open{background:rgba(99,102,241,.14);color:#b3b7ff;border:1px solid rgba(99,102,241,.5)} .badge.answered{background:rgba(16,185,129,.12);color:#86efac;border:1px solid rgba(16,185,129,.45)} .badge.closed{background:rgba(239,68,68,.12);color:#fca5a5;border:1px solid rgba(239,68,68,.5)} .badge.admin{background:rgba(245,158,11,.12);color:#fde68a;border:1px solid rgba(245,158,11,.5)} .badge.banned{background:rgba(239,68,68,.16);color:#fecaca;border:1px solid rgba(239,68,68,.55)} .badge.verified{background:rgba(16,185,129,.12);color:#86efac;border:1px solid rgba(16,185,129,.45)} .badge.unverified{background:rgba(245,158,11,.12);color:#fde68a;border:1px solid rgba(245,158,11,.45)} .auth{max-width:460px;margin:2.2rem auto} .thread{display:flex;flex-direction:column;gap:.7rem} .message{border-left:3px solid #32405e;padding-left:.9rem} .message.admin{border-color:#16a34a} .table{display:grid;gap:.6rem} .row{display:grid;grid-template-columns:2fr 1.2fr .8fr 1fr .6fr;gap:1rem;align-items:center;background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:.7rem .9rem;transition:background-color .2s ease, box-shadow .2s ease} .row:hover{box-shadow:0 8px 24px rgba(0,0,0,.22)} .row.head{background:var(--panel-2);border-color:color-mix(in srgb, var(--border) 85%, #000);font-weight:800} .filters{display:flex;gap:1rem;align-items:center} @media (max-width:720px){ .row{grid-template-columns:1fr;} }