[hidden]{display:none!important}:root{--night:#141b26;--ink:#182230;--cream:#fbf7ef;--white:#fffdf9;--moss:#326a55;--moss-dark:#245540;--sky:#235a86;--sun:#8a4b0b;--line:#c7c9c5;--line-soft:#e0ded5;--muted:#4e5a62;--red:#8c3027;--green-pale:#e7f1e8;--sky-pale:#e9f0f5;--shadow:0 16px 48px rgba(20,27,38,.08);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--cream);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:14px/1.55 ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #17669c;outline-offset:3px}a{color:var(--sky);text-underline-offset:3px}button{color:inherit}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font-size:15px;letter-spacing:-.03em;text-decoration:none;white-space:nowrap}.brand strong{font-weight:760}.brand-mark{width:30px;height:30px;border:1px solid currentColor;display:grid;place-items:center;font:20px/1 Georgia,serif;transform:rotate(-3deg)}.topbar,.companion-top{min-height:66px;padding:10px max(22px,calc((100vw - 1160px)/2));border-bottom:1px solid var(--line-soft);display:flex;align-items:center;gap:18px;background:rgba(251,247,239,.96)}.nav{display:flex;align-items:center;gap:21px;margin-left:auto}.nav a{font-size:11px;color:var(--muted);text-decoration:none}.nav a:hover{color:var(--ink);text-decoration:underline}.top-status{display:flex;align-items:center;gap:10px}.badge,.phase-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:99px;padding:5px 9px;background:#f4e9d4;color:#653d0a;font-size:9px;font-weight:750;letter-spacing:.05em}.button{appearance:none;border:1px solid transparent;border-radius:5px;min-height:42px;padding:10px 15px;display:inline-flex;align-items:center;justify-content:center;gap:11px;text-decoration:none;font-size:12px;font-weight:700;cursor:pointer;transition:background .16s,border-color .16s,transform .16s}.button:hover:not(:disabled){transform:translateY(-1px)}.button.primary{background:var(--moss);color:white}.button.primary:hover:not(:disabled){background:var(--moss-dark)}.button.outline{border-color:#70818a;background:var(--white);color:var(--ink)}.button.outline:hover{background:var(--sky-pale)}.button.ghost{border-color:var(--line);background:transparent;color:var(--ink)}.button.ghost:hover{background:#f1eee7}.button.danger{background:var(--red);color:white}.button.small{min-height:32px;padding:6px 10px;font-size:10px}.button:disabled{opacity:.55;cursor:not-allowed}.text-button{border:0;background:transparent;padding:7px 4px;color:var(--sky);font-size:10px;font-weight:700;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.page-shell{width:min(1160px,calc(100% - 44px));margin:auto;padding:44px 0 40px}.intro-grid{display:grid;grid-template-columns:1fr 290px;align-items:end;gap:30px;margin:0 4px 28px}.eyebrow{margin:0 0 8px;color:#4d626b;font-size:9px;font-weight:780;letter-spacing:.16em}.intro-grid h1,.companion-main h1,.privacy-main h1{font:400 clamp(38px,5.1vw,59px)/1.04 Georgia,"Times New Roman",serif;letter-spacing:-.05em;margin:0;color:var(--ink)}.intro-grid h1 span,.companion-main h1 span,.privacy-main h1 span{color:var(--moss)}.lead{max-width:590px;color:#46535b;font-size:14px;line-height:1.75;margin:14px 0 0}.principle-card{display:flex;gap:12px;align-items:flex-start;padding:15px 16px;border-left:3px solid var(--moss);background:var(--green-pale);border-radius:4px}.principle-icon{font:24px/1 Georgia,serif;color:var(--moss)}.principle-card p{margin:0;font-size:11px;line-height:1.65;color:#273f34}.panel{background:var(--white);border:1px solid var(--line-soft);border-radius:8px;box-shadow:0 7px 25px rgba(20,27,38,.035)}.setup-panel,.room-panel,.recap-panel{padding:22px 24px;margin:0 0 16px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 16px}.section-head .eyebrow{margin-bottom:4px}.section-head h2{font:400 23px/1.2 Georgia,"Times New Roman",serif;letter-spacing:-.025em;margin:0}.connection-label{font-size:10px;color:var(--muted);border:1px solid var(--line-soft);border-radius:30px;padding:5px 9px}.setup-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mode-card{min-height:147px;border:1px solid var(--line-soft);border-radius:6px;padding:16px;display:grid;grid-template-columns:30px 1fr;gap:7px 12px;align-items:start}.demo-card{background:#f8faf5}.live-card{background:#f7f9fb}.mode-icon{font-size:22px;color:var(--moss);grid-row:1/3}.live-card .mode-icon{color:var(--sky)}.mode-card h3{font:400 19px/1.2 Georgia,serif;margin:0 0 5px}.mode-card p{font-size:10px;line-height:1.6;color:var(--muted);margin:0}.mode-card code,.parity-note code{font-size:10px;background:#e9e9e4;padding:2px 4px;border-radius:3px;color:var(--ink)}.mode-card>.button{grid-column:2;justify-self:start;margin-top:7px}.live-actions{grid-column:2;display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:7px}.inline-status,.status-line{color:#4e5a62;font-size:10px;min-height:17px;margin:13px 0 0}.room-panel{padding-bottom:0;overflow:hidden}.room-heading{margin-bottom:0}.room-head-status{display:flex;align-items:center;gap:11px}.phase-badge{background:var(--sky-pale);color:#214b68}.clock{min-width:70px;text-align:right;font-size:13px;font-weight:720;font-variant-numeric:tabular-nums;color:var(--ink)}.no-session{min-height:265px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px}.garden-sketch{display:flex;align-items:end;gap:13px;font-size:26px;color:var(--moss);opacity:.9}.garden-sketch span:nth-child(2){font-size:37px}.no-session h3{font:400 21px Georgia,serif;margin:12px 0 6px}.no-session p{max-width:500px;color:var(--muted);font-size:11px;line-height:1.65;margin:0}.active-session{padding-bottom:21px}.goal-row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:19px 0 13px}.goal-row .eyebrow{margin-bottom:6px}.goal-row h3{font:400 clamp(19px,2.8vw,28px)/1.2 Georgia,serif;margin:0}.goal-instruction{color:#4d5961;font-size:11px;margin:7px 0 0}.goal-score{text-align:right;flex:0 0 auto;min-width:120px}.goal-score strong{display:block;font:400 36px/1 Georgia,serif;color:var(--moss)}.goal-score span{font-size:10px;color:var(--muted)}progress{appearance:none;border:0}.meter-wrap progress,.shared-progress progress{width:100%;height:13px;border-radius:99px;background:#e6e7e2;overflow:hidden}.meter-wrap progress::-webkit-progress-bar,.shared-progress progress::-webkit-progress-bar{background:#e6e7e2;border-radius:99px}.meter-wrap progress::-webkit-progress-value,.shared-progress progress::-webkit-progress-value{background:var(--moss);border-radius:99px;transition:width .25s}.meter-wrap progress::-moz-progress-bar,.shared-progress progress::-moz-progress-bar{background:var(--moss);border-radius:99px}.meter-labels,.progress-header{display:flex;justify-content:space-between;gap:10px;margin-top:6px;color:var(--muted);font-size:9px}.meter-labels span:last-child{font-variant-numeric:tabular-nums}.contribution-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:17px 0}.contribution-card{min-height:81px;border:1px solid var(--line-soft);border-radius:5px;padding:11px 12px;background:#fffefa;display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px}.contribution-card h4{font:400 14px/1.25 Georgia,serif;margin:0}.contribution-card p{font-size:9px;color:var(--muted);line-height:1.4;margin:4px 0 0}.contribution-card strong{font:400 24px/1 Georgia,serif;color:var(--moss);font-variant-numeric:tabular-nums}.parity-row{display:flex;align-items:center;gap:21px;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);padding:11px 0}.parity-row>div{display:flex;align-items:center;gap:8px}.parity-icon{width:25px;height:25px;border:1px solid #bfc6c5;border-radius:50%;display:grid;place-items:center;color:var(--sky);font-size:13px}.parity-row p{display:flex;flex-direction:column;margin:0;font-size:10px;line-height:1.35}.parity-row p span{font-size:9px;color:var(--muted)}.connection-detail{margin-left:auto;color:#4b5961;font-size:9px;text-align:right}.result-panel{display:flex;align-items:center;gap:13px;margin:14px 0;padding:13px 15px;background:var(--green-pale);border-left:3px solid var(--moss);border-radius:3px}.result-mark{font:24px/1 Georgia,serif;color:var(--moss)}.result-panel .eyebrow{margin:0 0 4px}.result-panel p:last-child{margin:0;font:400 15px/1.45 Georgia,serif}.participation-block{padding:12px 14px;margin-top:13px;background:#f2f3ef;border:1px solid #e2e3dc;border-radius:4px}.participation-block .eyebrow{margin-bottom:4px}.participation-block>p:last-child{margin:0;font-size:10px;line-height:1.6;color:#34424a}.share-block{display:flex;justify-content:space-between;gap:13px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line-soft)}.share-block .eyebrow{margin-bottom:3px}.share-block p:not(.eyebrow){margin:0;color:var(--muted);font-size:9px}.share-code{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.share-code code{display:block;max-width:180px;overflow:hidden;text-overflow:ellipsis;background:#f2f1eb;border:1px solid var(--line-soft);border-radius:3px;padding:6px 8px;font-size:9px}.control-row{display:flex;justify-content:space-between;gap:14px;padding-top:13px}.companion-toggle{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.switch-label{display:flex;align-items:center;gap:8px;font-size:10px;font-weight:700;cursor:pointer}.switch-label input{width:18px;height:18px;accent-color:var(--moss);margin:0}.companion-toggle>span{font-size:9px;color:var(--muted);padding-left:26px}.session-controls{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.session-controls .button{min-height:34px;padding:7px 9px;font-size:10px}.demo-tools{display:flex;align-items:end;gap:9px;flex-wrap:wrap;margin-top:14px;padding:12px;background:#f4f1e8;border:1px dashed #b8b4a5;border-radius:4px}.demo-tools>div{display:flex;flex-direction:column;min-width:170px;margin-right:auto}.demo-tools .eyebrow{margin-bottom:3px}.demo-tools strong{font-size:10px}.demo-tools span{color:var(--muted);font-size:9px}.demo-tools label{font-size:9px;color:var(--muted);display:grid;gap:4px}.demo-tools select{min-height:32px;border:1px solid #b7bebd;background:white;border-radius:3px;padding:5px 7px;font-size:10px;color:var(--ink)}.demo-tools #demo-feedback{min-width:100%;font-weight:650}.instructions-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 17px}.instructions-strip>div{display:flex;align-items:flex-start;gap:11px;padding:13px;background:rgba(255,253,249,.65);border:1px solid var(--line-soft);border-radius:5px}.instructions-strip>div>span{font:400 18px/1 Georgia,serif;color:var(--moss)}.instructions-strip p{font-size:10px;line-height:1.5;color:#47545c;margin:0}.instructions-strip strong{color:var(--ink)}.recap-panel{padding-bottom:18px}.recap-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.recap-card{border:1px solid var(--line-soft);border-radius:5px;padding:13px}.recap-card h3{font:400 15px Georgia,serif;margin:0 0 6px}.recap-card p{font-size:10px;line-height:1.6;color:#48545c;margin:0}.recap-card .recap-stats{font-weight:700;color:var(--moss);margin-top:7px}.empty-copy{font-size:10px;color:var(--muted);margin:3px}.footer{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:9px;padding:17px 3px}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:22px;background:radial-gradient(ellipse at 50% 18%,#f2eee3 0,transparent 54%),var(--cream)}.login-card{width:min(450px,100%);padding:34px 37px 29px;background:var(--white);border:1px solid var(--line-soft);border-radius:8px;box-shadow:var(--shadow)}.login-card .brand{margin-bottom:29px}.login-card h1{font:400 39px/1.06 Georgia,serif;letter-spacing:-.045em;margin:0 0 11px}.login-card .copy{font-size:11px;line-height:1.7;color:var(--muted)}.stack-form{margin-top:20px}.stack-form label,.join-form label{display:block;font-size:10px;font-weight:730;margin-bottom:6px}.stack-form input,.join-input-row input{width:100%;height:43px;border:1px solid #9da8a8;border-radius:4px;padding:0 11px;background:white;color:var(--ink)}.stack-form .button{width:100%;margin-top:12px}.error{font-size:10px;color:var(--red)}.quiet-note{border-top:1px solid var(--line-soft);padding-top:14px;margin:20px 0 0;color:#365646;font-size:10px}.toast-region{position:fixed;right:18px;bottom:18px;z-index:15;display:grid;gap:8px;pointer-events:none}.toast{max-width:min(380px,calc(100vw - 36px));padding:11px 14px;background:var(--night);color:white;border-radius:5px;font-size:11px;box-shadow:var(--shadow)}.confirm-dialog{width:min(420px,calc(100vw - 30px));border:1px solid var(--line);border-radius:7px;padding:24px;color:var(--ink);box-shadow:var(--shadow)}.confirm-dialog::backdrop{background:rgba(20,27,38,.4)}.confirm-dialog h2{font:400 23px Georgia,serif;margin:0}.confirm-dialog form>p:not(.eyebrow){font-size:11px;color:var(--muted);line-height:1.6}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}.dialog-actions .button{min-height:38px}.companion-page{min-height:100vh}.companion-top{justify-content:space-between;padding-inline:max(20px,calc((100vw - 820px)/2))}.quiet-label{font-size:9px;font-weight:750;letter-spacing:.12em;color:#4d626b}.companion-main{width:min(710px,calc(100% - 34px));margin:0 auto;padding:56px 0 36px}.companion-main>.eyebrow{margin-bottom:9px}.companion-main h1{font-size:clamp(38px,7vw,57px)}.companion-main>.lead{max-width:630px;font-size:12px;margin:14px 0 24px}.join-panel,.contribute-panel{padding:20px 22px}.join-panel h2,.contribute-panel h2{font:400 19px Georgia,serif;margin:0 0 13px}.join-input-row{display:flex;gap:9px}.join-input-row input{min-width:0;flex:1;text-transform:none}.join-input-row .button{flex-shrink:0}.field-help{margin:8px 0 0;color:var(--muted);font-size:9px;line-height:1.6}.status-line{min-height:18px;margin:8px 0 0;color:var(--red);font-size:10px}.session-status{display:flex;justify-content:space-between;align-items:center;gap:14px}.session-status h2{margin:0}.session-status .muted{font-size:10px;margin:5px 0 0}.phase-pill{white-space:nowrap;padding:5px 9px;border-radius:30px;background:var(--green-pale);color:#28523e;font-size:9px;font-weight:700}.phase-pill.paused{background:#f4e9d4;color:#653d0a}.phase-pill.closed{background:#ece9e3;color:#4e5a62}.action-choices{border:0;margin:15px 0 0;padding:0;display:grid;gap:9px}.action-choice{position:relative;display:grid;grid-template-columns:21px minmax(0,1fr) 26px;gap:11px;align-items:center;min-height:70px;padding:13px;border:1px solid #bfc5c4;border-radius:5px;background:#fffefa;cursor:pointer;transition:background .15s,border-color .15s}.action-choice:hover,.action-choice:focus-within{border-color:var(--sky);background:#f4f8fa}.action-choice.selected{border:2px solid var(--moss);padding:12px;background:#f2f7f2}.action-choice input{width:18px;height:18px;margin:0;accent-color:var(--moss)}.action-choice strong{display:block;font:400 16px/1.3 Georgia,serif}.action-choice small{display:block;color:#4c5961;font-size:9px;line-height:1.5;margin-top:3px}.action-choice .action-symbol{width:25px;height:25px;border:1px solid #b5c3b8;border-radius:50%;display:grid;place-items:center;color:var(--moss);font-size:14px}.contribute-button{width:100%;margin-top:13px;min-height:46px}.persistent-feedback{min-height:37px;margin:9px 0 0;padding:9px 10px;background:#f2f3ef;border-left:2px solid #8c9b8e;border-radius:2px;font-size:10px;line-height:1.55;color:#35434a}.persistent-feedback.success{background:var(--green-pale);border-color:var(--moss);color:#234836}.persistent-feedback.error{background:#f8e9e7;border-color:var(--red);color:#74271f}.shared-progress{border-top:1px solid var(--line-soft);margin-top:17px;padding-top:13px}.progress-header{font-size:10px;margin:0 0 7px}.progress-header strong{font-variant-numeric:tabular-nums;color:var(--ink)}.shared-progress progress{height:9px}.parity-note{display:flex;gap:12px;margin-top:14px;padding:12px 14px;border-left:3px solid var(--sky);background:var(--sky-pale);border-radius:3px;color:#233e52}.parity-note>span{font:20px Georgia,serif}.parity-note p{font-size:10px;line-height:1.6;margin:0}.companion-footer{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:9px;margin:19px 0}.companion-footer a{font-weight:650}.privacy-main{width:min(760px,calc(100% - 36px));margin:0 auto;padding:48px 0}.privacy-main h1{font-size:42px;margin-bottom:19px}.privacy-panel{padding:22px 26px}.privacy-panel h2{font:400 18px Georgia,serif;margin:0 0 8px}.privacy-panel h2:not(:first-child){margin-top:21px}.privacy-panel p,.privacy-panel li{font-size:11px;line-height:1.75;color:#43515a}.privacy-panel ul{padding-left:21px}.privacy-panel li{margin:5px 0}
@media(max-width:820px){.topbar{padding-inline:18px}.page-shell{width:min(100% - 32px,700px);padding-top:32px}.intro-grid{grid-template-columns:1fr 230px;gap:16px}.setup-panel,.room-panel,.recap-panel{padding:18px}.contribution-grid{gap:7px}.contribution-card{padding:9px}.session-controls .button{padding:6px 7px}}
@media(max-width:620px){.topbar{min-height:57px;padding:8px 12px;gap:8px}.brand{font-size:13px}.brand-mark{width:25px;height:25px;font-size:17px}.nav{display:none}.top-status{margin-left:auto}.badge{font-size:8px;padding:4px 7px}.page-shell{width:calc(100% - 24px);padding:27px 0 28px}.intro-grid{grid-template-columns:1fr;gap:13px;margin:0 2px 18px}.intro-grid h1{font-size:39px}.lead{font-size:12px;margin-top:9px}.principle-card{max-width:100%;padding:10px 12px}.setup-panel,.room-panel,.recap-panel{padding:15px;margin-bottom:11px}.section-head{align-items:flex-start}.section-head h2{font-size:21px}.setup-grid{grid-template-columns:1fr}.mode-card{min-height:0;padding:13px}.mode-card p{font-size:10px}.mode-card>.button,.live-actions{margin-top:6px}.room-heading{align-items:center}.room-head-status{gap:6px;flex-direction:column;align-items:flex-end}.clock{font-size:12px}.no-session{min-height:220px;padding:25px 13px}.goal-row{align-items:flex-start;padding-top:16px}.goal-score{min-width:76px}.goal-score strong{font-size:31px}.goal-score span{font-size:8px}.goal-row h3{font-size:20px}.goal-instruction{font-size:10px}.meter-labels{font-size:8px}.contribution-grid{grid-template-columns:1fr;gap:6px;margin:13px 0}.contribution-card{min-height:57px;padding:9px 11px}.contribution-card h4{font-size:13px}.contribution-card strong{font-size:22px}.parity-row{gap:11px;flex-wrap:wrap}.parity-row p{font-size:9px}.connection-detail{font-size:8px}.participation-block{padding:10px}.participation-block>p:last-child{font-size:9px}.share-block{align-items:flex-start;flex-direction:column}.share-code{width:100%}.share-code code{max-width:calc(100vw - 180px)}.control-row{flex-direction:column;align-items:stretch}.session-controls{justify-content:flex-start}.instructions-strip{grid-template-columns:1fr;gap:6px}.instructions-strip>div{padding:10px}.recap-list{grid-template-columns:1fr}.footer{flex-direction:column;font-size:8px}.demo-tools{align-items:stretch}.demo-tools>div{min-width:100%;margin:0}.demo-tools label{flex:1}.login-card{padding:29px 23px}.companion-top{min-height:57px;padding:8px 13px}.quiet-label{font-size:8px}.companion-main{width:calc(100% - 26px);padding:34px 0 24px}.companion-main h1{font-size:40px}.companion-main>.lead{font-size:11px;margin:11px 0 18px}.join-panel,.contribute-panel{padding:15px}.join-input-row{flex-direction:column}.join-input-row .button{width:100%}.session-status{align-items:flex-start}.session-status h2{font-size:17px}.action-choice{min-height:66px;padding:11px}.action-choice.selected{padding:10px}.action-choice strong{font-size:15px}.privacy-main{padding:32px 0}.privacy-main h1{font-size:35px}.privacy-panel{padding:18px}}
@media(max-width:360px){.page-shell{width:calc(100% - 18px)}.intro-grid h1{font-size:35px}.top-status .badge{max-width:112px;white-space:normal;text-align:center;line-height:1.25}.goal-row h3{font-size:18px}.session-controls .button{font-size:9px}.share-code code{max-width:calc(100vw - 155px)}.companion-main h1{font-size:36px}.quiet-label{letter-spacing:.07em}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
