/* Subscription and account pages only. Existing calculator styles are untouched. */
.subscription-page .site-page-hero{height:190px}
.subscription-page .page-intro{max-width:780px;font-size:1.12rem;line-height:1.65}
.subscription-page .subscription-status{background:var(--soft);border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:12px;padding:16px 20px;margin:20px 0;line-height:1.6}
.subscription-page .subscription-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:18px;margin:24px 0}
.subscription-page .plan-card{padding:24px;min-width:0;align-items:stretch}
.subscription-page .plan-card h3{font-size:1.25rem;margin:0 0 12px}
.subscription-page .plan-card p{line-height:1.65;margin:0 0 20px}
.subscription-page .availability{display:inline-block;font-weight:650;color:var(--text);margin-bottom:8px}
.subscription-page .category-nav,.subscription-page .subscription-actions{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;margin:24px 0}
.subscription-page .category-nav a{border:1px solid var(--border);background:var(--card);border-radius:12px;padding:12px 18px;min-height:44px;display:inline-flex;align-items:center}
.subscription-page .button-link{display:inline-flex;justify-content:center;align-items:center;min-height:44px;padding:12px 18px;border-radius:10px;text-align:center;text-decoration:none;white-space:normal}
.subscription-page .account-panel{max-width:720px;border:1px solid var(--border);background:var(--card);border-radius:16px;padding:24px;margin:24px 0;line-height:1.65}
.subscription-page fieldset{border:1px solid var(--border);border-radius:12px;padding:18px;min-width:0}
.subscription-page legend{padding:0 8px;font-weight:650}
.subscription-page .account-field{margin:0 0 18px}
.subscription-page label{display:block;font-weight:600;margin-bottom:8px}
.subscription-page input:not([type=checkbox]),.subscription-page select{width:100%;min-height:44px;box-sizing:border-box;background:var(--soft);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:10px}
.subscription-page .field-hint{font-size:.9rem;margin:8px 0}
.subscription-page button:disabled{cursor:not-allowed;opacity:1;background:var(--soft)!important;color:var(--text)!important;border:1px solid var(--border);white-space:normal;min-height:44px;padding:10px 16px}
.subscription-page .table-scroll{max-width:100%;overflow-x:auto}
.subscription-page table{border-collapse:collapse;width:100%;background:var(--card);font-size:.96rem}
.subscription-page caption{text-align:left;font-weight:600;padding:12px 0}
.subscription-page th,.subscription-page td{border:1px solid var(--border);padding:14px;text-align:left;vertical-align:top;overflow-wrap:anywhere}
.subscription-page th{background:var(--soft)}
.subscription-page .subscription-faq details{background:var(--card);border:1px solid var(--border);border-radius:12px;margin:10px 0;padding:14px 18px}
.subscription-page summary{cursor:pointer;min-height:32px;font-weight:600}
.subscription-page summary:focus-visible,.subscription-page input:focus-visible,.subscription-page select:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.subscription-page .site-page-content>section{scroll-margin-top:20px;margin:30px 0}
@media(max-width:640px){.subscription-page .site-page-hero{height:145px}.subscription-page .account-panel,.subscription-page .plan-card{padding:18px}.subscription-page .category-nav a{flex:1 1 100%;justify-content:center}.subscription-page .header-inner nav{gap:8px 14px;flex-wrap:wrap}.subscription-page th,.subscription-page td{padding:10px}}
@media(max-width:360px){.subscription-page .product-tagline{white-space:normal}}

/* Account links retain readable contrast in Dark mode; scoped to new pages. */
.subscription-page .account-panel{font-family:inherit}
.subscription-page main a{background:transparent;color:var(--accent)}
.subscription-page main .button-link,.subscription-page .subscription-actions a{background:#075dc8;color:#fff;border-radius:8px;padding:10px 14px;display:inline-flex;align-items:center;min-height:44px;text-decoration:none}
.subscription-page .category-nav a{background:var(--card);color:var(--text)}

/* The landing page is a gateway: one accessible link per customer category. */
.subscription-page .subscription-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:28px 0}
.subscription-page main .category-card{padding:26px;min-height:240px;background:var(--card);color:var(--text);text-decoration:none;align-items:flex-start;transition:border-color .15s ease,box-shadow .15s ease}
.subscription-page .category-card h2{font-size:1.4rem;line-height:1.25;margin:0 0 14px}
.subscription-page .category-card p{line-height:1.65;margin:0 0 24px}
.subscription-page .category-card-action{margin-top:auto;color:var(--accent);font-weight:700;text-decoration:underline;text-underline-offset:4px}
.subscription-page .category-card:hover{border-color:var(--accent);box-shadow:var(--aft-shadow)}
.subscription-page .category-card:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
@media(max-width:850px){.subscription-page .subscription-category-grid{grid-template-columns:1fr}.subscription-page main .category-card{min-height:0;padding:24px}}
@media(prefers-reduced-motion:reduce){.subscription-page main .category-card{transition:none}}
