:root{--sp-primary: #7c3aed;--sp-primary-600: #6d28d9;--sp-accent: #f97316;--sp-accent-600: #ea580c;--sp-bg: #f7f8fb;--sp-surface: #ffffff;--sp-surface-2: #f1f5f9;--sp-surface-3: #eaf0f7;--sp-border: #e2e8f0;--sp-border-2: #cbd5e1;--sp-text: #0f172a;--sp-muted: #64748b;--sp-danger: #ef4444}*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,Helvetica Neue,Arial,sans-serif;line-height:1.4;color:var(--sp-text);background:radial-gradient(circle at top right,#ffffff 0%,var(--sp-bg) 45%,#eef3fa 100%)}.layout{display:grid;grid-template-columns:280px 1fr;min-height:100vh}.sidebar{background:linear-gradient(180deg,#1f1247,#1d2c51);color:#fff;padding:1rem;display:flex;flex-direction:column;gap:1rem;border-right:1px solid rgba(255,255,255,.08)}.brand{display:grid;gap:.6rem}.brand-logo{width:124px;height:auto;object-fit:contain}.brand-title{margin:0;font-size:1rem;font-weight:700}.sidebar nav{display:grid;gap:.5rem}.sidebar a,.nav-group-toggle{color:#d8e0ff;text-decoration:none;padding:.5rem .65rem;border-radius:8px}.sidebar a:hover,.nav-group-toggle:hover{background:#ffffff14}.sidebar a.active{background:linear-gradient(90deg,#7c3aed52,#f9731638);color:#fff}.nav-group-toggle.active{background:linear-gradient(90deg,#7c3aed52,#f9731638);color:#fff;border-color:#ffffff59}.nav-group-toggle{border:1px solid rgba(255,255,255,.2);background:transparent;text-align:left;cursor:pointer}.nav-submenu{display:grid;gap:.35rem;margin-left:.55rem;padding-left:.45rem;border-left:2px solid rgba(255,255,255,.2)}.nav-submenu.active{border-left-color:#a78bfacc}.nav-submenu a{font-size:.95rem}.logout-btn{margin-top:auto;background:var(--sp-danger);color:#fff}.content{padding:1.5rem}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.card{background:var(--sp-surface);padding:1rem;border:1px solid var(--sp-border);border-radius:10px;box-shadow:0 8px 24px #0f172a0a}.company-detail-page,.entity-page{display:grid;gap:1.25rem}.company-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.35rem;color:#fff;border-radius:14px;background:linear-gradient(120deg,#2e1a68,#334e7d)}.entity-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.35rem;color:#fff;border-radius:14px;background:linear-gradient(120deg,#17345f,#2f5f78)}.entity-header-aside{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.6rem}.company-detail-header h2,.company-detail-header p,.entity-header h2,.entity-header p{margin:0}.company-detail-header h2,.entity-header h2{margin:.2rem 0 .35rem;font-size:1.75rem}.company-detail-header .muted,.entity-header .muted{color:#d8e0ff}.eyebrow{font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:.82}.status-badge,.license-pill{display:inline-flex;align-items:center;width:fit-content;padding:.35rem .7rem;border-radius:999px;font-size:.85rem;font-weight:700}.status-active{color:#14532d;background:#dcfce7}.status-inactive{color:#7f1d1d;background:#fee2e2}.company-detail-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:1rem}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem}.summary-card{display:grid;gap:.45rem}.summary-card strong{font-size:1.55rem}.detail-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:1rem}.detail-grid-single{grid-template-columns:1fr}.panel,.resource-card{padding:1.1rem;border:1px solid var(--sp-border);border-radius:12px;background:var(--sp-surface);box-shadow:0 8px 24px #0f172a0a}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.panel-heading h3,.panel-heading p,.resource-card h3{margin:0}.detail-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:0;margin:0;border:1px solid var(--sp-border);border-radius:10px;overflow:hidden}.detail-list div{min-width:0;padding:.8rem;border-right:1px solid var(--sp-border);border-bottom:1px solid var(--sp-border);background:var(--sp-surface-2)}.detail-list dt{margin-bottom:.2rem;color:var(--sp-muted);font-size:.8rem;font-weight:700;text-transform:uppercase}.detail-list dd{margin:0;font-weight:600;overflow-wrap:anywhere}.detail-list-compact{grid-template-columns:1fr}.action-stack{display:grid;gap:.6rem}.secondary-button{color:var(--sp-primary-600);background:var(--sp-surface);border:1px solid var(--sp-primary)}.secondary-button:hover{color:#fff}.danger-button{background:var(--sp-danger)}.danger-button:hover{background:#dc2626}.license-pill{color:#5b21b6;background:#ede9fe}.license-assignment-form{display:grid;grid-template-columns:minmax(240px,420px) max-content;align-items:end;gap:.65rem;margin-bottom:1.25rem}.filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end}.filters-actions{display:flex;align-items:end}.checkbox-row{display:flex;align-items:center;gap:.5rem}.company-license-panel h4{margin-bottom:.65rem}.resources-heading{margin:0}.resource-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.resource-card{display:flex;flex-direction:column;gap:.75rem}.resource-card p{flex:1;margin:0;color:var(--sp-muted)}.button-link{display:inline-flex;align-items:center;width:fit-content;padding:.55rem .75rem;color:#fff;text-decoration:none;border-radius:8px;background:var(--sp-primary)}.button-link:hover{background:var(--sp-primary-600)}.dashboard-list{display:grid;gap:.75rem;margin:0;padding-left:1.1rem}.dashboard-list li{overflow-wrap:anywhere}.metric-grid strong{font-size:1.6rem}.type-chart{margin-top:1rem}.chart-list{display:grid;gap:.65rem}.chart-row{display:grid;grid-template-columns:minmax(140px,220px) 1fr 56px;align-items:center;gap:.6rem}.chart-bar-wrap{width:100%;background:var(--sp-surface-3);border-radius:999px;height:12px;overflow:hidden}.chart-bar{height:100%;background:linear-gradient(90deg,var(--sp-primary),var(--sp-accent));border-radius:999px}.filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.stack{max-width:560px;display:grid;gap:.75rem}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;max-width:760px;margin-bottom:1rem}.page-heading h2,.modal-header h2{margin-top:0;margin-bottom:.35rem}.page-heading p,.modal-header p{margin:0}.info-button{display:inline-flex;align-items:center;gap:.5rem;flex:0 0 auto;background:var(--sp-surface);color:var(--sp-primary-600);border:1px solid var(--sp-primary)}.info-button:hover{color:#fff}.info-button span{display:grid;place-items:center;width:1.35rem;height:1.35rem;border:1px solid currentColor;border-radius:50%;font-weight:700;font-family:Georgia,serif}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:1rem;background:#0f172a9e}.modal-card{width:min(760px,100%);max-height:calc(100vh - 2rem);overflow-y:auto;background:var(--sp-surface);border-radius:14px;padding:1.25rem;box-shadow:0 24px 80px #0f172a4d}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.modal-close{flex:0 0 auto;width:2.25rem;height:2.25rem;padding:0;font-size:1.5rem;line-height:1;background:var(--sp-surface-2);color:var(--sp-text)}.modal-close:hover{background:var(--sp-border-2)}.help-fields{display:grid;gap:.75rem;margin:1.25rem 0}.help-fields article{padding:.9rem 1rem;border:1px solid var(--sp-border);border-radius:10px;background:var(--sp-surface-2)}.help-fields h3,.help-fields p,.help-example h3{margin-top:0}.help-fields p:last-child{margin-bottom:0}.field-example{color:var(--sp-primary-600);font-family:Consolas,Courier New,monospace}.help-example{padding:1rem;border-left:4px solid var(--sp-accent);background:#fff7ed;border-radius:8px}.help-example dl{display:grid;gap:.4rem;margin:0 0 .75rem}.help-example dl div{display:grid;grid-template-columns:minmax(150px,1fr) 2fr;gap:.75rem}.help-example dt{font-weight:700}.help-example dd{margin:0;font-family:Consolas,Courier New,monospace}.modal-actions{display:flex;justify-content:flex-end;margin-top:1rem}label{display:grid;gap:.25rem}input,select,button{padding:.55rem .6rem;border-radius:8px;border:1px solid var(--sp-border-2)}button{cursor:pointer;background:var(--sp-primary);color:#fff;border:0}button:hover{background:var(--sp-primary-600)}button:disabled{cursor:not-allowed;background:#9ab3cf}table{width:100%;border-collapse:collapse;background:var(--sp-surface)}.table-scroll{overflow-x:auto}th,td{padding:.62rem;border:1px solid var(--sp-border);text-align:left}th{background:var(--sp-surface-2)}.actions,.pagination{display:flex;gap:.5rem;margin:1rem 0;align-items:center}.error{color:#a11414}.muted{color:var(--sp-muted)}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:1rem}.login-card{width:100%;max-width:420px;background:var(--sp-surface);border:1px solid var(--sp-border);border-radius:10px;padding:1.25rem;display:grid;gap:.75rem}@media (max-width: 900px){.layout{grid-template-columns:1fr}.sidebar{position:sticky;top:0;z-index:10}.brand-logo{width:92px}.chart-row{grid-template-columns:1fr;gap:.35rem}.company-detail-header,.panel-heading{display:grid}.company-detail-grid{grid-template-columns:1fr}.entity-header,.company-detail-header,.panel-heading{display:grid}.detail-grid,.license-assignment-form,.filters-grid{grid-template-columns:1fr}.page-heading{display:grid}.info-button{justify-self:start}.help-example dl div{grid-template-columns:1fr;gap:.1rem}}
