@font-face{font-family:Roobert;src:url(/assets/fonts/Roobert-Light.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Roobert;src:url(/assets/fonts/Roobert-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Roobert;src:url(/assets/fonts/Roobert-SemiBold.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}:root{color-scheme:dark;--portal-bg: #000000;--portal-panel: #181818;--portal-border: rgba(255, 255, 255, .15);--portal-text: #ffffff;--portal-muted: #6d6d6d;--portal-accent: #ffffff;--portal-danger: #ff6b6b;--portal-success: #4ade80;--portal-info: #7dd3fc;--portal-gradient: linear-gradient(90deg, rgb(160, 224, 171), rgb(255, 172, 46) 50%, rgb(165, 45, 37))}.portal-body{margin:0;min-height:100vh;background:var(--portal-bg);color:var(--portal-text);font-family:Roobert,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.portal-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:24px;min-height:64px;padding:0 28px;border-bottom:1px solid var(--portal-border);background:#000c;backdrop-filter:blur(16px) saturate(120%);-webkit-backdrop-filter:blur(16px) saturate(120%)}.portal-brand{color:var(--portal-text);font-weight:600;text-decoration:none}.portal-header nav{display:flex;flex:1;gap:8px}.portal-header nav a{border-radius:75.024px;color:var(--portal-muted);padding:6px 14px;text-decoration:none;transition:color .12s ease,background .12s ease}.portal-header nav a:hover{background:#ffffff14;color:var(--portal-text)}.portal-header-admin{justify-content:space-between}.portal-context{color:var(--portal-muted);flex:1;font-size:14px;font-weight:700}.portal-main{margin:0 auto;max-width:1180px;padding:32px 24px 56px}.admin-shell{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:calc(100vh - 65px)}.admin-sidebar{align-self:start;background:#0d0d0d;border-right:1px solid var(--portal-border);display:grid;gap:20px;min-height:calc(100vh - 65px);padding:24px 16px;position:sticky;top:65px}.admin-sidebar nav{display:grid;gap:4px}.admin-sidebar a{border-radius:75.024px;color:var(--portal-muted);font-weight:400;padding:10px 14px;text-decoration:none;transition:color .12s ease,background .12s ease;position:relative}.admin-sidebar a:hover{background:#ffffff12;color:var(--portal-text)}.admin-sidebar a.active{background:#ffffff1a;color:var(--portal-text)}.admin-sidebar a.active:before{content:"";position:absolute;left:0;top:20%;bottom:20%;width:2px;background:var(--portal-gradient);border-radius:2px}.admin-sidebar-link{align-self:end;border:1px solid rgba(255,255,255,.3);border-radius:75.024px;padding:8px 14px;text-align:center;font-size:13px;color:var(--portal-text);text-decoration:none;display:inline-flex;align-items:center;justify-content:center;transition:background .12s ease}.admin-sidebar-link:hover{background:#ffffff14}.admin-main{margin:0;max-width:none;min-width:0}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px}.page-heading h1{font-size:29px;line-height:1.21;margin:0 0 8px;font-weight:600}.page-heading p{color:var(--portal-muted);margin:0}.grid{display:grid;gap:16px}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.panel,.metric,.record{background:var(--portal-panel);border:1px solid var(--portal-border);border-radius:10px}.panel{padding:20px}.metric{padding:18px}.metric span,.muted,.panel .muted,.record .muted,.metric .muted{color:gray}.metric strong{display:block;font-size:26px;font-weight:300;letter-spacing:-.01em;margin-top:8px;font-variant-numeric:tabular-nums}.record{display:grid;gap:8px;padding:16px}.record-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.record h2,.panel h2{font-size:18px;margin:0;font-weight:600;color:var(--portal-text)}.record dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0}.record dt{color:var(--portal-muted);font-size:12px}.record dd{margin:4px 0 0}.button,.ghost-button{align-items:center;border-radius:75.024px;cursor:pointer;display:inline-flex;font:inherit;font-weight:400;letter-spacing:.01em;min-height:38px;padding:0 20px;text-decoration:none;transition:opacity .12s ease,background .12s ease}.button{background:#fff;border:1px solid #ffffff;color:#000}.button:hover{background:#ffffffe0;border-color:#ffffffe0}.button:disabled{opacity:.35;cursor:not-allowed}.ghost-button{background:transparent;border:1px solid rgba(255,255,255,.3);color:#fff}.ghost-button:hover{background:#ffffff14;border-color:#ffffff80}.danger{color:var(--portal-danger)}.form-grid{display:grid;gap:12px;max-width:560px}label{display:grid;gap:6px;font-size:14px;font-weight:400;color:#ffffffb3}input,select,textarea{background:#ffffff0f;border:1px solid var(--portal-border);border-radius:8px;color:var(--portal-text);font:inherit;min-height:40px;padding:8px 12px}input::-moz-placeholder,textarea::-moz-placeholder{color:var(--portal-muted)}input::placeholder,textarea::placeholder{color:var(--portal-muted)}input:focus,select:focus,textarea:focus{outline:none;border-color:#ffffff80;background:#ffffff17}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px #1a1a1a inset;-webkit-text-fill-color:#ffffff;-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s}select option{background:#181818;color:#fff}textarea{min-height:104px}.message{border-radius:8px;margin:16px 0;padding:12px 16px;font-size:14px;line-height:1.5}.message[data-tone=info]{background:#7dd3fc1f;color:var(--portal-info);border:1px solid rgba(125,211,252,.25)}.message[data-tone=error]{background:#ff6b6b1f;color:var(--portal-danger);border:1px solid rgba(255,107,107,.25)}.message[data-tone=success]{background:#4ade801f;color:var(--portal-success);border:1px solid rgba(74,222,128,.25)}hr{border:none;border-top:1px solid var(--portal-border)}table{border-collapse:collapse;width:100%}th,td{border-bottom:1px solid var(--portal-border);padding:10px 8px;text-align:left;vertical-align:top}th{color:var(--portal-muted);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.badge{display:inline-flex;align-items:center;padding:2px 10px;border-radius:75.024px;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.badge-pending{background:#6d6d6d40;color:#aaa;border:1px solid rgba(109,109,109,.4)}.badge-approved{background:#4ade8026;color:#4ade80;border:1px solid rgba(74,222,128,.3)}.badge-rejected{background:#ff6b6b26;color:#ff6b6b;border:1px solid rgba(255,107,107,.3)}@media(max-width:860px){.portal-header{align-items:flex-start;flex-direction:column;padding:14px 18px}.portal-header nav{flex-wrap:wrap}.portal-context{flex:none}.admin-shell{display:block;min-height:0}.admin-sidebar{border-bottom:1px solid var(--portal-border);border-right:none;display:block;min-height:0;overflow-x:auto;padding:12px 18px;position:static;white-space:nowrap}.admin-sidebar nav{display:flex;gap:8px}.admin-sidebar a{display:inline-flex}.admin-sidebar-link{display:none}.admin-main{padding:24px 18px 44px}.grid.cols-2,.grid.cols-4,.record dl{grid-template-columns:1fr}}
