:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-canvas:#12141b;--color-surface:#1b1d26;--color-surface-raised:#252630;--color-surface-hover:#2e2e3b;--color-surface-active:#403452;--color-primary:#cdb9f5;--color-primary-hover:#dcf;--color-on-primary:#2a203a;--color-text:#f7f1fe;--color-muted:#aca3bb;--color-subtle:#8c849a;--color-border:#393743;--color-line:#2b2c37;--color-match:#cdb9f5;--color-explore:#d9bf88;--color-rabbit:#b9d4b8;--color-danger:#f1a4a9;--color-paper:#f4f0e9;--color-ink:#2c2832;--color-paper-muted:#625c66;--font-body:"Avenir Next", Avenir, "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--radius-xs:10px;--radius-sm:16px;--radius-md:24px;--radius-lg:32px;--radius-xl:40px;--space-page:clamp(20px, 4.2vw, 64px);--ease-out:cubic-bezier(.22, 1, .36, 1);--duration-fast:.18s;--duration-medium:.28s}*{box-sizing:border-box}html{background:var(--color-canvas);scroll-behavior:smooth;min-width:320px;min-height:100%}body{min-width:320px;color:var(--color-text);background:var(--color-canvas);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:15px;line-height:1.55}button,a,input,textarea,select{outline-offset:5px}:focus-visible{outline:2px solid var(--color-primary)}button:disabled{cursor:not-allowed}button,input,textarea,select{font:inherit;min-width:0}button{-webkit-tap-highlight-color:transparent;cursor:pointer;touch-action:manipulation;color:inherit}a{color:inherit}svg{flex-shrink:0}h1,h2,h3,h4,p{margin:0}h1,h2,h3{letter-spacing:-.045em;font-weight:550;line-height:1.1}h1{font-size:clamp(38px,5vw,68px)}h2{font-size:clamp(28px,3.2vw,44px)}h3{font-size:25px}fieldset{border:0;min-inline-size:0;margin:0;padding:0}legend{padding:0}::selection{background:var(--color-primary);color:var(--color-on-primary)}.button{min-height:52px;transition:background var(--duration-fast), color var(--duration-fast), border-color var(--duration-fast), transform var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast);border:1px solid #0000;border-radius:100px;justify-content:center;align-items:center;gap:12px;padding:14px 22px;font-size:15px;font-weight:650;line-height:1.4;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button:active:not(:disabled){transform:scale(.975)}.button-primary{background:var(--color-primary);color:var(--color-on-primary)}.button-primary:hover:not(:disabled){background:var(--color-primary-hover)}.button-primary:disabled{color:#958aab;background:#363240}.button-secondary{background:var(--color-surface-raised);border-color:var(--color-border);color:var(--color-text)}.button-secondary:hover:not(:disabled){background:var(--color-surface-hover);border-color:#655974}.button-quiet{color:var(--color-muted);background:0 0}.button-quiet:hover:not(:disabled){background:var(--color-surface-raised);color:var(--color-text)}.button:disabled{opacity:.7}.choice-wrap{min-width:0}.choice{border:1px solid var(--color-border);color:#ccc3d7;width:100%;min-height:48px;transition:color var(--duration-fast), background var(--duration-medium), border-color var(--duration-medium);background:0 0;border-radius:100px;justify-content:center;align-items:center;gap:9px;padding:11px 18px;font-size:14px;line-height:1.4;display:inline-flex;position:relative}.choice:hover{background:var(--color-surface-hover);border-color:#62556f}.choice.is-selected{color:var(--color-text);background:var(--color-surface-active);border-color:#b79bda}.choice-check{opacity:0;width:0;transition:width var(--duration-medium) var(--ease-out), opacity var(--duration-fast), transform var(--duration-medium) var(--ease-out);place-items:center;display:grid;transform:scale(.35)}.choice.is-selected .choice-check{opacity:1;width:15px;color:var(--color-primary);transform:scale(1)}.field-group legend+*{clear:both}input,textarea,select{border:1px solid var(--color-border);background:var(--color-canvas);max-width:100%;color:var(--color-text);border-radius:var(--radius-xs);transition:border-color var(--duration-fast), background var(--duration-fast);padding:13px 15px}input:hover,textarea:hover,select:hover{border-color:#5b5267}input:focus,textarea:focus,select:focus{border-color:var(--color-primary)}input::placeholder,textarea::placeholder{color:var(--color-subtle);opacity:1}textarea{resize:vertical;width:100%;min-height:116px}input[type=checkbox]{width:21px;height:21px;accent-color:var(--color-primary);cursor:pointer;padding:0}input[type=number]{font-variant-numeric:tabular-nums}label{color:#d9d1e3;font-size:14px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.orbit{border:1px solid #645471;border-radius:50%;position:absolute;inset:20px 4px;transform:rotate(-27deg)}.orbit:nth-child(2){border-color:#464150;inset:35px -26px;transform:rotate(21deg)}.orbit:nth-child(3){border-color:#393643;inset:-15px 56px;transform:rotate(-26deg)}.orbit:after{content:"";background:var(--color-primary);width:9px;height:9px;box-shadow:0 0 0 6px var(--color-canvas);border-radius:50%;position:absolute;top:18%;right:9%}.orbit:nth-child(2):after{background:var(--color-rabbit);width:6px;height:6px;inset:auto auto 15% 11%}.orbit:nth-child(3):after{display:none}.orb-center{color:var(--color-on-primary);background:linear-gradient(130deg,#e3d1fc 0%,#b79bd9 49%,#755d91 100%);border-radius:50% 50% 44% 44%;place-items:center;display:grid;position:absolute;inset:49px 75px;transform:rotate(-12deg);box-shadow:inset -9px -11px 22px #3d315545,0 18px 48px #090a1029}.orb-center:before{content:"";background:linear-gradient(#594667 0%,#9b80b9 100%);border:1px solid #e8d7fa75;border-radius:50%;height:29px;position:absolute;inset:7px 11px auto}.orb-center svg{opacity:.65;margin-top:15px}.art-caption:before{content:"";background:#5a5067;width:22px;height:1px}.app-shell{width:min(1360px,100%);padding:max(24px, env(safe-area-inset-top)) max(var(--space-page), env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(var(--space-page), env(safe-area-inset-left));margin:0 auto}.brand{letter-spacing:-.05em;align-items:center;gap:11px;font-size:21px;font-weight:600;text-decoration:none;display:flex}.eyebrow{color:var(--color-primary);letter-spacing:.15em;text-transform:uppercase;align-items:center;gap:9px;font-size:11px;font-weight:600;line-height:1.6;display:inline-flex}.step-number{border:1px solid var(--color-border);font-variant-numeric:tabular-nums;border-radius:100%;place-items:center;width:22px;height:22px;font-size:10px;display:grid}.taste-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.taste-tile .choice:hover{background:#322d3e;border-color:#716180}.taste-tile .choice>svg{width:29px;height:29px;color:var(--color-primary)}.taste-tile .choice.is-selected{background:var(--color-surface-active);border-color:#bfa6e2}.taste-tile .choice-check{background:var(--color-primary);width:18px;height:18px;color:var(--color-on-primary);border-radius:50%;position:absolute;top:9px;right:9px}.taste-tile .choice.is-selected .choice-check{width:18px;color:var(--color-on-primary)}.site-header{border-bottom:1px solid var(--color-line);justify-content:space-between;align-items:center;gap:18px;padding:5px 0 24px;display:flex}.brand-symbol{width:42px;height:42px;color:var(--color-primary);border:1px solid #6e5f82;border-radius:15px 15px 15px 5px;place-items:center;padding-bottom:4px;font-size:24px;font-weight:500;display:grid}.brand-caption{color:var(--color-subtle);letter-spacing:.18em;margin-top:5px;font-size:8px;font-weight:500;line-height:1;display:block}.demo-badge{color:var(--color-muted);letter-spacing:0;text-transform:none;border:1px solid var(--color-border);border-radius:50px;align-items:center;gap:7px;padding:8px 12px;font-size:11px;display:inline-flex}.demo-badge:before{content:"";background:var(--color-rabbit);border-radius:100%;width:5px;height:5px;display:none}.status-dot{background:var(--color-rabbit);border-radius:50%;width:5px;height:5px}.skip-link{background:var(--color-primary);color:var(--color-on-primary);z-index:100;clip-path:inset(100%);border-radius:10px;padding:12px 20px;position:fixed;top:10px;left:16px;transform:translateY(-200%)}.skip-link:focus{clip-path:inset(0);transform:translateY(0)}.step-navigation{border-bottom:1px solid var(--color-line);padding:27px 0}.step-navigation ol{justify-content:center;align-items:center;gap:clamp(14px,3.5vw,52px);margin:0;padding:0;list-style:none;display:flex}.step-navigation li{color:var(--color-subtle);white-space:nowrap;align-items:center;gap:8px;font-size:11px;display:flex}.step-navigation li.current{color:var(--color-primary)}.step-navigation li.complete{color:#c6b9d8}.step-navigation li.current .step-number{color:var(--color-primary);background:var(--color-surface-active);border-color:#a88acb}.step-navigation li.complete .step-number{color:var(--color-primary);background:#302a3b;border-color:#52425f}main{padding-top:33px}.screen{min-width:0}.screen-heading{text-align:center;max-width:850px;margin:4px auto 34px}.screen-heading .eyebrow{margin-bottom:16px}.screen-heading h1{font-size:clamp(34px,4.4vw,55px)}.screen-heading h1:focus{outline:none}.lead{color:var(--color-muted);margin-top:19px;font-size:16px;line-height:1.7}.back-button{min-height:44px;margin:-13px 0 16px -13px;padding:9px 13px;font-size:13px}.step-0 .screen{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);column-gap:clamp(40px,6vw,88px);display:grid}.step-0 .taste-heading{text-align:left;grid-area:1/1;margin:0;padding-top:32px}.step-0 .taste-heading h1{letter-spacing:-.06em;max-width:410px;font-size:clamp(49px,5.3vw,70px);line-height:1.08}.step-0 .taste-heading .eyebrow{letter-spacing:.14em;margin-bottom:24px;font-size:10px}.step-0 .taste-heading .lead{max-width:360px;margin-top:25px}.taste-layout{display:contents}.taste-aside{flex-direction:column;grid-area:2/1;min-width:0;display:flex}.taste-form{background:var(--color-surface);border:1px solid var(--color-line);border-radius:32px 32px 32px 10px;grid-area:1/2/span 2;min-width:0;padding:28px}.taste-form>.field-group+.field-group,.taste-form .preferences-grid{margin-top:24px}.field-group{flex-direction:column;gap:12px;display:block}.field-group legend{float:none;color:#ece3f6;width:100%;margin:0 0 13px;font-size:15px;font-weight:600}.field-hint{color:var(--color-muted);margin:-7px 0 15px;font-size:12px}.taste-tile .choice{background:var(--color-surface-raised);border-color:#0000;border-radius:22px;flex-direction:column;gap:4px;height:100%;min-height:115px;padding:15px 8px;font-size:14px}.taste-icon{width:38px;height:38px;color:var(--color-primary);place-items:center;margin-bottom:4px;display:grid}.taste-citrus .taste-icon{color:#d9c497}.taste-tropical .taste-icon{color:#c4cda2}.taste-tea .taste-icon{color:#c7b9a5}.taste-dessert .taste-icon{color:#d4acb8}.taste-herbal .taste-icon{color:#afd0b7}.taste-name{font-size:13px;font-weight:550}.taste-caption{color:var(--color-muted);font-size:10px}.chips .choice-check{width:15px}.chips{flex-wrap:wrap;gap:8px;display:flex}.chips.compact{gap:6px}.preferences-grid{border-top:1px solid var(--color-line);grid-template-columns:1fr;gap:20px;padding-top:23px;display:grid}.mint-toggle{border-top:1px solid var(--color-line);border-bottom:1px solid var(--color-line);cursor:pointer;align-items:center;gap:11px;margin-top:22px;padding:14px 0;display:flex;position:relative}.mint-toggle input{opacity:0;width:38px;height:24px;position:absolute}.mint-toggle input:focus-visible+.toggle-track{outline:2px solid var(--color-primary);outline-offset:5px}.toggle-track{width:35px;height:21px;transition:background var(--duration-fast), border-color var(--duration-fast);background:#24212c;border:1px solid #655c71;border-radius:99px;flex-shrink:0;position:relative}.toggle-track:after{content:"";background:var(--color-muted);width:13px;height:13px;transition:transform var(--duration-medium) var(--ease-out), background var(--duration-fast);border-radius:50%;display:block;position:absolute;top:3px;left:3px}.mint-toggle input:checked+.toggle-track{background:var(--color-primary);border-color:var(--color-primary)}.mint-toggle input:checked+.toggle-track:after{background:var(--color-on-primary);transform:translate(14px)}.mint-toggle>span:not(.toggle-track){font-size:13px}.mint-toggle small{color:var(--color-subtle);margin-top:2px;font-size:10px;display:block}.mint-toggle>svg{color:var(--color-subtle);margin-left:auto}.text-button:hover{text-underline-offset:4px;text-decoration:underline}.form-footer>.button{justify-content:space-between;width:100%;min-height:56px;padding-inline:23px}.microcopy{color:var(--color-subtle);text-align:center;margin-top:12px;font-size:10px;line-height:1.6}.lounge-art{isolation:isolate;width:100%;max-width:430px;min-height:310px;margin-top:26px;position:relative}.orbital{width:250px;height:200px;position:absolute;top:45%;left:50%;transform:translate(-50%,-50%)scale(1.12)}.art-caption{width:max-content;max-width:100%;color:var(--color-subtle);letter-spacing:.17em;text-transform:uppercase;align-items:center;gap:10px;font-size:9px;display:flex;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.aside-note{color:#d1c8de;letter-spacing:-.02em;margin-top:27px;font-size:19px;font-weight:400;line-height:1.65}.aside-foot{border-top:1px solid var(--color-line);color:var(--color-subtle);letter-spacing:.06em;justify-content:space-between;gap:20px;margin-top:auto;padding-top:20px;font-size:10px;display:flex}.site-footer{border-top:1px solid var(--color-line);color:var(--color-subtle);justify-content:space-between;gap:20px;margin-top:48px;padding:22px 0 6px;font-size:10px;display:flex}.footer-separator{color:#554b62;margin:0 13px;display:inline-block}.dev-tools{max-width:420px;color:var(--color-subtle);margin-top:20px;font-size:11px}.dev-tools summary{cursor:pointer;min-height:32px}.dev-tools label{gap:8px;margin:8px 0;font-size:12px;display:grid}.dev-tools select{width:100%;font-size:12px}.dev-tools p{font-size:11px}.request-strip{justify-content:space-between;align-items:center;gap:16px;padding:14px 0 23px;display:flex}.request-chips,.summary-tags{flex-wrap:wrap;gap:7px;display:flex}.request-chips>span{background:var(--color-surface-raised);border:1px solid var(--color-border);color:#d3c8e1;border-radius:99px;padding:6px 12px;font-size:11px}.role-match{--role-accent:var(--color-match);--role-surface:#2b2538;--role-line:#69547f}.role-explore{--role-accent:var(--color-explore);--role-surface:#302d27;--role-line:#77694f}.role-rabbit_hole{--role-accent:var(--color-rabbit);--role-surface:#26322e;--role-line:#5a7667}.recommendation-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:16px;display:grid}.recommendation-card{isolation:isolate;text-align:left;border:1px solid var(--color-border);background:var(--color-surface);min-width:0;transition:border-color var(--duration-medium), background var(--duration-medium);border-radius:26px 26px 26px 8px;padding:25px 22px 20px;display:flex;position:relative;overflow:hidden}.recommendation-card:hover{border-color:var(--role-line)}.recommendation-card.active{border-color:var(--role-accent)}.active-card-background{z-index:-1;background:var(--role-surface);border-radius:inherit;position:absolute;inset:0}.card-content{flex-direction:column;width:100%;display:flex}.role-line{color:var(--role-accent);letter-spacing:-.04em;justify-content:space-between;align-items:center;gap:15px;font-size:24px;font-weight:500;display:flex}.role-line>svg{width:19px;height:19px}.role-hint{color:var(--color-muted);margin-top:3px;font-size:10px;display:block}.card-title{min-height:65px;color:var(--color-text);letter-spacing:-.045em;margin-top:27px;font-size:24px;font-weight:500;line-height:1.2;display:block}.ratio-bar{border-radius:99px;gap:4px;width:100%;height:8px;margin:23px 0;display:flex;overflow:hidden}.ratio-segment{border-radius:99px;min-width:0;height:100%;display:block}.segment-0{background:var(--role-accent,var(--color-primary))}.segment-1{background:#8f7ba9}.segment-2{background:#62586f}.role-explore .segment-1{background:#b09a71}.role-explore .segment-2{background:#716756}.role-rabbit_hole .segment-1{background:#849f92}.role-rabbit_hole .segment-2{background:#536d60}.card-ingredients{gap:14px;margin:0 0 23px;display:grid}.card-ingredients>span{justify-content:space-between;align-items:center;gap:12px;font-size:11px;line-height:1.5;display:flex}.card-ingredients>span>span{overflow-wrap:anywhere;min-width:0}.card-ingredients small{color:var(--color-subtle);margin-top:3px;font-size:10px;display:block}.card-ingredients b{color:var(--role-accent);font-variant-numeric:tabular-nums;letter-spacing:-.03em;flex-shrink:0;font-size:18px;font-weight:500}.card-why{border-top:1px solid var(--color-border);color:#c8bfd3;padding-top:18px;font-size:11px;line-height:1.65;display:block}.card-why b{color:var(--color-text);margin-bottom:6px;font-size:11px;font-weight:550;display:block}.card-limitation{color:var(--color-subtle);margin-top:16px;font-size:10px;line-height:1.65;display:block}.card-selection{color:var(--role-accent);justify-content:space-between;align-items:center;margin-top:auto;padding-top:22px;font-size:12px;font-weight:550;display:flex}.selected-recipe{background:var(--role-surface);transition:background var(--duration-medium);border-radius:24px;justify-content:space-between;align-items:center;gap:24px;margin-top:24px;padding:29px 32px;display:flex}.selected-recipe .eyebrow{color:var(--role-accent);font-size:9px}.selected-recipe h2{margin-top:10px;font-size:29px}.selected-recipe p:last-child{color:var(--color-muted);margin-top:9px;font-size:13px}.selected-recipe .button-primary{background:var(--role-accent);flex-shrink:0}.fixture-disclaimer{color:var(--color-subtle);margin-top:18px;font-size:11px;line-height:1.65}.recommendations>.fixture-disclaimer{text-align:center;max-width:820px;margin-inline:auto}.availability-note{color:var(--color-muted);margin-top:18px;font-size:12px}.empty-state{border:1px solid var(--color-border);background:var(--color-surface);text-align:center;border-radius:36px 36px 36px 10px;max-width:780px;margin:12px auto 30px;padding:62px 34px}.empty-state>svg{color:var(--color-primary);margin-bottom:24px}.empty-state .eyebrow{margin-bottom:15px;display:block}.empty-state h2{font-size:35px}.empty-state>p:not(.eyebrow){max-width:510px;color:var(--color-muted);margin:20px auto 26px;font-size:14px;line-height:1.8}.loading-orbit{border:1px solid #655675;border-top-color:var(--color-primary);border-radius:50%;width:48px;height:48px;margin:0 auto 26px;animation:1.5s linear infinite loading-turn;display:block}@keyframes loading-turn{to{transform:rotate(360deg)}}.master-layout{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);align-items:center;gap:52px;max-width:1110px;margin:0 auto;display:grid}.master-sheet{background:var(--color-paper);color:var(--color-ink);border-radius:30px 30px 30px 8px;padding:34px 38px}.recipe-topline{color:var(--color-paper-muted);letter-spacing:.13em;justify-content:space-between;align-items:center;gap:14px;font-size:10px;display:flex}.recipe-topline span:last-child{letter-spacing:0;border:1px solid #c7bccd;border-radius:20px;padding:5px 10px}.recipe-concept{letter-spacing:-.03em;margin-top:24px;font-size:22px;line-height:1.45}.master-sheet .ratio-bar{height:9px;margin:25px 0 10px}.master-sheet .segment-0{background:#715688}.master-sheet .segment-1{background:#a08caf}.master-sheet .segment-2{background:#c5b6d0}.recipe-ingredients{margin:0;padding:0;list-style:none}.recipe-ingredients li{border-bottom:1px solid #d9d0dc;grid-template-columns:22px 1fr auto;align-items:center;gap:13px;padding:23px 0;display:grid}.ingredient-number{color:#8f8594;align-self:start;margin-top:5px;font-size:10px}.recipe-ingredients li>span:nth-child(2){min-width:0}.recipe-ingredients small{color:var(--color-paper-muted);margin-bottom:7px;font-size:11px;display:block}.recipe-ingredients strong{letter-spacing:-.04em;overflow-wrap:anywhere;font-size:22px;font-weight:550;line-height:1.28;display:block}.recipe-ingredients li>b{letter-spacing:-.065em;font-variant-numeric:tabular-nums;font-size:43px;font-weight:500}.recipe-ingredients li>b>span{margin-left:3px;font-size:19px}.recipe-total{color:var(--color-paper-muted);justify-content:space-between;padding:15px 0;font-size:12px;display:flex}.recipe-total strong{color:var(--color-ink);font-weight:600}.recipe-constraints{background:#e8e1ec;border-radius:15px;margin-top:12px;padding:18px}.recipe-constraints h2{letter-spacing:-.01em;font-size:14px;font-weight:600}.recipe-constraints p{color:var(--color-ink);margin-top:7px;font-size:12px}.recipe-constraints p:last-child{color:var(--color-paper-muted);font-size:10px;line-height:1.6}.recipe-disclaimer{color:var(--color-paper-muted);border-top:1px dashed #c2b5c9;margin-top:21px;padding-top:19px;font-size:10px;line-height:1.7}.master-actions{flex-direction:column;align-items:flex-start;display:flex}.master-mark{background:var(--color-surface-active);width:76px;height:76px;color:var(--color-primary);border-radius:27px 27px 27px 7px;place-items:center;margin-bottom:28px;display:grid}.master-actions h2{font-size:clamp(28px,3vw,39px);line-height:1.2}.master-actions>p:not(.copy-status){max-width:300px;color:var(--color-muted);margin:22px 0 27px;font-size:14px;line-height:1.8}.master-actions .button{width:100%}.copy-status{min-height:36px;color:var(--color-rabbit);padding:8px 0;font-size:11px;line-height:1.5}.master-actions small{max-width:290px;color:var(--color-subtle);margin-top:18px;font-size:11px;line-height:1.7;display:block}.session-layout,.feedback-layout,.summary-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr);align-items:start;gap:48px;max-width:1040px;margin:0 auto;display:grid}.form-panel{background:var(--color-surface);border:1px solid var(--color-line);border-radius:28px 28px 28px 8px;min-width:0;padding:28px}.form-panel>*+*{margin-top:27px}.context-card{background:var(--color-surface);border:1px solid var(--color-line);border-radius:24px;padding:29px}.context-card .eyebrow{font-size:9px}.context-card h2{margin-top:14px;font-size:30px;line-height:1.18}.context-card p:not(.eyebrow){color:var(--color-muted);font-size:13px;line-height:1.8}.context-card small{border-top:1px solid var(--color-border);color:var(--color-subtle);margin-top:24px;padding-top:22px;font-size:11px;line-height:1.8;display:block}.session-options{gap:9px;display:grid}.session-options .choice{border-radius:15px;justify-content:space-between;min-height:54px;padding:15px 17px;font-size:13px}.inline-notice{color:#c9bfd7;background:#282732;border-radius:14px;align-items:flex-start;gap:12px;padding:15px;font-size:12px;line-height:1.7;display:flex}.inline-notice svg{color:var(--color-primary);margin-top:2px}.text-field{gap:11px;display:grid}.text-field>span{flex-wrap:wrap;justify-content:space-between;gap:5px;font-size:14px;font-weight:500;display:flex}.text-field small{color:var(--color-subtle);font-size:11px;font-weight:400}.text-field textarea{font-size:14px}.wide-button{justify-content:space-between;width:100%}.form-error{color:var(--color-danger);background:#35242d;border:1px solid #724650;border-radius:13px;padding:13px 16px;font-size:12px}.editor-heading{justify-content:space-between;align-items:center;gap:15px;margin-bottom:17px;display:flex}.editor-heading h2{font-size:20px;line-height:1.3}.editor-heading>span{text-align:right;color:var(--color-primary);max-width:130px;font-size:10px}.component-editor .field-hint{font-size:11px;line-height:1.6}.component-row{grid-template-columns:minmax(0,1fr) 73px 44px;align-items:end;gap:8px;margin-bottom:15px;display:grid}.component-row label{gap:8px;min-width:0;display:grid}.component-row label>span{color:var(--color-muted);font-size:12px}.component-row input{width:100%;min-height:46px;padding:12px;font-size:14px}.ratio-input input{padding-right:5px}.icon-button{width:44px;height:46px;color:var(--color-muted);background:0 0;border:0;border-radius:10px;place-items:center;display:grid}.icon-button:hover{background:var(--color-surface-raised);color:var(--color-danger)}.component-editor>.button{min-height:45px;padding:11px 15px;font-size:12px}.composition-total{color:var(--color-muted);margin-top:16px;font-size:11px}.feedback-aside{padding:35px 5px}.rating-art{height:182px;color:var(--color-primary);letter-spacing:-.1em;align-items:baseline;gap:8px;font-size:155px;font-weight:400;line-height:1;display:flex}.rating-art>svg{stroke-width:.7px;width:140px;height:140px;fill:var(--color-surface-active);margin-top:4px}.rating-art>span{color:var(--color-subtle);letter-spacing:-.05em;font-size:36px}.feedback-aside>p{letter-spacing:-.04em;font-size:28px;line-height:1.35}.feedback-aside small{max-width:290px;color:var(--color-muted);margin-top:23px;font-size:12px;line-height:1.8;display:block}.rating-controls{gap:8px;display:flex}.rating-button{background:var(--color-surface-raised);min-width:0;color:var(--color-subtle);border:1px solid var(--color-border);transition:background var(--duration-fast), color var(--duration-fast), border-color var(--duration-fast), transform var(--duration-fast) var(--ease-out);border-radius:17px;flex-direction:column;flex:1;align-items:center;gap:8px;padding:14px 4px 10px;display:flex}.rating-button:hover{border-color:var(--color-primary);transform:translateY(-2px)}.rating-button:active{transform:scale(.95)}.rating-button.filled{color:var(--color-primary);background:var(--color-surface-active);border-color:#79618d}.rating-button.filled svg{fill:var(--color-primary);stroke:var(--color-primary)}.rating-button span{font-size:10px}.rating-labels{color:var(--color-subtle);justify-content:space-between;margin-top:9px;font-size:10px;display:flex}.observations .choice{padding:10px 13px;font-size:14px}.summary-layout{grid-template-columns:minmax(0,1.4fr) minmax(0,.9fr);gap:45px}.summary-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:28px 28px 28px 8px;min-width:0;padding:29px 32px}.summary-top{align-items:center;gap:13px;padding-bottom:25px;display:flex}.confirmation-mark{width:44px;height:44px;color:var(--color-rabbit);background:#304039;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.summary-top .eyebrow{letter-spacing:.1em;max-width:165px;color:var(--color-muted);font-size:8px}.summary-rating{color:var(--color-primary);letter-spacing:-.06em;white-space:nowrap;margin-left:auto;font-size:39px;font-weight:500;line-height:1}.summary-rating small{color:var(--color-subtle);letter-spacing:-.04em;margin-left:5px;font-size:17px}.summary-section{border-top:1px solid var(--color-border);padding:26px 0}.summary-section:last-child{padding-bottom:1px}.summary-section .eyebrow{color:var(--color-subtle);margin-bottom:12px;font-size:9px}.summary-section h2{font-size:29px}.summary-section h3{letter-spacing:-.035em;font-size:22px;line-height:1.3}.summary-section p:not(.eyebrow){color:var(--color-muted);overflow-wrap:anywhere;margin-top:12px;font-size:12px;line-height:1.8}.summary-tags{margin-top:14px}.summary-tags>span{background:var(--color-surface-active);color:#d8c7ee;border-radius:99px;padding:6px 11px;font-size:11px}.summary-aside{flex-direction:column;align-items:flex-start;padding-top:34px;display:flex}.summary-aside>svg{color:var(--color-rabbit);margin-bottom:25px}.summary-aside h2{font-size:33px;line-height:1.2}.summary-aside>p{color:var(--color-muted);margin:22px 0 27px;font-size:13px;line-height:1.8}.summary-aside .button{width:100%;padding-inline:19px;font-size:14px}.summary-aside .button-quiet{margin-top:9px}.summary-aside>.fixture-disclaimer{color:var(--color-subtle);margin-top:20px;font-size:11px}.actual-summary{margin:17px 0 0;padding:0;list-style:none}.actual-summary li{border-bottom:1px solid var(--color-line);justify-content:space-between;align-items:flex-start;gap:20px;padding:9px 0;font-size:12px;display:flex}.actual-summary li span{overflow-wrap:anywhere}.actual-summary li b{color:var(--color-primary);text-align:right;flex-shrink:0;font-size:11px;font-weight:500}.user-note{white-space:pre-wrap}.selected-recipe .ratio-bar{max-width:300px;margin:16px 0 0}.recommendation-grid:has(>.recommendation-card:only-child){grid-template-columns:minmax(0,620px);justify-content:center}.recommendation-grid:has(>.recommendation-card:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}:is(.recommendation-grid:has(>.recommendation-card:only-child) .card-title,.recommendation-grid:has(>.recommendation-card:only-child) .card-description){min-height:0}.card-description,.card-why,.card-ingredients>span{font-size:14px}.card-why b,.card-selection,.role-hint,.card-limitation,.card-ingredients small{font-size:12px}.card-description{color:#c2b8ce;min-height:90px;margin-top:8px;font-size:14px;line-height:1.65;display:block}.recipe-disclaimer,.recipe-constraints p:last-child,.taste-caption,.mint-toggle small,.microcopy{font-size:12px}.chips.compact .choice{min-height:44px;padding:9px 12px;font-size:14px}.chips .choice{min-height:44px;padding:10px 16px;font-size:14px}.text-button{min-height:44px;color:var(--color-primary);background:0 0;border:0;justify-content:center;align-items:center;gap:8px;padding:4px 0;font-size:12px;display:inline-flex}.selection-count{color:var(--color-muted);font-size:12px}.form-footer{flex-direction:column;gap:10px;margin-top:17px;display:flex}.form-footer>div{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:0 12px;min-height:32px;display:flex}@media (max-width:1100px){.step-0 .screen{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);column-gap:35px}.step-0 .taste-heading h1{font-size:55px}.step-0 .taste-heading .eyebrow{max-width:250px}.taste-form{padding:25px 22px}.taste-tile .choice{min-height:113px;padding-inline:5px}.taste-name{font-size:14px}.taste-caption{font-size:12px}.recommendation-card{padding:22px 18px}.card-title{font-size:22px}.card-description{min-height:110px}.session-layout,.feedback-layout{gap:30px}.master-layout{gap:34px}.master-sheet{padding:28px}.recipe-ingredients strong{font-size:20px}.recipe-ingredients li>b{font-size:36px}}@media (max-width:900px){.app-shell{--space-page:30px}.step-navigation ol{gap:20px}.step-navigation li{gap:6px;font-size:10px}.step-0 .screen{grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);column-gap:26px}.step-0 .taste-heading h1{font-size:47px}.step-0 .taste-heading .lead{font-size:14px}.desktop-break{display:none}.orbital{transform:translate(-50%,-50%)scale(.88)}.art-caption{letter-spacing:.1em;font-size:7px}.aside-note{font-size:17px}.aside-foot{flex-direction:column;gap:5px}.taste-form{padding:24px 20px}.recommendation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.recommendation-card{padding:25px 22px}.card-description{min-height:92px}.recommendation-grid>.recommendation-card:last-child:nth-child(3){grid-column:1/-1;justify-self:center;max-width:calc(50% - 8px)}.master-layout{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:26px}.master-actions h2{font-size:28px}.master-actions .button{padding-inline:14px;font-size:12px}.recipe-ingredients li{grid-template-columns:17px 1fr auto;gap:9px}.recipe-ingredients strong{font-size:19px}.recipe-ingredients li>b{font-size:31px}.recipe-concept{font-size:20px}.session-layout,.feedback-layout{grid-template-columns:minmax(0,.75fr) minmax(0,1.3fr);gap:25px}.form-panel{padding:24px 21px}.context-card{padding:23px}.context-card h2{font-size:26px}.feedback-aside>p{font-size:25px}.summary-layout{gap:28px}.summary-card{padding:26px}.summary-aside h2{font-size:28px}}@media (max-width:767px){.app-shell{--space-page:24px}.site-header{padding:0 0 20px}.brand-symbol{border-radius:12px 12px 12px 4px;width:37px;height:37px;font-size:22px}.brand-caption{letter-spacing:.13em;font-size:6px}.brand{gap:9px;font-size:20px}.demo-badge{padding:7px 9px;font-size:9px}.step-navigation{padding:22px 0}.step-navigation ol{justify-content:space-between;gap:8px}.step-navigation li{gap:7px}.step-navigation li:not(.current) .step-label{display:none}.step-navigation .current{font-size:11px}.step-number{width:22px;height:22px;font-size:9px}main{padding-top:25px}.step-0 .screen{display:block}.step-0 .taste-heading{margin:0 0 27px;padding:3px 0 0}.step-0 .taste-heading h1{max-width:400px;font-size:clamp(42px,8vw,58px)}.step-0 .taste-heading .eyebrow{max-width:none;margin-bottom:15px;font-size:9px}.step-0 .taste-heading .lead{max-width:380px;margin-top:16px;font-size:14px}.taste-aside{display:none}.taste-form{border-radius:27px 27px 27px 9px;padding:23px}.taste-grid{gap:9px}.taste-tile .choice{min-height:115px}.taste-name{font-size:14px}.taste-caption{font-size:12px}.preferences-grid{gap:22px}.screen-heading{text-align:left;margin:0 0 27px}.screen-heading .eyebrow{margin-bottom:14px;font-size:9px}.screen-heading h1{font-size:clamp(34px,6.5vw,46px);line-height:1.12}.lead{margin-top:16px;font-size:14px}.back-button{margin-bottom:20px}.request-strip{align-items:flex-start;padding-top:0}.request-strip>.text-button{flex-shrink:0;margin-top:-5px}.request-chips{gap:6px}.request-chips>span{padding:5px 9px;font-size:10px}:is(.recommendation-grid,.recommendation-grid:has(>.recommendation-card:nth-child(2):last-child)){grid-template-columns:1fr;gap:17px}.recommendation-grid>.recommendation-card:last-child:nth-child(3){grid-column:auto;justify-self:stretch;max-width:none}.recommendation-card{padding:26px}.card-title{min-height:0;margin-top:24px;font-size:28px}.card-description{min-height:0;margin-top:12px;font-size:14px}.role-line{font-size:27px}.role-hint{margin-top:4px;font-size:12px}.ratio-bar{margin:22px 0}.card-ingredients{gap:15px}.card-ingredients>span{font-size:14px}.card-ingredients b{font-size:21px}.card-why{font-size:14px}.card-why b,.card-limitation{font-size:12px}.card-selection{padding-top:23px;font-size:14px}.selected-recipe{flex-direction:column;align-items:stretch;gap:22px;padding:25px}.selected-recipe h2{font-size:28px}.selected-recipe>.button{justify-content:space-between}.fixture-disclaimer,.availability-note{font-size:11px}.empty-state{border-radius:27px 27px 27px 8px;margin-top:0;padding:42px 24px}.empty-state h2{font-size:31px}.empty-state>p:not(.eyebrow){font-size:13px}.master-layout{grid-template-columns:1fr;gap:28px}.master-sheet{padding:27px}.recipe-concept{font-size:24px}.recipe-ingredients li{grid-template-columns:18px 1fr auto;gap:10px;padding:24px 0}.recipe-ingredients strong{font-size:24px}.recipe-ingredients li>b{font-size:43px}.recipe-constraints p{font-size:13px}.recipe-constraints p:last-child,.recipe-disclaimer{font-size:12px}.master-actions{align-items:stretch}.master-mark{display:none}.master-actions h2{font-size:29px}.master-actions h2 br{display:none}.master-actions>p:not(.copy-status){max-width:none;margin:14px 0 21px;font-size:14px}.master-actions .button{font-size:14px}.master-actions small{max-width:none;font-size:12px}.session-layout,.feedback-layout,.summary-layout{grid-template-columns:1fr;gap:23px}.context-card{padding:22px}.context-card h2{font-size:25px}.context-card .ratio-bar{max-width:340px;margin:18px 0}.context-card small{margin-top:17px;padding-top:15px}.form-panel{padding:25px}.session-options .choice{font-size:14px}.inline-notice{font-size:13px}.feedback-aside{flex-wrap:wrap;align-items:center;gap:12px 23px;padding:0 0 7px;display:flex}.rating-art{gap:5px;min-width:92px;height:87px;font-size:75px}.rating-art>span{font-size:20px}.rating-art>svg{width:77px;height:77px}.feedback-aside>p{font-size:23px}.feedback-aside small{max-width:none;margin-top:0;font-size:12px}.rating-controls{gap:8px}.rating-button{border-radius:16px;padding-top:16px}.rating-labels{font-size:11px}.summary-layout{gap:27px}.summary-card{padding:25px}.summary-section h2{font-size:29px}.summary-section h3{font-size:23px}.summary-section p:not(.eyebrow){font-size:13px}.summary-aside{padding:4px 0 0}.summary-aside>svg{margin-bottom:20px}.summary-aside h2{font-size:32px}.summary-aside p{margin-bottom:24px;font-size:14px}.site-footer{flex-direction:column;gap:8px;margin-top:34px;font-size:10px}}@media (max-width:430px){.app-shell{--space-page:20px}.brand-caption{font-size:6px}.demo-badge{max-width:106px;line-height:1.3}.demo-badge .status-dot{flex-shrink:0}.taste-form{padding:21px 17px}.taste-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.taste-tile .choice{min-height:109px;padding-inline:4px}.taste-name{font-size:14px}.taste-caption{font-size:12px}.taste-icon{width:33px;height:33px}.taste-icon svg{width:27px;height:27px}.chips .choice{padding:10px 13px;font-size:14px}.chips.compact .choice{padding:10px 11px;font-size:14px}.selection-count,.form-footer .text-button{font-size:12px}.form-footer>.button{padding-inline:20px;font-size:14px}.microcopy{font-size:12px}.recommendation-card{padding:23px}.card-title{font-size:26px}.card-description,.card-ingredients>span,.card-why{font-size:14px}.card-limitation{font-size:12px}.selected-recipe{padding:23px}.selected-recipe h2{font-size:25px}.master-sheet{padding:24px 20px}.recipe-topline{letter-spacing:.08em;font-size:9px}.recipe-concept{font-size:21px}.recipe-ingredients li{grid-template-columns:16px minmax(0,1fr) auto;gap:9px;padding:22px 0}.recipe-ingredients strong{font-size:21px}.recipe-ingredients li>b{font-size:37px}.recipe-ingredients li>b>span{margin-left:1px;font-size:16px}.recipe-constraints{padding:16px}.form-panel{padding:24px 18px}.session-options .choice{padding-inline:14px}.component-row{grid-template-columns:minmax(0,1fr) 68px 44px;gap:7px}.component-row input{padding-left:9px;font-size:14px}.icon-button{width:44px}.component-editor>.button{font-size:14px}.editor-heading h2{font-size:18px}.editor-heading>span{max-width:106px;font-size:9px}.rating-button{border-radius:13px;padding:14px 3px 10px}.rating-button>svg{width:25px;height:25px}.observations .choice{padding-inline:11px;font-size:14px}.text-field>span{font-size:13px}.text-field small{font-size:10px}.summary-card{padding:24px 21px}.summary-top{gap:10px}.summary-top .eyebrow{max-width:140px;font-size:7px}.confirmation-mark{width:39px;height:39px}.summary-rating{font-size:35px}.summary-section h2{font-size:26px}.summary-section h3{font-size:21px}}@media (max-width:350px){.app-shell{--space-page:16px}.brand{gap:7px;font-size:18px}.brand-symbol{width:34px;height:34px}.demo-badge{max-width:95px;padding:6px 8px;font-size:8px}.step-navigation ol{gap:6px}.step-navigation li{gap:5px}.step-number{width:20px;height:20px;font-size:8px}.step-navigation .current{font-size:10px}.step-0 .taste-heading h1{font-size:42px}.step-0 .taste-heading .eyebrow{letter-spacing:.13em;font-size:8px}.taste-form{padding:20px 14px}.taste-grid{gap:7px}.taste-tile .choice{border-radius:17px;min-height:104px}.taste-name{font-size:14px}.taste-caption{font-size:12px}.chips .choice{padding-inline:11px}.chips.compact{gap:5px}.chips.compact .choice{padding-inline:9px}.selection-count,.form-footer .text-button{font-size:12px}.form-footer>.button{padding-inline:17px;font-size:13px}.screen-heading h1{font-size:32px}.screen-heading .eyebrow{font-size:8px}.request-strip{flex-direction:column;gap:6px}.recommendation-card{padding:22px 20px}.card-ingredients>span{font-size:14px}.card-title{font-size:25px}.selected-recipe{padding:22px 20px}.selected-recipe>.button{padding-inline:15px;font-size:13px}.recipe-ingredients li{grid-template-columns:minmax(0,1fr) auto}.ingredient-number{display:none}.recipe-ingredients strong{font-size:21px}.recipe-ingredients li>b{font-size:36px}.session-options .choice{font-size:14px}.feedback-aside{gap:12px}.feedback-aside>p{font-size:21px}.rating-controls{gap:5px}.summary-card{padding:23px 18px}.summary-top .eyebrow{max-width:110px;font-size:7px}.summary-rating{font-size:32px}.summary-section h2{font-size:24px}.actual-summary li{flex-wrap:wrap;gap:5px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.button:hover:not(:disabled),.button:active:not(:disabled),.rating-button:hover,.rating-button:active{transform:none}.loading-orbit{border-color:var(--color-primary);animation:none}}.login-shell{width:min(100% - 40px,520px);margin:8vh auto}.login-card{background:var(--color-surface-raised);border-radius:30px;margin-top:44px;padding:clamp(24px,5vw,44px)}.login-card h1{letter-spacing:-.04em;font-size:clamp(1.9rem,6vw,2.6rem)}.login-card form{gap:20px;margin-top:30px;display:grid}.login-card input{border:1px solid var(--color-muted);background:var(--color-canvas);width:100%;min-height:48px;color:var(--color-text);border-radius:12px;padding:12px 14px}.password-toggle{justify-self:start}.latest-report{text-align:right;max-width:1280px;color:var(--color-primary);margin:18px auto 0;padding:0 24px}[data-private-paused] .private-content{visibility:hidden}@media (max-width:560px){.site-header{flex-wrap:wrap;gap:16px}.site-header>.text-button{margin-left:auto}}
