:root{
  --savage-bg:#061426;--savage-bg-2:#071a30;--savage-surface:#0a203a;--savage-surface-2:#0b2748;
  --savage-surface-3:#0d3158;--savage-primary:#168bff;--savage-cyan:#00d8ff;--savage-success:#00d991;
  --savage-danger:#ff445d;--savage-warning:#ffb020;--savage-purple:#6c5cff;--savage-text:#f8fbff;
  --savage-muted:#afc1d8;--savage-muted-2:#71869e;--savage-line:rgba(90,165,255,.24);--savage-radius:18px;
  --savage-shadow:0 18px 48px rgba(0,0,0,.28);--savage-glow:0 0 30px rgba(0,216,255,.08)
}
html{background:var(--savage-bg)}
body.savage-admin{
  background:radial-gradient(circle at 88% 0,rgba(22,139,255,.14),transparent 28%),linear-gradient(180deg,#061426,#04101f 72%);
  color:var(--savage-text);min-height:100vh
}
.savage-admin ::selection{background:rgba(0,216,255,.24);color:#fff}
.savage-admin .shell{background:transparent}
.savage-admin .side{
  background:radial-gradient(circle at 0 0,rgba(22,139,255,.14),transparent 30%),linear-gradient(180deg,#071a30,#04101f);
  border-right:1px solid rgba(90,165,255,.20);box-shadow:16px 0 44px rgba(0,0,0,.24)
}
.savage-admin .brand{border-bottom-color:rgba(90,165,255,.22);padding-bottom:16px}
.savage-admin .brand img{filter:drop-shadow(0 8px 20px rgba(0,216,255,.24))}
.savage-admin .brand b{font-size:15px;letter-spacing:.09em;color:#fff}.savage-admin .brand small{color:#9eb9d5;letter-spacing:.08em}
.savage-admin .profile{margin:8px 0 2px;border-radius:14px;background:rgba(255,255,255,.035);border:1px solid rgba(90,165,255,.08)}
.savage-admin .profile .av{background:linear-gradient(145deg,#0d3158,#0b2748);border:1px solid rgba(90,165,255,.24);color:var(--savage-cyan);box-shadow:0 0 20px rgba(0,216,255,.08)}
.savage-admin .profile b{color:#eef7ff}.savage-admin .profile small{color:#8ba4bd}
.savage-admin .nav-section{color:#6282a5;padding-top:15px}.savage-admin .nav a{border:1px solid transparent;border-radius:11px;color:#c9d9ea;transition:.16s ease}
.savage-admin .nav a i{color:#7fb8ef;transition:.16s ease}.savage-admin .nav a:hover{background:#0b2748;border-color:rgba(90,165,255,.20);color:#fff;transform:translateX(2px)}
.savage-admin .nav a:hover i{color:var(--savage-cyan)}.savage-admin .nav a.active{background:linear-gradient(135deg,#0b5fb8,#5b45c9);border-color:rgba(90,165,255,.48);box-shadow:0 9px 26px rgba(22,139,255,.22);color:#fff}
.savage-admin .nav a.active i{color:#fff}.savage-admin .logout{border-top-color:rgba(90,165,255,.18)}.savage-admin .logout button{color:#b8cce1;border-radius:10px}.savage-admin .logout button:hover{background:rgba(255,68,93,.10);color:#ff8092}
.savage-admin .main{background:transparent}
.savage-admin .top{
  background:linear-gradient(180deg,rgba(7,26,48,.97),rgba(6,20,38,.96));backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(90,165,255,.25);box-shadow:0 12px 34px rgba(0,0,0,.20);color:#fff
}
.savage-admin .top h1{font-weight:850;color:#f8fbff;letter-spacing:-.015em}.savage-admin .top a{color:#8ec9ff!important}.savage-admin .top a:hover{color:var(--savage-cyan)!important}.savage-admin .top b{color:#dcecff}
.savage-admin .content{background:radial-gradient(circle at 94% 0,rgba(22,139,255,.12),transparent 24%),transparent;min-height:calc(100vh - 64px)}
.savage-admin .card{
  color:var(--savage-text);border:1px solid var(--savage-line);border-radius:var(--savage-radius);box-shadow:var(--savage-shadow),var(--savage-glow);
  background:linear-gradient(180deg,rgba(10,32,58,.96),rgba(7,26,48,.96));position:relative;overflow:hidden
}
.savage-admin .card:before{content:"";position:absolute;inset:0;background:linear-gradient(145deg,rgba(255,255,255,.025),transparent 45%);pointer-events:none}
.savage-admin .card>*{position:relative}.savage-admin a.card{transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.savage-admin a.card:hover{transform:translateY(-2px);border-color:rgba(0,216,255,.42);box-shadow:0 20px 52px rgba(0,0,0,.34),0 0 34px rgba(0,216,255,.08)}
.savage-admin .card h1,.savage-admin .card h2,.savage-admin .card h3,.savage-admin .card h4{color:#f7fbff}.savage-admin .value{color:#fff;text-shadow:0 0 22px rgba(22,139,255,.13)}
.savage-admin .metric .icon{background:linear-gradient(145deg,#0d3158,#0b2748);color:var(--savage-cyan);border:1px solid rgba(90,165,255,.28);border-radius:13px;box-shadow:0 0 22px rgba(0,216,255,.08)}
.savage-admin .muted{color:var(--savage-muted)}
.savage-admin .page-head h2,.savage-admin .page-head h3{color:#fff}.savage-admin .page-head{border-color:var(--savage-line)}
.savage-admin .btn{border-radius:11px;background:linear-gradient(135deg,#168bff,#0d75de);border:1px solid rgba(94,181,255,.32);box-shadow:0 8px 22px rgba(22,139,255,.18);transition:.16s ease;color:#fff}
.savage-admin .btn:hover{transform:translateY(-1px);filter:brightness(1.08);box-shadow:0 10px 28px rgba(22,139,255,.26)}
.savage-admin .btn.secondary{background:linear-gradient(180deg,#0c2949,#091f39);color:#d7eaff;border:1px solid rgba(90,165,255,.28);box-shadow:none}.savage-admin .btn.secondary:hover{border-color:rgba(0,216,255,.46);color:#fff}
.savage-admin .btn.danger,.savage-admin .btn.red{background:linear-gradient(135deg,#ff445d,#ce3048);border-color:rgba(255,114,134,.35)}.savage-admin .btn.warning{background:linear-gradient(135deg,#ffb020,#d98700);border-color:rgba(255,193,84,.38)}
.savage-admin .btn.blue{background:linear-gradient(135deg,#168bff,#5b45c9)}
.savage-admin .in,.savage-admin select,.savage-admin textarea{
  border-radius:11px;border:1px solid rgba(90,165,255,.25);background:#071a30;color:#edf7ff;outline:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.02)
}
.savage-admin .in::placeholder,.savage-admin textarea::placeholder{color:#71869e}.savage-admin select option{background:#071a30;color:#edf7ff}
.savage-admin .in:focus,.savage-admin select:focus,.savage-admin textarea:focus{border-color:var(--savage-cyan);box-shadow:0 0 0 3px rgba(0,216,255,.10),0 0 20px rgba(0,216,255,.06)}
.savage-admin .form-field label{color:#d9eaff}.savage-admin input[type="checkbox"],.savage-admin input[type="radio"]{accent-color:var(--savage-primary)}
.savage-admin .toolbar{color:var(--savage-muted)}
.savage-admin .table-wrap{border-radius:13px}.savage-admin table{border-radius:13px;overflow:hidden;color:#eaf5ff}.savage-admin th{background:#081d35;color:#8ea9c3;letter-spacing:.05em;border-bottom:1px solid rgba(90,165,255,.20)}
.savage-admin th,.savage-admin td{border-bottom-color:rgba(90,165,255,.13)}.savage-admin tbody tr{transition:background .12s ease}.savage-admin tbody tr:hover td{background:rgba(22,139,255,.055)}
.savage-admin td b{color:#fff}.savage-admin .avatar{background:#0d3158;border:1px solid rgba(90,165,255,.25)}
.savage-admin .badge{background:rgba(22,139,255,.14);color:#78bdff;border:1px solid rgba(22,139,255,.30)}.savage-admin .badge.red{background:rgba(255,68,93,.12);color:#ff8798;border-color:rgba(255,68,93,.34)}
.savage-admin .badge.orange{background:rgba(255,176,32,.12);color:#ffc765;border-color:rgba(255,176,32,.32)}.savage-admin .badge.blue{background:rgba(108,92,255,.14);color:#a79cff;border-color:rgba(108,92,255,.30)}
.savage-admin .alert{background:rgba(0,217,145,.10);color:#6ef0c1;border-color:rgba(0,217,145,.34);border-radius:12px}.savage-admin .alert.error{background:rgba(255,68,93,.10);color:#ff97a6;border-color:rgba(255,68,93,.36)}
.savage-admin .modal{background:rgba(2,10,21,.82);backdrop-filter:blur(11px)}.savage-admin .modal-box{background:linear-gradient(180deg,#0b2748,#061426);color:#edf7ff;border-radius:22px;border:1px solid rgba(90,165,255,.36);box-shadow:0 30px 90px rgba(0,0,0,.62),0 0 45px rgba(22,139,255,.10)}
.savage-admin code{background:#081d35;color:#72d9ff;border:1px solid rgba(0,216,255,.14);border-radius:6px;padding:2px 6px}
.savage-admin .toggle-line{display:flex;gap:10px;align-items:center;min-height:40px;padding:10px 12px;border:1px solid rgba(90,165,255,.20);border-radius:11px;background:#071a30;font-size:12px;color:#cfe1f5}
.savage-admin .pagination a,.savage-admin .pagination span{background:#071a30;border-color:rgba(90,165,255,.20);color:#bcd2e8}.savage-admin .pagination a:hover{border-color:var(--savage-cyan);color:#fff}.savage-admin .pagination .active{background:linear-gradient(135deg,#168bff,#5b45c9);color:#fff}
.savage-admin hr{border:0;border-top:1px solid rgba(90,165,255,.18)}.savage-admin [style*="border-bottom:1px solid #edf1ef"]{border-bottom-color:rgba(90,165,255,.15)!important}
.savage-admin canvas{filter:saturate(1.08)}
.savage-admin ::-webkit-scrollbar{width:10px;height:10px}.savage-admin ::-webkit-scrollbar-track{background:#04101f}.savage-admin ::-webkit-scrollbar-thumb{background:#173d63;border:2px solid #04101f;border-radius:999px}.savage-admin ::-webkit-scrollbar-thumb:hover{background:#1b5b91}
@media(max-width:900px){.savage-admin .side{position:relative;border-right:0;border-bottom:1px solid rgba(90,165,255,.18)}.savage-admin .nav{gap:5px}}
@media(max-width:600px){.savage-admin .card{border-radius:14px}.savage-admin .top{padding-left:14px;padding-right:14px}}
@media print{body.savage-admin{background:#fff!important;color:#000!important}.savage-admin .content{background:#fff!important}.savage-admin .card{box-shadow:none!important;border-color:#ddd!important;background:#fff!important;color:#000!important}.savage-admin .card h1,.savage-admin .card h2,.savage-admin .card h3,.savage-admin .card h4,.savage-admin .value{color:#000!important}.savage-admin .muted{color:#555!important}}


/* SAVAGE Fast UI v8.4 */
.savage-global-loader{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;background:rgba(2,10,21,.52);backdrop-filter:blur(3px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s ease,visibility .12s ease}
.savage-global-loader.is-visible{opacity:1;visibility:visible;pointer-events:auto}
.savage-loader-card{min-width:154px;display:flex;align-items:center;justify-content:center;gap:11px;padding:13px 17px;border-radius:15px;background:linear-gradient(180deg,rgba(10,32,58,.98),rgba(7,26,48,.98));border:1px solid rgba(90,165,255,.34);box-shadow:0 20px 60px rgba(0,0,0,.42),0 0 30px rgba(0,216,255,.10);color:#edf7ff;font:750 12px/1.2 Inter,Segoe UI,system-ui,sans-serif;letter-spacing:.01em}
.savage-loader-spinner{width:19px;height:19px;border-radius:50%;border:2px solid rgba(126,196,255,.24);border-top-color:#00d8ff;border-right-color:#168bff;animation:savageSpin .65s linear infinite;box-shadow:0 0 14px rgba(0,216,255,.12)}
@keyframes savageSpin{to{transform:rotate(360deg)}}
.savage-clicked{transform:scale(.975)!important;transition:transform .08s ease!important}.savage-is-busy{cursor:wait!important;opacity:.82!important;pointer-events:none!important}
.savage-is-busy:before{content:"";display:inline-block;width:12px;height:12px;margin-right:6px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:savageSpin .65s linear infinite;vertical-align:-2px}
.savage-password-wrap{position:relative}.savage-password-wrap .in{padding-right:46px!important}.savage-password-toggle{position:absolute;right:7px;top:50%;transform:translateY(-50%);width:34px;height:34px;display:grid;place-items:center;border:0;border-radius:9px;background:transparent;color:#7fc4ff;cursor:pointer;transition:background .14s ease,color .14s ease,transform .08s ease}.savage-password-toggle:hover,.savage-password-toggle:focus-visible{background:rgba(22,139,255,.13);color:#00d8ff;outline:none}.savage-password-toggle:active{transform:translateY(-50%) scale(.94)}.savage-password-toggle i{font-size:17px;pointer-events:none}
@media (prefers-reduced-motion:reduce){.savage-loader-spinner,.savage-is-busy:before{animation-duration:1.2s}.savage-global-loader,.savage-clicked{transition:none!important}}

/* ========================================================================== */
/* SAVAGE Unified Kiosk/Web Design v9.0 — kiosk storyboard is master visual   */
/* ========================================================================== */
:root{
  --savage-bg:#031426;
  --savage-bg-secondary:#061b31;
  --savage-surface:#082846;
  --savage-surface-2:#0a3155;
  --savage-surface-3:#0b3b67;
  --savage-primary:#168bff;
  --savage-primary-2:#0576e8;
  --savage-cyan:#05d9ff;
  --savage-success:#00d991;
  --savage-danger:#ff3e5f;
  --savage-warning:#ff9f19;
  --savage-purple:#774dff;
  --savage-text:#f7fbff;
  --savage-text-secondary:#bfd4e8;
  --savage-muted:#7f9bb7;
  --savage-border:rgba(54,164,255,.32);
  --savage-border-soft:rgba(82,160,225,.16);
  --savage-radius-sm:10px;
  --savage-radius-md:14px;
  --savage-radius-lg:18px;
  --savage-radius-xl:24px;
  --savage-shadow:0 14px 38px rgba(0,0,0,.34);
  --savage-glow-blue:0 0 28px rgba(22,139,255,.11);
  --savage-glow-cyan:0 0 24px rgba(5,217,255,.09);
}
html,body{min-height:100%;background:#031426}
body.savage-admin{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  background:
    radial-gradient(circle at 79% -12%,rgba(24,123,238,.25),transparent 30%),
    radial-gradient(circle at 24% 108%,rgba(15,92,165,.13),transparent 33%),
    linear-gradient(180deg,#04172b 0%,#02101f 100%);
  color:var(--savage-text);
}
body.savage-admin:before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.22;
  background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
  background-size:32px 32px;
}
.savage-admin .shell{grid-template-columns:260px minmax(0,1fr);min-height:100vh}
.savage-admin .side{
  background:linear-gradient(180deg,rgba(4,24,44,.99),rgba(2,14,27,.99));
  border-right:1px solid rgba(39,154,255,.27);
  box-shadow:18px 0 46px rgba(0,0,0,.3),inset -1px 0 rgba(5,217,255,.03);
  padding:14px 11px;
}
.savage-admin .brand{
  min-height:66px;padding:5px 8px 14px;gap:11px;
  border-bottom:1px solid rgba(42,154,255,.25)
}
.savage-admin .brand img{width:48px;height:48px;filter:drop-shadow(0 0 12px rgba(5,217,255,.34))}
.savage-admin .brand b{font-size:18px;line-height:1;letter-spacing:.045em;color:#fff;text-shadow:0 0 16px rgba(22,139,255,.2)}
.savage-admin .brand small{font-size:9px;letter-spacing:.18em;color:#78c8ff;margin-top:5px;font-weight:800}
.savage-admin .profile{padding:11px 9px;margin:10px 0 4px;background:linear-gradient(135deg,rgba(11,49,85,.72),rgba(7,31,55,.62));border:1px solid rgba(55,159,247,.18);border-radius:13px}
.savage-admin .profile .av{width:39px;height:39px;border-radius:11px;background:linear-gradient(145deg,#0e416e,#0a2c4c);border:1px solid rgba(91,185,255,.34);color:#07d8ff;font-size:18px}
.savage-admin .profile b{font-size:12px;max-width:150px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.savage-admin .profile small{font-size:9px;text-transform:uppercase;letter-spacing:.08em}
.savage-admin .nav{gap:3px}.savage-admin .nav-section{font-size:8px;letter-spacing:.16em;color:#537da5;padding:14px 10px 5px}
.savage-admin .nav a{min-height:38px;border-radius:9px;padding:9px 10px;font-size:11px;font-weight:750;color:#c8dced}
.savage-admin .nav a i{font-size:15px;width:20px;color:#75baf5}
.savage-admin .nav a:hover{background:linear-gradient(90deg,rgba(16,74,124,.74),rgba(8,44,76,.68));border-color:rgba(40,164,255,.3);transform:translateX(1px)}
.savage-admin .nav a.active{background:linear-gradient(135deg,#0d72e7 0%,#136fd0 52%,#613cff 145%);border-color:rgba(98,200,255,.58);box-shadow:0 7px 22px rgba(0,102,224,.26),inset 0 1px rgba(255,255,255,.11)}
.savage-admin .logout{margin-top:16px;padding-top:11px;border-top:1px solid rgba(43,141,221,.18)}
.savage-admin .logout button{border-radius:9px;font-size:11px;font-weight:750}.savage-admin .logout button:hover{background:rgba(255,62,95,.1)}

.savage-admin .top{
  height:70px;padding:0 22px;gap:16px;
  background:linear-gradient(180deg,rgba(6,29,52,.98),rgba(4,21,39,.97));
  border-bottom:1px solid rgba(46,164,255,.3);
  box-shadow:0 10px 32px rgba(0,0,0,.25),inset 0 -1px rgba(5,217,255,.03);
}
.savage-admin .top h1{font-size:19px;font-weight:900;letter-spacing:-.02em;text-shadow:0 0 18px rgba(22,139,255,.13)}
.savage-top-meta{display:flex;align-items:center;gap:9px;min-width:0}
.savage-server-pill{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;background:rgba(0,217,145,.08);border:1px solid rgba(0,217,145,.34);color:#77f1c7;font-size:9px;font-weight:900;letter-spacing:.08em;white-space:nowrap}
.savage-server-pill:before{content:"";width:7px;height:7px;border-radius:50%;background:#00d991;box-shadow:0 0 10px rgba(0,217,145,.75)}
.savage-server-pill.offline{background:rgba(255,62,95,.08);border-color:rgba(255,62,95,.38);color:#ff9bac}.savage-server-pill.offline:before{background:#ff3e5f;box-shadow:0 0 10px rgba(255,62,95,.7)}
.savage-clock{min-width:124px;text-align:right;line-height:1.1;border-left:1px solid rgba(70,158,229,.23);padding-left:11px}.savage-clock b{font-size:12px!important;color:#fff!important}.savage-clock small{display:block;color:#79a5ca;font-size:8px;margin-top:4px;letter-spacing:.04em}
.savage-notification-link{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:#092c4c;border:1px solid rgba(64,166,246,.25);color:#70c5ff!important;text-decoration:none}.savage-notification-link:hover{border-color:#05d9ff!important;color:#fff!important;box-shadow:0 0 16px rgba(5,217,255,.1)}
.savage-user-chip{display:flex;align-items:center;gap:8px;min-width:0;padding:5px 8px 5px 6px;border-radius:10px;background:rgba(255,255,255,.025);border:1px solid rgba(74,152,216,.13)}
.savage-user-chip .mini-av{width:27px;height:27px;border-radius:8px;display:grid;place-items:center;background:linear-gradient(145deg,#0d3e69,#0a2d4e);border:1px solid rgba(82,177,255,.28);color:#04d7ff}.savage-user-chip b{font-size:10px!important;max-width:120px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.savage-admin .content{padding:20px 22px 30px;background:radial-gradient(circle at 100% 0,rgba(20,130,237,.08),transparent 25%)}
.savage-admin .card{
  background:linear-gradient(155deg,rgba(10,45,77,.97),rgba(5,25,46,.98));
  border:1px solid rgba(49,157,244,.28);border-radius:15px;padding:16px;
  box-shadow:var(--savage-shadow),inset 0 1px rgba(255,255,255,.028);
}
.savage-admin .card:after{content:"";position:absolute;right:-60px;top:-80px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(22,139,255,.06),transparent 68%);pointer-events:none}
.savage-admin a.card:hover{border-color:rgba(5,217,255,.48);box-shadow:0 18px 48px rgba(0,0,0,.36),0 0 24px rgba(5,217,255,.07)}
.savage-admin .metric{align-items:center}.savage-admin .metric .icon{width:44px;height:44px;border-radius:12px;background:linear-gradient(145deg,#0e4d80,#0a3155);color:#05d9ff;border:1px solid rgba(91,190,255,.33);font-size:20px}.savage-admin .metric .value,.savage-admin .value{font-size:27px;font-weight:900}
.savage-admin .muted{color:#91abc4!important}
.savage-admin .page-head{margin-bottom:15px}.savage-admin .page-head h2{font-size:21px;font-weight:900}.savage-admin .page-head .muted{margin-top:4px}

.savage-admin .btn{min-height:37px;padding:9px 12px;border-radius:9px;font-size:11px;font-weight:850;letter-spacing:.01em;background:linear-gradient(135deg,#168bff,#056eda);border:1px solid rgba(104,198,255,.38);box-shadow:0 8px 20px rgba(5,112,219,.2)}
.savage-admin .btn.blue{background:linear-gradient(135deg,#0c92ff,#4c55ff)}
.savage-admin .btn.secondary{background:linear-gradient(180deg,#0b3559,#082845);border-color:rgba(77,166,238,.3);color:#d8edff}
.savage-admin .btn.danger,.savage-admin .btn.red{background:linear-gradient(135deg,#ff3e5f,#d42143)}
.savage-admin .btn.warning{background:linear-gradient(135deg,#ffa31a,#d87400)}
.savage-admin .btn.success{background:linear-gradient(135deg,#00d991,#009c6e);border-color:rgba(83,245,190,.32)}
.savage-admin .btn:disabled{opacity:.58;transform:none;cursor:not-allowed;box-shadow:none}

.savage-admin .in,.savage-admin select,.savage-admin textarea{
  min-height:39px;border-radius:9px;padding:9px 10px;border:1px solid rgba(66,158,231,.28);background:#051a30;color:#f1f8ff
}
.savage-admin .in:focus,.savage-admin select:focus,.savage-admin textarea:focus{border-color:#05d9ff;box-shadow:0 0 0 3px rgba(5,217,255,.09),0 0 18px rgba(5,217,255,.05)}
.savage-admin .form-field label{font-size:10px;text-transform:uppercase;letter-spacing:.055em;color:#bfd7eb}
.savage-admin .savage-password-toggle{background:transparent!important;border:0!important;color:#65c8ff!important;box-shadow:none!important;min-height:0!important}

.savage-admin .table-wrap{border:1px solid rgba(48,146,222,.16);border-radius:11px;overflow:auto;background:rgba(3,18,34,.26)}
.savage-admin table{border-collapse:separate;border-spacing:0}.savage-admin th{position:sticky;top:0;z-index:1;background:#061f38;color:#79a6cb;font-size:9px;letter-spacing:.085em;border-bottom:1px solid rgba(55,155,233,.24)}
.savage-admin th,.savage-admin td{padding:10px 9px;border-bottom:1px solid rgba(61,143,207,.12)}
.savage-admin tbody tr:hover td{background:rgba(10,111,199,.075)}
.savage-admin .badge{padding:4px 8px;border-radius:999px;font-size:9px;font-weight:900;letter-spacing:.025em;background:rgba(22,139,255,.12);color:#7dc6ff;border:1px solid rgba(22,139,255,.3)}
.savage-admin .badge.red{background:rgba(255,62,95,.11);color:#ff96a7;border-color:rgba(255,62,95,.34)}
.savage-admin .badge.orange{background:rgba(255,159,25,.11);color:#ffc06b;border-color:rgba(255,159,25,.34)}
.savage-admin .badge.blue{background:rgba(119,77,255,.13);color:#b4a3ff;border-color:rgba(119,77,255,.32)}
.savage-admin .badge.green,.savage-admin .badge.success{background:rgba(0,217,145,.1);color:#73efc5;border-color:rgba(0,217,145,.32)}
.savage-admin .alert{padding:11px 13px;border-radius:10px;background:rgba(0,217,145,.08);border:1px solid rgba(0,217,145,.3);color:#78efc7}.savage-admin .alert.error{background:rgba(255,62,95,.08);border-color:rgba(255,62,95,.32);color:#ff9dad}
.savage-admin .modal{background:rgba(0,8,17,.82);backdrop-filter:blur(8px)}.savage-admin .modal-box{background:linear-gradient(155deg,#092e50,#04172b);border:1px solid rgba(58,173,255,.36);border-radius:17px;box-shadow:0 30px 90px rgba(0,0,0,.66),0 0 32px rgba(22,139,255,.08)}
.savage-admin .pagination a,.savage-admin .pagination span{background:#061f38;border-color:rgba(58,146,216,.22);color:#a9c8e1}.savage-admin .pagination .active{background:linear-gradient(135deg,#168bff,#6741ff);color:#fff}

/* Normalize legacy inline colors so old pages remain visually coherent. */
.savage-admin [style*="background:#f8fafc"],.savage-admin [style*="background:#f7fbff"]{background:#061f38!important}
.savage-admin [style*="color:#2563eb"]{color:#49b8ff!important}.savage-admin [style*="color:#334155"]{color:#94c8ef!important}.savage-admin [style*="color:#0f766e"]{color:#70edc3!important}.savage-admin [style*="color:#dc2626"]{color:#ff8295!important}
.savage-admin [style*="border-bottom:1px solid #e2e8f0"],.savage-admin [style*="border-bottom:1px solid #edf1ef"]{border-bottom-color:rgba(60,149,219,.16)!important}
.savage-admin pre[style*="background:#07111f"],.savage-admin code{background:#03192e!important;border-color:rgba(5,217,255,.15)!important;color:#70dfff!important}

/* Dashboard/content spacing mirrors compact 7-inch kiosk cards while scaling. */
.savage-admin .grid5,.savage-admin .grid4,.savage-admin .grid3,.savage-admin .grid2{gap:12px}
.savage-admin .grid5>.card,.savage-admin .grid4>.card,.savage-admin .grid3>.card{min-height:112px}

/* Global loading follows the kiosk scanning language. */
.savage-global-loader{background:rgba(0,9,19,.66);backdrop-filter:blur(5px)}
.savage-loader-card{background:linear-gradient(155deg,#0a3155,#05192d)!important;border:1px solid rgba(5,217,255,.34)!important;border-radius:14px!important;box-shadow:0 18px 52px rgba(0,0,0,.46),0 0 25px rgba(5,217,255,.08)!important}
.savage-loader-ring{border-color:rgba(5,217,255,.18)!important;border-top-color:#05d9ff!important}

@media(max-width:1200px){.savage-admin .shell{grid-template-columns:224px minmax(0,1fr)}.savage-admin .side{padding-left:8px;padding-right:8px}.savage-admin .brand b{font-size:15px}.savage-admin .savage-clock{display:none}}
@media(max-width:900px){
  .savage-admin .shell{display:block}.savage-admin .side{position:relative;height:auto;max-height:none;border-right:0;border-bottom:1px solid rgba(44,153,240,.24)}
  .savage-admin .profile{display:none}.savage-admin .nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.savage-admin .nav-section{grid-column:1/-1;padding-top:8px}
  .savage-admin .nav a{justify-content:flex-start}.savage-admin .logout{margin-top:10px}.savage-admin .top{position:sticky;height:62px;padding:0 14px}.savage-top-meta{gap:6px}.savage-user-chip{display:none}.savage-admin .content{padding:14px}
}
@media(max-width:600px){
  .savage-admin .nav{grid-template-columns:repeat(2,minmax(0,1fr))}.savage-admin .brand{min-height:56px}.savage-admin .brand img{width:42px;height:42px}.savage-admin .top h1{font-size:16px}.savage-server-pill{display:none}.savage-admin .content{padding:11px}.savage-admin .card{border-radius:12px;padding:13px}.savage-notification-link{width:32px;height:32px}
}
@media print{.savage-server-pill,.savage-clock,.savage-notification-link,.savage-user-chip{display:none!important}}
