@font-face{font-family:__Sora_ce197d;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/1d4eaed977255102-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Sora_ce197d;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/f3f7e95f2dbc4fe4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Sora_Fallback_ce197d;src:local("Arial");ascent-override:85.29%;descent-override:25.50%;line-gap-override:0.00%;size-adjust:113.73%}.__className_ce197d{font-family:__Sora_ce197d,__Sora_Fallback_ce197d;font-style:normal}.__variable_ce197d{--font-sora:"__Sora_ce197d","__Sora_Fallback_ce197d"}@font-face{font-family:__Fraunces_eb41fe;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/fb526027db1fc1ae-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Fraunces_eb41fe;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/4da3161b738b07dd-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Fraunces_eb41fe;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/af4bf8399d1aacdf-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Fraunces_Fallback_eb41fe;src:local("Times New Roman");ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.00%;size-adjust:115.45%}.__className_eb41fe{font-family:__Fraunces_eb41fe,__Fraunces_Fallback_eb41fe;font-style:normal}.__variable_eb41fe{--font-fraunces:"__Fraunces_eb41fe","__Fraunces_Fallback_eb41fe"}:root{--bg:#eef1f4;--bg-soft:#f7f8fa;--surface:#fff;--ink:#15202b;--muted:#5b6b7c;--line:#d8dee6;--sidebar:#0f1c27;--sidebar-2:#162636;--sidebar-text:#c5d0db;--sidebar-active:#1f3a4d;--accent:#c45c26;--accent-soft:#f3e3d8;--ok:#1f7a4c;--ok-bg:#e6f4ec;--warn:#9a6b12;--warn-bg:#fff4d6;--danger:#b42318;--danger-bg:#fdeceb;--shadow:0 10px 30px rgba(15,28,39,.08);--radius:14px;--sidebar-w:260px;--font:"Sora","Segoe UI",sans-serif;--font-display:"Fraunces",Georgia,serif}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%;font-family:var(--font);color:var(--ink);background:radial-gradient(1200px 500px at 10% -10%,rgba(196,92,38,.08),transparent 55%),radial-gradient(900px 400px at 100% 0,rgba(31,58,77,.08),transparent 50%),linear-gradient(180deg,#f4f6f8 0,var(--bg) 100%)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-w);flex-shrink:0;background:linear-gradient(180deg,rgba(196,92,38,.12),transparent 28%),linear-gradient(180deg,var(--sidebar) 0,var(--sidebar-2) 100%);color:var(--sidebar-text);display:flex;flex-direction:column;position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow:auto;border-right:1px solid hsla(0,0%,100%,.06)}.sidebar-brand{padding:28px 22px 18px;border-bottom:1px solid hsla(0,0%,100%,.06)}.sidebar-brand h1{margin:0;font-family:var(--font-display);font-size:1.7rem;font-weight:650;color:#fff;letter-spacing:-.02em}.sidebar-brand span{display:block;margin-top:4px;font-size:.78rem;color:#8ea0b2}.nav{padding:14px 12px;flex-direction:column;gap:4px;flex:1 1}.nav,.nav a{display:flex}.nav a{align-items:center;gap:10px;padding:11px 14px;border-radius:10px;color:var(--sidebar-text);transition:background .15s ease,color .15s ease,transform .15s ease}.nav a:hover{background:hsla(0,0%,100%,.05);color:#fff;transform:translateX(2px)}.nav a.active{background:var(--sidebar-active);color:#fff;box-shadow:inset 3px 0 0 var(--accent)}.nav-icon{width:18px;text-align:center;opacity:.85}.sidebar-footer{padding:16px;border-top:1px solid hsla(0,0%,100%,.06)}.user-chip{display:flex;flex-direction:column;gap:2px;margin-bottom:10px}.user-chip strong{color:#fff;font-size:.92rem}.user-chip small{color:#8ea0b2}.main{flex:1 1;min-width:0;padding:28px 32px 48px}.topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px}.topbar h2{margin:0;font-family:var(--font-display);font-size:1.85rem;letter-spacing:-.02em}.topbar p{margin:6px 0 0;color:var(--muted);font-size:.92rem}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px}.panel+.panel{margin-top:16px}.toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:14px}.toolbar .spacer{flex:1 1}.grid-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:14px;gap:14px;margin-bottom:16px}.stat{background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;box-shadow:var(--shadow)}.stat label{display:block;color:var(--muted);font-size:.8rem;margin-bottom:6px}.stat strong{font-size:1.35rem;font-family:var(--font-display)}.btn{border:1px solid transparent;border-radius:10px;padding:9px 14px;background:var(--ink);color:#fff;transition:transform .12s ease,opacity .12s ease,background .12s ease}.btn:hover{transform:translateY(-1px);opacity:.95}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-accent{background:var(--accent)}.btn-ghost{background:transparent;border-color:var(--line);color:var(--ink)}.btn-danger{background:var(--danger)}.btn-sm{padding:6px 10px;font-size:.85rem}.input,.select,.textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:#fff;color:var(--ink);outline:none;transition:border-color .15s ease,box-shadow .15s ease}.input:focus,.select:focus,.textarea:focus{border-color:#9eb0c2;box-shadow:0 0 0 3px rgba(31,58,77,.08)}.textarea{min-height:90px;resize:vertical}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:.82rem;color:var(--muted)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:12px;gap:12px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px}table{width:100%;border-collapse:collapse;min-width:640px}td,th{padding:11px 12px;text-align:left;border-bottom:1px solid var(--line);font-size:.9rem}th{background:#f4f7fa;color:var(--muted);font-weight:600;position:-webkit-sticky;position:sticky;top:0}tr:hover td{background:#fafbfc}.badge{display:inline-flex;align-items:center;padding:3px 8px;border-radius:999px;font-size:.75rem;font-weight:600}.badge-ok{background:var(--ok-bg);color:var(--ok)}.badge-warn{background:var(--warn-bg);color:var(--warn)}.badge-muted{background:#eef2f6;color:var(--muted)}.badge-danger{background:var(--danger-bg);color:var(--danger)}.tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}.tab{border:1px solid var(--line);background:#fff;color:var(--muted);border-radius:999px;padding:7px 12px}.tab.active{background:var(--ink);border-color:var(--ink);color:#fff}.modal-backdrop{position:fixed;inset:0;background:rgba(15,28,39,.45);display:flex;align-items:center;justify-content:center;padding:20px;z-index:50;animation:fadeIn .15s ease}.modal{width:min(720px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:16px;box-shadow:0 24px 60px rgba(0,0,0,.25);padding:20px;animation:rise .2s ease}.modal h3{margin:0 0 14px;font-family:var(--font-display);font-size:1.35rem}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.alert{padding:10px 12px;border-radius:10px;margin-bottom:12px;font-size:.9rem}.alert-error{background:var(--danger-bg);color:var(--danger)}.alert-ok{background:var(--ok-bg);color:var(--ok)}.empty{padding:28px;text-align:center;color:var(--muted)}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(800px 400px at 20% 10%,rgba(196,92,38,.18),transparent 55%),linear-gradient(145deg,#0f1c27,#1a3040 45%,#243c4d)}.login-card{width:min(420px,100%);background:hsla(0,0%,100%,.97);border-radius:18px;padding:28px;box-shadow:0 30px 80px rgba(0,0,0,.35);animation:rise .35s ease}.login-card h1{margin:0;font-family:var(--font-display);font-size:2rem;color:var(--ink)}.login-card .sub{margin:6px 0 22px;color:var(--muted)}.stack{display:flex;flex-direction:column;gap:12px}.row-actions{display:flex;gap:6px;flex-wrap:wrap}.mobile-toggle{display:none;position:fixed;top:14px;left:14px;z-index:60;background:var(--sidebar);color:#fff;border:none;border-radius:10px;padding:10px 12px}.sidebar-overlay{display:none}.pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;flex-wrap:wrap}.pagination-info{color:var(--muted);font-size:.88rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (max-width:900px){.mobile-toggle{display:inline-flex}.sidebar{position:fixed;left:0;top:0;z-index:70;transform:translateX(-105%);transition:transform .2s ease}.sidebar.open{transform:none}.sidebar-overlay.open{display:block;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:65}.main{padding:72px 16px 32px}.topbar{flex-direction:column;align-items:flex-start}}