:root{--font: "Montserrat", "Noto Sans SC", system-ui, -apple-system, "Segoe UI", sans-serif;--bg: #090b0a;--surface: #0d1216;--surface-warm: #171410;--surface-hover: #11171b;--surface-sunken: #0b1014;--hairline: #171c1b;--border-card: #202a2d;--border-control: #303436;--border-accent: #51442a;--border-accent-h: #6b5733;--border-neutral-h: #4a4f51;--text: #f2f2f2;--text-hi: #e4e4e7;--text-btn: #d1d5db;--text-body: #c7c7cd;--text-muted: #a1a1aa;--text-faint: #71717a;--accent: #f3b65c;--accent-hi: #e0a83a;--accent-06: rgba(243, 182, 92, .06);--accent-08: rgba(243, 182, 92, .08);--accent-18: rgba(243, 182, 92, .18);--accent-55: rgba(243, 182, 92, .55);--success: #4fb88a;--danger: #f87171;--warn: #f3b65c;--info: #8dcbff;--r-btn: 10px;--r-card: 16px;--r-panel: 14px;--r-input: 9px;--r-pill: 999px;--r-icon: 13px;--t-fast: .16s ease;--t: .18s ease;--t-slow: .22s ease}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background-color:var(--bg);color:var(--text-body);font-family:var(--font);font-size:14px;line-height:1.55}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-control);border-radius:8px}::-webkit-scrollbar-thumb:hover{background:var(--border-neutral-h)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app{display:flex;min-height:100vh}.sidebar{width:232px;background:var(--bg);border-right:1px solid var(--hairline);padding:18px 10px;display:flex;flex-direction:column;gap:2px;flex-shrink:0;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:10px;padding:2px 8px 16px;border-bottom:1px solid var(--hairline);margin-bottom:14px}.brand-logo{width:34px;height:34px;border-radius:var(--r-btn);background:var(--surface);border:1px solid var(--border-control);overflow:hidden;display:grid;place-items:center;flex-shrink:0}.brand-logo img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.brand-name{font-weight:600;font-size:14px;letter-spacing:-.01em;color:var(--text)}.brand-sub{font-size:11px;color:var(--text-faint)}.nav-item{display:flex;align-items:center;gap:9px;min-height:34px;padding:0 10px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--text-muted);cursor:pointer;width:100%;font-size:13px;font-weight:500;text-align:left;font-family:inherit;transition:color var(--t-fast),background-color var(--t-fast),border-color var(--t-fast)}.nav-item:hover{color:var(--text-hi);background:#ffffff08}.nav-item.active{color:var(--accent);background:var(--accent-08);border-color:#f3b65c38;font-weight:600}.nav-icon{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.nav-icon svg{width:17px;height:17px}.sidebar-foot{margin-top:auto;padding:12px 8px 2px;border-top:1px solid var(--hairline);font-size:11px;color:var(--text-faint);line-height:1.6}.main{flex:1;padding:24px 28px;max-width:1440px;min-width:0}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px;flex-wrap:wrap}.page-title{font-size:24px;font-weight:600;line-height:1.15;letter-spacing:-.02em;margin:0 0 4px;color:var(--text)}.page-sub{color:var(--text-muted);font-size:13px}.page-head-actions{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--text-faint)}.mock-banner{background:var(--accent-06);border:1px solid var(--border-accent);color:var(--accent);padding:8px 13px;border-radius:var(--r-btn);font-size:12.5px;margin-bottom:16px;display:flex;gap:9px;align-items:center}.mock-banner .dot{width:7px;height:7px;border-radius:50%;background:var(--accent);flex-shrink:0}.mock-banner.live{background:#4fb88a12;border-color:#4fb88a59;color:var(--success)}.mock-banner.live .dot{background:var(--success)}.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:6px;margin-bottom:10px}.stat-card{background:var(--surface);border:1px solid var(--border-card);border-radius:8px;padding:6px 10px;transition:border-color var(--t)}.stat-card:hover{border-color:var(--border-control)}.stat-label{font-size:9.5px;color:var(--text-faint);text-transform:uppercase;letter-spacing:.07em;font-weight:600}.stat-value{font-size:15px;font-weight:600;margin-top:1px;color:var(--text);letter-spacing:-.02em;font-variant-numeric:tabular-nums}.stat-value.sm{font-size:13px}.stat-hint{font-size:10px;color:var(--text-faint);margin-top:1px}.panel{background:var(--surface);border:1px solid var(--border-card);border-radius:var(--r-card);margin-bottom:14px;overflow:hidden}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--t)}.panel-head:hover{background:var(--surface-hover)}.panel-title{font-weight:600;font-size:13.5px;display:flex;align-items:center;gap:9px;color:var(--text)}.panel-body{padding:4px 16px 16px;border-top:1px solid var(--hairline)}.chevron{color:var(--text-faint);display:inline-flex;transition:transform var(--t)}.chevron svg{width:14px;height:14px}.chevron.open{transform:rotate(90deg)}.toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px;align-items:center}.search-wrap{display:inline-flex;align-items:center;gap:8px;flex:1 1 280px}.search-wrap .input{flex:1 1 240px}.pagination{display:flex;gap:10px;align-items:center;justify-content:flex-end;margin-top:12px}.pagination .btn{min-width:96px}.settings-bar{display:flex;gap:14px;align-items:center;justify-content:flex-end;padding:6px 0 10px;margin-bottom:4px;border-bottom:1px solid var(--hairline)}.settings-item{display:inline-flex;gap:6px;align-items:center;font-size:12px}.settings-item .select{height:26px;padding:0 8px;font-size:12px}.density-compact table.data td{padding:5px 9px;font-size:12.5px}.density-compact table.data th{padding:6px 9px}.density-compact .ticket-item{padding:8px 10px}.density-compact .prov-row{padding:7px 10px}.input,.select{background:var(--surface);border:1px solid var(--border-card);color:var(--text);border-radius:var(--r-input);padding:0 12px;height:36px;font-size:13px;min-width:150px;font-family:inherit;transition:border-color var(--t)}.input:hover,.select:hover{border-color:var(--border-control)}.input:focus,.select:focus{outline:none;border-color:var(--border-accent);box-shadow:0 0 0 2px var(--accent-18)}.input::placeholder{color:var(--text-faint)}.select option{background:var(--surface);color:var(--text)}.table-wrap{overflow-x:auto;border:1px solid var(--border-card);border-radius:10px;background:var(--surface)}table.data{width:100%;border-collapse:collapse;font-size:13px;line-height:1.5}table.data th{text-align:left;padding:10px 13px;color:var(--text-faint);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.08em;background:var(--bg);border-bottom:1px solid var(--hairline);white-space:nowrap;cursor:pointer}table.data th:hover{color:var(--text-muted)}table.data td{padding:7px 12px;color:var(--text-body);border-bottom:1px solid var(--hairline);vertical-align:middle;white-space:nowrap}table.data tr:last-child td{border-bottom:none}table.data tbody tr{transition:background var(--t)}table.data tbody tr:hover{background:#ffffff05}.mono{font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:12.5px}.dim{color:var(--text-faint)}.num{text-align:right;font-variant-numeric:tabular-nums}.badge{display:inline-block;padding:2px 9px;border-radius:var(--r-pill);font-size:10.5px;font-weight:600;letter-spacing:.02em;border:1px solid transparent;white-space:nowrap;line-height:1.6}.badge.green{background:#4fb88a1a;color:var(--success);border-color:#4fb88a4d}.badge.gold{background:var(--accent-08);color:var(--accent);border-color:#f3b65c59}.badge.blue{background:#8dcbff14;color:var(--info);border-color:#8dcbff40}.badge.orange{background:#f3b65c1a;color:var(--accent-hi);border-color:#f3b65c59}.badge.red{background:#f871711a;color:var(--danger);border-color:#f8717152}.badge.purple{background:#f3b65c14;color:var(--accent);border-color:#f3b65c4d}.badge.grey{background:#ffffff0a;color:var(--text-muted);border-color:var(--border-control)}.abo-cell{display:inline-flex;align-items:center;gap:6px}.empty{text-align:center;padding:34px 16px;color:var(--text-faint);font-size:13px}.empty-icon{margin-bottom:8px;opacity:.6}.empty-icon svg{width:26px;height:26px}.state-box{padding:12px 14px;border-radius:var(--r-panel);font-size:13px;margin-bottom:12px;background:var(--surface);border:1px solid var(--border-card);color:var(--text-body)}.state-box.error{background:#f8717112;border-color:#f871714d;color:#fca5a5}.state-box.loading{color:var(--text-muted)}.support-grid{display:grid;grid-template-columns:300px 1fr;gap:12px;align-items:start}.ticket-list{max-height:640px;overflow-y:auto}.ticket-item{padding:10px 12px;border-radius:9px;cursor:pointer;border:1px solid transparent;margin-bottom:5px;transition:background var(--t),border-color var(--t)}.ticket-item:hover{background:var(--surface-hover)}.ticket-item.active{background:var(--accent-08);border-color:#f3b65c38}.ticket-ref{font-weight:600;font-size:12.5px;display:flex;justify-content:space-between;color:var(--text)}.ticket-sujet{font-size:12px;color:var(--text-muted);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.unread{background:var(--accent);color:var(--bg);border-radius:var(--r-pill);font-size:10.5px;padding:0 7px;font-weight:700}.convo{background:var(--surface);border:1px solid var(--border-card);border-radius:var(--r-card);display:flex;flex-direction:column;min-height:560px}.convo-head{padding:13px 16px;border-bottom:1px solid var(--hairline)}.convo-body{flex:1;padding:14px 16px;overflow-y:auto;display:flex;flex-direction:column;gap:12px;max-height:480px}.msg{max-width:82%}.msg.admin{align-self:flex-end}.msg-meta{font-size:11px;color:var(--text-faint);margin-bottom:3px;display:flex;gap:8px}.msg-bubble{padding:9px 13px;border-radius:12px;background:var(--surface-sunken);border:1px solid var(--border-card);font-size:13.5px}.msg.admin .msg-bubble{background:var(--surface-warm);border-color:var(--border-accent);color:var(--text)}.msg-trad{margin-top:6px;padding-top:6px;border-top:1px dashed var(--border-control);font-size:12px;color:var(--text-muted);font-style:italic}.auto-tag{font-size:10px;background:var(--accent-08);color:var(--accent);border:1px solid rgba(243,182,92,.3);padding:0 6px;border-radius:4px;font-style:normal}.convo-compose{padding:12px 16px;border-top:1px solid var(--hairline);display:flex;flex-direction:column;gap:8px}textarea.compose{background:var(--surface-sunken);border:1px solid var(--border-card);color:var(--text);border-radius:var(--r-input);padding:9px 12px;resize:vertical;min-height:66px;font-family:inherit;font-size:13px}textarea.compose:focus{outline:none;border-color:var(--border-accent);box-shadow:0 0 0 2px var(--accent-18)}.compose-row{display:flex;gap:10px;align-items:center;justify-content:space-between}.side-info{background:var(--surface);border:1px solid var(--border-card);border-radius:var(--r-card);padding:14px 16px}.side-info h4{margin:0 0 10px;font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:var(--text-faint);font-weight:600}.info-row{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid var(--hairline);font-size:12.5px}.info-row:last-child{border-bottom:none}.info-k{color:var(--text-muted)}.info-v{text-align:right;font-weight:500;color:var(--text)}.btn,.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:34px;padding:0 14px;box-sizing:border-box;background:transparent;color:var(--text-btn);border:1px solid var(--border-control);border-radius:var(--r-btn);font-size:12.5px;font-weight:500;cursor:pointer;font-family:inherit;white-space:nowrap;text-decoration:none;transition:background-color var(--t),border-color var(--t),color var(--t)}.btn:hover,.button:hover{color:var(--text);border-color:var(--border-neutral-h);background:var(--surface-warm)}.btn:focus-visible,.button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn:active,.button:active{transform:scale(.98)}.btn.primary{border:none;background:var(--accent);color:var(--bg);font-weight:600}.btn.primary:hover{background:var(--accent-hi);filter:none}.btn.primary:active{transform:scale(.98)}.btn.danger{border:none;background:var(--danger);color:#fff;font-weight:600}.btn.danger:hover{background:#e05d5d}.btn.gold-ghost{border-color:var(--border-accent);color:var(--accent);background:transparent}.btn.gold-ghost:hover{background:var(--surface-warm);border-color:var(--border-accent-h);color:var(--accent)}.btn:disabled,.button:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn.sm{height:28px;padding:0 10px;font-size:11.5px}.btn.sm.danger{border-color:var(--danger);color:var(--danger)}.btn.sm.danger:hover{background:var(--danger);color:#fff}.btn.sm.warn{border-color:var(--border-control)}.link{display:inline-flex;align-items:center;gap:5px;background:transparent;color:var(--text-btn);border:1px solid transparent;border-radius:var(--r-btn);padding:3px 9px;font-size:12px;font-weight:500;cursor:pointer;font-family:inherit;white-space:nowrap;text-decoration:none;transition:background-color var(--t),border-color var(--t),color var(--t)}.link:hover{background:var(--surface-hover);color:var(--text);border-color:var(--border-control)}.link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.link:active{transform:scale(.98)}.link:disabled{opacity:.5;cursor:not-allowed;transform:none}.link.danger{color:var(--danger)}.link.danger:hover{background:var(--danger);color:#fff;border-color:var(--danger)}.row-actions{display:inline-flex;gap:6px;align-items:center;flex-wrap:nowrap}.seg{display:inline-flex;border:1px solid var(--border-card);border-radius:var(--r-btn);overflow:hidden;background:var(--bg)}.seg button{border:none;background:transparent;color:var(--text-muted);font-family:inherit;font-size:11.5px;font-weight:500;padding:5px 11px;cursor:pointer;transition:background var(--t),color var(--t)}.seg button+button{border-left:1px solid var(--border-card)}.seg button:hover{color:var(--text-hi);background:var(--surface-hover)}.seg button.on{background:var(--accent-08);color:var(--accent);font-weight:600}.chart-card{background:var(--surface);border:1px solid var(--border-card);border-radius:var(--r-card);padding:14px 16px}.chart-title{font-size:11px;color:var(--text-faint);margin-bottom:10px;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.chart-svg{width:100%;height:auto;display:block}.chart-legend{display:flex;gap:14px;font-size:11.5px;color:var(--text-muted);margin-top:8px}.legend-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.pager{display:flex;gap:8px;align-items:center;justify-content:flex-end;margin-top:10px;font-size:12.5px;color:var(--text-muted)}.pager button{background:var(--surface);border:1px solid var(--border-control);color:var(--text-btn);border-radius:var(--r-btn);height:30px;padding:0 12px;cursor:pointer;font-family:inherit;font-size:12.5px;transition:border-color var(--t),color var(--t)}.pager button:hover:not(:disabled){color:var(--text);border-color:var(--border-neutral-h)}.pager button:disabled{opacity:.4;cursor:not-allowed}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:100%;max-width:380px;background:var(--surface);border:1px solid var(--border-card);border-radius:var(--r-card);padding:28px 26px}.login-logo{width:46px;height:46px;border-radius:var(--r-icon);background:var(--surface-sunken);border:1px solid var(--border-control);overflow:hidden;margin-bottom:16px}.login-logo img{width:100%;height:100%;object-fit:cover;display:block}.login-card h1{margin:0 0 5px;font-size:20px;font-weight:600;color:var(--text);letter-spacing:-.02em}.login-card p{margin:0 0 16px;font-size:13px;color:var(--text-muted)}.login-card .input{width:100%;min-width:0}.login-card label{display:block;font-size:12px;color:var(--text-muted);margin:0 0 6px}.login-card .btn{width:100%;margin-top:14px;height:40px;font-size:13.5px}.cf-bar{background:var(--surface);border:1px solid var(--border-card);border-radius:var(--r-card);margin-bottom:14px;overflow:hidden}.cf-bar-main{display:flex;align-items:center;gap:14px;padding:11px 16px;min-height:56px;flex-wrap:wrap}.cf-logo{width:30px;height:30px;flex-shrink:0;border-radius:9px;background:var(--surface-sunken);border:1px solid var(--border-control);display:grid;place-items:center;color:var(--accent)}.cf-logo svg{width:17px;height:17px}.cf-logo img{width:100%;height:100%;object-fit:contain;display:block}.cf-id{min-width:0}.cf-name{font-size:13.5px;font-weight:600;color:var(--text);line-height:1.3}.cf-sub{font-size:11px;color:var(--text-faint)}.cf-metrics{display:flex;gap:16px;margin-left:auto;font-size:11.5px;color:var(--text-muted);align-items:center}.cf-metric b{color:var(--text);font-weight:600;font-variant-numeric:tabular-nums}.cf-chevron{border:none;background:transparent;cursor:pointer;color:var(--text-faint);padding:6px;border-radius:7px;display:inline-flex;transition:background var(--t),color var(--t)}.cf-chevron:hover{background:var(--surface-hover);color:var(--text-hi)}.cf-chevron svg{width:15px;height:15px;transition:transform var(--t)}.cf-chevron.open svg{transform:rotate(180deg)}.tr-bar{margin-top:2px}.tr-events{width:100%;border-collapse:collapse;margin-top:6px;font-size:11.5px}.tr-events th{text-align:left;color:var(--text-faint);font-weight:500;padding:3px 8px 3px 0}.tr-events td{padding:3px 8px 3px 0}.cf-details{border-top:1px solid var(--hairline);padding:14px 16px;background:var(--bg)}.cf-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.cf-cell{background:var(--surface);border:1px solid var(--border-card);border-radius:10px;padding:9px 12px}.cf-cell .stat-label{font-size:10px}.cf-cell .cf-val{font-size:14px;font-weight:600;color:var(--text);margin-top:3px}.cf-cell .cf-note{font-size:10.5px;color:var(--text-faint);margin-top:2px}.cf-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border:1px solid var(--border-card);border-radius:var(--r-panel);background:var(--surface);margin-top:12px}.cf-toggle-label{display:flex;align-items:center;gap:9px;font-weight:600;font-size:13px;color:var(--text);letter-spacing:.01em}.switch{position:relative;width:52px;height:28px;min-width:52px;border-radius:var(--r-pill);border:1px solid var(--border-control);background:#f8717133;cursor:pointer;transition:background var(--t),border-color var(--t);padding:0}.switch.on{background:#4fb88a38;border-color:#4fb88a8c}.switch:disabled{opacity:.5;cursor:not-allowed}.switch-knob{position:absolute;top:2px;left:2px;width:22px;height:22px;border-radius:50%;background:#fff;transition:left var(--t)}.switch.on .switch-knob{left:26px}.quota-block{margin-top:12px;padding:11px 13px;border:1px solid var(--border-card);border-radius:var(--r-panel);background:var(--surface)}.quota-line{font-size:12.5px;color:var(--text-body)}.quota-bar-na{margin-top:8px;height:8px;border-radius:var(--r-pill);border:1px dashed var(--border-control);background:repeating-linear-gradient(-45deg,transparent,transparent 5px,rgba(255,255,255,.05) 5px,rgba(255,255,255,.05) 10px)}.cf-links{display:flex;gap:9px;margin-top:12px;flex-wrap:wrap}.cf-links .btn{text-decoration:none}.cat-tabs{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}.cat-tab{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--border-card);background:var(--surface);color:var(--text-muted);border-radius:var(--r-btn);height:32px;padding:0 13px;font-family:inherit;font-size:12.5px;font-weight:500;cursor:pointer;transition:background var(--t),color var(--t),border-color var(--t)}.cat-tab:hover{color:var(--text-hi);border-color:var(--border-control)}.cat-tab.on{background:var(--accent-08);color:var(--accent);border-color:#f3b65c59;font-weight:600}.cat-tab .count{font-size:10.5px;background:#ffffff0f;border-radius:var(--r-pill);padding:0 6px;color:inherit}.prov-list{display:flex;flex-direction:column}.prov-row{display:flex;align-items:center;gap:12px;padding:9px 4px;border-bottom:1px solid var(--hairline)}.prov-row:last-child{border-bottom:none}.prov-logo{width:28px;height:28px;flex-shrink:0;border-radius:7px;background:#fff;border:1px solid var(--border-card);display:grid;place-items:center;overflow:hidden;padding:2px}.prov-logo img{width:100%;height:100%;object-fit:contain;display:block}.prov-logo.neutral{background:var(--surface-sunken);color:var(--text-faint)}.prov-logo.neutral svg{width:14px;height:14px}.prov-id{min-width:132px;width:170px}.prov-name{font-size:13px;font-weight:600;color:var(--text);line-height:1.3}.prov-svc{font-size:11px;color:var(--text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.prov-bar-wrap{flex:1;min-width:110px;display:flex;align-items:center;gap:9px}.prov-pct{font-size:11.5px;font-weight:600;min-width:64px;text-align:right;color:var(--text-muted);font-variant-numeric:tabular-nums}.prov-pct.ok{color:var(--success)}.prov-pct.warn{color:var(--accent-hi)}.prov-pct.crit{color:var(--danger)}.prov-actions{display:flex;align-items:center;gap:7px;flex-shrink:0}.pbar{flex:1;height:7px;min-width:60px;border-radius:var(--r-pill);background:#ffffff0d;border:1px solid var(--border-card);overflow:hidden;position:relative}.pbar-fill{position:absolute;inset:0 auto 0 0;border-radius:var(--r-pill);transition:width var(--t-slow)}.pbar-fill.ok{background:var(--success)}.pbar-fill.warn{background:var(--accent-hi)}.pbar-fill.crit{background:var(--danger)}.pbar.na{background:repeating-linear-gradient(-45deg,transparent,transparent 5px,rgba(255,255,255,.05) 5px,rgba(255,255,255,.05) 10px)}.prov-details{padding:4px 4px 12px 38px;border-bottom:1px solid var(--hairline);font-size:12px;color:var(--text-muted)}.prov-details:last-child{border-bottom:none}.prov-details .line{display:flex;gap:8px;padding:3px 0;flex-wrap:wrap}.prov-details .k{color:var(--text-faint);min-width:108px;text-transform:uppercase;font-size:10px;letter-spacing:.07em;font-weight:600;padding-top:2px}.risk{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600}.risk .pip{width:8px;height:8px;border-radius:50%;flex-shrink:0}.risk.faible{color:var(--success)}.risk.faible .pip{background:var(--success)}.risk.modere{color:var(--accent-hi)}.risk.modere .pip{background:var(--accent-hi)}.risk.eleve{color:var(--danger)}.risk.eleve .pip{background:var(--danger)}.risk.inconnu{color:var(--text-faint)}.risk.inconnu .pip{background:var(--text-faint)}.count-pill{background:var(--accent-08);color:var(--accent);border:1px solid rgba(243,182,92,.3);border-radius:var(--r-pill);font-size:11px;font-weight:700;padding:1px 8px}.count-pill.zero{background:#ffffff0d;color:var(--text-faint);border-color:var(--border-control)}.nav-badge{margin-left:auto;padding:0 8px;font-size:10.5px}.nav-item.active .nav-badge{background:var(--accent);color:#1a1a14}@media (max-width: 1100px){.support-grid,.grid-2{grid-template-columns:1fr}.cf-metrics{margin-left:0;width:100%}}@media (max-width: 860px){.app{flex-direction:column}.sidebar{width:100%;height:auto;position:static;flex-direction:row;align-items:center;padding:10px 12px;gap:6px;overflow-x:auto;border-right:none;border-bottom:1px solid var(--hairline)}.brand{border-bottom:none;margin-bottom:0;padding:0 10px 0 0}.brand-sub,.sidebar-foot{display:none}.nav-item{width:auto;white-space:nowrap}.main{padding:18px 16px}.page-title{font-size:21px}}img[src*="/providers/"]{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important;display:block!important;padding:0!important;margin:0!important;border:0!important;border-radius:inherit!important}.prov-logo,.cf-logo{padding:0!important;overflow:hidden!important}.prov-logo img,.cf-logo img{width:100%!important;height:100%!important;object-fit:cover!important;border:0!important;border-radius:inherit!important}.prov-logo,.cf-logo{border:0!important;padding:0!important;overflow:hidden!important}.prov-logo img,.cf-logo img{width:100%!important;height:100%!important;object-fit:cover!important;transform:scale(1.18);transform-origin:center}.opencode-head-brand{display:flex;align-items:center;gap:14px}.opencode-logo{width:40px;height:40px;border-radius:10px;display:block;flex:none}.opencode-logo-sm{width:20px;height:20px;border-radius:5px}.opencode-grid{display:grid;grid-template-columns:minmax(340px,420px) 1fr;gap:16px;align-items:start}.opencode-side{display:flex;flex-direction:column;gap:16px;min-width:0}.opencode-stage{position:sticky;top:16px;display:flex;flex-direction:column;gap:12px;min-width:0}.opencode-stage-head{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-panel)}.opencode-stage-title{flex:1;font-weight:600;color:var(--text-hi)}.opencode-frame{width:100%;height:72vh;min-height:520px;border:1px solid var(--hairline);border-radius:var(--r-panel);background:#080808}.diff-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}.diff-item{border:1px solid var(--hairline);border-radius:var(--r-panel);padding:10px 12px;background:var(--surface-sunken)}.diff-item-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.diff-path{color:var(--text-hi);font-size:13px}.diff-count{font-size:12px;font-weight:600}.diff-count.add{color:var(--success)}.diff-count.del{color:var(--danger)}.diff-patch{margin:10px 0 0;padding:10px;background:#0b1014;border-radius:8px;font-size:12px;white-space:pre-wrap;word-break:break-word;max-height:300px;overflow:auto}@media (max-width: 980px){.opencode-grid{grid-template-columns:1fr}.opencode-stage{position:static}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#0406059e;display:flex;justify-content:flex-end;animation:fade-in var(--t)}.modal-drawer{width:min(440px,100vw);height:100%;background:var(--surface);border-left:1px solid var(--border-card);box-shadow:-18px 0 44px #00000073;display:flex;flex-direction:column;animation:slide-in .18s ease}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;border-bottom:1px solid var(--hairline)}.modal-title{font-weight:600;font-size:14px;color:var(--text)}.modal-body{padding:16px;overflow-y:auto}.user-hero{display:flex;align-items:center;gap:14px;padding:6px 2px 18px}.user-avatar-lg{width:72px;height:72px;border-radius:50%;object-fit:cover;flex-shrink:0;border:1px solid var(--border-neutral-h);background:var(--surface-sunken)}.user-avatar-ph{display:flex;align-items:center;justify-content:center;color:var(--text-faint);font-size:26px;font-weight:600}.user-hero-meta{min-width:0}.user-pseudo{font-size:18px;font-weight:700;color:var(--text-hi)}.user-name{font-size:13px;color:var(--text-muted);margin:2px 0}.user-cell,.quota-cell{display:inline-flex;align-items:center;gap:8px}.quota-bar{width:60px;height:4px;border-radius:2px;background:var(--surface-sunken);overflow:hidden}.quota-bar-fill{height:100%;border-radius:2px;background:var(--accent);transition:width .3s ease}.user-avatar-sm{width:22px;height:22px;border-radius:50%;object-fit:cover;flex-shrink:0;border:1px solid var(--border-neutral-h);background:var(--surface-sunken);font-size:10px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-faint)}.modal-drawer--wide{width:min(560px,100vw)}.drawer-badges{display:inline-flex;gap:6px;flex-wrap:wrap;margin-top:6px}.drawer-nav{display:flex;gap:4px;flex-wrap:wrap;padding:8px 0 12px;border-bottom:1px solid var(--hairline)}.drawer-nav__item{height:28px;padding:0 10px;border:1px solid var(--border-control);border-radius:8px;background:transparent;color:var(--text-muted);font-size:11.5px;font-weight:500;cursor:pointer;font-family:inherit;transition:background-color var(--t),border-color var(--t),color var(--t)}.drawer-nav__item:hover{color:var(--text);border-color:var(--border-neutral-h)}.drawer-nav__item.is-active{background:var(--accent-08);border-color:var(--border-accent);color:var(--accent)}.drawer-sections{padding-top:14px}.drawer-list{display:flex;flex-direction:column;gap:8px}.drawer-item{border:1px solid var(--border-card);border-radius:10px;padding:10px 12px;background:var(--surface-sunken)}.drawer-item__main{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-in{0%{transform:translate(24px);opacity:.4}to{transform:none;opacity:1}}
