*{box-sizing:border-box}:root{--primary: #0f6e56;--primary-dark: #0c5a47;--primary-light: rgba(15, 110, 86, .12);--accent: #1b3f7a;--accent-pressed: #163464;--success: #16a34a;--warning: #d97706;--danger: #dc2626;--bg: #eef3f8;--surface: #ffffff;--surface-elevated: #f8fbff;--text: #0f172a;--text-secondary: #475569;--border: #dbe4ee}html{color-scheme:light}a{color:var(--primary)}a:hover{color:var(--primary-dark)}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text)}.publicSite{min-height:100vh;background:#eef3f8;color:#0f172a}.publicHeader{position:sticky;top:0;z-index:30;background:#fffffff0;border-bottom:1px solid #dde6f0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.publicHeaderInner{max-width:1120px;margin:0 auto;padding:.7rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.publicBrand{display:inline-flex;align-items:center;gap:.55rem;color:#0f172a;text-decoration:none;font-weight:700;font-size:1.05rem}.publicBrandIcon{width:42px;height:42px;object-fit:contain}.publicNav{display:flex;flex-wrap:wrap;gap:.9rem}.publicNav a{color:#475569;text-decoration:none;font-weight:600;font-size:.93rem}.publicNav a:hover{color:#0f172a}.publicMain{max-width:1120px;margin:0 auto;padding:1.35rem 1rem 3rem}.publicFooter{border-top:1px solid #dde6f0;background:#fff;margin-top:2.5rem}.publicFooterInner{max-width:1120px;margin:0 auto;padding:1rem}.publicFooterLinks{margin:0 0 .4rem;display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;color:#64748b}.publicFooterMeta{margin:.25rem 0 0;color:#64748b;font-size:.82rem}.page{max-width:520px;margin:0 auto;padding:2rem 1rem}.publicPage{max-width:920px;margin:0 auto;padding:0}.publicPageHeader h1{margin:0 0 .5rem;color:#0f172a}.publicPage .lead{color:#475569}.publicPage .card{background:#fff;border:1px solid #dbe4ee;border-radius:16px}.publicPage label{color:#334155;font-weight:600}.publicPage input,.publicPage .textArea{border:1px solid #cfd9e5;background:#f8fbff;color:#0f172a}.page.page--wide{max-width:min(1200px,100%)}header h1{margin:0 0 .5rem}.lead{color:var(--text-secondary);margin:0 0 1.5rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.25rem}label{display:block;font-size:.875rem;color:var(--text-secondary);margin-bottom:.35rem}input{width:100%;padding:.75rem 1rem;border-radius:8px;border:1px solid var(--border);background:var(--surface-elevated);color:var(--text);margin-bottom:1rem}.textArea{width:100%;min-height:140px;padding:.75rem 1rem;border-radius:8px;border:1px solid var(--border);background:var(--surface-elevated);color:var(--text);margin-bottom:1rem;font:inherit;resize:vertical}.captchaWrap{margin:.25rem 0 1rem}button{width:100%;padding:.75rem 1rem;border:none;border-radius:8px;background:var(--accent);color:#f8fafc;font-weight:700;cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}button.secondary{margin-top:.75rem;background:transparent;color:var(--text-secondary);border:1px solid var(--border)}button.secondary:hover:not(:disabled){color:var(--text);border-color:var(--text-secondary)}.error{color:var(--danger);margin-top:1rem}.passStatus{font-weight:700}.passStatusOk{color:var(--success)}.passStatusDueSoon{color:var(--warning)}.passStatusOverdue{color:var(--danger)}.passStatusAttention{color:#fb923c}.passStatusExempt{color:var(--text-secondary)}.passStatusContext{font-size:.9rem;font-weight:500}.passStatusContext.passStatusOk{color:var(--text-secondary);font-weight:400}.passStatusContext.passStatusExempt{font-weight:400}.success{color:var(--success);margin-top:1rem}.result{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--border)}.result h2{margin:0 0 .25rem}.muted{color:var(--text-secondary);font-size:.9rem}.portal-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.portal-tab{border:1px solid var(--border);background:var(--surface-elevated);color:var(--text);padding:.4rem .85rem;border-radius:8px;cursor:pointer;font-size:14px}.portal-tab:hover{border-color:var(--primary)}.portal-tab--active{border-color:var(--accent);font-weight:700}.landing{margin:0 auto;padding:0;background:#f3f6fb;color:#0f172a;border-radius:0;border:0}.landingHero h1{font-size:clamp(2rem,5vw,3.2rem);line-height:1.06;margin:0 0 .75rem;max-width:16ch}.landingHero{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,460px);gap:2rem;align-items:center;background:#fff;border:1px solid #dbe4ee;border-radius:20px;padding:1.45rem}.landingHeroCopy .lead{max-width:52ch;color:#475569}.landingHeroMedia{display:flex;justify-content:flex-end}.landingHeroImage{width:100%;max-width:368px;height:auto;display:block;filter:drop-shadow(0 20px 32px rgba(2,6,23,.35))}.eyebrow{color:#0f6e56;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;margin:0 0 .65rem}.heroCta{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.1rem}.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:10px;padding:.7rem 1rem;font-weight:700}.btn.primary{background:#1b3f7a;color:#f8fafc}.doneOpenBtn{width:100%;margin-top:.75rem}.doneMeta{margin-top:.9rem}.stripeBrand{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-bottom:1.25rem}.stripeBrandLogos{display:flex;align-items:center;justify-content:center;gap:.65rem}.stripeBrandSymbol{width:28px;height:28px;object-fit:contain}.stripeBrandWordmark{width:72px;height:auto;object-fit:contain}.stripeBrandCaption{margin:0;font-size:.75rem;line-height:1.4;color:var(--text-secondary);text-align:center;max-width:20rem}.btn.ghost{border:1px solid #c7d2e2;color:#334155}.featureHighlights{margin-top:1.5rem;background:#f8fafc;color:#0f172a;border:1px solid #dbe4ee;border-radius:18px;padding:1.25rem}.featureHighlights h2{margin:0 0 .7rem;font-size:clamp(1.55rem,3vw,2rem)}.featureHighlights .lead{max-width:62ch;color:#334155;margin-bottom:1.4rem}.featureHighlights .eyebrow{color:#0f6e56}.featureShowcaseGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.featureShowcaseGridBottom{margin-top:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.featureShowcaseCard{background:#fff;border:1px solid #dbe4ee;border-radius:14px;padding:.9rem;display:grid;gap:.8rem;min-height:100%}.featureShowcaseCard img{width:100%;max-width:200px;height:auto;display:block;margin:0 auto;border-radius:16px}.featureShowcaseCard h3{margin:0 0 .4rem;font-size:1.05rem;color:#0f172a}.featureShowcaseCard p{margin:0;color:#475569;line-height:1.5}.getAppSection{margin-top:1.5rem;background:#fff;border-radius:18px;border:1px solid #dbe4ee;padding:1.25rem}.getAppSection h2{margin:0 0 .5rem;font-size:clamp(1.5rem,2.7vw,1.9rem);color:#0f172a}.getAppSection .lead{max-width:58ch;color:#475569;margin-bottom:1rem}.getAppSection .eyebrow{color:#0f6e56}.pricingAsterisk{color:#0f6e56;text-decoration:none;margin-left:.12em;font-weight:800}.pricingAsterisk:hover{text-decoration:underline}.pricingSection{margin-top:1.5rem;background:#fff;border:1px solid #dbe4ee;border-radius:18px;padding:1.25rem}.pricingSection h2{margin:0 0 .75rem;font-size:clamp(1.35rem,2.3vw,1.7rem);color:#0f172a}.pricingSection .eyebrow{color:#0f6e56}.pricingBody{max-width:68ch;color:#475569;line-height:1.6}.pricingBody p{margin:0 0 .85rem}.pricingBody ul{margin:0 0 .85rem;padding-left:1.25rem}.pricingBody li{margin-bottom:.45rem}.pricingBody li:last-child{margin-bottom:0}.onboardingSection{margin-top:1.5rem;background:#fff;border:1px solid #dbe4ee;border-radius:18px;padding:1.25rem}.onboardingSection h2{margin:0 0 .75rem;font-size:clamp(1.35rem,2.3vw,1.7rem);color:#0f172a}.onboardingSection .eyebrow{color:#0f6e56}.onboardingBody{max-width:68ch;color:#475569;line-height:1.6;margin-bottom:1rem}.onboardingBody p{margin:0 0 .85rem}.onboardingBody ul{margin:0 0 .85rem;padding-left:1.25rem}.onboardingBody li{margin-bottom:.45rem}.onboardingBody li:last-child{margin-bottom:0}.onboardingBody a{color:#1b3f7a;font-weight:600}.teemezySection{margin-top:1.5rem;background:#fff;border:1px solid #dbe4ee;border-radius:18px;padding:1.25rem}.teemezySection h2{margin:0 0 .5rem;font-size:clamp(1.35rem,2.3vw,1.7rem);color:#0f172a}.teemezySection .lead{max-width:64ch;color:#475569;margin-bottom:.95rem}.storeBadges{display:flex;flex-wrap:wrap;gap:.75rem}.storeBadge{display:inline-flex;flex-direction:column;justify-content:center;min-width:180px;min-height:54px;padding:0;border-radius:10px;border:1px solid transparent;text-decoration:none;background:transparent;color:#f8fafc}.storeBadge img{display:block;width:auto;height:54px;border-radius:10px}.storeBadgePlay:hover{filter:brightness(1.05)}.storeBadgeIos.isSoon{opacity:.85;position:relative}.storeBadgeSoon{position:absolute;right:8px;bottom:6px;font-size:.66rem;font-weight:700;color:#e2e8f0;background:#0f172acc;border-radius:999px;padding:.14rem .4rem}.siteQrShare{margin-top:1.75rem;padding-top:1.5rem;border-top:1px solid #e2e8f0}.siteQrShareGrid{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:1.5rem;align-items:start}.siteQrShareVisual{text-align:center}.siteQrShareQrWrap{position:relative;width:200px;margin:0 auto}.siteQrShareImage{display:block;width:200px;height:200px;border:1px solid #dbe4ee;background:#fff;padding:8px}.siteQrSharePlaceholder{position:absolute;top:0;right:0;bottom:0;left:0;border:1px dashed #cbd5e1;display:grid;place-items:center;color:#64748b;font-size:.9rem;background:#fff}.siteQrShareUrl{margin:.75rem 0 .25rem;font-weight:700;font-size:.95rem}.siteQrShareUrl a{color:#0f6e56;text-decoration:none}.siteQrShareUrl a:hover{text-decoration:underline}.siteQrShareHint{margin:0;font-size:.85rem;color:#64748b;line-height:1.45}.siteQrShareActions h3{margin:0 0 .5rem;font-size:1.15rem;color:#0f172a}.siteQrShareActions p{margin:0 0 1rem;color:#475569;line-height:1.55;font-size:.95rem}.siteQrShareLabel{display:block;font-size:.85rem;font-weight:600;color:#334155;margin-bottom:.35rem}.siteQrShareOptional{font-weight:500;color:#64748b}.siteQrShareInput{width:100%;max-width:420px;border:1px solid #dbe4ee;border-radius:10px;padding:.55rem .75rem;font-size:.95rem;margin-bottom:.85rem}.siteQrShareDownload{border:none;cursor:pointer}.siteQrShareDownload:disabled{opacity:.65;cursor:not-allowed}.siteQrShareError{margin:.65rem 0 0;color:#b45309;font-size:.88rem}.howItWorksSection{margin-top:1.5rem;background:#f8fafc;color:#0f172a;border:1px solid #dbe4ee;border-radius:18px;padding:1.25rem}.howItWorksSection h2{margin:0 0 .7rem;font-size:clamp(1.45rem,2.6vw,1.85rem)}.howItWorksSection .eyebrow{color:#0f6e56}.howItWorksGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem}.howItWorksCard{background:#fff;border:1px solid #dbe4ee;border-radius:14px;padding:.95rem}.howItWorksCard h3{margin:.35rem 0;color:#0f172a}.howItWorksCard p{margin:0;color:#475569}.howStep{display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;border-radius:999px;background:#0f6e56;color:#fff;font-size:.85rem;font-weight:700}.loginAppCta{margin-bottom:1rem}.loginAppCtaTitle{margin:0 0 .5rem;font-size:1.05rem;color:#0f172a}.loginAppCta .btn{margin-top:.75rem}.authLegalFooter{justify-content:center}.legalPage h1{margin:0 0 .35rem;color:#0f172a}.legalPage h2{margin:1.2rem 0 .45rem;font-size:1.05rem;color:#0f172a}.legalPage h3{margin:.95rem 0 .45rem;font-size:.98rem;color:#1e293b}.legalPage p{color:#475569;line-height:1.55;margin:.35rem 0}.legalBack{margin:0 0 .9rem}.legalCompanyLine{margin:.35rem 0 0;color:#64748b;font-size:.8rem}.legalPage ul,.legalPage ol{color:#475569;padding-left:1.2rem}.legalPage li{margin-bottom:.32rem}@media(max-width:900px){.landingHero{grid-template-columns:1fr;padding:1rem}.landingHeroMedia{justify-content:flex-start}.landingHeroImage{max-width:448px}.featureShowcaseCard img{max-width:230px}.featureShowcaseGrid,.featureShowcaseGridBottom{grid-template-columns:repeat(2,minmax(0,1fr))}.howItWorksGrid{grid-template-columns:1fr}.storeBadge{min-width:160px}.storeBadge img{height:48px}.publicHeaderInner{align-items:flex-start;flex-direction:column}.publicNav{width:100%;margin-top:.1rem}}@media(max-width:640px){.featureShowcaseGrid,.featureShowcaseGridBottom,.siteQrShareGrid{grid-template-columns:1fr}.publicMain{padding-top:1rem}}
