@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap');
:root{--bg:#0b1020;--bg2:#10182b;--panel:#131d32;--panel2:#18243c;--line:rgba(160,180,220,.13);--text:#e8eefb;--muted:#94a3bc;--accent:#69a6ff;--accent2:#8d7bff;--green:#2ed3a0;--red:#ff7485;--yellow:#f7c66b;--shadow:0 18px 48px rgba(0,0,0,.22);font-family:'DM Sans',system-ui,sans-serif;color-scheme:dark}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(1100px 500px at 75% -10%,rgba(90,120,230,.17),transparent 70%),var(--bg);color:var(--text);font-size:14px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.sidebar{width:255px;position:fixed;inset:0 auto 0 0;background:rgba(12,19,35,.95);border-right:1px solid var(--line);padding:24px 16px 18px;display:flex;flex-direction:column;z-index:20;backdrop-filter:blur(20px)}.brand{display:flex;align-items:center;gap:12px;padding:0 10px 28px}.brand b{display:block;font-family:'Space Grotesk';font-size:13px;letter-spacing:.05em}.brand small{display:block;font-size:9px;letter-spacing:.18em;color:var(--muted);margin-top:3px}.brand-mark{width:54px;height:54px;border-radius:17px;display:grid;place-items:center;background:linear-gradient(135deg,#74b6ff,#7765ee);color:white;font:700 18px 'Space Grotesk';box-shadow:0 8px 25px rgba(98,139,255,.25)}.brand-mark.small{width:40px;height:40px;border-radius:13px;font-size:14px}.sidebar-label{font-size:9px;letter-spacing:.18em;font-weight:700;color:#65738e;padding:0 12px 9px}.sidebar-label.spaced{margin-top:26px}.nav-list{display:flex;flex-direction:column;gap:5px;overflow:auto}.nav-link{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:11px;color:#a8b5ca;font-size:12px;font-weight:600;transition:.2s}.nav-link:hover{background:rgba(115,153,236,.09);color:#fff;transform:translateX(2px)}.nav-link.active{background:linear-gradient(100deg,rgba(94,151,255,.2),rgba(128,105,245,.12));color:#fff;box-shadow:inset 2px 0 #72aaff}.nav-ico{width:19px;height:19px;display:inline-grid;place-items:center;color:#8ca7d8;font-size:15px}.sidebar-bottom{margin-top:auto;padding:18px 8px 0;border-top:1px solid var(--line)}.owner-chip{display:flex;align-items:center;gap:10px}.avatar{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#2c94a8,#765fe2);font-weight:700;font-size:10px}.avatar.large{width:58px;height:58px;font-size:16px}.owner-chip b,.owner-chip small{display:block}.owner-chip b{font-size:11px}.owner-chip small{font-size:10px;color:var(--muted);margin-top:3px}.logout-link{background:none;border:0;color:#8291aa;padding:14px 0 0 44px;font-size:10px}.logout-link:hover{color:#fff}.main-area{margin-left:255px;min-height:100vh}.topbar{height:68px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 34px;background:rgba(11,16,32,.55);backdrop-filter:blur(14px);position:sticky;top:0;z-index:10}.breadcrumbs{font-size:11px;color:#8f9db5;letter-spacing:.02em}.breadcrumbs span{padding:0 9px;color:#53617b}.breadcrumbs b{color:#e8eefb}.topbar-right{display:flex;align-items:center;gap:12px}.topbar-status{font-size:10px;color:#95a5bf}.live-dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px rgba(46,211,160,.1)}.icon-btn{border:1px solid var(--line);background:rgba(255,255,255,.03);border-radius:10px;width:34px;height:34px;display:grid;place-items:center;color:#b9c9e1}.menu-toggle{display:none}.content-wrap{padding:32px 34px 22px;max-width:1600px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:25px}.eyebrow{font-size:9px;letter-spacing:.2em;font-weight:700;color:#7caeff;margin-bottom:8px}.page-heading h1,.login-shell h1,.install-wrap h1{font-family:'Space Grotesk';font-size:26px;letter-spacing:-.04em;margin:0 0 7px}.page-heading p,.muted{color:var(--muted);font-size:12px;line-height:1.65;margin:0}.panel{background:linear-gradient(145deg,rgba(23,34,56,.95),rgba(17,27,46,.94));border:1px solid var(--line);border-radius:17px;padding:22px;margin-bottom:18px;box-shadow:var(--shadow);animation:rise .35s ease both}.panel h2{font-family:'Space Grotesk';font-size:15px;margin:0 0 7px}.panel h3{font-family:'Space Grotesk';font-size:13px;margin:0 0 8px}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.panel-head p{color:var(--muted);font-size:11px;margin:0;line-height:1.6}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:18px}.stats-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.stat-card{border:1px solid var(--line);border-radius:15px;padding:17px 18px;background:linear-gradient(140deg,rgba(28,42,69,.8),rgba(18,28,47,.85));min-height:122px;transition:.22s}.stat-card:hover{transform:translateY(-3px);border-color:rgba(120,166,255,.35)}.stat-top{display:flex;align-items:center;justify-content:space-between;color:#9fadc4;font-size:10px}.stat-icon{font-size:15px;color:#87b5ff;background:rgba(104,155,255,.12);padding:7px 9px;border-radius:9px}.stat-card strong{display:block;font-family:'Space Grotesk';font-size:27px;margin:10px 0 3px}.stat-card small{color:#7586a2;font-size:10px}.two-col{display:grid;grid-template-columns:1.25fr .9fr;gap:17px}.two-col .panel{min-width:0}.table-wrap{overflow:auto;width:100%}table{width:100%;border-collapse:collapse;white-space:normal}th{text-align:left;font-size:9px;color:#7586a2;text-transform:uppercase;letter-spacing:.1em;padding:11px 12px;border-bottom:1px solid var(--line);font-weight:700}td{font-size:11px;color:#cbd6e8;padding:13px 12px;border-bottom:1px solid rgba(160,180,220,.08);vertical-align:middle}td b{font-size:11px;color:#f1f5fb}td small{display:block;color:#8292ac;font-size:9px;margin-top:4px}.status{display:inline-flex;align-items:center;border-radius:30px;padding:5px 8px;font-size:8px;letter-spacing:.07em;font-weight:700;border:1px solid transparent;white-space:nowrap}.status-ok,.status-active,.status-approved{color:#62e6bd;background:rgba(46,211,160,.1);border-color:rgba(46,211,160,.18)}.status-pending,.status-warning,.status-trial{color:#ffd37b;background:rgba(247,198,107,.1);border-color:rgba(247,198,107,.18)}.status-danger,.status-revoked,.status-invalid,.status-critical,.status-rejected{color:#ff8a9b;background:rgba(255,116,133,.1);border-color:rgba(255,116,133,.18)}.status-suspended,.status-expired,.status-disabled,.status-needs_revalidation,.status-blocked{color:#ffb1a8;background:rgba(255,142,118,.1);border-color:rgba(255,142,118,.18)}.status-maintenance,.status-info{color:#8bbaff;background:rgba(105,166,255,.1);border-color:rgba(105,166,255,.18)}.health-list>div{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid rgba(160,180,220,.08);font-size:11px;color:#a7b5cb}.health-list b{font-size:10px}.text-green{color:var(--green)}.text-link{font-size:10px;color:#8db7ff;font-weight:700}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:10px;padding:10px 14px;font-size:11px;font-weight:700;transition:.2s;white-space:nowrap}.btn:hover{transform:translateY(-1px);filter:brightness(1.08)}.btn-primary{color:#071327;background:linear-gradient(120deg,#83beff,#9b91ff);box-shadow:0 7px 18px rgba(93,137,246,.18)}.btn-secondary{color:#c9d8ef;background:rgba(119,150,205,.11);border-color:rgba(130,160,215,.18)}.btn-outline{color:#95add4;background:transparent;border-color:rgba(130,160,215,.28)}.btn-danger{color:#ffdce1;background:rgba(255,104,125,.13);border-color:rgba(255,104,125,.26)}.btn-xs{padding:6px 9px;font-size:9px;border-radius:8px}.btn.full{width:100%}.actions{display:flex;gap:6px;flex-wrap:wrap}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px}.form-grid label,.login-card label,.install-card label,.review-form label{display:flex;flex-direction:column;gap:7px;color:#cbd7e9;font-size:10px;font-weight:700}.form-grid small,.login-card small,.install-card small,.review-form small,.setting-field small{font-size:9px;line-height:1.5;color:#7f90ab;font-weight:400}.form-grid input,.form-grid select,.form-grid textarea,.login-card input,.install-card input,.review-form select,.review-form textarea,.install-card select,.filter-row input,.filter-row select,.panel input[type=text],.panel input[type=password],.panel input[type=email],.panel input[type=url],.panel input[type=number],.panel input[type=datetime-local],.panel input[type=file],.panel textarea,.panel select{width:100%;min-width:0;border:1px solid rgba(145,169,210,.2);border-radius:9px;padding:11px 12px;background:rgba(5,12,25,.35);outline:none;color:#e8eefb;font-size:11px;transition:.2s}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.panel input:focus,.panel textarea:focus,.panel select:focus{border-color:#76aaff;box-shadow:0 0 0 3px rgba(105,166,255,.1)}select option{background:#17233a;color:#fff}textarea{resize:vertical}.span-2{grid-column:span 2}.filter-row{display:flex;gap:9px;margin:0 0 13px}.filter-row input{max-width:360px}.filter-row select{max-width:190px}.count-pill{border:1px solid var(--line);background:rgba(255,255,255,.03);color:#9eacc4;padding:7px 10px;border-radius:20px;font-size:9px}.empty-state{text-align:center;color:#7e90aa;padding:30px 14px;font-size:11px}.alert{position:relative;border-radius:11px;padding:12px 14px;margin:0 0 16px;font-size:11px;line-height:1.6;border:1px solid transparent;display:flex;align-items:center;justify-content:space-between;gap:12px}.alert-success{background:rgba(46,211,160,.1);border-color:rgba(46,211,160,.2);color:#9af0d2}.alert-danger{background:rgba(255,116,133,.1);border-color:rgba(255,116,133,.2);color:#ffb8c2}.alert-warning{background:rgba(247,198,107,.1);border-color:rgba(247,198,107,.2);color:#ffdfa0}.alert button{background:none;border:0;color:inherit;font-size:18px}.credential-panel{border-color:rgba(46,211,160,.3)}.credential-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-bottom:15px}.credential-grid label{font-size:9px;color:#99abc6}.copy-field{display:flex;align-items:center;gap:8px;padding:8px 9px;background:rgba(4,10,22,.48);border:1px solid var(--line);border-radius:9px;margin-top:6px;min-width:0}.copy-field code{flex:1;overflow-wrap:anywhere;color:#d9e8ff;font-size:10px}.copy-field button{border:0;border-radius:7px;background:rgba(105,166,255,.15);color:#9ec4ff;font-size:9px;padding:6px 8px}.setting-field{display:flex;flex-direction:column;gap:7px;padding:13px;border:1px solid rgba(145,169,210,.13);border-radius:11px;background:rgba(255,255,255,.015)}.setting-field>span:first-child{font-size:10px;color:#d0dced;font-weight:700}.setting-field input:not([type=checkbox]){width:100%}.toggle{width:42px;height:23px;position:relative;display:block}.toggle input{position:absolute;opacity:0}.toggle i{position:absolute;inset:0;border-radius:20px;background:#3b4860;transition:.2s}.toggle i:after{content:'';position:absolute;width:17px;height:17px;left:3px;top:3px;border-radius:50%;background:#dfe8f6;transition:.2s}.toggle input:checked+i{background:#278f7a}.toggle input:checked+i:after{transform:translateX(19px);background:#fff}.panel-subsection{border-top:1px solid var(--line);margin-top:22px;padding-top:21px}.mt{margin-top:18px}.tiny{font-size:9px}.center{text-align:center}.info-tile{border:1px solid var(--line);background:rgba(255,255,255,.02);border-radius:12px;padding:15px}.info-tile small,.info-tile b{display:block}.info-tile small{font-size:9px;color:#8092ad}.info-tile b{font-family:'Space Grotesk';font-size:14px;margin:7px 0}.review-details summary{list-style:none;cursor:pointer}.review-details summary::-webkit-details-marker{display:none}.review-form{width:245px;position:absolute;z-index:5;background:#111c31;padding:14px;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:10px;margin-top:7px}.review-form label{font-size:9px}.integration-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.integration-steps>div{background:rgba(255,255,255,.025);border:1px solid var(--line);border-radius:12px;padding:14px}.integration-steps b{display:block;color:#83b5ff;font-family:'Space Grotesk';font-size:18px;margin-bottom:13px}.integration-steps strong{font-size:10px}.integration-steps p{font-size:9px;color:#8596b1;line-height:1.6}.code-block{background:#071020;color:#a7cdfd;border:1px solid var(--line);padding:16px;border-radius:10px;overflow:auto;font-size:10px;line-height:1.65}.profile-summary{display:flex;align-items:center;gap:14px}.profile-summary b,.profile-summary small{display:block}.profile-summary b{font-size:14px}.profile-summary small{font-size:10px;color:#8698b2;margin-top:4px}.app-footer{display:flex;justify-content:space-between;color:#63738f;font-size:9px;padding:10px 3px 20px}.login-body,.install-body{min-height:100vh;display:grid;place-items:center;padding:25px;background:radial-gradient(650px 500px at 50% 0%,rgba(102,140,255,.2),transparent 70%),var(--bg)}.login-shell,.install-wrap{width:min(780px,100%);text-align:center}.login-shell .brand-mark,.install-wrap .brand-mark{margin:0 auto 18px}.login-shell h1,.install-wrap h1{font-size:30px}.login-card{width:min(420px,100%);margin:25px auto;text-align:left}.login-card label{margin-bottom:14px}.login-card .btn{margin-top:7px}.install-wrap{text-align:left}.install-wrap>.brand-mark,.install-wrap>.eyebrow,.install-wrap>h1,.install-wrap>p{text-align:center}.install-card{margin-top:16px}.require-row{display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-bottom:1px solid var(--line);font-size:11px;color:#b9c7db}.install-actions{margin-top:20px}.install-actions .btn{margin-bottom:9px}.install-actions p{margin:0}.install-card ul{margin:8px 0 0;padding-left:18px}.require-row:last-child{border:0}.nav-overlay{display:none}@keyframes rise{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1200px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.integration-steps{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.sidebar{transform:translateX(-100%);transition:.25s}.sidebar.open{transform:translateX(0)}.main-area{margin-left:0}.menu-toggle{display:grid}.topbar{padding:0 18px}.content-wrap{padding:24px 18px}.two-col{grid-template-columns:1fr}.nav-overlay.show{display:block;position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:15}}
@media(max-width:620px){.page-heading{align-items:flex-start;flex-direction:column}.page-heading h1{font-size:22px}.topbar-status{display:none}.stats-grid,.stats-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.stat-card{padding:13px;min-height:110px}.stat-card strong{font-size:23px}.form-grid,.credential-grid{grid-template-columns:1fr}.span-2{grid-column:span 1}.panel{padding:16px;border-radius:14px}.integration-steps{grid-template-columns:1fr 1fr}.filter-row{flex-wrap:wrap}.filter-row input{max-width:100%;flex:1 1 100%}.filter-row select{flex:1}.app-footer{gap:8px;flex-direction:column}.install-wrap>.brand-mark{width:48px;height:48px}.login-shell h1,.install-wrap h1{font-size:25px}}
/* Light theme overrides, selected by Owner in Global Settings. */
body[data-theme="light"]{--bg:#eef3fb;--bg2:#f6f8fc;--panel:#fff;--panel2:#f3f6fb;--line:rgba(50,75,115,.15);--text:#17243a;--muted:#66758e;color-scheme:light;background:radial-gradient(900px 420px at 80% -10%,rgba(100,140,235,.13),transparent 70%),#eef3fb;color:#17243a}
body[data-theme="light"] .sidebar{background:rgba(250,252,255,.96)}body[data-theme="light"] .brand b,body[data-theme="light"] .breadcrumbs b,body[data-theme="light"] .panel h2,body[data-theme="light"] .panel h3,body[data-theme="light"] .page-heading h1,body[data-theme="light"] .stat-card strong,body[data-theme="light"] td b{color:#1c2a42}
body[data-theme="light"] .nav-link{color:#5b6a83}body[data-theme="light"] .nav-link.active{color:#213451}body[data-theme="light"] .topbar{background:rgba(248,250,254,.82)}body[data-theme="light"] .breadcrumbs{color:#75839b}
body[data-theme="light"] .panel,body[data-theme="light"] .stat-card{background:linear-gradient(145deg,#fff,#f7f9fd);box-shadow:0 12px 32px rgba(39,64,104,.07)}body[data-theme="light"] td{color:#35445e}body[data-theme="light"] th{color:#71809a}body[data-theme="light"] .health-list>div,body[data-theme="light"] .require-row{color:#465673}
body[data-theme="light"] .form-grid input,body[data-theme="light"] .form-grid select,body[data-theme="light"] .form-grid textarea,body[data-theme="light"] .panel input,body[data-theme="light"] .panel textarea,body[data-theme="light"] .panel select,body[data-theme="light"] .copy-field{background:#f5f8fd;color:#1b2c47;border-color:rgba(60,90,140,.2)}body[data-theme="light"] .copy-field code{color:#264a7a}body[data-theme="light"] .setting-field{background:#f9fbfe}body[data-theme="light"] .setting-field>span:first-child{color:#263650}body[data-theme="light"] .code-block{background:#15223a;color:#c6dcff}
@media(prefers-color-scheme:light){body[data-theme="auto"]{--bg:#eef3fb;--line:rgba(50,75,115,.15);--text:#17243a;--muted:#66758e;color-scheme:light;background:#eef3fb;color:#17243a}body[data-theme="auto"] .sidebar{background:rgba(250,252,255,.96)}body[data-theme="auto"] .panel,body[data-theme="auto"] .stat-card{background:linear-gradient(145deg,#fff,#f7f9fd);box-shadow:0 12px 32px rgba(39,64,104,.07)}body[data-theme="auto"] .form-grid input,body[data-theme="auto"] .form-grid select,body[data-theme="auto"] .form-grid textarea,body[data-theme="auto"] .panel input,body[data-theme="auto"] .panel textarea,body[data-theme="auto"] .panel select{background:#f5f8fd;color:#1b2c47}}

/* JOPUJA License Center 2.0 — owner-first navigation and simplified workflows */
.nav-advanced{margin-top:10px;border-top:1px solid var(--line);padding-top:10px}
.nav-advanced>summary{display:flex;align-items:center;gap:11px;padding:11px 12px;border-radius:11px;color:#9baac1;font-size:11px;font-weight:700;cursor:pointer;list-style:none}
.nav-advanced>summary::-webkit-details-marker{display:none}
.nav-advanced>summary:hover{background:rgba(115,153,236,.08);color:var(--text)}
.nav-advanced[open]>summary{color:var(--text)}
.nav-chevron{margin-left:auto;transition:transform .2s}
.nav-advanced[open] .nav-chevron{transform:rotate(180deg)}
.nav-sublist{display:flex;flex-direction:column;gap:3px;padding:4px 0 0 16px}
.nav-sublist .nav-link{font-size:10px;padding:9px 10px}
.nav-count{margin-left:auto;background:#dbeafe;color:#2457a5;border-radius:20px;padding:2px 7px;font-size:9px;font-style:normal;font-weight:800}
.overview-stats{grid-template-columns:repeat(4,minmax(0,1fr))}
.welcome-panel{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(360px,1.2fr);gap:22px;align-items:center}
.welcome-copy h2{font:700 21px 'Space Grotesk';letter-spacing:-.04em;margin:4px 0 8px}
.welcome-copy p{font-size:11px;line-height:1.7;color:var(--muted);margin:0;max-width:390px}
.quick-steps{display:grid;gap:8px}
.quick-step{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.025);transition:.18s}
.quick-step:hover{border-color:rgba(105,166,255,.38);transform:translateX(2px)}
.quick-number{display:grid;place-items:center;flex:0 0 35px;height:35px;border-radius:10px;background:rgba(105,166,255,.13);color:#80b5ff;font:700 12px 'Space Grotesk'}
.quick-step b,.quick-step small{display:block}
.quick-step b{font-size:11px;color:var(--text)}
.quick-step small{font-size:9px;color:var(--muted);margin-top:3px}
.quick-arrow{margin-left:auto;color:#86b5ff;font-size:18px}
.step-pill{padding:6px 9px;border-radius:20px;background:rgba(105,166,255,.1);color:#8dbaff;font-size:8px;font-weight:800;letter-spacing:.09em;white-space:nowrap}
.advanced-fields{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:rgba(255,255,255,.018)}
.advanced-fields>summary{list-style:none;cursor:pointer;color:#8fb9fa;font-size:10px;font-weight:700}
.advanced-fields>summary::-webkit-details-marker{display:none}
.advanced-fields>summary:after{content:'＋';float:right;font-size:13px}
.advanced-fields[open]>summary:after{content:'−'}
.advanced-fields .inner-grid{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
.form-actions{display:flex;align-items:center;gap:13px;flex-wrap:wrap}
.form-actions .muted{max-width:450px}
.custom-expiry{display:block}
.custom-expiry[hidden]{display:none}
@media(max-width:1100px){.welcome-panel{grid-template-columns:1fr}.overview-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.welcome-panel{padding:15px}.quick-step{padding:10px}.form-actions{align-items:flex-start;flex-direction:column}.overview-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
