/* Refinement within BOOBOT's existing Outfit / night / lavender system. */
.launch-page .hero { align-items:center; padding-block:64px 56px; }
.launch-page .hero-copy { max-width:36rem; }
.launch-page .hero h1 { line-height:1.08; }
.launch-page .hero h1 { font-size:clamp(2.65rem,4.9vw,4.9rem); text-wrap:balance; }
.launch-page .hero-description { margin-top:24px; max-width:40ch; }
.launch-page .capture-demo { border:0; border-radius:16px; background:var(--surface); box-shadow:0 16px 40px #09060f50; padding:28px; }
.launch-page .capture-demo-heading h2 { font-size:clamp(1.45rem,2vw,1.8rem); max-width:18ch; }
.launch-page .capture-demo-heading img { width:88px; height:88px; flex-shrink:0; }
.launch-page .capture-demo-heading p { font-size:.95rem; line-height:1.55; }
.launch-page .mode-description { min-height:0; margin-block:14px; }
.demo-adjustments { border-block:1px solid var(--line); }
.demo-adjustments summary { padding-block:15px; color:var(--accent); cursor:pointer; min-height:48px; font-size:.95rem; }
.launch-page .sample-offer { padding-block:22px 12px; }
.launch-page .offer-verdict { min-height:0; padding-top:12px; gap:6px; }
.launch-page .demo-note { line-height:1.6; }
.launch-page .launch-status { margin-top:22px; padding-top:18px; }
.launch-page .hero-actions { flex-wrap:wrap; row-gap:14px; }
.filters-story { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.12fr); gap:64px; align-items:center; padding-block:28px 94px; }
.filters-story h2 { font-size:clamp(2.3rem,3.6vw,3.6rem); line-height:1.12; max-width:15ch; }
.filters-story-copy>p { color:var(--muted); margin-top:22px; max-width:43ch; }
.filter-explanation { margin-block:26px; }
.filter-explanation>div { padding-block:14px; border-bottom:1px solid var(--line); }
.filter-explanation dt { font-weight:700; font-size:1.1rem; }
.filter-explanation dd { color:var(--muted); margin:5px 0 0; max-width:45ch; }
.week-filter-demo { background:var(--surface); border-radius:16px; padding:28px; min-width:0; }
.week-filter-demo h3 { font-size:1.5rem; line-height:1.25; }
.filter-mode-switch { display:flex; gap:4px; background:var(--bg); border-radius:12px; padding:5px; margin-top:20px; }
.filter-mode-switch button { flex:1; min-width:0; padding:12px; min-height:48px; background:transparent; color:var(--muted); border:0; border-radius:8px; }
.filter-mode-switch [aria-pressed=true] { background:var(--accent); color:#302442; font-weight:700; }
#week-filter-hint { color:var(--muted); font-size:.9rem; margin-block:16px; }
.week-filter-days { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:6px; }
.week-filter-days button { min-width:0; min-height:48px; padding:10px 2px; border:1px solid var(--control-line); border-radius:10px; background:transparent; color:var(--text); font-size:.9rem; }
.week-filter-days [aria-pressed=true] { background:var(--brand); border-color:var(--brand); color:#14111c; font-weight:700; }
.week-filter-days .day-off { color:var(--muted); border-style:dashed; }
.week-filter-days .day-off[aria-pressed=true] { color:#14111c; }
#week-filter-preview { margin-block:22px 18px; border-top:1px solid var(--line); padding-top:20px; min-height:190px; }
#week-filter-preview h4 { font-size:1.2rem; }
#week-filter-preview>p { color:var(--muted); margin-top:8px; }
.week-filter-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 22px; margin-top:16px; }
.week-filter-fields div { min-width:0; }
.week-filter-fields dt { color:var(--muted); font-size:.875rem; }
.week-filter-fields dd { color:var(--text); font-weight:700; margin:4px 0 0; overflow-wrap:anywhere; }
.filter-mode-switch button:hover:not([aria-pressed=true]),.week-filter-days button:hover:not([aria-pressed=true]) { background:var(--raised); color:var(--text); }
.filter-mode-switch button:focus-visible,.week-filter-days button:focus-visible,.demo-adjustments summary:focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
.launch-page .capture-mode button,.launch-page .profile-switch button { min-height:48px; }
.launch-page .control-options h3 { color:var(--text); }
.launch-page .express-example input { caret-color:var(--accent); }
.launch-page ::selection { color:#14111c; background:var(--accent); }
.launch-page { scrollbar-color:var(--line) var(--bg); }
.launch-page input { font-variant-numeric:tabular-nums; }
@media(max-width:960px) { .filters-story { gap:32px; } .week-filter-days { grid-template-columns:repeat(4,minmax(0,1fr)); } }
@media(max-width:780px) {
 .launch-page .hero { padding-block:42px 32px; gap:30px; }
 .launch-page .capture-demo,.week-filter-demo { padding:24px; }
 .filters-story { grid-template-columns:minmax(0,1fr); padding-block:24px 64px; gap:30px; }
 .filters-story h2 { max-width:19ch; }
 .week-filter-days { grid-template-columns:repeat(7,minmax(0,1fr)); }
}
@media(max-width:480px) { .week-filter-days { grid-template-columns:repeat(4,minmax(0,1fr)); } }
@media(max-width:360px) {
 .launch-page .capture-demo,.week-filter-demo { padding:20px; }
 .launch-page .capture-demo-heading img { width:54px; height:54px; }
 .week-filter-fields { gap:16px 12px; }
}
@media(prefers-reduced-transparency:reduce) { .header-shell { backdrop-filter:none; background:var(--bg); } }
