:root{--paper:#f5f0e5;--ink:#153586;--deep:#132e75;--muted:#52617a;--line:#15358665;--body:"Trebuchet MS",Arial,sans-serif;--display:Georgia,"Times New Roman",serif;--ease:cubic-bezier(.23,1,.32,1)}
*{box-sizing:border-box}html{height:100%;overflow:hidden;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%}body{margin:0;height:100%;height:100dvh;overflow:hidden;display:flex;flex-direction:column;position:relative;isolation:isolate;background:var(--paper);color:var(--ink);font:14px/1.5 var(--body);-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button,a,input,textarea,select{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button,a{user-select:none;-webkit-user-select:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--ink);outline-offset:4px}[hidden]{display:none!important}.prototype-banner{flex-shrink:0;text-align:center;padding:calc(4px + env(safe-area-inset-top,0px)) 10px 4px;background:#eae5d9;color:var(--muted);font-size:10px;line-height:1.5}.paper-garden{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.paper-garden span{position:absolute;background-repeat:no-repeat;background-position:center;background-size:contain}.garden-top{background-image:url(./assets/garden-hero.svg);left:calc(50% - 420px);top:60px;width:350px;height:520px;transform:rotate(-13deg);opacity:.075}.garden-bottom{background-image:url(./assets/garden-edge.svg);right:calc(50% - 420px);bottom:-100px;width:310px;height:460px;transform:rotate(23deg) scaleX(-1);opacity:.075}.survey-page{width:min(460px,calc(100% - 40px));margin:0 auto;flex:1;min-height:0;display:flex;flex-direction:column;padding-bottom:env(safe-area-inset-bottom,0px)}.header{height:80px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line)}.brand{display:block;flex-shrink:0}.brand img{display:block;width:87px;height:60px;object-fit:contain}.cafe-picker{text-align:right;min-width:0;max-width:220px}.cafe-picker>span{display:block;font-size:10px;color:var(--muted);padding-right:17px}.cafe-picker select{font-size:16px;color:var(--ink);max-width:100%;border:0;background:transparent;min-height:36px;text-align:right;padding:2px 0;cursor:pointer}.step-info{display:flex;justify-content:space-between;gap:16px;flex-shrink:0;padding:18px 0 10px;color:var(--muted);font-size:11px;line-height:1.4}.step-info span:last-child{font-variant-numeric:tabular-nums;font-size:10px}.progress{display:flex;gap:5px;flex-shrink:0;height:2px}.progress span{height:2px;flex:1;background:#15358620;transition:background-color 150ms ease}.progress span.active{background:var(--ink)}.survey-form{display:flex;flex-direction:column;flex:1;min-height:0;margin:0;padding:27px 0 14px}.stage{display:flex;flex-direction:column;flex:1;min-height:0;animation:arrive 180ms var(--ease)}.stage h1{font:400 35px/1.13 var(--display);letter-spacing:-.035em;margin:0 0 13px;outline:none;flex-shrink:0}.stage-note{font-size:12px;line-height:1.6;color:var(--muted);margin:0;flex-shrink:0}.stage-body{display:flex;flex-direction:column;justify-content:center;flex:1;min-height:0;padding:22px 0}.ratings{display:flex;gap:9px}.rating-button{flex:1;min-width:0;height:62px;display:grid;place-items:center;border:1px solid #15358680;background:#fffaf0cc;border-radius:0;font:29px/1 var(--display);padding:0;transition:transform 120ms ease-out,background-color 130ms ease-out,color 130ms ease-out}.rating-button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.rating-captions{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin-top:9px}.rating-feedback{font-size:11px;color:var(--ink);margin:0 0 12px;flex-shrink:0}.field-label{display:flex;justify-content:space-between;gap:12px;align-items:baseline;font-size:12px;margin:0 0 9px}.field-label span{font-size:10px;color:var(--muted)}textarea,input[type=text]{width:100%;display:block;border:1px solid #15358665;border-radius:0;background:#fffaf0e0;color:var(--deep);font:16px/1.5 var(--body);padding:12px;min-height:0}textarea{resize:none;height:155px;max-height:100%;overflow-y:auto;flex-shrink:1}input[type=text]{height:49px;flex-shrink:0}textarea::placeholder,input::placeholder{font-size:13px;color:#6e7b93;letter-spacing:0}textarea:focus,input:focus{border-color:var(--ink);background:#fffdf7}.field-help{font-size:11px;line-height:1.65;color:var(--muted);margin:10px 0 0;flex-shrink:0}.manager-label{display:flex;gap:10px;align-items:start;margin-top:17px;font-size:12px;line-height:1.5;flex-shrink:0;cursor:pointer}.manager-label input{accent-color:var(--ink);width:18px;height:18px;margin:1px 0 0;flex-shrink:0}.manager-label small{font-size:10px;color:var(--muted);display:block;margin-top:2px}.availability{display:grid;gap:10px}.availability button{min-height:57px;display:flex;align-items:center;gap:13px;text-align:left;font-size:14px;line-height:1.5;border:1px solid #15358665;background:#fffaf0d9;padding:13px;border-radius:0;transition:background 130ms ease-out,transform 130ms ease-out}.choice-dot{width:16px;height:16px;border:1px solid #15358680;border-radius:50%;flex-shrink:0;position:relative}.availability button[aria-pressed=true]{border-color:var(--ink);background:#1535860c}.availability button[aria-pressed=true] .choice-dot:after{content:'';position:absolute;inset:3px;border-radius:50%;background:var(--ink)}.roles{display:grid;grid-template-columns:1fr 1fr;gap:8px}.role-choice{position:relative;cursor:pointer;min-width:0}.role-choice input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.role-choice>span{display:flex;align-items:center;gap:8px;min-height:64px;height:100%;padding:11px 10px;border:1px solid #15358665;background:#fffaf0d9;font-size:12px;line-height:1.4;transition:background 130ms ease-out,border-color 130ms ease-out}.role-choice .check{width:14px;height:14px;border:1px solid #15358680;flex-shrink:0;display:grid;place-items:center;color:transparent;font-size:10px;line-height:1}.role-choice input:checked+span{border-color:var(--ink);background:#1535860c}.role-choice input:checked+span .check{background:var(--ink);color:var(--paper);border-color:var(--ink)}.role-choice input:focus-visible+span{outline:2px solid var(--ink);outline-offset:3px}.role-count{font-size:10px;color:var(--muted);text-align:right;margin:10px 0 0;line-height:1.4;min-height:14px}.actions{display:flex;align-items:center;gap:21px;flex-shrink:0;padding-top:6px;min-height:55px}.back{border:0;background:none;display:flex;gap:8px;align-items:center;justify-content:center;padding:0 3px 0 0;min-height:48px;font-size:12px;flex-shrink:0}.back>span{font-size:22px;line-height:1}.primary{display:flex;align-items:center;justify-content:space-between;gap:18px;flex:1;border:1px solid var(--ink);background:var(--ink);color:#fffdf6;min-height:49px;border-radius:0;font-size:13px;padding:13px 17px;transition:transform 120ms ease-out,background 130ms ease-out;text-decoration:none}.primary>span{font-size:20px;line-height:1}.error{font-size:11px;color:#963f34;margin:0 0 7px;line-height:1.5;flex-shrink:0}.error:empty{display:none}.footer{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:47px;border-top:1px solid var(--line)}.footer>span:first-child{font:italic 17px/1.4 var(--display)}.footer>span:last-child{font-size:10px;color:var(--muted)}.success-flower{width:29px;height:29px;object-fit:contain;display:block;margin-bottom:18px;flex-shrink:0;transform:rotate(-13deg)}.stage--success h1{font-size:41px;line-height:1.08}.stage--success .stage-body{justify-content:center;padding:13px 0 5px;gap:15px}.success-copy{font-size:13px;line-height:1.6;color:var(--muted);margin:0}.review-panel{padding:17px;border:1px solid #15358670;background:#fffaf0d9;display:grid;gap:12px}.review-panel h2{font:400 24px/1.2 var(--display);letter-spacing:-.025em;margin:0}.review-panel p{font-size:12px;line-height:1.6;color:var(--muted);margin:0}.review-panel a{font-size:12px;min-height:47px}.review-panel small{font-size:10px;color:var(--muted);line-height:1.5}.owner-note{font-size:12px;color:var(--ink);line-height:1.5;border-left:2px solid var(--ink);padding-left:11px;margin:0}.demo-note{font-size:10px;line-height:1.6;color:var(--muted);margin:0}.restart{border:0;background:none;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:5px 0;border-bottom:1px solid var(--ink);font-size:12px}.stage--success em{font-weight:400}.primary:active,.rating-button:active,.availability button:active{transform:scale(.98)}.role-choice:active>span{background:#15358616}noscript{position:fixed;inset:30% 20px;background:var(--paper);padding:20px;border:1px solid var(--ink)}
@keyframes arrive{from{opacity:.35;transform:translateX(7px)}to{opacity:1;transform:translateX(0)}}
@media(hover:hover) and (pointer:fine){.primary:hover{background:#214793}.rating-button:hover,.availability button:hover{border-color:var(--ink)}.role-choice:hover>span{border-color:var(--ink)}}
@media(max-width:500px){.garden-top{left:-195px;top:80px;opacity:.065}.garden-bottom{right:-175px;bottom:-125px;opacity:.065}}
@media(min-height:850px){.survey-form{padding-top:34px;padding-bottom:21px}.header{height:91px}.stage h1{font-size:39px}.stage--success h1{font-size:45px}}
@media(max-height:700px){.header{height:67px}.brand img{height:52px;width:78px}.step-info{padding:12px 0 8px}.survey-form{padding:19px 0 9px}.stage h1{font-size:29px;margin-bottom:10px}.stage-note{font-size:12px;line-height:1.5}.stage-body{padding:15px 0}.roles{gap:7px}.role-choice>span{min-height:54px;padding:9px;font-size:12px;line-height:1.35}.availability button{min-height:51px;padding:11px}.footer{min-height:39px}.stage--success h1{font-size:35px}.success-flower{margin-bottom:10px;width:24px;height:24px}.stage--success .stage-body{gap:12px}.review-panel{padding:13px;gap:9px}.review-panel h2{font-size:22px}}
@media(max-height:570px){.prototype-banner{font-size:9px;padding-top:calc(2px + env(safe-area-inset-top,0px));padding-bottom:2px}.header{height:56px}.brand img{height:44px;width:68px}.cafe-picker>span{font-size:9px}.cafe-picker select{min-height:29px;font-size:16px}.step-info{padding:9px 0 6px;font-size:10px}.survey-form{padding:13px 0 7px}.stage h1{font-size:25px;margin-bottom:9px}.stage-note{font-size:11px;line-height:1.45}.stage-body{padding:11px 0}.ratings{gap:7px}.rating-button{height:51px;font-size:26px}.role-choice>span{min-height:48px;padding:7px;font-size:11.5px;line-height:1.3;gap:7px}.roles{gap:6px}.role-choice .check{width:13px;height:13px}.role-count{margin-top:7px}.actions{min-height:48px;padding-top:3px;gap:16px}.primary,.back{min-height:44px}.primary{padding:10px 14px;font-size:12px}.footer{min-height:32px}.footer>span:first-child{font-size:15px}.footer>span:last-child{font-size:9px}.manager-label{font-size:11px;margin-top:11px}.field-help{font-size:10px;line-height:1.5;margin-top:8px}.field-label{font-size:11px;margin-bottom:7px}.stage--success h1{font-size:31px}.stage--success .stage-body{gap:10px}.success-flower{display:none}.review-panel{padding:11px;gap:7px}.review-panel h2{font-size:20px}.review-panel p{font-size:11px;line-height:1.5}.demo-note{font-size:9px;line-height:1.45}.success-copy{font-size:12px;line-height:1.5}}
@media(max-height:430px){.header{height:44px}.brand img{height:35px;width:56px}.cafe-picker>span{display:none}.step-info{padding:7px 0 5px}.survey-form{padding:10px 0 5px}.stage h1{font-size:22px;margin-bottom:6px}.stage-note{font-size:10px;line-height:1.4}.stage-body{padding:8px 0}.footer{min-height:25px}.footer>span:first-child{font-size:13px}.field-label{margin-bottom:5px}.manager-label{font-size:10px;margin-top:8px}.manager-label small{display:none}.field-help{font-size:9px}.rating-feedback{margin-bottom:6px;font-size:10px}.stage--success h1{font-size:26px}.stage--success .stage-body{gap:7px}.stage--success .success-copy{display:none}.review-panel h2{font-size:18px}.review-panel{gap:5px;padding:9px}.review-panel p{font-size:10px}.review-panel a{min-height:40px;font-size:11px}.review-panel small{font-size:9px}.owner-note{font-size:10px}.primary{padding:9px 12px}.restart{min-height:35px;font-size:11px}}
@media(max-width:365px){.survey-page{width:calc(100% - 32px)}.stage h1{font-size:28px}.cafe-picker{max-width:190px}.roles{gap:6px}.role-choice>span{font-size:11.5px;padding:8px;gap:7px}.header{gap:12px}.rating-captions{font-size:10px}}
@media(max-width:365px) and (max-height:570px){.stage h1{font-size:24px}.role-choice>span{font-size:11px;padding:7px;line-height:1.3}.role-count{font-size:9px}}
@media(max-width:365px) and (max-height:430px){.stage h1{font-size:21px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

.nav-arrow{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.4;flex-shrink:0;display:block}
@media(max-height:430px){.header,.footer{display:none}.stage--success .review-panel>p{display:none}}

.card-consent{display:flex;gap:9px;align-items:flex-start;font-size:11px;line-height:1.5;margin-top:13px;flex-shrink:0}.card-consent input{accent-color:var(--ink);width:18px;height:18px;flex-shrink:0;margin:1px 0 0}.card-consent a,.footer a{text-decoration:underline;text-underline-offset:3px}.primary:disabled,.back:disabled{opacity:.6;cursor:wait}.stage--loyaltyCard .stage-body{overflow-y:auto}.demo-note{overflow-wrap:anywhere}.stage--success .stage-body{overflow-y:auto}@media(max-height:570px){.card-consent{font-size:10px;margin-top:9px;line-height:1.4}}