/* D4 Studio billing only: account, private administration and versioned sales terms. */
.studio-billing-page { max-width: 1100px; padding-block: 38px 64px; }
.studio-billing-breadcrumb { display:flex; gap:12px; font-size:12px; color:var(--muted,#6b7165); margin-bottom:26px; }
.studio-billing-heading h1 { font-size:clamp(30px,5vw,46px); letter-spacing:-1.4px; margin:16px 0; }
.studio-billing-heading p,.studio-billing-card p { line-height:1.7; }
.studio-billing-card { background:#fff; border:1px solid #e1e2d9; border-radius:16px; padding:26px; margin-block:22px; min-width:0; }
.studio-billing-card h2 { font-size:23px; letter-spacing:-.5px; margin-top:0; }
.studio-billing-card h3 { font-size:18px; margin:0 0 12px; }
.studio-billing-row,.studio-billing-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:14px; }
.studio-billing-actions { justify-content:flex-start; margin-block:18px; }
.studio-billing-actions form { margin:0; }
.studio-billing-status { display:inline-block; padding:5px 9px; background:#edf0e6; color:#48593e; border-radius:6px; font-size:11px; font-weight:600; }
.studio-billing-notice { border:1px solid #dce3cc; background:#f0f3e9; border-radius:10px; padding:16px 20px; line-height:1.7; margin-block:20px; }
.studio-billing-muted,.studio-billing-footer { color:#646d5c; font-size:12px; line-height:1.7; overflow-wrap:anywhere; }
.studio-billing-checkout { display:grid; grid-template-columns:minmax(240px,.8fr) minmax(0,1.4fr); gap:24px; align-items:start; }
.studio-billing-summary { position:sticky; top:90px; }
.studio-billing-price { font-size:36px; letter-spacing:-1px; margin-bottom:0; }
.studio-billing-summary ul { padding-left:20px; line-height:2; font-size:13px; }
.studio-billing-form label { display:block; font-size:13px; margin-top:19px; margin-bottom:8px; }
.studio-billing-form input:not([type=checkbox]):not([type=hidden]),.studio-billing-form select,.studio-billing-form textarea { width:100%; min-width:0; padding:12px 14px; border:1px solid #d5d9cc; border-radius:8px; background:#fff; color:#20241e; font:inherit; font-size:14px; }
.studio-billing-form :is(input,select,textarea):focus-visible { outline:2px solid #8c9c77; outline-offset:3px; }
.studio-billing-form .studio-billing-check { display:flex; align-items:flex-start; gap:12px; line-height:1.7; margin-block:22px; }
.studio-billing-check input { margin-top:5px; accent-color:#52684a; flex-shrink:0; }
.studio-billing-check a { text-decoration:underline; }
.studio-billing-fields,.studio-billing-settings { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.studio-billing-settings > .studio-billing-actions { grid-column:1 / -1; }
.studio-billing-table-scroll { overflow:auto; }
.studio-billing-table { width:100%; text-align:left; border-collapse:collapse; font-size:13px; }
.studio-billing-table th { font-size:11px; color:#626c57; letter-spacing:.3px; }
.studio-billing-table th,.studio-billing-table td { padding:16px 12px; border-bottom:1px solid #e9ece3; vertical-align:top; }
.studio-billing-table small { display:inline-block; max-width:300px; overflow-wrap:anywhere; font-size:11px; color:#646d5c; margin-top:6px; }
.studio-billing-table .text-link { display:inline-block; margin-top:10px; }
.studio-billing-setup li { line-height:1.8; margin-bottom:12px; padding-left:8px; }
.studio-billing-setup code { overflow-wrap:anywhere; font-size:12px; }
.studio-billing-terms { max-width:820px; line-height:1.85; }
.studio-billing-terms p { margin-block:22px; }
@media(max-width:850px) {
 .studio-billing-checkout,.studio-billing-settings { grid-template-columns:1fr; }
 .studio-billing-summary { position:static; }
 .studio-billing-card { padding:22px; }
}
@media(max-width:480px) {
 .studio-billing-fields { grid-template-columns:1fr; gap:0; }
 .studio-billing-actions .button { white-space:normal; text-align:center; }
}
