/* Pricing and subscription controls extend the shared ink/mono system. */
.bill-controls { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px 24px; margin:24px 0; }
.bill-controls .bill-tabs { margin:0; }
.bill-currency { display:flex; align-items:center; gap:12px; color:var(--soft-text-color); font:inherit; font-size:12.5px; }
.bill-currency select { min-height:44px; padding:10px 30px 10px 12px; border:1px solid var(--line-strong-color); background:var(--page-bg); color:var(--strong-text-color); font:inherit; direction:ltr; cursor:pointer; }
.bill-currency select:focus-visible { outline:2px solid var(--strong-text-color); outline-offset:3px; }
.bill-currency select:disabled { cursor:default; opacity:.7; }
.bill-subscription-price { font-size:18px; font-weight:600; font-variant-numeric:tabular-nums; }
[data-pricing-panel][hidden] { display:none !important; }
.bill-tabs { display:flex; width:fit-content; max-width:100%; border:1px solid var(--line-strong-color); margin:24px 0; padding:4px; gap:4px; }
.bill-tabs button { flex:0 1 auto; min-height:44px; padding:12px 22px; border:0; background:transparent; color:var(--strong-text-color); font:inherit; font-size:13px; font-weight:500; line-height:1.5; cursor:pointer; }
.bill-tabs button[aria-pressed="true"] { background:var(--strong-text-color); color:var(--page-bg); }
.bill-tabs button:focus-visible, .bill-refresh:focus-visible { outline:2px solid var(--strong-text-color); outline-offset:3px; }
.bill-panel-title { font:inherit; font-size:15px; font-weight:600; letter-spacing:-.01em; margin:24px 0 14px; }
.bill-plans { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.bill-plan { padding:26px; border:1px solid var(--line-strong-color); color:var(--strong-text-color); display:flex; flex-direction:column; min-width:0; }
.bill-plan.is-featured { background:var(--strong-text-color); color:var(--page-bg); }
.bill-plan.is-selected { outline:2px solid var(--strong-text-color); outline-offset:4px; }
.bill-plan-head { display:flex; flex-wrap:wrap; align-items:baseline; gap:8px 14px; min-height:34px; }
.bill-plan-head h3 { font:inherit; font-family:var(--font-mono); font-size:11.5px; font-weight:500; letter-spacing:.14em; margin:0; }
.bill-plan-head span { font-family:var(--font-mono); font-size:10px; letter-spacing:.06em; opacity:.8; }
.bill-price { margin-top:14px; font-family:var(--font-display); font-size:48px; font-weight:600; letter-spacing:-.035em; line-height:1; font-variant-numeric:tabular-nums; }
.bill-plan .bill-period { margin:8px 0 0; opacity:.7; font-size:12.5px; }
.bill-grant { border-top:1px solid color-mix(in srgb,currentColor 25%,transparent); margin-top:28px; padding-top:22px; display:flex; flex-direction:column; gap:8px; }
.bill-grant bdi { font-family:var(--font-display); font-size:30px; font-weight:600; line-height:1; letter-spacing:-.025em; font-variant-numeric:tabular-nums; }
.bill-grant span { font-size:12px; opacity:.75; }
.bill-plan .bill-minutes { font-size:13px; margin:16px 0 0; line-height:1.6; }
.bill-plan .bill-storage { font-size:12px; margin:4px 0 0; line-height:1.6; color:var(--soft-text-color); }
.bill-plan .bill-fit { font-size:13px; line-height:1.6; opacity:.75; margin:18px 0 24px; }
.bill-plan .bill-buy { width:100%; margin-top:auto; min-height:46px; padding:12px 14px; display:flex; justify-content:space-between; gap:12px; color:inherit; border-color:color-mix(in srgb,currentColor 35%,transparent); background:transparent; font-size:12.5px; font-weight:500; line-height:1.5; text-align:start; white-space:normal; }
.bill-plan.is-featured .bill-buy { background:var(--page-bg); color:var(--strong-text-color); }
.bill-buy:disabled { opacity:.5; cursor:not-allowed; }
.bill-policy, .mc-account .bill-policy { margin:16px 0; font-size:13px; line-height:1.65; color:var(--soft-text-color); max-width:90ch; }
.bill-status { border-block:1px solid var(--line-strong-color); padding:26px 0; margin-bottom:32px; font-size:13px; line-height:1.65; }
.bill-status-head { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:18px; }
.bill-status .bill-label { font-family:var(--font-mono); font-size:10.5px; letter-spacing:.12em; color:var(--soft-text-color); margin-bottom:6px; }
.bill-status h2 { font-family:var(--font-display); font-size:26px; line-height:1.2; font-weight:600; letter-spacing:-.025em; }
.bill-status .bill-state { margin-top:6px; font-size:12px; }
.bill-status .needs-attention { color:var(--err-color); }
.bill-status .bill-explanation { color:var(--soft-text-color); margin-top:12px; max-width:82ch; }
.bill-status .bill-breakdown { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin:24px 0 14px; }
.bill-breakdown dt { color:var(--soft-text-color); font-family:var(--font-mono); font-size:10.5px; letter-spacing:.1em; }
.bill-breakdown dd { font-size:20px; font-weight:600; font-variant-numeric:tabular-nums; }
.bill-expiry { border-inline-start:2px solid var(--strong-text-color); padding-inline-start:12px; }
.bill-refresh { padding:12px 0; margin-top:8px; background:none; border:0; color:var(--strong-text-color); font:inherit; font-size:12px; text-decoration:underline; text-underline-offset:4px; cursor:pointer; }
.bill-status-head .bd-btn { white-space:normal; text-align:start; line-height:1.6; min-height:44px; }
.bill-message { padding:14px 16px; margin:14px 0; border:1px solid var(--line-strong-color); font-size:13px; line-height:1.6; }
.bill-message:empty { display:none; }
@media(max-width:700px) {
 .bill-tabs { width:100%; }
 .bill-tabs button { flex:1; padding:12px 10px; }
 .bill-plans { grid-template-columns:1fr; gap:16px; }
 .bill-plan { padding:24px; display:grid; grid-template-columns:1fr 1fr; gap:0 20px; }
 .bill-plan-head { grid-column:1/-1; min-height:0; margin-bottom:14px; }
 .bill-price { grid-column:1; margin-top:0; font-size:clamp(30px,7vw,40px); }
 .bill-plan .bill-period { grid-column:1; }
 .bill-grant { grid-column:2; grid-row:2/4; margin:0; padding:0 0 0 18px; border-top:0; border-inline-start:1px solid color-mix(in srgb,currentColor 25%,transparent); justify-content:center; }
 [dir="rtl"] .bill-grant { padding:0 18px 0 0; }
 .bill-plan .bill-minutes,.bill-plan .bill-storage,.bill-plan .bill-fit,.bill-plan .bill-buy { grid-column:1/-1; }
 .bill-plan .bill-fit { margin:8px 0 20px; }
 .bill-status-head { align-items:flex-start; flex-direction:column; gap:14px; }
 .bill-status .bill-breakdown { gap:16px; }
 .bill-policy, .mc-account .bill-policy { font-size:12.5px; }
}
/* Connected RTL scripts must never inherit tracked Latin UI lettering. */
[dir="rtl"] .bill-status, [dir="rtl"] .bill-status *, [dir="rtl"] .bill-plan, [dir="rtl"] .bill-plan *, [dir="rtl"] .bill-tabs *, [dir="rtl"] .bill-policy { letter-spacing:0; }
