:root{
  --bg:#f6f8fc;
  --bg-soft:#f9fbff;
  --panel:#ffffff;
  --panel-soft:#f8fafc;
  --ink:#172033;
  --ink-strong:#0f172a;
  --muted:#64748b;
  --muted-light:#94a3b8;
  --line:#e4e9f1;
  --line-strong:#d7deea;
  --brand:#2563eb;
  --brand-dark:#1d4ed8;
  --brand-soft:#eff6ff;
  --brand-softer:#f6f9ff;
  --brand-light:#3b82f6;
  --brand-border:#dbeafe;
  --brand-rgb:37,99,235;
  --app-font:"Plus Jakarta Sans",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --indigo:#4f46e5;
  --success:#059669;
  --success-bg:#ecfdf5;
  --warning:#d97706;
  --warning-bg:#fffbeb;
  --danger:#dc2626;
  --danger-bg:#fef2f2;
  --cyan:#0891b2;
  --shadow-xs:0 1px 2px rgba(15,23,42,.04);
  --shadow-sm:0 4px 14px rgba(15,23,42,.055);
  --shadow:0 12px 30px rgba(15,23,42,.065);
  --shadow-lg:0 24px 60px rgba(15,23,42,.12);
  --radius-sm:10px;
  --radius:15px;
  --radius-lg:22px;
  --sidebar-w:272px;
}

*{box-sizing:border-box}
html{min-height:100%;scroll-behavior:smooth}
body{margin:0;min-height:100vh;font-family:var(--app-font);color:var(--ink);background:var(--bg);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body::before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 92% -5%,rgba(var(--brand-rgb),.055),transparent 30%),radial-gradient(circle at 8% 105%,rgba(79,70,229,.035),transparent 28%);z-index:-1}
a{color:inherit}
button,input,select,textarea{font:inherit}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(var(--brand-rgb),.18);outline-offset:2px}
.ui-icon{display:block;flex:0 0 auto}

