/* Luma brand: tokens from the supplied palette. The mark stays legible at mobile sizes. */
:root{--ink:#0F2D5B;--green:#0F2D5B;--green2:#176679;--lime:#A7F3DD;--paper:#F2F8F0;--muted:#64748B;--line:#DCE7EA;--soft:#ECFDF5;--teal:#14B8A6;--orange:#F59E0B;--cream:#FFF7ED;--shadow:0 12px 35px #0F2D5B0b}
body{background:linear-gradient(145deg,#F2F8F0 0%,#F7FAFB 48%,#FFF7ED 100%) fixed}
.brand{gap:9px;min-width:0;line-height:1}.brand-mark{width:39px;height:39px;flex:none}.brand-word{font-size:1.45rem;font-weight:850;letter-spacing:.045em;color:var(--ink)}
.brand-lockup{display:block;width:100%;height:auto;max-height:100%;object-fit:cover;object-position:center}
.sidebar{background:#fff}.sidebar .brand{padding-left:8px}.sidebar .brand-word{font-size:1.37rem}
.nav a.active,.button,.kpi.highlight{background:var(--green);color:#fff}
.button.lime{background:var(--lime);color:var(--ink)}
.button:focus-visible,.nav a:focus-visible,.mobile-nav a:focus-visible,.area-tab:focus-visible,.table-button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--teal);outline-offset:2px}
.button:hover:not(:disabled){filter:brightness(1.08)}.button.lime:hover:not(:disabled){filter:brightness(.98)}
.venue:after{background:linear-gradient(90deg,#0F2D5Bf2 0%,#0F2D5Bba 45%,#0F2D5B18 100%)}
.venue .eyebrow,.restaurant-venue p.restaurant-description{color:var(--lime)}.health-venue{background:var(--green)}.health-venue:after{background:linear-gradient(105deg,#0F2D5B,#176679)}
.health-emblem{color:#A7F3DD55}.venue-tag{color:var(--ink)}
.demo-card,.area-tab.active,.doctor.active,.business-choice .business-existing{background:var(--soft)}
.demo-card p,.area-tab .area-icon,.table-feature{color:#386A78}.area-tab .area-icon,.area-tab.active .area-icon,.success-mark{background:#DDF8F0}
.step.active,.switcher button.active{color:var(--ink)}.status{background:#E5FAF3;color:#0B6B62}
.floor{background-color:#F7FCFA;background-image:radial-gradient(#CBEAE2 .8px,transparent .8px);border-color:var(--line)}
.business-plan{border-color:#CBEAE2}.store-offer:first-child .offer-icon{background:var(--cream);color:#9A5700}.store-offer:nth-child(2) .offer-icon{background:var(--soft);color:#0B6B62}
.auth-wrap{max-width:560px}.auth-brand{height:174px;overflow:hidden;border-radius:22px;margin-bottom:20px;background:var(--green);box-shadow:0 12px 35px #0F2D5B18}
.auth-brand .brand-lockup{width:100%;height:100%;object-fit:cover;object-position:center}
.brand-credit{font-size:.8125rem;font-weight:600;color:#506780;letter-spacing:.01em;white-space:nowrap}
.footer{align-items:center;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:19px;line-height:1.5}
.auth-credit{text-align:center;margin:20px 0 0}
.store-content>.page-title{position:relative;padding-top:24px}.store-content>.page-title:before{content:'';position:absolute;top:0;left:0;width:54px;height:5px;border-radius:20px;background:linear-gradient(90deg,var(--teal) 0 58%,var(--orange) 58% 100%)}
.customer-shell .topbar,.platform-header{background:#ffffffcf}
@media(max-width:1000px){.sidebar .brand-word{display:none}}
@media(max-width:760px){body{background-attachment:scroll}.mobile-brand .brand-word,.platform-header .brand-word{display:inline;font-size:1.18rem}.mobile-brand .brand-mark{width:33px;height:33px}.auth-wrap{margin:18px auto;padding:16px}.auth-brand{height:126px;border-radius:16px;margin-bottom:18px}.footer{justify-content:center;text-align:center;gap:8px 18px}.footer .brand-credit{flex-basis:100%}.customer-shell .brand-word{font-size:1.16rem}.customer-header-label{font-size:.75rem}.mobile-nav a.active{background:var(--soft)}.mobile-nav{background:#ffffffed}}
/* Plans and manual subscription checkout */
.plan-controls,.plan-price-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:end;margin-bottom:24px}
.billing-toggle,.plan-choice{border:0;padding:0;margin:16px 0;display:flex;gap:12px;flex-wrap:wrap;min-width:0}
.billing-toggle legend,.plan-choice legend{font-weight:650;margin-bottom:10px}
.billing-toggle label,.plan-choice label{display:flex;align-items:center;gap:10px;min-height:48px;padding:12px 16px;border:1px solid var(--line);border-radius:12px;cursor:pointer;background:#fff}
.billing-toggle label:has(input:checked),.plan-choice label:has(input:checked){border-color:var(--ink);background:var(--soft)}
.billing-toggle input,.plan-choice input{width:18px;height:18px;accent-color:var(--ink);flex:none}
.plan-choice small{display:block;color:var(--muted)}
.plan-notice{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin:0 0 20px;padding:18px 22px;border:1px solid #d6a75b;border-radius:14px;background:var(--cream);color:var(--ink)}
.plan-notice span{flex:1;min-width:180px}.plan-notice .text-link{min-height:44px;display:inline-flex;align-items:center}
.plan-usage{display:grid;gap:12px;padding:20px 0;margin:16px 0;border-block:1px solid var(--line)}
.plan-usage progress{width:100%;height:12px;accent-color:var(--ink)}
.plan-usage small{line-height:1.6;color:var(--muted)}
.saving{color:#176679;font-weight:600;margin:8px 0 16px}
.purchase-history{margin-top:24px}.table-scroll{overflow-x:auto}.purchase-history table{width:100%;text-align:left;border-collapse:collapse}.purchase-history th,.purchase-history td{padding:14px 10px;border-bottom:1px solid var(--line)}
.plan-editor input,.plan-editor textarea,.plan-editor select{max-width:100%;min-width:0}.checkout-grid .card-body>p{margin:14px 0}.checkout-grid .card-body>.button,.checkout-grid form>.button{margin-top:16px}
@media(max-width:640px){.plan-controls,.plan-price-fields{grid-template-columns:1fr;gap:12px}.billing-toggle label{flex:1;justify-content:center}.plan-choice label{width:100%}.plan-notice{padding:16px}.offer-price{flex-wrap:wrap}.purchase-history{padding:18px}}
