:root{--bg: #f3f5f9;--card: #ffffff;--line: #dde3ef;--text: #102039;--muted: #5f6f85;--blue: #1768e5;--green: #168a5d;--orange: #bb6c16;--red: #bc2f2f;--shadow: 0 16px 40px rgba(16, 32, 57, .08);--fs-2xs: 11px;--fs-xs: 12px;--fs-sm: 13px;--fs-md: 14px;--fs-lg: 15px;--fs-xl: 16px;--fs-2xl: 18px;--fs-display-sm: 24px;--fs-display-md: 30px;--fs-display-lg: 34px;--fs-notification-title: var(--fs-2xl);--fs-notification-item-title: var(--fs-xl);--fs-notification-item-body: var(--fs-md);--fs-notification-item-meta: var(--fs-sm);--fs-notification-cta: var(--fs-lg)}*{box-sizing:border-box}body{margin:0;color:var(--text);font-size:var(--fs-md);line-height:1.4;background:radial-gradient(1200px 600px at 20% -20%,rgba(23,104,229,.14),transparent),radial-gradient(900px 500px at 100% 0%,rgba(22,138,93,.12),transparent),var(--bg);font-family:Segoe UI,IBM Plex Sans,sans-serif}h1,h2,h3,p{margin:0}button,input,select{font:inherit}.app-shell{min-height:100vh;display:grid;grid-template-columns:260px 1fr}.sidebar{padding:24px;border-right:1px solid var(--line);background:linear-gradient(165deg,#0f213c,#1e3a62);color:#f4f8ff;display:flex;flex-direction:column;gap:20px}.brand-block{display:grid;gap:10px}.brand-logo{width:146px;height:auto;display:block}.brand-eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:var(--fs-2xs);opacity:.8}.brand-title{margin-top:0;font-size:var(--fs-display-sm)}.nav-stack,.sidebar-section{display:grid;gap:10px}.sidebar-section-title{margin:0;padding:0 4px;font-size:var(--fs-xs);font-weight:700;letter-spacing:.1em;color:#9eb6d7}.sidebar-section-panel{display:grid;gap:8px;padding:10px;border-radius:14px;border:1px solid rgba(255,255,255,.18);background:#ffffff0d}.nav-item{display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:10px;color:#d7e4f8;text-decoration:none;transition:all .2s ease}.nav-item:hover,.nav-item.active{background:#ffffff1f;color:#fff}.logout-btn{margin-top:auto;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.35);border-radius:10px;padding:10px 12px;display:inline-flex;align-items:center;gap:8px;cursor:pointer}.content-shell{display:flex;flex-direction:column}.topbar{border-bottom:1px solid var(--line);padding:14px 24px;background:#fffc;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.topbar-content{display:flex;align-items:center;justify-content:space-between;gap:12px}.topbar-label{font-size:var(--fs-xs);color:var(--muted)}.topbar-actions{display:inline-flex;align-items:center;gap:10px;padding:8px 12px;border-radius:12px}.topbar-icon-btn{width:38px;height:38px;border-radius:999px;border:1px solid #c8d4e6;background:#f1f6fb;color:#425776;display:inline-flex;align-items:center;justify-content:center;position:relative;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.topbar-icon-btn:hover{border-color:#adc0da;background:#e6eef9;color:#253851}.topbar-icon-btn.is-open{border-color:#7da2d3;background:#e8f0fb;color:#1f3e62}.topbar-notifications{position:relative}.topbar-notification-indicator{position:absolute;top:8px;right:8px;width:8px;height:8px;border-radius:999px;background:#f04a5f;border:1px solid #fff}.topbar-notification-menu{position:absolute;top:calc(100% + 10px);right:0;width:360px;border:1px solid #d4deec;border-radius:12px;background:#fff;box-shadow:0 18px 36px #10203929;overflow:hidden;z-index:60}.topbar-notification-head{min-height:58px;padding:0 16px;border-bottom:1px solid #dde4ef;display:flex;align-items:center;justify-content:space-between;gap:8px}.topbar-notification-head h4{font-size:var(--fs-notification-title);font-weight:800;letter-spacing:-.02em;color:#253851}.topbar-notification-head-side{display:inline-flex;align-items:center;gap:10px;color:#5a6f8c}.topbar-notification-badge{border-radius:8px;padding:4px 10px;font-size:var(--fs-md);font-weight:800;color:#665ce7;background:#ece9ff}.topbar-notification-list{max-height:320px;overflow-y:auto}.topbar-notification-item{border-bottom:1px solid #e2e8f2;padding:12px 16px;display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:12px}.topbar-notification-avatar{width:44px;height:44px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:var(--fs-md);font-weight:800}.topbar-notification-avatar.is-indigo{background:#d9ddff;color:#4f5cd2}.topbar-notification-avatar.is-rose{background:#ffe0e6;color:#c94a5a}.topbar-notification-avatar.is-slate{background:#e3e7ee;color:#5c6675}.topbar-notification-avatar.is-mint{background:#d8f3e6;color:#278059}.topbar-notification-copy strong{display:block;font-size:var(--fs-notification-item-title);font-weight:700;color:#303d53}.topbar-notification-copy p{margin-top:4px;font-size:var(--fs-notification-item-body);line-height:1.35;color:#5a667a}.topbar-notification-copy small{display:block;margin-top:8px;font-size:var(--fs-notification-item-meta);color:#8b98ac}.topbar-notification-item-dot{width:8px;height:8px;border-radius:999px;background:#6959f0;margin-top:9px}.topbar-notification-all-btn{width:calc(100% - 32px);margin:14px 16px 16px;border:0;border-radius:6px;min-height:44px;background:linear-gradient(135deg,#6d68e8,#5f62e3);color:#fff;font-size:var(--fs-notification-cta);font-weight:800;cursor:pointer}.topbar-notification-all-btn:hover{background:linear-gradient(135deg,#7570ee,#686ae8)}.topbar-profile{position:relative}.topbar-profile-menu{position:absolute;top:calc(100% + 10px);right:0;width:240px;border:1px solid #d5dfec;border-radius:16px;background:#fff;box-shadow:0 16px 34px #10203924;padding:14px;display:grid;gap:6px;z-index:50}.topbar-profile-head strong{display:block;font-size:var(--fs-2xl);font-weight:800;color:#1d3048}.topbar-profile-divider{height:1px;background:#dbe4ef;margin:2px 0 6px}.topbar-profile-item{border:0;border-radius:10px;background:transparent;color:#3f5676;min-height:40px;padding:0 10px;display:inline-flex;align-items:center;gap:8px;font-size:var(--fs-lg);font-weight:700;cursor:pointer;text-align:left}.topbar-profile-item:hover{background:#eef3fa;color:#223d5e}.main-content{padding:24px}.page-stack{display:grid;gap:16px}.page-head h1{font-size:var(--fs-display-md)}.page-head p{margin-top:6px;color:var(--muted)}.stat-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.stat-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px;box-shadow:var(--shadow)}.stat-head{display:flex;justify-content:space-between;color:var(--muted)}.stat-card h3{font-size:var(--fs-display-lg);margin-top:6px}.stat-card small{color:var(--muted)}.accent-blue{border-left:4px solid var(--blue)}.accent-green{border-left:4px solid var(--green)}.accent-orange{border-left:4px solid var(--orange)}.accent-red{border-left:4px solid var(--red)}.panel-grid{display:grid;gap:16px}.panel-grid.two-columns{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.panel-card{background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}.panel-head{border-bottom:1px solid var(--line);padding:14px 16px;display:flex;gap:12px;justify-content:space-between;align-items:center}.panel-head p{margin-top:4px;color:var(--muted);font-size:var(--fs-md)}.panel-body{padding:16px}.status-box{border-radius:10px;padding:10px 12px;border:1px solid var(--line);background:#fff}.status-box strong{display:block}.status-box small{color:var(--muted)}.status-box.success{border-color:#afe5ca;background:#eefdf5}.status-box.error{border-color:#f3b7b7;background:#fff3f3}.status-box.warning{border-color:#f1d68a;background:#fff9e8}.undo-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.undo-actions{display:inline-flex;align-items:center;gap:8px}.list-stack{list-style:none;margin:0;padding:0;display:grid;gap:10px}.list-stack li{border:1px solid var(--line);border-radius:10px;padding:10px;display:flex;justify-content:space-between;gap:12px}.list-stack li small{display:block;margin-top:4px;color:var(--muted)}.dashboard-activity-list{--activity-row-height: 70px;max-height:calc((var(--activity-row-height) * 5) + (10px * 4));overflow-y:auto;padding-right:4px}.dashboard-activity-list li{min-height:var(--activity-row-height)}.dashboard-top-companies-list{--top-company-row-height: 62px;max-height:calc((var(--top-company-row-height) * 5) + (10px * 4));overflow-y:auto;padding-right:4px}.dashboard-top-companies-list li{min-height:var(--top-company-row-height)}.mini-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}.mini-stats div{border:1px solid var(--line);border-radius:10px;padding:10px}.mini-stats strong{font-size:var(--fs-display-sm);display:block}.mini-stats span{color:var(--muted);font-size:var(--fs-sm)}.search-row{margin-bottom:12px;border:1px solid var(--line);border-radius:10px;padding:10px;display:flex;align-items:center;gap:8px}.search-row input{width:100%;border:0;outline:none;background:transparent}.filters-row{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:12px;margin-bottom:12px}.select-field{display:grid;gap:6px;font-size:var(--fs-sm);font-weight:600}.select-field select{border:1px solid var(--line);border-radius:10px;background:#fff;padding:10px}.filter-grid{display:grid;gap:12px}.table-toolbar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.table-toolbar label{min-width:180px;display:grid;gap:6px;font-weight:600;font-size:var(--fs-sm)}.table-toolbar input,.table-toolbar select{border:1px solid var(--line);border-radius:10px;background:#fff;padding:8px 10px}.table-wrap{overflow-x:auto}.users-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:12px;margin-bottom:10px}.users-search-row{margin-bottom:0}.users-company-select{min-width:280px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:10px}.users-filter-field{display:grid;gap:6px;font-size:var(--fs-sm);font-weight:600}.users-filter-field select{border:1px solid var(--line);border-radius:10px;background:#fff;padding:10px}.users-summary-strip{margin-bottom:12px;display:flex;flex-wrap:wrap;gap:8px}.users-summary-pill{display:inline-flex;align-items:center;border-radius:999px;border:1px solid #d5deec;background:#f7faff;color:#344d6d;padding:6px 10px;font-size:var(--fs-sm);font-weight:600}.users-summary-pill.is-danger{border-color:#edc6c6;background:#fff2f2;color:#9b2d2d}.users-table-wrap{border:1px solid var(--line);border-radius:12px;background:#fff}table{width:100%;border-collapse:collapse}th,td{text-align:left;border-bottom:1px solid var(--line);padding:12px 8px;vertical-align:top}td small{display:block;color:var(--muted);margin-top:4px}.users-table th{font-size:var(--fs-sm);color:#2d4361;background:#f6f9fe;white-space:nowrap}.users-table td{padding-top:10px;padding-bottom:10px}.users-table tbody tr:hover{background:#fbfdff}.users-user-cell{min-width:220px}.users-user-name{display:block;font-size:var(--fs-lg)}.users-user-email{font-size:var(--fs-sm)}.users-role-chip{display:inline-flex;align-items:center;min-height:28px;border-radius:999px;border:1px solid #d5deec;background:#f5f8fd;color:#2d4361;font-size:var(--fs-sm);font-weight:600;padding:0 10px;white-space:nowrap}.users-security-cell{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:170px}.users-security-badge{align-self:flex-start}.users-security-meta{display:block;font-size:var(--fs-sm);line-height:1.35;color:var(--muted);white-space:nowrap}.users-last-login{white-space:nowrap;min-width:140px}.users-table-actions{min-width:260px}.table-actions{display:flex;flex-wrap:wrap;gap:8px}.ghost-chip{display:inline-flex;align-items:center;justify-content:center;min-width:34px;min-height:34px;border-radius:10px;border:1px solid var(--line);background:#f7f9fd;color:#4e6482}.pagination-row{margin-top:12px;display:flex;align-items:center;justify-content:space-between;gap:10px}.pagination-actions{display:inline-flex;align-items:center;gap:8px}.ledger-positive{color:#0d6a44}.ledger-negative{color:#9b2d2d}.trend-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.dashboard-credit-trend-list{--credit-trend-row-height: 24px;max-height:calc((var(--credit-trend-row-height) * 5) + (8px * 4));overflow-y:auto;padding-right:4px}.dashboard-credit-trend-list .trend-item{min-height:var(--credit-trend-row-height)}.trend-item{display:grid;grid-template-columns:132px 1fr 64px;align-items:center;gap:10px}.trend-item>span{color:var(--muted);font-size:var(--fs-sm)}.trend-bar-track{height:10px;border-radius:999px;background:#e8edf6;overflow:hidden}.trend-bar-fill{display:block;height:100%;border-radius:999px}.trend-bar-fill.is-positive{background:linear-gradient(90deg,#2d9d68,#37b97a)}.trend-bar-fill.is-negative{background:linear-gradient(90deg,#c63f4d,#df5f6b)}.badge{border-radius:999px;font-size:var(--fs-xs);padding:5px 10px}.badge.active{color:#0d6a44;background:#dff8ea}.badge.passive{color:#9b2d2d;background:#fde5e5}.primary-btn,.ghost-btn{border-radius:10px;border:1px solid transparent;padding:8px 12px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.primary-btn{background:linear-gradient(135deg,#1768e5,#0f4ab3);color:#fff}.primary-btn:disabled,.ghost-btn:disabled{opacity:.6;cursor:not-allowed}.ghost-btn{background:#f7f9fd;border-color:var(--line);color:var(--text)}.form-grid{display:grid;gap:12px}.company-form{gap:14px}.company-form-section{border:1px solid var(--line);border-radius:12px;background:#f8fbff;padding:12px;display:grid;gap:10px}.company-form-section h4{margin:0;font-size:var(--fs-lg);font-weight:700;color:var(--text)}.company-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.company-form-grid .field-span-2{grid-column:1 / -1}.company-form-actions{display:flex;justify-content:flex-end}.form-grid label{display:grid;gap:6px;font-weight:600;font-size:var(--fs-md)}.form-grid input:not([type=checkbox]),.form-grid select,.form-grid textarea{border:1px solid var(--line);border-radius:10px;padding:10px;background:#fff}.checkbox-row input[type=checkbox]{width:16px;height:16px;margin:0}.form-grid textarea{resize:vertical;min-height:120px}.checkbox-row{display:flex!important;align-items:center;gap:8px;font-weight:500!important}.inline-fields{display:flex;gap:12px;flex-wrap:wrap}.inline-fields label{min-width:220px;display:grid;gap:6px}.modal-backdrop{position:fixed;inset:0;background:#0c182c80;display:grid;place-items:center;padding:18px;z-index:40}.modal-shell{width:min(740px,100%);background:#fff;border-radius:14px;border:1px solid var(--line);overflow:hidden}.modal-head{padding:14px 16px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.modal-body{max-height:72vh;overflow:auto;padding:16px}.modal-inline-actions{display:inline-flex;justify-content:flex-end;gap:8px}.empty-state{border:1px dashed var(--line);border-radius:10px;padding:20px;text-align:center;color:var(--muted)}.login-shell{min-height:100vh;display:grid;place-items:center;padding:20px}.login-card{width:min(480px,100%);background:#fff;border-radius:16px;border:1px solid var(--line);box-shadow:var(--shadow);padding:24px}.login-head{margin-bottom:18px}.login-logo{width:164px;height:auto;display:block}.login-head span{width:42px;height:42px;display:inline-grid;place-items:center;border-radius:999px;background:#1768e5;color:#fff}.login-head h1{margin-top:12px}.login-head p{margin-top:6px;color:var(--muted)}@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid rgba(255,255,255,.16)}.topbar-content{flex-wrap:wrap}.topbar-actions{margin-left:auto}.topbar-profile-menu{width:min(240px,calc(100vw - 34px))}.topbar-notification-menu{width:min(360px,calc(100vw - 34px))}.table-toolbar label{min-width:min(220px,100%);width:100%}.users-toolbar,.filters-row{grid-template-columns:1fr}.users-filter-field{width:100%}.users-last-login{white-space:normal;min-width:120px}.users-table-actions{min-width:220px}.pagination-row,.undo-row{flex-direction:column;align-items:flex-start}.company-form-grid{grid-template-columns:1fr}.company-form-grid .field-span-2{grid-column:auto}.company-form-actions .primary-btn{width:100%;justify-content:center}}
