:root{--navy:#1e3a5f;--gold:#c9a227;--bg:#f6f7f9;--card:#fff;--line:rgba(0,0,0,.1);--text:#1a1a1a;--muted:#6b7280;}
*{box-sizing:border-box}
body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);}
a{color:var(--navy)}
.brand{font-weight:800;color:var(--navy);display:flex;align-items:center;gap:.5rem;letter-spacing:-.01em}
.brand em{font-style:normal;color:var(--gold)}
.brand-mark{width:22px;height:22px;border-radius:6px;background:var(--navy);display:inline-block;position:relative}
.brand-mark::after{content:"";position:absolute;inset:5px;border-radius:3px;background:var(--gold)}
.btn{display:inline-block;background:var(--navy);color:#fff!important;padding:.55rem 1rem;border-radius:8px;text-decoration:none;font-weight:600;border:none;cursor:pointer;font-size:.92rem}
.btn:hover{filter:brightness(1.1)}
.btn.ghost{background:#fff;color:var(--navy)!important;border:1px solid var(--line)}

/* gate */
.gate{min-height:100vh;display:grid;place-items:center;padding:2rem}
.gate-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:2.4rem;max-width:420px;text-align:center;box-shadow:0 12px 40px rgba(30,58,95,.1)}
.gate-card .brand{justify-content:center;font-size:1.2rem;margin-bottom:1rem}
.gate-card p{color:var(--muted)}

/* app */
.topbar{background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:.7rem 1.2rem;gap:1rem;flex-wrap:wrap}
.topbar-right{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.topbar-right label{font-size:.85rem;color:var(--muted);display:flex;align-items:center;gap:.4rem}
.who{font-size:.85rem;color:var(--muted)}
select{padding:.4rem .6rem;border:1px solid var(--line);border-radius:8px;font:inherit;background:#fff}
.tabs{display:flex;gap:.3rem;padding:.6rem 1.2rem 0;background:#fff;border-bottom:1px solid var(--line)}
.tab{background:none;border:none;padding:.6rem .9rem;font-weight:600;color:var(--muted);cursor:pointer;border-bottom:3px solid transparent;font-size:.95rem}
.tab.active{color:var(--navy);border-bottom-color:var(--gold)}
.wrap{max-width:1100px;margin:1.5rem auto;padding:0 1.2rem}
.panel-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.panel-head h2{margin:0;color:var(--navy)}
.panel-actions{display:flex;align-items:center;gap:.8rem}
.muted{color:var(--muted);font-size:.9rem}

table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;font-size:.9rem}
th,td{text-align:left;padding:.6rem .7rem;border-bottom:1px solid var(--line);vertical-align:top}
th{background:var(--navy);color:#fff;font-weight:600;position:sticky;top:0}
tbody tr:nth-child(even){background:rgba(0,0,0,.02)}
.tag{display:inline-block;background:color-mix(in srgb,var(--gold) 16%,#fff);color:color-mix(in srgb,var(--gold) 78%,#000);border-radius:999px;padding:.1rem .5rem;font-size:.72rem;font-weight:700;text-transform:uppercase}
.empty{padding:2rem;text-align:center;color:var(--muted);background:#fff;border:1px dashed var(--line);border-radius:10px}
.table-wrap{overflow-x:auto}
