:root{--color-primary:#3978d5;--color-primary-hover:#2864b9;--color-secondary:#76a7ed;--color-accent:#62c5ff;--color-success:#16835d;--color-warning:#b75b00;--color-error:#c52b37;--focus-ring:#62c5ff;--bg-primary:#0a0c10;--bg-secondary:#111318;--bg-card:#161a22;--bg-hover:#1c2130;--border:#252d3d;--border-bright:#2e3a52;--text-primary:#f0f2f8;--text-secondary:#a8b4c8;--text-muted:#7a8a9e;--accent:var(--color-primary);--accent-dim:#e8b84b1f;--blue:var(--color-secondary);--blue-dim:#4a9eff1f;--green:var(--color-success);--green-dim:#3ecf8e1f;--red:var(--color-error);--red-dim:#f871711f;--orange:#fb923c;--font-display:"Bebas Neue", sans-serif;--font-body:"IBM Plex Sans", sans-serif;--font-mono:"IBM Plex Mono", monospace;--radius:6px;--radius-lg:10px;--shadow:0 4px 24px #0006}:root[data-mode=light]{--bg-primary:#f5f7fb;--bg-secondary:#edf1f7;--bg-card:#fff;--bg-hover:#e5ebf4;--border:#cbd5e1;--border-bright:#94a3b8;--text-primary:#152033;--text-secondary:#40516a;--text-muted:#66758b;--shadow:0 4px 24px #1e293b1f}:root[data-mode=dark]{--bg-primary:#0a0c10;--bg-secondary:#111318;--bg-card:#161a22;--bg-hover:#1c2130;--border:#252d3d;--border-bright:#2e3a52;--text-primary:#f0f2f8;--text-secondary:#a8b4c8;--text-muted:#7a8a9e;--shadow:0 4px 24px #0006}:root[data-theme=default-blue]{--color-primary:#3978d5;--color-primary-hover:#2864b9;--color-secondary:#76a7ed;--color-accent:#62c5ff;--focus-ring:#62c5ff}:root[data-theme=dark-blue]{--color-primary:#174ea6;--color-primary-hover:#103d85;--color-secondary:#4e86d9;--color-accent:#8bb8ff;--focus-ring:#8bb8ff}:root[data-theme=green]{--color-primary:#198754;--color-primary-hover:#126b42;--color-secondary:#63b98b;--color-accent:#54d69a;--focus-ring:#54d69a}:root[data-theme=purple]{--color-primary:#7548b8;--color-primary-hover:#5d3598;--color-secondary:#a884d8;--color-accent:#d0aaff;--focus-ring:#d0aaff}:root[data-theme=orange]{--color-primary:#d66b16;--color-primary-hover:#ae5310;--color-secondary:#f1a35d;--color-accent:#ffc27f;--focus-ring:#ffc27f}:root[data-theme=neutral-gray]{--color-primary:#536273;--color-primary-hover:#3d4a58;--color-secondary:#8b9aaa;--color-accent:#bdc9d4;--focus-ring:#bdc9d4}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg-primary);color:var(--text-primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased}button,input,textarea,select{font-family:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.settings-layout{grid-template-columns:210px minmax(0,760px);gap:28px;max-width:1050px;display:grid}.settings-menu{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);height:fit-content;padding:10px}.settings-menu button{text-align:left;border-radius:var(--radius);width:100%;color:var(--text-secondary);background:0 0;border:0;padding:10px 12px;font-size:14px}.settings-menu button[aria-current=page]{color:var(--text-primary);background:var(--bg-hover);font-weight:600}.settings-panel{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px}.settings-field{color:var(--text-secondary);gap:6px;margin-bottom:18px;font-size:13px;display:grid}.settings-field input,.settings-field select{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-secondary);width:100%;color:var(--text-primary);padding:10px 12px;font-size:14px}.settings-theme-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.theme-card{text-align:left;border:2px solid var(--border);border-radius:var(--radius-lg);color:var(--text-primary);background:var(--bg-secondary);padding:14px;position:relative}.theme-card[aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.theme-swatches{gap:6px;margin:12px 0;display:flex}.theme-swatches span{border-radius:4px;width:28px;height:20px}.theme-mini{color:#fff;background:var(--card-primary);border-radius:4px;padding:7px 9px;font-size:12px;display:inline-block}.theme-check{color:var(--accent);position:absolute;top:12px;right:12px}.settings-actions{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;margin-top:24px;padding-top:18px;display:flex}.primary-button,.secondary-button{border-radius:var(--radius);padding:10px 14px;font-weight:600}.primary-button{background:var(--accent);color:#fff;border:0}.secondary-button{border:1px solid var(--border);color:var(--text-secondary);background:0 0}@media (width<=760px){.settings-layout{grid-template-columns:1fr}.settings-menu{gap:4px;display:flex;overflow-x:auto}.settings-menu button{white-space:nowrap}.settings-theme-grid{grid-template-columns:1fr}}.explorer-toolbar{align-items:center;gap:10px;margin:24px 0 14px;display:flex}.explorer-toolbar select,.explorer-search{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);color:var(--text-primary)}.explorer-toolbar select{padding:10px 12px}.explorer-search{align-items:center;gap:8px;min-width:300px;padding:0 12px;display:flex}.explorer-search input{width:100%;color:var(--text-primary);background:0 0;border:0;outline:0;padding:10px 0}.explorer-table-wrap{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card);overflow-x:auto}.explorer-table{border-collapse:collapse;width:100%;font-size:13px}.explorer-table th{text-align:left;color:var(--text-muted);background:var(--bg-secondary);white-space:nowrap;padding:11px 14px;font-weight:600}.explorer-table td{border-top:1px solid var(--border);color:var(--text-secondary);padding:13px 14px}.explorer-table tbody tr{cursor:pointer}.explorer-table tbody tr:hover{background:var(--bg-hover)}.explorer-table td strong,.explorer-table td small{display:block}.explorer-table td strong{color:var(--text-primary)}.explorer-table td small{color:var(--text-muted);margin-top:3px}.status-pill{background:var(--bg-hover);border-radius:99px;padding:3px 8px;display:inline-block}.status-active{color:var(--green);background:var(--green-dim)}.status-suspended{color:var(--orange)}.status-closed{color:var(--red);background:var(--red-dim)}.explorer-backdrop{z-index:50;background:#0000008c;justify-content:flex-end;display:flex;position:fixed;inset:0}.explorer-detail{border-left:1px solid var(--border);background:var(--bg-card);width:min(620px,100vw);height:100%;box-shadow:var(--shadow);padding:30px;position:relative;overflow-y:auto}.explorer-close{border:1px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);background:0 0;place-items:center;padding:7px;display:grid;position:absolute;top:20px;right:20px}.explorer-detail h2{margin:4px 48px 4px 0;font-size:26px}.explorer-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.explorer-metrics>div{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-secondary);padding:13px}.explorer-metrics span,.explorer-metrics strong{display:block}.explorer-metrics span{color:var(--text-muted);margin-bottom:5px;font-size:12px}.explorer-members{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.explorer-members>div{border-top:1px solid var(--border);justify-content:space-between;gap:12px;padding:12px 14px;display:flex}.explorer-members>div:first-child{border-top:0}.explorer-members strong,.explorer-members span{display:block}.explorer-members strong{font-size:13px}.explorer-members span{color:var(--text-muted);margin-top:3px;font-size:12px}.monthly-usage-title{margin:26px 0 4px}.monthly-usage-hint{color:var(--text-muted);margin:0 0 12px;font-size:12px}.monthly-visual{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-secondary);margin-bottom:12px;overflow:hidden}.monthly-visual-toolbar{border-bottom:1px solid var(--border);background:var(--bg-card);justify-content:space-between;gap:12px;padding:9px;display:flex}.monthly-visual-toolbar>div{gap:5px;display:flex}.monthly-visual-toolbar button{border-radius:var(--radius);color:var(--text-muted);background:0 0;border:1px solid #0000;padding:7px 11px;font-size:12px;font-weight:600}.monthly-visual-toolbar button[aria-pressed=true]{border-color:var(--border);color:var(--text-primary);background:var(--bg-hover)}.monthly-svg-wrap{padding:8px 8px 0;overflow-x:auto}.monthly-svg{width:max(100%,864px);height:190px;display:block}.monthly-grid-line{stroke:var(--border);stroke-width:1px;stroke-dasharray:3 4}.monthly-axis-value,.monthly-axis-month{fill:var(--text-muted);font-size:9px}.monthly-axis-month{text-transform:capitalize}.monthly-line{fill:none;stroke:var(--accent);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.monthly-chart-point circle{fill:var(--bg-card);stroke:var(--accent);stroke-width:3px;transition:r .15s,fill .15s}.monthly-chart-point:hover circle,.monthly-chart-point:focus circle{r:7px;fill:var(--accent)}.monthly-chart-point:focus{outline:none}.monthly-value-tooltip rect{fill:var(--text-primary);stroke:var(--border);stroke-width:1px;filter:drop-shadow(0 3px 6px #00000040)}.monthly-value-tooltip text{fill:var(--bg-primary);font-size:11px;font-weight:700}.monthly-usage-chart{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-secondary);overflow:hidden}.monthly-usage-row{border-top:1px solid var(--border);grid-template-columns:74px minmax(90px,1fr) minmax(190px,1.4fr);align-items:center;gap:12px;padding:10px 13px;display:grid}.monthly-usage-row:first-child{border-top:0}.monthly-usage-row>strong{text-transform:capitalize;font-size:12px}.monthly-usage-row>div:last-child{text-align:right}.monthly-usage-row>div:last-child strong,.monthly-usage-row>div:last-child span{display:block}.monthly-usage-row>div:last-child strong{font-size:12px}.monthly-usage-row>div:last-child span{color:var(--text-muted);margin-top:3px;font-size:11px}.monthly-usage-bar{background:var(--bg-hover);border-radius:99px;height:8px;overflow:hidden}.monthly-usage-bar span{border-radius:inherit;background:linear-gradient(90deg, var(--accent), var(--blue));height:100%;display:block}@media (width<=760px){.explorer-toolbar{flex-direction:column;align-items:stretch}.explorer-search{min-width:0}.explorer-metrics{grid-template-columns:1fr}}@media (width<=520px){.monthly-usage-row{grid-template-columns:64px 1fr}.monthly-usage-row>div:last-child{text-align:left;grid-column:1/-1}}@media (width<=620px){.monthly-visual-toolbar{flex-direction:column;align-items:stretch}.monthly-visual-toolbar>div{overflow-x:auto}}.platform-admin{max-width:1440px;margin:0 auto}.admin-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:22px;display:flex}.admin-header h1{font-family:var(--font-display);margin:5px 0;font-size:34px}.admin-header p{color:var(--text-secondary);margin:0}.admin-eyebrow{color:var(--accent);letter-spacing:.05em;text-transform:uppercase;align-items:center;gap:7px;font-size:12px;font-weight:700;display:flex}.admin-refresh{white-space:nowrap;align-items:center;gap:8px;display:flex}.admin-tabs{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card);gap:5px;margin-bottom:24px;padding:5px;display:flex;overflow-x:auto}.admin-tabs button{border-radius:var(--radius);min-width:150px;color:var(--text-secondary);background:0 0;border:0;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-weight:600;display:flex}.admin-tabs button[aria-current=page]{color:var(--text-primary);background:var(--bg-hover);box-shadow:inset 0 0 0 1px var(--border)}.admin-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.admin-metric{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card);align-items:flex-start;gap:13px;min-height:104px;padding:18px;display:flex}.admin-metric-icon{height:38px;color:var(--accent);background:var(--accent-dim);border-radius:10px;flex:0 0 38px;place-items:center;display:grid}.admin-metric span,.admin-metric strong,.admin-metric small{display:block}.admin-metric span{color:var(--text-muted);font-size:12px;font-weight:600}.admin-metric strong{margin-top:5px;font-size:24px;line-height:1.1}.admin-metric small{color:var(--text-secondary);margin-top:6px}.admin-tone-warning{border-color:var(--orange)}.admin-tone-warning .admin-metric-icon{color:var(--orange)}.admin-tone-danger{border-color:var(--red)}.admin-tone-danger .admin-metric-icon{color:var(--red);background:var(--red-dim)}.admin-panel{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card);overflow:hidden}.admin-panel-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex}.admin-panel-heading h2{margin:0 0 4px;font-size:17px}.admin-panel-heading p{color:var(--text-muted);margin:0;font-size:12px}.admin-count{min-width:32px;height:32px;color:var(--text-primary);background:var(--bg-hover);border-radius:99px;place-items:center;font-weight:700;display:grid}.admin-list>div{border-top:1px solid var(--border);grid-template-columns:minmax(180px,.8fr) minmax(260px,1.6fr);gap:20px;padding:13px 20px;display:grid}.admin-list>div:first-child{border-top:0}.admin-list strong,.admin-list span{display:block}.admin-list strong{overflow-wrap:anywhere;font-size:13px}.admin-list span{color:var(--text-muted);margin-top:4px;font-size:12px}.admin-list.compact>div{grid-template-columns:minmax(180px,1fr) auto}.admin-empty,.admin-state{color:var(--text-muted);text-align:center;padding:28px 20px}.admin-error{color:var(--red)}.admin-error-cell{text-overflow:ellipsis;white-space:nowrap;max-width:420px;overflow:hidden;color:var(--red)!important}.admin-two-column{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.admin-usage{text-align:right}.platform-admin .explorer-toolbar>span{color:var(--text-muted);font-size:13px}.platform-admin .status-processing{color:var(--blue)}.platform-admin .status-queued{color:var(--orange)}.platform-admin .status-failed{color:var(--red);background:var(--red-dim)}.platform-admin .status-completed{color:var(--green);background:var(--green-dim)}.platform-admin .status-cancelled{color:var(--text-muted)}.admin-organisation-filter{min-width:300px;position:relative}.admin-organisation-combobox{border:1px solid var(--border);border-radius:var(--radius);min-height:40px;color:var(--text-muted);background:var(--bg-card);align-items:center;padding-left:11px;display:flex}.admin-organisation-combobox:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-dim)}.admin-organisation-combobox input{min-width:0;color:var(--text-primary);background:0 0;border:0;outline:0;flex:1;padding:9px 8px}.admin-organisation-combobox button{border-radius:var(--radius);height:30px;color:var(--text-muted);background:0 0;border:0;flex:0 0 30px;place-items:center;margin-right:3px;padding:0;display:grid}.admin-organisation-combobox button:hover{color:var(--text-primary);background:var(--bg-hover)}.admin-combobox-clear{color:var(--red)!important}.admin-organisation-options{z-index:20;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);max-height:280px;box-shadow:var(--shadow);position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.admin-organisation-options>div{color:var(--text-muted);padding:12px;font-size:12px}.admin-organisation-options button{border:0;border-top:1px solid var(--border);width:100%;color:var(--text-primary);text-align:left;background:0 0;padding:10px 12px;display:block}.admin-organisation-options button:first-of-type{border-top:0}.admin-organisation-options button:hover,.admin-organisation-options button:focus-visible{background:var(--bg-hover)}.admin-organisation-options strong,.admin-organisation-options span{display:block}.admin-organisation-options span{color:var(--text-muted);margin-top:3px;font-size:11px}@media (width<=1050px){.admin-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-two-column{grid-template-columns:1fr}}@media (width<=760px){.admin-header{flex-direction:column}.admin-metric-grid{grid-template-columns:1fr}.admin-tabs button{min-width:132px}.admin-list>div{grid-template-columns:1fr;gap:8px}.admin-organisation-filter{min-width:0}}.organisation-admin-detail{max-width:1400px;margin:0 auto}.admin-back-link{color:var(--text-secondary);align-items:center;gap:7px;margin-bottom:20px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.admin-back-link:hover{color:var(--text-primary)}.organisation-detail-header{align-items:center;gap:16px;margin-bottom:22px;display:flex}.organisation-detail-icon{height:54px;color:var(--accent);background:var(--accent-dim);border-radius:14px;flex:0 0 54px;place-items:center;display:grid}.organisation-detail-header h1{font-family:var(--font-display);margin:4px 0;font-size:34px}.organisation-detail-header p{color:var(--text-muted);margin:0}.organisation-detail-section{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card);margin-top:16px;padding:22px}.organisation-detail-section-heading{margin-bottom:16px}.organisation-detail-section-heading h2{align-items:center;gap:8px;margin:0 0 4px;font-size:18px;display:flex}.organisation-detail-section-heading p{color:var(--text-muted);margin:0;font-size:12px}.explorer-metrics.full{grid-template-columns:repeat(3,minmax(0,1fr))}.explorer-metrics.full small{color:var(--text-muted);margin-top:7px;font-size:11px;display:block}.monthly-detail-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.monthly-detail-grid>div{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-secondary);padding:12px}.monthly-detail-grid strong,.monthly-detail-grid span,.monthly-detail-grid small{display:block}.monthly-detail-grid strong{text-transform:capitalize;font-size:12px}.monthly-detail-grid span,.monthly-detail-grid small{color:var(--text-muted);margin-top:5px;font-size:11px}@media (width<=1050px){.explorer-metrics.full,.monthly-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=620px){.organisation-detail-section{padding:15px}.explorer-metrics.full,.monthly-detail-grid{grid-template-columns:1fr}}a{color:var(--blue)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-bright);border-radius:var(--radius)}.spin{animation:1s linear infinite spin}.pulse{animation:1.4s ease-in-out infinite pulse}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}
