@font-face{font-family:Poppins;src:url('assets/Poppins-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Poppins;src:url('assets/Poppins-Medium.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:Poppins;src:url('assets/Poppins-SemiBold.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:Comfortaa;src:url('assets/Comfortaa.ttf') format('truetype');font-weight:400 700;font-display:swap}

:root{
  color-scheme:dark;
  --bg:#121016;
  --sidebar:#16131a;
  --panel:#1b171f;
  --panel-raised:#211b25;
  --panel-soft:#19151d;
  --line:#332936;
  --line-soft:#29222e;
  --text:#f8f3f7;
  --muted:#b9adbf;
  --faint:#8f8296;
  --pink:#ff8dc0;
  --pink-pale:#ffd0e4;
  --pink-deep:#4a293a;
  --green:#92d7ae;
  --amber:#e7bc7f;
  --blue:#94bada;
  --danger:#ef91a2;
  --radius:14px;
  --shadow:0 18px 45px -34px #000;
  --ease:cubic-bezier(.22,1,.36,1);
  font-family:system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:16px;
  font-synthesis:none
}

html{scrollbar-color:#8b506d #151219;scrollbar-width:thin}
*{box-sizing:border-box}
*::-webkit-scrollbar{width:10px;height:10px}
*::-webkit-scrollbar-track{background:#151219}
*::-webkit-scrollbar-thumb{min-height:42px;border:2px solid #151219;border-radius:999px;background:linear-gradient(180deg,#9c5b7b,#664057)}
*::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#bd6d94,#7b4a66)}
*::-webkit-scrollbar-corner{background:#151219}
body{margin:0;min-width:320px;min-height:100vh;background:var(--bg);color:var(--text);font-size:14px}
[hidden]{display:none!important}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
button:disabled{cursor:default;opacity:.58}
a{color:inherit;text-decoration:none}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-family:Poppins,system-ui,sans-serif;font-weight:500}
img{display:block;max-width:100%}
svg.icon{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--pink);outline-offset:3px}
.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.skip-link{position:fixed;left:12px;top:12px;z-index:200;transform:translateY(-180%);padding:10px 15px;border-radius:7px;background:var(--pink);color:#281521;font-weight:600}
.skip-link:focus{transform:translateY(0)}
.mobile-only{display:none!important}

/* Shared controls */
.wordmark{display:inline-flex;align-items:center;gap:10px;width:max-content}
.wordmark span{font:600 26px Comfortaa,sans-serif;letter-spacing:-1.7px;padding-top:4px}
.wordmark img{filter:drop-shadow(0 0 13px #f05f9b2f)}
.eyebrow{font:600 11px/1.5 Poppins,sans-serif;letter-spacing:1.55px;color:var(--pink-pale)}
.pink-period{color:var(--pink)}
.avatar{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;border:1px solid #a9708645;background:linear-gradient(135deg,#654052,#352436);color:var(--pink-pale);font:500 14px Poppins,sans-serif;flex:none}
.avatar-small{width:34px;height:34px}
.icon-button{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--muted);transition:background .18s,border-color .18s,color .18s}
.icon-button:hover{background:var(--panel-raised);border-color:var(--line-soft);color:var(--pink-pale)}
.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:42px;padding:10px 16px;border:1px solid transparent;border-radius:8px;font-weight:600;font-size:13px;line-height:1;transition:background .18s,border-color .18s,transform .18s,box-shadow .18s}
.button:hover:not(:disabled){transform:translateY(-1px)}
.button-primary{background:var(--pink);border-color:#ffa9cf;color:#2b1722;box-shadow:0 8px 20px -13px #ff8dc0}
.button-primary:hover:not(:disabled){background:#ffa6cc}
.button-secondary{background:#ffffff03;border-color:var(--line);color:var(--text)}
.button-secondary:hover:not(:disabled){background:#ffffff08;border-color:#735065}
.button-danger{background:#43252f;border-color:#7a3f50;color:#ffc3cc}
.button-danger:hover:not(:disabled){background:#58303d;border-color:#a5576c}
.button-full{width:100%}
.button-small{min-height:36px;padding:8px 12px;font-size:12px}
.text-button{display:inline-flex;align-items:center;gap:7px;padding:5px;border:0;background:transparent;color:var(--pink-pale);font-size:12px}
.text-button svg{width:14px;height:14px}
.text-button:hover{color:var(--pink)}
.field{display:flex;flex-direction:column;gap:7px;min-width:0}
.field>span{display:flex;justify-content:space-between;color:#d5cad7;font-size:12px;font-weight:500}
.field>span small{color:var(--faint);font-weight:400}
.field input,.field select,.field textarea,.search-field input,.range-control select{width:100%;border:1px solid #3d3040;border-radius:8px;background:#141118;color:var(--text);transition:border-color .18s,box-shadow .18s}
.field input,.field select{height:42px;padding:0 12px}
.field textarea{padding:11px 12px;resize:vertical;line-height:1.5}
.field input::placeholder,.field textarea::placeholder,.search-field input::placeholder{color:#756978}
.field input:hover,.field select:hover,.field textarea:hover,.search-field:hover input{border-color:#594157}
.field input:focus,.field select:focus,.field textarea:focus,.search-field input:focus{outline:none;border-color:#a86082;box-shadow:0 0 0 3px #ff8dc014}
.field select,.range-control select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#9d8ca3 50%),linear-gradient(135deg,#9d8ca3 50%,transparent 50%);background-position:calc(100% - 15px) 17px,calc(100% - 10px) 17px;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:32px}
.inline-message{margin-top:14px;padding:11px 13px;border:1px solid #3a3140;border-radius:8px;background:#ffffff03;color:var(--muted);font-size:12px;line-height:1.5}
.inline-message.success{border-color:#31523e;background:#1a2920;color:#a5dfb8}
.inline-message.error{border-color:#673746;background:#2c1b22;color:#ffb4c1}
.count-badge{display:inline-flex;align-items:center;height:27px;padding:0 9px;border:1px solid var(--line);border-radius:99px;background:#ffffff03;color:var(--muted);font-size:11px;white-space:nowrap}
.status-pill{display:inline-flex;align-items:center;gap:6px;height:25px;padding:0 9px;border-radius:99px;font-size:11px;border:1px solid var(--line)}
.status-pill i,.service-list i{width:5px;height:5px;border-radius:50%;background:currentColor;box-shadow:0 0 7px currentColor}
.status-pill.good{color:var(--green);border-color:#31503d;background:#1b2921}
.status-pill.warn{color:var(--amber);border-color:#55452f;background:#2a241b}
.status-pill.danger{color:#ff9bad;border-color:#663846;background:#2d1d23}

/* Authentication */
.auth-view{min-height:100vh;display:grid;place-items:center;padding:34px;background:radial-gradient(ellipse at 18% 45%,#55243b26 0,transparent 47%),var(--bg)}
.auth-stage{position:relative;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(340px,.72fr);width:min(100%,1040px);min-height:610px;overflow:hidden;border:1px solid var(--line);border-radius:22px;background:#17131b;box-shadow:0 30px 90px -55px #000}
.auth-brand{position:relative;overflow:hidden;padding:44px;background:linear-gradient(145deg,#211821 0%,#2c1c29 54%,#5a2c41 130%);border-right:1px solid #3c2b39}
.auth-brand>.wordmark{position:relative;z-index:2}
.auth-copy{position:relative;z-index:2;max-width:410px;margin-top:128px}
.auth-copy h1{font-size:45px;line-height:1.15;letter-spacing:-1.5px;margin:14px 0 15px}
.auth-copy>p:last-child{max-width:330px;color:#c6b7c4;font-size:15px;line-height:1.8}
.auth-branch{position:absolute;right:-75px;bottom:-48px;width:520px;opacity:.66;transform:rotate(-5deg);filter:saturate(.9)}
.auth-card{align-self:center;margin:46px;padding:5px 0}
.auth-card-heading{display:flex;align-items:center;gap:13px;margin-bottom:28px}
.auth-card-heading h2,.form-panel-head h2{font-size:19px;letter-spacing:-.35px}
.auth-card-heading p,.form-panel-head p{margin-top:4px;color:var(--muted);font-size:12px}
.icon-tile,.feature-icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid #5f3a51;border-radius:11px;background:#2c1b27;color:var(--pink-pale);flex:none}
.auth-card form{display:flex;flex-direction:column;gap:15px}
.auth-card .button{margin-top:3px}
.auth-note{display:flex;align-items:flex-start;gap:8px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line-soft);color:var(--faint);font-size:11px;line-height:1.6}
.auth-note svg{width:15px;height:15px;margin-top:1px}

/* Shell */
.admin-shell{min-height:100vh}
.sidebar{position:fixed;z-index:40;inset:0 auto 0 0;width:238px;display:flex;flex-direction:column;padding:30px 18px 0;background:var(--sidebar);border-right:1px solid var(--line-soft);overflow-y:auto}
.sidebar::-webkit-scrollbar{width:7px}
.sidebar-head{display:flex;align-items:center;justify-content:space-between;padding:0 10px}
.sidebar-caption{margin:43px 13px 14px;color:var(--faint);font-size:10px;font-weight:600;letter-spacing:1.65px}
.nav-list{display:flex;flex-direction:column;gap:5px}
.nav-list a{position:relative;display:flex;align-items:center;gap:12px;min-height:44px;padding:0 13px;border-radius:8px;color:var(--muted);font-size:13px;transition:background .18s,color .18s}
.nav-list a:hover{background:#ffffff04;color:var(--text)}
.nav-list a[aria-current=page]{background:linear-gradient(90deg,#482b3c,#33202f);color:var(--pink-pale);box-shadow:inset 0 0 0 1px #a94d7930}
.nav-list a[aria-current=page]:before{content:"";position:absolute;left:-18px;width:3px;height:19px;border-radius:0 3px 3px 0;background:var(--pink);box-shadow:0 0 14px #ff8dc04d}
.nav-list svg{width:17px;height:17px}
.nav-count{margin-left:auto;min-width:21px;padding:1px 5px;border-radius:4px;background:#ffffff07;color:var(--faint);font-size:11px;text-align:center}
.alert-count{background:#43252f;color:#ffafbc}
.nav-live-dot{width:7px;height:7px;margin-left:auto;border-radius:50%;background:#75d39a;box-shadow:0 0 0 4px #75d39a12,0 0 11px #75d39a66}
.nav-live-dot.paused{background:#a98b9b;box-shadow:none}
.nav-live-dot.offline{background:var(--danger);box-shadow:0 0 0 4px #ff8d9d12}
.sidebar-note{margin:auto 1px 18px;padding:16px;border:1px solid #6240544a;border-radius:11px;background:radial-gradient(ellipse at 110% -10%,#6a33413d,transparent 78%)}
.sidebar-note img{margin-bottom:9px}
.sidebar-note p{color:var(--muted);font-size:11px;line-height:1.6}
.sidebar-profile{display:flex;align-items:center;gap:10px;padding:19px 5px 23px;border-top:1px solid var(--line-soft)}
.profile-copy{min-width:0}
.profile-copy strong{display:block;overflow:hidden;text-overflow:ellipsis;font-size:12px;font-weight:600;white-space:nowrap}
.profile-copy small{color:var(--faint);font-size:11px}
.sidebar-profile .icon-button{margin-left:auto;width:34px;height:34px}
.workspace{min-height:100vh;margin-left:238px}
.topbar{position:sticky;z-index:25;top:0;height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 38px;border-bottom:1px solid var(--line-soft);background:#121016eb;backdrop-filter:blur(16px)}
.topbar-title{display:flex;align-items:center;gap:12px}
.topbar-title p{color:var(--faint);font-size:10px;text-transform:uppercase;letter-spacing:1.1px}
.topbar-title h2{margin-top:1px;font-size:15px;letter-spacing:-.2px}
.topbar-actions{display:flex;align-items:center;gap:10px}
.range-control{display:flex;align-items:center;gap:8px;height:38px;padding:0 7px 0 11px;border:1px solid var(--line-soft);border-radius:9px;background:#17131b;color:var(--muted)}
.range-control svg{width:15px;height:15px}
.range-control select{width:132px;height:32px;padding:0 24px 0 0;border:0;background-color:transparent;background-position:calc(100% - 8px) 13px,calc(100% - 4px) 13px;font-size:12px}
.refresh-button.loading svg{animation:spin .75s linear infinite}
main{width:100%;padding:34px 38px 48px;outline:none}
.page{max-width:1500px;margin:0 auto;animation:page-in .28s ease-out}
.page-heading{margin-bottom:25px}
.page-heading h1{margin:7px 0 6px;font-size:29px;line-height:1.22;letter-spacing:-.85px}
.page-heading>p:last-child,.page-heading>div>p:last-child{color:var(--muted);font-size:13px}
.split-heading,.overview-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.last-updated{color:var(--faint);font-size:11px}
.panel{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow)}
.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.panel-head h2{margin-top:4px;font-size:17px;letter-spacing:-.3px}
.global-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1500px;margin:0 auto 18px;padding:11px 13px;border:1px solid #6b3c4d;border-radius:9px;background:#2b1c23;color:#ffc0cc;font-size:12px}
.global-banner button{display:inline-flex;border:0;background:none;color:inherit;padding:2px}
.global-banner svg{width:15px;height:15px}

/* Overview */
.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}
.metric-card{display:flex;align-items:center;gap:14px;min-height:110px;padding:19px;border:1px solid var(--line);border-radius:13px;background:linear-gradient(145deg,#1c1820,#19151d);box-shadow:var(--shadow)}
.metric-icon{display:inline-flex;align-items:center;justify-content:center;width:43px;height:43px;border:1px solid currentColor;border-radius:11px;flex:none}
.metric-icon.rose{color:#e99abb;background:#392331}
.metric-icon.blue{color:var(--blue);background:#202b35}
.metric-icon.amber{color:var(--amber);background:#31291f}
.metric-icon.green{color:var(--green);background:#1f2e25}
.metric-card>div>span{display:block;color:var(--muted);font-size:11px}
.metric-card strong{display:block;margin:1px 0 1px;font:500 25px/1.25 Poppins,sans-serif;letter-spacing:-.6px}
.metric-card small{display:block;color:var(--faint);font-size:10px;white-space:nowrap}
.overview-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(310px,.66fr);gap:16px}
.overview-activity-panel,.system-panel,.quick-panel{padding:20px}
.overview-side{display:flex;flex-direction:column;gap:16px}
.system-panel,.quick-panel{flex:1}
.service-list{margin-top:15px}
.service-list>div{display:flex;align-items:center;justify-content:space-between;padding:11px 0;border-top:1px solid var(--line-soft);font-size:12px}
.service-list>div:first-child{border-top:0}
.service-list>div>span{color:var(--muted)}
.service-list strong{display:flex;align-items:center;gap:7px;color:#b7dec5;font-size:11px;font-weight:500}
.quick-actions{margin:13px -8px -7px}
.quick-actions button{width:100%;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:9px 8px;border:0;border-radius:8px;background:none;text-align:left;color:var(--text)}
.quick-actions button:hover{background:#ffffff04}
.quick-actions button>span:nth-child(2){min-width:0}
.quick-actions strong,.quick-actions small{display:block}
.quick-actions strong{font-size:12px;font-weight:500}
.quick-actions small{margin-top:2px;color:var(--faint);font-size:10px}
.quick-icon{display:inline-flex;align-items:center;justify-content:center;width:33px;height:33px;border:1px solid #4c3545;border-radius:8px;background:#251a22;color:var(--pink-pale)}
.quick-icon svg{width:15px;height:15px}
.quick-actions button>svg{width:14px;height:14px;color:var(--faint)}

/* Activity timeline */
.activity-panel{padding:0}
.activity-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border-bottom:1px solid var(--line-soft)}
.segmented{display:inline-flex;padding:3px;border:1px solid var(--line-soft);border-radius:9px;background:#151219}
.segmented button{min-height:31px;padding:0 12px;border:0;border-radius:6px;background:transparent;color:var(--muted);font-size:11px}
.segmented button:hover{color:var(--text)}
.segmented button.active{background:#3b2533;color:var(--pink-pale)}
.search-field{position:relative;width:min(310px,100%)}
.search-field svg{position:absolute;left:11px;top:50%;width:15px;height:15px;transform:translateY(-50%);color:var(--faint)}
.search-field input{height:38px;padding:0 12px 0 34px;font-size:12px}
.timeline{display:flex;flex-direction:column}
.timeline-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;padding:15px 18px;border-top:1px solid var(--line-soft)}
.timeline-item:first-child{border-top:0}
.timeline-icon{display:inline-flex;align-items:center;justify-content:center;width:37px;height:37px;border:1px solid #4c3545;border-radius:9px;background:#251a22;color:var(--pink-pale)}
.timeline-icon svg{width:16px;height:16px}
.timeline-icon.security{border-color:#5e3945;background:#2c1e24;color:#ffadbb}
.timeline-icon.download{border-color:#344956;background:#1e2930;color:#9cc9e1}
.timeline-icon.admin{border-color:#4c405b;background:#24202e;color:#c2acd8}
.timeline-body{min-width:0}
.timeline-title{display:flex;align-items:center;gap:8px;min-width:0}
.timeline-title strong{overflow:hidden;text-overflow:ellipsis;font-size:12px;font-weight:600;white-space:nowrap}
.event-kind{padding:2px 6px;border-radius:4px;background:#ffffff06;color:var(--faint);font-size:9px;text-transform:uppercase;letter-spacing:.7px}
.timeline-body p{margin-top:3px;overflow:hidden;text-overflow:ellipsis;color:var(--muted);font-size:11px;white-space:nowrap}
.timeline-meta{text-align:right}
.timeline-meta time{display:block;color:var(--muted);font-size:11px;white-space:nowrap}
.timeline-meta small{display:block;margin-top:3px;color:var(--faint);font-size:9px}
.compact-timeline{margin:9px -20px -20px}
.compact-timeline .timeline-item{padding:12px 20px}
.compact-timeline .timeline-icon{width:33px;height:33px}
.empty-state{display:grid;place-items:center;min-height:190px;padding:32px;text-align:center}
.empty-state span{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin-bottom:12px;border:1px solid var(--line);border-radius:11px;color:var(--muted)}
.empty-state h3{font-size:14px}
.empty-state p{max-width:330px;margin-top:4px;color:var(--faint);font-size:11px;line-height:1.6}

/* Live operations */
.live-heading-actions{display:flex;align-items:center;gap:12px}
.live-pause{min-width:92px}
.live-pause.paused{border-color:#7a4e64;background:#2b1d26;color:var(--pink-pale)}
.live-pause svg{width:14px;height:14px}
.live-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:14px}
.live-summary{display:flex;align-items:center;gap:12px;min-height:88px;padding:15px 16px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(145deg,#1d1821,#18151c);box-shadow:var(--shadow)}
.live-summary-icon{display:inline-flex;align-items:center;justify-content:center;width:37px;height:37px;flex:none;border:1px solid #503548;border-radius:9px;background:#291c24;color:var(--pink-pale)}
.live-summary-icon svg{width:16px;height:16px}
.live-summary>div>span{display:block;color:var(--muted);font-size:10px}
.live-summary strong{display:block;margin-top:1px;font:500 21px/1.3 Poppins,sans-serif;letter-spacing:-.45px}
.live-summary small{display:block;color:var(--faint);font-size:9px}
.live-panel{padding:0}
.live-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border-bottom:1px solid var(--line-soft)}
.live-segmented{flex-wrap:wrap}
.live-search{width:min(340px,100%)}
.live-column-head,.live-row{display:grid;grid-template-columns:minmax(340px,1.65fr) minmax(140px,.7fr) minmax(170px,.85fr) 94px;gap:14px;align-items:center}
.live-column-head{padding:9px 16px;border-bottom:1px solid var(--line-soft);background:#17131b;color:var(--faint);font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.9px}
.live-column-head span:last-child{text-align:right}
.live-feed{display:flex;flex-direction:column;max-height:calc(100vh - 390px);min-height:310px;overflow:auto}
.live-row{position:relative;padding:12px 16px;border-top:1px solid var(--line-soft)}
.live-row:first-child{border-top:0}
.live-row:before{content:"";position:absolute;left:0;top:17px;width:2px;height:29px;border-radius:0 2px 2px 0;background:#8d5874}
.live-row.live-error:before{background:#e77787}
.live-row.live-server:before{background:#80acc6}
.live-row.live-disconnect:before{background:#dca07c}
.live-row.live-download:before{background:#7fc49a}
.live-event-cell{display:flex;align-items:center;gap:11px;min-width:0}
.live-event-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex:none;border:1px solid #4c3545;border-radius:8px;background:#251a22;color:var(--pink-pale)}
.live-error .live-event-icon{border-color:#603a45;background:#2d1d24;color:#ffabb9}
.live-server .live-event-icon{border-color:#344957;background:#1c2931;color:#9bc9e2}
.live-disconnect .live-event-icon{border-color:#5a4438;background:#2c221d;color:#efb892}
.live-download .live-event-icon{border-color:#345140;background:#1c2b22;color:#98d2ac}
.live-event-icon svg{width:15px;height:15px}
.live-event-copy{min-width:0}
.live-event-copy>div{display:flex;align-items:center;gap:7px;min-width:0}
.live-event-copy strong{overflow:hidden;text-overflow:ellipsis;font-size:11px;font-weight:600;white-space:nowrap}
.live-event-copy p{margin-top:3px;overflow:hidden;text-overflow:ellipsis;color:var(--faint);font-size:10px;white-space:nowrap}
.live-data-cell{min-width:0}
.live-data-cell strong,.live-data-cell small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.live-data-cell strong{font-size:11px;font-weight:500}
.live-data-cell small{margin-top:3px;color:var(--faint);font-size:9px}
.live-time-cell{text-align:right}
.live-time-cell time{display:block;color:var(--muted);font-size:10px;white-space:nowrap}
.live-time-cell small{display:block;margin-top:3px;color:var(--faint);font-size:9px;white-space:nowrap}

/* Licenses */
.license-grid{display:grid;grid-template-columns:minmax(320px,.72fr) minmax(520px,1.28fr);gap:16px;align-items:start}
.form-panel{padding:22px}
.form-panel-head{display:flex;align-items:center;gap:13px;margin-bottom:22px}
.feature-icon{width:40px;height:40px}
.feature-icon.danger{border-color:#693d4a;background:#321f26;color:#ffb0bd}
.form-panel form{display:flex;flex-direction:column;gap:14px}
.field-wide{width:100%}
.input-action{display:flex;gap:8px}
.input-action input{min-width:0;flex:1}
.form-row{display:grid;gap:12px}
.form-row.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.form-row.thirds{grid-template-columns:.65fr .85fr 1fr}
.form-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:2px;padding-top:15px;border-top:1px solid var(--line-soft)}
.form-actions p{display:flex;align-items:flex-start;gap:7px;max-width:410px;color:var(--faint);font-size:10px;line-height:1.55}
.form-actions p svg{width:14px;height:14px;margin-top:1px}
.lookup-result{margin-top:16px;padding-top:15px;border-top:1px solid var(--line-soft)}
.lookup-result-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px}
.lookup-result-head h3{font-size:14px}
.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--line-soft);border-radius:9px;overflow:hidden}
.detail-item{padding:11px 12px;border-top:1px solid var(--line-soft);border-left:1px solid var(--line-soft)}
.detail-item:nth-child(-n+2){border-top:0}
.detail-item:nth-child(odd){border-left:0}
.detail-item span{display:block;color:var(--faint);font-size:9px;text-transform:uppercase;letter-spacing:.8px}
.detail-item strong{display:block;margin-top:4px;overflow:hidden;text-overflow:ellipsis;font-size:11px;font-weight:500;white-space:nowrap}
.generated-result{margin-top:18px;padding:16px;border:1px solid #4e3544;border-radius:10px;background:#18141b}
.generated-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:11px}
.generated-head h3{margin-top:2px;font-size:14px}
.generated-keys{display:flex;flex-direction:column;gap:6px}
.generated-key{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:39px;padding:7px 8px 7px 11px;border:1px solid var(--line-soft);border-radius:7px;background:#111015}
.generated-key code{min-width:0;overflow:hidden;text-overflow:ellipsis;color:#f4d8e5;font:500 11px ui-monospace,SFMono-Regular,Consolas,monospace;white-space:nowrap}
.generated-key button{width:30px;height:28px;border:0;border-radius:6px;background:#ffffff05;color:var(--muted)}
.generated-key button:hover{background:#ffffff0b;color:var(--pink-pale)}
.generated-key button svg{width:14px;height:14px;margin:auto}

/* Releases */
.release-panel{padding:0}
.release-list{display:flex;flex-direction:column}
.release-group{border-top:1px solid var(--line-soft)}
.release-group:first-child{border-top:0}
.release-group-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 19px;background:#1c1820}
.release-product{display:flex;align-items:center;gap:11px}
.release-product>span{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #4d3545;border-radius:9px;background:#271b23;color:var(--pink-pale)}
.release-product h2{font-size:14px}
.release-product p{margin-top:2px;color:var(--faint);font-size:10px}
.release-row{display:grid;grid-template-columns:minmax(160px,1.4fr) 1fr 1fr .8fr auto;align-items:center;gap:16px;padding:13px 19px;border-top:1px solid var(--line-soft);font-size:11px}
.release-row>span{min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--muted);white-space:nowrap}
.release-version strong{display:block;color:var(--text);font-weight:500}
.release-version small{display:block;margin-top:2px;color:var(--faint);font:9px ui-monospace,monospace}
.current-label{display:inline-flex!important;align-items:center;gap:6px;color:var(--green)!important}
.current-label i{width:5px;height:5px;border-radius:50%;background:currentColor}

/* Security */
.security-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);gap:16px;align-items:start}
.security-main{display:flex;flex-direction:column;gap:16px}
.security-main>.panel{padding:20px}
.review-list,.ban-history{margin:12px -20px -20px}
.review-row,.ban-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 20px;border-top:1px solid var(--line-soft)}
.review-row>span:first-child,.ban-row>span:first-child{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid #5b3946;border-radius:8px;background:#2a1d23;color:#ffafbc}
.review-copy,.ban-copy{min-width:0}
.review-copy strong,.ban-copy strong{display:block;overflow:hidden;text-overflow:ellipsis;font-size:11px;font-weight:600;white-space:nowrap}
.review-copy small,.ban-copy small{display:block;margin-top:3px;overflow:hidden;text-overflow:ellipsis;color:var(--faint);font-size:10px;white-space:nowrap}
.review-row .button{min-height:34px;padding:7px 10px;font-size:10px}
.ban-row time{color:var(--faint);font-size:10px;white-space:nowrap}
.ban-panel{position:sticky;top:94px;padding:22px}
.ban-panel form{display:flex;flex-direction:column;gap:13px}

/* Dialogs and feedback */
.dialog-backdrop{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:20px;background:#09070cb8;backdrop-filter:blur(8px)}
.dialog{width:min(100%,410px);padding:26px;border:1px solid #493341;border-radius:16px;background:#1c171f;box-shadow:0 28px 80px -35px #000;text-align:center;animation:dialog-in .2s var(--ease)}
.dialog>.feature-icon{margin:0 auto 14px}
.dialog h2{font-size:19px}
.dialog>p{margin:7px auto 22px;max-width:310px;color:var(--muted);font-size:12px;line-height:1.6}
.dialog-actions{display:flex;justify-content:center;gap:9px}
.toast-region{position:fixed;z-index:150;right:22px;bottom:22px;display:flex;flex-direction:column;gap:8px;pointer-events:none}
.toast{display:flex;align-items:center;gap:10px;min-width:240px;max-width:380px;padding:12px 14px;border:1px solid #4a3542;border-radius:10px;background:#211922eF;box-shadow:0 20px 50px -28px #000;color:var(--text);font-size:12px;animation:toast-in .25s var(--ease)}
.toast svg{color:var(--green)}
.toast.error svg{color:var(--danger)}

@keyframes page-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@keyframes dialog-in{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}
@keyframes toast-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes spin{to{transform:rotate(360deg)}}

@media (max-width:1180px){
  .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .live-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .live-column-head,.live-row{grid-template-columns:minmax(300px,1.4fr) minmax(130px,.65fr) minmax(150px,.75fr) 86px}
  .overview-grid{grid-template-columns:minmax(0,1.35fr) minmax(290px,.65fr)}
  .license-grid{grid-template-columns:1fr}
  .security-grid{grid-template-columns:1fr}
  .ban-panel{position:static}
}

@media (max-width:900px){
  .mobile-only{display:inline-flex!important}
  .sidebar{transform:translateX(-105%);transition:transform .25s var(--ease);box-shadow:18px 0 55px -35px #000}
  .sidebar.open{transform:translateX(0)}
  .mobile-scrim{position:fixed;z-index:35;inset:0;background:#08060aa6;backdrop-filter:blur(3px)}
  .workspace{margin-left:0}
  .topbar{padding:0 24px}
  main{padding:28px 24px 40px}
  .overview-grid{grid-template-columns:1fr}
  .overview-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .auth-stage{grid-template-columns:1fr;min-height:0;width:min(100%,520px)}
  .auth-brand{min-height:220px;padding:30px;border-right:0;border-bottom:1px solid #3c2b39}
  .auth-copy{margin-top:47px}
  .auth-copy h1{font-size:34px}
  .auth-copy>p:last-child{font-size:13px}
  .auth-branch{right:-55px;bottom:-105px;width:390px;opacity:.5}
  .auth-card{margin:34px}
  .release-row{grid-template-columns:minmax(145px,1.4fr) 1fr 1fr auto}
  .release-row>span:nth-child(4){display:none}
  .live-column-head,.live-row{grid-template-columns:minmax(280px,1.4fr) minmax(130px,.7fr) 84px}
  .live-column-head span:nth-child(3),.live-row>.live-data-cell:nth-child(3){display:none}
}

@media (max-width:660px){
  .auth-view{padding:14px}
  .auth-brand{min-height:190px;padding:25px}
  .auth-copy{margin-top:35px}
  .auth-copy h1{font-size:30px}
  .auth-copy>p:last-child{max-width:260px}
  .auth-card{margin:27px 24px}
  .topbar{height:68px;padding:0 16px}
  .topbar-title p{display:none}
  .range-control{padding-left:8px}
  .range-control select{width:105px}
  .topbar-actions{gap:5px}
  .topbar-actions>.avatar{display:none}
  main{padding:24px 16px 35px}
  .page-heading,.split-heading,.overview-heading{display:block}
  .page-heading h1{font-size:26px}
  .last-updated,.split-heading>.count-badge{display:inline-flex;margin-top:12px}
  .metric-grid{grid-template-columns:1fr 1fr;gap:10px}
  .metric-card{display:block;min-height:132px;padding:15px}
  .metric-icon{width:36px;height:36px;margin-bottom:12px}
  .metric-card strong{font-size:22px}
  .overview-side{grid-template-columns:1fr}
  .activity-toolbar{align-items:stretch;flex-direction:column}
  .live-heading-actions{justify-content:space-between;margin-top:12px}
  .live-toolbar{align-items:stretch;flex-direction:column}
  .segmented.live-segmented{display:grid;grid-template-columns:repeat(3,1fr)}
  .live-search{width:100%}
  .live-column-head{display:none}
  .live-feed{max-height:none;min-height:260px}
  .live-row{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:13px 14px}
  .live-row>.live-data-cell:nth-child(2){grid-column:1;padding-left:45px}
  .live-row>.live-data-cell:nth-child(3){display:none}
  .live-time-cell{grid-column:2;grid-row:1 / span 2}
  .live-time-cell small{display:none}
  .segmented{display:grid;grid-template-columns:repeat(4,1fr)}
  .segmented button{padding:0 7px}
  .search-field{width:100%}
  .timeline-item{grid-template-columns:auto minmax(0,1fr);padding:13px 14px}
  .timeline-meta{grid-column:2;text-align:left;margin-top:-6px}
  .timeline-meta small{display:none}
  .form-panel{padding:18px}
  .form-row.two,.form-row.thirds{grid-template-columns:1fr}
  .input-action{align-items:stretch;flex-direction:column}
  .form-actions{align-items:stretch;flex-direction:column}
  .form-actions .button{width:100%}
  .release-group-head{padding:15px}
  .release-row{grid-template-columns:minmax(0,1fr) auto;padding:13px 15px}
  .release-row>span:nth-child(2),.release-row>span:nth-child(3),.release-row>span:nth-child(4){display:none}
  .review-row,.ban-row{padding:12px 16px}
  .review-list,.ban-history{margin:12px -18px -18px}
  .review-row{grid-template-columns:auto minmax(0,1fr)}
  .review-row .button{grid-column:2;justify-self:start}
  .ban-row{grid-template-columns:auto minmax(0,1fr)}
  .ban-row time{grid-column:2}
}

@media (max-width:380px){
  .metric-grid{grid-template-columns:1fr}
  .metric-card{display:flex;min-height:94px}
  .metric-icon{margin-bottom:0}
  .range-control svg{display:none}
  .range-control{padding-left:7px}
  .range-control select{width:94px}
  .topbar-title h2{font-size:14px}
  .live-summary-grid{grid-template-columns:1fr}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