/* App shell */
.app-shell{display:flex;min-height:100vh}
.sidebar{width:var(--sidebar-w);background:rgba(255,255,255,.97);color:var(--ink);padding:20px 15px 16px;position:fixed;inset:0 auto 0 0;z-index:50;display:flex;flex-direction:column;border-right:1px solid var(--line);box-shadow:4px 0 24px rgba(15,23,42,.025);overflow-y:auto;overflow-x:hidden}
.sidebar::-webkit-scrollbar{width:5px}.sidebar::-webkit-scrollbar-thumb{background:#dbe2ec;border-radius:999px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;padding:2px 7px 19px;border-bottom:1px solid var(--line)}
.brand-mark{width:45px;height:45px;border-radius:13px;display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,var(--brand-light),var(--brand-dark));box-shadow:0 9px 20px rgba(var(--brand-rgb),.23),inset 0 1px 0 rgba(255,255,255,.24)}
.brand-copy{min-width:0}.brand strong,.brand small{display:block}.brand strong{font-size:18px;line-height:1.15;letter-spacing:-.025em;color:var(--ink-strong)}.brand small{font-size:10px;color:var(--muted);margin-top:4px;letter-spacing:.015em}
.user-mini{display:flex;align-items:center;gap:11px;margin:16px 2px 5px;padding:12px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,#fff,var(--panel-soft));box-shadow:var(--shadow-xs)}
.avatar{width:40px;height:40px;border-radius:11px;background:#e8eef9;color:var(--brand);display:grid;place-items:center;font-weight:800;letter-spacing:.02em;flex:0 0 auto;border:1px solid #dbe5f4}
.avatar-gradient{background:linear-gradient(145deg,var(--brand-border),#e0e7ff);color:var(--brand-dark)}
.user-mini-copy{min-width:0;flex:1}.user-mini strong,.user-mini small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-mini strong{font-size:12px;color:var(--ink-strong)}.user-mini small{font-size:10px;color:var(--muted);margin-top:2px}.role-chip{display:inline-flex;align-items:center;margin-top:6px;padding:3px 7px;border-radius:999px;background:var(--brand-soft);border:1px solid var(--brand-border);color:var(--brand-dark);font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}
.nav-label{padding:18px 11px 7px;color:#9aa7b8;font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.14em}.nav-label-spaced{padding-top:22px}
.nav{display:flex;flex-direction:column;gap:3px}.nav a{position:relative;display:flex;align-items:center;gap:11px;text-decoration:none;color:#526176;padding:10px 11px;border:1px solid transparent;border-radius:11px;font-size:12px;font-weight:650;transition:background .16s,color .16s,border-color .16s,transform .16s}.nav a .ui-icon{width:18px;height:18px;opacity:.82}.nav a:hover{background:#f6f8fc;color:#1e293b;border-color:#eef1f6;transform:translateX(1px)}.nav a.active{background:var(--brand-soft);border-color:var(--brand-border);color:var(--brand-dark);box-shadow:inset 0 0 0 1px rgba(var(--brand-rgb),.02)}.nav a.active::after{content:"";position:absolute;right:10px;width:6px;height:6px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 4px rgba(var(--brand-rgb),.09)}.nav a.active .ui-icon{color:var(--brand);opacity:1}
.sidebar-bottom{margin-top:auto;border-top:1px solid var(--line);padding:13px 3px 0}.security-note{display:flex;align-items:center;gap:8px;color:#7b899c;font-size:9px;padding:6px 9px 10px}.security-note .ui-icon{color:var(--success)}.logout-link{display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;color:#b42332;padding:9px;border-radius:10px;font-size:11px;font-weight:750;transition:.16s}.logout-link:hover{background:var(--danger-bg);color:#991b1b}
.sidebar-overlay{display:none;position:fixed;inset:0;border:0;background:rgba(15,23,42,.32);backdrop-filter:blur(2px);z-index:40}

.main{margin-left:var(--sidebar-w);min-width:0;flex:1;display:flex;min-height:100vh;flex-direction:column}
.topbar{min-height:78px;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:16px;padding:13px 30px;position:sticky;top:0;z-index:30}
.page-heading{min-width:0}.breadcrumb{display:flex;align-items:center;gap:5px;color:var(--muted-light);font-size:9px;font-weight:750;text-transform:uppercase;letter-spacing:.075em;margin-bottom:4px}.breadcrumb strong{color:var(--brand);font-weight:800}.topbar h1{font-size:21px;line-height:1.2;letter-spacing:-.028em;margin:0;color:var(--ink-strong)}.topbar p{font-size:10px;color:var(--muted);margin:3px 0 0}.top-actions{margin-left:auto;display:flex;align-items:center;gap:9px}.system-pill{display:flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid #d9eee5;background:#f4fbf8;color:#147257;border-radius:999px;font-size:9px;font-weight:750;white-space:nowrap}.system-pill::before{content:"";width:7px;height:7px;border-radius:50%;background:#10b981;box-shadow:0 0 0 4px rgba(16,185,129,.1)}
.top-profile{display:flex;align-items:center;gap:9px;text-decoration:none;padding:6px 8px 6px 6px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:var(--shadow-xs);transition:.16s}.top-profile:hover{border-color:#cfd9e8;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.top-profile strong,.top-profile small{display:block;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-profile strong{font-size:11px;color:var(--ink-strong)}.top-profile small{font-size:9px;color:var(--muted);margin-top:1px}.avatar-small{width:34px;height:34px;border-radius:10px;background:linear-gradient(145deg,var(--brand-border),#e0e7ff);color:var(--brand-dark)}
.menu-btn{display:none;border:1px solid var(--line);background:#fff;color:#334155;width:39px;height:39px;border-radius:10px;place-items:center;cursor:pointer;box-shadow:var(--shadow-xs)}
.content{width:100%;padding:26px 30px 38px;max-width:1540px;margin:0 auto;flex:1}.app-footer{display:flex;justify-content:space-between;gap:12px;padding:15px 30px 20px;color:#94a3b8;font-size:9px;border-top:1px solid var(--line);background:rgba(255,255,255,.58)}

/* Alerts */
.alert{display:flex;align-items:flex-start;gap:10px;border-radius:12px;padding:11px 13px;margin-bottom:16px;font-size:11px;border:1px solid;box-shadow:var(--shadow-xs)}.alert-dot{width:7px;height:7px;border-radius:50%;margin-top:5px;flex:0 0 auto}.alert.success{background:var(--success-bg);border-color:#c7f1df;color:#087155}.alert.success .alert-dot{background:#10b981}.alert.error{background:var(--danger-bg);border-color:#f5cccc;color:#a61b2a}.alert.error .alert-dot{background:#ef4444}.alert.warning{background:var(--warning-bg);border-color:#f4dfac;color:#8a5208}.alert.warning .alert-dot{background:#f59e0b}

/* Dashboard */
.dashboard-intro{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:19px;padding:21px 22px;border-radius:17px;background:linear-gradient(120deg,#eef5ff 0%,#f7faff 54%,#f3f1ff 100%);color:var(--ink);border:1px solid #dce7f7;box-shadow:var(--shadow-sm)}
.dashboard-intro::before{content:"";position:absolute;width:250px;height:250px;border-radius:50%;right:-85px;top:-155px;background:radial-gradient(circle,rgba(var(--brand-rgb),.15),transparent 67%)}.dashboard-intro::after{content:"";position:absolute;width:190px;height:190px;border-radius:50%;right:150px;bottom:-160px;background:radial-gradient(circle,rgba(79,70,229,.09),transparent 67%)}
.intro-copy{position:relative;z-index:1;display:flex;align-items:center;gap:14px;min-width:0}.intro-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#fff;border:1px solid #d8e4f4;color:var(--brand);flex:0 0 auto;box-shadow:var(--shadow-xs)}.intro-copy h2{font-size:18px;line-height:1.25;letter-spacing:-.025em;margin:0;color:var(--ink-strong)}.intro-copy p{color:var(--muted);font-size:10px;margin:5px 0 0}.intro-actions{position:relative;z-index:1;display:flex;gap:8px;flex-wrap:wrap}.btn-on-dark{background:#fff;border-color:#d7e2f2;color:#334155;box-shadow:var(--shadow-xs)}.btn-on-dark:hover{background:#f8fbff;border-color:#cbd9eb;color:var(--brand-dark)}
.grid{display:grid;gap:18px}.stats{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:20px}.stat{position:relative;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow-sm);transition:transform .18s,box-shadow .18s,border-color .18s}.stat::after{content:"";position:absolute;width:85px;height:85px;border-radius:50%;right:-42px;bottom:-48px;background:var(--stat-glow,rgba(var(--brand-rgb),.06));pointer-events:none}.stat:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:#d7dfeb}.stat-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.stat-label{font-size:9px;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);font-weight:850}.stat-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--stat-icon-bg,var(--brand-soft));color:var(--stat-icon-color,var(--brand));border:1px solid var(--stat-icon-border,var(--brand-border))}.stat-value{font-size:30px;line-height:1;font-weight:850;letter-spacing:-.035em;margin-top:15px;color:var(--ink-strong)}.stat-note{font-size:9px;color:var(--muted);margin-top:6px}.stat-users{--stat-icon-bg:var(--brand-soft);--stat-icon-color:var(--brand);--stat-icon-border:var(--brand-border);--stat-glow:rgba(var(--brand-rgb),.07)}.stat-total{--stat-icon-bg:#f5f3ff;--stat-icon-color:#6d28d9;--stat-icon-border:#e9d5ff;--stat-glow:rgba(109,40,217,.065)}.stat-active{--stat-icon-bg:#ecfdf5;--stat-icon-color:#059669;--stat-icon-border:#d1fae5;--stat-glow:rgba(5,150,105,.065)}.stat-expired{--stat-icon-bg:#fff7ed;--stat-icon-color:#ea580c;--stat-icon-border:#ffedd5;--stat-glow:rgba(234,88,12,.06)}

/* Panels, tables and forms */
.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 19px;border-bottom:1px solid var(--line);background:#fff}.panel-head h2{font-size:14px;line-height:1.3;margin:0;color:var(--ink-strong);letter-spacing:-.015em}.panel-head p{font-size:9px;color:var(--muted);margin:4px 0 0}.panel-body{padding:19px}.panel-kicker{display:flex;align-items:center;gap:6px;color:var(--brand);font-size:8px;text-transform:uppercase;letter-spacing:.09em;font-weight:850;margin-bottom:5px}
.two-col{grid-template-columns:minmax(0,1.62fr) minmax(310px,.88fr)}
.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;min-width:780px}.table th{background:#f8fafc;color:#738196;font-size:8px;text-align:left;text-transform:uppercase;letter-spacing:.075em;font-weight:850;padding:11px 14px;border-bottom:1px solid var(--line);white-space:nowrap}.table td{padding:12px 14px;border-bottom:1px solid #edf1f6;font-size:10px;vertical-align:middle;color:#344054}.table tbody tr{transition:background .14s}.table tbody tr:hover{background:#fbfdff}.table tbody tr:last-child td{border-bottom:0}.table strong{display:block;color:var(--ink-strong);font-size:10px}.muted{color:var(--muted);font-size:8.5px;margin-top:3px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;font-size:9px;word-break:break-all;color:#334155}
.toolbar{display:flex;align-items:center;justify-content:space-between;gap:13px;margin-bottom:15px;flex-wrap:wrap}.filters{display:flex;align-items:center;gap:5px;padding:4px;background:#edf1f6;border:1px solid #e2e7ef;border-radius:11px;flex-wrap:wrap}.filters a{padding:7px 10px;border-radius:8px;text-decoration:none;color:#64748b;font-size:9px;font-weight:750;transition:.14s}.filters a:hover{color:#334155;background:rgba(255,255,255,.65)}.filters a.active{background:#fff;color:var(--brand-dark);box-shadow:0 1px 4px rgba(15,23,42,.08)}
.search{display:flex;align-items:center;gap:7px}.search input,.search select{min-width:220px;border:1px solid var(--line-strong);border-radius:10px;padding:9px 11px;background:#fff;font-size:10px;color:var(--ink);outline:none}.search input:focus,.search select:focus{border-color:#93b4ef;box-shadow:0 0 0 3px rgba(var(--brand-rgb),.08)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid transparent;border-radius:9px;padding:9px 13px;font-size:10px;font-weight:760;text-decoration:none;cursor:pointer;white-space:nowrap;transition:transform .14s,box-shadow .14s,background .14s,border-color .14s,color .14s}.btn:hover{transform:translateY(-1px)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn-primary{background:linear-gradient(145deg,var(--brand-light),var(--brand));border-color:var(--brand);color:#fff;box-shadow:0 7px 16px rgba(var(--brand-rgb),.17)}.btn-primary:hover{background:linear-gradient(145deg,var(--brand),var(--brand-dark));box-shadow:0 10px 22px rgba(var(--brand-rgb),.22)}.btn-light{background:#fff;border-color:var(--line-strong);color:#42526a;box-shadow:var(--shadow-xs)}.btn-light:hover{background:#f8fafc;border-color:#cbd5e1;color:#1e293b}.btn-success{background:#ecfdf5;border-color:#c8f1df;color:#047857}.btn-success:hover{background:#dff9ed}.btn-warning{background:#fff7ed;border-color:#fed7aa;color:#c2410c}.btn-warning:hover{background:#ffedd5}.btn-danger{background:#fef2f2;border-color:#fecaca;color:#b91c1c}.btn-danger:hover{background:#fee2e2}.btn-sm{padding:6px 9px;border-radius:8px;font-size:8.5px}.btn .ui-icon{width:14px;height:14px}
.badge{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 8px;font-size:8px;font-weight:780;white-space:nowrap}.badge::before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.75}.badge.success{background:#ecfdf5;color:#047857}.badge.danger{background:#fef2f2;color:#b91c1c}.badge.warning{background:#fffbeb;color:#a16207}.badge.neutral{background:#f1f5f9;color:#475569}.badge.purple{background:#f5f3ff;color:#6d28d9}.actions{display:flex;gap:5px;flex-wrap:wrap;align-items:center}.actions form{margin:0}
.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1}.field label{font-size:9px;font-weight:800;color:#475569}.field input,.field select,.field textarea{border:1px solid var(--line-strong);border-radius:10px;padding:10px 11px;font:inherit;font-size:10.5px;color:var(--ink);background:#fff;outline:none;transition:.16s}.field input:hover,.field select:hover,.field textarea:hover{border-color:#c2ccda}.field input:focus,.field select:focus,.field textarea:focus{border-color:#7ca5ec;box-shadow:0 0 0 3px rgba(var(--brand-rgb),.09)}.field textarea{min-height:102px;resize:vertical}.hint{font-size:8px;color:var(--muted)}.form-actions{display:flex;gap:8px;margin-top:18px;flex-wrap:wrap}
.hierarchy{display:flex;flex-direction:column;gap:8px}.person{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px;border:1px solid var(--line);border-radius:11px;background:#fff;transition:.15s}.person:hover{border-color:#d7e1ef;background:#fbfdff}.person-main{display:flex;align-items:center;gap:9px;min-width:0}.person .avatar{width:36px;height:36px;border-radius:10px;background:linear-gradient(145deg,var(--brand-border),#e0e7ff);color:var(--brand-dark)}.person strong,.person small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.person strong{font-size:10px;color:var(--ink-strong)}.person small{color:var(--muted);font-size:8px;margin-top:3px}.empty{text-align:center;padding:38px 18px;color:var(--muted);font-size:10px}
.code-box{background:#f8fafc;color:#334155;border-radius:11px;padding:12px;word-break:break-all;border:1px solid var(--line);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px}.download-card{display:flex;align-items:center;gap:18px}.download-icon{width:82px;height:82px;border-radius:18px;background:linear-gradient(145deg,var(--brand-soft),#eef2ff);color:var(--brand);display:grid;place-items:center;border:1px solid var(--brand-border)}.kpi-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.kpi-item{padding:12px;border:1px solid var(--line);border-radius:10px;background:#fbfdff}.kpi-item small{display:block;color:var(--muted);font-size:8px}.kpi-item strong{display:block;font-size:15px;margin-top:4px;color:var(--ink-strong)}.pagination{display:flex;gap:5px;justify-content:flex-end;margin-top:15px}.pagination a,.pagination span{padding:7px 9px;border:1px solid var(--line);border-radius:8px;text-decoration:none;background:#fff;font-size:9px}.pagination .current{background:var(--brand);color:#fff;border-color:var(--brand)}

/* Light SaaS login */
.login-page{min-height:100vh;padding:0;background:#f4f7fb;display:block;position:relative;overflow:auto}.login-page::before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 9% 10%,rgba(var(--brand-rgb),.09),transparent 28%),radial-gradient(circle at 94% 88%,rgba(79,70,229,.07),transparent 26%)}
.login-shell{position:relative;z-index:1;min-height:100vh;display:grid;grid-template-columns:minmax(380px,1.05fr) minmax(430px,.95fr);padding:22px;gap:22px}
.login-showcase{position:relative;padding:48px clamp(36px,5vw,70px);display:flex;flex-direction:column;justify-content:space-between;color:var(--ink);overflow:hidden;background:linear-gradient(135deg,#eef5ff 0%,#f8fbff 55%,#f0efff 100%);border:1px solid #dce6f5;border-radius:26px;box-shadow:var(--shadow-sm)}.login-showcase::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(var(--brand-rgb),.035) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--brand-rgb),.035) 1px,transparent 1px);background-size:30px 30px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.85),transparent 85%);pointer-events:none}.login-showcase::after{content:"";position:absolute;width:340px;height:340px;border-radius:50%;right:-140px;bottom:-170px;background:radial-gradient(circle,rgba(var(--brand-rgb),.15),transparent 68%)}
.login-showcase-brand{position:relative;z-index:1;display:flex;align-items:center;gap:11px}.login-showcase-brand .brand-mark{width:48px;height:48px}.login-showcase-brand strong,.login-showcase-brand small{display:block}.login-showcase-brand strong{font-size:18px;color:var(--ink-strong)}.login-showcase-brand small{color:var(--muted);font-size:10px;margin-top:2px}.login-hero{position:relative;z-index:1;max-width:620px;padding:46px 0}.login-eyebrow{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid #d7e4f7;border-radius:999px;background:rgba(255,255,255,.75);color:var(--brand-dark);font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.09em;box-shadow:var(--shadow-xs)}.login-hero h2{font-size:clamp(36px,4.4vw,58px);line-height:1.04;letter-spacing:-.052em;margin:19px 0 15px;max-width:650px;color:var(--ink-strong)}.login-hero h2 span{color:var(--brand)}.login-hero p{max-width:550px;color:var(--muted);font-size:12px;line-height:1.75;margin:0}.login-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:27px}.login-feature{padding:13px;border:1px solid #dce5f2;border-radius:12px;background:rgba(255,255,255,.78);box-shadow:var(--shadow-xs)}.login-feature .ui-icon{color:var(--brand);margin-bottom:8px}.login-feature strong{display:block;font-size:9px;color:var(--ink-strong)}.login-feature small{display:block;color:var(--muted);font-size:8px;margin-top:3px}.login-showcase-foot{position:relative;z-index:1;display:flex;align-items:center;gap:7px;color:#7b899c;font-size:9px}.login-showcase-foot .ui-icon{color:var(--success)}
.login-panel{display:grid;place-items:center;padding:34px;background:#fff;border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow-sm)}.login-card{width:min(430px,100%);background:#fff;padding:32px 26px;position:relative}.login-logo{width:54px;height:54px;border-radius:15px;background:linear-gradient(145deg,var(--brand-light),var(--brand-dark));color:#fff;display:grid;place-items:center;margin-bottom:21px;box-shadow:0 11px 24px rgba(var(--brand-rgb),.2)}.login-card h1{text-align:left;margin:0;font-size:26px;color:var(--ink-strong);letter-spacing:-.038em}.login-card>p{text-align:left;color:var(--muted);font-size:10px;margin:7px 0 22px;line-height:1.65}.login-card .field{margin-bottom:13px}.login-card .field label{font-size:9px}.login-card .field input{padding:11px 12px;font-size:11px}.login-card .btn{width:100%;padding:11px;margin-top:3px;font-size:10.5px}.login-foot{display:flex;align-items:center;justify-content:center;gap:6px;text-align:center;color:#94a3b8;font-size:8px;margin-top:19px}.login-foot .ui-icon{color:var(--success)}.login-meta{display:flex;align-items:center;justify-content:space-between;margin:2px 0 14px;color:#94a3b8;font-size:8px}.login-meta span{display:flex;align-items:center;gap:5px}.login-meta .ui-icon{color:var(--brand)}

@media(max-width:1180px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.two-col{grid-template-columns:1fr}.login-shell{grid-template-columns:minmax(330px,.9fr) minmax(400px,1fr)}.login-features{grid-template-columns:1fr}}
@media(max-width:960px){.sidebar{transform:translateX(-104%);transition:transform .24s ease;box-shadow:18px 0 50px rgba(15,23,42,.14)}.sidebar.open{transform:translateX(0)}.sidebar.open+.sidebar-overlay{display:block}.main{margin-left:0}.menu-btn{display:grid}.content{padding:21px}.topbar{padding:12px 18px;min-height:74px}.app-footer{padding-left:21px;padding-right:21px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.login-shell{grid-template-columns:1fr;padding:16px}.login-showcase{display:none}.login-panel{min-height:calc(100vh - 32px);padding:24px}}
@media(max-width:650px){.stats{grid-template-columns:1fr}.panel-head{align-items:flex-start;flex-direction:column}.content{padding:17px 13px 27px}.topbar{padding:11px 13px}.topbar p,.breadcrumb,.system-pill{display:none}.topbar h1{font-size:18px}.top-profile div:not(.avatar){display:none}.top-profile{padding:4px}.avatar-small{width:33px;height:33px}.app-footer{flex-direction:column;padding:13px}.download-card{align-items:flex-start;flex-direction:column}.kpi-list{grid-template-columns:1fr}.search{width:100%;flex-direction:column}.search input,.search select{width:100%;min-width:0}.toolbar{align-items:stretch}.filters{width:100%}.login-panel{padding:15px}.login-card{padding:25px 18px}.login-card h1{font-size:23px}.form-actions{flex-direction:column}.form-actions .btn{width:100%}.panel-body{padding:15px}.panel-head{padding:15px}.app-footer span:last-child{display:none}.dashboard-intro{align-items:flex-start;flex-direction:column;padding:18px}.intro-actions{width:100%}.intro-actions .btn{flex:1}.intro-copy{align-items:flex-start}.intro-icon{width:43px;height:43px}.login-meta{gap:8px;flex-wrap:wrap}}

/* =========================================================
   BotMaster v6 — Professional Light SaaS refinement
   ========================================================= */
:root{
  --bg:#f4f7fb;
  --bg-soft:#f8fafc;
  --panel:#ffffff;
  --ink:#1e293b;
  --ink-strong:#0f172a;
  --muted:#64748b;
  --line:#e2e8f0;
  --line-strong:#cfd8e5;
  --brand:#2563eb;
  --brand-dark:#1d4ed8;
  --brand-soft:#eff6ff;
  --shadow-xs:0 1px 2px rgba(15,23,42,.04);
  --shadow-sm:0 5px 18px rgba(15,23,42,.055);
  --shadow:0 14px 38px rgba(15,23,42,.075);
  --radius-sm:11px;
  --radius:16px;
  --radius-lg:22px;
  --sidebar-w:282px;
}
body{font-size:15px;line-height:1.55;background:linear-gradient(180deg,#f7f9fc 0%,#f3f6fa 100%)}
.sidebar{padding:22px 16px 17px;box-shadow:5px 0 28px rgba(15,23,42,.035)}
.brand{gap:13px;padding:2px 8px 21px}.brand-mark{width:48px;height:48px;border-radius:14px}.brand strong{font-size:19px}.brand small{font-size:11px}
.user-mini{padding:13px;margin-top:17px}.avatar{width:42px;height:42px}.user-mini strong{font-size:13px}.user-mini small{font-size:11px}.role-chip{font-size:9px;padding:4px 8px}
.nav-label{font-size:9px;padding:20px 11px 8px}.nav a{font-size:13px;padding:11px 12px;border-radius:12px;gap:12px}.nav a .ui-icon{width:19px;height:19px}
.security-note{font-size:10px}.logout-link{font-size:12px;padding:10px}
.topbar{min-height:84px;padding:14px 32px}.breadcrumb{font-size:10px}.topbar h1{font-size:23px}.topbar p{font-size:11px}.system-pill{font-size:10px;padding:8px 11px}.top-profile strong{font-size:12px}.top-profile small{font-size:10px}.avatar-small{width:37px;height:37px}
.content{padding:30px 32px 44px;max-width:1640px}.app-footer{font-size:10px;padding:17px 32px 22px}
.alert{font-size:12px;padding:12px 14px}
.dashboard-intro{padding:24px 25px;margin-bottom:22px}.intro-icon{width:52px;height:52px}.intro-copy h2{font-size:20px}.intro-copy p{font-size:12px}.grid{gap:20px}.stats{margin-bottom:22px}.stat{padding:20px}.stat-label{font-size:10px}.stat-value{font-size:32px}.stat-note{font-size:10px}.stat-icon{width:43px;height:43px}
.panel{border-radius:17px}.panel-head{padding:20px 22px}.panel-head h2{font-size:16px}.panel-head p{font-size:11px}.panel-body{padding:22px}.panel-kicker{font-size:9px}
.table th{font-size:9.5px;padding:13px 15px}.table td{font-size:12px;padding:14px 15px}.table strong{font-size:12px}.muted{font-size:10.5px}.mono{font-size:10.5px}
.toolbar{margin-bottom:18px}.filters a{font-size:10.5px;padding:8px 11px}.search input,.search select{font-size:12px;padding:10px 12px}
.btn{font-size:12px;padding:10px 14px;border-radius:10px;gap:8px}.btn-sm{font-size:10px;padding:7px 10px}.btn .ui-icon{width:15px;height:15px}.btn-ghost{background:transparent;border-color:transparent;color:var(--muted)}.btn-ghost:hover{background:#f1f5f9;color:var(--ink)}
.badge{font-size:10px;padding:6px 9px}.badge.blue{background:var(--brand-soft);color:var(--brand-dark)}.badge.blue::before{background:var(--brand-light)}
.field{gap:7px}.field label{font-size:11px}.field input,.field select,.field textarea{font-size:13px;padding:12px 13px;border-radius:11px}.hint{font-size:10px}.form-actions{margin-top:22px;gap:10px}
.person{padding:12px}.person strong{font-size:12px}.person small{font-size:10px}.empty{font-size:12px}.code-box{font-size:11px;padding:14px}.kpi-item small{font-size:10px}.kpi-item strong{font-size:17px}.pagination a,.pagination span{font-size:11px}
.login-showcase-brand strong{font-size:20px}.login-showcase-brand small{font-size:11px}.login-eyebrow{font-size:9px}.login-hero p{font-size:14px}.login-feature strong{font-size:11px}.login-feature small{font-size:10px}.login-showcase-foot{font-size:10px}.login-card h1{font-size:29px}.login-card>p{font-size:12px}.login-card .field label{font-size:11px}.login-card .field input{font-size:13px;padding:12px 13px}.login-card .btn{font-size:13px;padding:12px}.login-foot,.login-meta{font-size:10px}

/* License management workspace */
.license-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:25px 27px;margin-bottom:20px;border:1px solid #d9e6f7;border-radius:20px;background:linear-gradient(120deg,#ffffff 0%,#f4f8ff 58%,#eef4ff 100%);box-shadow:var(--shadow-sm)}
.license-hero::before{content:"";position:absolute;width:300px;height:300px;border-radius:50%;right:-120px;top:-205px;background:radial-gradient(circle,rgba(var(--brand-rgb),.16),transparent 68%)}
.license-hero-copy,.license-hero-actions{position:relative;z-index:1}.license-hero-copy{max-width:760px}.page-eyebrow{display:inline-flex;align-items:center;gap:7px;color:var(--brand-dark);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.09em}.page-eyebrow .ui-icon{color:var(--brand-light)}.license-hero h2{font-size:25px;line-height:1.2;letter-spacing:-.035em;margin:7px 0 7px;color:var(--ink-strong)}.license-hero p{font-size:12px;color:var(--muted);margin:0;line-height:1.7}.license-hero-actions{display:flex;gap:9px;flex-wrap:wrap}
.license-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:21px}.license-tab{position:relative;display:flex;align-items:center;gap:13px;padding:17px 18px;text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-xs);transition:.18s}.license-tab:hover{transform:translateY(-2px);border-color:#cbd9ed;box-shadow:var(--shadow-sm)}.license-tab.active{border-color:#9fc0f7;background:linear-gradient(135deg,#f8fbff,#eef5ff);box-shadow:0 9px 24px rgba(var(--brand-rgb),.10)}.license-tab.active::after{content:"";position:absolute;left:20px;right:20px;bottom:-1px;height:3px;border-radius:3px 3px 0 0;background:linear-gradient(90deg,var(--brand),#60a5fa)}.license-tab-icon{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;color:#475569;background:#f1f5f9;border:1px solid #e2e8f0}.license-tab.active .license-tab-icon{color:var(--brand-dark);background:var(--brand-border);border-color:#bfdbfe}.license-tab-copy{min-width:0;flex:1}.license-tab-copy strong,.license-tab-copy small{display:block}.license-tab-copy strong{font-size:14px;color:var(--ink-strong)}.license-tab-copy small{font-size:10.5px;color:var(--muted);margin-top:3px}.license-tab-count{display:grid;place-items:center;min-width:34px;height:30px;padding:0 9px;border-radius:999px;background:#f1f5f9;color:#475569;font-size:12px;font-weight:800}.license-tab.active .license-tab-count{background:var(--brand);color:#fff}
.license-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin:0 2px 13px}.license-section-heading h3{font-size:17px;margin:0;color:var(--ink-strong);letter-spacing:-.02em}.license-section-heading p{font-size:11px;color:var(--muted);margin:4px 0 0}.record-pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#fff;border:1px solid var(--line);color:#64748b;font-size:10.5px;font-weight:700;box-shadow:var(--shadow-xs)}
.license-status-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:22px}.license-filter-card{--tone:#64748b;--tone-bg:#f1f5f9;position:relative;display:flex;align-items:center;gap:11px;min-width:0;padding:16px 15px;text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow-xs);transition:.17s}.license-filter-card:hover{transform:translateY(-2px);border-color:#cdd8e6;box-shadow:var(--shadow-sm)}.license-filter-card.active{border-color:color-mix(in srgb,var(--tone) 45%,#fff);box-shadow:0 9px 22px color-mix(in srgb,var(--tone) 12%,transparent);background:linear-gradient(145deg,#fff,var(--tone-bg))}.license-filter-card.tone-active{--tone:#059669;--tone-bg:#ecfdf5}.license-filter-card.tone-inactive{--tone:#64748b;--tone-bg:#f1f5f9}.license-filter-card.tone-expired{--tone:#dc2626;--tone-bg:#fef2f2}.license-filter-card.tone-soon{--tone:#d97706;--tone-bg:#fffbeb}.license-filter-card.tone-all{--tone:var(--brand);--tone-bg:var(--brand-soft)}.license-filter-icon{width:39px;height:39px;border-radius:11px;display:grid;place-items:center;flex:0 0 auto;background:var(--tone-bg);color:var(--tone);border:1px solid color-mix(in srgb,var(--tone) 16%,#fff)}.license-filter-copy{display:flex;flex-direction:column;min-width:0;flex:1}.license-filter-copy small{font-size:10px;font-weight:750;color:#64748b}.license-filter-copy strong{font-size:23px;line-height:1.05;margin:4px 0 3px;color:var(--ink-strong);letter-spacing:-.03em}.license-filter-copy em{font-size:9px;font-style:normal;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.license-filter-arrow{color:#cbd5e1}.license-filter-card.active .license-filter-arrow{color:var(--tone)}
.license-panel{box-shadow:0 8px 28px rgba(15,23,42,.06)}.license-panel-head{align-items:center;background:linear-gradient(180deg,#fff,#fcfdff)}.license-search{margin-left:auto}.search-input-wrap{display:flex;align-items:center;gap:8px;min-width:330px;border:1px solid var(--line-strong);border-radius:11px;padding:0 11px;background:#fff;transition:.16s}.search-input-wrap:focus-within{border-color:#8eb1ed;box-shadow:0 0 0 3px rgba(var(--brand-rgb),.08)}.search-input-wrap .ui-icon{color:#94a3b8}.search-input-wrap input{width:100%;min-width:0;border:0!important;box-shadow:none!important;padding:10px 0!important;background:transparent!important}
.license-table{min-width:1320px}.license-table th{background:#f8fafc;padding-top:14px;padding-bottom:14px}.license-table td{padding-top:16px;padding-bottom:16px}.license-table tbody tr:hover{background:#fafdff}.actions-head{text-align:center!important}
.client-cell{display:flex;align-items:center;gap:11px;min-width:210px}.client-avatar{width:39px;height:39px;border-radius:12px;display:grid;place-items:center;flex:0 0 auto;background:linear-gradient(145deg,var(--brand-border),#e0e7ff);color:var(--brand-dark);font-size:13px;font-weight:850;border:1px solid #cfe0f8}.client-copy{min-width:0}.client-copy strong,.client-copy a,.client-copy small{display:block;max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-copy strong{font-size:12px}.client-copy a{font-size:10.5px;color:#64748b;text-decoration:none;margin-top:2px}.client-copy a:hover{color:var(--brand);text-decoration:underline}.client-copy small{font-size:9.5px;color:#94a3b8;margin-top:2px}
.whatsapp-link{display:inline-flex;align-items:center;gap:7px;text-decoration:none;color:#087b5a;background:#ecfdf5;border:1px solid #c7f0df;padding:7px 9px;border-radius:9px;font-size:11px;font-weight:750;white-space:nowrap;transition:.15s}.whatsapp-link:hover{background:#dff9ed;border-color:#a7e8cd;transform:translateY(-1px)}.cell-note{display:block;max-width:190px;color:#94a3b8;font-size:9.5px;margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.key-line{display:flex;align-items:center;gap:6px;max-width:230px}.license-key-text{display:block;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#334155;font-weight:700}.copy-button{width:29px;height:29px;border-radius:8px;border:1px solid #dce3ed;background:#fff;color:#64748b;display:grid;place-items:center;cursor:pointer;transition:.15s;flex:0 0 auto}.copy-button:hover,.copy-button.copied{color:var(--brand-dark);background:var(--brand-soft);border-color:#bfdbfe}.request-key-note{max-width:220px}.manager-name{font-size:11.5px!important}.status-switch{display:inline-flex;align-items:center;gap:7px;padding:6px 9px;border-radius:999px;font-size:10px;font-weight:800;white-space:nowrap}.status-switch i{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 0 3px color-mix(in srgb,currentColor 13%,transparent)}.status-switch.on{color:#047857;background:#ecfdf5}.status-switch.off{color:#b91c1c;background:#fef2f2}
.row-actions{display:flex;justify-content:center;align-items:center;gap:6px;min-width:130px}.row-actions form{margin:0}.action-button{width:34px;height:34px;border-radius:10px;border:1px solid #dce3ed;background:#fff;color:#64748b;display:grid;place-items:center;text-decoration:none;cursor:pointer;transition:.15s}.action-button:hover{transform:translateY(-1px);box-shadow:0 5px 12px rgba(15,23,42,.08)}.action-button.edit:hover{color:var(--brand-dark);background:var(--brand-soft);border-color:#bfdbfe}.action-button.activate:hover{color:#047857;background:#ecfdf5;border-color:#a7e8cd}.action-button.disable:hover{color:#b45309;background:#fffbeb;border-color:#f8d99b}.action-button.delete:hover{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.license-empty{height:260px}.license-empty span,.license-empty strong,.license-empty small{display:block;margin:auto}.license-empty span{width:55px;height:55px;display:grid;place-items:center;border-radius:16px;background:var(--brand-soft);color:var(--brand);margin-bottom:10px}.license-empty strong{font-size:14px}.license-empty small{font-size:11px;margin-top:5px}

@media(max-width:1280px){.license-status-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.license-filter-card:nth-child(4),.license-filter-card:nth-child(5){grid-column:span 1}}
@media(max-width:960px){.content{padding:23px}.topbar{padding:13px 20px}.license-hero{align-items:flex-start;flex-direction:column}.license-tabs{grid-template-columns:1fr}.license-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.license-panel-head{align-items:flex-start;flex-direction:column}.license-search{margin-left:0;width:100%}.search-input-wrap{min-width:0;flex:1}}
@media(max-width:650px){body{font-size:14px}.content{padding:18px 13px 30px}.topbar h1{font-size:20px}.license-hero{padding:20px 18px}.license-hero h2{font-size:22px}.license-hero-actions{width:100%}.license-hero-actions .btn{flex:1}.license-tab{padding:14px}.license-status-grid{grid-template-columns:1fr}.license-section-heading{align-items:flex-start;flex-direction:column}.license-filter-card{padding:14px}.license-filter-copy strong{font-size:21px}.license-search{flex-direction:column;align-items:stretch}.search-input-wrap{width:100%}.license-search .btn{width:100%}.panel-head h2{font-size:15px}.field input,.field select,.field textarea{font-size:16px}.login-card .field input{font-size:16px}}

/* =========================================================
   BotMaster Professional SaaS v7
   Compact no-scroll license rows + hierarchy quick controls
   ========================================================= */
body{font-size:14.5px}
:root{--sidebar-w:280px}
.content{max-width:1680px;padding:29px 32px 42px}
.nav a{font-size:12.8px;padding:11px 12px;gap:12px}
.nav-label{font-size:8.7px}
.topbar h1{font-size:22px}
.topbar p{font-size:10.5px}
.panel-head h2{font-size:16px}
.panel-head p{font-size:11.2px}
.btn{font-size:11.5px}
.field label{font-size:11px}
.field input,.field select,.field textarea{font-size:13px}

/* Shared professional page intro */
.page-intro{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:23px 25px;margin-bottom:20px;border:1px solid #d9e6f7;border-radius:19px;background:linear-gradient(120deg,#fff 0%,#f5f9ff 58%,#eef5ff 100%);box-shadow:var(--shadow-sm)}
.page-intro::after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-120px;top:-195px;background:radial-gradient(circle,rgba(var(--brand-rgb),.15),transparent 68%)}
.page-intro>div,.page-intro>.btn{position:relative;z-index:1}.page-intro h2{font-size:23px;line-height:1.2;letter-spacing:-.032em;margin:7px 0 6px;color:var(--ink-strong)}.page-intro p{font-size:12px;color:var(--muted);margin:0;max-width:760px}.compact-intro{padding-top:21px;padding-bottom:21px}

/* Sidebar license destinations */
.nav a[href*="tab=team"] .ui-icon{color:#7c3aed}.nav a[href*="tab=team"].active{background:#f5f3ff;border-color:#e9e0ff;color:#6d28d9}.nav a[href*="tab=team"].active::after{background:#7c3aed;box-shadow:0 0 0 4px rgba(124,58,237,.09)}

/* Compact license page */
.compact-license-hero{padding-top:21px;padding-bottom:21px}.compact-license-hero .license-hero h2{font-size:24px}
.compact-license-panel{overflow:hidden}.license-record-list{width:100%;padding:0 14px 15px}.license-record-head,.license-record-row{display:grid;grid-template-columns:minmax(205px,1.42fr) minmax(200px,1.35fr) minmax(145px,.95fr) minmax(145px,.92fr) minmax(135px,.9fr) 116px;gap:12px;align-items:center}
.license-record-head{padding:11px 15px;color:#7b8798;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.075em;background:#f8fafc;border:1px solid var(--line);border-radius:11px;margin:14px 0 8px}
.license-record-row{position:relative;padding:13px 15px;margin-bottom:8px;background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:var(--shadow-xs);transition:.16s;min-width:0}
.license-record-row:hover{border-color:#cfdaea;box-shadow:0 7px 18px rgba(15,23,42,.055);transform:translateY(-1px)}
.license-record-row>div{min-width:0}.license-client-block{display:flex;align-items:center;gap:10px;min-width:0}.compact-client-copy{display:block;min-width:0}.compact-client-copy strong,.compact-client-copy a,.compact-client-copy small{display:flex;align-items:center;gap:4px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compact-client-copy strong{font-size:12.5px;color:var(--ink-strong)}.compact-client-copy a{font-size:10.2px;color:#68778b;text-decoration:none;margin-top:2px}.compact-client-copy a:hover{color:var(--brand);text-decoration:underline}.compact-client-copy .inline-whatsapp{color:#07805e;font-weight:750}.compact-client-copy small{font-size:9.8px;color:#94a3b8;margin-top:2px}
.license-key-block{min-width:0}.compact-key-line{max-width:100%}.compact-key-line .license-key-text{max-width:calc(100% - 37px);font-size:10.8px}.license-key-block .cell-note{max-width:100%;font-size:9.5px;margin-top:4px}
.license-plan-block,.license-expiry-block,.license-manager-block{display:flex;flex-wrap:wrap;align-items:center;gap:5px;min-width:0}.license-plan-block small,.license-expiry-block small,.license-manager-block small,.license-manager-block em{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8b98aa;font-size:9.4px;font-style:normal;margin-top:1px}.license-manager-block strong{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#273449;font-size:11.3px}.license-manager-block em{color:#64748b}
.compact-row-actions{min-width:0;justify-content:flex-end;gap:5px}.compact-row-actions .action-button{width:32px;height:32px;border-radius:9px}.license-empty-card{min-height:250px;display:flex;flex-direction:column;align-items:center;justify-content:center}.license-empty-card>span{width:54px;height:54px;display:grid;place-items:center;border-radius:15px;background:var(--brand-soft);color:var(--brand);margin-bottom:10px}.license-empty-card strong{font-size:14px}.license-empty-card small{font-size:11px;color:var(--muted);margin-top:4px}

/* User hierarchy control center */
.users-toolbar{margin-bottom:15px}.users-panel{overflow:hidden}.user-control-list{padding:0 14px 15px}.user-control-head,.user-control-row{display:grid;grid-template-columns:minmax(210px,1.4fr) minmax(145px,.9fr) minmax(105px,.55fr) minmax(125px,.7fr) minmax(390px,2fr);gap:12px;align-items:center}
.user-control-head{padding:11px 14px;margin:14px 0 8px;border:1px solid var(--line);border-radius:11px;background:#f8fafc;color:#7b8798;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.075em}
.user-control-row{padding:13px 14px;margin-bottom:8px;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:var(--shadow-xs);transition:.16s}.user-control-row:hover{border-color:#cfdaea;box-shadow:0 7px 18px rgba(15,23,42,.055);transform:translateY(-1px)}.user-control-row>div{min-width:0}
.user-identity-cell{display:flex;align-items:center;gap:10px}.user-avatar{background:linear-gradient(145deg,#e0f2fe,var(--brand-border));color:var(--brand-dark)}.user-identity-copy{min-width:0}.user-identity-copy strong,.user-identity-copy small,.user-identity-copy em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-identity-copy strong{font-size:12.5px;color:var(--ink-strong)}.user-identity-copy small{font-size:10.2px;color:#64748b;margin-top:2px}.user-identity-copy em{font-size:9.5px;color:#94a3b8;font-style:normal;margin-top:1px}
.user-hierarchy-cell,.user-status-cell{display:flex;align-items:flex-start;flex-wrap:wrap;gap:5px}.user-hierarchy-cell small,.user-hierarchy-cell em,.user-status-cell small{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9.5px;color:#7b8798;font-style:normal}.user-license-cell strong{display:block;font-size:20px;line-height:1;color:var(--ink-strong);letter-spacing:-.03em}.user-license-cell span,.user-license-cell small{display:block;font-size:9.5px;color:#7b8798;margin-top:3px}
.user-quick-actions{display:flex;justify-content:flex-end;align-items:center;gap:5px;flex-wrap:wrap}.user-quick-actions form{margin:0}.quick-action{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:31px;padding:0 8px;border:1px solid #dce3ed;border-radius:9px;background:#fff;color:#5f6f84;text-decoration:none;font-size:9.5px;font-weight:780;cursor:pointer;white-space:nowrap;transition:.15s}.quick-action:hover{transform:translateY(-1px);box-shadow:0 5px 12px rgba(15,23,42,.07)}.quick-action.neutral:hover{color:var(--brand-dark);background:var(--brand-soft);border-color:#bfdbfe}.quick-action.success{color:#047857;background:#f4fbf8;border-color:#ccecdf}.quick-action.success:hover{background:#e8f9f1;border-color:#a7e8cd}.quick-action.warning{color:#a35b07;background:#fffaf0;border-color:#f5dfad}.quick-action.warning:hover{background:#fff5dc;border-color:#f0ce7e}.quick-action.danger{color:#b42332;background:#fff7f7;border-color:#f4d3d6}.quick-action.danger:hover{background:#fef2f2;border-color:#fecaca}.user-empty{padding:70px 20px;text-align:center}

@media(max-width:1450px){
  .license-record-head,.license-record-row{grid-template-columns:minmax(185px,1.3fr) minmax(170px,1.2fr) minmax(125px,.82fr) minmax(125px,.82fr) minmax(120px,.78fr) 108px;gap:9px;padding-left:11px;padding-right:11px}
  .user-control-head,.user-control-row{grid-template-columns:minmax(190px,1.25fr) minmax(125px,.75fr) 90px 115px minmax(350px,1.8fr);gap:9px;padding-left:11px;padding-right:11px}
  .quick-action{padding:0 6px;font-size:9px}.quick-action .ui-icon{width:14px;height:14px}
}
@media(max-width:1180px){
  .license-record-head{display:none}.license-record-row{grid-template-columns:1.3fr 1.2fr .9fr .9fr;grid-template-areas:"client key plan actions" "client manager expiry actions";gap:10px 14px}.license-client-block{grid-area:client}.license-key-block{grid-area:key}.license-plan-block{grid-area:plan}.license-expiry-block{grid-area:expiry}.license-manager-block{grid-area:manager}.compact-row-actions{grid-area:actions;align-self:stretch;justify-content:center;flex-direction:column}
  .user-control-head{display:none}.user-control-row{grid-template-columns:1.25fr .9fr .55fr .7fr;grid-template-areas:"identity hierarchy licenses status" "actions actions actions actions"}.user-identity-cell{grid-area:identity}.user-hierarchy-cell{grid-area:hierarchy}.user-license-cell{grid-area:licenses}.user-status-cell{grid-area:status}.user-quick-actions{grid-area:actions;justify-content:flex-start;padding-top:9px;border-top:1px dashed #e2e8f0}
}
@media(max-width:760px){
  body{font-size:14px}.content{padding:19px 13px 31px}.page-intro,.license-hero{align-items:flex-start;flex-direction:column;padding:19px 17px}.page-intro>.btn{width:100%}
  .license-record-list,.user-control-list{padding-left:9px;padding-right:9px}.license-record-row{display:grid;grid-template-columns:1fr auto;grid-template-areas:"client actions" "key key" "plan plan" "expiry expiry" "manager manager";gap:10px}.compact-row-actions{flex-direction:row;align-self:start}.license-plan-block,.license-expiry-block,.license-manager-block{padding-top:8px;border-top:1px dashed #e2e8f0}
  .user-control-row{display:grid;grid-template-columns:1fr 1fr;grid-template-areas:"identity identity" "hierarchy licenses" "status status" "actions actions";gap:11px}.user-status-cell{padding-top:8px;border-top:1px dashed #e2e8f0}.user-quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.user-quick-actions form,.user-quick-actions .quick-action{width:100%}.quick-action{min-height:36px}
}

/* v7.1 customer-login license form */
.license-form-panel{max-width:1180px;margin:0 auto;overflow:hidden}.license-form-panel .panel-body{padding:25px 27px 29px}.customer-login-field{margin:3px 0 2px}.customer-login-card{display:flex;align-items:flex-start;gap:14px;padding:17px 18px;border:1px solid #cfe0fb;border-radius:15px;background:linear-gradient(120deg,#f8fbff,#f1f6ff);box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}.customer-login-icon{flex:0 0 42px;width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#fff;color:var(--brand);border:1px solid #d9e7fb;box-shadow:0 5px 14px rgba(var(--brand-rgb),.09)}.customer-login-copy{flex:1;min-width:0}.customer-login-copy label{display:flex;align-items:center;gap:8px;margin:0;color:#172033;font-size:12.5px;font-weight:800}.customer-login-copy label em{padding:3px 7px;border-radius:999px;background:#e0eaff;color:#315fc3;font-size:8.5px;font-style:normal;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.customer-login-copy p{margin:5px 0 11px;color:#64748b;font-size:10.8px;line-height:1.55}.password-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.password-input-row input{min-width:0}.password-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:82px;padding:0 12px;border:1px solid #d7e1ef;border-radius:10px;background:#fff;color:#52647b;font-size:10.5px;font-weight:750;cursor:pointer;transition:.15s}.password-toggle:hover{border-color:#b9cbed;color:var(--brand-dark);background:#f8fbff}.license-default-state{align-self:end}.default-active-pill{min-height:44px;display:flex;align-items:center;gap:10px;padding:9px 12px;border:1px solid #bfe7d6;border-radius:11px;background:#f1fbf7;color:#047857}.default-active-pill>span{display:flex;flex-direction:column}.default-active-pill strong{font-size:11px}.default-active-pill small{font-size:9.2px;color:#4e7f6d;margin-top:1px}
@media(max-width:760px){.license-form-panel .panel-body{padding:19px 15px 23px}.customer-login-card{padding:14px;gap:10px}.customer-login-icon{width:36px;height:36px;flex-basis:36px}.password-input-row{grid-template-columns:1fr}.password-toggle{min-height:40px}.customer-login-copy label{align-items:flex-start;flex-wrap:wrap}}

/* v8 super-admin preview, per-user license filter, and license-holder portal */
.system-pill.preview{background:#fff7ed;border-color:#fed7aa;color:#9a4b0b}.system-pill.preview::before{background:#f59e0b;box-shadow:0 0 0 4px rgba(245,158,11,.11)}
.impersonation-bar{margin-left:0;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 30px;background:linear-gradient(90deg,#fff8eb,#fffdf7);border-bottom:1px solid #f3d9a7;color:#7c470a;position:sticky;top:78px;z-index:29;box-shadow:0 4px 13px rgba(146,84,8,.045)}
.impersonation-copy{display:flex;align-items:center;gap:10px;min-width:0}.impersonation-icon{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:10px;background:#fff;border:1px solid #f2d39c;color:#c46b08}.impersonation-copy>span:last-child{min-width:0}.impersonation-copy strong,.impersonation-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.impersonation-copy strong{font-size:11px;color:#6f3c06}.impersonation-copy small{font-size:9.5px;color:#9a6b34;margin-top:2px}.impersonation-bar form{margin:0}.impersonation-return{background:#fff;border-color:#ebc886;color:#8a4c08;box-shadow:0 2px 7px rgba(120,68,7,.07)}.impersonation-return:hover{background:#fffaf0;border-color:#dda94e;color:#713b04}
.quick-action.login-as{color:#5b21b6;background:#faf7ff;border-color:#ded2f6}.quick-action.login-as:hover{color:#4c1d95;background:#f4efff;border-color:#c8b5ef}

.user-license-selector{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;margin:0 0 15px;border:1px solid #d8e4f5;border-radius:14px;background:linear-gradient(110deg,#f8fbff,#f5f8ff);box-shadow:var(--shadow-xs)}.user-license-selector-copy{display:flex;align-items:center;gap:11px;min-width:0}.selector-icon{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto;border-radius:11px;background:#fff;color:var(--brand);border:1px solid #dce8f8}.user-license-selector-copy strong,.user-license-selector-copy small{display:block}.user-license-selector-copy strong{font-size:11.5px;color:var(--ink-strong)}.user-license-selector-copy small{font-size:9.5px;color:var(--muted);margin-top:2px}.user-license-selector form{display:flex;align-items:center;gap:8px;margin:0}.user-license-selector select{min-width:310px;max-width:470px;border:1px solid #cfdbea;border-radius:10px;padding:9px 34px 9px 11px;background:#fff;color:#334155;font-size:10px;outline:none}.user-license-selector select:focus{border-color:#8fb1ec;box-shadow:0 0 0 3px rgba(var(--brand-rgb),.08)}

.holder-welcome{display:flex;align-items:center;gap:15px;padding:20px 22px;margin-bottom:18px;border:1px solid #d8e5f7;border-radius:17px;background:linear-gradient(118deg,#eef6ff,#f8fbff 58%,#f5f2ff);box-shadow:var(--shadow-sm)}.holder-welcome-icon{width:52px;height:52px;display:grid;place-items:center;flex:0 0 auto;border-radius:15px;background:#fff;color:var(--brand);border:1px solid #d7e4f7;box-shadow:0 8px 20px rgba(var(--brand-rgb),.09)}.holder-welcome-copy{min-width:0;flex:1}.holder-welcome-copy h2{font-size:19px;margin:3px 0 0;color:var(--ink-strong);letter-spacing:-.025em}.holder-welcome-copy p{font-size:10.5px;color:var(--muted);margin:5px 0 0}.holder-license-stack{display:grid;gap:17px}.holder-license-card{overflow:hidden;border:1px solid #dfe6f0;border-radius:17px;background:#fff;box-shadow:var(--shadow-sm)}.holder-license-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:19px 21px;border-bottom:1px solid #e8edf4;background:linear-gradient(180deg,#fff,#fbfdff)}.holder-license-top h3{font-size:17px;margin:5px 0 0;color:var(--ink-strong);letter-spacing:-.02em}.holder-license-top p{font-size:10.5px;color:var(--muted);margin:3px 0 0}.holder-badges{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.holder-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-bottom:1px solid #e8edf4}.holder-detail{min-height:78px;padding:15px 18px;border-right:1px solid #edf1f6;border-bottom:1px solid #edf1f6}.holder-detail:nth-child(3n){border-right:0}.holder-detail:nth-last-child(-n+3){border-bottom:0}.holder-detail>span{display:block;font-size:8.5px;text-transform:uppercase;letter-spacing:.08em;color:#8a96a8;font-weight:850;margin-bottom:7px}.holder-detail strong,.holder-detail>a{display:flex;align-items:center;gap:5px;color:#253248;font-size:11px;font-weight:760;text-decoration:none;overflow-wrap:anywhere}.holder-detail>a:hover{color:var(--brand)}.holder-detail .holder-whatsapp{color:#087a5c}.holder-detail strong small{font-size:8.5px;color:#8794a7;font-weight:550}.holder-key-section{padding:18px 20px;border-bottom:1px solid #e8edf4;background:#fbfcfe}.holder-key-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.holder-key-heading strong,.holder-key-heading small{display:block}.holder-key-heading strong{font-size:11.5px;color:var(--ink-strong)}.holder-key-heading small{font-size:9.4px;color:var(--muted);margin-top:2px}.holder-license-key{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:stretch}.holder-license-key code{display:flex;align-items:center;min-height:46px;padding:10px 13px;border:1px solid #d9e2ef;border-radius:11px;background:#fff;color:#20304a;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;font-size:10.5px;line-height:1.45;overflow-wrap:anywhere;box-shadow:inset 0 1px 2px rgba(15,23,42,.025)}.holder-copy-button{width:auto;height:auto;min-width:88px;padding:0 13px;display:flex;align-items:center;justify-content:center;gap:7px;border-radius:11px}.holder-copy-button span{font-size:10px;font-weight:800}.holder-request-form{display:grid;grid-template-columns:minmax(220px,.75fr) minmax(380px,1.45fr);gap:18px;align-items:center;padding:18px 20px;background:#fff}.holder-request-copy{display:flex;align-items:center;gap:10px}.holder-request-icon{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto;border-radius:11px;background:#f0f6ff;color:var(--brand);border:1px solid #dce8f8}.holder-request-copy strong,.holder-request-copy small{display:block}.holder-request-copy strong{font-size:11.5px;color:var(--ink-strong)}.holder-request-copy small{font-size:9.3px;color:var(--muted);margin-top:2px;line-height:1.45}.holder-request-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.holder-request-controls input{min-width:0;border:1px solid #cfdbea;border-radius:10px;padding:10px 12px;background:#fff;color:#26364f;font-size:10.5px;outline:none}.holder-request-controls input:focus{border-color:#8fb1ec;box-shadow:0 0 0 3px rgba(var(--brand-rgb),.08)}.holder-support-note{display:flex;align-items:center;gap:6px;padding:10px 20px;border-top:1px solid #edf1f6;background:#fafbfd;color:#718096;font-size:9.5px}.holder-empty-panel{overflow:hidden}

@media(max-width:980px){.impersonation-bar{top:78px;padding-left:18px;padding-right:18px}.user-license-selector{align-items:flex-start;flex-direction:column}.user-license-selector form{width:100%}.user-license-selector select{min-width:0;max-width:none;flex:1}.holder-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.holder-detail:nth-child(3n){border-right:1px solid #edf1f6}.holder-detail:nth-child(2n){border-right:0}.holder-detail:nth-last-child(-n+3){border-bottom:1px solid #edf1f6}.holder-detail:nth-last-child(-n+2){border-bottom:0}.holder-request-form{grid-template-columns:1fr}.holder-request-controls{grid-template-columns:minmax(0,1fr) auto}}
@media(max-width:760px){.impersonation-bar{position:relative;top:auto;align-items:flex-start;flex-direction:column;padding:11px 13px}.impersonation-bar form,.impersonation-return{width:100%}.user-license-selector form{align-items:stretch;flex-direction:column}.holder-welcome{align-items:flex-start;flex-wrap:wrap;padding:17px}.holder-welcome .record-pill{margin-left:67px}.holder-license-top{align-items:flex-start;flex-direction:column;padding:17px}.holder-badges{justify-content:flex-start}.holder-detail-grid{grid-template-columns:1fr}.holder-detail,.holder-detail:nth-child(2n),.holder-detail:nth-child(3n),.holder-detail:nth-last-child(-n+2),.holder-detail:nth-last-child(-n+3){border-right:0;border-bottom:1px solid #edf1f6}.holder-detail:last-child{border-bottom:0}.holder-license-key{grid-template-columns:1fr}.holder-copy-button{min-height:42px}.holder-request-controls{grid-template-columns:1fr}.holder-request-controls .btn{width:100%}}

/* v9 reseller license-only dashboard */
.two-col.reseller-single{grid-template-columns:minmax(0,1fr)}

/* v10 clean navigation header + minimal professional login */
.sidebar .brand{margin-bottom:10px}
.topbar{min-height:64px;padding:10px 26px;background:rgba(255,255,255,.94)}
.topbar-spacer{flex:1;min-width:0}
.top-actions{margin-left:0}
.content{padding-top:24px}

.login-page-minimal{min-height:100vh;background:#f6f8fc;overflow:auto}
.login-page-minimal::before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 15% 10%,rgba(var(--brand-rgb),.10),transparent 30%),radial-gradient(circle at 88% 92%,rgba(79,70,229,.07),transparent 28%),linear-gradient(180deg,#f9fbff 0%,#f4f7fc 100%)}
.login-page-minimal::after{content:"";position:fixed;inset:0;pointer-events:none;opacity:.42;background-image:linear-gradient(rgba(148,163,184,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.08) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.5),transparent 82%)}
.login-shell-minimal{position:relative;z-index:1;min-height:100vh;display:grid;grid-template-columns:1fr;place-items:center;padding:28px}
.login-panel-minimal{display:block;min-height:0;width:100%;max-width:440px;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}
.login-card-minimal{width:100%;padding:31px 31px 25px;border:1px solid #dde5f0;border-radius:22px;background:rgba(255,255,255,.97);box-shadow:0 24px 70px rgba(15,23,42,.11),0 3px 10px rgba(15,23,42,.04);backdrop-filter:blur(16px)}
.login-brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none;margin-bottom:29px}
.login-brand-mark{width:43px;height:43px;display:grid;place-items:center;border-radius:13px;color:#fff;background:linear-gradient(145deg,var(--brand-light),var(--brand-dark));box-shadow:0 10px 24px rgba(var(--brand-rgb),.22),inset 0 1px 0 rgba(255,255,255,.25)}
.login-brand-copy strong,.login-brand-copy small{display:block}.login-brand-copy strong{font-size:17px;line-height:1.1;color:var(--ink-strong);letter-spacing:-.025em}.login-brand-copy small{font-size:10px;color:var(--muted);margin-top:4px}
.login-card-heading{margin-bottom:22px}.login-kicker{display:inline-flex;align-items:center;padding:4px 8px;border:1px solid var(--brand-border);border-radius:999px;background:#f4f8ff;color:var(--brand);font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.09em}.login-card-minimal .login-card-heading h1{margin:10px 0 0;text-align:left;font-size:28px;line-height:1.15;color:var(--ink-strong);letter-spacing:-.04em}.login-card-minimal .login-card-heading p{margin:6px 0 0;text-align:left;color:var(--muted);font-size:11.5px;line-height:1.55}
.login-form{margin-top:2px}.login-field{margin-bottom:15px!important}.login-card-minimal .login-field label{display:block;margin-bottom:7px;color:#334155;font-size:10.5px;font-weight:760}.login-card-minimal .login-field input{width:100%;min-height:48px;padding:12px 14px;border:1px solid #cfd9e7;border-radius:11px;background:#fff;color:#172033;font-size:13px;box-shadow:inset 0 1px 2px rgba(15,23,42,.025);transition:border-color .16s,box-shadow .16s,background .16s}.login-card-minimal .login-field input::placeholder{color:#a0acbd}.login-card-minimal .login-field input:hover{border-color:#bbc9dc}.login-card-minimal .login-field input:focus{border-color:#7da5eb;box-shadow:0 0 0 4px rgba(var(--brand-rgb),.10);background:#fff;outline:0}
.login-password-wrap{position:relative}.login-password-wrap input{padding-right:51px!important}.login-password-toggle{position:absolute;top:50%;right:7px;transform:translateY(-50%);width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:9px;background:transparent;color:#718096;cursor:pointer;transition:background .15s,color .15s}.login-password-toggle:hover{background:#eff5ff;color:var(--brand)}.login-password-toggle:focus-visible{outline:3px solid rgba(var(--brand-rgb),.16);outline-offset:1px}.password-icon{display:grid;place-items:center}.password-icon-hide{display:none}.login-password-toggle.is-visible .password-icon-show{display:none}.login-password-toggle.is-visible .password-icon-hide{display:grid}
.login-submit{width:100%;min-height:48px;display:flex;align-items:center;justify-content:center;gap:9px;margin-top:5px;padding:12px 16px!important;border-radius:11px!important;font-size:12px!important;font-weight:800!important;box-shadow:0 10px 22px rgba(var(--brand-rgb),.18)}.login-submit:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(var(--brand-rgb),.22)}
.login-security-note{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:18px;color:#8491a3;font-size:9.5px}.login-security-note .ui-icon{color:#10a37f}
.login-card-minimal .alert{font-size:10.5px;margin-bottom:16px}

@media(max-width:960px){.topbar{min-height:62px;padding:9px 18px}.login-shell-minimal{padding:20px}.login-panel-minimal{min-height:0;padding:0}}
@media(max-width:650px){.topbar{min-height:58px;padding:8px 12px}.system-pill{display:none}.top-profile{margin-left:auto}.login-shell-minimal{padding:14px}.login-card-minimal{padding:25px 20px 21px;border-radius:18px}.login-brand{margin-bottom:24px}.login-card-minimal .login-card-heading h1{font-size:25px}.login-card-minimal .login-field input{font-size:16px}.login-security-note{font-size:9px}}

/* v11 professional customer license portal */
.customer-portal-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(420px,.95fr);gap:18px;align-items:stretch;margin-bottom:20px}
.customer-profile-block{display:flex;align-items:center;gap:16px;min-width:0;padding:22px 24px;border:1px solid #dce5f1;border-radius:18px;background:linear-gradient(135deg,#ffffff 0%,#f8fbff 62%,#f4f7ff 100%);box-shadow:0 10px 28px rgba(15,23,42,.055)}
.customer-avatar{width:58px;height:58px;display:grid;place-items:center;flex:0 0 auto;border-radius:17px;background:linear-gradient(145deg,var(--brand-light),#2458d6);color:#fff;font-size:21px;font-weight:850;box-shadow:0 12px 26px rgba(var(--brand-rgb),.22),inset 0 1px 0 rgba(255,255,255,.25)}
.customer-profile-copy{min-width:0}.customer-kicker{display:inline-flex;align-items:center;gap:6px;color:var(--brand);font-size:10px;font-weight:820;text-transform:uppercase;letter-spacing:.075em}.customer-profile-copy h1{margin:7px 0 4px;color:#111827;font-size:24px;line-height:1.15;letter-spacing:-.035em}.customer-contact-line{display:flex;align-items:center;gap:10px;min-width:0;flex-wrap:wrap;color:#64748b;font-size:12px}.customer-contact-line a,.customer-contact-line span{display:inline-flex;align-items:center;gap:5px;color:#64748b;text-decoration:none;overflow-wrap:anywhere}.customer-contact-line a:hover{color:var(--brand)}.customer-contact-line .customer-whatsapp-link{color:#0b8061}.customer-contact-separator{width:4px;height:4px;border-radius:50%;background:#cbd5e1}
.customer-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:11px;border:1px solid #dce5f1;border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(15,23,42,.055)}
.customer-summary-card{display:flex;align-items:center;gap:10px;min-width:0;padding:13px 12px;border:1px solid #e7edf5;border-radius:13px;background:#fbfcfe}.customer-summary-icon{width:36px;height:36px;display:grid;place-items:center;flex:0 0 auto;border-radius:10px}.customer-summary-icon.blue{background:#edf5ff;color:var(--brand)}.customer-summary-icon.green{background:#ebfbf5;color:#0b8a64}.customer-summary-icon.amber{background:#fff7e8;color:#b56a06}.customer-summary-card span:last-child{min-width:0}.customer-summary-card small,.customer-summary-card strong{display:block}.customer-summary-card small{margin-bottom:4px;color:#8290a3;font-size:9px;font-weight:780;text-transform:uppercase;letter-spacing:.065em}.customer-summary-card strong{color:#172033;font-size:18px;line-height:1.15}.customer-summary-card strong.date-value{font-size:11px;line-height:1.3;white-space:normal}
.customer-license-list{display:grid;gap:18px}.customer-license-card{overflow:hidden;border:1px solid #dce4ef;border-radius:19px;background:#fff;box-shadow:0 12px 34px rgba(15,23,42,.06)}
.customer-license-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:19px 22px;border-bottom:1px solid #e8edf4;background:linear-gradient(180deg,#fff,#fbfdff)}.customer-license-title{min-width:0}.customer-license-number{display:inline-flex;align-items:center;padding:4px 8px;border:1px solid #dbe7fa;border-radius:999px;background:#f3f7ff;color:var(--brand);font-size:9px;font-weight:840;text-transform:uppercase;letter-spacing:.07em}.customer-license-title h2{margin:8px 0 2px;color:#131c2e;font-size:18px;line-height:1.2;letter-spacing:-.025em}.customer-license-title p{margin:0;color:#748197;font-size:11px;overflow-wrap:anywhere}.customer-license-badges{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.customer-license-body{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(330px,.85fr)}.customer-license-main{min-width:0;padding:22px;border-right:1px solid #e8edf4}.customer-activation-panel{min-width:0;padding:22px;background:#fafcff}.customer-section-heading{display:flex;align-items:center;gap:11px;margin-bottom:15px}.customer-section-icon{width:40px;height:40px;display:grid;place-items:center;flex:0 0 auto;border:1px solid #d9e7fb;border-radius:12px;background:var(--brand-soft);color:var(--brand)}.customer-section-icon.purple{border-color:#e6defd;background:#f6f2ff;color:#6d4bd2}.customer-section-heading strong,.customer-section-heading small{display:block}.customer-section-heading strong{color:#172033;font-size:13px;line-height:1.3}.customer-section-heading small{margin-top:3px;color:#7b8798;font-size:10px;line-height:1.45}
.customer-key-box{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;margin-bottom:18px;padding:8px;border:1px solid #d7e2ef;border-radius:13px;background:#f8fafc}.customer-key-box code{display:flex;align-items:center;min-width:0;min-height:44px;padding:9px 11px;color:#1f2f49;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;font-size:12px;font-weight:700;line-height:1.5;overflow-wrap:anywhere}.customer-copy-btn{min-width:104px;display:flex;align-items:center;justify-content:center;gap:7px;padding:10px 13px;border:1px solid #c7d8f3;border-radius:10px;background:#fff;color:var(--brand);font-size:10.5px;font-weight:820;cursor:pointer;transition:all .16s}.customer-copy-btn:hover{border-color:#9dbcec;background:#f5f9ff;transform:translateY(-1px)}.customer-copy-btn.copied{border-color:#a7e1cb;background:#effbf6;color:#087a5c}
.customer-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.customer-detail-item{min-width:0;padding:13px;border:1px solid #e5eaf1;border-radius:12px;background:#fff}.customer-detail-item>span{display:block;margin-bottom:6px;color:#8b97a8;font-size:8.5px;font-weight:840;text-transform:uppercase;letter-spacing:.07em}.customer-detail-item strong,.customer-detail-item>a{display:flex;align-items:center;gap:5px;color:#28364b;font-size:10.5px;font-weight:750;line-height:1.4;text-decoration:none;overflow-wrap:anywhere}.customer-detail-item>a:hover{color:var(--brand)}.customer-detail-item .customer-detail-whatsapp{color:#0b8061}.customer-detail-item>small{display:block;margin-top:4px;color:#8b97a8;font-size:8.5px;line-height:1.35}.muted-value{color:#8b97a8!important;font-weight:650!important}
.customer-request-form label{display:block;margin-bottom:7px;color:#455369;font-size:10.5px;font-weight:780}.customer-request-form textarea{width:100%;min-height:112px;resize:vertical;padding:12px 13px;border:1px solid #cfdbea;border-radius:11px;background:#fff;color:#26364f;font-size:11px;line-height:1.55;outline:none;box-shadow:inset 0 1px 2px rgba(15,23,42,.025)}.customer-request-form textarea::placeholder{color:#9ca8b8}.customer-request-form textarea:focus{border-color:#80a8ec;box-shadow:0 0 0 4px rgba(var(--brand-rgb),.09)}.customer-save-btn{width:100%;min-height:43px;justify-content:center;margin-top:9px;border-radius:10px!important;font-size:10.5px!important}
.customer-activation-status{display:flex;align-items:flex-start;gap:9px;margin-top:15px;padding:12px;border:1px solid #e1e7ef;border-radius:11px;background:#fff}.customer-activation-dot{width:9px;height:9px;margin-top:4px;flex:0 0 auto;border-radius:50%;box-shadow:0 0 0 4px rgba(148,163,184,.12)}.customer-activation-dot.active{background:#10a37f;box-shadow:0 0 0 4px rgba(16,163,127,.12)}.customer-activation-dot.inactive{background:#ef4444;box-shadow:0 0 0 4px rgba(239,68,68,.10)}.customer-activation-status strong,.customer-activation-status small{display:block}.customer-activation-status strong{color:#253248;font-size:10.5px}.customer-activation-status small{margin-top:3px;color:#8491a3;font-size:9px;line-height:1.45}
.customer-license-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 22px;border-top:1px solid #e8edf4;background:#fafbfd;color:#778397;font-size:9.5px}.customer-license-footer span{display:flex;align-items:center;gap:5px}.customer-license-footer a{color:#4f6f9f;text-decoration:none}.customer-license-footer a:hover{color:var(--brand)}
.customer-empty-state{display:grid;place-items:center;padding:48px 24px;border:1px dashed #cbd7e7;border-radius:18px;background:#fff;text-align:center;box-shadow:0 8px 24px rgba(15,23,42,.035)}.customer-empty-icon{width:58px;height:58px;display:grid;place-items:center;margin-bottom:13px;border-radius:17px;background:#eef5ff;color:var(--brand)}.customer-empty-state h2{margin:0;color:#172033;font-size:18px}.customer-empty-state p{max-width:420px;margin:7px 0 0;color:#7d899b;font-size:11px;line-height:1.55}

@media(max-width:1180px){.customer-portal-hero{grid-template-columns:1fr}.customer-summary-grid{padding:10px}.customer-license-body{grid-template-columns:1fr}.customer-license-main{border-right:0;border-bottom:1px solid #e8edf4}.customer-activation-panel{background:#fbfcff}}
@media(max-width:820px){.customer-summary-grid{grid-template-columns:1fr 1fr}.customer-summary-card:last-child{grid-column:1/-1}.customer-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.customer-profile-block{align-items:flex-start;padding:18px}.customer-avatar{width:50px;height:50px;border-radius:14px}.customer-profile-copy h1{font-size:20px}.customer-contact-line{align-items:flex-start;flex-direction:column;gap:5px}.customer-contact-separator{display:none}.customer-summary-grid{grid-template-columns:1fr}.customer-summary-card:last-child{grid-column:auto}.customer-license-header{align-items:flex-start;flex-direction:column;padding:17px}.customer-license-badges{justify-content:flex-start}.customer-license-main,.customer-activation-panel{padding:17px}.customer-key-box{grid-template-columns:1fr}.customer-copy-btn{min-height:40px}.customer-detail-grid{grid-template-columns:1fr}.customer-license-footer{align-items:flex-start;flex-direction:column;padding:11px 17px}}

/* v12 SaaS polish, mobile refinement, automatic ownership and software center */
:root{
  --sidebar-w:264px;
  --purple:#7c3aed;
  --pink:#db2777;
  --orange:#ea580c;
}

/* Utility-inspired SaaS shell */
.sidebar{padding:17px 13px 14px;background:rgba(255,255,255,.985);box-shadow:8px 0 32px rgba(15,23,42,.035)}
.sidebar .brand{padding:3px 8px 16px;margin-bottom:0}
.user-mini{margin:14px 2px 1px;background:linear-gradient(145deg,#f8fbff,#ffffff);box-shadow:0 8px 22px rgba(15,23,42,.045)}
.nav a{min-height:42px;font-size:12px}
.topbar{min-height:72px;padding:10px 28px}
.page-heading h1{font-size:19px}.breadcrumb{margin-bottom:3px}
.content{padding:24px 28px 38px}
.panel{border-color:#dfe5ee;box-shadow:0 10px 30px rgba(15,23,42,.045)}
.panel-head{background:linear-gradient(180deg,#fff,#fcfdff)}

/* More colourful, still lightweight KPI cards */
.stat{border-width:1px;background:linear-gradient(145deg,#fff,var(--stat-surface,#f8fbff));box-shadow:0 10px 28px rgba(15,23,42,.055)}
.stat::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--stat-accent,var(--brand))}
.stat-users{--stat-accent:var(--brand);--stat-surface:#f1f7ff}
.stat-total{--stat-accent:#7c3aed;--stat-surface:#f8f4ff}
.stat-active{--stat-accent:#059669;--stat-surface:#effcf7}
.stat-expired{--stat-accent:#ea580c;--stat-surface:#fff7f0}
.stat-icon{box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}

/* Automatic license owner notice */
.automatic-owner-note{display:flex;align-items:center;gap:11px;margin:0 0 18px;padding:13px 14px;border:1px solid #cfe0fb;border-radius:13px;background:linear-gradient(120deg,#f8fbff,#eef5ff);color:#334155}
.automatic-owner-icon{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto;border:1px solid #d8e6fb;border-radius:11px;background:#fff;color:var(--brand);box-shadow:0 5px 14px rgba(var(--brand-rgb),.08)}
.automatic-owner-note strong,.automatic-owner-note small{display:block}.automatic-owner-note strong{font-size:12px;color:#172033}.automatic-owner-note small{margin-top:3px;font-size:10px;color:#64748b}

/* Professional login */
.login-page-minimal{background:#eef3f9}
.login-page-minimal::before{background:radial-gradient(circle at 8% 12%,rgba(59,130,246,.16),transparent 30%),radial-gradient(circle at 92% 88%,rgba(124,58,237,.10),transparent 30%),linear-gradient(145deg,#eef4fb 0%,#f8faff 52%,#eef2ff 100%)}
.login-shell-minimal{grid-template-columns:minmax(0,1.03fr) minmax(390px,.78fr);place-items:stretch;gap:18px;max-width:1180px;margin:0 auto;padding:24px}
.login-showcase{position:relative;overflow:hidden;display:flex;min-height:calc(100vh - 48px);flex-direction:column;justify-content:space-between;padding:38px;border-radius:26px;background:linear-gradient(145deg,#10223f 0%,#173867 52%,#214d8f 100%);color:#fff;box-shadow:0 28px 80px rgba(15,35,70,.22)}
.login-showcase::before,.login-showcase::after{content:"";position:absolute;border-radius:50%;pointer-events:none}.login-showcase::before{width:420px;height:420px;right:-190px;top:-170px;background:radial-gradient(circle,rgba(96,165,250,.36),transparent 68%)}.login-showcase::after{width:330px;height:330px;left:-180px;bottom:-180px;background:radial-gradient(circle,rgba(167,139,250,.22),transparent 68%)}
.login-brand-on-dark,.login-showcase-copy,.login-feature-grid{position:relative;z-index:1}.login-brand-on-dark .login-brand-copy strong{color:#fff}.login-brand-on-dark .login-brand-copy small{color:#bfd1ea}.login-brand-mobile{display:none}
.login-showcase-copy{max-width:620px;margin:auto 0}.login-showcase-kicker{display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.08);color:#d9e9ff;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.09em}.login-showcase-copy h2{max-width:670px;margin:16px 0 10px;font-size:38px;line-height:1.12;letter-spacing:-.045em}.login-showcase-copy p{max-width:600px;margin:0;color:#c8d8ed;font-size:14px;line-height:1.7}
.login-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.login-feature-grid>div{padding:14px;border:1px solid rgba(255,255,255,.13);border-radius:14px;background:rgba(255,255,255,.07);backdrop-filter:blur(8px)}.login-feature-grid>div>span{width:34px;height:34px;display:grid;place-items:center;margin-bottom:11px;border-radius:10px;background:rgba(255,255,255,.12);color:var(--brand-border)}.login-feature-grid strong,.login-feature-grid small{display:block}.login-feature-grid strong{font-size:11px}.login-feature-grid small{margin-top:3px;color:#b9cce5;font-size:9.5px}
.login-panel-minimal{display:grid;place-items:center;max-width:none}.login-card-minimal{max-width:450px;padding:32px;border-radius:24px;box-shadow:0 26px 70px rgba(15,23,42,.13),0 2px 8px rgba(15,23,42,.04)}
.login-card-minimal .login-card-heading h1{font-size:29px}.login-input-wrap{position:relative}.login-input-wrap>span:first-child{position:absolute;left:14px;top:50%;z-index:2;transform:translateY(-50%);color:#94a3b8;pointer-events:none}.login-card-minimal .login-input-wrap>input{padding-left:43px}.login-password-wrap>input{padding-right:51px!important}.login-password-toggle{right:6px}.login-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;padding-top:16px;border-top:1px solid #e8edf4}.login-security-note{justify-content:flex-start;margin:0}.login-whatsapp{display:inline-flex;align-items:center;gap:6px;text-decoration:none;color:#07875f;font-size:10px;font-weight:800;white-space:nowrap}.login-whatsapp:hover{color:#056b4c}.login-whatsapp.is-disabled{color:#94a3b8;cursor:default}

/* Software center */
.software-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:20px;padding:23px 25px;border:1px solid #d9e5f5;border-radius:19px;background:linear-gradient(120deg,#fff 0%,#f5f9ff 58%,#eef4ff 100%);box-shadow:0 10px 28px rgba(15,23,42,.05)}
.software-hero::after{content:"";position:absolute;width:220px;height:220px;right:-90px;top:-145px;border-radius:50%;background:radial-gradient(circle,rgba(var(--brand-rgb),.16),transparent 68%)}.software-hero-copy,.software-status{position:relative;z-index:1}.software-hero h2{margin:7px 0 5px;color:#0f172a;font-size:23px;letter-spacing:-.035em}.software-hero p{margin:0;color:#64748b;font-size:11px}.software-status{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border-radius:999px;font-size:10px;font-weight:800;white-space:nowrap}.software-status.ready{border:1px solid #c8ecdD;background:#effbf6;color:#07805e}.software-status.missing{border:1px solid #f2d5a2;background:#fff8e9;color:#a15f07}
.software-grid{grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr)}.software-grid.single{grid-template-columns:1fr}.software-package-card{display:flex;align-items:center;gap:18px;padding:4px}.software-package-copy{min-width:0;flex:1}.software-package-copy h3{margin:0 0 7px;color:#172033;font-size:17px;letter-spacing:-.02em}.software-meta-row{display:flex;align-items:center;gap:15px;flex-wrap:wrap;margin-bottom:16px;color:#738196;font-size:10px}.software-meta-row span{display:inline-flex;align-items:center;gap:5px}.software-upload-form{display:grid;gap:12px}.software-dropzone{position:relative;display:grid;place-items:center;min-height:205px;padding:24px;border:1.5px dashed #b9c9de;border-radius:16px;background:linear-gradient(180deg,#fbfdff,#f7faff);text-align:center;cursor:pointer;transition:.16s}.software-dropzone:hover,.software-dropzone.has-file{border-color:#7da5eb;background:#f2f7ff}.software-dropzone input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.software-drop-icon{width:50px;height:50px;display:grid;place-items:center;margin-bottom:10px;border-radius:14px;background:#eaf2ff;color:var(--brand)}.software-dropzone strong{font-size:13px;color:#172033}.software-dropzone small{margin-top:4px;color:#8190a4;font-size:10px}.software-file-name{max-width:100%;margin-top:12px;padding:6px 9px;border-radius:8px;background:#fff;color:#526176;font-size:9.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;box-shadow:0 1px 4px rgba(15,23,42,.06)}.software-upload-button{width:100%;min-height:44px}.upload-security-copy{display:flex;align-items:flex-start;gap:6px;margin:0;color:#7d899a;font-size:9px;line-height:1.5}.upload-security-copy .ui-icon{margin-top:1px;color:#059669}

/* Simpler license-user portal */
.customer-portal-simple{grid-template-columns:minmax(0,1.2fr) minmax(380px,.8fr)}.customer-portal-simple .customer-profile-block{background:linear-gradient(135deg,#fff,var(--brand-softer))}.customer-portal-simple .customer-summary-card{background:#fff}.customer-license-card{transition:transform .16s,box-shadow .16s,border-color .16s}.customer-license-card:hover{transform:translateY(-1px);border-color:#cfdbea;box-shadow:0 16px 38px rgba(15,23,42,.075)}

/* Stronger mobile behavior */
@media(max-width:1080px){
  .login-shell-minimal{grid-template-columns:1fr;max-width:620px;place-items:center}.login-showcase{display:none}.login-brand-mobile{display:inline-flex}.software-grid{grid-template-columns:1fr}.customer-portal-simple{grid-template-columns:1fr}
}
@media(max-width:960px){
  .sidebar{width:min(86vw,310px);padding-top:15px}.topbar{min-height:64px;padding:9px 16px}.content{padding:20px 17px 32px}.page-heading h1{font-size:18px}.top-profile strong,.top-profile small{max-width:110px}
  .stats{gap:12px}.stat{padding:17px}.panel-head{padding:17px}.panel-body{padding:17px}
}
@media(max-width:650px){
  .login-shell-minimal{padding:12px}.login-card-minimal{padding:24px 18px 20px;border-radius:19px}.login-card-footer{align-items:flex-start;flex-direction:column}.login-whatsapp{width:100%;justify-content:center;min-height:39px;border:1px solid #d5eee5;border-radius:10px;background:#f4fbf8}.login-whatsapp.is-disabled{border-color:#e4e9f1;background:#f8fafc}.login-card-minimal .login-card-heading h1{font-size:24px}
  .topbar{padding:8px 11px}.page-heading{min-width:0}.page-heading h1{max-width:175px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px}.breadcrumb{display:none}.top-profile{margin-left:0}.topbar-spacer{display:none}.top-actions{margin-left:auto}.content{padding:15px 11px 28px}
  .stats{grid-template-columns:1fr;gap:10px}.stat{min-height:126px}.dashboard-intro{gap:15px;padding:17px}.intro-actions{display:grid;grid-template-columns:1fr;width:100%}.intro-actions .btn{width:100%}
  .panel,.software-hero,.customer-profile-block,.customer-summary-grid,.customer-license-card{border-radius:15px}.panel-head{padding:15px}.panel-head .btn{width:100%}.panel-body{padding:14px}.toolbar,.search{align-items:stretch}.filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.filters a{text-align:center}.table-wrap{margin:0 -14px;padding:0 14px}.table{min-width:720px}
  .software-hero{align-items:flex-start;flex-direction:column;padding:18px}.software-hero h2{font-size:20px}.software-status{align-self:flex-start}.software-package-card{align-items:flex-start;flex-direction:column}.download-icon{width:66px;height:66px;border-radius:15px}.software-package-copy,.software-package-copy .btn{width:100%}.software-meta-row{align-items:flex-start;flex-direction:column;gap:7px}.software-dropzone{min-height:185px;padding:18px}
  .automatic-owner-note{align-items:flex-start}.form-grid{gap:14px}.field input,.field select,.field textarea{font-size:16px}.form-actions{display:grid;grid-template-columns:1fr}.form-actions .btn{width:100%}
  .customer-profile-block{padding:16px}.customer-summary-grid{padding:8px}.customer-license-main,.customer-activation-panel{padding:15px}.customer-license-header{padding:15px}.customer-key-box code{font-size:10px}.customer-license-footer{padding:10px 15px}
}

/* v12.1 clean login + simplified customer dashboard */
.login-page-clean{min-height:100vh;margin:0;background:#f3f6fb;color:#172033;overflow:auto}
.login-page-clean::before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 50% -10%,rgba(var(--brand-rgb),.12),transparent 34%),linear-gradient(180deg,#f8faff 0%,#f1f5fa 100%)}
.login-clean-shell{position:relative;z-index:1;min-height:100vh;display:grid;place-content:center;justify-items:center;padding:28px}
.login-clean-card{width:min(100%,430px);padding:30px;border:1px solid #dce4ef;border-radius:22px;background:rgba(255,255,255,.98);box-shadow:0 24px 70px rgba(15,23,42,.10),0 2px 8px rgba(15,23,42,.04)}
.login-clean-brand{display:inline-flex;align-items:center;gap:11px;margin-bottom:28px;color:inherit;text-decoration:none}
.login-clean-brand>span:last-child strong,.login-clean-brand>span:last-child small{display:block}.login-clean-brand>span:last-child strong{color:#111827;font-size:17px;line-height:1.1;letter-spacing:-.025em}.login-clean-brand>span:last-child small{margin-top:4px;color:#8190a3;font-size:10px}
.login-clean-heading{margin-bottom:22px}.login-clean-heading>span{display:inline-flex;padding:5px 9px;border:1px solid #dbe8fb;border-radius:999px;background:#f4f8ff;color:var(--brand);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.login-clean-heading h1{margin:12px 0 6px;color:#111827;font-size:29px;line-height:1.1;letter-spacing:-.04em}.login-clean-heading p{margin:0;color:#718096;font-size:12px;line-height:1.55}
.login-clean-form .login-field label{display:block;margin-bottom:7px;color:#334155;font-size:10.5px;font-weight:760}.login-clean-form .login-input-wrap>input{width:100%;min-height:49px;padding:12px 48px 12px 43px;border:1px solid #cfdae8;border-radius:11px;background:#fff;color:#172033;font-size:13px;outline:0;transition:.16s}.login-clean-form .login-input-wrap>input:hover{border-color:#b8c7da}.login-clean-form .login-input-wrap>input:focus{border-color:#78a1e9;box-shadow:0 0 0 4px rgba(var(--brand-rgb),.10)}.login-clean-form .login-input-wrap>input::placeholder{color:#9ca9ba}.login-clean-form .login-submit{margin-top:7px}
.login-clean-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:19px;padding-top:17px;border-top:1px solid #e8edf4;color:#8491a3;font-size:9.5px}.login-clean-footer>span,.login-clean-footer>a{display:inline-flex;align-items:center;gap:6px}.login-clean-footer>a{color:#087e5c;font-weight:800;text-decoration:none}.login-clean-footer>a:hover{color:#056849}.login-clean-footer .support-disabled{color:#a0aaba}
.login-clean-note{margin:15px 0 0;color:#8d99aa;font-size:9px;font-weight:700;letter-spacing:.04em}

.customer-dashboard-clean{max-width:1180px;margin:0 auto}.customer-clean-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:13px;padding:19px 21px;border:1px solid #dce5f1;border-radius:17px;background:#fff;box-shadow:0 8px 24px rgba(15,23,42,.045)}.customer-clean-profile{display:flex;align-items:center;gap:14px;min-width:0}.customer-avatar-clean{width:52px;height:52px;border-radius:15px;font-size:19px}.customer-clean-profile h1{margin:5px 0 3px;color:#111827;font-size:21px;line-height:1.15;letter-spacing:-.03em}.customer-clean-profile p{margin:0;color:#718096;font-size:11px;overflow-wrap:anywhere}.customer-clean-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.customer-clean-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:17px;padding:8px;border:1px solid #dfe7f1;border-radius:15px;background:#fff}.customer-clean-summary>div{position:relative;min-width:0;padding:12px 13px 12px 26px;border:1px solid #e7edf5;border-radius:11px;background:#fbfcfe}.summary-dot{position:absolute;left:12px;top:16px;width:6px;height:6px;border-radius:50%}.summary-dot.blue{background:var(--brand-light)}.summary-dot.green{background:#10b981}.summary-dot.red{background:#ef4444}.summary-dot.amber{background:#f59e0b}.customer-clean-summary small,.customer-clean-summary strong{display:block}.customer-clean-summary small{color:#8491a3;font-size:8.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.customer-clean-summary strong{margin-top:4px;color:#172033;font-size:17px;line-height:1.15}.customer-clean-summary .summary-date{font-size:11px;line-height:1.3}
.customer-clean-list{display:grid;gap:14px}.customer-clean-license{overflow:hidden;border:1px solid #dce4ef;border-radius:17px;background:#fff;box-shadow:0 10px 28px rgba(15,23,42,.05)}.customer-clean-license-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:17px 19px;border-bottom:1px solid #e9eef5;background:#fcfdff}.customer-clean-license-head>div:first-child{min-width:0}.customer-clean-license-head>div:first-child>span{color:var(--brand);font-size:8.5px;font-weight:850;text-transform:uppercase;letter-spacing:.075em}.customer-clean-license-head h2{margin:5px 0 2px;color:#172033;font-size:16px;line-height:1.2}.customer-clean-license-head p{margin:0;color:#7c899b;font-size:10.5px;overflow-wrap:anywhere}
.customer-clean-key{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;margin:16px 19px 13px;padding:10px 10px 10px 13px;border:1px solid #d7e2ef;border-radius:12px;background:#f8fafc}.customer-clean-key small,.customer-clean-key code{display:block}.customer-clean-key small{margin-bottom:4px;color:#8390a1;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.065em}.customer-clean-key code{color:#20324e;font-size:11px;line-height:1.45;overflow-wrap:anywhere}
.customer-clean-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:0 19px 16px}.customer-clean-meta>div{min-width:0;padding:11px;border:1px solid #e7edf4;border-radius:11px;background:#fcfdff}.customer-clean-meta small,.customer-clean-meta strong,.customer-clean-meta>div>span,.customer-clean-meta a{display:block}.customer-clean-meta small{margin-bottom:5px;color:#8793a4;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.055em}.customer-clean-meta strong{color:#253249;font-size:10.5px;line-height:1.4}.customer-clean-meta>div>span,.customer-clean-meta a{margin-top:4px;color:#718096;font-size:9px;line-height:1.4;text-decoration:none;overflow-wrap:anywhere}.customer-clean-meta a:hover{color:var(--brand)}.customer-clean-meta .badge{display:inline-flex;margin-top:5px}
.customer-clean-activation{display:grid;grid-template-columns:minmax(170px,.65fr) minmax(260px,1.4fr) auto;gap:11px;align-items:end;padding:15px 19px;border-top:1px solid #e9eef5;background:#fafcff}.customer-clean-activation label{display:block;color:#253249;font-size:10.5px;font-weight:800}.customer-clean-activation p{margin:4px 0 0;color:#8491a3;font-size:9px;line-height:1.4}.customer-clean-activation textarea{width:100%;min-height:44px;max-height:90px;padding:10px 11px;border:1px solid #cfdbea;border-radius:10px;background:#fff;color:#253249;font-size:10.5px;resize:vertical;outline:0}.customer-clean-activation textarea:focus{border-color:#7fa5e8;box-shadow:0 0 0 3px rgba(var(--brand-rgb),.09)}.customer-clean-activation .btn{min-height:44px;white-space:nowrap}.customer-empty-clean{margin-top:0}

@media(max-width:900px){.customer-clean-hero{align-items:flex-start;flex-direction:column}.customer-clean-actions{width:100%}.customer-clean-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-clean-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-clean-activation{grid-template-columns:1fr}.customer-clean-activation .btn{width:100%}}
@media(max-width:650px){.login-clean-shell{padding:14px}.login-clean-card{padding:24px 19px 20px;border-radius:18px}.login-clean-heading h1{font-size:25px}.login-clean-form .login-input-wrap>input{font-size:16px}.login-clean-footer{align-items:flex-start;flex-direction:column}.login-clean-footer>a,.login-clean-footer .support-disabled{width:100%;justify-content:center;min-height:38px;border:1px solid #d9eee7;border-radius:10px;background:#f5fbf9}.customer-clean-hero{padding:16px;border-radius:14px}.customer-clean-profile{align-items:flex-start}.customer-clean-actions{display:grid;grid-template-columns:1fr}.customer-clean-actions .btn{width:100%}.customer-clean-summary{grid-template-columns:1fr 1fr}.customer-clean-license{border-radius:14px}.customer-clean-license-head{padding:15px;flex-direction:column}.customer-license-badges{justify-content:flex-start}.customer-clean-key{margin:14px 15px 11px;grid-template-columns:1fr}.customer-clean-key .customer-copy-btn{width:100%;justify-content:center}.customer-clean-meta{grid-template-columns:1fr;padding:0 15px 14px}.customer-clean-activation{padding:14px 15px}.user-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.user-quick-actions form,.user-quick-actions>a,.user-quick-actions button{width:100%}}


/* v12.2 database branding and modern font controls */
.brand-mark.has-logo,.login-brand-mark.has-logo{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.brand-logo-image{display:block;width:100%;height:100%;object-fit:contain;border-radius:inherit;padding:5px}
.login-brand-mark .brand-logo-image{padding:4px}.branding-preview-mark .brand-logo-image{padding:3px}

.branding-page{max-width:1380px;margin:0 auto}.branding-intro{margin-bottom:18px}.branding-scope-badge{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid #d7e9e1;border-radius:999px;background:#f3faf7;color:#087458;font-size:9px;font-weight:800;white-space:nowrap}
.branding-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(340px,.72fr);gap:18px;align-items:start}.branding-form-panel{overflow:hidden}.branding-form{display:grid;gap:18px}.branding-text-grid{margin-bottom:0}.field small{display:block;margin-top:6px;color:#8793a4;font-size:9px;line-height:1.45}
.brand-color-control{display:grid;grid-template-columns:52px minmax(0,1fr);gap:9px}.brand-color-picker{width:52px!important;height:44px!important;padding:4px!important;cursor:pointer}.brand-color-text{text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace!important;font-weight:750;letter-spacing:.04em}
.branding-upload-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.branding-upload-card{padding:15px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,#fff,#fafcff)}.branding-upload-head{display:flex;align-items:flex-start;gap:10px;margin-bottom:12px}.branding-upload-head>span{width:36px;height:36px;display:grid;place-items:center;flex:0 0 auto;border-radius:10px;background:var(--brand-soft);color:var(--brand)}.branding-upload-head strong,.branding-upload-head small{display:block}.branding-upload-head strong{color:var(--ink-strong);font-size:11px}.branding-upload-head small{margin-top:3px;color:var(--muted);font-size:8.5px}.branding-upload-card input[type=file]{width:100%;padding:9px;border:1px dashed #cbd7e6;border-radius:10px;background:#fff;color:#607086;font-size:9.5px}.remove-asset{display:flex!important;align-items:center;gap:7px;margin-top:10px!important;color:#a33a46!important;font-size:9px!important;font-weight:700!important}.remove-asset input{width:auto!important;margin:0}
.branding-form-actions{margin-top:0;padding-top:2px}.branding-preview-column{position:sticky;top:96px;display:grid;gap:12px}.branding-preview-panel{overflow:hidden}.branding-preview-panel .panel-body{padding:14px}.branding-preview{--preview-brand:var(--brand);display:grid;grid-template-columns:142px minmax(0,1fr);min-height:250px;overflow:hidden;border:1px solid #dce4ef;border-radius:15px;background:#f5f7fb;box-shadow:0 15px 35px rgba(15,23,42,.08)}.branding-preview-sidebar{padding:15px 11px;background:#fff;border-right:1px solid #e5eaf1}.branding-preview-brand{display:flex;align-items:center;gap:8px;margin-bottom:19px}.branding-preview-brand .brand-mark{width:32px;height:32px;border-radius:9px;background:linear-gradient(145deg,color-mix(in srgb,var(--preview-brand),white 16%),var(--preview-brand));box-shadow:0 6px 14px color-mix(in srgb,var(--preview-brand),transparent 76%)}.branding-preview-brand strong,.branding-preview-brand small{display:block;max-width:78px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.branding-preview-brand strong{color:#111827;font-size:9.5px}.branding-preview-brand small{margin-top:2px;color:#8793a4;font-size:6.8px}.branding-preview-nav{display:flex;align-items:center;gap:7px;margin-bottom:5px;padding:7px 8px;border-radius:8px;color:#738096;font-size:7.5px;font-weight:700}.branding-preview-nav.active{background:color-mix(in srgb,var(--preview-brand),white 91%);color:var(--preview-brand)}.branding-preview-content{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:22px}.branding-preview-content>span{color:var(--preview-brand);font-size:7px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.branding-preview-content>strong{max-width:150px;margin:8px 0 15px;color:#111827;font-size:15px;line-height:1.25;letter-spacing:-.035em}.branding-preview-content button{border:0;border-radius:8px;padding:8px 10px;background:var(--preview-brand);color:#fff;font:inherit;font-size:7.5px;font-weight:800}.branding-reset-form .btn{width:100%;justify-content:center}

@media(max-width:1120px){.branding-layout{grid-template-columns:1fr}.branding-preview-column{position:static}.branding-preview{min-height:220px}}
@media(max-width:700px){.branding-upload-grid{grid-template-columns:1fr}.branding-preview{grid-template-columns:120px minmax(0,1fr)}.branding-preview-content{padding:16px}.branding-scope-badge{align-self:flex-start}.brand-color-control{grid-template-columns:48px minmax(0,1fr)}}
