.taxi-billing-workspace,.taxi-billing-account,.tb-dialog { color:var(--admin-text,#29374b); --tb-border:var(--admin-border,#dfe5ed); --tb-surface:var(--admin-surface,#fff); --tb-subtle:var(--admin-subtle,#f7f9fc); }
#app #overview-pricing .taxi-billing-workspace { min-width:0; display:grid; gap:18px; }
.taxi-billing-workspace [hidden],.taxi-billing-account [hidden] { display:none!important; }
.tb-intro { padding:20px; background:var(--tb-subtle); border:1px solid var(--tb-border); border-radius:9px; }
.tb-intro h2 { margin:0 0 8px; font-size:22px; }.tb-intro p { color:var(--admin-muted,#66758a); font-size:13px; line-height:1.6; }
.tb-tabs { display:flex; gap:6px; flex-wrap:wrap; border-bottom:1px solid var(--tb-border); padding-bottom:10px; }
.tb-tabs button { padding:12px 16px; border:1px solid var(--tb-border); border-radius:7px; background:var(--tb-surface); color:var(--admin-muted,#66758a); font-size:13px; }
.tb-tabs button[aria-selected="true"] { background:var(--admin-selected,#edf3ff); color:var(--admin-accent,#285dde); border-color:var(--admin-accent,#285dde); }
[data-tb-panel],.tb-mandate,.tb-account-invoices { border:1px solid var(--tb-border); background:var(--tb-surface); border-radius:9px; padding:20px; min-width:0; }
.tb-panel-head { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:18px; }.tb-panel-head h2,.tb-panel-head h3 { margin:0 0 6px; font-size:20px; }.tb-panel-head p { margin:0; color:var(--admin-muted,#66758a); font-size:12px; line-height:1.6; }
.tb-package-list { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr)); gap:16px; }.tb-package { min-width:0; display:grid; gap:16px; align-content:start; border:1px solid var(--tb-border); border-radius:8px; padding:18px; background:var(--tb-subtle); }.tb-package h3 { font-size:19px; margin:14px 0 8px; }.tb-package p { font-size:12px; line-height:1.6; color:var(--admin-muted,#66758a); }.tb-package dl,.tb-facts { display:grid; gap:10px; margin:0 0 16px; }.tb-package dl>div,.tb-facts>div { display:flex; justify-content:space-between; align-items:baseline; gap:15px; }.tb-package dt,.tb-facts dt { color:var(--admin-muted,#66758a); font-size:12px; }.tb-package dd,.tb-facts dd { margin:0; text-align:right; font-weight:600; font-size:13px; overflow-wrap:anywhere; }
.tb-package-price { display:grid; gap:6px; }.tb-package-price strong { font-size:19px; }.tb-package-price small,.tb-invoice small { color:var(--admin-muted,#66758a); font-size:11px; line-height:1.6; }
.tb-pill { display:inline-flex; padding:6px 9px; border-radius:6px; background:var(--admin-selected,#edf3ff); color:var(--admin-accent,#285dde); font-size:11px; width:max-content; max-width:100%; white-space:normal; }
.tb-actions { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }.taxi-billing-workspace button,.taxi-billing-account button { min-height:40px; font-size:12px; }.tb-note { margin:16px 0 0; font-size:12px; color:var(--admin-muted,#66758a); line-height:1.7; }.taxi-billing-workspace output,.taxi-billing-account output { display:block; font-size:12px; line-height:1.7; overflow-wrap:anywhere; color:var(--admin-muted,#66758a); }.taxi-billing-workspace output.is-error { color:var(--admin-danger,#a43737); }
.tb-invoice-tools { display:flex; gap:14px; flex-wrap:wrap; margin:0 0 16px; }.tb-invoice-tools label { flex:1; min-width:160px; display:grid; gap:7px; font-size:12px; }
.tb-invoice-tools :is(input,select),.tb-export :is(input,select),.tb-dialog :is(input,select,textarea) { min-height:42px; width:100%; padding:10px 12px; border:1px solid var(--tb-border); border-radius:7px; color:var(--admin-text,#29374b); background:var(--tb-surface); font-size:13px; }
.tb-invoice-list { max-height:600px; overflow:auto; overscroll-behavior:contain; }.tb-invoice { display:flex; gap:16px; justify-content:space-between; align-items:center; padding:18px 0; border-bottom:1px solid var(--tb-border); font-size:13px; }.tb-invoice>div { display:grid; gap:6px; min-width:0; }.tb-invoice>div:first-of-type { flex:1; }.tb-invoice>div.tb-actions { display:flex; flex-wrap:wrap; max-width:270px; }.tb-invoice strong { overflow-wrap:anywhere; }.tb-invoice-select input { width:18px; height:18px; accent-color:var(--admin-accent,#285dde); }.tb-sr { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.tb-export { display:grid; grid-template-columns:1fr 1fr; align-items:end; gap:14px; margin-top:24px; padding:20px; border:1px solid var(--tb-border); border-radius:8px; background:var(--tb-subtle); }.tb-export h3,.tb-export p,.tb-export output { grid-column:1/-1; margin:0; }.tb-export h3 { font-size:17px; }.tb-export p { font-size:12px; line-height:1.7; color:var(--admin-muted,#66758a); }.tb-export label { display:grid; gap:8px; font-size:12px; }.tb-export button { grid-column:1/-1; justify-self:start; }
.taxi-billing-account { display:grid; gap:18px; min-width:0; }
body.admin-workspace .tb-dialog,.tb-dialog { width:min(720px,calc(100vw - 28px)); max-height:calc(100dvh - 28px); padding:0; overflow:auto; background:var(--tb-surface); color:var(--admin-text,#29374b); border:1px solid var(--tb-border); border-radius:12px; }
.tb-dialog::backdrop { background:#071222a6; }.tb-dialog form { padding:24px; display:grid; gap:18px; }.tb-dialog header,.tb-dialog footer { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:0; }.tb-dialog header h2 { font-size:23px; margin:0; }.tb-dialog header button { background:var(--tb-subtle); color:var(--admin-muted,#66758a); border:1px solid var(--tb-border); border-radius:7px; font-size:25px; padding:2px 12px; }.tb-dialog form>p { color:var(--admin-muted,#66758a); font-size:12px; line-height:1.7; margin:0; }.tb-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }.tb-form-grid label { display:grid; gap:8px; min-width:0; font-size:12px; }.tb-form-grid .tb-wide { grid-column:1/-1; }.tb-form-grid label.tb-check { display:flex; align-items:flex-start; gap:10px; line-height:1.6; }.tb-check input { flex-shrink:0; width:18px!important; height:18px; min-height:18px!important; margin-top:2px; }.tb-dialog textarea { min-height:90px; resize:vertical; }.tb-dialog output { color:var(--admin-danger,#a43737); font-size:12px; line-height:1.7; }
.taxi-billing-workspace :is(button,a,input,select):focus-visible,.taxi-billing-account :is(button,a,input):focus-visible,.tb-dialog :is(button,input,select,textarea):focus-visible { outline:2px solid var(--admin-accent,#285dde); outline-offset:2px; }
@media(max-width:900px) { .tb-invoice { flex-wrap:wrap; }.tb-invoice>div:first-of-type { min-width:180px; }.tb-invoice>div.tb-actions { width:100%; max-width:none; padding-left:0; } }
@media(max-width:600px) { [data-tb-panel],.tb-mandate,.tb-account-invoices,.tb-intro { padding:16px; }.tb-panel-head { align-items:flex-start; flex-direction:column; gap:12px; }.tb-tabs button { flex:1; font-size:12px; padding:11px 9px; }.tb-tabs { gap:5px; }.tb-export,.tb-form-grid { grid-template-columns:1fr; padding:16px; }.tb-export label,.tb-form-grid>label { grid-column:1; }.tb-form-grid { padding:0; }.tb-dialog form { padding:20px; }.tb-invoice { align-items:flex-start; gap:12px; }.tb-invoice>div:first-of-type { min-width:0; width:calc(100% - 44px); flex:auto; }.tb-invoice :is(.tb-actions,div:nth-last-child(2)) { margin-left:0; }.tb-invoice-tools { display:grid; grid-template-columns:1fr; }.tb-invoice-tools label { min-width:0; }.tb-dialog :is(input,select,textarea),.tb-invoice-tools :is(input,select),.tb-export :is(input,select) { font-size:16px; }.tb-package dl>div,.tb-facts>div { gap:12px; } }
/* Billing status is informational unless the operation actually failed. */
#overview-pricing #taxi-billing-message { color:var(--admin-muted,#66758a); }
#overview-pricing #taxi-billing-message.is-error { color:var(--admin-danger,#a43737); }
