:root{color-scheme:dark;--ink:#111013;--panel:#1a181c;--panel2:#211e23;--line:#39343b;--cream:#f3ecdf;--muted:#a39ba3;--lime:#d9fb72;--orange:#ff895c;--violet:#b9a0ff;--mono:Consolas,'Courier New',monospace;--sans:Arial,Helvetica,sans-serif;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--cream);font-family:var(--sans);font-size:15px;line-height:1.55}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--lime)}[hidden]{display:none!important}.topbar{height:78px;max-width:1440px;margin:auto;padding:0 6.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #302c31}.brand{display:inline-flex;align-items:center;gap:9px;font-weight:700;letter-spacing:-.055em;font-size:19px}.brand-mark{color:var(--lime);font-size:25px;line-height:1}.brand-soft{font-weight:400;color:#aaa2aa}.top-link,.footer a:last-child{color:#c5bcc4;font-size:12px}.top-link span,.footer a:last-child span{color:var(--lime);margin-left:4px}.button{border:0;border-radius:4px;background:var(--cream);color:#171519;min-height:48px;padding:0 21px;display:inline-flex;align-items:center;justify-content:center;gap:15px;font-weight:700;font-size:13px;cursor:pointer;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px);background:#fff}.button-primary{background:var(--lime);color:#171a0e}.button-primary:hover{background:#e7ff9d}.button-small{min-height:38px;padding:0 14px;font-size:11px;gap:10px}.button-quiet{background:transparent;border:1px solid #544c55;color:var(--cream)}.button-quiet:hover{background:#252128}.hero{min-height:640px;max-width:1440px;margin:auto;padding:84px 8% 30px;display:grid;grid-template-columns:1fr 1fr;align-items:center;position:relative;overflow:hidden}.hero-copy{position:relative;z-index:2;padding-bottom:55px}.eyebrow{font:10px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:#b1a7af;margin:0 0 20px}.live-dot{display:inline-block;width:7px;height:7px;background:var(--lime);border-radius:50%;margin-right:9px;box-shadow:0 0 14px #d9fb7288}.hero h1{font-size:clamp(68px,9vw,128px);letter-spacing:-.095em;line-height:.84;margin:0 0 32px;font-weight:600}.serif-accent{font-family:var(--serif);font-weight:500;font-style:italic;letter-spacing:-.07em;color:var(--lime)}.hero-lede{font-size:17px;max-width:440px;line-height:1.7;color:#c0b7bf;margin:0}.hero-actions{display:flex;align-items:center;gap:27px;margin-top:32px}.text-link{font-size:12px;color:#c3bac2}.text-link span{color:var(--lime);margin-left:4px}.micro-copy{font:10px var(--mono);color:#827a83;margin:20px 0}.hero-art{height:440px;max-width:520px;width:100%;position:relative;justify-self:center;margin-top:-18px}.orbit{position:absolute;border:1px solid #49414a;border-radius:50%;transform:rotate(-24deg)}.orbit-one{width:405px;height:280px;top:74px;left:40px}.orbit-two{width:330px;height:420px;top:16px;left:74px;transform:rotate(44deg);border-color:#39323b}.staff-line{position:absolute;height:1px;background:#675b68;width:100%;left:0;transform:rotate(-17deg)}.staff-a{top:160px}.staff-b{top:211px;opacity:.65}.staff-c{top:262px;opacity:.4}.note{position:absolute;font-family:Georgia,serif;color:var(--lime);font-size:54px;text-shadow:0 0 28px #d9fb7255}.note-a{top:100px;left:95px;transform:rotate(-13deg)}.note-b{top:224px;left:175px;color:var(--orange)}.note-c{top:87px;right:72px;color:var(--violet);font-size:66px}.note-d{right:44px;bottom:66px;font-size:40px;color:var(--cream)}.pulse-core{position:absolute;left:50%;top:50%;width:105px;height:105px;border:1px solid #766a78;border-radius:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;gap:5px;background:#171419b0;box-shadow:0 0 70px #ba9dff12}.pulse-core i{display:block;width:4px;background:var(--lime);border-radius:8px;height:18px;animation:wave 1.05s ease-in-out infinite alternate}.pulse-core i:nth-child(2){height:38px;animation-delay:.2s;background:var(--orange)}.pulse-core i:nth-child(3){height:25px;animation-delay:.4s;background:var(--violet)}.art-caption{position:absolute;bottom:36px;left:50%;transform:translateX(-50%);white-space:nowrap;font:9px var(--mono);letter-spacing:.14em;color:#aaa0aa}.hero-bottom{position:absolute;bottom:21px;left:8%;right:8%;display:flex;justify-content:space-between;color:#736d74;font:9px var(--mono);letter-spacing:.1em}.section-wrap{max-width:1250px;margin:auto;padding-left:7%;padding-right:7%}.how{padding-top:112px;padding-bottom:118px;border-top:1px solid #302c31}.section-heading{text-align:center;max-width:650px;margin:0 auto 62px}.section-heading .eyebrow{color:var(--orange);margin-bottom:13px}.section-heading h2,.promise h2{font-size:clamp(38px,5vw,62px);line-height:1.03;letter-spacing:-.065em;margin:0 0 18px}.section-heading .serif-accent,.promise .serif-accent{color:var(--lime)}.section-heading>p:last-child{margin:0 auto;color:#a9a0a8;max-width:490px;font-size:14px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.step{padding:24px 26px 29px;border:1px solid #39343b;min-height:214px;position:relative;background:linear-gradient(145deg,#1b191d,#151317)}.step-index{position:absolute;right:23px;top:22px;color:#78717a;font:10px var(--mono)}.step-icon{font:34px Georgia,serif;color:var(--lime);height:57px}.step-chat{font:22px var(--mono);letter-spacing:-.12em;color:var(--orange);padding-top:7px}.step-wave{color:var(--violet)}.step h3{font-size:17px;margin:0 0 6px;letter-spacing:-.03em}.step p{font-size:12px;color:#a79da6;line-height:1.7;margin:0;max-width:260px}.step code,.command-list code,.dashboard-foot code,.overlay-score code{font:11px var(--mono);color:var(--lime);background:#29262a;padding:4px 6px;border-radius:2px}.command-band{padding:72px max(7%,calc((100vw - 1100px)/2));background:#d8f975;color:#171a11;display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.command-band .eyebrow{color:#525934;margin:0 0 12px}.command-band h2{font-size:clamp(38px,5vw,62px);letter-spacing:-.07em;line-height:1;margin:0}.command-band .serif-accent{color:#475322}.command-list>div{display:flex;align-items:center;gap:15px;padding:12px 0;border-bottom:1px solid #a6c255}.command-list code{background:#21251b;color:var(--lime);min-width:104px;text-align:center}.command-list span{font-size:12px;color:#303821}.command-list p{font-size:11px;line-height:1.6;color:#495238;margin:17px 0 0}.promise{padding-top:100px;padding-bottom:100px;display:grid;grid-template-columns:165px 1fr 110px;gap:28px;align-items:center}.promise-tag{font:9px var(--mono);line-height:1.7;color:var(--orange);letter-spacing:.11em;align-self:start;padding-top:8px}.promise h2{font-size:clamp(35px,4vw,53px);margin-bottom:14px}.promise p{font-size:13px;line-height:1.75;color:#aaa0a9;max-width:570px;margin:0}.promise-stamp{width:100px;height:100px;border:1px solid #69616a;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(12deg);font:8px var(--mono);letter-spacing:.1em;text-align:center;color:#aaa0aa}.promise-stamp b{font:22px Georgia;color:var(--lime)}.closing-cta{border-top:1px solid #302c31;border-bottom:1px solid #302c31;text-align:center;padding:75px 20px 80px;background:radial-gradient(ellipse at 50% 100%,#322d2729,transparent 54%)}.closing-cta .eyebrow{color:var(--orange);margin-bottom:8px}.closing-cta h2{font-size:clamp(48px,6vw,78px);letter-spacing:-.08em;margin:0 0 22px}.footer{min-height:83px;max-width:1440px;margin:auto;padding:15px 6.5%;display:flex;align-items:center;justify-content:space-between;color:#827982;font-size:10px}.footer .brand{font-size:16px;color:var(--cream)}
.dashboard{padding-top:85px;padding-bottom:95px}.dashboard-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:33px}.dashboard-heading .eyebrow{color:var(--orange);margin-bottom:9px}.dashboard-heading h2{font-size:52px;line-height:1;margin:0;letter-spacing:-.065em}.channel-chip{border:1px solid #48414a;padding:9px 13px;font:10px var(--mono);color:#c5bbc4;border-radius:2px}.control-layout{display:grid;grid-template-columns:1.35fr .8fr;gap:15px}.settings-card,.live-card,.activity-card,.overlay-card{border:1px solid #39343b;background:#19171b;padding:24px}.card-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:22px}.card-head .eyebrow{margin:0 0 5px;color:#968c96;font-size:9px}.card-head h3{font-size:18px;letter-spacing:-.04em;margin:0}.card-symbol{font:25px Georgia;color:var(--lime)}.control-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px}.control-grid label,.overlay-result label{font-size:11px;color:#c7bdc5;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:7px}.control-grid input:not([type=range]),.control-grid select,.overlay-result input{width:100%;height:39px;border:1px solid #49434b;background:#211e23;color:var(--cream);padding:0 10px;border-radius:2px;font-size:12px}.field-unit,.range-label output{font:9px var(--mono);color:#8d858d}.range-label input{width:100%;accent-color:var(--lime)}.card-actions{display:flex;align-items:center;gap:14px;margin-top:22px}.action-feedback{font-size:10px;color:var(--lime);min-height:15px;margin:8px 0 0}.session-state{font:9px var(--mono);color:var(--lime);border:1px solid #657043;padding:4px 7px}.session-state[data-state=error],.session-state[data-state=permission_denied],.session-state[data-state=revoked]{color:var(--orange);border-color:#8b513d}.connection-detail{font-size:11px;color:#aaa1a9;min-height:38px}.session-meta{display:flex;justify-content:space-between;border-top:1px solid #373239;padding:9px 0;color:#9b929b;font:10px var(--mono)}.session-meta strong{color:var(--cream);font-weight:400}.transport-controls{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.lower-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:15px;margin-top:15px}.activity-card,.overlay-card{min-height:230px}.activity-hint{color:#817880;font:8px var(--mono);letter-spacing:.07em}.note-lane{display:flex;gap:8px;flex-wrap:wrap;min-height:95px;align-items:center}.empty-note{text-align:center;width:100%;padding:5px;color:#7f7780}.empty-note>span{color:#a994e9;font:25px Georgia}.empty-note p{margin:0;font-size:11px}.empty-note small{font-size:9px}.note-chip{height:54px;min-width:54px;border:1px solid #49424d;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--lime);font:12px var(--mono);animation:pop .3s ease-out}.setup-list{list-style:none;padding:0;margin:0 0 18px;display:grid;gap:8px;color:#aaa0a9;font-size:10px}.setup-list li{display:flex;gap:9px;align-items:center}.setup-list li span{width:18px;height:18px;border:1px solid #62576b;border-radius:50%;display:grid;place-items:center;font:9px var(--mono);color:var(--violet)}.overlay-result{margin-top:15px}.copy-row{display:flex;gap:7px;margin-top:7px}.copy-row input{font:9px var(--mono)!important;min-width:0}.overlay-result p{font-size:9px;color:#d29b79;margin:6px 0}.dashboard-foot{border-top:1px solid #302c31;margin-top:22px;padding-top:15px;display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#a198a1}.dashboard-foot p{margin:0}.text-button{background:none;border:0;color:#d48a69;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font-size:10px}.status-text{font-size:11px;color:#ff9b73;min-height:16px}.overlay-body{background:#111013ee;min-height:100vh;display:grid;place-items:center;padding:22px}.overlay-shell{position:relative;width:min(100%,650px);min-height:475px;border:1px solid #49414a;background:radial-gradient(ellipse at 50% 48%,#393044aa,#17151a 65%);padding:25px 32px 18px;overflow:hidden}.overlay-header{display:flex;justify-content:space-between;align-items:center}.overlay-pill{font:9px var(--mono);border:1px solid #554d57;color:#c5bac5;padding:6px 9px;display:flex;align-items:center;gap:7px}.overlay-pill i{width:6px;height:6px;border-radius:50%;background:#79717b}.overlay-pill[data-state=connected] i{background:var(--lime);box-shadow:0 0 12px var(--lime)}.overlay-pill[data-state=disconnected] i,.overlay-pill[data-state=error] i,.overlay-pill[data-state=permission_denied] i{background:var(--orange)}.overlay-score{text-align:center;position:relative;z-index:1;padding:25px 0 4px}.overlay-score .eyebrow{color:var(--orange);margin:0 0 10px;font-size:9px}.beat-ring{width:186px;height:186px;position:relative;margin:auto;display:grid;place-items:center}.ring{border-radius:50%;position:absolute;inset:0;border:1px solid #76677977}.ring-inner{inset:17px;border-color:#d7fb7540}.ring-core{height:103px;width:103px;border-radius:50%;border:1px solid #ada0b7;background:#171419ed;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;box-shadow:0 0 44px #bd9fff1c}.ring-core span{font-size:31px;letter-spacing:-.06em;color:var(--lime)}.ring-core small{font:8px var(--mono);color:#a79ca8}.beat-dot{position:absolute;left:50%;top:-4px;width:9px;height:9px;background:var(--orange);border-radius:50%;transform-origin:4px 97px;animation:orbit 1.25s linear infinite}.overlay-score h1{font-size:22px;letter-spacing:-.05em;margin:9px 0 2px}.overlay-score>p:not(.eyebrow){font-size:10px;color:#a9a0a8;margin:0}.visual-notes{height:35px;display:flex;justify-content:center;align-items:center;gap:8px;margin-top:10px}.viz-note{font:12px var(--mono);color:var(--lime);animation:pop .35s ease-out}.viz-note:nth-child(3n){color:var(--orange)}.viz-note:nth-child(3n + 2){color:var(--violet)}.overlay-meta{display:flex;justify-content:space-between;border-top:1px solid #534954;padding-top:10px;margin-top:5px;color:#a89eaa;font:9px var(--mono)}.overlay-gate{text-align:center;margin:10px auto 0;min-height:52px;position:relative;z-index:2}.overlay-gate p{font-size:10px;color:#c3b8c5;margin:0 0 7px}.overlay-gate .button{min-height:34px;padding:0 14px;font-size:10px}.gate-help{font-size:9px!important;color:#928993!important}.overlay-foot{text-align:center;color:#8e8490;font:8px var(--mono);margin:8px 0 0}.overlay-foot span{color:var(--lime)}
@keyframes wave{to{transform:scaleY(.42)}}@keyframes orbit{to{transform:rotate(360deg)}}@keyframes pop{from{transform:scale(.65);opacity:0}to{transform:scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(max-width:800px){.hero{padding:67px 7% 40px;grid-template-columns:1fr;min-height:auto}.hero-copy{padding:0}.hero h1{font-size:clamp(70px,17vw,110px)}.hero-art{height:300px;width:min(100%,450px);margin:12px auto 23px;transform:scale(.88);transform-origin:center}.hero-bottom{position:static;margin-top:12px;font-size:7px}.how{padding-top:80px;padding-bottom:80px}.command-band{padding:55px 7%;grid-template-columns:1fr;gap:25px}.promise{padding-top:75px;padding-bottom:75px;grid-template-columns:1fr 75px;gap:15px}.promise-tag{grid-column:1/-1}.promise-stamp{width:68px;height:68px;font-size:7px}.control-layout,.lower-grid{grid-template-columns:1fr}.dashboard{padding-top:65px}.dashboard-heading h2{font-size:42px}.settings-card,.live-card,.activity-card,.overlay-card{padding:19px}.footer{padding:20px 6%;gap:14px;flex-wrap:wrap}.footer>span{order:3;width:100%}}@media(max-width:560px){.topbar{height:67px;padding:0 5%}.top-link{display:none}.topbar .button{font-size:10px}.hero{padding-top:58px}.hero h1{font-size:70px}.hero-lede{font-size:15px}.hero-actions{gap:15px;align-items:flex-start;flex-direction:column}.hero-art{height:250px;transform:scale(.76);width:130%;margin:0 -15%}.hero-bottom{font-size:6px;gap:9px}.steps{grid-template-columns:1fr}.step{min-height:175px}.section-heading{margin-bottom:38px}.section-heading h2{font-size:42px}.command-band h2{font-size:45px}.dashboard-heading{align-items:flex-start;gap:15px;flex-direction:column}.control-grid{gap:15px 11px}.dashboard-foot{align-items:flex-start;flex-direction:column;gap:13px}.overlay-shell{padding:20px 18px 14px;min-height:445px}.beat-ring{width:160px;height:160px}.ring-core{width:90px;height:90px}.beat-dot{transform-origin:4px 83px}.overlay-score{padding-top:22px}}
/* Pulse Choir accessibility and companion sharing */
.accessibility{padding-top:72px;padding-bottom:75px;border-top:1px solid #39343b}.accessibility h2{font-size:clamp(38px,5vw,62px);line-height:1.03;letter-spacing:-.065em;margin:.2rem 0 1.4rem}.accessibility .serif-accent{color:var(--lime)}.accessibility-points{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:22px}.accessibility-points p{border:1px solid #4b444e;padding:16px;color:#ddd4dd;font-size:12px;line-height:1.7;margin:0}.accessibility-points strong{color:#fff}.companion-share{border:1px solid #514956;background:#19171b;padding:20px 24px;margin-top:16px}.companion-share h3{margin:0 0 6px;font-size:18px}.companion-share p{color:#d4cbd4;font-size:12px;max-width:680px}.companion-share .copy-row{max-width:720px}.companion-share input{flex:1;min-width:0;height:42px;background:#100e12;color:#fff;border:1px solid #aaa0aa;padding:0 10px;font-size:12px}.companion-share .button{min-height:42px}@media(max-width:800px){.accessibility-points{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.note-chip,.viz-note{animation:none!important}}
