/* Pre-launch waitlist page and the homepage launch banner. Builds on the #groove-home tokens in groove-brand.css. */
/* Keep the app viewport anchored when focus or restored browser scroll moves the document. */
html:has(#groove-home.gw-page),body:has(#groove-home.gw-page){overflow:clip}
#root:has(>#groove-home.gw-page){position:fixed;inset:0;width:100%;height:100%;overflow:hidden}
#groove-home .gw-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
#groove-home.gw-page{background:radial-gradient(1100px 620px at 50% -140px,oklch(.95 .06 98 / .75),transparent 70%),#fff}

/* Sections rise into view. Hidden only while the observer is running (see useReveal). */
#groove-home.gw-animate [data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
#groove-home.gw-animate [data-reveal].gw-in{opacity:1;transform:none}

#groove-home .gw-pill{display:inline-flex;align-items:center;gap:8px;margin:0;padding:6px 14px;border:1px solid rgba(93,123,94,.3);border-radius:999px;background:rgba(255,255,255,.7);font-size:11px;font-weight:500;letter-spacing:1.4px;text-transform:uppercase;color:var(--gh-sage)}
#groove-home .gw-pill span{width:6px;height:6px;border-radius:50%;background:var(--gh-sage)}
#groove-home .gw-pill-light{border-color:rgba(255,255,255,.35);background:rgba(255,255,255,.12);color:#fff}
#groove-home .gw-pill-light span{background:var(--gh-butter)}

/* Hero card */
#groove-home .gw-hero{display:flex;flex-direction:column;align-items:center;padding:48px 20px 24px}
#groove-home .gw-hero-card{width:100%;max-width:620px;padding:40px 32px 32px;border:1px solid var(--gh-line);border-radius:24px;background:rgba(255,255,255,.92);box-shadow:0 1px 2px rgba(42,64,43,.08),0 30px 70px -30px rgba(42,64,43,.38);text-align:center;scroll-margin-top:88px;animation:gw-rise .8s cubic-bezier(.2,.7,.2,1) both}
@keyframes gw-rise{from{opacity:0;transform:translateY(24px)}}
#groove-home .gw-hero-card h1{margin-top:20px;font-size:44px;line-height:1.05;color:var(--gh-ink)}
#groove-home .gw-hero-card h1 em{font-style:normal;background:var(--gh-gradient);background-clip:text;-webkit-background-clip:text;color:transparent}
#groove-home .gw-lede{max-width:460px;margin:16px auto 0;color:var(--gh-muted);line-height:1.625}
#groove-home .gw-first{margin-top:16px;font-weight:500;color:var(--gh-sage)}
#groove-home .gw-countdown{min-height:88px;margin-top:24px}
#groove-home .gw-units{display:flex;justify-content:center;gap:10px}
#groove-home .gw-unit{display:flex;flex-direction:column;align-items:center;min-width:76px;padding:14px 8px 10px;border:1px solid var(--gh-line);border-radius:12px;background:linear-gradient(160deg,oklch(.99 .008 100),oklch(.95 .06 98))}
#groove-home .gw-unit strong{font-size:34px;font-weight:600;line-height:1;color:var(--gh-ink);font-variant-numeric:tabular-nums}
#groove-home .gw-unit span{margin-top:8px;font-size:10px;letter-spacing:1.6px;text-transform:uppercase;color:var(--gh-muted)}
#groove-home p.gw-soon{margin-top:24px;font-size:24px;font-weight:600;color:var(--gh-sage)}
#groove-home p.gw-count{margin-top:20px;font-size:13px;color:var(--gh-muted)}
#groove-home .gw-cue{display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin-top:28px;border-radius:50%;color:var(--gh-sage)!important;animation:gw-bob 2.2s ease-in-out infinite}
#groove-home .gw-cue svg{width:24px;height:24px}
@keyframes gw-bob{50%{transform:translateY(7px)}}

/* Form, inside the hero card */
#groove-home .gw-form{margin-top:28px;text-align:left}
#groove-home .gw-fields{display:grid;grid-template-columns:1fr;gap:14px}
#groove-home .gw-email-field{grid-column:1/-1}
#groove-home .gw-form label{display:block;font-size:13px;font-weight:500;color:var(--gh-ink)}
#groove-home .gw-form input[type=text],#groove-home .gw-form input[type=email]{display:block;width:100%;min-height:48px;margin-top:6px;padding:10px 14px;border:1px solid #c9d5c9;border-radius:10px;background:#fff;color:var(--gh-ink);font:inherit;font-size:16px}
#groove-home .gw-form input:focus-visible{outline:3px solid var(--gh-sage);outline-offset:2px}
#groove-home .gw-audience{margin:18px 0 0;padding:0;border:0;display:flex;flex-wrap:wrap;gap:10px}
#groove-home .gw-audience legend{padding:0;margin-bottom:8px;font-size:13px;font-weight:500}
#groove-home .gw-audience label{display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 16px;border:1px solid #c9d5c9;border-radius:999px;cursor:pointer;font-weight:400}
#groove-home .gw-audience label:has(input:checked){border-color:var(--gh-sage);background:var(--gh-butter)}
#groove-home .gw-audience input,#groove-home .gw-consent input{width:18px;height:18px;margin:0;accent-color:var(--gh-sage);flex-shrink:0}
#groove-home .gw-consent{display:flex!important;align-items:flex-start;gap:10px;margin-top:18px;font-weight:400!important;line-height:1.5;color:var(--gh-muted)!important;cursor:pointer}
#groove-home .gw-consent input{margin-top:2px}
#groove-home .gw-trap{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
#groove-home .gw-error{margin-top:16px;padding:10px 14px;border-radius:8px;background:#fdecea;color:#8a1f17;font-size:13px}
#groove-home .gw-form button{width:100%;min-height:52px;margin-top:22px;border-radius:999px;cursor:pointer;font-family:inherit}
#groove-home .gw-form button:disabled{opacity:.6;cursor:default;transform:none}
#groove-home .gw-joined{margin-top:28px}
#groove-home .gw-joined h2{font-size:24px;line-height:1.25}
#groove-home .gw-joined p{margin-top:10px;color:var(--gh-muted);line-height:1.625}
#groove-home .gw-joined .gh-actions{margin-top:20px}

/* Scrolling sections */
#groove-home .gw-section{padding-block:56px;scroll-margin-top:72px}
#groove-home .gw-heading{margin-bottom:28px}
#groove-home .gw-heading h2,#groove-home .gw-story h2{margin-top:14px;font-size:32px;line-height:1.2}
#groove-home .gw-heading>p:last-child{max-width:520px;margin-top:12px;color:var(--gh-muted);line-height:1.625}
#groove-home .gw-page .gh-card h3,#groove-home.gw-page .gh-card h3{font-size:18px;line-height:1.3}
#groove-home .gw-story{max-width:760px;text-align:center}
#groove-home .gw-story-text{margin-top:0}
#groove-home .gw-story-text p{max-width:600px;margin:20px auto 0;font-size:16px;line-height:1.7;color:var(--gh-muted)}
#groove-home .gw-story-text p.gw-turn{font-size:20px;font-weight:600;color:var(--gh-ink)}
#groove-home .gw-page .gh-pro-panel h2,#groove-home.gw-page .gh-pro-panel h2{margin-top:16px}
#groove-home .gw-pro-grid{display:grid;grid-template-columns:1fr;gap:24px;margin-top:32px}
#groove-home .gw-pro-grid h3{font-size:17px;line-height:1.3}
#groove-home .gw-pro-grid p{margin-top:6px;font-size:14px}
#groove-home .gw-faq{max-width:760px}
#groove-home .gw-faq details{border-top:1px solid var(--gh-line)}
#groove-home .gw-faq details:last-child{border-bottom:1px solid var(--gh-line)}
#groove-home .gw-faq summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;padding:16px 4px;font-size:16px;font-weight:500;cursor:pointer;list-style:none}
#groove-home .gw-faq summary::-webkit-details-marker{display:none}
#groove-home .gw-faq summary svg{flex-shrink:0;width:20px;height:20px;color:var(--gh-sage);transition:transform .25s ease}
#groove-home .gw-faq details[open] summary svg{transform:rotate(180deg)}
#groove-home .gw-faq summary:focus-visible{outline:3px solid var(--gh-sage);outline-offset:2px}
#groove-home .gw-faq details p{padding:0 4px 20px;color:var(--gh-muted);line-height:1.625}
#groove-home .gw-close{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;padding:32px;border:1px solid var(--gh-line);border-radius:20px;background:linear-gradient(160deg,oklch(.99 .008 100),oklch(.94 .07 98))}
#groove-home .gw-close h2{font-size:28px;line-height:1.2}
#groove-home .gw-close p{margin-top:8px;color:var(--gh-muted)}
#groove-home.gw-page .gh-footer{margin-top:24px}
#groove-home .gw-top{position:fixed;right:16px;bottom:72px;z-index:20;display:flex;align-items:center;justify-content:center;width:48px;height:48px;padding:0;border:1px solid var(--gh-line);border-radius:50%;background:#fff;color:var(--gh-sage);box-shadow:0 10px 26px -12px rgba(42,64,43,.5);cursor:pointer;opacity:0;pointer-events:none;transform:translateY(12px);transition:opacity .3s ease,transform .3s ease}
#groove-home .gw-top.gw-top-on{opacity:1;pointer-events:auto;transform:none}
#groove-home .gw-top svg{width:22px;height:22px}
#groove-home .gw-top:focus-visible{outline:3px solid var(--gh-sage);outline-offset:3px}

/* One readable feature at a time, without pictures. */
#groove-home .gw-flow{border:1px solid #d5dfd1;border-radius:26px;background:#fafbf7;box-shadow:0 20px 55px -36px #40533c55;overflow:hidden}
#groove-home .gw-flow-toolbar{display:flex;justify-content:space-between;align-items:center;min-height:62px;padding:10px 28px;border-bottom:1px solid #e0e6d9;gap:12px}
#groove-home .gw-flow-eyebrow{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:#55694f}
#groove-home .gw-flow button{font:inherit;cursor:pointer;color:#405b3e;border:1px solid #cbd7c5;background:#fff}
#groove-home .gw-flow button:focus-visible{outline:3px solid #405b3e;outline-offset:3px}
#groove-home .gw-flow .gw-flow-play{display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 14px;border:0;border-radius:99px;background:transparent;font-size:13px}
#groove-home .gw-flow-stage{touch-action:pan-y}
#groove-home .gw-flow-slide{display:grid;grid-template-columns:1.08fr 1fr;min-height:350px;animation:gw-feature-enter .65s cubic-bezier(.22,.7,.25,1) both}
@keyframes gw-feature-enter{from{opacity:.15;transform:translateX(18px)}to{opacity:1;transform:none}}
#groove-home .gw-flow-copy{display:flex;flex-direction:column;justify-content:center;padding:34px 42px;min-width:0}
#groove-home .gw-flow-kicker{display:flex;align-items:center;gap:12px;color:#536d4c;font-size:12px;letter-spacing:1px;text-transform:uppercase}
#groove-home .gw-flow-number{display:grid;place-items:center;width:40px;height:40px;border:1px solid #cbd7c5;border-radius:50%;background:#f7edb6;font-size:14px;letter-spacing:0}
#groove-home .gw-flow-copy h3{margin:22px 0 0;font-size:clamp(27px,3vw,38px);font-weight:600;line-height:1.15;max-width:390px;color:#293b29}
#groove-home .gw-flow-copy>p{margin:18px 0 0;max-width:410px;font-size:15px;line-height:1.75;color:#53614f}
#groove-home .gw-flow-note{display:flex;align-items:center;gap:10px;margin-top:28px;color:#5e7458;font-size:13px}
#groove-home .gw-flow-note>span{font-size:21px;color:#8a984f}
#groove-home .gw-flow-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 28px;border-top:1px solid #e0e6d9}
#groove-home .gw-flow-dots,#groove-home .gw-flow-navigation{display:flex;align-items:center;gap:4px}
#groove-home .gw-flow .gw-flow-dot{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:transparent;border-radius:50%}
#groove-home .gw-flow-dot span{display:block;width:7px;height:7px;border-radius:99px;background:#c1ceba;transition:width .3s,background .3s}
#groove-home .gw-flow-dot.is-current span{width:28px;background:#5d7b5e}
#groove-home .gw-flow-navigation{gap:10px}
#groove-home .gw-flow-navigation>button{width:46px;height:46px;display:grid;place-items:center;padding:0;border-radius:50%;transition:background .2s}
#groove-home .gw-flow-navigation>button:hover{background:#f6edb8}
#groove-home .gw-flow-navigation svg{width:22px;height:22px}
#groove-home .gw-flow-count{margin-right:10px;font-size:12px;color:#607357;letter-spacing:1px;font-variant-numeric:tabular-nums}
@media(max-width:767px){#groove-home .gw-flow-slide{grid-template-columns:1fr}#groove-home .gw-flow-copy{padding:26px 24px;min-height:320px}#groove-home .gw-flow-copy h3{font-size:30px;max-width:440px}#groove-home .gw-flow-art{min-height:220px}#groove-home .gw-flow-art img{object-position:50% 56%}#groove-home .gw-flow-toolbar{padding:10px 20px}#groove-home .gw-flow-controls{padding:12px 16px;flex-wrap:wrap}#groove-home .gw-flow-dot{width:36px!important}#groove-home .gw-flow-count{display:none}#groove-home .gw-flow-navigation{gap:6px}}
@media(max-width:359px){#groove-home .gw-flow-controls{justify-content:center}#groove-home .gw-flow-copy{min-height:355px}}
@media(prefers-reduced-motion:reduce){#groove-home .gw-flow-slide{animation:none}#groove-home .gw-flow-dot span,#groove-home .gw-flow-navigation>button{transition:none}}

/* Homepage banner */
#groove-home .gw-banner{background:var(--gh-butter);border-bottom:1px solid rgba(93,123,94,.2)}
#groove-home .gw-banner-inner{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px 20px;padding-block:10px;min-height:56px}
#groove-home .gw-banner-text{font-size:14px;font-weight:500;color:#354835}
#groove-home .gw-banner .gw-countdown{min-height:0;margin-top:0}
#groove-home .gw-banner .gw-units{gap:6px}
#groove-home .gw-banner .gw-unit{flex-direction:row;align-items:baseline;gap:4px;min-width:0;padding:4px 10px;border-radius:8px;background:rgba(255,255,255,.7);border-color:rgba(93,123,94,.2)}
#groove-home .gw-banner .gw-unit strong{font-size:16px}
#groove-home .gw-banner .gw-unit span{margin-top:0;font-size:10px;letter-spacing:.6px}
#groove-home .gw-banner p.gw-soon{margin-top:0;font-size:14px}
#groove-home .gw-banner-link{display:inline-flex;align-items:center;min-height:40px;padding:6px 18px;border-radius:2px;background:var(--gh-sage);color:#fff!important;font-size:12px;font-weight:500;letter-spacing:1.2px;text-transform:uppercase}

@media(min-width:640px){#groove-home .gw-hero{padding-top:72px}#groove-home .gw-hero-card{padding:48px 48px 40px}#groove-home .gw-hero-card h1{font-size:56px}#groove-home .gw-fields{grid-template-columns:1fr 1fr}#groove-home .gw-unit{min-width:88px}#groove-home .gw-unit strong{font-size:40px}#groove-home .gw-section{padding-block:80px}#groove-home .gw-heading h2,#groove-home .gw-story h2{font-size:40px}}
@media(min-width:768px){#groove-home .gw-pro-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:639px){#groove-home.gw-page .gh-nav a:not(.gh-register){display:none}#groove-home.gw-page .gh-header-inner{flex-wrap:nowrap}#groove-home.gw-page .gh-nav{width:auto}#groove-home .gw-hero{padding-top:28px}#groove-home .gw-hero-card{padding:32px 20px 24px;border-radius:20px}#groove-home .gw-hero-card h1{font-size:clamp(34px,10vw,44px)}#groove-home .gw-units{gap:6px}#groove-home .gw-unit{min-width:0;flex:1;padding-inline:2px}#groove-home .gw-unit strong{font-size:clamp(24px,8vw,34px)}#groove-home .gw-unit span{font-size:9px;letter-spacing:1px}#groove-home .gw-audience label{flex:1 1 auto;justify-content:center}#groove-home .gw-close{padding:24px 20px}#groove-home .gw-close .gh-button{width:100%}#groove-home .gw-banner-inner{gap:8px 12px}#groove-home .gw-banner .gw-unit span{display:none}#groove-home .gw-banner .gw-unit strong::after{content:attr(data-u)}}
@media(prefers-reduced-motion:reduce){#groove-home .gw-hero-card,#groove-home .gw-cue{animation:none}#groove-home .gw-top,#groove-home .gw-faq summary svg{transition:none}}

/* Removal confirmation and the administrator page */
#groove-home .gw-hero-card .gh-actions button{cursor:pointer;font-family:inherit}
#groove-home .gw-admin-main{padding-block:40px 80px}
#groove-home .gw-admin-main>h1{font-size:36px;line-height:1.15}
#groove-home .gw-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:24px}
#groove-home .gw-stats div{padding:18px;border:1px solid var(--gh-line);border-radius:14px;background:linear-gradient(160deg,oklch(.99 .008 100),oklch(.95 .06 98))}
#groove-home .gw-stats strong{display:block;font-size:30px;line-height:1;font-variant-numeric:tabular-nums}
#groove-home .gw-stats span{display:block;margin-top:6px;font-size:12px;color:var(--gh-muted)}
#groove-home .gw-panel{margin-top:24px;padding:24px;border:1px solid var(--gh-line);border-radius:16px;background:#fff}
#groove-home .gw-panel h2{font-size:22px;line-height:1.25}
#groove-home .gw-panel>p{margin-top:10px;color:var(--gh-muted);line-height:1.625}
#groove-home .gw-panel .gh-button{margin-top:16px;cursor:pointer;font-family:inherit}
#groove-home .gw-panel .gh-button:disabled{opacity:.5;cursor:default;transform:none}
#groove-home .gw-panel-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px}
#groove-home .gw-panel-head .gh-button{margin-top:0}
#groove-home .gw-table{margin-top:16px;overflow-x:auto;border:1px solid var(--gh-line);border-radius:10px}
#groove-home .gw-table table{width:100%;border-collapse:collapse;font-size:14px;white-space:nowrap}
#groove-home .gw-table th{padding:10px 14px;background:#f6f8f5;text-align:left;font-size:11px;font-weight:500;letter-spacing:1px;text-transform:uppercase;color:var(--gh-muted)}
#groove-home .gw-table td{padding:10px 14px;border-top:1px solid var(--gh-line)}
#groove-home .gw-mail{margin-top:16px;padding:18px;border:1px solid var(--gh-line);border-radius:12px;background:#fafbf9}
#groove-home .gw-mail pre{margin:12px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.6;color:var(--gh-ink)}
#groove-home .gw-notice{margin-top:16px;padding:10px 14px;border-radius:8px;background:#eaf3ea;color:#24502a;font-size:14px}
#groove-home .gw-send{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
#groove-home .gw-send input{min-height:44px;margin-top:16px;padding:8px 14px;border:1px solid #c9d5c9;border-radius:8px;font:inherit;font-size:16px;width:160px}
#groove-home .gw-danger{margin-top:28px;padding:20px;border:1px solid #e6c9a8;border-radius:12px;background:#fffaf2}
#groove-home .gw-danger h3{font-size:17px}
#groove-home .gw-danger p{margin-top:8px;color:var(--gh-muted);line-height:1.6}
@media(min-width:768px){#groove-home .gw-stats{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:639px){#groove-home.gw-admin .gh-nav a{display:flex!important}#groove-home .gw-send .gh-button,#groove-home .gw-send input{width:100%}}

/* Text-only feature presentation. */
#groove-home .gw-flow-slide{display:block;min-height:330px;background:linear-gradient(125deg,#f8faf5 0%,#fffdf1 100%)}
#groove-home .gw-flow-copy{align-items:center;text-align:center;min-height:330px;padding:38px 48px}
#groove-home .gw-flow-copy h3{max-width:650px;font-size:clamp(30px,3.5vw,44px)}
#groove-home .gw-flow-copy>p{max-width:580px;font-size:17px;line-height:1.7}
#groove-home .gw-flow-note{margin-top:24px}
@media(max-width:767px){#groove-home .gw-flow-copy{min-height:365px;padding:28px 22px}#groove-home .gw-flow-copy h3{font-size:30px}#groove-home .gw-flow-copy>p{font-size:15px}}
@media(max-width:359px){#groove-home .gw-flow-copy{min-height:400px}}

/* Original sage, butter yellow and white identity, with gently drifting flowers. */
#groove-home.gw-page .gw-top-nav{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-bottom:5px}
#groove-home .gw-top-nav>a,#groove-home .gw-top-nav>button{flex-shrink:0;white-space:nowrap}
#groove-home .gw-top-nav button{font:inherit;min-height:44px;padding:10px 14px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--gh-ink);cursor:pointer}
#groove-home .gw-top-nav button[aria-pressed=true]{background:var(--gh-butter);border-color:var(--gh-line)}
#groove-home .gw-top-nav button:focus-visible{outline:3px solid var(--gh-sage);outline-offset:-3px}
#groove-home .gw-hero-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:26px;text-align:left}
#groove-home .gw-hero-benefits>div{padding:15px 12px;border-radius:14px;background:#f8f7eb}
#groove-home .gw-hero-benefits span{display:block;color:var(--gh-sage);font-size:12px;margin-bottom:8px}
#groove-home .gw-hero-benefits strong{display:block;font-size:15px;line-height:1.25}
#groove-home .gw-hero-benefits p{font-size:12px;line-height:1.5;margin-top:8px;color:var(--gh-muted)}
@media(max-width:639px){#groove-home.gw-page .gh-header-inner{flex-wrap:wrap}#groove-home.gw-page .gw-top-nav{width:100%}#groove-home.gw-page .gw-top-nav a:not(.gh-register){display:flex}#groove-home .gw-hero-benefits{grid-template-columns:1fr}#groove-home .gw-hero-benefits>div{padding:12px 16px}#groove-home .gw-hero-benefits span{float:left;margin:0 12px 0 0}#groove-home .gw-hero-benefits p{margin-top:4px}}
#groove-home.gw-page{background:url('/groove-flower-pattern-spinning.svg') 0 0 / 640px 600px repeat,radial-gradient(900px 600px at 50% 0,#f5e9b066,transparent),#fff;animation:gw-flower-drift 28s ease-in-out infinite alternate}
@keyframes gw-flower-drift{0%{background-position:0 0,50% 0}50%{background-position:20px -14px,50% 0}100%{background-position:-8px -32px,50% 0}}
#groove-home.gw-page.gw-flowers-paused{animation-play-state:paused}
#groove-home.gw-page.gw-flowers-paused{background-image:url('/groove-flower-pattern.svg'),radial-gradient(900px 600px at 50% 0,#f5e9b066,transparent)}
#groove-home.gw-flowers-paused .gw-blossom{animation-play-state:paused}
#groove-home .gw-motion-toggle{min-height:44px;padding:10px 16px;border:1px solid var(--gh-line);border-radius:999px;background:#fff;color:var(--gh-sage);font:inherit;cursor:pointer}
#groove-home .gw-motion-toggle:focus-visible{outline:3px solid var(--gh-sage);outline-offset:3px}
@media(prefers-reduced-motion:reduce){#groove-home.gw-page{animation:none;background-image:url('/groove-flower-pattern.svg'),radial-gradient(900px 600px at 50% 0,#f5e9b066,transparent)}#groove-home .gw-blossom{animation:none!important}#groove-home .gw-motion-toggle{display:none}}
#groove-home .gw-wordmark{font-size:28px;font-weight:600;line-height:1.1;background:var(--gh-gradient);background-clip:text;-webkit-background-clip:text;color:transparent}
#groove-home .gw-blossom{width:26px;height:26px;flex-shrink:0;color:#5d7b5e;transform-origin:center;animation:gw-flower-spin 28s linear infinite}
@keyframes gw-flower-spin{to{transform:rotate(360deg)}}
#groove-home .gw-brand-mention{white-space:nowrap;text-transform:none}
#groove-home .gw-brand-mention .gw-blossom{display:inline-block;width:.58em;height:.58em;margin-left:.16em;vertical-align:baseline}
#groove-home .gw-hero-card h1 em .gw-brand-mention{background:var(--gh-gradient);background-clip:text;-webkit-background-clip:text;color:transparent}
#groove-home .gw-experience{display:flex;justify-content:center;gap:8px;padding:28px 16px 0}
#groove-home .gw-experience button{font:inherit;padding:12px 22px;min-height:48px;border:1px solid var(--gh-line);border-radius:999px;background:#fff;color:var(--gh-ink);cursor:pointer}
#groove-home .gw-experience button[aria-pressed=true]{background:var(--gh-ink);color:#fff}
#groove-home .gw-experience button:focus-visible,#groove-home .gw-quiz button:focus-visible,#groove-home .gw-quiz input:focus-visible{outline:3px solid #5d7b5e;outline-offset:4px}
#groove-home .gw-quiz-link{display:inline-block;margin-top:20px;text-decoration:underline;text-underline-offset:4px;font-weight:500}
#groove-home .gw-quiz{border:1px solid var(--gh-line);border-radius:24px;padding:clamp(22px,5vw,48px);background:#fff;box-shadow:0 16px 48px -35px #40533c44}
#groove-home #groove-waitlist-quiz{max-width:850px}
#groove-home .gw-quiz h2{font-size:clamp(28px,4vw,38px);line-height:1.15;margin-top:12px}
#groove-home .gw-quiz-progress{margin-top:22px;color:var(--gh-sage);font-size:13px}
#groove-home .gw-quiz-intro{margin-top:14px;color:var(--gh-muted)}
#groove-home .gw-quiz-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;border:0;padding:0;margin:26px 0}
#groove-home .gw-quiz-options label{display:flex;align-items:center;gap:12px;min-height:56px;padding:14px;border:1px solid var(--gh-line);border-radius:12px;cursor:pointer}
#groove-home .gw-quiz-options label:has(input:checked){background:#f5e9b0;border-color:#5d7b5e}
#groove-home .gw-quiz-options input{width:18px;height:18px;accent-color:#5d7b5e;flex-shrink:0}
#groove-home .gw-quiz-actions{display:flex;justify-content:space-between;gap:16px;margin-top:22px}
#groove-home .gw-quiz-actions button{font:inherit;min-height:48px;padding:10px 20px;cursor:pointer;border:1px solid var(--gh-line);border-radius:999px;background:#fff;color:var(--gh-ink)}
#groove-home .gw-quiz-actions button.gh-primary{background:var(--gh-green);color:#fff;margin-left:auto}
#groove-home .gw-quiz-actions button:disabled{opacity:.45;cursor:not-allowed}
#groove-home .gw-quiz-privacy{font-size:12px;color:var(--gh-muted);margin-top:22px;line-height:1.6}
#groove-home .gw-quiz-result{margin-top:24px;padding:24px;border-radius:16px;background:#f8f7eb}
#groove-home .gw-quiz-result h3{margin-top:18px;font-size:24px}
#groove-home .gw-routine-suggestions{padding-left:22px;margin-top:18px;line-height:1.65}
#groove-home .gw-routine-suggestions li+li{margin-top:14px}
#groove-home .gw-quiz-result a:not(.gh-button){text-decoration:underline;text-underline-offset:3px}
#groove-home .gw-quiz-result p{margin-top:12px;line-height:1.6}
#groove-home .gw-quiz-result .gh-button{margin-top:22px}
#groove-home.gw-page .gw-flow{border-color:var(--gh-line);background:#fff}
#groove-home.gw-page .gw-flow-slide,#groove-home.gw-page .gw-close,#groove-home.gw-page .gw-unit{background:linear-gradient(120deg,#fff,#f5e9b0)}
#groove-home.gw-page .gw-flow-copy h3{color:var(--gh-ink)}
#groove-home.gw-page .gw-flow-copy>p,#groove-home.gw-page .gw-flow-note,#groove-home.gw-page .gw-flow-kicker,#groove-home.gw-page .gw-flow-eyebrow,#groove-home.gw-page .gw-flow-count,#groove-home.gw-page .gw-flow button{color:var(--gh-sage)}
#groove-home.gw-page .gw-flow-number{background:#f5e9b0;border-color:var(--gh-line)}
#groove-home.gw-page .gw-flow-dot.is-current span{background:var(--gh-sage)}
#groove-home.gw-page .gw-flow-dot span{background:#c1ceba}
#groove-home.gw-page .gw-flow-toolbar,#groove-home.gw-page .gw-flow-controls,#groove-home.gw-page .gw-flow button{border-color:var(--gh-line)}
#groove-home.gw-page .gh-footer{gap:12px;align-items:center}
#groove-home .gw-signup-audience{border:0;padding:0;margin:0 0 16px;text-align:left;min-width:0}
#groove-home .gw-signup-audience legend{font-size:14px;font-weight:600;margin-bottom:8px}
@media(max-width:480px){#groove-home .gw-quiz-options{grid-template-columns:1fr}#groove-home .gw-experience button{padding:12px 16px}#groove-home .gw-quiz-result{padding:18px}}

/* Night mode stays scoped to the public waitlist, including unsubscribe confirmations. */
#groove-home.gw-page[data-theme=light]{color-scheme:light}
#groove-home .gw-theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 14px;border:1px solid var(--gh-line);border-radius:999px;background:transparent;color:var(--gh-ink);font:inherit;font-size:13px;cursor:pointer}
#groove-home .gw-theme-toggle svg{width:19px;height:19px;flex-shrink:0}
#groove-home .gw-theme-toggle:hover{background:var(--gh-butter)}
#groove-home .gw-theme-toggle:focus-visible{outline:3px solid var(--gh-sage);outline-offset:3px}
#groove-home.gw-page[data-theme=dark]{color-scheme:dark;--gh-ink:#f1f3e9;--gh-muted:#bdc9bd;--gh-sage:#b2cba5;--gh-line:#435345;--gh-butter:#49472d;--gh-gradient:linear-gradient(100deg,#a9c39b 0%,#ccd296 52%,#f2da80 100%);--gh-green:linear-gradient(135deg,#bdd1ab,#eddb95);background-color:#141e19;background-image:url('/groove-flower-pattern-spinning.svg'),radial-gradient(900px 600px at 50% 0,#7e824322,transparent)}
#groove-home.gw-page[data-theme=dark].gw-flowers-paused{background-image:url('/groove-flower-pattern.svg'),radial-gradient(900px 600px at 50% 0,#7e824322,transparent)}
#groove-home[data-theme=dark] .gh-header{background:rgba(20,30,25,.94);border-color:var(--gh-line)}
#groove-home[data-theme=dark] .gw-hero-card{background:rgba(28,40,32,.97);box-shadow:0 24px 70px -24px #0009}
#groove-home[data-theme=dark] :is(.gw-quiz,.gw-flow,.gw-top,.gw-motion-toggle){background:#1c2820}
#groove-home[data-theme=dark] :is(.gw-flow-slide,.gw-close,.gw-unit){background:linear-gradient(120deg,#233329,#393b26)}
#groove-home[data-theme=dark] :is(.gw-pill,.gw-hero-benefits>div,.gw-quiz-result){background:#29372b;border-color:var(--gh-line)}
#groove-home[data-theme=dark] .gw-blossom{color:#b2cba5}
#groove-home[data-theme=dark] .gw-form input:is([type=text],[type=email]){background:#152019;border-color:var(--gh-line);color:var(--gh-ink)}
#groove-home[data-theme=dark] .gw-audience label{border-color:var(--gh-line)}
#groove-home[data-theme=dark] :is(.gw-quiz-options label:has(input:checked),.gw-flow-number){background:#49472d;border-color:#b2cba5;color:#f5e9b0}
#groove-home[data-theme=dark] :is(.gw-quiz-actions button,.gw-flow button){background:#233329;color:var(--gh-ink)}
#groove-home[data-theme=dark] .gw-flow .gw-flow-dot,#groove-home[data-theme=dark] .gw-flow .gw-flow-play{background:transparent}
#groove-home[data-theme=dark] .gw-flow-navigation>button:hover{background:#49472d}
#groove-home[data-theme=dark] .gw-flow-dot span{background:#71866d}
#groove-home[data-theme=dark] .gw-flow-dot.is-current span{background:#eddc91}
#groove-home[data-theme=dark] :is(.gh-primary,.gw-quiz-actions button.gh-primary){background:var(--gh-green);color:#1c2b20}
#groove-home[data-theme=dark] .gh-soft{background:#eddfa1;color:#233329}
#groove-home[data-theme=dark] .gh-pro-panel{background:linear-gradient(135deg,#263b2d,#374b37);color:var(--gh-ink)}
#groove-home[data-theme=dark] .gh-pro-panel p{color:var(--gh-muted)}
#groove-home[data-theme=dark] .gw-error{background:#4c2728;color:#ffd3cb}
#groove-home[data-theme=dark] .gw-flow :focus-visible,#groove-home[data-theme=dark] .gw-quiz :focus-visible{outline-color:var(--gh-sage)}
@media(prefers-reduced-motion:reduce){#groove-home.gw-page[data-theme=dark]{background-image:url('/groove-flower-pattern.svg'),radial-gradient(900px 600px at 50% 0,#7e824322,transparent)}}

/* Private development feedback: large phone-friendly controls and plain-text reports. */
.groove-admin-feedback-link{position:fixed;right:16px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:50;min-height:44px;padding:12px 18px;border-radius:999px;background:#f5e9b0;color:#232c23;border:1px solid #5d7b5e;box-shadow:0 4px 20px #0002;font:500 14px Fredoka,system-ui,sans-serif;text-decoration:none}
.groove-admin-feedback-link:focus-visible{outline:3px solid #5d7b5e;outline-offset:3px}
#groove-home .gf-main{max-width:920px}
#groove-home .gf-main>p{color:var(--gh-muted);margin-top:12px;max-width:650px}
#groove-home .gf-links{display:flex;flex-wrap:wrap;gap:12px 24px;margin-bottom:24px}
#groove-home .gf-links a{text-decoration:underline;text-underline-offset:4px;min-height:44px;display:flex;align-items:center}
#groove-home .gf-form{display:grid;gap:18px;margin-top:22px}
#groove-home .gf-form label{display:grid;gap:8px;font-weight:500;min-width:0}
#groove-home .gf-form :is(input,textarea,select){width:100%;min-width:0;min-height:48px;padding:12px;border:1px solid var(--gh-line);border-radius:10px;background:#fff;color:var(--gh-ink);font:400 16px Fredoka,system-ui,sans-serif}
#groove-home .gf-form textarea{resize:vertical;line-height:1.5}
#groove-home .gf-form :is(input,textarea,select,button):focus-visible{outline:3px solid var(--gh-sage);outline-offset:3px}
#groove-home .gf-form small{font-weight:400;color:var(--gh-muted)}
#groove-home .gf-form .gh-button{margin:0;cursor:pointer;min-height:48px}
#groove-home .gf-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
#groove-home .gf-list-heading{margin:36px 0 20px}
#groove-home .gf-report{overflow-wrap:anywhere}
#groove-home .gf-report h3{font-size:21px}
#groove-home .gf-report .gf-details{white-space:pre-wrap;color:var(--gh-ink);margin:20px 0}
#groove-home .gf-report .gf-meta{font-size:12px;color:var(--gh-muted);margin-top:8px}
#groove-home .gf-report summary{cursor:pointer;min-height:44px;padding:12px 0}
#groove-home .gf-status{padding:5px 12px;border:1px solid var(--gh-line);border-radius:999px;font-size:12px;white-space:nowrap;background:var(--gh-butter)}
#groove-home .gf-status-resolved{background:transparent}
#groove-home[data-theme=dark] :is(.gw-panel,.gf-form input,.gf-form textarea,.gf-form select){background:#1c2820;color:var(--gh-ink)}
#groove-home[data-theme=dark] .gw-notice{background:#293f30;color:#deefd5}
@media(max-width:600px){#groove-home .gf-row{grid-template-columns:1fr}#groove-home .gf-main .gw-panel{padding:20px}#groove-home .gf-main .gw-panel-head{align-items:flex-start}}

#groove-home .gf-palette summary{cursor:pointer;font-size:20px;font-weight:500;padding:8px 0}
#groove-home .gf-palette p{margin:12px 0;color:var(--gh-muted)}
#groove-home .gf-palette h3{font-size:16px;margin:16px 0 8px}
#groove-home .gf-palette-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:12px 24px}
#groove-home .gf-palette-grid>div>div{display:flex;align-items:center;justify-content:space-between;gap:8px}
#groove-home .gf-gradient-row{display:flex;flex-wrap:wrap;gap:8px}
#groove-home .gf-swatch{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:6px 10px;margin:3px 0;border:1px solid var(--gh-line);border-radius:10px;background:transparent;color:var(--gh-ink);cursor:pointer}
#groove-home .gf-swatch>span{display:block;width:24px;height:24px;border-radius:50%;border:1px solid #889486}
#groove-home .gf-swatch code{font:500 13px ui-monospace,monospace}
#groove-home .gf-pictures{margin:24px 0;padding:20px 0;border-block:1px solid var(--gh-line)}
#groove-home .gf-pictures h4{margin:0;font-size:17px;font-weight:500}
#groove-home .gf-pictures h4 span{font-weight:400;color:var(--gh-muted)}
#groove-home .gf-text-button{min-height:44px;padding:8px;border:0;border-radius:8px;background:transparent;color:var(--gh-sage);font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
#groove-home .gf-picture-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin:16px 0}
#groove-home .gf-picture-grid figure{margin:0;min-width:0;border:1px solid var(--gh-line);border-radius:14px;overflow:hidden;background:var(--gh-butter)}
#groove-home .gf-picture-grid img{display:block;width:100%;height:170px;object-fit:contain;background:#e7ebe4}
#groove-home .gf-picture-grid figcaption{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;padding:8px 12px;font-size:12px}
#groove-home .gf-picture-picker{display:grid;gap:12px;margin-top:14px;padding:20px;border:1px dashed var(--gh-sage);border-radius:14px;font-weight:500}
#groove-home .gf-picture-picker input{width:100%;min-width:0;font:inherit;min-height:44px}
#groove-home .gf-picture-picker input::file-selector-button{padding:10px 12px;border:1px solid var(--gh-line);border-radius:8px;background:var(--gh-butter);color:var(--gh-ink);font:inherit;cursor:pointer;margin-right:10px}
#groove-home .gf-picture-picker>span{font-size:12px;line-height:1.6;font-weight:400;color:var(--gh-muted)}
#groove-home .gf-picture-actions{display:flex;flex-wrap:wrap;gap:12px}
#groove-home .gf-picture-actions .gh-button{margin-top:0}
#groove-home .gf-pictures button:disabled{opacity:.5;cursor:default}
#groove-home .gf-pictures :focus-visible,#groove-home .gf-palette :focus-visible{outline:3px solid var(--gh-sage);outline-offset:3px}
#groove-home[data-theme=dark] .gf-picture-grid img{background:#111b15}
