/* Public pages share the workbench's surfaces and typography while keeping
   their own reading, marketing and catalog layouts. */
.public-workspace main>.container{
  max-width:none;
  margin-inline:auto;
  padding-block:44px 64px;
}
.public-workspace .page-head{margin-bottom:30px}
.public-workspace .page-head h1{font-size:clamp(28px,2.5vw,38px);font-weight:650;line-height:1.25;letter-spacing:-.025em}
.public-workspace .page-head>p{max-width:82ch;font-size:15px;line-height:1.75}
.public-workspace :is(.card,.dash-card,.price-card,.docs-try-card,.docs-info-panel,.docs-api-panel,.pricing-explain,.pricing-recharge,.model-recommendation-card,.legal-grid article,.email-unsubscribe-card,.page-expired-card,.updates-empty-state){
  min-width:0;
  border-radius:var(--surface-radius,16px);
  border-color:var(--line);
  box-shadow:var(--surface-shadow,0 4px 16px rgba(29,45,72,.025));
}
.public-workspace :is(.card,.dash-card){padding:22px}
.public-workspace :is(.card h2,.status-section-head h2){font-size:20px;line-height:1.45;font-weight:650;letter-spacing:-.015em}
.public-workspace :is(.card p,.status-section-head p){font-size:15px;line-height:1.75}
.public-workspace :is(.card,.docs-page,.model-scenes,.legal-grid,.landing-page,.updates-page) :is(h2,h3,h4){font-weight:650}
.public-workspace :is(.price-card,.docs-info-panel,.docs-api-panel,.legal-grid article,.email-unsubscribe-card){padding:24px}
.public-workspace :is(.pricing-tools,.model-tools,.model-catalog-tools,.model-recommendation-rule,.model-route-guide,.legal-meta,.signup-referral,.recharge-rule-grid>div){
  border-color:var(--line);
  border-radius:var(--surface-inner-radius,12px);
  background:var(--soft);
  box-shadow:none;
}
.public-workspace :is(.pricing-tool,.model-tool){color:var(--muted);font-size:13px;font-weight:550}
.public-workspace :is(.pricing-tool,.model-tool) :is(input,select){min-height:var(--control-h);border-radius:var(--surface-control-radius,10px);font-size:14px;font-weight:400}
.public-workspace :is(.model-catalog-copy,.model-scene-tab,.start-path-link,.page-expired-action){border-radius:var(--surface-control-radius,10px);font-weight:600}
.public-workspace :is(.model-catalog-copy,.page-expired-action,.start-path-link):focus-visible{outline:2px solid var(--sky);outline-offset:3px}
.public-workspace :is(.model-catalog-copy,.page-expired-action):hover{transform:none}

