.tb-panel + .tb-panel { margin-top:16px }
.tb-panel h1,.tb-panel h2,.tb-dialog h2 { margin:0 0 14px }
.tb-panel h2,.tb-dialog h2 { font-size:16px }
.tb-panel p,.tb-form small { color:var(--muted); line-height:1.6 }
.tb-form { display:grid; gap:16px }
.tb-form label { display:grid; gap:7px; font-size:13px }
.tb-form input,.tb-form select { width:100%; height:38px; padding:0 10px; color:var(--ink); background:var(--surface); border:1px solid var(--line); border-radius:6px }
.tb-form [role=alert] { color:#d34142 }
.tb-form [role=alert]:empty { display:none }
.tb-form :user-invalid { border-color:#d34142 }
.tb-dialog { width:min(400px,90vw); padding:24px; background:var(--surface); color:var(--ink); border:0; border-radius:9px; box-shadow:0 12px 50px #172b4d2b }
.tb-dialog::backdrop { background:#15223460 }
.tb-dialog header { display:flex; align-items:baseline; justify-content:space-between }
.tb-buyer { max-width:530px; margin:clamp(20px,8vh,80px) auto; padding:16px }
.tb-buyer h1 { font-size:22px }
.tb-progress { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:20px 0; padding:15px 0; border-block:1px solid var(--line) }
.tb-progress small,.tb-progress strong { display:block }
.tb-progress small { color:var(--muted) }
.tb-progress strong { margin-top:6px; font-size:20px; font-variant-numeric:tabular-nums }
.tb-payment { max-width:420px }
.tb-order-progress { color:var(--muted); font-size:12px; margin-top:5px }
.tb-filters { display:flex; flex-wrap:wrap; align-items:end; gap:12px; margin-bottom:18px }
.tb-filters label { display:grid; gap:6px; color:var(--muted); font-size:13px }
.tb-filters input,.tb-filters select { width:180px; height:36px; padding:0 10px; color:var(--ink); background:var(--surface); border:1px solid var(--line); border-radius:6px }
.tb-filter-actions { display:flex; gap:10px }
.tb-onboarding-mask { z-index:2000 }
.tb-onboarding { display:flex; flex-direction:column; background:var(--surface); color:var(--ink) }
.tb-onboarding-steps { display:flex; align-items:center; margin:0; padding:18px 24px; border-bottom:1px solid var(--line); color:var(--muted); font-size:13px; list-style:none }
.tb-step { display:flex; align-items:center; gap:8px; white-space:nowrap }
.tb-step:not(:last-child)::after { content:""; width:48px; height:1px; margin:0 16px; background:var(--line) }
.tb-step-number { display:grid; flex:none; place-items:center; width:24px; height:24px; border:1px solid var(--line); border-radius:50%; font-size:12px }
.tb-step.active { color:var(--blue); font-weight:600 }
.tb-step.active .tb-step-number { border-color:var(--blue); background:var(--blue); color:#fff }
.tb-step.done .tb-step-number { border-color:var(--blue); color:var(--blue) }
.tb-onboarding-content,.tb-onboarding-form { flex:1; min-height:0; display:flex; flex-direction:column }
.tb-onboarding-body { flex:1; overflow:auto; padding:24px }
.tb-onboarding-body h2 { margin:0 0 12px; font-size:16px }
.tb-onboarding-hint,.tb-authorization p,.tb-onboarding-success p { color:var(--muted); line-height:1.6 }
.tb-onboarding-body label { margin-top:20px }
.tb-onboarding-body [role=alert] { display:block; margin-top:12px }
.tb-platform { display:flex; flex-direction:column; align-items:flex-start; gap:7px; width:100%; padding:16px; border:1px solid var(--blue); border-radius:6px; color:var(--ink); background:var(--surface-raised); text-align:left }
.tb-platform span { color:var(--muted); font-size:12px }
.tb-authorization { margin-top:20px; padding:18px; border:1px solid var(--line); border-radius:6px }
.tb-form-section { display:grid; gap:16px; min-width:0 }
.tb-form-section h3 { margin:0; color:var(--ink); font-size:14px; font-weight:600 }
.tb-form-section + .tb-form-section { padding-top:20px; border-top:1px solid var(--line) }
.tb-inline-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px }
.tb-inline-fields > * { min-width:0 }
.tb-inline-note { margin:0; padding:12px 14px; border-radius:6px; background:var(--surface-raised); color:var(--muted); font-size:13px; line-height:1.6 }
.tb-field-hint { color:var(--muted); font-size:12px; font-weight:400; line-height:1.5 }
.tb-product-name { min-width:160px; max-width:300px; white-space:normal; overflow-wrap:anywhere; line-height:1.5 }
.tb-product-name small { display:block; color:var(--muted); font-size:12px; margin-top:3px }
.tb-status { display:inline-flex; align-items:center; gap:6px; color:var(--muted); font-size:13px; white-space:nowrap }
.tb-status::before { content:""; width:6px; height:6px; border-radius:50%; background:currentColor }
.tb-status[data-state="enabled"],.tb-status[data-state="connected"] { color:var(--green) }
.tb-status[data-state="expired"] { color:#d98a18 }
.tb-product-drawer { display:flex; flex-direction:column; overflow:hidden }
.tb-product-drawer .drawer-header { flex:none }
.tb-product-form { display:flex; flex:1; flex-direction:column; min-height:0; gap:0 }
.tb-product-body { display:grid; align-content:start; gap:16px; flex:1; min-height:0; overflow:auto }
.tb-product-form .drawer-footer { flex:none }
.tb-shop-meta { display:flex; flex-wrap:wrap; gap:16px 40px; align-items:flex-start; padding:16px 0; margin-bottom:18px; border-bottom:1px solid var(--line) }
.tb-shop-meta > div { display:flex; min-width:140px; flex-direction:column; gap:7px }
.tb-shop-meta span { color:var(--muted); font-size:12px }
.tb-shop-meta strong { color:var(--ink); font-size:14px; font-weight:600; overflow-wrap:anywhere }
.tb-shop-detail { display:grid; gap:16px }
.tb-shop-detail > div { display:grid; grid-template-columns:minmax(100px,140px) minmax(0,1fr); gap:12px; align-items:start }
.tb-shop-detail dt,.tb-shop-detail .label { color:var(--muted) }
.tb-shop-detail dd { margin:0; color:var(--ink); overflow-wrap:anywhere }
.tb-product-filters { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin:0 0 16px }
.tb-product-filters input,.tb-product-filters select { height:36px; padding:0 10px; color:var(--ink); background:var(--surface); border:1px solid var(--line); border-radius:6px }
.tb-product-filters input { width:240px; max-width:100% }
.tb-product-filters select { min-width:120px }
.tb-empty { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; min-height:136px; padding:24px; color:var(--muted); text-align:center }
.tb-empty strong { color:var(--ink); font-size:14px; font-weight:600 }
.tb-empty p { margin:0; font-size:13px; line-height:1.6 }
.tb-badge { display:inline-flex; align-items:center; gap:6px; color:var(--muted); font-size:13px; white-space:nowrap }
.tb-badge::before { content:""; width:6px; height:6px; flex:none; border-radius:50%; background:currentColor }
.tb-badge[data-state="enabled"],.tb-badge[data-state="connected"] { color:var(--green) }
.tb-badge[data-state="expired"] { color:#d98a18 }
@media(max-width:600px) { .tb-inline-fields { grid-template-columns:1fr } }
@media(max-width:600px) { .tb-shop-meta { gap:16px 24px } .tb-shop-meta > div { min-width:120px } .tb-product-filters input { width:100% } }
