:root{--bg: #f4f6f8;--surface: #ffffff;--surface-muted: #f8fafb;--text: #17212b;--muted: #667481;--border: #dce2e7;--accent: #0a6f62;--accent-hover: #07594f;--danger: #b42318;--warning: #9a6700;--success: #18794e;--shadow: 0 18px 55px rgb(15 23 42 / 16%)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.45 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;letter-spacing:0}button,input,select{font:inherit;letter-spacing:0}button{cursor:pointer}.topbar{position:sticky;top:0;z-index:10;height:64px;padding:0 28px;background:#17212b;color:#fff;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:11px}.brand-mark{width:34px;height:34px;display:grid;place-items:center;background:#28a28f;border-radius:6px}.brand-mark svg{width:20px}.brand div{display:grid;gap:1px}.brand strong{font-size:15px}.brand div span{color:#aeb9c3;font-size:12px}.top-actions,.section-actions{display:flex;align-items:center;gap:8px}.automation-state{color:#c3ccd4;font-size:12px;margin-right:4px}.automation-state.on{color:#73daca}.task-state{min-width:78px;display:inline-flex;align-items:center;justify-content:center;gap:5px;color:#aeb9c3;font-size:12px}.task-state.active{color:#73daca}.task-state svg{width:14px;height:14px;animation:task-spin 1s linear infinite}@keyframes task-spin{to{transform:rotate(360deg)}}main{max-width:1540px;margin:0 auto;padding:24px 28px 48px}.summary-band{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr)) minmax(210px,1.5fr);background:var(--surface);border:1px solid var(--border);border-radius:6px;margin-bottom:22px}.summary-item{min-height:84px;padding:17px 20px;display:grid;align-content:center;gap:5px;border-right:1px solid var(--border)}.summary-item:last-child{border-right:0}.summary-item span{color:var(--muted);font-size:12px}.summary-item strong{font-size:25px;font-weight:650}.summary-item.wide strong{font-size:14px}.workspace-section{margin-top:20px}.finance-section{margin-top:28px}.section-header{min-height:58px;display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:12px}h1,h2,p{margin:0}h1,h2{font-size:18px;line-height:1.25}.section-header p,.dialog-header p{color:var(--muted);font-size:12px;margin-top:4px}.segmented{display:inline-grid;grid-auto-flow:column;grid-auto-columns:minmax(64px,1fr);padding:3px;background:#e7ecef;border-radius:6px}.segmented button{height:30px;padding:0 11px;border:0;border-radius:4px;color:var(--muted);background:transparent;font-size:12px;font-weight:600}.segmented button.active{color:var(--text);background:var(--surface);box-shadow:0 1px 3px #0f172a21}.segmented button:disabled{cursor:wait;opacity:.72}.finance-summary{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));border:1px solid var(--border);border-bottom:0;background:var(--surface);border-radius:6px 6px 0 0}.finance-summary>div{min-height:76px;display:grid;align-content:center;gap:4px;padding:14px 18px;border-right:1px solid var(--border)}.finance-summary>div:nth-child(3n){border-right:0}.finance-summary>div:nth-child(-n+3){border-bottom:1px solid var(--border)}.finance-summary span{color:var(--muted);font-size:12px}.finance-summary strong{font-size:22px;font-weight:650}.finance-summary small{display:block;font-size:11px;line-height:1.4}.finance-summary[aria-busy=true]{opacity:.68}.finance-coverage strong{font-size:16px}.finance-table{border-radius:0 0 6px 6px}.finance-table .status{display:flex;margin-top:3px;color:var(--muted)}.finance-table .cell-sub{max-width:none}.finance-chart{border:1px solid var(--border);border-bottom:0;background:var(--surface);padding:16px 18px 10px}.chart-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:8px}.chart-header h3{margin:0;font-size:14px}.chart-header span{color:var(--muted);font-size:11px}.chart-metrics{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px}.chart-metrics button{height:27px;padding:0 8px;border:1px solid transparent;border-radius:4px;color:var(--muted);background:transparent;font-size:11px;font-weight:600}.chart-metrics button:hover{color:var(--text);background:var(--surface-muted)}.chart-metrics button.active{color:var(--accent);border-color:#acd3cd;background:#eff8f6}.chart-canvas{width:100%;height:250px}.chart-tooltip{min-width:118px;padding:8px 10px;display:grid;gap:2px;background:#17212b;color:#fff;border-radius:5px;box-shadow:var(--shadow)}.chart-tooltip span,.chart-tooltip small{color:#b9c4cc;font-size:11px}.chart-tooltip strong{font-size:14px}.finance-controls{display:flex;align-items:center;gap:8px}.date-range{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:11px}.date-range input{width:128px;height:36px;font-size:12px}.compact-button{height:30px;padding:0 9px;font-size:12px}.amount-incomplete{color:var(--warning);text-decoration:underline dotted;text-underline-offset:3px}.button,.icon-button{border:1px solid transparent;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;gap:7px;height:36px;padding:0 13px;font-weight:600;background:transparent;color:inherit}.button svg{width:16px;height:16px}.button.primary{color:#fff;background:var(--accent);border-color:var(--accent)}.button.primary:hover{background:var(--accent-hover)}.button.secondary{background:var(--surface);border-color:var(--border)}.topbar .button.secondary{background:#263542;border-color:#40505e}.button.danger-ghost{color:var(--danger);background:#fff;border-color:#e8c5c1}.icon-button{width:34px;padding:0;border-color:var(--border);background:var(--surface)}.icon-button svg{width:17px;height:17px}.topbar .icon-button{background:#263542;border-color:#40505e}.table-shell{overflow-x:auto;background:var(--surface);border:1px solid var(--border);border-radius:6px}table{width:100%;border-collapse:collapse;white-space:nowrap}th{padding:11px 13px;text-align:left;color:var(--muted);background:var(--surface-muted);border-bottom:1px solid var(--border);font-size:11px;font-weight:650;text-transform:uppercase}.table-sort{display:inline-flex;align-items:center;gap:5px;padding:0;border:0;background:transparent;color:inherit;font-size:inherit;font-weight:inherit;text-transform:inherit}.table-sort:hover,.table-sort.active{color:var(--text)}.table-sort svg{width:13px;height:13px}td{height:58px;padding:9px 13px;border-bottom:1px solid #edf0f2;vertical-align:middle}.numeric-col{text-align:right;font-variant-numeric:tabular-nums}.numeric-col .table-sort{justify-content:flex-end}tr:last-child td{border-bottom:0}tbody tr:hover{background:#fbfcfd}.row-inactive,.row-inactive .cell-main,.row-inactive .cell-sub{color:#9aa5ad}.row-inactive:hover{background:#f5f7f8}.value-danger{color:var(--danger);font-weight:700}.active-state,.validation-status{font-size:12px;font-weight:650}.active-state.on,.validation-status.ok{color:var(--success)}.active-state.off,.validation-status.never{color:var(--muted)}.validation-status.failed{color:var(--danger)}.validation-status.historical{color:var(--warning)}.validation-summary{min-width:0}.validation-summary .cell-sub{max-width:100%;white-space:nowrap}.cell-main{font-weight:600}.cell-sub{display:block;color:var(--muted);font-size:11px;margin-top:2px;max-width:230px;overflow:hidden;text-overflow:ellipsis}.supplier-name-link{display:inline-block;max-width:100%;color:inherit;text-decoration:none}.supplier-name-link:hover .cell-main{color:var(--accent);text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:2px}.status{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600}.status:before{content:"";width:7px;height:7px;border-radius:50%;background:#97a3ad}.status.ok:before{background:var(--success)}.status.partial:before{background:var(--warning)}.status.disabled:before{background:var(--warning)}.status.error:before,.status.login_error:before{background:var(--danger)}.status.busy:before{background:var(--warning)}.actions{display:flex;justify-content:flex-end;gap:3px}.actions .icon-button{border:0;background:transparent}.actions .icon-button:hover{background:#edf2f4}.actions-col{text-align:right}.supplier-table .status-col{width:74px;max-width:74px;padding-left:8px;padding-right:8px}.supplier-table .status-col .status{gap:4px}.supplier-table table{min-width:1280px;table-layout:fixed}.supplier-table th,.supplier-table td{overflow:hidden;text-overflow:ellipsis}.supplier-table .display_name-col{width:100px}.supplier-table .active-col{width:46px;padding-left:7px;padding-right:7px}.supplier-table .adapter_mode-col{width:65px}.supplier-table .key_name-col{width:72px}.supplier-table .last_group-col{width:132px}.supplier-table .last_ratio-col{width:73px}.supplier-table .last_balance-col,.supplier-table .last_priority-col{width:62px}.supplier-table .tokens_1h-col{width:112px}.supplier-table .last_checked_at-col{width:105px;font-size:11px}.supplier-table .supplier-actions-col{width:190px}.supplier-table .availability-col{width:145px;min-width:145px;padding-left:7px;padding-right:7px}.availability-wrap{display:flex;align-items:center;gap:6px}.availability-bar{width:94px;height:12px;display:grid;grid-template-columns:repeat(24,1fr);align-items:center;gap:1px}.availability-bar span{display:block;height:7px;border-radius:1px}.availability-bar span:hover{height:11px}.availability-bar span.idle{background:var(--border)}.availability-rate{min-width:34px;color:var(--success);font-size:11px;font-variant-numeric:tabular-nums;text-align:right}.availability-rate.warning{color:var(--warning)}.empty-state{min-height:210px;display:grid;place-items:center;align-content:center;gap:10px;color:var(--muted)}.empty-state svg{width:32px}.empty-state.small{min-height:92px}.audit-section{margin-top:30px}.site-footer{padding:28px 0 0;color:var(--muted);font-size:11px;text-align:center}.auth-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--bg)}.auth-card{width:min(400px,100%);padding:30px;display:grid;gap:14px;background:var(--surface);border:1px solid var(--border);border-radius:7px;box-shadow:var(--shadow)}.auth-card h1{margin:0;font-size:21px}.auth-card p{color:var(--muted);font-size:13px}.auth-card form{display:grid;gap:14px;margin-top:6px}.auth-mark{width:44px;height:44px;display:grid;place-items:center;color:#fff;background:var(--accent);border-radius:6px}.auth-mark svg{width:24px;height:24px}.auth-submit{width:100%;margin-top:4px}.compact-table td{height:46px;font-size:12px}dialog{width:min(720px,calc(100vw - 30px));border:0;border-radius:7px;padding:0;box-shadow:var(--shadow);color:var(--text)}dialog::backdrop{background:#121d268f}.modal-layer{position:fixed;inset:0;z-index:20;padding:18px;display:grid;place-items:center;background:#121d268f;overflow-y:auto}.modal-panel{width:min(720px,100%);max-height:calc(100vh - 36px);overflow-y:auto;background:var(--surface);border-radius:7px;box-shadow:var(--shadow)}.dialog-form{padding:22px}.dialog-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:22px}.dialog-header .icon-button{border:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid.four{grid-template-columns:repeat(4,1fr)}.span-2{grid-column:span 2}label{display:grid;gap:6px;color:#34424e;font-size:12px;font-weight:600}input,select{min-width:0;width:100%;height:38px;padding:0 10px;color:var(--text);background:#fff;border:1px solid #cbd4da;border-radius:4px;outline:none}input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #0a6f621c}small{color:var(--muted);font-weight:400}.toggle-row{height:38px;align-self:end;padding:0 10px;display:flex;align-items:center;justify-content:space-between;border:1px solid var(--border);border-radius:4px;color:#34424e;font-size:12px;font-weight:600}.switch{display:inline-block;position:relative;width:36px;height:20px}.switch input{opacity:0;width:0;height:0}.switch span{position:absolute;inset:0;background:#aab5bd;border-radius:10px;transition:.15s}.switch span:after{content:"";position:absolute;width:16px;height:16px;left:2px;top:2px;background:#fff;border-radius:50%;transition:.15s}.switch input:checked+span{background:var(--accent)}.switch input:checked+span:after{transform:translate(16px)}fieldset{margin:20px 0 0;padding:15px;border:1px solid var(--border);border-radius:5px}legend{color:var(--muted);padding:0 6px;font-size:12px}.checkbox-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px 12px}.checkbox-option{min-width:0;display:flex;align-items:center;gap:7px}.checkbox-option input{width:16px;height:16px;margin:0}.checkbox-option span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dialog-actions{margin-top:24px;display:flex;justify-content:flex-end;gap:8px}.browser-auth-loading{min-height:110px;display:flex;align-items:center;justify-content:center;gap:8px;color:var(--muted)}.browser-auth-loading svg{width:18px;animation:task-spin 1s linear infinite}.browser-auth-captcha{display:grid;grid-template-columns:minmax(0,1fr) 160px;align-items:end;gap:12px}.captcha-image{height:38px;padding:0;overflow:hidden;border:1px solid #cbd4da;border-radius:4px;background:var(--surface-muted)}.captcha-image img{width:100%;height:100%;object-fit:contain}.session-limit-help{display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px;padding:14px;border:1px solid #e3b341;border-radius:5px;background:#fff8df;color:#594515}.session-limit-help svg{width:20px;margin-top:1px}.session-limit-help p{margin:5px 0 10px;color:#6f5b25;font-size:12px;line-height:1.55}.session-limit-links{display:flex;flex-wrap:wrap;gap:12px}.session-limit-links a{color:#075f56;font-size:12px;font-weight:700}.form-error{margin-top:14px;color:var(--danger);font-size:12px}.toast{position:fixed;right:24px;bottom:24px;max-width:min(420px,calc(100vw - 32px));padding:12px 15px;background:#17212b;color:#fff;border-radius:5px;box-shadow:var(--shadow);opacity:0;transform:translateY(10px);pointer-events:none;transition:.18s}.toast.show{opacity:1;transform:translateY(0)}.toast.error{background:#8f1d15}.muted{color:var(--muted)}@media(max-width:900px){.topbar{padding:0 16px}.automation-state{display:none}.task-state{min-width:0}main{padding:16px 14px 36px}.summary-band,.finance-summary{grid-template-columns:repeat(2,1fr)}.finance-summary>div:nth-child(3n){border-right:1px solid var(--border)}.finance-summary>div:nth-child(2n){border-right:0}.finance-summary>div:nth-child(-n+4){border-bottom:1px solid var(--border)}.summary-item{border-bottom:1px solid var(--border)}.summary-item:nth-child(2n){border-right:0}.summary-item.wide{grid-column:span 2;border-bottom:0}.section-header{align-items:start;flex-direction:column}.section-actions{width:100%;overflow-x:auto;padding-bottom:2px}.finance-controls{width:100%;flex-wrap:wrap}.date-range{width:100%}.chart-header{align-items:flex-start;flex-direction:column}.chart-metrics{justify-content:flex-start}.form-grid,.form-grid.four{grid-template-columns:1fr}.checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.span-2{grid-column:span 1}.browser-auth-captcha{grid-template-columns:1fr}.captcha-image{height:48px}}@media(max-width:520px){.brand div span,.topbar .button.secondary,.task-state{font-size:0}.task-state.active{font-size:11px}.topbar .button.secondary{width:36px;padding:0}.section-actions .button{padding:0 10px;font-size:12px}.segmented{width:100%;grid-auto-columns:1fr}.finance-summary strong{font-size:18px}dialog,.modal-layer{width:auto}.modal-layer{padding:9px}.dialog-form{padding:17px}}
