.commercial-page{margin:0;background:#f6f8fb;color:#172537;font:400 16px/1.6 var(--as-font-family, system-ui, sans-serif)}.commercial-page,.commercial{--surface:#fff;--ink:#172537;--muted:#536275;--border:#d6dee8;--accent:#1657ce;--bg:#f6f8fb}.commercial-page[data-theme=dark],body[data-theme=dark] .commercial,html[data-theme=dark] .commercial{--surface:#192331;--ink:#edf2f8;--muted:#b8c5d6;--border:#425066;--accent:#8db9ff;--bg:#111925}.commercial-page[data-theme=dark]{background:var(--bg);color:var(--ink)}.commercial,.commercial *,.commercial-page *{box-sizing:border-box}.commercial{max-width:1680px;margin:0 auto;padding:40px 16px;color:var(--ink);background:var(--bg);font:400 16px/1.6 var(--as-font-family, system-ui, sans-serif)}.commercial h1{font-size:clamp(30px,3vw,48px);line-height:1.25;margin:12px 0 20px;font-weight:600;letter-spacing:-.04em}.commercial h2{font-size:24px;font-weight:600;line-height:1.4}.commercial p{color:var(--muted)}.commercial .eyebrow{font-size:13px;letter-spacing:.06em;min-height:22px;color:var(--accent)}.commercial-heading{margin-bottom:32px}.commercial .cycle-switch{border:0;padding:0;display:flex;gap:12px;margin:28px 0 0}.commercial .cycle-switch legend{margin-bottom:8px}.commercial .cycle-switch label{display:flex;align-items:center;min-height:44px;border:1px solid var(--border);border-radius:10px;padding:0 20px;background:var(--surface);cursor:pointer}.commercial input{accent-color:var(--accent)}.commercial-note{font-size:14px}.commercial-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:24px 0 48px}.commercial-card{display:flex;flex-direction:column;padding:24px;background:var(--surface);border:1px solid var(--border);border-radius:16px;min-width:0}.commercial-card h2{margin:8px 0}.commercial .commercial-price{font-size:20px;color:var(--ink);margin:8px 0 20px}.commercial dl{margin:0 0 24px;flex:1}.commercial dl div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--border)}.commercial dt{color:var(--muted);min-width:0;font-weight:400}.commercial dd{margin:0;white-space:nowrap}.commercial-button{display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 14px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--ink);text-decoration:none;font:inherit;cursor:pointer;text-align:center;margin-top:10px}.commercial-button.primary{background:#1657ce;color:#fff;border-color:#1657ce}.commercial-button:disabled{cursor:default;color:var(--muted);background:var(--bg)}.commercial a:focus-visible,.commercial input:focus-visible,.commercial summary:focus-visible,.commercial-page a:focus-visible,.theme-toggle:focus-visible{outline:3px solid var(--accent,#1657ce);outline-offset:4px}.commercial [hidden]{display:none!important}.commercial table{border-collapse:collapse;width:100%;background:var(--surface);table-layout:fixed}.commercial caption{text-align:left;padding:12px 0;color:var(--muted)}.commercial th,.commercial td{padding:16px;border-bottom:1px solid var(--border);text-align:center;font-weight:400;overflow-wrap:anywhere}.commercial th:first-child{text-align:left;width:28%}.commercial thead th{font-weight:600}.mobile-comparison{display:none}.commercial details{background:var(--surface);border:1px solid var(--border);border-radius:10px;margin:12px 0;padding:0 16px}.commercial summary{padding:14px 0;cursor:pointer;min-height:48px}.current-plan,.commercial-confirm{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:24px}.commercial-confirm{max-width:720px;margin:30px auto}.commercial-confirm form{margin:24px 0}.commercial-confirm .commercial-button{width:100%}.commercial-page .site-header{border-bottom:1px solid var(--border);background:var(--surface)}.commercial-page .site-header__inner{max-width:1680px;margin:auto;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:20px}.commercial-page .site-brand{font-weight:600;letter-spacing:.06em}.commercial-page .site-header a{color:var(--ink);text-decoration:none;min-height:44px;display:inline-flex;align-items:center}.commercial-page .site-nav,.commercial-page .header-actions{display:flex;align-items:center;gap:24px}.theme-toggle{min-height:44px;min-width:44px;padding:8px 12px;background:transparent;border:1px solid #8190a5;border-radius:8px;color:inherit;font:inherit;cursor:pointer}.commercial-page .cta-footer{max-width:1680px;margin:auto;padding:32px 16px;color:var(--muted);border-top:1px solid var(--border)}.commercial-page .cta-footer nav{display:flex;gap:24px;flex-wrap:wrap}.commercial-page .cta-footer a{display:inline-flex;align-items:center;min-height:44px;color:inherit}.commercial-page .cta-footer small{display:block;margin-top:16px}@media(max-width:1100px){.commercial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.commercial-page .site-nav{display:none}}@media(max-width:600px){.commercial{padding:32px 16px}.commercial-grid{grid-template-columns:1fr;gap:16px;margin-bottom:40px}.commercial-card{padding:20px}.desktop-comparison{display:none}.mobile-comparison{display:block}.commercial-page .site-header__inner{gap:8px;flex-wrap:wrap}.commercial-page .header-actions{gap:12px}.commercial-page .site-brand{font-size:14px}.commercial-page .header-actions a{font-size:14px}.theme-toggle{font-size:13px;padding:8px}.commercial-confirm{padding:20px}.commercial dl div{font-size:15px}}

/* Shared public shell stays usable alongside the landing page stylesheet. */
.landing-v2 .site-header__inner{max-width:1680px;padding-left:16px;padding-right:16px}
.landing-v2 .site-header a,.landing-v2 .cta-footer a{min-height:44px;display:inline-flex;align-items:center;font-weight:400}
.landing-v2 .header-actions{font-weight:400}
.landing-v2[data-theme=dark] .site-header{background:#192331;color:#edf2f8}
.landing-v2[data-theme=dark] .site-header a{color:#edf2f8}
@media(max-width:600px){.landing-v2 .site-header__inner{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}.landing-v2 .header-actions{gap:12px}.landing-v2 .site-brand{font-size:14px}.landing-v2 .site-nav{display:none}}

/* One product surface in the public and authenticated shells. */
.commercial-heading h1,.commercial-heading h2{font-size:clamp(28px,2.5vw,38px);letter-spacing:-.035em;line-height:1.3;margin:8px 0 12px}
.commercial-heading p{margin:8px 0}
.commercial-card-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.commercial-card-heading h2{font-size:24px;letter-spacing:-.025em}
.commercial .commercial-position{margin:0 0 8px;min-height:26px;font-size:15px}
.commercial .commercial-price{font-size:22px;font-weight:600;letter-spacing:-.025em}
.commercial-card-featured{border-color:var(--accent)}
.commercial-card-current{box-shadow:inset 0 3px 0 var(--accent)}
.commercial-badge{font-size:12px;font-weight:600;color:var(--accent);background:var(--bg);border-radius:6px;padding:4px 8px;white-space:nowrap}
.commercial-detail-link{display:flex;justify-content:center;align-items:center;gap:8px;min-height:44px;margin-top:4px;color:var(--muted);font-size:14px;text-decoration:none}
.commercial dd{font-variant-numeric:tabular-nums;font-weight:600}
.commercial .current-plan{padding:16px 20px;margin-bottom:20px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.commercial .current-plan h2,.commercial .current-plan p{margin:0;font-size:16px}
.commercial .current-plan>span{color:var(--muted);font-size:14px}
.commercial-comparison>p{max-width:900px;font-size:15px}
.commercial tbody th[colspan]{background:var(--bg);font-weight:600;color:var(--accent);padding-top:24px}
.commercial-app{width:100%;background:transparent;padding-top:24px}
.commercial-app .commercial-heading br{display:none}
.commercial-app .commercial-heading h1{font-size:30px}
.commercial-app .commercial-heading{margin-bottom:20px}
.commercial{scroll-margin-top:90px}
.commercial-comparison{scroll-margin-top:90px}
.commercial .commercial-policy-status{color:var(--muted);font-size:14px}
@media(min-width:1101px) and (max-width:1450px){.commercial-app .commercial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.commercial-app .commercial-heading h1{font-size:26px}.commercial .current-plan{gap:8px 12px}.commercial .current-plan p{flex-basis:100%}.commercial-card-heading h2{font-size:24px}}

/* Price hierarchy and quiet product accents share one surface contract. */
/* The 36px surface sits inside a 46px native radio hit area. */
.commercial .cycle-switch{display:flex;gap:2px;width:fit-content;margin:14px 0 8px;padding:0 3px;border:0;border-radius:9px;background:transparent;position:relative;isolation:isolate}
.commercial .cycle-switch::before{content:"";position:absolute;inset:5px 0;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface) 85%,var(--bg));z-index:-1}
.commercial .cycle-switch legend{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.commercial .cycle-switch label{position:relative;display:flex;align-items:center;justify-content:center;min-height:46px;padding:0;min-width:94px;border:0;border-radius:7px;background:transparent;margin:0;color:var(--muted);font-size:14px;font-weight:400}
.commercial .cycle-switch input{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:pointer}
.commercial .cycle-switch label span{display:flex;align-items:center;justify-content:center;height:30px;width:100%;padding:0 20px;border-radius:6px;pointer-events:none}
.commercial .cycle-switch label:hover span{background:var(--bg);color:var(--ink)}
.commercial .cycle-switch input:checked+span{background:color-mix(in srgb,var(--accent) 8%,var(--surface));color:var(--accent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 22%,transparent),0 1px 2px rgba(16,40,75,.06)}
.commercial .cycle-switch input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}
.commercial-card{position:relative;box-shadow:var(--as-shadow-soft,0 4px 16px rgba(16,40,75,.045));overflow:hidden;border-radius:var(--as-card-radius,16px)}
.commercial-card::before{content:"";height:4px;position:absolute;inset:0 0 auto;background:var(--card-tone,var(--border))}
.commercial-card--lite{--card-tone:#9dbfec;background:color-mix(in srgb,#4c8bdc 4%,var(--surface))}
.commercial-card--trader{--card-tone:#2867d7;background:color-mix(in srgb,#4c8bdc 7%,var(--surface));box-shadow:0 8px 24px rgba(24,77,153,.09)}
.commercial-card--pro{--card-tone:#345b8c;background:color-mix(in srgb,#2b5084 6%,var(--surface))}
.commercial-card-current::before{background:var(--card-tone,var(--accent))}
.commercial .commercial-price{font-size:clamp(24px,2vw,32px);line-height:1.3;margin:12px 0;font-weight:600}
.commercial .commercial-price-unit{font-size:16px;font-weight:400;color:var(--muted)}
.commercial-price-area{min-height:150px;padding-top:8px}
.commercial .commercial-price-detail{font-size:14px;line-height:1.6;margin:0 0 20px}
.commercial-card h2{margin-top:16px}
.commercial tbody tr:hover td{background:var(--bg)}
.commercial thead th{background:var(--surface);position:sticky;top:60px;z-index:1}
.commercial tbody th[colspan]{font-size:16px;letter-spacing:.01em}
@media(max-width:600px){.commercial .commercial-price{font-size:30px}.commercial .cycle-switch{width:100%}.commercial .cycle-switch label{flex:1;justify-content:center}}
body.as-page-topbar-active:has(.commercial-app) .dashboard-topbar-title h1{font-size:20px;font-weight:400;letter-spacing:.035em}
body.as-page-topbar-active:has(.commercial-app) .dashboard-topbar-title span{font-weight:400}
.commercial .commercial-badge{font-weight:400;padding:3px 7px}
.commercial details.commercial-comparison{padding:0 20px;margin:0;border-radius:16px}
.commercial-comparison>summary{font-size:20px;color:var(--ink);padding:20px 0}
.comparison-hint{float:right;font-size:14px;color:var(--muted);line-height:32px}
.comparison-content>p{font-size:14px;max-width:900px}
.commercial .comparison-content{padding-bottom:16px}
.commercial tbody th[colspan]{padding:24px 16px 12px;border-bottom:2px solid var(--border);color:var(--ink);font-weight:600}
.commercial tbody tr:hover th[scope=row],.commercial tbody tr:hover td{background:var(--bg)}
@media(max-width:768px){.desktop-comparison{display:none}.mobile-comparison{display:block}.commercial details.commercial-comparison{padding:0 16px}.commercial-comparison>summary{font-size:18px}.comparison-hint{float:none;display:block;font-size:13px;line-height:1.5;margin-top:4px}.commercial .mobile-comparison details{border:0;border-top:1px solid var(--border);border-radius:0;padding:0}.commercial .mobile-comparison dd{white-space:normal;text-align:right}}

.commercial-app .commercial-heading h2{font-size:30px}
@media(max-width:600px){.commercial-app .commercial-heading h2{font-size:26px}}

/* Final page polish: preserve the shared shell and product policy contract. */
@media(min-width:769px){.commercial-app{padding-top:12px}}
body.as-page-topbar-active:has(.commercial-app) [data-page-topbar-description][hidden]{display:none}
.commercial-card--trader::before{height:5px}
.commercial-card--trader .commercial-badge{background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:var(--accent)}
.commercial-card--pro.commercial-card-current .commercial-badge{background:var(--bg);color:var(--muted)}
.commercial-card-heading{min-height:58px}
.commercial-grid{grid-auto-rows:1fr}
.commercial .commercial-price{font-variant-numeric:tabular-nums}
.commercial tbody th[scope=row],.commercial tbody td{padding-block:14px;line-height:1.6}
.commercial tbody th[colspan]{background:color-mix(in srgb,var(--border) 24%,var(--surface));padding-top:18px}

/* Plans-page presentation only; shared landing and checkout surfaces keep their layout. */
.plans-catalog .plans-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 24px;
    margin-bottom: 32px;
}
.commercial .plans-catalog .commercial-heading { margin: 0; }
.commercial .plans-catalog .commercial-heading h2 {
    margin: 0 0 8px;
    font-size: clamp(26px, 2.4vw, 34px);
    font-weight: 500;
    letter-spacing: -.03em;
}
.plans-catalog .commercial-heading p { font-size: 15px; margin: 0; }
.commercial .plans-catalog .current-plan {
    display: grid;
    grid-template-columns: auto auto;
    gap: 8px 24px;
    align-items: center;
    max-width: 100%;
    margin: 0;
    padding: 16px 20px;
    border-radius: 12px;
    box-shadow: none;
}
.plans-catalog .current-plan-identity > span { font-size: 12px; color: var(--muted); }
.commercial .plans-catalog .current-plan h2 { font-size: 20px; font-weight: 500; margin: 4px 0 0; }
.commercial .plans-catalog .current-plan p { font-size: 13px; margin: 2px 0; }
.plans-catalog .current-plan strong { color: var(--ink); font-weight: 500; }
.plans-catalog .current-plan-manage {
    grid-column: 1 / -1;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    min-height: 44px;
    border-top: 1px solid var(--border);
    color: var(--ink);
    font-size: 13px;
    text-decoration: none;
}
.plans-options { scroll-margin-top: 90px; }
.plans-catalog .plans-options-heading h2 { font-size: 20px; font-weight: 500; margin: 0 0 4px; }
.plans-catalog .plans-options-heading p { font-size: 14px; margin: 0 0 12px; }
.commercial .plans-catalog .plans-terms {
    margin: 0 0 12px;
    padding: 0;
    border: 0;
    background: transparent;
}
.plans-catalog .plans-terms > summary { width: fit-content; font-size: 13px; color: var(--muted); padding: 10px 0; min-height: 44px; }
.commercial .plans-catalog .commercial-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin: 20px 0 28px;
    grid-auto-rows: auto;
}
.commercial .plans-catalog .commercial-card {
    padding: 20px 18px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 12px;
    box-shadow: none;
}
.plans-catalog .commercial-card::before { display: none; }
.commercial .plans-catalog .commercial-card-current {
    border-color: var(--accent);
    box-shadow: inset 0 2px 0 var(--accent);
}
.plans-catalog .commercial-card-heading { min-height: 70px; align-content: start; gap: 4px 8px; }
.plans-catalog .commercial-card-heading h2 { font-size: 23px; font-weight: 500; margin: 0; }
.commercial .plans-catalog .commercial-badge { background: transparent; padding: 0; color: var(--accent); font-size: 12px; font-weight: 400; }
.commercial .plans-catalog .commercial-card-current .commercial-badge { color: var(--accent); }
.commercial .plans-catalog .commercial-position { font-size: 14px; min-height: 24px; }
.plans-catalog .commercial-price-area { min-height: 152px; padding-top: 4px; }
.commercial .plans-catalog .commercial-price { font-size: 28px; font-weight: 500; margin: 8px 0 10px; overflow-wrap: anywhere; }
.plans-catalog .commercial-price-unit { display: block; margin-bottom: 4px; }
.plans-catalog .commercial-price-value { display: block; }
.commercial .plans-catalog .commercial-price-detail { font-size: 12px; }
.plans-catalog .commercial-card dl { font-size: 13px; margin-bottom: 16px; }
.plans-catalog .commercial-card dl div { gap: 8px; }
.plans-catalog .commercial-card dt { flex: 1; overflow-wrap: anywhere; }
.plans-catalog .commercial-card dd { max-width: 48%; white-space: normal; overflow-wrap: anywhere; text-align: right; font-weight: 400; }
.plans-catalog .commercial-button { font-size: 13px; min-height: 44px; padding: 10px 8px; }
.plans-catalog .commercial-card-current .commercial-button:disabled { border-color: var(--accent); color: var(--accent); background: transparent; }
.plans-catalog .commercial-detail-link { font-size: 13px; }
.commercial .plans-catalog .commercial-comparison > summary { font-size: 16px; font-weight: 400; min-height: 48px; }
.plans-catalog .comparison-hint { display: none; }
.plans-catalog .commercial-comparison[open] > summary > span[aria-hidden] { display: inline-block; transform: rotate(180deg); }
@media (min-width: 769px) and (max-width: 1100px) {
    .commercial .plans-catalog .commercial-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .plans-catalog .plans-hero { grid-template-columns: 1fr; }
    .commercial .plans-catalog .current-plan { justify-self: start; }
}
@media (max-width: 768px) {
    .plans-catalog .plans-hero { grid-template-columns: minmax(0, 1fr); gap: 20px; margin-bottom: 24px; }
    .commercial .plans-catalog .current-plan { width: 100%; padding: 14px 16px; gap: 8px 16px; }
    .commercial .plans-catalog .commercial-grid { grid-template-columns: minmax(0, 1fr); gap: 16px; }
    .plans-catalog .commercial-card-heading { min-height: 36px; align-items: center; }
    .plans-catalog .commercial-price-area { min-height: 0; }
    .commercial .plans-catalog .commercial-price { font-size: 30px; }
    .plans-catalog .commercial-card dl { font-size: 14px; }
}
@media (max-width: 360px) {
    .commercial .plans-catalog .current-plan { grid-template-columns: minmax(0, 1fr); }
}

/* Customer Billing reuses the commercial theme and has no payment controls. */
.customer-billing { min-width:0; width:100%; max-width:1680px; padding-inline:16px; font-weight:400; }
.customer-billing > section { padding:32px 0; border-bottom:1px solid var(--border); }
.customer-billing h2 { margin:0 0 20px; font-size:18px; font-weight:400; }
.customer-billing-summary-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.4fr); gap:32px 64px; max-width:1280px; align-items:start; }
.customer-billing-summary-grid > * { min-width:0; }
.customer-billing .customer-billing-product { margin:0 0 8px; font-size:clamp(32px,3vw,44px); font-weight:600; line-height:1.2; color:var(--ink); overflow-wrap:anywhere; }
.customer-billing .customer-billing-status { margin:0; color:var(--ink); font-size:16px; }
.customer-billing-link { display:inline-flex; align-items:center; min-height:44px; color:var(--accent); }
.customer-billing .customer-billing-details { margin:0; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:20px 32px; }
.customer-billing .customer-billing-details div { display:block; padding:0; border:0; }
.customer-billing-details dt { margin-bottom:8px; font-size:13px; }
.customer-billing .customer-billing-details dd { white-space:normal; overflow-wrap:anywhere; }
.customer-billing-period dd { font-size:18px; }
.customer-billing .customer-billing-remaining dd { font-size:20px; font-weight:600; }
.customer-billing-source { grid-column:1 / -1; }
.customer-billing .customer-billing-source dt, .customer-billing .customer-billing-source dd { display:inline; font-size:13px; color:var(--muted); }
.customer-billing-source dd { margin-left:12px; }
.customer-billing-details small { display:block; color:var(--muted); margin-top:6px; font-size:12px; }
.customer-billing .customer-billing-help { margin:8px 0 0; color:var(--muted); font-size:14px; }
.customer-billing-footer { padding-top:20px; }
.customer-billing-table { max-width:100%; overflow-x:auto; }
.customer-billing-table:focus-visible { outline:2px solid var(--accent); outline-offset:2px; }
.customer-billing table { table-layout:auto; min-width:800px; font-variant-numeric:tabular-nums; }
.customer-billing th, .customer-billing td { text-align:left; white-space:nowrap; }
.customer-billing th:first-child { width:auto; }
.customer-billing .customer-billing-amount { text-align:right; }
@media(max-width:768px) {
    .customer-billing-summary-grid { grid-template-columns:minmax(0,1fr); gap:28px; }
    .customer-billing .customer-billing-details { grid-template-columns:minmax(0,1fr); gap:20px; }
    .customer-billing > section { padding:24px 0; }
}

/* Billing primary links must override the shared theme link inheritance. */
.commercial a.commercial-button.primary { color: #fff !important; }
.commercial .commercial-purchase-pending:disabled {
    border-style: dashed;
    cursor: not-allowed;
}
