@font-face{font-family:Baflion Sans;src:url(/assets/BaflionSans-Black-DsPl5-hk.woff2) format("woff2");font-weight:900;font-display:swap}@font-face{font-family:Myriad Pro;src:url(/assets/MyriadPro-Regular-BNiVF2Bm.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Myriad Pro;src:url(/assets/MyriadPro-Semibold-DzhH8iM7.woff2) format("woff2");font-weight:600;font-display:swap}@font-face{font-family:Myriad Pro;src:url(/assets/MyriadPro-Bold-B-rYxAdh.woff2) format("woff2");font-weight:700;font-display:swap}:root{--vivid-blue: #002dff;--blue-ocean: #1579ff;--midnight-blue: #190055;--turquoise: #3ffff6;--blue-sky: #aaeaff;--dark-blue: #0b0024;--bg: #f4f9ff;--panel: #fff;--text: #0b0024;--muted: #5b5880;--line: #dbe6f7;--brand: #002dff;--brand-dark: #190055;--on-brand: #fff;--danger: #b3261e;--warn: #b26a00;--ok: #1e7a3c;--radius: 20px;--radius-sm: 12px;--radius-pill: 999px;--font-display: "Baflion Sans", "Arial Black", sans-serif;--font-body: "Myriad Pro", "Segoe UI", Arial, sans-serif;--shadow-card: 0 10px 30px -14px rgba(11, 0, 36, .22)}@media (prefers-color-scheme: dark){:root{--bg: #0b0024;--panel: #170a3a;--text: #eef3ff;--muted: #a9b4dd;--line: #2b2160;--brand: #1579ff;--brand-dark: #3f92ff;--shadow-card: none}}*{box-sizing:border-box}body{margin:0;font:15px/1.5 var(--font-body);background:var(--bg);color:var(--text)}a{color:var(--brand);text-decoration:none}h1,h2,h3{font-family:var(--font-display);font-weight:900;letter-spacing:-.01em}h1{font-size:26px;margin:0 0 16px}h2{font-size:18px;margin:0 0 12px}.shell{display:flex;min-height:100vh}.side{width:230px;background:linear-gradient(170deg,var(--midnight-blue),var(--dark-blue));padding:20px 12px;display:flex;flex-direction:column;gap:4px}.side .brand{padding:4px 10px 18px}.side .brand img{height:44px;width:auto;display:block}.side a{padding:9px 14px;border-radius:var(--radius-pill);color:#ffffffdb}.side a:hover{background:#aaeaff1f}.side a.router-link-active{background:var(--turquoise);color:var(--dark-blue);font-weight:700}.side .who{margin-top:auto;padding:10px 14px;font-size:13px;color:var(--blue-sky)}.side .who a{padding:0;color:#fff;text-decoration:underline;background:none}.main{flex:1;padding:24px 28px;min-width:0}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px;margin-bottom:16px;box-shadow:var(--shadow-card)}.bar{display:flex;gap:10px;align-items:center;margin-bottom:14px;flex-wrap:wrap}.bar .grow{flex:1}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:middle}th{font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}input,select,textarea{font:inherit;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel);color:var(--text);min-width:0}input:focus,select:focus,textarea:focus{outline:2px solid color-mix(in srgb,var(--brand) 45%,transparent);border-color:var(--brand)}button{font:inherit;font-weight:600;padding:8px 18px;border-radius:var(--radius-pill);border:1px solid var(--line);background:var(--panel);color:var(--text);cursor:pointer}button.primary{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}button.primary:hover{background:var(--blue-ocean);border-color:var(--blue-ocean)}button:hover:not(.primary):not(:disabled){border-color:var(--brand)}button.danger{color:var(--danger)}button:disabled{opacity:.55;cursor:default}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}label.f{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted)}label.f input,label.f select,label.f textarea{color:var(--text);font-size:15px}.chip{display:inline-block;padding:1px 9px;border-radius:999px;font-size:12.5px;background:color-mix(in srgb,var(--brand) 14%,transparent);color:var(--brand);margin-right:4px}.chip.off{background:color-mix(in srgb,var(--muted) 18%,transparent);color:var(--muted)}.chip.warn{background:color-mix(in srgb,var(--warn) 18%,transparent);color:var(--warn)}.err{color:var(--danger);margin:8px 0}.ok{color:var(--ok);margin:8px 0}.muted{color:var(--muted)}.check{display:flex;gap:8px;align-items:center;padding:3px 0}.mod{margin:14px 0 6px;font-weight:600}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:16px;background:linear-gradient(160deg,#1900558c,#002dff40),url(/brand/pattern.jpg) center / cover}.login{width:100%;max-width:390px;margin:0;border-radius:32px;padding:28px}.login .logo{height:52px;width:auto;display:block;margin:0 auto 18px}.tabs{display:flex;gap:6px;margin-bottom:12px}.tabs button.on{background:var(--brand);color:var(--on-brand);border-color:var(--brand)}.row-actions{display:flex;gap:6px;flex-wrap:wrap}.num{text-align:right;font-variant-numeric:tabular-nums}.eff-yes{color:var(--ok);font-weight:600}.eff-no{color:var(--muted)}@media (max-width: 800px){.shell{flex-direction:column}.side{width:auto;flex-direction:row;flex-wrap:wrap}.side .who{margin:0}.main{padding:16px}}.portal-top{display:flex;gap:14px;align-items:center;padding:12px 24px;background:var(--panel);border-bottom:1px solid var(--line)}.portal-top .brand img{height:36px;width:auto;display:block}.portal-top .grow{flex:1}.portal-main{max-width:860px;margin:0 auto;padding:24px 16px}textarea{width:100%}.form-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.form-grid label{display:flex;flex-direction:column;gap:4px;font-size:14px}.row{display:flex;align-items:center;gap:8px}.form-grid label.row{flex-direction:row;align-items:center;align-self:end}:focus-visible{outline:2px solid var(--blue-ocean);outline-offset:2px}.portal-main:has(.login-wrap){max-width:none;padding:0}
