.public-product{margin:0;background:#f6f8fa;color:#172b40;font-size:1rem;line-height:1.5}.public-header,.public-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px max(24px,calc((100vw - 1120px)/2));background:#fff;border-bottom:1px solid #ccd5df}.public-header nav{display:flex;align-items:center;gap:24px}.public-brand{display:flex;align-items:center;gap:12px;color:#0b2239;font-size:1.5rem;font-weight:700;text-decoration:none}.public-brand svg{width:40px;height:40px}.public-product main{max-width:1120px;margin:auto;padding:0 24px}.product-intro{max-width:760px;padding:64px 0 40px}.product-intro h1{font-size:clamp(2rem,5vw,3rem);line-height:1.2;margin:16px 0}.product-intro>p{max-width:680px;font-size:1.125rem}.product-intro .help-text{font-size:.875rem}.product-kicker{color:#007a7d;font-weight:600}.product-section{padding:32px 0;border-top:1px solid #ccd5df}.product-section h2{font-size:1.5rem;margin:0 0 16px}.product-flow{list-style:decimal;display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:16px 0 16px 24px}.product-flow p{color:#526477}.public-footer{font-size:.875rem;border-top:1px solid #ccd5df;margin-top:32px}.organization-switch{margin:24px 16px;padding-top:16px;border-top:1px solid #536779;overflow-wrap:anywhere}.organization-switch p{color:white;margin:0 0 8px}.organization-switch a{color:#b3ebed;font-size:.875rem}.subscription-notice{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fff8e6;border:1px solid #b27519;border-radius:8px;padding:16px;margin-bottom:24px}.subscription-notice p{margin:8px 0 0}.subscription-notice a{flex-shrink:0}@media(max-width:767px){.public-header,.public-footer{padding:16px;gap:16px;flex-wrap:wrap}.public-header nav{gap:16px}.public-product main{padding:0 16px}.product-intro{padding:32px 0}.product-flow{grid-template-columns:1fr;gap:8px}.subscription-notice{display:block}.subscription-notice>a{margin-top:16px}}@media(min-width:768px) and (max-width:1000px){.product-flow{grid-template-columns:repeat(2,1fr)}}

/* Plan selection is a separate, server-rendered step before creating Checkout. */
.billing-page{max-width:1200px;margin:24px auto}.billing-page h1{font-size:1.75rem}.billing-page h2{font-size:1.25rem;margin:0 0 8px}.billing-current{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 0;margin-bottom:24px;border-block:1px solid #ccd5df}.billing-current p{margin:0}.billing-plan-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin:24px 0;padding:0;border:0;max-width:none}.billing-plan{display:flex;flex-direction:column;align-items:flex-start;gap:16px;min-width:0;min-height:240px;padding:20px 16px;text-align:left;font:inherit;line-height:1.5;white-space:normal;background:#fff;color:#172b40;border:2px solid #bac7d3;border-radius:8px;cursor:pointer;box-shadow:none}.billing-plan:hover{border-color:#007a7d;background:#f1fafa}.billing-plan.is-selected{border-color:#007a7d;background:#e8f5f5}.billing-plan:focus-visible{outline:3px solid #172b40;outline-offset:4px}.billing-plan-name{font-size:1.125rem;font-weight:650}.billing-plan-price{font-size:1.5rem;font-weight:650}.billing-plan-price>span{font-size:.875rem;font-weight:400}.billing-plan-description{font-size:1rem;flex:1}.billing-plan-choice{color:#006467;font-weight:650}.billing-selection{border-top:2px solid #007a7d;padding:24px 0;scroll-margin-top:24px}.billing-selection p{max-width:850px}.billing-selection-hint{padding:16px 0}.billing-selection .form-actions{justify-content:flex-start}.billing-selection form{max-width:none;margin:0}.billing-selection .button{min-height:44px}.billing-selection .button:disabled{cursor:not-allowed}@media(max-width:1100px){.billing-plan-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:767px){.billing-page{margin:16px 0}.billing-current{display:block}.billing-current form{margin-top:16px}.billing-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.billing-plan{padding:16px 12px;min-height:240px}.billing-selection .form-actions{align-items:stretch;flex-direction:column}}@media(max-width:479px){.billing-plan-grid{grid-template-columns:1fr}.billing-plan{min-height:0;gap:8px}.billing-selection .button{width:100%}}

/* The workspace selector uses the same grid and spacing as the accounting tables. */
.workspace-page { width:100%; max-width:70rem; margin-inline:0; overflow-wrap:anywhere; }
.workspace-page .page-actions { flex-shrink:0; }
.workspace-table { table-layout:fixed; }
.workspace-table th:first-child { width:38%; }
.workspace-table th:nth-child(2) { width:24%; }
.workspace-table th:nth-child(3) { width:20%; }
.workspace-table th:last-child { width:18%; }
.workspace-table th,.workspace-table td { overflow-wrap:anywhere; white-space:normal; padding:20px 16px; }
.workspace-table td { vertical-align:middle; }
.workspace-name,.workspace-tax-id { display:block; }
.workspace-tax-id { margin-top:8px; color:#526477; }
.workspace-current { color:#00666a; font-weight:600; }
.workspace-table td form { margin:0; }
.workspace-table .button { min-height:44px; max-width:100%; white-space:normal; }
.workspace-create-form { max-width:48rem; margin-top:24px; }
.workspace-create-form .form-field { margin-bottom:16px; }
@media (max-width:760px) {
  .workspace-page .page-head { flex-direction:column; align-items:stretch; }
  .workspace-page .page-actions .button { width:100%; }
  .workspace-table thead { position:absolute; width:1px; height:1px; clip-path:inset(50%); overflow:hidden; }
  .workspace-table tbody,.workspace-table tr,.workspace-table td { display:block; width:100%; box-sizing:border-box; }
  .workspace-table tr { padding:16px; border-bottom:1px solid #ccd5df; }
  .workspace-table tr:last-child { border-bottom:0; }
  .workspace-table td { border:0; padding:8px 0; }
  .workspace-table td::before { content:attr(data-label); display:block; margin-bottom:4px; font-size:.875rem; color:#526477; }
  .workspace-table td:last-child { padding-top:16px; }
  .workspace-table .button { width:100%; }
}

/* Personal security remains available for every authenticated SaaS role. */
.sidebar-security-link {
  display: flex;
  width: 100%;
  min-height: 44px;
  align-items: center;
  margin: 0 0 10px;
  padding: 9px 11px;
  border: 1px solid #536d80;
  border-radius: 5px;
  color: #fff;
  font-size: .875rem;
  font-weight: 700;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.sidebar-security-link:hover,
.sidebar-security-link:focus-visible {
  border-color: #9de5df;
  background: #18374f;
  color: #fff;
}

/* Public entry: scoped independently from the authenticated workspace. */
.public-product .skip-link {position:fixed;z-index:100;left:12px;top:12px;padding:12px 16px;background:#fff;color:#0b2239;border:2px solid #007a7d;border-radius:8px;transform:translateY(-180%)}
.public-product .skip-link:focus {transform:none}
.product-home {overflow-wrap:anywhere;--home-width:1200px;background:#f6f8fa;color:#172b40}
.product-home .public-header,.product-home .public-footer {padding-inline:max(24px,calc((100% - var(--home-width))/2));padding-block:20px}
.product-home .public-header,.product-home .public-header nav {flex-wrap:wrap}
.product-home .public-brand {gap:12px;line-height:1.2}
.product-home .public-brand small {display:block;color:#526477;font-size:.875rem;font-weight:400;margin-top:4px}
.product-home main {max-width:calc(var(--home-width) + 48px);padding:0 24px}
.product-home :where(a,button,[tabindex]):focus-visible {outline:3px solid #007a7d;outline-offset:4px}
.product-home .button {font-size:1rem;min-height:44px;padding:12px 18px;border-radius:8px;white-space:normal;text-align:center;box-shadow:none;line-height:1.35}
.product-home .public-header nav>a:not(.button) {color:#172b40;font-weight:500;padding-block:10px}
.home-intro {display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.85fr);align-items:center;gap:64px;padding:56px 0}
.product-home .product-intro {padding:0;max-width:none}
.product-home .product-intro h1 {font-size:clamp(2rem,3.7vw,3.25rem);letter-spacing:-.035em;line-height:1.12;margin:20px 0 24px}
.product-home .product-intro>p {max-width:38rem;margin:0 0 20px;color:#526477;line-height:1.65}
.product-home .product-intro>.product-kicker,.product-home .product-kicker {font-size:.9375rem;color:#00676a;line-height:1.5;margin:0 0 8px;font-weight:600}
.home-actions {display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:24px 0 16px}
.home-actions>a:not(.button) {color:#00676a;text-decoration:underline;text-underline-offset:4px;font-size:.9375rem;line-height:1.5}
.product-home .product-intro>.help-text,.product-home .help-text {color:#526477;font-size:.875rem;line-height:1.6}
.home-workflow {background:#fff;border:1px solid #ccd5df;border-top:3px solid #007a7d;border-radius:8px;padding:28px 32px}
.home-workflow h2 {overflow-wrap:anywhere;margin:8px 0 24px;font-size:1.5rem;line-height:1.3;letter-spacing:-.02em}
.home-workflow-list {margin:0;padding:0;list-style:none}
.home-workflow-list li {display:flex;align-items:flex-start;gap:16px;padding:16px 0;border-top:1px solid #e0e6ec}
.home-workflow-list li:last-child {padding-bottom:0}
.home-step {flex:0 0 32px;font-variant-numeric:tabular-nums;color:#007a7d;font-size:.875rem;font-weight:600;padding-top:2px}
.home-workflow-list strong {font-size:1rem;font-weight:600}
.home-workflow-list p {font-size:.875rem;color:#526477;line-height:1.5;margin:4px 0 0}
.product-home .product-section {padding:40px 0}
.home-section-head {display:flex;justify-content:space-between;gap:24px;align-items:center}
.home-section-head>a {color:#00676a;white-space:normal;text-decoration:underline;text-underline-offset:4px}
.product-home .product-section h2 {font-size:1.625rem;line-height:1.3;letter-spacing:-.02em;margin:0 0 16px}
.home-plans>p {max-width:62rem;color:#526477;margin:0 0 24px}
.home-plans .billing-plan {text-decoration:none;min-height:320px;border-radius:8px;gap:20px;padding:24px 20px;color:#172b40;transition:none}
.home-plans .billing-plan-name {font-size:1.125rem;font-weight:600}
.home-plans .billing-plan-choice {text-decoration:underline;text-underline-offset:4px;color:#00676a}
.home-plans .billing-plan-description {color:#526477;line-height:1.6}
.home-team {display:flex;justify-content:space-between;align-items:center;gap:32px}
.home-team>div {max-width:48rem}
.home-team p {color:#526477;line-height:1.6;margin-bottom:0}
.home-team>.button {flex-shrink:0}
.product-home .public-footer {margin-top:0;border-bottom:0;gap:24px;flex-wrap:wrap;color:#526477}
.product-home .public-footer nav {display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.product-home .public-footer a {color:#00676a}
@media(max-width:1000px) {
  .home-intro {gap:32px;padding:40px 0;grid-template-columns:1.1fr 1fr}
  .home-workflow {padding:24px}
  .home-section-head {align-items:flex-start;flex-direction:column;gap:0;margin-bottom:16px}
}
@media(max-width:760px) {
  .product-home .public-header,.product-home .public-footer {padding:16px}
  .product-home main {padding:0 16px}
  .product-home .public-header {align-items:flex-start;gap:16px}
  .product-home .public-header nav {gap:12px;flex-wrap:wrap}
  .product-home .public-header nav>a {font-size:.875rem}
  .home-intro {grid-template-columns:minmax(0,1fr);gap:32px;padding:32px 0}
  .product-home .product-intro h1 {margin:16px 0 20px}
  .home-actions {align-items:stretch;flex-direction:column;gap:16px}
  .home-actions>a {text-align:center}
  .home-workflow {padding:24px}
  .product-home .product-section {padding:32px 0}
  .home-plans .billing-plan {min-height:0;gap:16px}
  .home-team {align-items:stretch;flex-direction:column;gap:24px}
  .product-home .public-footer nav {gap:16px}
}