/* Homepage: retain the hero, route illustration and product-stage hierarchy. */
.public-workspace .hero h1{font-weight:650;letter-spacing:-.035em}
.public-workspace :is(.hero-console,#product .product-card,.start-path-card){border-color:var(--line);border-radius:var(--surface-radius,16px);box-shadow:0 12px 36px rgba(29,45,72,.06)}
.public-workspace :is(.hero-console .console-top,.hero-console .route-card){border-radius:var(--surface-inner-radius,12px)}
.public-workspace :is(.console-top,.console-top b,.primary-route span,.primary-route strong,.route-steps strong,.console-bottom strong){font-weight:600}
.public-workspace :is(.product-card-kicker,.start-path-kicker,.start-path-link,.product-stage-head h2,.start-stage-head h2,.product-card h3,.start-path-card h3){font-weight:650}
.public-workspace :is(.product-card-kicker,.start-path-kicker){letter-spacing:.05em}
.public-workspace .product-card p{color:var(--muted);font-size:15px;line-height:1.7}
.public-workspace .start-path-card{box-shadow:var(--surface-shadow,0 4px 16px rgba(29,45,72,.025))}
.public-workspace .start-path-card:hover{border-color:var(--line-strong);box-shadow:0 8px 24px rgba(29,45,72,.055)}
.public-workspace .home-next{--hn-blue:var(--sky);--hn-muted:var(--muted);--hn-line:var(--line)}
.public-workspace .home-next .hn-faq-list{padding:4px 22px;border:1px solid var(--line);border-radius:var(--surface-radius,16px);background:var(--bg);box-shadow:var(--surface-shadow,0 4px 16px rgba(29,45,72,.025))}
.public-workspace .home-next .hn-faq-list details:last-child{border-bottom:0}
.public-workspace .home-next .hn-faq-list summary{min-height:56px;padding-block:18px;font-weight:600;gap:16px}
.public-workspace .home-next .hn-faq-list summary:focus-visible{outline:2px solid var(--sky);outline-offset:2px;border-radius:var(--surface-control-radius,10px)}
.public-workspace .home-next .hn-faq-list p{font-size:15px;line-height:1.8}
.public-workspace .home-next .hn-faq-list details>div>a{font-size:14px;font-weight:550}
.public-workspace .home-next .hn-faq-list .hn-plus{flex-shrink:0}

/* Documentation and landing guides stay readable; code keeps its own theme. */
.public-workspace main>.docs-page{max-width:none;gap:36px}
.public-workspace .docs-page .page-head{margin-bottom:0}
.public-workspace :is(.docs-section-head h2,.model-section-head h2,.pricing-explain-copy h2,.pricing-recharge h2,.landing-section-head h2,.landing-quick-copy h2){font-size:26px;font-weight:650;line-height:1.35;letter-spacing:-.02em}
.public-workspace :is(.docs-section-head p,.docs-info-panel p,.docs-api-title p,.model-section-head p,.landing-faq p,.landing-faq li){font-size:15px;line-height:1.75}
.public-workspace :is(.docs-info-panel h3,.docs-api-title h3){font-size:19px;line-height:1.45;font-weight:650}
.public-workspace :is(.docs-try-card,.docs-info-panel,.docs-api-panel){background:var(--bg)}
.public-workspace .docs-api-panel-accent{border-color:#c4d9ef}
.public-workspace .docs-try-features span{font-size:13px;font-weight:550;background:var(--sky-soft);color:var(--sky-dark);border-color:#d3e3f6}
.public-workspace .docs-try-action small{font-size:13px;line-height:1.6}
.public-workspace .docs-method{font-size:12px;font-weight:600;border-radius:6px}
.public-workspace .docs-api-title code{font-size:13px;overflow-wrap:anywhere}
.public-workspace .code-card{border-radius:var(--surface-inner-radius,12px);box-shadow:none}
.public-workspace :is(.code-top,.copy-btn){font-weight:550}
.public-workspace .copy-btn{border-radius:8px;min-height:34px;font-size:12px}
.public-workspace .copy-btn:focus-visible{outline:2px solid #9ac8fa;outline-offset:2px}
.public-workspace .code-card pre{font-size:13px;line-height:1.8;scrollbar-width:thin}
.public-workspace .docs-extra-code>summary{padding:12px 14px;border-radius:var(--surface-control-radius,10px);font-size:14px;font-weight:550;line-height:1.6;background:var(--soft);color:var(--ink)}
.public-workspace .docs-extra-code[open]>summary{border-radius:10px 10px 0 0}
.public-workspace .docs-extra-code[open] .code-card{border-radius:0 0 12px 12px}
.public-workspace .docs-extra-code>summary:focus-visible{outline:2px solid var(--sky);outline-offset:2px}
.public-workspace .docs-page section[id]{scroll-margin-top:calc(var(--header-h) + 20px)}
.public-workspace .proof-grid>div{min-width:0;border-color:var(--line);border-radius:var(--surface-radius,16px);box-shadow:var(--surface-shadow,0 4px 16px rgba(29,45,72,.025));padding:24px}
.public-workspace .proof-grid :is(h3,strong){font-weight:650}
.public-workspace .proof-grid p{font-size:15px;line-height:1.75}
.public-workspace .landing-faq{padding:26px}
.public-workspace .landing-faq h2:not(:first-child){margin-top:28px}
.public-workspace .landing-faq :is(p,li){overflow-wrap:anywhere}

/* Pricing and catalog controls use the same quiet selected state as the app. */
.public-workspace .price-card{gap:18px}
.public-workspace .price-card.featured{border-color:#9bbfe9;box-shadow:0 5px 20px rgba(23,105,194,.055)}
.public-workspace .plan-name{font-size:13px;font-weight:650;letter-spacing:.06em}
.public-workspace .plan-price{font-weight:650;letter-spacing:-.02em}
.public-workspace .plan-price-stack strong{font-weight:650;line-height:1.3}
.public-workspace .price-card :is(p,ul){font-size:15px;line-height:1.8}
.public-workspace .pricing-explain{background:var(--soft)}
.public-workspace :is(.pricing-example-grid strong,.recharge-rule-grid strong,.recharge-rule-grid b,.pricing-equation span,.pricing-rate-details summary strong){font-weight:600}
.public-workspace :is(.pricing-example-grid p,.recharge-rule-grid p){font-size:14px;line-height:1.75}
.public-workspace .recharge-rule-grid>div{padding:18px}
.public-workspace .pricing-rate-details>summary{padding:16px;border-radius:var(--surface-inner-radius,12px);background:var(--soft);border-color:var(--line);gap:12px}
.public-workspace .pricing-rate-details>summary strong{font-size:16px;line-height:1.5}
.public-workspace .pricing-rate-details>summary :is(small,em){font-size:13px;line-height:1.65}
.public-workspace .pricing-rate-toggle-icon{border-radius:var(--surface-control-radius,10px);flex-shrink:0}
.public-workspace .pricing-source{font-size:12px;font-weight:550;background:var(--soft);color:var(--muted)}
.public-workspace #pricing-load-more[hidden]{display:none}
.public-workspace .model-recommendation-rule{font-size:13px;line-height:1.65}
.public-workspace .model-recommendation-rule strong{font-size:14px;font-weight:600}
.public-workspace .model-scene-tab{padding:9px 13px;min-height:44px;border-color:var(--line)}
.public-workspace .model-scene-tab strong{font-size:14px;font-weight:550}
.public-workspace .model-scene-tab.is-active{background:var(--sky-soft);border-color:#b7d2ef;color:var(--sky-dark);box-shadow:none}
.public-workspace .model-scene-tab.is-active>span{background:var(--sky);color:#fff}
.public-workspace .model-scene-intro p{font-size:15px;line-height:1.7}
.public-workspace .model-scene-intro-symbol{border-radius:var(--surface-inner-radius,12px)}
.public-workspace .model-recommendation-card{padding:22px;gap:14px;background:var(--bg)}
.public-workspace .model-recommendation-card.is-featured{border-color:#b6d1ec;background:linear-gradient(145deg,var(--sky-soft),var(--bg) 68%);box-shadow:none}
.public-workspace .model-recommendation-title h4,.public-workspace .model-recommendation-card.is-featured .model-recommendation-title h4{font-size:20px;font-weight:650;line-height:1.4}
.public-workspace :is(.model-recommendation-title code,.model-catalog-main code){font-size:12px;line-height:1.6}
.public-workspace .model-recommendation-reason,.public-workspace .model-recommendation-card.is-featured .model-recommendation-reason{font-size:15px;line-height:1.7;color:var(--muted)}
.public-workspace :is(.model-role,.model-campaign-badge,.model-recommendation-meta span){font-weight:550;font-size:12px}
.public-workspace .model-recommendation-price :is(small,em,span){font-size:12px;font-weight:400}
.public-workspace .model-recommendation-price strong{font-weight:650}
.public-workspace .model-catalog-list{border-radius:var(--surface-radius,16px);border-color:var(--line);background:var(--bg)}
.public-workspace .model-catalog-item{padding:14px 16px;border-color:var(--line)}
.public-workspace .model-catalog-item:hover{background:var(--soft)}
.public-workspace .model-catalog-main strong{font-size:14px;font-weight:600;line-height:1.6}
.public-workspace :is(.model-catalog-provider,.model-catalog-price) small{font-size:12px;font-weight:400;letter-spacing:0;text-transform:none}
.public-workspace :is(.model-catalog-provider span,.model-catalog-price strong,.model-catalog-price span){font-size:13px;font-weight:550;line-height:1.6}
.public-workspace .model-catalog-copy{font-size:13px;color:var(--muted);border-color:var(--line-strong)}
.public-workspace .model-catalog-total strong{font-weight:650}
.public-workspace .model-provider-locks>summary{border-color:var(--line);border-radius:var(--surface-inner-radius,12px);background:var(--soft);padding:16px;line-height:1.6}
.public-workspace .model-provider-locks>summary strong{font-weight:600}
.public-workspace .model-provider-locks>summary small{font-size:13px;font-weight:400}
.public-workspace .model-route-guide-item strong{font-weight:600}
.public-workspace .model-route-guide-item small{font-size:13px;line-height:1.65}
.public-workspace .model-advanced-warning{border-radius:var(--surface-inner-radius,12px);font-size:13px;line-height:1.7}

/* Service health keeps meaningful status colors and responsive table rows. */
.public-workspace .status-metrics{gap:16px;margin-bottom:20px}
.public-workspace .status-metrics .label{font-size:13px;font-weight:550;color:var(--muted)}
.public-workspace .status-metrics .value{font-size:30px;font-weight:650;line-height:1.4;font-variant-numeric:tabular-nums}
.public-workspace .status-metrics .value.compact{font-size:23px}
.public-workspace .status-metrics .sub{font-size:13px;line-height:1.65}
.public-workspace .status-metrics .unit{font-size:14px;font-weight:500}
.public-workspace .status-model-health{margin-top:18px}
.public-workspace .status-responsive-table code{font-size:13px}

/* Reading-oriented pages, including empty and recovery states. */
.public-workspace main>.legal-page{max-width:1320px}
.public-workspace .legal-grid h2{font-size:20px;font-weight:650;line-height:1.45}
.public-workspace .legal-grid p{font-size:15px;line-height:1.85;overflow-wrap:anywhere}
.public-workspace .legal-grid a{font-weight:550;text-underline-offset:3px}
.public-workspace .legal-grid a:hover{text-decoration:underline}
.public-workspace .legal-meta{font-size:13px;line-height:1.75;overflow-wrap:anywhere}
.public-workspace .legal-meta strong{font-weight:600}
.public-workspace main>.updates-page{max-width:1120px;padding-inline:clamp(20px,4vw,48px)}
.public-workspace .updates-timeline{padding:6px 24px;border:1px solid var(--line);border-radius:var(--surface-radius,16px);background:var(--bg);box-shadow:var(--surface-shadow,0 4px 16px rgba(29,45,72,.025))}
.public-workspace .update-entry{grid-template-columns:145px minmax(0,1fr);gap:24px}
.public-workspace .update-entry:last-child{border-bottom:0}
.public-workspace .update-entry-meta{font-size:13px}
.public-workspace .update-entry h2{font-size:21px;font-weight:650;line-height:1.5}
.public-workspace .update-entry-body{color:var(--muted);font-size:15px;line-height:1.85}
.public-workspace .update-entry .update-severity-label{font-size:12px;font-weight:550;border-radius:6px}
.public-workspace :is(.email-unsubscribe-page,.page-expired-page){background:var(--soft)}
.public-workspace :is(.email-unsubscribe-hero h1,.page-expired-card h1){color:var(--ink);font-size:30px;font-weight:650;line-height:1.3}
.public-workspace :is(.email-unsubscribe-hero p,.page-expired-card p){font-size:15px;line-height:1.75;color:var(--muted)}
.public-workspace .email-unsubscribe-email{font-weight:550}
.public-workspace .page-expired-card-icon{border-radius:var(--surface-inner-radius,12px);color:var(--sky);background:var(--sky-soft)}

/* Authentication preserves fieldset/inert/disabled behavior and password tools. */
.public-workspace .auth-page{padding-block:44px 56px;background:var(--soft)}
.public-workspace .auth-page .form{width:min(100%,460px);padding:32px;border-color:var(--line);border-radius:var(--surface-radius,16px);box-shadow:0 8px 28px rgba(29,45,72,.045)}
.public-workspace .auth-page .form h1{font-size:28px;font-weight:650;line-height:1.35;letter-spacing:-.02em}
.public-workspace .auth-page .form>.muted{font-size:15px;line-height:1.7}
.public-workspace .auth-page .form label{color:var(--ink);font-size:14px;font-weight:550;line-height:1.6}
.public-workspace .auth-page .signup-fields:disabled label{color:#96a2ad}
.public-workspace .auth-page .form input:not([type="checkbox"]):not([type="hidden"]){font-size:15px;font-weight:400;border-radius:var(--surface-control-radius,10px)}
.public-workspace .auth-page .password-toggle:not(:disabled){border-radius:var(--surface-control-radius,10px);color:var(--muted)}
.public-workspace .auth-page :is(.foot,.auth-assist,.auth-trust,.form-msg){font-size:14px;line-height:1.7}
.public-workspace .auth-page :is(.foot a,.auth-assist a,.legal-consent a,.signup-referral-title){font-weight:600}
.public-workspace .auth-page .legal-consent{font-size:13px;line-height:1.75;font-weight:400}
.public-workspace .auth-page .signup-referral-note{font-size:13px;line-height:1.7}
.public-workspace .auth-page .signup-referral-total{font-weight:650}
.public-workspace .auth-page .code-row>.btn{min-height:var(--control-h-form);height:auto;white-space:normal;line-height:1.5}

@media(max-width:940px){
  .public-workspace main>.container{padding-block:34px 48px}
  .public-workspace .page-head{margin-bottom:24px}
  .public-workspace :is(.docs-api-panel,.docs-info-panel){padding:20px}
  .public-workspace .pricing-example-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .public-workspace main>.container{padding-block:26px 40px}
  .public-workspace .page-head h1{font-size:28px;line-height:1.3}
  .public-workspace .page-head>p{font-size:15px;line-height:1.75}
  .public-workspace :is(.card,.dash-card,.price-card,.docs-try-card,.docs-info-panel,.docs-api-panel,.pricing-explain,.pricing-recharge,.model-recommendation-card,.model-recommendation-card.is-featured,.legal-grid article,.email-unsubscribe-card,.landing-faq,.proof-grid>div){padding:18px}
  .public-workspace :is(.docs-section-head h2,.model-section-head h2,.pricing-explain-copy h2,.pricing-recharge h2,.landing-section-head h2,.landing-quick-copy h2){font-size:23px}
  .public-workspace .home-next .hn-faq-list{padding-inline:16px}
  .public-workspace .home-next .hn-faq-list summary{font-size:15px}
  .public-workspace .home-next .hn-faq-list details>div{padding-right:0}
  .public-workspace :is(.pricing-tool,.model-tool) :is(input,select){font-size:16px}
  .public-workspace .model-scene-grid{grid-template-columns:minmax(0,1fr)}
  .public-workspace .model-catalog-item{padding:14px}
  .public-workspace .model-catalog-copy{min-height:40px}
  .public-workspace .code-card pre{padding:16px;font-size:12px;line-height:1.8}
  .public-workspace .copy-btn{min-height:36px}
  .public-workspace .docs-try-action{min-width:0}
  .public-workspace .docs-try-action .btn{max-width:100%}
  .public-workspace .price-card{min-height:0}
  .public-workspace .pricing-example-grid>div{min-height:0}
  .public-workspace .updates-timeline{padding:4px 14px}
  .public-workspace .update-entry{grid-template-columns:minmax(0,1fr);gap:10px}
  .public-workspace .update-entry h2{font-size:19px}
  .public-workspace .update-entry-body{font-size:15px}
  .public-workspace .update-entry-meta{font-size:12px}
  .public-workspace .auth-page{padding:28px 16px 40px;min-height:calc(100svh - var(--header-h))}
  .public-workspace .auth-page .form{padding:24px 20px}
  .public-workspace .auth-page .form input:not([type="checkbox"]):not([type="hidden"]){font-size:16px}
  .public-workspace :is(.email-unsubscribe-hero h1,.page-expired-card h1){font-size:26px}
}
@media(max-width:380px){
  .public-workspace .auth-page .form{padding:22px 16px}
  .public-workspace .auth-page .code-row{flex-direction:column}
  .public-workspace .auth-page .code-row>.btn{width:100%}
  .public-workspace .recharge-rule-grid{grid-template-columns:minmax(0,1fr)}
}

/* These controls are used repeatedly on phones, including inside code cards
   and password fields; match the surrounding form/action touch targets. */
@media(max-width:640px){
  .public-workspace .copy-btn{min-width:44px;min-height:44px;font-size:13px}
  .public-workspace .model-catalog-copy{min-height:44px}
  .public-workspace .password-toggle{width:44px;height:44px;right:3px}
  .public-workspace .password-field input{padding-right:54px}
}
