/* Public welcome page: scoped to avoid changing the signed-in application. */
.welcome-page .header-inner>.button{margin-left:auto;flex-shrink:0}
.welcome-page .welcome-hero{max-width:880px;padding-bottom:28px}
.welcome-page .welcome-hero>p{max-width:700px}
.welcome-page .welcome-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.welcome-page .welcome-grid .panel{min-width:0;margin:0}
.welcome-page .welcome-grid{margin:24px 0}
.welcome-page .welcome-highlight{background:#e6f3ef;border-color:#bddbd1;border-left:4px solid #087c80}
.welcome-highlight h2{margin-top:10px}
.welcome-page .setup-guide li{padding-left:4px;margin:18px 0}
.welcome-faq{margin-top:36px}
.welcome-faq details.panel{padding:18px 22px;margin:12px 0}
.welcome-faq summary{line-height:1.5}
.welcome-faq details p{margin:14px 0 0}
.welcome-note{margin-top:28px}
.welcome-page a:focus-visible,.welcome-page summary:focus-visible{outline:3px solid #087c80;outline-offset:4px}
@media(max-width:800px){.welcome-page .welcome-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
.welcome-page .header-inner>.brand{flex:1 1 200px}
.welcome-page .welcome-grid{grid-template-columns:1fr;gap:12px}
.welcome-page .welcome-hero h1{font-size:clamp(32px,8vw,44px)}
.welcome-page .welcome-hero>p{font-size:17px}
.welcome-page .welcome-hero>p.muted{font-size:13px}
.welcome-page .welcome-hero .actions{display:grid;grid-template-columns:1fr;width:100%}
.welcome-page .actions .button{text-align:center;min-height:48px}
.welcome-page .setup-guide>.button{width:100%;text-align:center}
.welcome-faq details.panel{padding:14px 16px}
}

.welcome-page .welcome-hero>p.welcome-promise{font-size:clamp(21px,3vw,28px);font-weight:700;line-height:1.35;color:#19384b;margin-top:0}

/* Full-width introduction with a concrete visual example. */
.welcome-page .welcome-hero{max-width:none;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(28px,4vw,64px);align-items:center;padding:48px 0 40px}
.hero-copy{min-width:0}.welcome-page .hero-copy h1{font-size:clamp(32px,3.6vw,52px);margin:16px 0 18px;text-wrap:balance}
.hero-copy>p{font-size:17px;line-height:1.65;color:#45616f;max-width:none}.hero-copy>p.welcome-promise{font-size:23px;font-weight:700;line-height:1.35;color:#19384b}.hero-copy>p.muted{font-size:13px}
.hero-preview{min-width:0;background:#edf5f2;border:1px solid #c9ded7;border-radius:24px;padding:clamp(20px,2.5vw,36px);box-shadow:0 18px 45px #19384b0d;position:relative}
.preview-top{display:flex;align-items:center;gap:8px;color:#345c59;font-size:13px;font-weight:650;flex-wrap:wrap}.preview-dot{width:8px;height:8px;border-radius:50%;background:#087c80}.preview-badge{margin-left:auto;padding:4px 9px;border:1px solid #aaccc2;border-radius:20px;font-size:11px}
.hero-preview h2{font-size:clamp(23px,2.4vw,32px);line-height:1.25;letter-spacing:-.025em;margin:26px 0}
.preview-shift{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:20px;margin:12px 0;border:1px solid #d5e3de;border-radius:14px;background:white}.preview-label{display:block;font-size:13px;color:#526c72;margin-bottom:6px}.preview-shift strong{display:block;font-size:25px;letter-spacing:-.025em;font-variant-numeric:tabular-nums}.preview-tag{font-size:12px;font-weight:650;color:#226359;background:#e7f3ed;border-radius:20px;padding:5px 10px}.preview-tag.changed{background:#fff1d8;color:#805513}
.preview-result{display:flex;gap:12px;margin:25px 0;color:#234c4b}.preview-result>span{font-size:26px}.preview-result p{font-size:14px;line-height:1.6;margin:6px 0 0}.preview-steps{display:flex;flex-wrap:wrap;gap:8px;border-top:1px solid #c9ded7;padding-top:20px}.preview-steps span{font-size:12px;padding:5px 9px;background:#fff9;border-radius:6px}.preview-caption{font-size:11px;color:#526c72;margin:16px 0 0}
.benefits-title{font-size:28px;margin:18px 0 0}.welcome-page .welcome-grid{gap:20px}.welcome-page .welcome-grid .panel{padding:26px;border-top:3px solid #68a79b;border-radius:14px}.welcome-page .welcome-grid h2{margin-top:0;line-height:1.35}.welcome-page .welcome-grid p{font-size:15px;line-height:1.7}.welcome-page .welcome-grid .panel:last-child{grid-column:1/-1;background:#edf5f2}
@media(max-width:900px){.welcome-page .welcome-hero{grid-template-columns:1fr;gap:24px;padding-top:28px}.hero-copy>p{max-width:none}.hero-preview h2 br{display:none}.welcome-page .hero-copy h1{font-size:clamp(32px,5.5vw,48px)}}
@media(max-width:600px){.welcome-page .hero-copy .actions{display:grid;grid-template-columns:1fr}.hero-preview{padding:20px;border-radius:18px}.preview-shift{padding:16px}.preview-shift strong{font-size:23px}.hero-copy>p{font-size:16px}.hero-copy>p.welcome-promise{font-size:21px}.benefits-title{font-size:25px}.welcome-page .welcome-grid .panel{padding:20px}}

.welcome-header-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-left:auto}.welcome-page .welcome-header-actions .button{min-height:44px;text-align:center}.welcome-page .welcome-header-actions .welcome-primary{background:#087c80;color:#fff;border-color:#65aca5}
@media(max-width:600px){.welcome-header-actions{width:100%;margin-left:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.welcome-page .welcome-header-actions .button{padding:12px 8px;font-size:14px}}
