/* ISS Enterprise Premium UI v6 — additive, no existing page removal. */
:root{
  --p-bg:#f2f6fb;
  --p-surface:rgba(255,255,255,.94);
  --p-border:#dde6f0;
  --p-border-strong:#cbd7e4;
  --p-ink:#0c1b2e;
  --p-muted:#6b7c91;
  --p-blue:#2f6bff;
  --p-blue-dark:#173f9b;
  --p-shadow:0 18px 48px rgba(20,45,80,.08);
  --p-shadow-soft:0 8px 26px rgba(20,45,80,.06);
}

/* ---------- shared premium shell ---------- */
body.app{background:
  radial-gradient(900px 380px at 85% -8%,rgba(47,107,255,.12),transparent 62%),
  radial-gradient(680px 340px at 6% 0%,rgba(16,185,129,.05),transparent 62%),
  linear-gradient(180deg,#f6f9fd 0%,#eef3f8 100%);
  color:var(--p-ink);
}
.app-main{padding-bottom:54px}
.appbar{position:sticky;top:0;z-index:30;background:rgba(246,249,253,.88);backdrop-filter:blur(16px);border-bottom:1px solid rgba(203,215,228,.86)!important;min-height:82px!important}
.appbar h1{letter-spacing:-.35px;font-weight:850}
.appbar>div:first-child small{color:#77879a}
.role-context{display:inline-flex;align-items:center;gap:4px;padding:6px 9px;border:1px solid #d8e2ee;border-radius:999px;background:rgba(255,255,255,.82);color:#48617e;font-weight:850;font-size:9px;letter-spacing:.6px}
.role-context small{font-size:8px;color:#8796a8!important}
.premium-live-pill{display:inline-flex!important;align-items:center;gap:5px;border:1px solid #cfe8db;background:#f0faf5;color:#16724a!important}
.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#18a968;box-shadow:0 0 0 4px rgba(24,169,104,.10);flex:none}

/* ---------- premium navigation ---------- */
.sidebar{border-right:1px solid rgba(153,174,197,.18)!important}
.sidebar .brand{margin-bottom:11px}
.nav-group>summary:hover{background:rgba(255,255,255,.07)!important}
.nav-group>a.active{background:linear-gradient(90deg,rgba(47,107,255,.24),rgba(47,107,255,.07))!important;box-shadow:inset 3px 0 0 #65a0ff!important}
.nav-group>a .nav-icon,.nav-group>summary .nav-icon{filter:saturate(1.08)}
.sidebar-user{background:linear-gradient(180deg,rgba(255,255,255,.045),transparent);border-radius:14px}
.sidebar::after{content:"";position:fixed;left:12px;bottom:13px;width:5px;height:5px;border-radius:50%;background:#2f6bff;box-shadow:0 0 0 5px rgba(47,107,255,.08);pointer-events:none}

/* ---------- every page head becomes a controlled composition ---------- */
.premium-page-head{padding:6px 0 4px}
.premium-page-head>div:first-child{display:grid;gap:4px}
.section-kicker{display:inline-block;color:#6e8096;font-size:9px;font-weight:900;letter-spacing:1.3px;text-transform:uppercase}
.page-icon{display:inline-grid;place-items:center;width:36px;height:36px;margin-right:9px;border-radius:11px;background:linear-gradient(135deg,#edf4ff,#dce9ff);border:1px solid #d2e0f5;font-size:16px;vertical-align:middle}
.premium-page-head h1{display:flex;align-items:center;gap:0;min-width:0}

/* ---------- all workflow pages ---------- */
.premium-panel{border:1px solid var(--p-border)!important;box-shadow:var(--p-shadow-soft)!important;background:var(--p-surface)!important}
.workflow-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 14px}
.summary-tile{min-width:0;padding:15px 16px;border-radius:15px;border:1px solid var(--p-border);background:linear-gradient(145deg,#fff,#f6f9fc);box-shadow:var(--p-shadow-soft);overflow:hidden}
.summary-tile span,.summary-tile small{display:block;color:var(--p-muted);font-size:10px;line-height:1.35;overflow-wrap:anywhere}
.summary-tile strong{display:block;font-size:23px;line-height:1.1;margin:6px 0 5px;letter-spacing:-.3px;overflow-wrap:anywhere}
.workflow-form-card{padding:20px!important}
.premium-toolbar{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px!important;padding:13px!important;margin-bottom:14px!important}
.workflow-filter-form{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;min-width:0}
.filter-field{display:grid;gap:5px;min-width:150px;flex:1 1 190px}
.filter-field>span{font-size:9px;text-transform:uppercase;letter-spacing:.7px;font-weight:900;color:#789}
.filter-field input,.filter-field select{width:100%;min-height:40px!important;border:1px solid #d8e2ed;border-radius:10px;background:#fff;padding:9px 11px;box-sizing:border-box}
.filter-actions{display:flex;flex-wrap:wrap;gap:7px}
.toolbar-meta{display:flex;align-items:center;gap:7px;justify-content:flex-end;color:#7b8b9f;font-size:9px;white-space:nowrap}
.table-tools{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:0 0 11px}
.select-all{display:flex;align-items:center;gap:6px;color:#4f647d;font-size:10px;font-weight:800}
.table-tools select{min-height:34px;border:1px solid #d8e2ed;border-radius:9px;padding:7px 10px;background:#fff;color:#31465e;font-size:11px}
.table-spacer{flex:1 1 auto}
.panel-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.action-cell{min-width:190px}
.inline-status-form,.inline-delete-form{display:inline-flex;vertical-align:top;margin:0 4px 4px 0}
.inline-status-form select{min-height:34px;border:1px solid #d8e2ed;border-radius:9px;padding:6px 8px;background:#fff;font-size:10px;color:#334960;max-width:145px}
.check-col{width:34px!important;min-width:34px!important;text-align:center!important}
.table-wrap tbody tr{transition:background .18s ease,transform .18s ease}
.table-wrap tbody tr:hover{background:#f7faff}

/* ---------- forms ---------- */
.form label{gap:6px!important}
.form label>span{text-transform:none!important;letter-spacing:0!important;color:#52677f;font-size:11px!important}
.form input,.form textarea,.form select{border-color:#d7e1ed!important;background:rgba(255,255,255,.98)!important;box-shadow:0 1px 1px rgba(20,40,70,.02)}
.form input:focus,.form textarea:focus,.form select:focus{border-color:#72a1ff!important;box-shadow:0 0 0 4px rgba(47,107,255,.10)!important;outline:none}
.form-actions{padding-top:6px}
.btn.primary{background:linear-gradient(135deg,#326fff,#2858d8)!important;color:#fff!important;border:0!important;box-shadow:0 10px 22px rgba(47,107,255,.22)}
.btn.primary:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(47,107,255,.28)}
.btn.ghost{border-color:#d4dfeb!important;background:rgba(255,255,255,.82)!important}
.premium-badge.live{background:#eaf8f1!important;color:#13804f!important;border-color:#c8ead8!important}

/* ---------- command dashboard ---------- */
.premium-command-hero{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;background:linear-gradient(135deg,#0d2039,#122d50 60%,#1b416f)!important;color:#fff;border:1px solid rgba(148,190,238,.2)!important;box-shadow:0 18px 46px rgba(7,27,50,.18)!important}
.premium-command-hero p,.premium-command-hero .section-kicker{color:#cbd9e8!important}
.hero-command-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.premium-action{min-height:118px!important;background:linear-gradient(145deg,#fff,#f5f8fb)!important;border:1px solid #dbe5ef!important}
.premium-action b{font-size:14px}
.premium-action small{color:#75869a;line-height:1.55}

/* ---------- role login ---------- */
.role-login-shell{min-height:calc(100vh - 70px);display:grid;place-items:center;padding:34px 18px 54px;background:radial-gradient(600px 260px at 50% 0%,color-mix(in srgb,var(--role-accent) 15%,transparent),transparent 70%)}
.role-login-card{width:min(520px,100%);padding:34px;border:1px solid #dce5ee;border-radius:26px;background:rgba(255,255,255,.92);box-shadow:0 30px 80px rgba(16,39,70,.14);backdrop-filter:blur(16px);position:relative;overflow:hidden}
.role-login-card::before{content:"";position:absolute;left:0;top:0;width:100%;height:4px;background:linear-gradient(90deg,var(--role-accent),#9bc0ff);}
.role-login-brand{display:flex;align-items:center;gap:10px;font-weight:900;font-size:17px;color:#10243e}
.role-login-brand small{display:block;color:#7a8ca1;font-size:9px;font-weight:700;letter-spacing:.4px;margin-top:2px}
.role-shield{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:linear-gradient(145deg,#173c68,#0e2440);color:#fff;box-shadow:0 12px 30px rgba(11,31,56,.22)}
.role-login-hero{padding:30px 0 20px}
.role-login-hero h1{font-size:32px;line-height:1.05;letter-spacing:-.6px;margin:7px 0 9px;color:#10243e}
.role-login-hero p{margin:0;color:#6a7c90;line-height:1.65;font-size:13px}
.role-login-form{display:grid!important;gap:15px}
.login-password-wrap{position:relative}
.login-password-wrap input{width:100%;padding-right:76px!important}
.password-toggle{position:absolute;right:6px;top:6px;height:calc(100% - 12px);border:0;border-radius:8px;padding:0 10px;background:#eef3f8;color:#526981;font-size:10px;font-weight:800;cursor:pointer}
.login-submit{width:100%;display:flex;justify-content:center;align-items:center;gap:8px;margin-top:4px}
.role-login-meta{display:flex;justify-content:center;flex-wrap:wrap;gap:7px;margin-top:17px;color:#8594a6;font-size:9px}
.portal-switch{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;margin-top:18px;padding-top:15px;border-top:1px solid #e4eaf0}
.portal-switch a{padding:7px 10px;border-radius:8px;border:1px solid #dbe4ee;background:#fff;color:#46607a;font-size:10px;font-weight:800;text-decoration:none}
.portal-switch a:hover{border-color:#9dbcf4;color:#1f5ed5}
.portal-switch .muted-link{border:0;background:transparent;color:#8091a4}
.portal-note{text-align:center;margin:12px 0 0;color:#75869a;font-size:10px;line-height:1.5}

/* ---------- print ---------- */
@media print{
  .sidebar,.appbar-search,.appbar-actions,.toolbar,.premium-toolbar,.form-actions,.table-tools,.btn,.nav-group,.dash-footer-bar{display:none!important}
  .app-main{margin:0!important;width:100%!important;padding:0!important}
  body.app{background:#fff!important}
  .card,.premium-panel,.summary-tile{box-shadow:none!important;border:1px solid #d9e1ea!important;break-inside:avoid}
  .table-wrap{overflow:visible!important}
  .table-wrap table{min-width:0!important;width:100%!important}
}

@media(max-width:1150px){
  .workflow-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .premium-toolbar{grid-template-columns:1fr}
  .toolbar-meta{justify-content:flex-start}
}
@media(max-width:900px){
  .premium-command-hero{grid-template-columns:1fr}
  .hero-command-actions{justify-content:flex-start}
  .role-context{display:none}
}
@media(max-width:620px){
  .workflow-summary-grid{grid-template-columns:1fr 1fr}
  .role-login-card{padding:25px 20px;border-radius:21px}
  .role-login-hero h1{font-size:28px}
  .premium-toolbar{padding:11px!important}
  .filter-field{min-width:100%;flex-basis:100%}
}
@media(max-width:430px){
  .workflow-summary-grid{grid-template-columns:1fr}
  .panel-meta{width:100%;justify-content:flex-start}
}
.workspace-search-status{display:flex;align-items:center;gap:8px;height:42px;padding:0 12px;border:1px solid #d9e3ed;border-radius:11px;background:rgba(255,255,255,.78);color:#536b83;font-size:11px}
.workspace-search-status small{color:#8797aa;font-size:9px;margin-left:auto}
.auto-refresh-toggle{display:flex;align-items:center;gap:5px;font-size:9px;font-weight:800;color:#72849a;white-space:nowrap}
.auto-refresh-toggle input{accent-color:#2f6bff}
.login-portals{justify-content:center}
@media(max-width:620px){.workspace-search-status{width:100%}.workspace-search-status small{margin-left:auto}}
