:root{--navy:#0e1f38;--navy-2:#16294a;--accent:#2f6fed;--accent-hover:#245ccc;--bg:#f4f6fa;--card:#fff;--text:#1a2333;--text-dim:#64708a;--border:#e3e8f0;--danger:#d3364b;--success:#1e9e5a;--radius:10px;color:var(--text);font-family:Segoe UI,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}html,body,#root{background:var(--bg);height:100%;margin:0}.boot-screen{height:100vh;color:var(--text-dim);place-items:center;font-size:15px;display:grid}.login-wrap{background:linear-gradient(160deg, var(--navy) 0%, var(--navy-2) 60%, #1d3a6b 100%);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:var(--card);border-radius:14px;flex-direction:column;gap:16px;width:100%;max-width:380px;padding:36px 32px;display:flex;box-shadow:0 24px 60px #060f2173}.login-brand{text-align:center;margin-bottom:8px}.login-favicon{width:48px;height:48px;image-rendering:-webkit-optimize-contrast}.login-brand h1{margin:12px 0 2px;font-size:20px}.login-brand p{color:var(--text-dim);margin:0;font-size:13px}.login-card label{color:var(--text-dim);flex-direction:column;gap:6px;font-size:13px;font-weight:600;display:flex}.login-card input{border:1px solid var(--border);border-radius:8px;outline:none;padding:10px 12px;font-size:14px}.login-card input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #2f6fed26}.login-card button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;margin-top:4px;padding:11px;font-size:14px;font-weight:600}.login-card button:hover{background:var(--accent-hover)}.login-card button:disabled{opacity:.6;cursor:default}.login-error{color:var(--danger);background:#fdecef;border-radius:8px;padding:10px 12px;font-size:13px}.app-shell{min-height:100vh;display:flex}.sidebar{background:var(--navy);color:#c8d2e4;flex-direction:column;flex-shrink:0;width:232px;height:100vh;display:flex;position:sticky;top:0}.sidebar-brand{border-bottom:1px solid #ffffff14;align-items:center;gap:10px;padding:20px 18px;display:flex}.sidebar-title{color:#fff;font-size:17px;font-weight:700}.sidebar-logo-img{width:100%;max-width:186px;height:auto;display:block}.sidebar nav{flex-direction:column;flex:1;gap:2px;padding:12px 10px;display:flex}.sidebar nav a{color:#c8d2e4;border-radius:8px;padding:10px 12px;font-size:14px;text-decoration:none}.sidebar nav a:hover{color:#fff;background:#ffffff12}.sidebar nav a.active{background:var(--accent);color:#fff;font-weight:600}.sidebar-footer{border-top:1px solid #ffffff14;padding:14px 16px 18px}.sidebar-rules-link{color:#8fa0bd;margin-bottom:10px;font-size:11.5px;text-decoration:none;display:block}.sidebar-rules-link:hover,.sidebar-rules-link.active{color:#fff;text-decoration:underline}.rules-page-list{max-width:720px;font-size:14px}.sidebar-user-name{color:#fff;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.sidebar-user-role{color:#8fa0bd;margin-top:2px;font-size:12px}.signout{color:#c8d2e4;cursor:pointer;background:0 0;border:1px solid #ffffff40;border-radius:8px;width:100%;margin-top:10px;padding:8px;font-size:13px}.signout:hover{color:#fff;background:#ffffff14}.content{flex:1;min-width:0;padding:28px 32px}.top-nav{border-bottom:1px solid var(--border);gap:4px;margin:-12px 0 20px;padding-bottom:10px;display:flex}.top-nav a{color:var(--text-dim);border-radius:6px;padding:5px 12px;font-size:12.5px;font-weight:600;text-decoration:none}.top-nav a:hover{color:var(--accent);background:#2f6fed14}.top-nav a.active{background:var(--navy);color:#fff}.training-section h3{margin-bottom:10px}.training-empty{color:var(--text-dim);margin:0;font-size:14px}.page h1{margin:0 0 18px;font-size:22px}.placeholder-card{background:var(--card);border:1px dashed var(--border);border-radius:var(--radius);text-align:center;color:var(--text-dim);padding:48px 32px;font-size:14px}.page-sub{color:var(--text-dim);margin:-8px 0 20px;font-size:14px}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:18px;padding:18px 20px}.card h3{margin:0 0 12px;font-size:15px}.numbers-form{flex-wrap:wrap;align-items:flex-end;gap:14px;display:flex}.numbers-form label,.activity-date label{color:var(--text-dim);flex-direction:column;gap:5px;font-size:12px;font-weight:600;display:flex}.numbers-form input,.activity-date input{border:1px solid var(--border);border-radius:8px;width:160px;padding:8px 10px;font-size:14px}button.primary{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:9px 16px;font-size:13px;font-weight:600}button.primary:hover{background:var(--accent-hover)}.upload-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px;display:grid}.upload-slot{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px}.upload-slot-disabled{opacity:.55}.upload-slot h3{margin:0 0 4px;font-size:15px}.upload-hint{color:var(--text-dim);margin:0;font-size:12.5px}.upload-slot-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.file-button{border:1px solid var(--accent);color:var(--accent);cursor:pointer;border-radius:8px;flex-shrink:0;padding:8px 14px;font-size:13px;font-weight:600}.file-button:hover{background:#2f6fed14}.upload-preview{border-top:1px solid var(--border);margin-top:12px;padding-top:12px}.upload-filename{margin-bottom:6px;font-size:13px;font-weight:600}.upload-preview ul{color:var(--text-dim);margin:0 0 10px;padding-left:18px;font-size:13px}.upload-warning{color:#8a6116;background:#fff7e8;border:1px solid #f2d99b;border-radius:8px;margin-bottom:10px;padding:8px 10px;font-size:12.5px}.upload-status{color:var(--text-dim);margin-top:10px;font-size:13px}.upload-status.success{color:var(--success);font-weight:600}.upload-status.error{color:var(--danger);font-weight:600}.schedule-paste{border:1px solid var(--border);resize:vertical;border-radius:8px;width:100%;margin-bottom:10px;padding:10px 12px;font-family:Consolas,monospace;font-size:13px}.name-mapping{margin:12px 0}.name-mapping-title{color:var(--text-dim);margin-bottom:6px;font-size:12.5px;font-weight:600}.name-mapping-row{align-items:center;gap:8px;margin-bottom:6px;font-size:13px;display:flex}.name-mapping-row input{border:1px solid var(--border);border-radius:8px;width:220px;padding:6px 10px;font-size:13px}.schedule-table{border-collapse:collapse;margin:10px 0 14px;font-size:12.5px}.schedule-table th,.schedule-table td{border:1px solid var(--border);text-align:left;padding:4px 10px}.schedule-table th{background:var(--bg);color:var(--text-dim)}.range-bar{flex-wrap:wrap;align-items:flex-end;gap:14px;display:flex}.range-bar label{color:var(--text-dim);flex-direction:column;gap:5px;font-size:12px;font-weight:600;display:flex}.range-bar input{border:1px solid var(--border);border-radius:8px;padding:8px 10px;font-size:14px}.search-label{flex:1;min-width:220px}.search-label input{width:100%}.table-card{overflow-x:auto}.table-meta{color:var(--text-dim);margin-bottom:8px;font-size:12.5px}.stats-table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:13px}.stats-table th,.stats-table td{border-bottom:1px solid var(--border);text-align:left;padding:8px 12px}.stats-table th{background:var(--bg);color:var(--text-dim);text-transform:uppercase;letter-spacing:.03em;font-size:12px}.stats-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.stats-table th.sortable:hover{color:var(--accent)}.stats-table tfoot td{border-top:2px solid var(--text);background:var(--bg);font-weight:700}.table-note{color:var(--text-dim);margin:10px 0 0;font-size:12px}.pager{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.pager-field{color:var(--text-dim);align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex}.pager-field select{border:1px solid var(--border);border-radius:6px;padding:5px 8px;font-size:12.5px}.pager button:disabled{opacity:.4;cursor:default}.online-cards{flex-wrap:wrap;gap:12px;display:flex}.online-card{background:var(--bg);border:1px solid var(--border);border-radius:10px;align-items:center;gap:10px;padding:10px 16px;display:flex}.online-dot{background:var(--success);width:10px;height:10px;box-shadow:0 0 6px var(--success);border-radius:50%;flex-shrink:0}.online-name{font-size:13.5px;font-weight:700}.online-detail{color:var(--text-dim);font-size:12px}.review-actions{gap:10px;margin-top:12px;display:flex}.review-notes{border:1px solid var(--border);border-radius:8px;flex:1;padding:8px 12px;font-size:13px}.review-log{border-top:1px solid var(--border);margin-top:12px;padding-top:8px}.review-log-row{color:var(--text-dim);padding:3px 0;font-size:12px}.usage-row{cursor:pointer}.usage-row:hover td{background:var(--bg)}.usage-day-row td{background:var(--bg);color:var(--text-dim);font-size:12px}.usage-day-cell{padding-left:34px!important}.sales-editor select{border:1px solid var(--border);border-radius:6px;padding:5px 8px;font-size:12.5px}.sales-editor tr.overridden td{background:#fff7e0}.sales-editor tr.dup-sale td{background:#fdeaea}.sales-editor tr.unwound td{color:#98a1b0;background:#f1f2f4}.sales-editor tr.unwound select{color:#6b7688;border-color:#98a1b0;font-weight:700}.sales-editor tr.overridden select{border-color:#e8b30c;font-weight:700}.sales-lead{color:var(--text-dim);max-width:280px;font-size:12px}.sales-lead select{max-width:270px;color:var(--text-dim)}.sales-lead select.lead-overridden{color:var(--text);border-color:#e8b30c;font-weight:700}.sales-lead-na{color:#98a1b0;font-weight:700}.sales-vehicle{text-overflow:ellipsis;max-width:180px;overflow:hidden}.auto-dimmed{color:#b3bccb;text-decoration:line-through}.dup-alert{z-index:1000;background:var(--card);border:2px solid var(--danger);border-radius:12px;width:390px;max-width:calc(100vw - 24px);position:fixed;overflow:hidden;box-shadow:0 16px 44px #060f2159}.dup-alert-head{background:var(--danger);color:#fff;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;justify-content:space-between;align-items:center;padding:10px 14px;font-size:13.5px;font-weight:700;display:flex}.dup-alert-head:active{cursor:grabbing}.dup-alert-hint{opacity:.75;font-size:10.5px;font-weight:500}.dup-alert-body{max-height:40vh;padding:10px 14px;overflow-y:auto}.dup-alert-group{border-bottom:1px solid var(--border);padding:8px 0}.dup-alert-group:last-child{border-bottom:none}.dup-alert-clickable{cursor:pointer}.dup-alert-clickable:hover .dup-alert-customer{color:var(--accent);text-decoration:underline}.dup-alert-customer{font-size:13px;font-weight:700}.dup-alert-deal{color:var(--text-dim);padding-left:10px;font-size:12px}.dup-alert-actions{border-top:1px solid var(--border);gap:8px;padding:10px 14px;display:flex}.users-scroll{max-height:calc(100vh - 250px);overflow:auto}.users-scroll thead th{z-index:2;background:var(--bg);position:sticky;top:0}.users-table{font-size:11.5px}.users-table input,.users-table select{border:1px solid var(--border);border-radius:6px;min-width:78px;padding:5px 6px;font-size:11.5px}.users-table td,.users-table th{vertical-align:middle;padding:5px 7px}.users-report-name{white-space:nowrap;font-weight:600}.users-mid input{width:60px;min-width:50px}.users-actions{white-space:nowrap}.users-actions>button{vertical-align:middle;align-items:center;margin-right:5px;display:inline-flex}.users-actions>button:last-child{margin-right:0}.users-actions .primary{padding:5px 8px;font-size:11px}.users-actions .primary:disabled{opacity:.35;cursor:default}.acct-chip{white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:10.5px;font-weight:700;display:inline-block}.acct-chip.active{color:var(--success);background:#e2f6ea}.acct-chip.pending{color:#8a6116;background:#fff3d6}.acct-chip.none{background:var(--bg);color:var(--text-dim)}.login-success{color:var(--success);background:#e2f6ea;border-radius:8px;padding:10px 12px;font-size:13px;font-weight:600}.ack-card{max-width:520px}.ack-rules{margin:0 0 14px;padding-left:22px;font-size:13px;line-height:1.5}.ack-rules li{margin-bottom:8px}.mfa-qr{border:1px solid var(--border);background:#fff;border-radius:10px;width:190px;height:190px;margin:0 auto;padding:8px;display:block}.mfa-card code{word-break:break-all;font-size:11px}.mfa-signout{color:var(--text-dim);cursor:pointer;background:0 0;border:none;font-size:12.5px;text-decoration:underline}.login-fine-print{color:var(--text-dim);text-align:center;margin:0;font-size:12px}.sp-location-header{color:var(--text);border-bottom:2px solid var(--accent);align-items:baseline;gap:10px;margin:26px 0 10px;padding-bottom:6px;font-size:16px;font-weight:800;display:flex}.sp-location-header span{color:var(--text-dim);font-size:12px;font-weight:600}.sp-block{padding:0;overflow:hidden}.sp-head{background:var(--navy);color:#fff;justify-content:space-between;align-items:center;gap:16px;padding:12px 18px;display:flex}.sp-head-right{align-items:center;gap:14px;display:flex}.sp-name{overflow-wrap:anywhere;font-size:20px;font-weight:700;line-height:1.15}.sp-store{color:#8fa0bd;margin-left:8px;font-size:12px;font-weight:600}.sp-solds{white-space:nowrap;color:#c8d2e4;font-size:17px;font-weight:600}.sp-solds strong{color:#fff;vertical-align:-2px;margin-left:10px;font-size:28px;font-weight:400}.sp-stats{border-bottom:1px solid var(--border);background:#eaf2fd;padding:10px 18px 12px}.sp-stat-row{grid-template-columns:repeat(5,minmax(0,1fr));gap:0 16px;display:grid}.sp-stat-labels{letter-spacing:.03em;text-transform:uppercase;color:#5b7091;font-size:11.5px;font-weight:700}.sp-stat-values{color:var(--text);font-size:16px;font-weight:700}.sp-stat-pair+.sp-stat-pair{margin-top:10px}.sp-head-right .link-danger{color:#ff9daa;font-size:12px}.sp-breakdown{margin:0}.sp-breakdown td,.sp-breakdown th{padding:6px 18px}.zero-row td{color:#b3bccb}.zero-row td:first-child{color:var(--text-dim)}.hidden-chips{flex-wrap:wrap;gap:8px;display:flex}.hidden-chip{background:var(--bg);border:1px solid var(--border);border-radius:999px;align-items:center;gap:6px;padding:4px 6px 4px 12px;font-size:13px;display:inline-flex}.hidden-chip button{background:var(--border);cursor:pointer;width:18px;height:18px;color:var(--text);border:none;border-radius:50%;line-height:1}.hidden-chip button:hover{background:var(--danger);color:#fff}.budgets-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:12px;margin-bottom:16px;display:grid}.budgets-grid label{color:var(--text-dim);flex-direction:column;gap:5px;font-size:12px;font-weight:700;display:flex}.budgets-grid input{border:1px solid var(--border);border-radius:8px;width:100%;padding:9px 10px;font-size:15px}.budgets-total input{background:var(--bg);font-weight:700}.range-bar select{border:1px solid var(--border);background:var(--card);border-radius:8px;padding:8px 10px;font-size:14px}button.primary.ghost{color:var(--accent);border:1px solid var(--accent);background:0 0}button.primary.ghost:hover{background:#2f6fed14}.link-danger{color:var(--danger);cursor:pointer;background:0 0;border:none;padding:0;font-size:12.5px}.link-danger:hover{text-decoration:underline}.update-indicator{color:#fff;text-align:center;border-radius:10px;align-self:center;margin:0 auto;padding:8px 34px;font-size:13px;font-weight:700}.update-indicator.fresh{background:var(--success)}.update-indicator.stale{background:var(--danger)}.complete-card{justify-content:space-between;align-items:center;gap:16px;margin-top:18px;display:flex}.complete-card h3{margin:0 0 4px}.complete-button{padding:12px 22px;font-size:15px}.headline-chips{flex-wrap:wrap;gap:10px;margin-left:auto;display:flex}.chip{background:var(--bg);border:1px solid var(--border);border-radius:8px;flex-direction:column;align-items:center;padding:6px 14px;display:flex}.chip span{color:var(--text-dim);text-transform:uppercase;font-size:11px;font-weight:600}.chip strong{font-size:16px}.chip-na strong{color:var(--text-dim)}.grid-scroll{max-height:calc(100vh - 300px);overflow:auto}.grid-scroll thead th{z-index:3;background:var(--bg);position:sticky;top:0}.grid-scroll thead th.metric-col{z-index:4;left:0}.grid-table td,.grid-table th{text-align:right;line-height:17px}.grid-table td.col-shade{background:#eef2f8}.grid-table thead th.col-shade{background:#e7ecf4}.grid-table .metric-col{text-align:left;background:var(--card);width:292px;min-width:292px;max-width:292px;font-weight:600;position:sticky;left:0}.grid-table td.metric-col{font-size:14.3px;font-weight:700;line-height:17px}.grid-table thead th.metric-col{background:var(--bg)}.grid-table .agg-col{background:var(--bg);font-weight:700}.section-row td{background:var(--navy);color:#fff;letter-spacing:.04em;text-align:left;font-size:11.5px;font-weight:700;position:static}.na-row td{color:#b3bccb;font-weight:400}.na-row .metric-col{color:var(--text-dim)}.na-note{color:#b3bccb;font-size:11.5px;font-weight:400}.grid-table td.cell-good{background:var(--success);color:#fff;font-weight:700}.grid-table td.cell-bad{background:var(--danger);color:#fff;font-weight:700}.grid-table td.cell-goal{background:var(--success);color:#fff;border:2px solid #e8b30c;font-weight:800;box-shadow:inset 0 0 0 1px #f7d35c}.denied-overlay{z-index:300;background:#0a12208c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.denied-card{text-align:center;background:#fff;border-radius:14px;max-width:420px;margin:16px;padding:28px 34px;box-shadow:0 18px 50px #00000059}.denied-card h2{margin:0 0 10px}.denied-card p{color:#475569;margin:0 0 18px}:root{--pace-green:#12c16a;--pace-red:#f5253f}.chip-pace-under,.chip-pace-over{color:#fff}.chip-pace-under{background:var(--pace-green);border-color:var(--pace-green)}.chip-pace-over{background:var(--pace-red);border-color:var(--pace-red)}.chip-pace-under span,.chip-pace-over span,.chip-pace-under strong,.chip-pace-over strong{color:#fff}.grid-table thead th:not(.metric-col){font-size:14.5px;font-weight:700}.grid-table .avg-col{background:#fdf6d3}.grid-table .bench-col{color:var(--navy);background:#dbeafe}.grid-table td.bench-col{font-weight:400}.grid-table td.bench-col.bench-empty{background:#9ca3af;border-top-color:#9ca3af;border-bottom-color:#9ca3af}.grid-table thead th.bench-col{font-size:12px}.grid-table .total-col{color:#fff;background:#1e40af}.grid-table tr.group-end td{border-bottom:2px solid var(--text)}.sales-editor tr.unmatched td{background:#fbdcdc}.sales-editor tr.unmatched td:first-child{box-shadow:inset 3px 0 0 var(--danger)}.sales-editor tr.unmatched select{border-color:var(--danger)}.sales-unmatched-tag{color:var(--danger);font-weight:700}.cal-scroll{overflow-x:auto}.cal-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;min-width:760px;display:grid}.cal-head{text-align:center;letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim);padding-bottom:2px;font-size:11px;font-weight:700}.cal-day{border:1px solid var(--border);background:var(--card);border-radius:8px;min-height:104px;padding:6px}.cal-day-out{background:var(--bg);opacity:.5}.cal-day-today{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.cal-date{color:var(--text-dim);margin-bottom:5px;font-size:12px;font-weight:700}.cal-day-today .cal-date{color:var(--accent)}.cal-entry{background:var(--bg);border-radius:5px;align-items:center;gap:4px;margin-bottom:3px;padding:2px 4px;font-size:11.5px;line-height:1.35;display:flex}.cal-entry-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.cal-entry-loc{color:var(--accent);font-weight:700}.cal-entry-x{cursor:pointer;color:var(--danger);background:0 0;border:none;padding:0 1px;font-size:14px;line-height:1}.sales-people{min-width:190px}.sale-sp-name{font:inherit;color:inherit;text-align:left;cursor:pointer;border:none;border-bottom:1px dashed var(--border);background:0 0;border-radius:5px;margin:-2px -4px;padding:2px 4px}.sale-sp-name:hover{border-bottom-color:var(--accent);color:var(--accent);background:#eef2f8}.sp-edit{flex-direction:column;gap:4px;display:flex}.sp-edit select{max-width:220px}.sp-edit-actions{align-items:center;gap:8px;display:flex}.sp-verify{padding:4px 12px;font-size:12.5px}.sp-cancel{color:var(--text-dim);cursor:pointer;background:0 0;border:none;font-size:12px;text-decoration:underline}.alias-add{flex-wrap:wrap;align-items:flex-end;gap:12px;margin:12px 0;display:flex}.alias-add label{color:var(--text-dim);flex-direction:column;gap:4px;font-size:12px;font-weight:600;display:flex}.alias-add input,.alias-add select{border:1px solid var(--border);border-radius:6px;min-width:240px;padding:6px 8px;font-size:13px}.alias-table{margin-top:4px}.alias-key{font-family:Consolas,monospace;font-size:12.5px}.sales-cpi{text-align:center}.cpi-yes{color:var(--success);font-size:20px;font-weight:700;line-height:1}.sales-down{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.chip-edit-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0 0 0 6px;font-size:11px;text-decoration:underline}.chip-manual{color:#b07d00;font-weight:700}.chip-edit{align-items:center;gap:4px;margin-top:2px;display:flex}.chip-edit input{border:1px solid var(--border);border-radius:5px;width:90px;padding:2px 5px;font-size:12px}.chip-edit button{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:11px;text-decoration:underline}.total-row td{text-align:right}.grid-table tr.total-row td.metric-col{background:var(--navy);color:#fff;text-align:left}.suspended-badge{background:var(--danger);color:#fff;letter-spacing:.05em;vertical-align:1px;border-radius:4px;margin-left:8px;padding:1px 6px;font-size:10px;font-weight:700;display:inline-block}.grid-table thead th.store-head{text-align:center;color:#000;vertical-align:middle;white-space:nowrap;padding-top:6px;padding-bottom:6px;font-size:12px;line-height:1.2}.store-line{display:block}.users-toolbar{justify-content:flex-end;margin-bottom:8px;display:flex}.grid-table tr.running-total td{font-size:14.3px;line-height:17px}.grid-table tr.running-total td:not(.metric-col):not(.agg-col){font-weight:700}.lb{color:#f3ecff;background:radial-gradient(circle at 12% 0,#ff47c847,#0000 45%),radial-gradient(circle at 88% 100%,#00e5ff40,#0000 45%),linear-gradient(160deg,#1b0b3a 0%,#2a0f57 55%,#120726 100%);border-radius:12px;margin:0 0 16px;padding:12px 16px 14px;font-family:Segoe UI,system-ui,sans-serif;box-shadow:0 6px 22px #2a0f5759,inset 0 0 0 1px #ffffff14}.lb-title{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.lb-title-glow{letter-spacing:.18em;color:#ffe45c;text-shadow:0 0 6px #ffe45ce6,0 0 16px #ff8c0099;font-size:15px;font-weight:900}.lb-sub{letter-spacing:.16em;color:#7ef9ff;text-shadow:0 0 8px #00e5ffb3;font-size:10.5px;font-weight:700}.lb-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 18px;display:grid}.lb-col{gap:4px;margin:0;padding:0;list-style:none;display:grid}.lb-row{background:#ffffff0f;border:1px solid #ffffff14;border-radius:7px;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:8px;padding:4px 10px;font-size:13px;line-height:18px;display:grid}.lb-pos{color:#ff7ad9;text-shadow:0 0 6px #ff7ad9b3;font-variant-numeric:tabular-nums;font-weight:900}.lb-name{white-space:nowrap;text-overflow:ellipsis;text-transform:uppercase;letter-spacing:.03em;font-weight:600;overflow:hidden}.lb-score{color:#7ef9ff;text-shadow:0 0 6px #00e5ffb3;font-variant-numeric:tabular-nums;font-size:14px;font-weight:900}.lb-row.lb-rank-1{background:linear-gradient(90deg,#ffc82847,#ffc82814);border-color:#ffd75099}.lb-row.lb-rank-1 .lb-pos,.lb-row.lb-rank-1 .lb-score{color:#ffe45c;text-shadow:0 0 8px #ffe45ce6}.lb-row.lb-rank-2{background:linear-gradient(90deg,#dce4f038,#dce4f00f);border-color:#e6ebf580}.lb-row.lb-rank-2 .lb-pos,.lb-row.lb-rank-2 .lb-score{color:#eef2f8;text-shadow:0 0 8px #fffc}.lb-row.lb-rank-3{background:linear-gradient(90deg,#d6803c47,#d6803c14);border-color:#e696508c}.lb-row.lb-rank-3 .lb-pos,.lb-row.lb-rank-3 .lb-score{color:#ffb070;text-shadow:0 0 8px #ffb070cc}@media (width<=640px){.lb-cols{grid-template-columns:1fr}}.sp-ext{color:#8fa0bd;vertical-align:2px;white-space:nowrap;align-items:center;gap:5px;margin-left:12px;font-size:12px;font-weight:600;display:inline-flex}.sp-ext strong{color:#fff;font-weight:700}.sp-ext-select{color:#fff;cursor:pointer;background:#16294a;border:1px solid #3a4f78;border-radius:6px;padding:2px 6px;font-size:12px;font-weight:700}.sp-ext-select:focus{outline:2px solid var(--accent);outline-offset:1px}.lb-note{color:#c9bde6;margin-top:10px;line-height:1.45}.reminder-overlay{z-index:400;background:#0a12208c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.reminder-card{text-align:center;background:#fff;border-radius:14px;max-width:440px;margin:16px;padding:28px 32px 24px;box-shadow:0 18px 50px #00000059}.reminder-icon{margin-bottom:8px;font-size:40px;line-height:1}.reminder-card h2{margin:0 0 10px;font-size:22px}.reminder-card p{color:#475569;margin:0 0 20px;line-height:1.5}.reminder-actions{justify-content:center;gap:10px;display:flex}.never-logged{margin-top:18px}.never-logged h4{letter-spacing:.02em;color:var(--text);margin:0 0 10px;font-size:14px;font-weight:700}.never-logged-groups{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.never-logged-group{border:1px solid var(--border);background:var(--bg);border-radius:8px;padding:10px 12px}.never-logged-loc{margin-bottom:6px;font-size:13px;font-weight:700}.never-logged-count{color:var(--text-dim);font-weight:600}.never-logged-group ul{margin:0;padding-left:16px;font-size:13px}.never-logged-group li{margin-bottom:3px}.never-logged-role{color:var(--text-dim);font-size:11.5px}.mismatch-alert{z-index:1000;background:var(--card);border:2px solid #e08a1e;border-radius:12px;width:410px;max-width:calc(100vw - 24px);position:fixed;overflow:hidden;box-shadow:0 16px 44px #060f2159}.mismatch-head{color:#fff;cursor:grab;touch-action:none;background:#e08a1e;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:700;display:flex}.mismatch-hint{opacity:.85;margin-left:auto;font-size:11px;font-weight:400}.mismatch-body{max-height:60vh;overflow-y:auto}.mismatch-row{border-bottom:1px solid var(--border);padding:10px 12px}.mismatch-row:last-child{border-bottom:none}.mismatch-customer{color:var(--text);font-size:13px;font-weight:600}.mismatch-people{color:var(--text-dim);margin:4px 0 8px;font-size:12px;line-height:1.4}.mismatch-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.mismatch-store{color:var(--text-dim);align-items:center;gap:5px;font-size:11.5px;font-weight:600;display:inline-flex}.mismatch-store select{border:1px solid var(--border);border-radius:6px;padding:3px 6px;font-size:12px}.mismatch-actions button{padding:4px 10px;font-size:12px}.mismatch-err{color:var(--danger);border-bottom:1px solid var(--border);padding:6px 12px;font-size:12px}.acct-chip.inactive{color:var(--danger);background:#fde8e8}button.acct-chip.acct-toggle{font-family:inherit;line-height:inherit;cursor:pointer;text-transform:none;border:1px solid #0000}button.acct-chip.acct-toggle:hover{border-color:currentColor}.acct-login-note{color:var(--text-dim);white-space:nowrap;vertical-align:middle;margin-left:6px;font-size:10px}.inactive-reminder-list{text-align:left;max-height:220px;margin:0 0 20px;padding:0;list-style:none;overflow-y:auto}.inactive-reminder-list li{border-bottom:1px solid #e2e8f0;justify-content:space-between;gap:16px;padding:6px 0;font-size:14px;display:flex}.inactive-reminder-list li span{color:#64748b;white-space:nowrap}.split-button{align-items:stretch;display:inline-flex;position:relative}.split-button>.complete-button:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.split-button>.split-toggle{border-left:1px solid #ffffff73;border-top-left-radius:0;border-bottom-left-radius:0;padding-left:12px;padding-right:12px}.split-menu{z-index:50;border:1px solid var(--border);background:#fff;border-radius:10px;min-width:340px;margin:0;padding:6px 0;list-style:none;position:absolute;bottom:calc(100% + 6px);right:0;box-shadow:0 10px 30px #0000002e}.split-menu button{text-align:left;width:100%;font:inherit;color:var(--text);cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:8px 14px;font-size:13px;display:block}.split-menu button:hover{background:#fff7d6}.update-indicator.partial{color:#422006;background:#facc15}.users-table td.users-loc{white-space:nowrap}.users-effective{color:var(--text-dim);align-items:center;gap:4px;margin-left:6px;font-size:10.5px;display:inline-flex}.users-table .users-effective input{width:118px;min-width:0;padding:4px 5px}.stats-table .num{text-align:right}.link-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:12.5px}.link-btn:hover{text-decoration:underline}.icon-btn{border:1px solid var(--border);background:var(--card);width:28px;height:28px;color:var(--text-dim);cursor:pointer;border-radius:6px;font-size:13px}.icon-btn:hover:not(:disabled){color:var(--accent);border-color:var(--accent)}.icon-btn:disabled{opacity:.35;cursor:default}button.primary:disabled{opacity:.5;cursor:default}.status-chip{color:var(--text-dim);background:#eef1f6;border-radius:999px;margin-right:6px;padding:2px 8px;font-size:11.5px;font-weight:600;display:inline-block}.status-chip.ok{color:#177a46;background:#e3f5ec}.status-chip.draft{color:var(--accent);background:#eef3ff}.status-chip.warn{color:#8a6116;background:#fff4dd}.creator-new{flex-wrap:wrap;gap:10px;display:flex}.creator-new input{border:1px solid var(--border);border-radius:8px;flex:1;min-width:220px;max-width:480px;padding:8px 10px;font-size:14px}.creator-table a{color:var(--accent);text-decoration:none}.creator-actions{align-items:center;gap:12px;display:flex}.row-muted td{color:var(--text-dim)}.editor-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px;display:flex}.editor-head h1{margin:4px 0 6px}.back-link{color:var(--accent);font-size:12.5px;text-decoration:none}.editor-status{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.save-state{color:var(--text-dim);font-size:12px}.editor-actions{gap:8px;display:flex}.upload-warning ul{margin:6px 0 0;padding-left:18px}.card-settings{flex-wrap:wrap;gap:20px;display:flex}.card-settings-fields{flex-direction:column;flex:1;gap:12px;min-width:260px;margin-bottom:12px;display:flex}.card-settings-fields label{color:var(--text-dim);flex-direction:column;gap:5px;font-size:12px;font-weight:600;display:flex}.card-settings-fields label.short input{width:120px}.card-settings-fields input,.card-settings-fields textarea,.blk-body input[type=url],.blk-body input[type=text],.qe-prompt,.qe-row select,.blk-head select{border:1px solid var(--border);color:var(--text);background:var(--card);border-radius:8px;padding:8px 10px;font-family:inherit;font-size:14px}.card-thumb{aspect-ratio:16/9;border:1px dashed var(--border);border-radius:var(--radius);width:260px;color:var(--text-dim);background:var(--bg);justify-content:center;align-items:center;font-size:12.5px;display:flex;overflow:hidden}.card-thumb img{object-fit:cover;width:100%;height:100%}.editor-tabs{border-bottom:1px solid var(--border);gap:4px;margin:6px 0 16px;display:flex}.editor-tabs button{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:9px 16px;font-size:14px;font-weight:600}.editor-tabs button.active{color:var(--accent);border-bottom-color:var(--accent)}.page-marker{text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);margin:4px 0 8px;font-size:11.5px;font-weight:700}.blk{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:12px;padding:12px 14px}.blk-pagebreak{background:var(--bg);border-style:dashed}.blk-head{align-items:center;gap:6px;margin-bottom:10px;display:flex}.blk-head select{padding:4px 8px;font-size:12.5px}.blk-type{text-transform:uppercase;letter-spacing:.04em;color:var(--accent);flex:1;font-size:12px;font-weight:700}.blk-pagebreak .page-marker{margin:0}.blk-body{flex-direction:column;gap:8px;display:flex}.blk-preview-img{object-fit:contain;border:1px solid var(--border);border-radius:8px;max-width:360px;max-height:240px}.blk-add{color:var(--text-dim);flex-wrap:wrap;align-items:center;gap:6px;margin:8px 0 20px;font-size:13px;display:flex}.inline-check{align-items:center;gap:6px;font-size:13px;display:flex}.quiz-rules{margin:0 0 14px}.congrats-settings{margin-top:8px}.congrats-modes{flex-wrap:wrap;gap:18px;margin-bottom:12px;font-size:13.5px;display:flex}.congrats-modes label{align-items:center;gap:6px;display:flex}.publish-card{background:#fff;border-radius:14px;flex-direction:column;gap:10px;max-width:480px;margin:16px;padding:26px 30px;display:flex;box-shadow:0 18px 50px #00000059}.publish-card h2{margin:0}.publish-card p{color:#475569;margin:0 0 4px}.publish-choice{text-align:left;border:1px solid var(--border);background:var(--card);cursor:pointer;color:var(--text-dim);border-radius:10px;flex-direction:column;gap:4px;padding:12px 14px;font-size:13px;display:flex}.publish-choice strong{color:var(--text);font-size:14px}.publish-choice:hover{border-color:var(--accent);background:#2f6fed0d}.publish-cancel{align-self:center;margin-top:4px}.rte{border:1px solid var(--border);border-radius:8px;overflow:hidden}.rte-toolbar{background:var(--bg);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:2px;padding:5px 6px;display:flex}.rte-tool{min-width:28px;height:28px;color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:5px;padding:0 8px;font-size:12.5px}.rte-tool:hover{background:#e3e8f0}.rte-sep{background:var(--border);width:1px;height:18px;margin:0 4px}.rte-swatch{vertical-align:middle;border-radius:3px;width:14px;height:14px;display:inline-block}.rte-body{background:var(--card);outline:none;min-height:110px;padding:10px 14px}.qe{flex-direction:column;gap:8px;display:flex}.qe-prompt{resize:vertical;width:100%}.qe-choices{flex-direction:column;gap:6px;display:flex}.qe-hint{color:var(--text-dim);font-size:12px}.qe-choice{align-items:center;gap:8px;display:flex}.qe-choice input[type=text]{border:1px solid var(--border);border-radius:8px;flex:1;padding:7px 10px;font-size:14px}.qe-choice input[type=radio],.qe-choice input[type=checkbox]{width:17px;height:17px;accent-color:var(--success)}.qe-choices .link-btn{align-self:flex-start}.course-player{max-width:900px}.preview-banner{color:#8a6116;background:#fff4dd;border:1px solid #f2d99b;border-radius:8px;margin-bottom:14px;padding:8px 12px;font-size:13px}.passed-banner{color:#177a46;background:#e3f5ec;border:1px solid #b9e3cc;border-radius:8px;margin-bottom:16px;padding:10px 14px;font-size:13.5px;font-weight:600}.player-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.player-page{color:var(--text-dim);font-size:13px;font-weight:600}.course-page{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:22px 26px}.course-block+.course-block{margin-top:18px}.course-text{font-size:15px;line-height:1.6}.course-text h2{margin:.6em 0 .4em;font-size:20px}.course-text h3{margin:.6em 0 .3em;font-size:17px}.course-text p{margin:0 0 .7em}.course-text a{color:var(--accent)}.course-figure{text-align:center;margin:0}.course-figure img{border-radius:8px;max-width:100%}.course-figure figcaption{color:var(--text-dim);margin-top:6px;font-size:13px}.course-embed{background:#0e1f38;border-radius:8px;width:100%;position:relative;overflow:hidden}.course-embed.video,.course-embed.slides{aspect-ratio:16/9}.course-embed.pdf{height:75vh}.course-embed iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.course-missing{border:1px dashed var(--border);color:var(--text-dim);border-radius:8px;padding:14px;font-size:13px}.watch-status{color:#8a6116;margin-top:6px;font-size:12.5px;font-weight:600}.watch-status.done{color:var(--success)}.course-question{border:1px solid var(--border);border-left:4px solid var(--accent);background:#f8faff;border-radius:8px;padding:14px 16px}.course-question.right{border-left-color:var(--success)}.course-question.wrong{border-left-color:var(--danger)}.course-question.quiz{background:var(--card);margin-bottom:12px}.q-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);margin-bottom:4px;font-size:11.5px;font-weight:700}.q-prompt{margin-bottom:10px;font-size:15px;font-weight:600}.q-hint{color:var(--text-dim);margin-bottom:4px;font-size:12px}.q-choices{flex-direction:column;gap:6px;margin-bottom:10px;display:flex}.q-choice{border:1px solid var(--border);background:var(--card);cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:9px 12px;font-size:14px;display:flex}.q-choice.picked{border-color:var(--accent)}.q-choice.is-correct{border-color:var(--success);background:#e3f5ec}.q-choice.is-wrong{border-color:var(--danger);background:#fde8eb}.q-feedback{font-size:13.5px;font-weight:600}.course-question.right .q-feedback{color:var(--success)}.course-question.wrong .q-feedback{color:var(--danger)}.player-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:16px;display:flex}.player-nav{gap:8px;display:flex}.player-lock{text-align:right;color:#8a6116;margin:8px 0 0;font-size:12.5px}.quiz-result{text-align:center}.result-score{margin:6px 0;font-size:44px;font-weight:800}.result-score.fail{color:var(--danger)}.missed-list{text-align:left;margin:4px 0 16px;font-size:14px;display:inline-block}.missed-list ul{margin:6px 0 0;padding-left:20px}.congrats-card{text-align:center;background:#fff;border-radius:16px;width:min(480px,100vw - 32px);padding:26px 32px 24px;box-shadow:0 18px 50px #00000059}.congrats-card h2{margin:6px 0 4px;font-size:26px}.congrats-media{object-fit:contain;border-radius:10px;width:100%;max-height:260px;margin-bottom:8px}.congrats-icon{font-size:52px;line-height:1}.congrats-course{color:#475569;margin:0}.congrats-score{color:var(--success);margin:6px 0 2px;font-size:42px;font-weight:800}.congrats-date{color:var(--text-dim);margin:0 0 12px;font-size:13px}.congrats-message{color:var(--text);margin:0 0 16px;line-height:1.5}.cc-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.course-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--card);flex-direction:column;display:flex;overflow:hidden}.course-card.overdue{border-color:var(--danger)}.cc-img{aspect-ratio:16/9;background:var(--bg)}.cc-img img{object-fit:cover;width:100%;height:100%;display:block}.cc-img-blank{justify-content:center;align-items:center;height:100%;font-size:42px;display:flex}.cc-body{flex-direction:column;flex:1;gap:8px;padding:12px 14px 14px;display:flex}.cc-body h4{margin:0;font-size:15px}.cc-desc{color:var(--text-dim);margin:0;font-size:13px;line-height:1.45}.cc-tags{gap:6px;display:flex}.cc-tag{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700}.cc-tag.required{color:#b4233a;background:#fde8eb}.cc-tag.suggested{color:var(--accent);background:#eef3ff}.cc-tag.renewal{color:#8a6116;background:#fff4dd}.cc-meta{color:var(--text-dim);flex-wrap:wrap;gap:4px 12px;margin-top:auto;font-size:12.5px;display:flex}.cc-overdue{color:var(--danger);font-weight:700}.cc-progress{color:var(--text-dim);align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex}.cc-bar{background:#e3e8f0;border-radius:999px;flex:1;height:8px;overflow:hidden}.cc-bar div{background:var(--success);border-radius:999px;height:100%}.cc-body button.primary{align-self:flex-start}.team-filters{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.team-filters select,.team-filters input,.assign-head select,.rule-form select,.rule-form input,.assign-table select,.assign-table input[type=date]{border:1px solid var(--border);background:var(--card);border-radius:8px;padding:7px 10px;font-family:inherit;font-size:13.5px}.team-table tr.row-overdue td{color:#a1192e;background:#fdecee}.team-table .link-btn{font-size:13px}.assign-head{flex-wrap:wrap;gap:10px;margin-bottom:12px;display:flex}.assign-head select{min-width:280px}.assign-table{white-space:normal}.assign-table input[type=checkbox]{width:17px;height:17px}.assign-note{color:var(--text-dim);margin-top:2px;font-size:11.5px}.rule-form{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:10px;display:flex}.rule-form label{color:var(--text-dim);flex-direction:column;gap:5px;font-size:12px;font-weight:600;display:flex}.rule-form input[type=number]{width:110px}.congrats-points{margin:0 0 14px}.congrats-points strong{color:var(--accent);font-size:18px}.congrats-bonuses{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:6px;display:flex}.congrats-bonuses span,.ach-bonuses span{color:#177a46;background:#e3f5ec;border-radius:999px;padding:2px 8px;font-size:11.5px;font-weight:600}.ach-band{flex-wrap:wrap;gap:14px;margin-bottom:8px;display:flex}.ach-stat{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);min-width:170px;padding:14px 22px}.ach-stat.muted{align-items:center;max-width:340px;display:flex}.ach-num{color:var(--navy);font-size:30px;font-weight:800}.ach-label{color:var(--text-dim);font-size:12.5px;font-weight:600}.ach-rules{max-width:820px;margin:0 0 18px}.badge-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.badge{border:1px dashed var(--border);text-align:center;opacity:.55;filter:grayscale();border-radius:10px;padding:12px 10px}.badge.earned{opacity:1;filter:none;background:#fffaf0;border-style:solid;border-color:#e8b30c}.badge-icon{font-size:30px;line-height:1}.badge-name{margin-top:6px;font-size:13px;font-weight:700}.badge-hint{color:var(--text-dim);margin-top:3px;font-size:11px;line-height:1.35}.ach-boards{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px;display:grid}.ach-board-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.ach-board-head h3{margin:0}.ach-board-head select{border:1px solid var(--border);border-radius:8px;padding:6px 10px;font-size:13px}.ach-board tr.ach-me td{background:#eef3ff;font-weight:700}.ach-bonuses{flex-wrap:wrap;gap:4px;display:flex}.ach-chip{margin-left:8px}.ach-expired{color:var(--text-dim);text-decoration:line-through}.rule-form label.rule-newhire span{align-items:center;gap:4px;display:flex}.cc-tag.open{color:var(--text-dim);background:#eef1f6}.open-to{flex-direction:column;gap:6px;display:flex}.open-to-label{color:var(--text-dim);font-size:12px;font-weight:600}.open-to .congrats-modes{margin-bottom:0}.cc-tag.passed{color:#177a46;background:#e3f5ec}
