/* ISS Admin Premium UI v20 — additive visual layer. No existing feature/layout is removed. */
:root{
  --iss20-navy:#07162b;
  --iss20-navy-2:#0b203d;
  --iss20-ink:#0f1d31;
  --iss20-muted:#6f8198;
  --iss20-line:#dce5ef;
  --iss20-surface:#ffffff;
  --iss20-bg:#f5f8fc;
  --iss20-accent:#3d78ff;
  --iss20-accent-2:#2058d5;
  --iss20-success:#16835a;
  --iss20-danger:#b52a32;
  --iss20-shadow:0 18px 50px rgba(6,25,52,.10);
  --iss20-shadow-soft:0 8px 26px rgba(6,25,52,.07);
  --iss20-radius:18px;
  --iss20-ease:cubic-bezier(.2,.75,.2,1);
}

/* ---------- global admin polish ---------- */
body.app.admin-v12-shell{
  background:
    radial-gradient(900px 420px at 80% -10%,rgba(61,120,255,.10),transparent 62%),
    radial-gradient(720px 360px at 0% 0%,rgba(20,131,90,.045),transparent 62%),
    linear-gradient(180deg,#f9fbfe 0%,var(--iss20-bg) 100%) !important;
  color:var(--iss20-ink);
}
body.app.admin-v12-shell .app-main{padding-bottom:68px!important}
body.app.admin-v12-shell .app-main > *{animation:iss20-rise .42s var(--iss20-ease) both}
body.app.admin-v12-shell .app-main > *:nth-child(2){animation-delay:.02s}
body.app.admin-v12-shell .app-main > *:nth-child(3){animation-delay:.04s}

@keyframes iss20-rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes iss20-pulse{0%,100%{box-shadow:0 0 0 0 rgba(61,120,255,.20)}50%{box-shadow:0 0 0 7px rgba(61,120,255,0)}}

/* ---------- sidebar / navigation ---------- */
body.app.admin-v12-shell .sidebar{
  width:296px!important;
  background:
    radial-gradient(480px 220px at 100% 0%,rgba(61,120,255,.16),transparent 60%),
    linear-gradient(180deg,#07162b 0%,#091a31 48%,#071326 100%)!important;
  border-right:1px solid rgba(151,174,204,.18)!important;
  box-shadow:20px 0 60px rgba(3,15,31,.12)!important;
  padding:14px 12px 18px!important;
}
body.app.admin-v12-shell .sidebar::before{
  content:"";display:block;position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.035),transparent 20%,transparent 78%,rgba(255,255,255,.02));
}
body.app.admin-v12-shell .sidebar .brand{
  margin:0 2px 10px!important;
  padding:10px 11px 12px!important;
  border:1px solid rgba(176,198,227,.10)!important;
  border-radius:17px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.018))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.045),0 10px 26px rgba(0,0,0,.08)!important;
}
body.app.admin-v12-shell .sidebar .brand .nav-icon{
  width:40px!important;height:40px!important;border-radius:13px!important;
  background:linear-gradient(145deg,#1f59bc,#12386f)!important;
  border:1px solid rgba(164,199,255,.24)!important;
  box-shadow:0 10px 25px rgba(21,69,145,.28)!important;
}
body.app.admin-v12-shell .sidebar-user{
  margin:0 2px 8px!important;
  padding:11px 10px 12px!important;
  border:1px solid rgba(176,198,227,.08)!important;
  border-radius:15px!important;
  background:rgba(255,255,255,.035)!important;
}
body.app.admin-v12-shell .sidebar-user .avatar{
  width:40px!important;height:40px!important;border-radius:13px!important;
  background:linear-gradient(145deg,#2b62ba,#173f7e)!important;
}
body.app.admin-v12-shell .sidebar-menu-title{
  margin:2px 3px 5px!important;padding:8px 9px 6px!important;
  font-size:9px!important;letter-spacing:1.45px!important;color:#8098b5!important;
}
body.app.admin-v12-shell .sidebar-nav{display:grid;gap:4px!important;padding:0 1px 12px!important}
body.app.admin-v12-shell .side-label{
  margin:9px 5px 2px!important;padding:5px 8px!important;
  color:#7e96b3!important;font-size:8px!important;letter-spacing:1.35px!important;
  font-weight:900!important;border-top:1px solid rgba(154,181,211,.08)!important;
}
body.app.admin-v12-shell .nav-group{
  border:1px solid transparent!important;border-radius:14px!important;padding:2px!important;margin:0!important;
  background:transparent!important;
}
body.app.admin-v12-shell .nav-group:hover{background:rgba(255,255,255,.018)!important}
body.app.admin-v12-shell .nav-group>summary{
  min-height:42px!important;border-radius:12px!important;padding:5px 8px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012))!important;
  border:1px solid rgba(166,193,223,.06)!important;
}
body.app.admin-v12-shell .nav-group[open]>summary{
  background:linear-gradient(180deg,rgba(61,120,255,.14),rgba(61,120,255,.06))!important;
  border-color:rgba(93,142,255,.18)!important;
}
body.app.admin-v12-shell .nav-group>summary .nav-text{font-size:10px!important;font-weight:900!important;letter-spacing:.52px!important;color:#a7bad1!important}
body.app.admin-v12-shell .nav-group>summary .nav-icon{color:#a9c2df!important}
body.app.admin-v12-shell .nav-group>a{
  min-height:39px!important;margin:2px 0 2px 20px!important;padding:7px 9px!important;
  border-radius:11px!important;color:#b9c7d8!important;font-size:12px!important;
  background:transparent!important;border:1px solid transparent!important;
}
body.app.admin-v12-shell .nav-group>a:hover{
  color:#f7fbff!important;background:rgba(255,255,255,.065)!important;border-color:rgba(165,190,219,.08)!important;
  transform:translateX(2px)
}
body.app.admin-v12-shell .nav-group>a.active,
body.app.admin-v12-shell .nav-group>a[aria-current="page"]{
  color:#fff!important;
  background:linear-gradient(90deg,rgba(61,120,255,.26),rgba(61,120,255,.08))!important;
  border-color:rgba(93,142,255,.18)!important;
  box-shadow:inset 3px 0 0 #4c83ff,0 8px 18px rgba(0,0,0,.08)!important;
}
body.app.admin-v12-shell .nav-group>a .nav-icon{color:#8fa9c8!important}
body.app.admin-v12-shell .nav-group>a.active .nav-icon{color:#dbe9ff!important}
body.app.admin-v12-shell .nav-badge{
  min-width:20px!important;height:20px!important;padding:0 6px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
  border-radius:999px!important;background:#1f3f68!important;border:1px solid rgba(126,162,208,.18)!important;color:#d9e8fb!important;font-size:9px!important;font-weight:900!important;
}
body.app.admin-v12-shell .approval-nav-link{
  position:relative!important;
  background:linear-gradient(90deg,rgba(61,120,255,.13),rgba(61,120,255,.025))!important;
  border-color:rgba(93,142,255,.15)!important;
}
body.app.admin-v12-shell .approval-nav-link .nav-icon{color:#91b4ff!important}
body.app.admin-v12-shell .approval-badge{background:#315ec5!important;color:#fff!important;animation:iss20-pulse 1.9s infinite}

/* Quick approval shortcut inserted near top of admin nav */
.iss-sidebar-approval-card{
  margin:0 2px 8px;padding:11px 11px 10px;border-radius:15px;
  border:1px solid rgba(108,151,229,.22);
  background:linear-gradient(145deg,rgba(61,120,255,.15),rgba(61,120,255,.035));
  box-shadow:inset 0 1px rgba(255,255,255,.035),0 10px 24px rgba(0,0,0,.09)
}
.iss-sidebar-approval-card__head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
.iss-sidebar-approval-card__label{font-size:8px;letter-spacing:1.25px;text-transform:uppercase;color:#8ca7c8;font-weight:900}
.iss-sidebar-approval-card__count{font-size:9px;font-weight:900;color:#d8e7ff}
.iss-sidebar-approval-card a{display:flex!important;align-items:center!important;gap:10px!important;margin:0!important;padding:9px 10px!important;min-height:0!important;background:rgba(255,255,255,.05)!important;border:1px solid rgba(159,190,230,.10)!important;color:#eef5ff!important;border-radius:10px!important}
.iss-sidebar-approval-card a:hover{transform:none!important;background:rgba(255,255,255,.09)!important}
.iss-sidebar-approval-card .approval-mini-icon{width:27px;height:27px;border-radius:9px;display:grid;place-items:center;background:rgba(61,120,255,.25);border:1px solid rgba(148,185,255,.18);font-size:12px}
.iss-sidebar-approval-card small{margin-left:auto;color:#8facce!important;font-size:9px!important}

/* ---------- app bar ---------- */
body.app.admin-v12-shell .appbar{
  min-height:86px!important;padding:9px 0!important;
  background:rgba(247,250,254,.90)!important;backdrop-filter:blur(18px);border-bottom:1px solid rgba(205,218,232,.84)!important;
}
body.app.admin-v12-shell .appbar h1{font-size:26px!important;letter-spacing:-.55px!important;font-weight:900!important;color:#0b1a2d!important}
body.app.admin-v12-shell .appbar>div:first-child small{color:#7d8ea3!important}
body.app.admin-v12-shell .appbar-search{
  max-width:430px!important;min-height:42px!important;border-radius:14px!important;overflow:hidden!important;
  background:rgba(255,255,255,.94)!important;border:1px solid #dce5ef!important;box-shadow:0 8px 24px rgba(8,30,56,.05)!important;
}
body.app.admin-v12-shell .appbar-search input{height:42px!important;border:0!important;background:transparent!important;box-shadow:none!important;padding:0 14px!important}
body.app.admin-v12-shell .role-context{padding:6px 10px!important;background:#fff!important;border-color:#dbe5ee!important;box-shadow:var(--iss20-shadow-soft)}
body.app.admin-v12-shell .approval-top-link,
body.app.admin-v12-shell .notif-bell{
  width:39px!important;height:39px!important;border-radius:12px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  border:1px solid #dce5ef!important;background:#fff!important;box-shadow:0 5px 15px rgba(9,29,55,.05)!important;position:relative!important;
}
body.app.admin-v12-shell .approval-top-link.has-approval-alerts{border-color:#b9cef8!important;background:#f3f7ff!important}
body.app.admin-v12-shell .approval-top-count,
body.app.admin-v12-shell .notif-count{top:-4px!important;right:-4px!important;min-width:18px!important;height:18px!important;padding:0 5px!important;border:2px solid #fff!important}

/* ---------- cards, tables, forms ---------- */
body.app.admin-v12-shell .card,
body.app.admin-v12-shell .kpi,
body.app.admin-v12-shell .premium-panel,
body.app.admin-v12-shell .premium-toolbar{
  border:1px solid var(--iss20-line)!important;border-radius:var(--iss20-radius)!important;background:rgba(255,255,255,.94)!important;
  box-shadow:var(--iss20-shadow-soft)!important;
}
body.app.admin-v12-shell .card:hover,
body.app.admin-v12-shell .kpi:hover{box-shadow:var(--iss20-shadow)!important}
body.app.admin-v12-shell .premium-page-head h1{font-weight:900!important;letter-spacing:-.45px!important}
body.app.admin-v12-shell .section-kicker{font-weight:900!important;letter-spacing:1.55px!important;color:#6f83a0!important}
body.app.admin-v12-shell .table-wrap{border:1px solid #e2e9f1;border-radius:14px!important;box-shadow:0 8px 24px rgba(9,30,57,.035)!important;background:#fff}
body.app.admin-v12-shell .table-wrap table{background:#fff}
body.app.admin-v12-shell th{background:#f7f9fc!important;color:#6d7f95!important;font-size:10px!important;letter-spacing:.75px!important}
body.app.admin-v12-shell td{color:#203149}
body.app.admin-v12-shell tbody tr:hover{background:#f6f9fd!important}
body.app.admin-v12-shell .form input,
body.app.admin-v12-shell .form select,
body.app.admin-v12-shell .form textarea,
body.app.admin-v12-shell .grid-form input,
body.app.admin-v12-shell .grid-form select,
body.app.admin-v12-shell .grid-form textarea,
body.app.admin-v12-shell .premium-toolbar input,
body.app.admin-v12-shell .premium-toolbar select,
body.app.admin-v12-shell .workflow-filter-form input,
body.app.admin-v12-shell .workflow-filter-form select{
  min-height:42px!important;border:1px solid #d7e1eb!important;border-radius:12px!important;background:#fbfdff!important;
  box-shadow:inset 0 1px rgba(8,30,55,.02)!important;transition:border-color .2s,box-shadow .2s,background .2s!important;
}
body.app.admin-v12-shell input:focus,
body.app.admin-v12-shell select:focus,
body.app.admin-v12-shell textarea:focus{border-color:#74a0ff!important;background:#fff!important;box-shadow:0 0 0 4px rgba(61,120,255,.12)!important;outline:none!important}
body.app.admin-v12-shell .btn{border-radius:11px!important;font-weight:850!important;box-shadow:0 7px 18px rgba(8,27,51,.06)!important}
body.app.admin-v12-shell .btn.primary,
body.app.admin-v12-shell .btn:not(.ghost):not(.danger){background:linear-gradient(135deg,#356ff0,#285bd0)!important}
body.app.admin-v12-shell .btn.ghost{background:#fff!important;border-color:#d7e1eb!important}
body.app.admin-v12-shell .btn.danger{background:linear-gradient(135deg,#c33b43,#a8242c)!important}
body.app.admin-v12-shell .btn:hover{transform:translateY(-1px)!important;box-shadow:0 11px 24px rgba(8,29,56,.12)!important}

/* ---------- approval center ---------- */
body.app.admin-v12-shell .approval-wrap{gap:20px!important}
body.app.admin-v12-shell .approval-row{border-radius:15px!important;border-color:#dde6ef!important;background:linear-gradient(180deg,#fff,#fbfdff)!important;box-shadow:0 7px 20px rgba(10,31,57,.035)!important}
body.app.admin-v12-shell .approval-row:hover{border-color:#bfd1ec!important;transform:translateY(-1px);box-shadow:0 12px 28px rgba(10,31,57,.07)!important}
body.app.admin-v12-shell .approval-row.active{outline:2px solid rgba(61,120,255,.16)!important}
body.app.admin-v12-shell .approval-detail-grid .tile{border-color:#e0e7ef!important;border-radius:13px!important;background:#fbfdff!important}
body.app.admin-v12-shell .approval-json{background:#0a1830!important;color:#d8e6f8!important;border:1px solid #142b4c!important}
body.app.admin-v12-shell .approval-history-item{border-left-color:#c5d5ea!important}

/* ---------- responsive ---------- */
@media (max-width:1250px){
  body.app.admin-v12-shell .sidebar{width:278px!important}
}
@media (max-width:900px){
  body.app.admin-v12-shell .sidebar{width:300px!important}
  .iss-sidebar-approval-card{margin-bottom:7px}
}
@media (max-width:640px){
  body.app.admin-v12-shell .appbar{min-height:76px!important}
  body.app.admin-v12-shell .appbar h1{font-size:21px!important}
  body.app.admin-v12-shell .app-main{padding-left:12px!important;padding-right:12px!important}
  .iss-sidebar-approval-card{margin-left:0;margin-right:0}
}

/* ---------- dark mode ---------- */
html[data-theme="dark"] body.app.admin-v12-shell{
  background:linear-gradient(180deg,#07111e 0%,#0a1422 100%)!important;color:#eaf2fb!important;
}
html[data-theme="dark"] body.app.admin-v12-shell .appbar{background:rgba(7,16,28,.90)!important;border-bottom-color:#1a2c42!important}
html[data-theme="dark"] body.app.admin-v12-shell .appbar h1{color:#f4f8fd!important}
html[data-theme="dark"] body.app.admin-v12-shell .appbar-search,
html[data-theme="dark"] body.app.admin-v12-shell .approval-top-link,
html[data-theme="dark"] body.app.admin-v12-shell .notif-bell,
html[data-theme="dark"] body.app.admin-v12-shell .role-context{background:#0e1b2c!important;border-color:#253b55!important;color:#e5eef8!important}
html[data-theme="dark"] body.app.admin-v12-shell .card,
html[data-theme="dark"] body.app.admin-v12-shell .kpi,
html[data-theme="dark"] body.app.admin-v12-shell .premium-panel,
html[data-theme="dark"] body.app.admin-v12-shell .premium-toolbar,
html[data-theme="dark"] body.app.admin-v12-shell .table-wrap,
html[data-theme="dark"] body.app.admin-v12-shell .table-wrap table{background:#0e1b2c!important;border-color:#22374f!important;color:#e8f1fb!important}
html[data-theme="dark"] body.app.admin-v12-shell th{background:#101f32!important;color:#92a8c0!important;border-color:#233a52!important}
html[data-theme="dark"] body.app.admin-v12-shell td{color:#d8e5f3!important;border-color:#203449!important}
html[data-theme="dark"] body.app.admin-v12-shell tbody tr:hover{background:#132339!important}
html[data-theme="dark"] body.app.admin-v12-shell .form input,
html[data-theme="dark"] body.app.admin-v12-shell .form select,
html[data-theme="dark"] body.app.admin-v12-shell .form textarea,
html[data-theme="dark"] body.app.admin-v12-shell .premium-toolbar input,
html[data-theme="dark"] body.app.admin-v12-shell .premium-toolbar select{background:#0b1727!important;border-color:#294058!important;color:#eaf2fb!important}
html[data-theme="dark"] body.app.admin-v12-shell .approval-json{background:#06101d!important;border-color:#213a54!important}

/* ---------- premium login ---------- */
body:has(.login-page-shell){
  background:radial-gradient(900px 480px at 92% 6%,rgba(61,120,255,.14),transparent 62%),radial-gradient(700px 420px at 0 100%,rgba(20,131,90,.06),transparent 62%),linear-gradient(135deg,#f7faff 0%,#edf3f9 100%)!important;
}
body:has(.login-page-shell) .info-bar{background:rgba(7,22,43,.96)!important}
body:has(.login-page-shell) .topbar{display:none}
.login-page-shell{position:relative;min-height:calc(100vh - 42px);overflow:hidden;display:flex;align-items:center;justify-content:center;padding:52px 24px}
.login-page-orb{position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none}
.login-page-orb-one{width:360px;height:360px;right:-120px;top:-120px;background:radial-gradient(circle,rgba(63,120,246,.17),transparent 68%)}
.login-page-orb-two{width:420px;height:420px;left:-210px;bottom:-220px;background:radial-gradient(circle,rgba(14,129,91,.11),transparent 70%)}
.login-layout{position:relative;z-index:1;width:min(1180px,100%);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.75fr);gap:70px;align-items:center}
.login-showcase{padding:22px 6px 22px 6px}
.login-showcase-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 11px;border:1px solid #d8e3ef;border-radius:999px;background:rgba(255,255,255,.74);color:#57708d;font-size:9px;font-weight:900;letter-spacing:1.35px;box-shadow:0 8px 20px rgba(9,30,57,.045)}
.login-showcase-dot{width:7px;height:7px;border-radius:50%;background:#188762;box-shadow:0 0 0 4px rgba(24,135,98,.10)}
.login-showcase-brand{display:flex;align-items:center;gap:12px;margin:22px 0 16px;font-size:14px;font-weight:900;letter-spacing:-.1px;color:#1b3452}
.login-showcase-mark{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(145deg,#1e5cc2,#123b78);color:#fff;box-shadow:0 10px 24px rgba(24,73,147,.20)}
.login-showcase h1{font-size:clamp(42px,5vw,66px);line-height:1.00;letter-spacing:-2.8px;margin:0 0 22px;max-width:660px;color:#091a30;font-weight:900}
.login-showcase h1 span{color:#3d73e7}
.login-showcase>p{font-size:17px;line-height:1.75;color:#687d96;max-width:610px;margin:0}
.login-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:30px;max-width:660px}
.login-feature-grid>div{display:grid;grid-template-columns:34px minmax(0,1fr);column-gap:10px;align-items:center;padding:12px 13px;border:1px solid #dfe7ef;border-radius:14px;background:rgba(255,255,255,.67);box-shadow:0 7px 20px rgba(9,29,55,.035)}
.login-feature-grid i{grid-row:1/3;width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:#eef4ff;color:#3b73ea;font-size:12px}
.login-feature-grid strong{font-size:12px;color:#183250}.login-feature-grid small{font-size:10px;color:#7b8ca1;margin-top:2px}
.login-security-line{display:flex;align-items:center;gap:8px;margin-top:22px;color:#8191a4;font-size:10px}.login-security-line i{color:#6180a6}
.login-card-wrap{display:flex;justify-content:center}.login-premium-card{width:min(480px,100%);max-width:none!important;margin:0!important;padding:28px!important;border-radius:24px!important;background:rgba(255,255,255,.93)!important;border:1px solid rgba(210,222,235,.94)!important;box-shadow:0 30px 80px rgba(7,27,53,.15),inset 0 1px rgba(255,255,255,.75)!important;backdrop-filter:blur(18px)}
.login-premium-card::before{content:"";position:absolute;right:-50px;top:-56px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(61,120,255,.12),transparent 68%);pointer-events:none}
.login-card-head{display:flex;align-items:center;gap:13px}.login-card-icon{width:43px;height:43px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,#376ff0,#244fbb);color:#fff;box-shadow:0 10px 25px rgba(38,89,195,.24)}
.login-card-head h2{font-size:26px;letter-spacing:-.65px;margin:2px 0 0;color:#0c1b31}.login-card-head .eyebrow{font-size:9px;letter-spacing:1.45px;color:#6f83a0}.login-card-subtitle{font-size:12px;line-height:1.6;color:#73859b;margin:10px 0 20px}
.login-alert{display:flex;align-items:flex-start;gap:9px;border:1px solid #f2c8cb!important;background:#fff5f5!important;color:#9f2028!important;border-radius:13px!important;font-size:12px!important}.login-alert i{margin-top:2px}
.login-form{gap:13px!important}.login-form label>span{display:block;font-size:9px;font-weight:900;letter-spacing:1.15px;color:#6c7f96;margin:0 0 7px}.login-input-wrap{position:relative}.login-input-wrap>i:first-child{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#91a1b3;font-size:12px;pointer-events:none;z-index:2}.login-input-wrap input{padding:13px 44px 13px 38px!important;min-height:47px!important;border-radius:13px!important;border-color:#d9e3ed!important;background:#fbfdff!important;font-size:13px!important}.login-password-toggle{position:absolute;right:7px;top:7px;width:33px;height:33px;border:0;border-radius:9px;background:#f3f6fa;color:#62758c;cursor:pointer;display:grid;place-items:center}.login-password-toggle:hover{background:#eaf0f7;color:#25466f}.login-submit{width:100%;min-height:48px!important;margin-top:4px;border-radius:13px!important;background:linear-gradient(135deg,#386ff0,#2457c5)!important;box-shadow:0 13px 25px rgba(42,91,195,.19)!important;display:flex!important;justify-content:space-between!important;padding:0 15px!important}.login-submit:hover{box-shadow:0 16px 29px rgba(42,91,195,.25)!important}.login-submit i{font-size:12px}
.login-divider{display:flex;align-items:center;gap:10px;margin:20px 0 10px;color:#8695a7;font-size:8px;font-weight:900;letter-spacing:1.35px}.login-divider::before,.login-divider::after{content:"";height:1px;flex:1;background:#e1e8ef}
.login-portals-premium{display:grid;gap:7px}.login-portals-premium a{display:grid;grid-template-columns:34px minmax(0,1fr) 15px;align-items:center;gap:9px;padding:9px 10px;border:1px solid #e2e8ef;border-radius:12px;background:#fcfdff;color:#203a58;transition:.2s ease}.login-portals-premium a:hover{transform:translateY(-1px);border-color:#bfd1ef;background:#f8fbff;box-shadow:0 8px 18px rgba(9,30,57,.05)}.login-portals-premium a>span{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:#eef4ff;color:#386fdc;font-size:11px}.login-portals-premium a strong{display:block;font-size:11px}.login-portals-premium a small{display:block;font-size:9px;margin-top:1px;color:#8796a8}.login-portals-premium a>i{color:#9aabbe;font-size:9px}
.login-demo-box{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding:11px 12px;border-radius:13px;background:#f6f9fc;border:1px dashed #d6e0ea}.login-demo-label{display:block;font-size:8px;letter-spacing:1.1px;color:#7d90a6;font-weight:900;margin-bottom:4px}.login-demo-box strong{display:block;font-size:11px;color:#284563}.login-demo-box small{display:block;font-size:10px;color:#7d8da2;margin-top:2px}.login-demo-box>i{color:#7890aa;font-size:13px}.login-card-foot{display:flex;justify-content:space-between;gap:10px;padding-top:13px;margin-top:13px;border-top:1px solid #e7edf3;color:#8a98a9;font-size:9px}.login-card-foot a{color:#486da7;font-weight:800}
@media(max-width:900px){.login-layout{grid-template-columns:1fr;gap:25px;max-width:590px}.login-showcase{text-align:center}.login-showcase-brand{justify-content:center}.login-showcase h1{font-size:46px;letter-spacing:-2px;margin-left:auto;margin-right:auto}.login-showcase>p{margin-left:auto;margin-right:auto}.login-feature-grid{margin-left:auto;margin-right:auto;text-align:left}.login-security-line{justify-content:center}.login-page-shell{padding:40px 16px}}
@media(max-width:560px){.login-showcase h1{font-size:37px}.login-feature-grid{grid-template-columns:1fr}.login-premium-card{padding:22px!important}.login-card-foot{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){.login-page-shell *{animation:none!important;transition:none!important}}

/* Sidebar search and module heading treatment */
.iss20-sidebar-search{position:relative;margin:0 2px 8px}
.iss20-sidebar-search input{width:100%;height:38px;padding:0 35px 0 33px;border-radius:11px;border:1px solid rgba(160,191,226,.12);background:rgba(255,255,255,.045);color:#edf5fd;outline:none;font-size:11px;box-shadow:inset 0 1px rgba(255,255,255,.025);transition:border-color .2s,background .2s,box-shadow .2s}
.iss20-sidebar-search input::placeholder{color:#7890ab}.iss20-sidebar-search input:focus{border-color:rgba(104,150,241,.45);background:rgba(255,255,255,.07);box-shadow:0 0 0 4px rgba(61,120,255,.10)}
.iss20-sidebar-search>i{position:absolute;left:11px;top:12px;font-size:11px;color:#7892af;pointer-events:none}.iss20-sidebar-search button{display:none;position:absolute;right:5px;top:5px;width:28px;height:28px;border:0;border-radius:8px;background:rgba(255,255,255,.07);color:#a9bdd4;cursor:pointer}.iss20-sidebar-search button.is-visible{display:block}.iss20-sidebar-search button:hover{background:rgba(255,255,255,.12);color:#fff}
body.app.admin-v12-shell .iss20-nav-number{display:inline-grid;place-items:center;width:22px;height:22px;margin-right:7px;border-radius:7px;background:rgba(255,255,255,.06);border:1px solid rgba(159,190,228,.09);color:#7994b3;font-size:8px;font-weight:900;letter-spacing:.2px;vertical-align:middle}
body.app.admin-v12-shell .nav-group[open] .iss20-nav-number{background:rgba(61,120,255,.17);border-color:rgba(113,160,246,.14);color:#c7dcfa}
body.app.admin-v12-shell .iss20-nav-title{vertical-align:middle}
body.app.admin-v12-shell .iss20-search-hidden{display:none!important}
@media(max-width:900px){.iss20-sidebar-search{margin-left:0;margin-right:0}}


/* ---------- login v21 cleanup / premium finish ---------- */
body:has(.login-page-shell) .info-bar,
body:has(.login-page-shell) .footer-premium{display:none!important}
body:has(.login-page-shell){min-height:100vh!important;background:radial-gradient(980px 520px at 88% 12%,rgba(66,121,235,.12),transparent 62%),radial-gradient(760px 460px at 4% 92%,rgba(18,128,91,.065),transparent 64%),linear-gradient(135deg,#fbfdff 0%,#eef3f8 100%)!important}
body:has(.role-login-shell) .info-bar,
body:has(.role-login-shell) .footer-premium{display:none!important}
body:has(.role-login-shell){min-height:100vh!important;background:radial-gradient(860px 480px at 90% 8%,rgba(59,120,255,.12),transparent 65%),linear-gradient(180deg,#f9fbfe,#edf2f7)!important}
.login-page-shell{min-height:100vh!important;padding:34px 22px!important}
.login-layout{gap:58px!important}
.login-showcase-badge{background:rgba(255,255,255,.82)!important}
.login-feature-grid>div{background:rgba(255,255,255,.78)!important}
.login-premium-card{box-shadow:0 24px 70px rgba(7,27,53,.12),inset 0 1px rgba(255,255,255,.88)!important}
.login-premium-card:focus-within{box-shadow:0 28px 78px rgba(7,27,53,.14),0 0 0 3px rgba(61,120,255,.07)!important}
.login-demo-box{background:#f8fafc!important}
.role-login-shell{min-height:100vh!important;padding:34px 18px!important}
.role-login-card{box-shadow:0 24px 70px rgba(16,39,70,.11)!important}
.role-login-card::before{height:3px!important}
.role-login-brand .role-shield{font-size:0!important}
.role-login-brand .role-shield i{font-size:16px!important}
.role-login-meta i{color:#607a9a;margin-right:4px}
@media(max-width:900px){.login-layout{gap:30px!important}}
