/* Stable screen geometry across roles, including dialogs and mobile inputs. */
html{scrollbar-gutter:stable}
#app .modalBg{overscroll-behavior:contain;overflow-y:auto;align-items:flex-start;padding-top:max(20px,env(safe-area-inset-top));padding-bottom:max(20px,env(safe-area-inset-bottom))}
#app .modal{overscroll-behavior:contain;max-height:calc(100dvh - 40px);overflow:auto;animation:none}
#app :is(button,.btn){transition-property:background-color,border-color,color,opacity;transition-duration:120ms}
#app :is(.portalWorkspace,.appContent,.dscPlanDay,.v7OwnerDay){animation:none;scroll-behavior:auto}
.dscMenuLoading{min-height:50vh;display:grid;place-items:center}.dscMenuRefreshError{padding:14px;border:1px solid #ba7d41;border-radius:12px;color:#f3d2a7}
.dscBilling{max-width:1100px;margin:auto}.dscBillingSummary{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}.dscBillingSummary>div{border:1px solid var(--dsc-line,#3b4654);border-radius:17px;padding:23px;background:var(--dsc-surface,#171e26);display:flex;flex-direction:column;gap:8px}.dscBillingSummary span{font-size:13px;color:var(--dsc-muted,#b9c2ce)}.dscBillingSummary strong{font-size:32px;line-height:1.15;letter-spacing:-.04em;color:var(--dsc-text,#f4f2ee)}.dscBillingSummary small{font-size:12px;color:var(--dsc-muted,#abb5c0)}
.dscBillingTabs{display:flex;gap:6px;padding:6px;background:var(--dsc-surface,#171e26);border:1px solid var(--dsc-line,#3b4654);border-radius:14px;margin:0 0 24px}.dscBillingTabs>button{flex:1;min-height:44px;padding:8px 12px;background:transparent;border:1px solid transparent;color:var(--dsc-muted,#b9c2ce);border-radius:9px;font-size:13px;font-weight:650;cursor:pointer}.dscBillingTabs>button.active{background:var(--dsc-gold,#d5b575);color:#101319}
.dscBillingWorkspace>header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.dscBillingWorkspace h2{font-size:24px;letter-spacing:-.035em;margin:0 0 8px}.dscBillingWorkspace p{font-size:14px;color:var(--dsc-muted,#b4bdc8);line-height:1.6;margin:0}.dscBillingWorkspace header>.btn{flex:none}.dscBillingWorkspace .btn{min-height:44px}
.dscInvoiceFilters{display:grid;grid-template-columns:2fr 1fr;gap:16px;margin:0 0 20px}.dscBilling label{display:flex;flex-direction:column;gap:8px;font-size:12px;color:var(--dsc-muted,#b9c2ce)}.dscBilling :is(input,select,textarea){font-size:16px;min-height:46px;max-width:100%;width:100%;box-sizing:border-box}.dscBilling .v1017InvoiceRow{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:16px!important;padding:22px!important;border:1px solid var(--dsc-line,#3b4654);border-radius:15px;background:var(--dsc-surface,#171e26);margin-bottom:12px}.dscBilling .v1017InvoiceMain{min-width:0;display:flex;flex-direction:column;gap:7px}.dscBilling .v1017InvoiceMain b{font-size:17px}.dscBilling .v1017InvoiceMain :is(span,small){line-height:1.5;font-size:12px;overflow-wrap:anywhere}.dscBilling .v1017InvoiceMoney{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.dscBilling .v1017InvoiceMoney b{font-size:21px;white-space:nowrap}.dscInvoiceDetails{grid-column:1/-1;border-top:1px solid var(--dsc-line,#3b4654);padding-top:4px}.dscInvoiceDetails>summary{min-height:44px;padding:12px 0;cursor:pointer;font-size:13px;color:var(--dsc-muted,#bec6d0)}.dscInvoiceDetails .v1017InvoiceEmail{margin:8px 0 16px}.dscInvoiceDetails .v1017InvoiceActions{display:flex;flex-wrap:wrap;gap:8px}.dscInvoiceDetails button{min-height:44px}.dscInvoiceTypes{display:flex;gap:10px;margin-bottom:18px}.dscInvoiceTypes button{min-height:44px;padding:10px 20px;border:1px solid var(--dsc-line,#465264);background:var(--dsc-surface,#171e26);color:var(--dsc-text,#eee);border-radius:10px}.dscInvoiceTypes button.active{border-color:var(--dsc-gold,#d5b575);color:var(--dsc-gold,#d5b575)}.dscBilling .v1017Builder{margin:0;padding:24px!important}.dscBilling .v1017FormGrid{gap:18px}.dscBillingEmpty{border:1px dashed var(--dsc-line,#465264);border-radius:16px;padding:36px 24px;text-align:center}.dscBillingEmpty h3{font-size:19px;margin:0 0 10px}.dscBalanceList>article{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:20px;border-bottom:1px solid var(--dsc-line,#465264);padding:22px 0}.dscBalanceList h3{font-size:16px;margin:0 0 5px}.dscBalanceList strong{font-size:23px}.dscBillingSettingsGroup{padding:0 20px;margin:18px 0;border:1px solid var(--dsc-line,#465264);border-radius:15px;background:var(--dsc-surface,#171e26)}.dscBillingSettingsGroup>summary{cursor:pointer;padding:20px 0;font-size:15px;line-height:1.5}.dscBillingSettingsGroup[open]{padding-bottom:20px}.dscBillingSettingsGroup>label{max-width:480px}.dscBilling .dscOneTimeAr{margin:0}.dscBilling .financeHouseGrid{margin-top:16px}.dscBilling :is(.v1017InvoiceHero,.v1017BillingBadge){display:none!important}
@media(max-width:600px){.dscBillingSummary{gap:10px;margin-bottom:18px}.dscBillingSummary>div{padding:18px 15px}.dscBillingSummary strong{font-size:27px}.dscBillingTabs{gap:2px;padding:4px}.dscBillingTabs>button{padding:8px 5px;font-size:11px}.dscBillingWorkspace>header{display:block;margin-bottom:20px}.dscBillingWorkspace>header>.btn{width:100%;margin-top:16px}.dscInvoiceFilters{grid-template-columns:1fr 1fr;gap:10px}.dscBilling .v1017InvoiceRow{padding:17px!important;gap:12px!important}.dscBilling .v1017InvoiceMoney b{font-size:18px}.dscBilling .v1017Builder{padding:19px!important}.dscBilling .v1017FormGrid{grid-template-columns:1fr!important}.dscBilling .v1017FormGrid .wide{grid-column:auto!important}.dscBilling .v1017BuilderActions{display:grid;grid-template-columns:1fr}.dscBalanceList>article{grid-template-columns:1fr auto;gap:14px}.dscBalanceList>article>.btn{grid-column:1/-1}.dscBillingSettingsGroup{padding:0 15px}.dscBillingSettingsGroup>summary{font-size:14px}#app :is(input,select,textarea){font-size:16px!important}#app .modal{max-height:calc(100dvh - 24px)}#app .modalBg{padding:12px}}
@media(prefers-reduced-motion:reduce){#app *,#app *::before,#app *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.dscBillingTopActions{display:flex;gap:8px;flex:none}@media(max-width:600px){.dscBillingTopActions{margin-top:16px}.dscBillingTopActions .primary{flex:1}}
.dscBilling :is(select,input,textarea){border:1px solid var(--dsc-line,#465264);border-radius:10px;background:var(--dsc-bg,#0f141a);color:var(--dsc-text,#eee);padding:10px 12px}
