.progress-shell{--track-h:.1rem;--node:.4rem;--node-active:.7rem;width:100%;box-shadow:none;box-sizing:border-box;background:0 0;border:none;flex-direction:column;gap:.55rem;padding:0;display:flex}.progress-meta{justify-content:space-between;align-items:center;gap:.65rem;min-height:1.2rem;display:flex}.progress-chip{border-radius:var(--pillRadius);background:color-mix(in srgb, var(--surface-1), var(--heading) 3%);box-shadow:none;color:var(--emotionalAccent,var(--textSecondary));letter-spacing:.02em;white-space:nowrap;border:none;align-items:center;gap:.35em;padding:.18rem .55rem;font-size:.68rem;font-weight:650;line-height:1.2;display:inline-flex}.progress-chip strong{color:var(--heading);font-weight:700}.progress{--size:var(--node);--bg:color-mix(in srgb, var(--heading), transparent 88%);--activeBg:linear-gradient(145deg, color-mix(in srgb, var(--heading), white 8%) 0%, var(--heading) 100%);width:100%;margin:0;position:relative;&[data-style=steps]{min-height:calc(var(--node-active) + .2rem);flex-direction:row;justify-content:space-between;align-items:center;gap:0;padding:.15rem .1rem;display:flex;& span{transition:background var(--motion-med), transform var(--motion-fast), box-shadow var(--motion-fast)}& .step{width:var(--node);height:var(--node);background:var(--bg);box-shadow:none;z-index:1;border:.0938rem solid #0000;border-radius:15%;flex:none;justify-content:center;align-items:center;font-weight:700;display:inline-flex;transform:rotate(45deg);&+.direction{height:var(--track-h);background:color-mix(in srgb, var(--heading), transparent 90%);border-radius:50rem;flex:auto;width:auto;min-width:.5rem;margin:0 .5rem;display:block}&.completed,&.active{background:var(--activeBg);color:var(--surface-1,var(--elevatedFill));border-color:#0000;border-radius:50%}&.active{width:var(--node-active);height:var(--node-active);box-shadow:0 0 0 .1875rem color-mix(in srgb, var(--heading), transparent 90%), 0 .25rem .75rem color-mix(in srgb, var(--heading), transparent 90%)}&.completed+.direction{background:linear-gradient(90deg, color-mix(in srgb, var(--heading), transparent 35%), color-mix(in srgb, var(--heading), transparent 55%))}}}&[data-style=progress]{background:color-mix(in srgb, var(--heading), transparent 92%);border-radius:50rem;height:.45em;overflow:hidden}& .bar{--from:color-mix(in srgb, var(--heading), white 22%);--to:var(--heading);background:linear-gradient(to right, var(--from), var(--to));transition:width var(--motion-med);border-radius:50rem;position:absolute;inset:0 auto 0 0}}html[data-shell=smartphone]{& .progress-shell{gap:.4rem}& .progress-chip{padding:.18rem .55rem;font-size:.64rem}}@media (prefers-reduced-motion:reduce){.progress .step,.progress .bar{transition:none}}dialog.form-wrapper{border:none;width:100%;max-width:50vw;height:fit-content;padding:0!important;& button.action{--background:var(--danger);--text:white;border-width:0;border-radius:50%;justify-content:center;align-items:center;width:1em;height:1em;margin:0;padding:0;font-size:3rem;display:inline-flex;position:fixed;top:.5em;right:.5em}& h1,& h2,& h3,& h4,& h5,& h6{margin-bottom:.2em}}html:has(dialog.form-wrapper[open]){position:fixed;overflow:hidden}.form-wrapper{position:relative;& form{box-sizing:border-box;padding:4em;&>fieldset{min-height:100%;&>label:not(:has(input[type=checkbox],input[type=radio])),&>fieldset{width:100%;&>*{width:100%}}}&:has(>.form-actions button[data-direction=back])>fieldset.form-fieldset>:last-child{margin-bottom:3rem}& sup{color:var(--danger);font-size:.8em;font-weight:700}& .form-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:2em;padding:2em 0 0;font-size:1.15em;display:flex;& button[data-direction=forward],& button[type=submit]{margin-left:auto}& button[data-direction=forward]:not([disabled]){background:var(--success);color:#fff;box-shadow:none;transition:filter var(--motion-fast,.16s ease), opacity var(--motion-fast,.16s ease);&:hover{background:var(--success);filter:brightness(1.06);box-shadow:none}}& button[data-direction=forward].is-blocked{opacity:.72;filter:grayscale(.15)}& button[data-direction=forward].is-blocked:hover{filter:grayscale(.1)brightness(1.04)}}}}html[data-shell=smartphone]{& dialog.form-wrapper{max-width:90vw;& button.action{font-size:2.5rem;top:.25em;right:.25em}}& .form-wrapper{& form{padding:2em;& .form-actions{text-align:center;flex-direction:column;justify-content:center;align-items:stretch;gap:.75rem;padding:1.5em 0 0;font-size:1em;& button{justify-content:center;width:100%;margin:0}}}}}aside#chat{&:has(#booking-wrapper){flex-shrink:0;width:min(50%,50rem);max-width:min(50%,50rem);left:auto;overflow:hidden;& header.chat-header{border-bottom-color:#0000}& article.chat-history,& footer.chat-compose{display:none}html[data-shell=smartphone] &{border-radius:inherit;width:100%;max-width:none}html[data-shell=tablet][data-shell-landscape=short] &,html[data-shell=smartphone][data-shell-landscape=short] &{width:100%;max-width:none}}& .booking-panel{background:0 0;border:none;margin:0;padding:0}& #booking-wrapper.form-wrapper{top:var(--chat-panel-header-h,3.55rem);z-index:1;height:auto;padding:0;position:absolute;bottom:0;left:0;right:0;html[data-shell=smartphone] &{top:1.65rem}& .booking-form{box-sizing:border-box;background:var(--elevatedFill,var(--uiBackground));width:100%;height:100%;color:var(--text);box-shadow:none;border:none;flex-direction:column;gap:0;padding:0;display:flex;position:relative;overflow:hidden;& .progress-shell{z-index:3;margin:0 0 var(--space-4);padding:0 var(--space-5);flex-shrink:0;width:auto;max-width:none;position:relative}& .progress{z-index:3;flex-shrink:0;margin:0;position:relative}& .booking-step-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;z-index:1;flex-direction:column;flex:1;align-items:center;gap:1rem;width:100%;min-height:0;padding:.85rem clamp(1.1rem,3.2vw,1.65rem) 1.25rem;scroll-padding-bottom:1rem;display:flex;position:relative;overflow-y:auto;&>h3{letter-spacing:-.03em;color:var(--heading,var(--text));max-width:22ch;margin:0;font-size:1.32rem;font-weight:750;line-height:1.2}&>p{color:var(--text);max-width:42ch;margin:0;font-size:.96rem;line-height:1.55}&>p+p{margin-top:-.25rem}}&:has(>.form-actions button[data-direction=back])>.booking-step-body>:last-child{margin-bottom:3rem}& .form-actions{padding:.85rem clamp(1rem, 3vw, 1.5rem) max(.85rem, env(safe-area-inset-bottom,0));z-index:3;background:var(--elevatedFill,var(--uiBackground));border-top:.0625rem solid var(--divider,transparent);box-shadow:var(--floatShadow);flex-flow:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:.65rem;margin-top:auto;font-size:.95rem;display:flex;position:relative;& button,& .button{width:auto;max-width:none;min-height:var(--control-h);background:var(--chipFill,var(--softCardBg));height:auto;color:var(--text);box-shadow:none;line-height:1.25;font:inherit;white-space:nowrap;touch-action:manipulation;cursor:pointer;transition:transform var(--motion-fast), box-shadow var(--motion-fast), filter var(--motion-fast);border:none;border-radius:50rem;justify-content:center;align-items:center;gap:.4rem;margin:0;padding:.5rem 1.15rem;font-weight:600;display:inline-flex}& button:hover:not(:disabled),& .button:hover:not(:disabled){box-shadow:none;transform:translateY(-.0625rem)}& button:focus-visible,& .button:focus-visible{box-shadow:var(--focus-ring);outline:none}& button:disabled,& .button:disabled{opacity:.45;cursor:not-allowed;transform:none}& button[data-direction=back]{box-shadow:none;background:0 0;margin-right:auto}& button[type=submit]{background:var(--heading);color:var(--elevatedFill,var(--uiBackground));box-shadow:none;border-color:#0000}& button[type=submit]:not(:disabled):hover{background:var(--heading);filter:brightness(1.06)}& button[data-direction=back] svg{flex-shrink:0;width:1.05rem;height:1.05rem}&:empty{box-shadow:none;border:none;padding:0;display:none}}& .booking-booked-details{margin-top:.25em}& .booking-success{flex-direction:column;align-items:center;gap:.9rem;max-width:28rem;padding:.15rem 0 .35rem;display:flex}& .booking-success-badge{background:var(--success,#2f8f5b);width:2.85rem;height:2.85rem;color:var(--uiBackground,#fff);box-shadow:none;border-radius:50%;flex-shrink:0;place-items:center;display:grid}& .booking-success-badge svg{stroke-width:2.5px;width:1.35rem;height:1.35rem;display:block}& .booking-success>h3{max-width:18ch;margin:0}& .booking-success>p{max-width:36ch;margin:0}& .booking-success .booking-confirm-summary{width:100%}& .booking-success .booking-confirm-summary p{color:var(--text);margin:0;font-size:.95rem;line-height:1.5}& .booking-success .booking-confirm-summary strong{color:var(--heading,var(--text));font-weight:700}& .booking-calendar-actions{flex-direction:column;align-items:stretch;gap:.55rem;width:100%;max-width:22rem;margin:.15rem 0 0;display:flex;& .button{width:100%;min-height:var(--control-h,2.75rem);border:.0625rem solid var(--divider,var(--subtleBorder,transparent));background:var(--surface-2,var(--chipFill,var(--softCardBg)));color:var(--text);box-shadow:none;font:inherit;text-align:center;touch-action:manipulation;cursor:pointer;transition:transform var(--motion-fast), filter var(--motion-fast);border-radius:50rem;justify-content:center;align-items:center;padding:.6rem 1.15rem;font-weight:650;text-decoration:none;display:inline-flex}& .button.primary{background:var(--heading);color:var(--elevatedFill,var(--uiBackground));border-color:var(--heading);box-shadow:none}& .button:hover{filter:brightness(1.03);transform:translateY(-.0625rem)}& .button:focus-visible{box-shadow:var(--focus-ring);outline:none}}& .booking-calendar{flex-direction:column;align-self:stretch;gap:1rem;width:100%;min-width:0;display:flex}& .booking-calendar-body{flex-direction:column;gap:.9rem;width:100%;min-width:0;display:flex;container:booking-cal/inline-size}& .booking-calendar-main{flex-direction:column;gap:.9rem;width:100%;min-width:0;display:flex}@container booking-cal (width>=34rem){& .booking-calendar-main{grid-template-columns:minmax(0,1.08fr) minmax(12.5rem,.92fr);align-items:stretch;gap:.85rem;display:grid}& .booking-calendar-main>#date-picker.booking-slot-picker,& .booking-calendar-main>.booking-day-slots{min-width:0;height:100%}& .booking-calendar-main>.booking-day-slots{flex-direction:column;min-height:100%;max-height:none;display:flex}& .booking-calendar-main>.booking-day-slots .booking-day-slots-periods{overscroll-behavior:contain;flex:auto;min-height:0;padding-right:.1rem;overflow-y:auto}& .booking-calendar-main>#date-picker.booking-slot-picker{padding:.9rem .85rem 1rem}& .booking-calendar-main>#date-picker.booking-slot-picker .days>span{min-height:2rem}& .booking-calendar-main .booking-day-slots-grid{grid-template-columns:repeat(auto-fill,minmax(4.15rem,1fr))}}@container booking-cal (width>=42rem){& .booking-calendar-main{grid-template-columns:minmax(0,1.12fr) minmax(14rem,.88fr);gap:1rem}& .booking-calendar-main .booking-day-slots-grid{grid-template-columns:repeat(auto-fill,minmax(4.5rem,1fr))}}& .booking-calendar-head{flex-direction:column;gap:.4rem;margin:0;padding-bottom:.15rem;display:flex}& .booking-calendar-head h3{letter-spacing:-.025em;color:var(--heading,var(--text));margin:0;font-size:clamp(1.1rem,2.4vw,1.22rem);font-weight:750;line-height:1.2}& .booking-calendar-hint{color:var(--textSecondary,var(--textMuted,var(--text)));max-width:36rem;margin:0;font-size:.875rem;line-height:1.5}& .booking-calendar-studio{border:.0625rem solid color-mix(in srgb, var(--heading) 12%, transparent);letter-spacing:-.01em;width:fit-content;max-width:100%;color:var(--heading,var(--text));background:color-mix(in srgb, var(--elevatedFill,var(--uiBackground)) 70%, color-mix(in srgb, var(--heading), transparent 94%));box-shadow:0 .0625rem .125rem color-mix(in srgb, var(--heading) 6%, transparent);border-radius:50rem;align-items:center;gap:.5rem;margin:.2rem 0 0;padding:.4rem 1.2rem .4rem .8rem;font-size:.8rem;font-weight:650;display:inline-flex}& .booking-calendar-studio-mark{background:var(--heading);width:.5rem;height:.5rem;box-shadow:0 0 0 .1875rem color-mix(in srgb, var(--heading) 18%, transparent);border-radius:50%;flex-shrink:0}& .booking-calendar-studio-name{text-overflow:ellipsis;white-space:nowrap;max-width:18rem;overflow:hidden}& .booking-day-rail{box-sizing:border-box;overscroll-behavior-x:contain;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;touch-action:pan-x;scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--heading) 35%, transparent) transparent;flex-flow:row;align-items:stretch;gap:.5rem;width:100%;min-width:0;max-width:100%;margin:0;padding:.25rem .15rem .55rem;scroll-padding-inline:.35rem;display:flex;overflow:auto hidden;mask-image:linear-gradient(90deg,#0000 0,#000 .5rem calc(100% - .5rem),#0000 100%)}& .booking-day-rail::-webkit-scrollbar{height:.35rem}& .booking-day-rail::-webkit-scrollbar-track{background:0 0}& .booking-day-rail::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--heading) 32%, transparent);border-radius:50rem}& .booking-day-rail::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--heading) 48%, transparent)}& .booking-day-chip{scroll-snap-align:start;border:.0625rem solid var(--divider,var(--subtleBorder,transparent));background:var(--elevatedFill,var(--uiBackground));min-width:5.6rem;min-height:3.35rem;color:var(--text);font:inherit;cursor:pointer;touch-action:manipulation;box-shadow:0 .0625rem .125rem color-mix(in srgb, var(--heading) 5%, transparent);transition:border-color var(--motion-fast,.15s ease), background var(--motion-fast,.15s ease), color var(--motion-fast,.15s ease), box-shadow var(--motion-fast,.15s ease), transform var(--motion-fast,.15s ease);border-radius:.95rem;flex-direction:column;flex:none;justify-content:center;align-items:flex-start;gap:.28rem;margin:0;padding:.55rem .75rem;display:inline-flex}& .booking-day-chip:hover{border-color:color-mix(in srgb, var(--heading), transparent 50%);box-shadow:0 .25rem .75rem color-mix(in srgb, var(--heading) 10%, transparent);transform:translateY(-.0625rem)}& .booking-day-chip:focus-visible{box-shadow:var(--focus-ring);outline:none}& .booking-day-chip:active{transform:translateY(0)}& .booking-day-chip.is-active{background:var(--heading);border-color:var(--heading);color:var(--elevatedFill,var(--uiBackground));box-shadow:0 .0625rem .125rem color-mix(in srgb, var(--heading) 20%, transparent), 0 .375rem 1rem color-mix(in srgb, var(--heading) 18%, transparent)}& .booking-day-chip-date{letter-spacing:-.015em;text-transform:capitalize;white-space:nowrap;font-size:.84rem;font-weight:700;line-height:1.15}& .booking-day-chip-count{opacity:.78;font-variant-numeric:tabular-nums;align-items:baseline;gap:.28rem;font-size:.7rem;font-weight:600;line-height:1;display:inline-flex}& .booking-day-chip-count-n{background:color-mix(in srgb, var(--heading), transparent 88%);min-width:1.15rem;height:1.15rem;color:var(--heading,var(--text));border-radius:50rem;place-items:center;padding:0 .28rem;font-size:.68rem;font-weight:700;display:inline-grid}& .booking-day-chip.is-active .booking-day-chip-count{opacity:.95}& .booking-day-chip.is-active .booking-day-chip-count-n{background:color-mix(in srgb, var(--elevatedFill,var(--uiBackground)) 22%, transparent);color:var(--elevatedFill,var(--uiBackground))}& .booking-day-chip-count-l{letter-spacing:.01em}& .booking-day-slots{border-radius:var(--cardRadius,1.05rem);border:.0625rem solid var(--divider,var(--subtleBorder,transparent));background:var(--elevatedFill,var(--surface-1,var(--uiBackground,#fff)));box-shadow:0 .0625rem .125rem color-mix(in srgb, var(--heading) 4%, transparent), 0 .5rem 1.5rem color-mix(in srgb, var(--heading) 6%, transparent);flex-direction:column;gap:.85rem;margin-top:.05rem;padding:1rem 1.1rem 1.15rem;display:flex}& .booking-day-slots.is-empty{background:color-mix(in srgb, var(--surface-2,var(--chipFill,var(--softCardBg))) 85%, var(--elevatedFill,var(--uiBackground)));box-shadow:none}& .booking-day-slots-head{border-bottom:.0625rem solid color-mix(in srgb, var(--divider,var(--heading)) 55%, transparent);justify-content:space-between;align-items:flex-start;gap:.75rem;padding-bottom:.15rem;display:flex}& .booking-day-slots-title{flex-direction:column;gap:.25rem;min-width:0;padding-bottom:.55rem;display:flex}& .booking-day-slots-label{letter-spacing:-.02em;text-transform:capitalize;color:var(--heading,var(--text));margin:0;font-size:.98rem;font-weight:750;line-height:1.25}& .booking-day-slots-meta{color:var(--textSecondary,var(--textMuted,var(--text)));font-variant-numeric:tabular-nums;letter-spacing:.01em;font-size:.76rem;font-weight:650}& .booking-day-slots-empty{color:var(--textSecondary,var(--textMuted,var(--text)));background:color-mix(in srgb, var(--surface-2,var(--chipFill,var(--softCardBg))) 70%, transparent);border:.0625rem dashed color-mix(in srgb, var(--divider,var(--heading)) 70%, transparent);border-radius:.85rem;margin:.25rem 0 0;padding:.85rem .95rem;font-size:.9rem;line-height:1.5}& .booking-day-nav{flex-shrink:0;gap:.35rem;padding-top:.05rem;display:inline-flex}& .booking-day-nav-btn{border:.0625rem solid var(--divider,var(--subtleBorder,transparent));background:var(--elevatedFill,var(--uiBackground));width:2.25rem;height:2.25rem;min-height:0;color:var(--heading,var(--text));cursor:pointer;touch-action:manipulation;transition:border-color var(--motion-fast,.15s ease), background var(--motion-fast,.15s ease), color var(--motion-fast,.15s ease), box-shadow var(--motion-fast,.15s ease), transform var(--motion-fast,.15s ease);border-radius:50rem;place-items:center;margin:0;padding:0;font-size:0;line-height:1;display:inline-grid}& .booking-day-nav-icon{width:1.05rem;height:1.05rem;color:inherit;place-items:center;display:grid}& .booking-day-nav-icon svg{width:100%;height:100%;display:block}& .booking-day-nav-btn:hover:not(:disabled){border-color:var(--heading);background:color-mix(in srgb, var(--heading), transparent 92%);transform:translateY(-.0625rem)}& .booking-day-nav-btn:disabled{opacity:.32;cursor:default}& .booking-day-nav-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}& .booking-day-nav-btn:active:not(:disabled){transform:translateY(0)}& .booking-day-slots-periods{flex-direction:column;gap:.85rem;display:flex}& .booking-period{flex-direction:column;gap:.5rem;display:flex}& .booking-period-label{letter-spacing:.08em;text-transform:uppercase;color:var(--textSecondary,var(--textMuted,var(--text)));align-items:center;gap:.5rem;margin:0;font-size:.7rem;font-weight:750;display:flex}& .booking-period-label:after{content:"";background:color-mix(in srgb, var(--divider,var(--heading)) 65%, transparent);flex:auto;height:.0625rem}& .booking-day-slots-grid{grid-template-columns:repeat(auto-fill,minmax(4.5rem,1fr));gap:.5rem;display:grid;& .booking-slot-btn,& button{font:inherit;border:.0625rem solid var(--divider,var(--subtleBorder,transparent));background:var(--surface-2,var(--chipFill,var(--softCardBg,var(--elevatedFill))));width:100%;min-width:0;min-height:2.7rem;color:var(--text);cursor:pointer;touch-action:manipulation;font-variant-numeric:tabular-nums;letter-spacing:-.01em;box-shadow:0 .0625rem .0625rem color-mix(in srgb, var(--heading) 4%, transparent);transition:border-color var(--motion-fast,.15s ease), background var(--motion-fast,.15s ease), color var(--motion-fast,.15s ease), box-shadow var(--motion-fast,.15s ease), transform var(--motion-fast,.15s ease);border-radius:.85rem;padding:.5rem .65rem;font-size:.94rem;font-weight:650}& .booking-slot-btn:hover,& button:hover{border-color:color-mix(in srgb, var(--heading), transparent 35%);background:var(--elevatedFill,var(--uiBackground));box-shadow:0 .25rem .75rem color-mix(in srgb, var(--heading) 10%, transparent);transform:translateY(-.0625rem)}& .booking-slot-btn:focus-visible,& button:focus-visible{box-shadow:var(--focus-ring);outline:none}& .booking-slot-btn:active,& button:active{transform:translateY(0)}& .booking-slot-btn.booking-slot-selected,& button.booking-slot-selected{background:var(--heading);color:var(--elevatedFill,var(--uiBackground));border-color:var(--heading);box-shadow:0 .0625rem .125rem color-mix(in srgb, var(--heading) 22%, transparent), 0 .375rem .875rem color-mix(in srgb, var(--heading) 16%, transparent);transform:none}}& .booking-studio-skeleton{flex-direction:column;gap:.75rem;display:flex}& .booking-loading-label{letter-spacing:-.01em;color:var(--textSecondary,var(--textMuted,var(--text)));margin:0;font-size:.88rem;font-weight:650}& .booking-studio-card.is-skeleton{pointer-events:none;cursor:default;opacity:.95;box-shadow:var(--softShadow,var(--nestedShadow));transform:none;&:hover{box-shadow:var(--softShadow,var(--nestedShadow));border-color:#0000;transform:none}& .skel-block,& .skel-line,& .skel-score,& .skel-chip,& .skel-cta{background:color-mix(in srgb, var(--heading), transparent 92%);border-radius:.55rem;animation:1.25s ease-in-out infinite booking-skel;display:block}& .logo.skel-block{background:color-mix(in srgb, var(--heading), transparent 88%);width:9.5em;min-height:7.25em;box-shadow:none;border-radius:.85rem}& .title-row{align-items:center}& .skel-line{width:100%;height:.78rem;margin:0}& .skel-title{flex:auto;width:auto;min-width:8rem;max-width:14rem;height:1.15rem}& .skel-score-wrap{flex-shrink:0;align-items:center;gap:.5rem;margin-left:auto;display:inline-flex}& .skel-score-title{width:4.5rem;height:.7rem;margin:0;animation-delay:60ms}& .skel-score{border-radius:.75rem;flex-shrink:0;width:2.65rem;height:2.35rem;animation-delay:80ms}& .skel-meta{width:72%;max-width:16rem;animation-delay:.12s}& .skel-tagline{width:88%;max-width:22rem;height:.85rem;animation-delay:.18s}& .skel-short{width:48%;max-width:11rem}& .badges.skel-badges{border-top:.0625rem solid var(--divider,transparent);flex-wrap:wrap;gap:.45rem;margin:.15rem 0 0;padding:.65rem 0 0;list-style:none;display:flex}& .skel-chip{border-radius:50rem;width:5.5rem;height:1.85rem;animation-delay:.22s}& .skel-chip-wide{width:7.25rem;animation-delay:.28s}& .card-foot{justify-content:flex-end}& .skel-cta{width:9.5rem;height:var(--hit-min,2.75rem);background:color-mix(in srgb, var(--heading), transparent 86%);border-radius:50rem;animation-delay:.32s}}& h3{margin:0 0 .2em}& p{margin:0}& ul{margin:0;padding-left:1.2em}& .booking-studio-intro{margin-bottom:var(--space-4,1rem);text-align:center;& h3{letter-spacing:-.025em;margin:0 0 .55rem;font-size:1.32rem;font-weight:700;line-height:1.2}& p{color:var(--textSecondary,var(--text));max-width:44ch;margin:0;font-size:.95rem;line-height:1.6}}& .booking-context-chip{border:.0625rem solid var(--divider,var(--subtleBorder,transparent));background:var(--surface-2,var(--chipFill,var(--softCardBg)));max-width:100%;box-shadow:none;color:var(--heading,var(--text));border-radius:50rem;align-items:center;gap:.4rem;margin:.15rem 0 .35rem;padding:.5rem .95rem;font-size:.88rem;font-weight:650;line-height:1.3;display:inline-flex}& .booking-empty{margin:var(--space-5) 0;text-align:center;border-radius:var(--cardRadius,var(--panelRadius,1.15rem));border:.0625rem solid color-mix(in srgb, var(--heading) 12%, transparent);background:color-mix(in srgb, var(--surface-1,#fff) 90%, var(--surface-2,var(--chipFill,var(--softCardBg))));box-shadow:0 .0625rem .125rem color-mix(in srgb, var(--heading) 5%, transparent), 0 .625rem 1.75rem color-mix(in srgb, var(--heading) 6%, transparent);color:var(--text);flex-direction:column;align-items:center;gap:.85rem;padding:clamp(1.35rem,4vw,2.1rem) clamp(1.05rem,3vw,1.6rem);font-size:.92rem;line-height:1.55;display:flex}& .booking-empty-icon{background:color-mix(in srgb, var(--heading), transparent 90%);border:.0625rem solid color-mix(in srgb, var(--heading) 14%, transparent);width:2.75rem;height:2.75rem;box-shadow:0 0 0 .25rem color-mix(in srgb, var(--heading) 6%, transparent);border-radius:50rem;place-items:center;display:grid}& .booking-empty-icon:before{content:"";border:.125rem solid var(--heading);width:1.1rem;height:1.1rem;box-shadow:inset 0 -.35rem 0 color-mix(in srgb, var(--heading) 22%, transparent);border-radius:.25rem}& .booking-empty--error .booking-empty-icon{background:#cc44441f;border-color:#cc444447;box-shadow:0 0 0 .25rem #cc444414}& .booking-empty--error .booking-empty-icon:before{content:"!";width:1.15rem;height:1.15rem;box-shadow:none;color:#a32d2d;background:#bb33332e;border:none;border-radius:50rem;place-items:center;font-size:.85rem;font-weight:800;line-height:1;display:grid}& .booking-empty p{max-width:22rem;color:var(--textSecondary,var(--textMuted,var(--text)));margin:0;font-weight:550}& .booking-empty-retry{text-align:center;white-space:nowrap;border:.0625rem solid var(--heading);background:var(--heading);min-width:8.5rem;max-width:100%;height:auto;min-height:2.75rem;color:var(--uiBackground,#fff);line-height:1.25;font:inherit;cursor:pointer;touch-action:manipulation;box-shadow:0 .0625rem .125rem color-mix(in srgb, var(--heading) 16%, transparent), 0 .375rem .875rem color-mix(in srgb, var(--heading) 10%, transparent);transition:transform var(--motion-fast), opacity var(--motion-fast), background var(--motion-fast);border-radius:50rem;justify-content:center;align-items:center;padding:.55rem 1.25rem;font-weight:650;display:inline-flex}& .booking-empty-retry:hover{background:color-mix(in srgb, var(--heading), #000 8%)}& .booking-empty-retry:focus-visible{outline:var(--focus-outline,.125rem solid var(--heading));outline-offset:.125rem}& .booking-empty-retry:active{transform:scale(.98)}& .booking-empty-retry:disabled{opacity:.55;cursor:wait;box-shadow:none}& .booking-slots-skeleton{flex-direction:column;gap:.9rem;padding:.15rem 0 .35rem;display:flex}& .booking-skeleton-rail{gap:.5rem;display:flex;overflow:hidden}& .booking-skeleton-rail .sk-chip{background:color-mix(in srgb, var(--text), transparent 92%);border-radius:.95rem;flex:0 0 5.6rem;height:3.35rem;animation:1.2s ease-in-out infinite booking-skel;display:block}& .booking-skeleton-rail .sk-chip:nth-child(2){animation-delay:.1s}& .booking-skeleton-rail .sk-chip:nth-child(3){animation-delay:.2s}& .booking-skeleton-rail .sk-chip:nth-child(4){animation-delay:.3s}& .booking-skeleton-cal{border-radius:var(--cardRadius,1.05rem);border:.0625rem solid var(--divider,var(--subtleBorder,transparent));background:var(--elevatedFill,var(--uiBackground));box-shadow:0 .0625rem .125rem color-mix(in srgb, var(--heading) 4%, transparent);flex-direction:column;gap:.7rem;padding:1rem 1.05rem 1.1rem;display:flex}& .booking-skeleton-cal .sk-head{background:color-mix(in srgb, var(--text), transparent 90%);border-radius:.45rem;width:42%;height:1.35rem;animation:1.2s ease-in-out infinite booking-skel;display:block}& .booking-skeleton-cal .sk-week{grid-template-columns:repeat(7,1fr);gap:.35rem;display:grid}& .booking-skeleton-cal .sk-week span{background:color-mix(in srgb, var(--text), transparent 93%);border-radius:.3rem;height:.7rem;animation:1.2s ease-in-out infinite booking-skel;display:block}& .booking-skeleton-cal .sk-grid{grid-template-columns:repeat(7,1fr);gap:.4rem;display:grid}& .booking-skeleton-cal .sk-grid span{aspect-ratio:1;background:color-mix(in srgb, var(--text), transparent 92%);border-radius:.55rem;animation:1.2s ease-in-out infinite booking-skel;display:block}& .booking-skeleton-cal .sk-grid span:nth-child(3n){animation-delay:.12s}& .booking-skeleton-day-panel{border-radius:var(--cardRadius,1.05rem);border:.0625rem solid var(--divider,var(--subtleBorder,transparent));background:var(--elevatedFill,var(--uiBackground));flex-direction:column;gap:.75rem;padding:1rem 1.1rem;display:flex}& .booking-skeleton-day-panel .sk-day-title{background:color-mix(in srgb, var(--text), transparent 90%);border-radius:.4rem;width:55%;height:1.1rem;animation:1.2s ease-in-out infinite booking-skel;display:block}& .booking-skeleton-rows{flex-direction:column;gap:.5rem;display:flex}& .booking-skeleton-rows span{background:color-mix(in srgb, var(--text), transparent 92%);border-radius:.85rem;height:2.65rem;animation:1.2s ease-in-out infinite booking-skel;display:block}& .booking-skeleton-rows span:nth-child(2){width:88%;animation-delay:.15s}& .booking-skeleton-rows span:nth-child(3){width:72%;animation-delay:.3s}& .booking-studio-list{flex-direction:column;gap:1.05rem;width:100%;padding-bottom:.35rem;display:flex}& .booking-studio-card{--brandPrimary:linear-gradient(155deg, color-mix(in srgb, var(--heading), white 8%) 0%, var(--heading) 100%);text-align:left;border-radius:calc(var(--cardRadius,1.05rem) + .05rem);background:var(--surface-1,var(--elevatedFill,var(--uiBackground)));width:100%;box-shadow:var(--softShadow,var(--nestedShadow));cursor:pointer;transition:border-color var(--motion-fast), box-shadow var(--motion-fast), transform var(--motion-fast), background var(--motion-fast);touch-action:manipulation;border:.0625rem solid #0000;flex-direction:column;gap:0;padding:0;font-size:.95em;font-weight:400;line-height:1.4;display:flex;position:relative;overflow:hidden;&:hover{border-color:color-mix(in srgb, var(--heading), transparent 88%);background:var(--surface-1,var(--elevatedFill));box-shadow:var(--floatShadow,var(--softShadow));transform:translateY(-.125rem)}&:active{box-shadow:var(--nestedShadow,none);transform:translateY(0)}&:focus-visible{outline:var(--focus-outline);outline-offset:.125rem;box-shadow:var(--focus-ring)}&.is-verified{border-color:color-mix(in srgb, var(--heading), transparent 90%)}& .card-select{z-index:1;border-radius:inherit;cursor:pointer;background:0 0;border:0;margin:0;padding:0;position:absolute;inset:0}& .card-select:focus{outline:none}& .card-select:focus-visible{outline:var(--focus-outline);outline-offset:.125rem}& .meta-link,& .cta{z-index:2;position:relative}& .card-top{flex-wrap:wrap;align-items:stretch;gap:1.1rem 1.25rem;padding:1.15rem 1.2rem 1rem;display:flex}& .logo{background:var(--brandPrimary);width:9.5em;min-height:7.25em;color:var(--uiBackground);text-align:center;text-shadow:none;border:none;border-radius:.85rem;flex:none;place-content:center;gap:.3em;padding:.65em .55em;display:grid;box-shadow:inset 0 .0625rem #ffffff40;& strong{text-overflow:ellipsis;letter-spacing:-.02em;max-width:100%;font-size:1.02em;font-weight:700;line-height:1.15;overflow:hidden}& small{color:var(--uiBackground);font-size:.62em;font-weight:500}}& .body{min-width:0;color:var(--text);flex-direction:column;flex:14em;gap:.7rem;display:flex}& .title-row{flex-wrap:wrap;gap:.55rem .85rem;display:flex}& h4{letter-spacing:-.02em;min-width:0;color:var(--heading,var(--text));flex-wrap:wrap;flex:10rem;align-items:center;gap:.45em .55em;margin:0;font-size:1.2em;font-weight:650;line-height:1.25;display:flex}& .pill{letter-spacing:.02em;white-space:nowrap;color:var(--heading);background:var(--surface-2,var(--chipFill,var(--softCardBg)));vertical-align:middle;border:none;border-radius:50rem;align-items:center;gap:.3em;padding:.22em .65em .22em .45em;font-size:.58em;font-weight:650;display:inline-flex}& .pill-icon{width:1.15em;height:1.15em;color:inherit;flex-shrink:0;line-height:0;display:inline-flex}& .pill-icon svg{width:100%;height:100%;display:block}& .pill-verified{background:var(--surface-2,var(--chipFill,var(--softCardBg)));color:var(--success,#3d9a5f)}& .score{flex-direction:row;flex-shrink:0;align-items:center;gap:.5rem;max-width:100%;margin-left:auto;display:inline-flex;& .score-title{letter-spacing:.02em;text-align:right;white-space:nowrap;color:var(--heading,var(--text));flex-shrink:0;font-size:1.05rem;font-weight:650;line-height:1.25}& b{background:var(--heading);min-width:2.65rem;min-height:2.35rem;color:var(--uiBackground);text-shadow:none;letter-spacing:-.02em;box-shadow:var(--buttonShadow,none);border-radius:.75rem;flex-shrink:0;justify-content:center;align-items:center;padding:.45em .7em;font-size:1em;font-weight:750;display:inline-flex}}& .meta-row{flex-direction:column;gap:.4rem;display:flex}& .meta{color:var(--text);flex-wrap:wrap;align-items:center;gap:.35rem .45rem;margin:0;font-size:.88em;line-height:1.4;display:flex}& .meta-icon{width:1em;height:1em;color:var(--heading);flex-shrink:0;display:inline-flex;& svg{width:100%;height:100%;display:block}}& .meta-link{color:var(--heading);border-bottom:.0625rem solid var(--heading);align-items:center;gap:.25rem;margin-left:.15rem;text-decoration:none;display:inline-flex;&:hover{border-bottom-color:var(--heading)}}& .tagline{color:var(--text);max-width:48ch;margin:0;font-size:.92em;line-height:1.5}& .badges{border-top:.0625rem solid var(--divider,transparent);flex-wrap:wrap;gap:.45rem .5rem;margin:.15rem 0 0;padding:.65rem 0 0;list-style:none;display:flex;& li{border:.0625rem solid var(--divider,var(--subtleBorder));letter-spacing:.01em;max-width:100%;min-height:1.85rem;color:var(--text);background:var(--surface-2,var(--chipFill,var(--softCardBg)));cursor:help;box-shadow:none;transition:background var(--motion-fast), border-color var(--motion-fast), color var(--motion-fast);border-radius:50rem;align-items:center;gap:.4rem;padding:.35rem .7rem .35rem .5rem;font-size:.78em;font-weight:600;line-height:1.25;display:inline-flex}& .badge-icon{width:1.2rem;height:1.2rem;color:var(--heading);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;& svg{width:.78rem;height:.78rem;display:block}}& .badge-label{min-width:0;color:inherit}& li.badge-primary{color:var(--heading);background:var(--surface-2,var(--chipFill,var(--softCardBg)));border-color:var(--divider,var(--subtleBorder));font-weight:650;& .badge-icon{color:var(--heading)}}& li.badge-secondary{color:var(--text);background:var(--surface-2,var(--chipFill,var(--softCardBg)));border-color:var(--divider,var(--subtleBorder));font-weight:550;& .badge-icon{color:var(--heading)}}}& .legal{border-top:.0625rem solid var(--divider,transparent);color:var(--text);grid-template-columns:minmax(6.5em,9.5em) 1fr;gap:.25em .85em;margin:.15rem 0 0;padding:.55rem 0 0;font-size:.78em;display:grid;& dt{color:var(--heading);margin:0;font-weight:600}& dd{word-break:break-word;color:var(--text);margin:0}}& .listed-notice{color:var(--text);margin:0;font-size:.82em;line-height:1.4}& .card-foot{border-top:.0625rem solid var(--divider,transparent);background:color-mix(in srgb, var(--surface-2,var(--chipFill)), transparent 40%);justify-content:flex-end;align-items:center;gap:.5rem;margin-top:auto;padding:.75rem 1.15rem .95rem;display:flex}& button.cta{min-height:var(--hit-min,2.75rem);font:inherit;letter-spacing:.01em;color:var(--uiBackground);background:var(--heading);box-shadow:var(--buttonShadow,var(--softShadow));cursor:pointer;touch-action:manipulation;transition:transform var(--motion-fast), box-shadow var(--motion-fast), background var(--motion-fast);border:none;border-radius:50rem;justify-content:center;align-items:center;gap:.45rem;margin:0;padding:.55rem 1.15rem .55rem 1.25rem;font-size:.9em;font-weight:700;line-height:1.2;display:inline-flex}& button.cta .cta-icon{width:1.15em;height:1.15em;transition:transform var(--motion-fast);flex-shrink:0;margin-inline-end:-.1em;display:inline-flex;& svg{width:100%;height:100%;display:block}}& button.cta:hover{background:color-mix(in srgb, var(--heading), white 8%);box-shadow:var(--floatShadow,var(--buttonShadow));text-decoration:none;transform:translateY(-.0625rem)}& button.cta:hover .cta-icon{transform:translate(.125rem)}& button.cta:active{box-shadow:var(--pressedButtonShadow,none);transform:translateY(0)}& button.cta:focus-visible{outline:var(--focus-outline);outline-offset:.125rem;box-shadow:var(--focus-ring)}}& #date-picker.booking-slot-picker{width:100%;min-width:0;max-width:none;box-shadow:0 .0625rem .125rem color-mix(in srgb, var(--heading) 4%, transparent), 0 .5rem 1.375rem color-mix(in srgb, var(--heading) 6%, transparent);border-radius:var(--cardRadius,1.05rem);border:.0625rem solid var(--divider,var(--subtleBorder,transparent));border-top:.1875rem solid var(--heading,var(--primary));background:var(--elevatedFill,var(--uiBackground));gap:.65rem;padding:1rem 1.05rem 1.15rem}& #date-picker.booking-slot-picker header{height:2.15rem;margin:0 0 .35rem}& #date-picker.booking-slot-picker header .title{flex:auto;min-width:0;position:static}& #date-picker.booking-slot-picker header .title span{letter-spacing:-.015em;color:var(--heading,var(--text));white-space:nowrap;font-size:.98rem;font-weight:700;position:static}& #date-picker.booking-slot-picker header button{width:2.1rem;height:2.1rem;color:var(--heading,var(--text));transition:background var(--motion-fast,.15s ease), transform var(--motion-fast,.15s ease);border-radius:50rem;place-items:center;font-size:1.45rem;display:inline-grid}& #date-picker.booking-slot-picker header button:hover{background:color-mix(in srgb, var(--heading), transparent 92%);scale:1}& #date-picker.booking-slot-picker header button:focus-visible{box-shadow:var(--focus-ring);outline:none}& #date-picker.booking-slot-picker .week-days,& #date-picker.booking-slot-picker .days{gap:.4rem}& #date-picker.booking-slot-picker .week-days span{letter-spacing:.06em;text-transform:uppercase;opacity:.65;color:var(--textSecondary,var(--textMuted,var(--text)));aspect-ratio:auto;border:none;width:auto;padding:.35em 0;font-size:.68rem;font-weight:700}& #date-picker.booking-slot-picker .days>span{box-sizing:border-box;aspect-ratio:1;font-variant-numeric:tabular-nums;isolation:isolate;border-width:.125rem;border-radius:.7rem;width:100%;min-width:0;max-width:none;height:auto;min-height:2.25rem;padding:.2rem;font-size:clamp(.8rem,2.4cqi,.92rem);font-weight:600;line-height:1;position:relative;overflow:visible}& #date-picker.booking-slot-picker .days{padding-top:.35rem;padding-right:.25rem;overflow:visible;container-type:inline-size}& #date-picker.booking-slot-picker .days-container{overflow:visible}& #date-picker.booking-slot-picker .days>span.older{opacity:.38;color:var(--textSecondary,var(--textMuted,var(--text)))}& #date-picker.booking-slot-picker .days>span.clickable{background:color-mix(in srgb, var(--heading) 10%, var(--elevatedFill,#fff));color:var(--heading,var(--text));text-shadow:none;box-shadow:none;font-weight:700;&:has(.is-selected-day){box-shadow:inset 0 0 0 .125rem var(--heading)}}& #date-picker.booking-slot-picker .days>span.clickable:hover{background:color-mix(in srgb, var(--heading) 16%, var(--elevatedFill,#fff));z-index:2;border-radius:.7rem;scale:1.02}& #date-picker.booking-slot-picker .days>span.clickable:focus-visible{box-shadow:var(--focus-ring);outline:none}& #date-picker.booking-slot-picker .days>span.current{border-color:var(--heading,var(--primary));box-shadow:0 0 0 .0625rem color-mix(in srgb, var(--heading), transparent 55%)}& #date-picker.booking-slot-picker .days>span.current.clickable{background:var(--heading);color:var(--elevatedFill,var(--uiBackground));box-shadow:0 .0625rem .125rem color-mix(in srgb, var(--heading) 20%, transparent), 0 .375rem .875rem color-mix(in srgb, var(--heading) 16%, transparent);&:has(.is-selected-day){box-shadow:inset 0 0 0 .125rem var(--elevatedFill,var(--uiBackground))}}& #date-picker.booking-slot-picker .days>span>.booking-day-count{box-sizing:border-box;aspect-ratio:1;font-variant-numeric:tabular-nums;letter-spacing:-.02em;border:.0938rem solid var(--elevatedFill,var(--uiBackground));background:var(--heading,var(--primary));width:1.5rem;height:1.5rem;min-height:0;color:var(--elevatedFill,var(--uiBackground));box-shadow:0 .0625rem .125rem color-mix(in srgb, var(--heading) 20%, transparent);text-shadow:none;pointer-events:none;opacity:1;border-radius:50%;align-self:auto;place-items:center;margin:0;padding:0;font-size:.55rem;font-weight:750;line-height:1;display:grid;position:absolute;inset:-.5rem -.5rem auto auto;overflow:hidden;z-index:100000001!important;flex:none!important;transform:scale(1)!important}& #date-picker.booking-slot-picker .days>span>.booking-day-count.is-busy{background:color-mix(in srgb, var(--heading) 88%, #000)}& #date-picker.booking-slot-picker .days>span>.booking-day-count.is-selected-day{background:var(--elevatedFill,var(--uiBackground));color:var(--heading,var(--text));border-color:color-mix(in srgb, var(--elevatedFill,#fff) 40%, var(--heading));box-shadow:0 .0625rem .125rem #0000002e}& #date-picker.booking-slot-picker .date-details-count,& #date-picker.booking-slot-picker .date-details-popup,& #date-picker.booking-slot-picker .days span:hover .date-details-popup,& #date-picker.booking-slot-picker .days span.clickable:hover .date-details-popup{opacity:0!important;pointer-events:none!important;visibility:hidden!important;border:none!important;width:0!important;height:0!important;margin:0!important;padding:0!important;font-size:0!important;display:none!important;overflow:hidden!important}& .booking-slot-list{grid-template-columns:repeat(auto-fill,minmax(6.5rem,1fr));gap:.75em;width:100%;display:grid}& .booking-slot.is-selected{--background:color-mix(in srgb, var(--primary) 18%, var(--uiBackground));border-color:var(--primary)}& .booking-contact-fields{letter-spacing:-.01em;flex-direction:column;align-items:stretch;gap:.85rem;width:100%;max-width:28rem;margin-top:.25rem;font-size:.88rem;font-weight:600;display:flex;& label{border-radius:var(--cardRadius,1rem);background:var(--chipFill,var(--softCardBg));width:100%;box-shadow:none;font:inherit;color:var(--text);border:none;flex-direction:column;gap:.45rem;margin:0;padding:.85rem 1rem;display:flex}& fieldset.phone-input,& .email-field-control{width:100%;min-inline-size:0;font-weight:400}& label.phone-field,& label.email-field{font-weight:600}}& .booking-empty--error .generic-error{max-width:none;margin:0}& .booking-empty--error .generic-error-icon{display:none}& .booking-confirm-summary{border-radius:var(--cardRadius,1rem);border:.0625rem solid var(--divider,var(--subtleBorder,transparent));background:var(--surface-2,var(--chipFill,var(--softCardBg)));box-shadow:none;flex-direction:column;gap:.55rem;max-width:28rem;margin:.35rem 0 0;padding:1.05rem 1.15rem;list-style:none;display:flex;& li{color:var(--text);margin:0;font-size:.95rem;line-height:1.5}& li strong{color:var(--heading,var(--text));font-weight:700}}}}}html[data-shell=smartphone] aside#chat #booking-wrapper.form-wrapper .booking-form{& .progress-shell{padding:0 var(--space-4)}& .progress{padding:0}& .booking-step-body{padding:.65rem 1rem 1rem;&>h3{max-width:none;font-size:1.15rem}}& .booking-studio-list{gap:.95rem}& .booking-studio-card{& .card-top{flex-direction:column;gap:.9rem;padding:1rem 1rem .85rem}& .logo{border-radius:.75rem;width:100%;max-width:none;min-height:4.75em}& .body{flex:auto;gap:.65rem;width:100%}& .title-row{flex-direction:column;align-items:stretch;gap:.55rem}& h4{font-size:1.12em}& .score{flex-direction:row;align-items:center;gap:.45rem;margin-left:auto;& .score-title{text-align:right;white-space:nowrap;flex-shrink:0;max-width:none;font-size:.85rem}& b{min-width:2.75rem;min-height:2.5rem}}& .badges{gap:.4rem;padding-top:.55rem;& li{min-height:2rem;padding:.4rem .75rem .4rem .5rem;font-size:.8em}& .badge-icon{width:1.3rem;height:1.3rem;& svg{width:.85rem;height:.85rem}}}& .card-foot{justify-content:stretch;padding:.75rem 1rem .9rem}& button.cta{width:100%;min-height:2.85rem;font-size:.95em}&.is-skeleton{& .logo.skel-block{border-radius:.75rem;width:100%;min-height:4.75em}& .title-row{flex-direction:row;align-items:center;gap:.55rem}& .skel-score{margin-left:auto}& .card-foot{justify-content:stretch}& .skel-cta{width:100%;min-height:2.85rem}}}& .booking-contact-fields{max-width:none}& .form-actions{padding:.75rem .85rem max(.75rem, env(safe-area-inset-bottom,0));text-align:center;flex-direction:column;justify-content:center;align-items:stretch;gap:.45rem;font-size:.95rem;& button,& .button{text-align:center;flex:none;justify-content:center;width:100%;min-width:0;margin:0;padding:.55rem .85rem}& button[data-direction=back]{flex:none;margin:0}}}html[data-shell=smartphone]{& aside#chat #booking-wrapper.form-wrapper .booking-form{& .booking-day-slots-grid{grid-template-columns:repeat(auto-fill,minmax(4rem,1fr));gap:.4rem}& .booking-day-slots-grid button,& .booking-day-slots-grid .booking-slot-btn{min-width:0;min-height:2.5rem;padding:.4rem .5rem;font-size:.88rem}& .booking-day-chip{min-width:5.1rem;min-height:3.15rem}& .booking-calendar-studio-name{max-width:12rem}& .booking-confirm-summary{max-width:none}}}@media (prefers-reduced-motion:reduce){aside#chat #booking-wrapper.form-wrapper .booking-form{& .form-actions button,& .booking-studio-card,& .booking-day-chip,& .booking-day-nav-btn,& .booking-day-slots-grid button,& .booking-day-slots-grid .booking-slot-btn,& #date-picker.booking-slot-picker .days>span,& #date-picker.booking-slot-picker header button{transition:none;transform:none}& .booking-skeleton-cal .sk-head,& .booking-skeleton-cal .sk-grid span,& .booking-skeleton-cal .sk-week span,& .booking-skeleton-rows span,& .booking-skeleton-rail .sk-chip,& .booking-skeleton-day-panel .sk-day-title{animation:none}}}@keyframes booking-skel{0%,to{opacity:.55}50%{opacity:1}}html[data-shell=smartphone] .ui-tip,html[data-shell=smartphone] .ui-tip.on{opacity:0!important;display:none!important}.ui-tip{z-index:var(--z-toast,10060);pointer-events:none;background:color-mix(in srgb, var(--heading,#1a1a1a) 92%, transparent);max-width:min(92vw,18rem);color:var(--uiBackground,#fff);letter-spacing:.01em;box-shadow:var(--softShadow,0 .375rem 1.25rem #0000002e);opacity:0;white-space:normal;word-break:break-word;border-radius:.45em;padding:.45em .75em;font-size:.78em;font-weight:500;line-height:1.35;transition:opacity .1s;position:fixed;transform:translate(-50%,calc(-100% - .55rem))}.ui-tip.on{opacity:1}[data-theme=dark] .ui-tip{background:color-mix(in srgb, var(--elevatedFill,#f0f1f3) 95%, white);color:var(--heading,#121416)}label.email-field{flex-direction:column;gap:.45rem;width:100%;min-width:0;margin:0;display:flex}.email-field-label{font:inherit;letter-spacing:-.01em;color:var(--heading,var(--text));font-weight:600}.email-field-hint{color:var(--textMuted,var(--textTertiary,var(--text)));margin:0;font-size:.9em;font-weight:400;line-height:1.4}.email-field-control{border:.0625rem solid var(--inputBorder,var(--subtleBorder));border-radius:var(--controlRadius,.95rem);background:var(--softInputBg,var(--surface-2));width:100%;min-width:0;box-shadow:var(--inputShadow,none);transition:border-color var(--motion-fast,.16s ease), box-shadow var(--motion-fast,.16s ease), background-color var(--motion-fast,.16s ease);flex-direction:row;align-items:stretch;margin:0;padding:0;display:flex;overflow:hidden;&:hover{border-color:var(--inputBorderHover,var(--inputBorder))}&:focus-within{border-color:var(--inputBorderFocus,var(--heading));box-shadow:var(--inputFocusRing,var(--focus-ring));background-color:var(--surface-1,var(--elevatedFill,var(--softInputBg)))}&:has(input:disabled){opacity:.78;cursor:not-allowed;&:hover{border-color:var(--inputBorder,var(--subtleBorder))}}:is(&:has(input:user-invalid:not(:placeholder-shown)),&:has(input:user-invalid:focus)){border-color:var(--danger);background-color:color-mix(in srgb, var(--danger) 12%, var(--softInputBg,var(--surface-2)));box-shadow:var(--inputInvalidRing)}}input.email-field-input{width:100%;min-width:0;min-height:var(--control-h,2.75rem);height:auto;box-shadow:none;color:var(--heading,var(--text));font:inherit;letter-spacing:.01em;font-variant-ligatures:none;background-color:#0000;background-image:none;background-position:right .85rem center;background-repeat:no-repeat;background-size:1.1rem;border:none;border-radius:0;flex:auto;margin:0;padding:.55rem .95rem;font-weight:400;line-height:1.35;display:block;&::placeholder{color:var(--textTertiary,var(--textMuted,var(--text)));opacity:.55;letter-spacing:.01em}&:hover,&:focus,&:focus-visible{box-shadow:none;background-color:#0000;border:none;outline:none}&:user-invalid{background-blend-mode:normal;background-color:#0000;background-image:url(/i/alert.svg);background-position:right .85rem center;background-repeat:no-repeat;background-size:1.1rem;padding-right:2.4rem}&:valid:not(:placeholder-shown){background-image:url(/i/check-double.svg);background-position:right .85rem center;background-repeat:no-repeat;background-size:1.1rem;padding-right:2.4rem}&:disabled{cursor:not-allowed;opacity:1;background-image:none}}[data-theme=dark] input.email-field-input:valid:not(:placeholder-shown){background-image:url(/i/check-double-light.svg)}[data-theme=dark] input.email-field-input:user-invalid{background-image:url(/i/alert-light.svg)}html[data-shell=smartphone]{& input.email-field-input{padding-inline:.75rem;font-size:.95em}}label.phone-field{flex-direction:column;gap:.45rem;width:100%;min-width:0;margin:0;display:flex}.phone-field-label{font:inherit;letter-spacing:-.01em;color:var(--heading,var(--text));font-weight:600}.phone-field-hint{color:var(--textMuted,var(--textTertiary,var(--text)));margin:0;font-size:.9em;font-weight:400;line-height:1.4}fieldset.phone-input{width:100%;min-width:0;border:.0625rem solid var(--inputBorder,var(--subtleBorder));border-radius:var(--controlRadius,.95rem);background:var(--softInputBg,var(--surface-2));min-inline-size:0;box-shadow:var(--inputShadow,none);transition:border-color var(--motion-fast,.16s ease), box-shadow var(--motion-fast,.16s ease), background-color var(--motion-fast,.16s ease);flex-direction:row;align-items:stretch;gap:0;margin:0;padding:0;display:flex;overflow:hidden;&:hover{border-color:var(--inputBorderHover,var(--inputBorder))}&:focus-within{border-color:var(--inputBorderFocus,var(--heading));box-shadow:var(--inputFocusRing,var(--focus-ring));background-color:var(--surface-1,var(--elevatedFill,var(--softInputBg)))}&:has(input:user-invalid){border-color:var(--danger);background-color:color-mix(in srgb, var(--danger) 12%, var(--softInputBg,var(--surface-2)));box-shadow:var(--inputInvalidRing)}& select.phone-input-country,& input.phone-input-number{box-shadow:none;min-height:var(--control-h,2.75rem);height:auto;color:var(--heading,var(--text));font:inherit;background-color:#0000;background-image:none;border:none;border-radius:0;margin:0;font-weight:400;line-height:1.35;transition:none;display:block;&:hover,&:focus,&:focus-visible{box-shadow:none;background-color:#0000;border:none;outline:none}}& select.phone-input-country{font-variant-numeric:tabular-nums;letter-spacing:.03em;text-transform:uppercase;cursor:pointer;border-inline-end:.0625rem solid var(--divider,var(--subtleBorder,transparent));touch-action:manipulation;background-image:url(/i/expander.svg);background-position:right .55rem center;background-repeat:no-repeat;background-size:.7rem;flex:none;width:auto;min-width:3.5rem;max-width:4.75rem;padding:.55rem 1.65rem .55rem .7rem;font-weight:650;[data-theme=dark] &{filter:none;background-image:url(/i/expander-light.svg)}& option{text-transform:none;letter-spacing:0;font-weight:500}}& input.phone-input-number{font-variant-numeric:tabular-nums;letter-spacing:.02em;flex:auto;width:auto;min-width:0;padding:.55rem 2.5rem .55rem .75rem;&::placeholder{color:var(--textTertiary,var(--textMuted,var(--text)));opacity:.55;letter-spacing:.04em}}}html[data-shell=smartphone]{& fieldset.phone-input{flex-direction:row;& select.phone-input-country{width:auto;min-width:3.15rem;max-width:4.25rem;padding-inline:.5rem 1.35rem;font-size:.88em}& input.phone-input-number{letter-spacing:0;padding-inline:.5rem 2.6rem;font-size:.85em}}}section#date-picker{--border-color:var(--primary);--active-color:color-mix(in srgb, var(--primary), white 20%);box-sizing:border-box;background:color-mix(in srgb, var(--background), var(--text) 2%);border:none;border-top:.1875rem solid var(--primary);border-radius:.3em;flex-direction:column;gap:1em;width:100%;min-width:min(25.625rem,100%);max-width:25%;padding:1.5em;line-height:1.2em;transition:all .2s;position:relative;&.hidden{border:none;height:0;padding:0;overflow:hidden}&[data-mode=range]{box-shadow:var(--heavy-shadow)}& header{justify-content:space-between;align-items:center;height:2em;margin:0 0 1em;display:flex;position:relative;& .title{justify-content:center;align-items:center;margin:0 auto;display:flex;position:relative;& span{white-space:nowrap;font-weight:500;position:absolute;inset:auto}}& button{color:inherit;height:inherit;font-size:2em;line-height:inherit;cursor:pointer;user-select:none;text-shadow:inherit;box-shadow:none;background:0 0;border:none;outline:none;padding:0;transition:all .2s;&:hover{scale:1.15}&:active{scale:.85}}}& .days-container{&.reverse{flex-direction:row-reverse}}& .week-days,& .days{grid-template-columns:repeat(7,1fr);gap:.5em;display:grid;&.days[inert]{position:absolute}&>:is(span,button){aspect-ratio:1/.7;width:2rem;font:inherit;color:inherit;appearance:none;background:0 0;border:.1875rem solid #0000;border-radius:.5em;justify-content:center;align-items:center;padding:.5em 1.25em;transition:all .2s;display:inline-flex;position:relative;&.older{color:var(--text)}&.current{border-color:var(--border-color)}&.clickable{color:#fff;text-shadow:0 .0625rem #0005;cursor:pointer;background:var(--active-color);box-shadow:0 .05em .2em color-mix(in srgb, var(--active-color), transparent 70%);font-weight:700;&:hover{background:color-mix(in srgb, var(--active-color), red 40%);border-radius:.15em;scale:1.05}}& .date-details-count{background:var(--background);color:var(--text);z-index:2;box-shadow:var(--heavy-shadow);border:.0625rem solid var(--primary);text-shadow:none;border-radius:50%;justify-content:center;align-items:center;font-size:.8em;font-weight:600;transition:all .3s;display:flex;position:absolute;top:-1em;right:-1em}& .date-details-popup{background:var(--background);width:100%;height:100%;box-shadow:var(--heavy-shadow);color:var(--text);text-shadow:none;border:.125rem solid var(--primary);opacity:0;text-align:left;border-radius:.3em;flex-direction:column;padding:1em;font-size:0;transition:all .3s;display:flex;position:absolute;overflow:hidden;& button{height:inherit;line-height:inherit;box-shadow:none;letter-spacing:0;background:0 0;border:none;padding:0;transition:none;position:static}}&:hover{z-index:10;& .date-details-count{opacity:0}& .date-details-popup{opacity:1;width:fit-content;height:fit-content;font-size:1rem;overflow:visible}}}&.week-days{user-select:none;& span{text-transform:capitalize;font-weight:600}}}}html[data-shell=smartphone]{& section#date-picker{gap:.65em;width:100%;min-width:0;max-width:none;padding:1rem .75rem}}html[data-shell=smartphone]{& section#date-picker{padding:.85rem .5rem}& section#date-picker .days,& section#date-picker .week-days{text-align:center;& span{padding:.25em}}}.init-kitchen-estimate{background:var(--surface-1,var(--elevatedFill,var(--uiBackground)));border-top:.0625rem solid var(--divider,transparent);flex-direction:row;align-items:baseline;gap:.65rem;margin:.15rem 0 0;padding:.7rem 0 .15rem;font-size:.9em;line-height:1.3;display:flex}.init-kitchen-estimate .label{min-width:0;color:var(--textSecondary,var(--textMuted));flex:auto;font-size:.72rem;font-weight:550;line-height:1.25}.init-kitchen-estimate strong{font-variant-numeric:tabular-nums;letter-spacing:-.02em;white-space:nowrap;flex:none;margin-left:auto;font-weight:650}.init-kitchen-estimate[data-over-budget=true] strong{color:var(--danger,#b42318)}.estimates>.init-kitchen-estimate{box-shadow:none;background:0 0;border:none;margin:0;padding:0}aside#chat fieldset#plan .init-kitchen-estimate,aside#chat fieldset#budget .init-kitchen-estimate{z-index:12;box-shadow:0 -.65rem .7rem color-mix(in srgb, var(--surface-1,#fff) 88%, transparent);flex:none;margin:0;padding:.55rem 0 0}aside#chat fieldset#plan>.estimates{z-index:12;background:var(--surface-1,var(--elevatedFill,var(--uiBackground)));border-top:.0625rem solid var(--divider,transparent);box-shadow:0 -.65rem .7rem color-mix(in srgb, var(--surface-1,#fff) 88%, transparent);flex-direction:column;flex:none;gap:.45rem;margin:0;padding:.55rem 0 .25rem;display:flex}html[data-shell=smartphone] aside#chat fieldset#plan .init-kitchen-estimate,html[data-shell=smartphone] aside#chat fieldset#budget .init-kitchen-estimate{text-align:left;flex-direction:column;align-items:flex-start;gap:.15rem;width:100%;min-width:0;padding:.4rem 0 .15rem}html[data-shell=smartphone] aside#chat fieldset#plan>.estimates{text-align:left;width:100%;min-width:0;padding:.4rem 0 0}html[data-shell=smartphone] aside#chat fieldset#budget .init-kitchen-estimate strong,html[data-shell=smartphone] aside#chat fieldset#plan .init-kitchen-estimate strong{margin-left:0}.appliances{flex-direction:column;gap:.85rem;min-inline-size:0;display:flex}.appliances .estimates,.appliances+.estimates{background:var(--surface-1,var(--elevatedFill,var(--uiBackground)));border-top:.0625rem solid var(--divider,transparent);flex-direction:column;flex:none;gap:.45rem;min-inline-size:0;margin-top:.15rem;padding:.7rem 0 .15rem;display:flex}aside#chat fieldset#budget .appliances{min-height:0;min-inline-size:0;flex-direction:column;flex:auto;width:100%;max-width:100%;display:flex;overflow:hidden}aside#chat fieldset#budget .appliances .stack{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:auto;min-height:0;overflow:auto}aside#chat fieldset#budget .appliances ul{flex:none;overflow:visible}aside#chat fieldset#budget .appliances .estimates,aside#chat fieldset#budget .appliances+.estimates{z-index:12;box-shadow:0 -.65rem .7rem color-mix(in srgb, var(--surface-1,#fff) 88%, transparent);flex:none;margin:0;padding:.55rem 0 .25rem}.appliances .estimate,.appliances+.estimates .estimate{background:0 0;flex-direction:row;align-items:baseline;gap:.65rem;margin:0;padding:0;font-size:.9em;line-height:1.3;display:flex}.appliances .estimate .label,.appliances+.estimates .estimate .label{min-width:0;color:var(--textSecondary,var(--textMuted));flex:auto;font-size:.72rem;font-weight:550;line-height:1.25}.appliances .estimate strong,.appliances+.estimates .estimate strong{font-variant-numeric:tabular-nums;letter-spacing:-.02em;white-space:nowrap;color:var(--heading,#1a1a1a);flex:none;margin-left:auto;font-size:.92rem;font-weight:650}.appliances .estimate[data-over-budget=true] strong,.appliances+.estimates .estimate[data-over-budget=true] strong{color:var(--danger,#b42318)}.appliances .estimate .count,.appliances+.estimates .estimate .count{font-variant-numeric:tabular-nums;background:color-mix(in srgb, var(--heading,#1a1a1a), transparent 90%);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;min-width:1.35em;padding:.05em .4em;font-size:.72em;font-weight:650;display:inline-flex}.appliances ul{flex-direction:column;gap:.7rem;margin:0;padding:0;list-style:none;display:flex}.appliances ul li,.appliances ul li::marker,.appliances ul li:before{content:none;list-style:none}.appliances fieldset{border:none;flex-direction:column;gap:.35rem;min-inline-size:0;margin:0;padding:0;display:flex}.appliances legend{letter-spacing:.01em;color:var(--textSecondary,var(--textMuted));margin:0 0 .1rem;padding:0;font-size:.82rem;font-weight:650}.appliances .tiles{min-inline-size:0;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:.4rem;width:100%;display:grid}.appliances .tile{flex-direction:column;flex:unset;cursor:pointer;box-shadow:none;border-radius:var(--cardRadius,1.05rem);white-space:normal;text-align:center;min-width:0;max-width:none;color:var(--heading,#1a1a1a);transition:box-shadow var(--motion-fast,.16s ease), background var(--motion-fast,.16s ease);background:0 0;align-items:center;gap:.28rem;margin:0;padding:.45rem .25rem .4rem;display:flex;position:relative;overflow:hidden}.appliances .tile:hover{background:color-mix(in srgb, var(--surface-1,#fff) 8%, transparent)}.appliances .tile:has(input:checked){background:color-mix(in srgb, var(--surface-1,#fff) 12%, transparent);box-shadow:inset 0 0 0 .0938rem var(--heading,#1a1a1a)}.appliances .tile:has(input:focus-visible){box-shadow:var(--focus-ring,inset 0 0 0 .0938rem var(--heading))}.appliances .tile input{opacity:0;appearance:none;pointer-events:none;width:100%;height:100%;margin:0;position:absolute;inset:0}.appliances .tile .schematic{aspect-ratio:1;width:100%;height:auto;max-height:7.875rem;color:var(--heading,#1a1a1a);place-items:center;padding:0;line-height:0;display:grid}.appliances .tile .schematic img,.appliances .tile .schematic svg{object-fit:contain;pointer-events:none;width:100%;max-width:7.875rem;height:100%;max-height:7.875rem;margin:0 auto;display:block}.appliances .caption{letter-spacing:-.01em;color:var(--text);-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:100%;margin:0;font-size:.68rem;font-weight:650;line-height:1.2;display:-webkit-box;overflow:hidden}.appliances .note{color:var(--textTertiary,var(--textMuted));margin:.1rem 0 0;font-size:.75rem;line-height:1.4}aside#chat fieldset#budget .appliances ul,aside#chat fieldset#budget .appliances ul li{list-style:none}aside#chat fieldset#budget .appliances ul li:before{content:none}aside#chat fieldset#budget .appliances .tiles{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}aside#chat fieldset#budget .appliances .tile{flex-direction:column;flex:unset;align-items:center;gap:.28rem;min-width:0;max-width:none;display:flex}aside#chat fieldset#budget .appliances label.tile{flex-direction:column}html[data-shell=smartphone] aside#chat fieldset#budget .appliances,html[data-shell=smartphone] aside#chat fieldset#budget .appliances .stack,html[data-shell=smartphone] aside#chat fieldset#budget .appliances ul{flex:none;overflow:visible}html[data-shell=smartphone] aside#chat fieldset#budget .appliances .tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem;width:100%;display:grid}html[data-shell=smartphone] aside#chat fieldset#budget .appliances .tile{touch-action:manipulation;flex:unset;max-width:none;min-height:var(--hit-min,2.75rem);padding:.4rem .2rem .35rem}html[data-shell=smartphone] aside#chat fieldset#budget .appliances .tile .schematic{height:auto;max-height:4.5rem}html[data-shell=smartphone] aside#chat fieldset#budget .appliances .tile .schematic img,html[data-shell=smartphone] aside#chat fieldset#budget .appliances .tile .schematic svg{width:auto;max-width:4.5rem;height:auto;max-height:4.5rem}html[data-shell=smartphone] aside#chat fieldset#budget .appliances .caption{font-size:.64rem}html[data-shell=smartphone] aside#chat fieldset#budget .appliances+.estimates{z-index:12;background:var(--surface-1,var(--elevatedFill,var(--uiBackground)));width:100%;min-width:0;box-shadow:0 -.65rem .7rem color-mix(in srgb, var(--surface-1,#fff) 88%, transparent);margin-top:auto;padding:.4rem 0 0;position:sticky;bottom:0}html[data-shell=smartphone] aside#chat fieldset#budget .appliances+.estimates .estimate{flex-direction:column;align-items:flex-start;gap:.15rem;width:100%;min-width:0}html[data-shell=smartphone] aside#chat fieldset#budget .appliances+.estimates .estimate .label{white-space:normal;text-overflow:ellipsis;flex:none;min-width:0;font-size:.64rem;overflow:hidden}html[data-shell=smartphone] aside#chat fieldset#budget .appliances+.estimates .estimate strong{flex:none;font-size:.84rem}html[data-shell=tablet] .appliances .tile .schematic{height:8.6625rem}html[data-shell=tablet] .appliances .tile .schematic img,html[data-shell=tablet] .appliances .tile .schematic svg{width:8.6625rem;height:8.6625rem}html[data-shell=tablet] .appliances .caption{font-size:.7rem}fieldset.budget-segment-radio{min-inline-size:0;color:var(--heading,#1a1a1a);border:none;order:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem .65rem;margin:0 0 .75rem;padding:0;display:grid;&>h3{letter-spacing:-.03em;color:var(--heading);grid-column:1/-1;margin:0 0 .35rem;font-size:1.05rem;font-weight:700;line-height:1.2}& label{cursor:pointer;min-width:0;position:relative;box-shadow:none!important;background:0 0!important;flex-direction:column!important;gap:0!important;margin:0!important;padding:0!important;display:flex!important;& input[type=radio]{opacity:0;pointer-events:none;width:.0625rem;height:.0625rem;position:absolute}& .content{border-radius:var(--cardRadius,1.05rem);width:100%;height:100%;box-shadow:none;text-align:center;min-height:5.25rem;transition:box-shadow var(--motion-fast,.16s ease), background var(--motion-fast,.16s ease);background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;padding:.85rem .55rem .75rem;display:flex;& .range{letter-spacing:-.03em;color:var(--heading);margin:0;font-size:1.05rem;font-weight:700;line-height:1.2}& p{letter-spacing:-.01em;color:var(--textSecondary,var(--textMuted));margin:0;font-size:.72rem;font-weight:650;line-height:1.25}}&:hover .content{background:color-mix(in srgb, var(--surface-1,#fff) 8%, transparent)}&:has(input[type=radio]:checked) .content{background:color-mix(in srgb, var(--surface-1,#fff) 12%, transparent);box-shadow:inset 0 0 0 .0938rem var(--heading)}&:has(input[type=radio]:focus-visible) .content{box-shadow:var(--focus-ring,inset 0 0 0 .0938rem var(--heading))}}}fieldset.worktop-material-radio{min-inline-size:0;width:100%;color:var(--heading,#1a1a1a);border:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem .65rem;margin:0;padding:0;display:grid;& legend{letter-spacing:.01em;color:var(--textSecondary,var(--textMuted));grid-column:1/-1;margin:0 0 .1rem;padding:0;font-size:.82rem;font-weight:650}& label{cursor:pointer;min-width:0;position:relative;box-shadow:none!important;background:0 0!important;flex-direction:column!important;gap:0!important;margin:0!important;padding:0!important;display:flex!important;& input[type=radio]{opacity:0;pointer-events:none;width:.0625rem;height:.0625rem;position:absolute}& .content{border-radius:var(--cardRadius,1.05rem);width:100%;height:100%;box-shadow:none;text-align:center;transition:box-shadow var(--motion-fast,.16s ease), background var(--motion-fast,.16s ease);background:0 0;border:none;flex-direction:column;align-items:stretch;gap:0;padding:0;display:flex;overflow:hidden;& .schematic{width:100%;color:var(--heading,#1a1a1a);aspect-ratio:8/5;background:0 0;padding:0;line-height:0;display:block}& .schematic img{object-fit:cover;object-position:center;pointer-events:none;width:100%;height:100%;margin:0;display:block}& p{letter-spacing:-.01em;color:var(--text);margin:0;padding:.35rem .4rem .4rem;font-size:.72rem;font-weight:650;line-height:1.25}}&:hover .content{background:color-mix(in srgb, var(--surface-1,#fff) 8%, transparent)}&:has(input[type=radio]:checked) .content{background:color-mix(in srgb, var(--surface-1,#fff) 12%, transparent);box-shadow:inset 0 0 0 .0938rem var(--heading)}&:has(input[type=radio]:focus-visible) .content{box-shadow:var(--focus-ring,inset 0 0 0 .0938rem var(--heading))}}}html[data-shell=smartphone] fieldset.worktop-material-radio{gap:.5rem}aside#chat #init-wrapper fieldset#geometry-input fieldset.worktop-material-radio{& label .content{padding:0}& label .content img{object-fit:cover;border-radius:0;width:100%;height:100%;margin:0}}.ceiling-cabinets-schematic{width:100%;height:auto;max-height:6.25rem;color:var(--heading,#1a1a1a);display:block}.ceiling-cabinets-schematic .cab{fill:currentColor;opacity:.9}.ceiling-cabinets-schematic .cab.upper{opacity:.88}.ceiling-cabinets-schematic .cab.loft{fill:color-mix(in srgb, currentColor 72%, transparent);stroke:currentColor;stroke-width:1.35px;stroke-dasharray:2.75 2;opacity:.95}.ceiling-cabinets-schematic .plinth{fill:color-mix(in srgb, currentColor 48%, transparent)}.ceiling-cabinets-schematic .worktop{fill:color-mix(in srgb, currentColor 22%, white 28%);stroke:none}.ceiling-cabinets-schematic .lip{stroke:color-mix(in srgb, currentColor 25%, transparent);stroke-width:.9px;stroke-linecap:square}.ceiling-cabinets-schematic .splash{fill:color-mix(in srgb, currentColor 4%, transparent);stroke:none}.ceiling-cabinets-schematic .joint{stroke:color-mix(in srgb, var(--surface-1,#fff) 74%, transparent);stroke-width:1.05px;stroke-linecap:square}.ceiling-cabinets-schematic .loft-j{stroke:color-mix(in srgb, currentColor 40%, transparent)}.ceiling-cabinets-schematic .tick{stroke:color-mix(in srgb, var(--surface-1,#fff) 40%, transparent);stroke-width:.8px;stroke-linecap:square}.ceiling-cabinets-schematic .void{fill:none;stroke:color-mix(in srgb, currentColor 28%, transparent);stroke-width:1.2px;stroke-dasharray:3 2.25}.ceiling-cabinets-schematic.is-active .cab.loft{fill:color-mix(in srgb, currentColor 80%, transparent)}.ceiling-cabinets-schematic.is-active .cab.upper{opacity:.94}.slot.active .ceiling-cabinets-schematic .cab{opacity:1}fieldset#geometry-input{min-inline-size:0;color:var(--heading,#1a1a1a);border:none;gap:.75rem;margin:0 0 .85rem;padding:0;grid-template-columns:unset!important;flex-direction:column!important;display:flex!important;& .geometry-view{--scale:2.15em;--thick:1.05em;--len-max:7.25em;max-width:100%;color:var(--heading,#1a1a1a);background:0 0;justify-content:center;align-items:flex-start;gap:0;margin:0;padding:.35rem 0 .15rem;display:flex}& .geometry-view .seg{--width:1;--len:min(calc(var(--width) * var(--scale)), var(--len-max));appearance:none;cursor:pointer;box-sizing:border-box;width:var(--len);height:var(--thick);transition:box-shadow var(--motion-fast,.16s ease), opacity var(--motion-fast,.16s ease), background var(--motion-fast,.16s ease);z-index:2;line-height:1;font:inherit;opacity:1;background:currentColor;border:none;border-radius:.22rem;flex-shrink:0;justify-content:center;align-items:center;margin:0 -.16rem;display:flex;min-width:0!important;min-height:0!important;padding:0!important;&:before{white-space:nowrap;content:attr(data-value);letter-spacing:-.02em;color:var(--surface-1,#fff);font-size:.62rem;font-weight:700;display:block}&:hover{opacity:1}&.is-focused{z-index:105;box-shadow:inset 0 0 0 .0938rem color-mix(in srgb, var(--surface-1,#fff) 85%, transparent)}&.is-invalid{background:color-mix(in srgb, var(--danger,#e55) 80%, currentColor);outline:.0938rem solid var(--danger,#e55);outline-offset:.125rem}&.left_depth,&.right_depth{width:var(--thick);height:var(--len)}&.left_depth:before{transform:rotate(-90deg)}&.right_depth:before{transform:rotate(90deg)}}& .geometry-fields{grid-template-columns:repeat(auto-fit,minmax(5.75rem,1fr));align-items:start;gap:.55rem;display:grid;&>label{min-width:0;transition:none;box-shadow:none!important;background:0 0!important;flex-direction:column!important;gap:.28rem!important;margin:0!important;padding:0!important;display:flex!important;&.is-focused .input-wrap input{border-color:var(--heading);box-shadow:0 0 0 .0938rem color-mix(in srgb, var(--heading) 35%, transparent)}}}& .field-label{letter-spacing:-.01em;color:var(--text);font-size:.72rem;font-weight:650;line-height:1.25}& .input-wrap{display:block;position:relative}& .input-wrap input[type=number]{font-variant-numeric:tabular-nums;border-radius:calc(var(--controlRadius,.75rem) - .1rem);border:.0625rem solid color-mix(in srgb, var(--heading) 12%, transparent);background:var(--surface-1,var(--elevatedFill,transparent));width:100%;min-height:2.2rem;color:var(--text);padding:.35rem 1.6rem .35rem .5rem;font-size:.95rem;font-weight:650}& .input-unit{color:color-mix(in srgb, var(--text) 45%, transparent);pointer-events:none;font-size:.7rem;font-weight:600;position:absolute;top:50%;right:.45rem;transform:translateY(-50%)}& .ceiling-height{grid-template-columns:1fr auto;align-items:center;gap:.25rem .65rem;border:none!important;border-top:.0625rem solid color-mix(in srgb, var(--heading) 8%, transparent)!important;box-shadow:none!important;background:0 0!important;gap:.25rem .65rem!important;margin:.15rem 0 0!important;padding:.55rem 0 0!important;display:grid!important;& .field-label{grid-column:1;margin:0}& .input-wrap.ceiling-input{grid-column:2;width:5.75rem;max-width:5.75rem}& .generic-error{grid-column:1/-1}}& .ceiling-cabinets{cursor:pointer;width:100%;color:var(--text);box-shadow:none!important;background:0 0!important;border:none!important;flex-direction:column!important;align-items:stretch!important;gap:.4rem!important;margin:0!important;padding:.15rem 0 0!important;display:flex!important;& input[type=checkbox]{pointer-events:none;opacity:0!important;width:.0625rem!important;height:.0625rem!important;margin:0!important;position:absolute!important}& .pair{grid-template-columns:1fr auto 1fr;align-items:center;gap:.3rem;margin-bottom:.5rem;display:grid}& .arrow{color:color-mix(in srgb, var(--text) 40%, transparent);user-select:none;font-size:.75rem;font-weight:700}& .slot{border-radius:var(--cardRadius,1.05rem);background:color-mix(in srgb, var(--surface-1,#fff) 12%, transparent);color:var(--heading,#1a1a1a);opacity:.42;transition:opacity var(--motion-fast,.16s ease), box-shadow var(--motion-fast,.16s ease), background var(--motion-fast,.16s ease);padding:.45rem .35rem;line-height:0;display:block;&.active{opacity:1;background:color-mix(in srgb, var(--surface-1,#fff) 18%, transparent);box-shadow:inset 0 0 0 .0938rem color-mix(in srgb, var(--heading) 65%, transparent)}& svg{width:100%;max-height:6.25rem;margin:0 auto}}& .cabinets-title{letter-spacing:-.01em;justify-content:center;align-items:center;gap:.4rem;font-size:.8rem;font-weight:650;display:flex}& .check{border:.0938rem solid color-mix(in srgb, var(--heading) 50%, transparent);width:.9rem;height:.9rem;transition:background var(--motion-fast,.16s ease), border-color var(--motion-fast,.16s ease);border-radius:.25rem;flex-shrink:0;position:relative;&.on{background:var(--heading);border-color:var(--heading)}&.on:after{content:"";border:solid var(--surface-1,#fff);border-width:0 .12rem .12rem 0;width:.22rem;height:.4rem;position:absolute;top:45%;left:50%;transform:translate(-50%,-50%)rotate(45deg)}}}& label.is-invalid input,& input.is-invalid{border-color:var(--danger)!important;background:color-mix(in srgb, var(--danger) 14%, var(--softInputBg,var(--surface-2)))!important;box-shadow:var(--inputInvalidRing)!important}}.kitchen-layout-schematic{width:100%;height:auto;max-height:4.75rem;color:var(--heading,#1a1a1a);display:block}.kitchen-layout-schematic .worktop{fill:color-mix(in srgb, currentColor 28%, white 38%)}.kitchen-layout-schematic .worktop.oh{fill:color-mix(in srgb, currentColor 22%, white 48%)}.kitchen-layout-schematic .upper{fill:currentColor;opacity:.92}.kitchen-layout-schematic .step{stroke:color-mix(in srgb, var(--surface-1,#fff) 55%, transparent);stroke-width:1.1px;stroke-linecap:square;pointer-events:none}.kitchen-layout-schematic .joint{stroke:color-mix(in srgb, var(--surface-1,#fff) 78%, transparent);stroke-width:1.05px;stroke-linecap:square;pointer-events:none}.kitchen-layout-schematic .tick{stroke:color-mix(in srgb, currentColor 28%, transparent);stroke-width:.8px;stroke-linecap:square;pointer-events:none}.kitchen-layout-schematic .island-oh{fill:color-mix(in srgb, currentColor 16%, white 40%)}.kitchen-layout-schematic .island-body{fill:color-mix(in srgb, currentColor 30%, transparent);stroke:currentColor;stroke-width:1.3px;stroke-dasharray:2.75 2}.kitchen-layout-schematic .island-top{fill:color-mix(in srgb, currentColor 18%, white 42%)}.kitchen-layout-schematic .island-j{stroke:color-mix(in srgb, currentColor 40%, transparent);stroke-width:.9px}label:has(input:checked) .kitchen-layout-schematic .upper,.slot.active .kitchen-layout-schematic .upper{opacity:1}label:has(input:checked) .kitchen-layout-schematic .worktop,.slot.active .kitchen-layout-schematic .worktop{fill:color-mix(in srgb, currentColor 32%, white 36%)}fieldset.island-checkbox{order:3;display:block;&[hidden]{display:none}grid-template-columns:unset;min-inline-size:0;color:var(--heading,#1a1a1a);margin:0 0 .75rem;padding:0;box-shadow:none!important;border:none!important;& label.island-toggle{cursor:pointer;position:relative;box-shadow:none!important;background:0 0!important;border:none!important;flex-direction:column!important;align-items:stretch!important;gap:.4rem!important;margin:0!important;padding:0!important;display:flex!important;& input[type=checkbox]{pointer-events:none;opacity:0!important;width:.0625rem!important;height:.0625rem!important;margin:0!important;position:absolute!important}& .content{border:none;border-radius:0;flex-direction:column;gap:.4rem;margin:0;padding:0;display:flex;box-shadow:none!important;background:0 0!important}& .pair{grid-template-columns:1fr auto 1fr;align-items:center;gap:.3rem;margin:0 0 .5rem;display:grid}& .arrow{color:color-mix(in srgb, var(--text) 40%, transparent);user-select:none;font-size:.75rem;font-weight:700}& .slot{border-radius:var(--cardRadius,1.05rem);background:color-mix(in srgb, var(--surface-1,#fff) 10%, transparent);color:var(--heading,#1a1a1a);opacity:.42;transition:opacity var(--motion-fast,.16s ease), box-shadow var(--motion-fast,.16s ease), background var(--motion-fast,.16s ease);padding:.45rem .35rem;line-height:0;display:block;&.active{opacity:1;background:color-mix(in srgb, var(--surface-1,#fff) 14%, transparent);box-shadow:inset 0 0 0 .0938rem color-mix(in srgb, var(--heading) 65%, transparent)}& svg{width:100%;max-height:4.5rem;margin:0 auto}}& .title{letter-spacing:-.01em;color:var(--text);justify-content:center;align-items:center;gap:.4rem;margin:0;font-size:.8rem;font-weight:650;display:flex}& .check{border:.0938rem solid color-mix(in srgb, var(--heading) 50%, transparent);width:.9rem;height:.9rem;transition:background var(--motion-fast,.16s ease), border-color var(--motion-fast,.16s ease);background:0 0;border-radius:.25rem;flex-shrink:0;position:relative;&.on{background:var(--heading);border-color:var(--heading)}&.on:after{content:"";border:solid var(--surface-1,#fff);border-width:0 .12rem .12rem 0;width:.22rem;height:.4rem;position:absolute;top:45%;left:50%;transform:translate(-50%,-50%)rotate(45deg)}}&:hover .content,&:has(input:checked) .content,&:has(input:focus-visible) .content{box-shadow:none!important;background:0 0!important}&:has(input:focus-visible) .slot.active{box-shadow:var(--focus-ring,inset 0 0 0 .0938rem var(--heading))}}}fieldset.layout-radio{min-inline-size:0;color:var(--heading,#1a1a1a);border:none;order:2;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem .65rem;margin:0 0 .75rem;padding:0;display:grid;& label{cursor:pointer;min-width:0;position:relative;box-shadow:none!important;background:0 0!important;flex-direction:column!important;gap:0!important;margin:0!important;padding:0!important;display:flex!important;& input[type=radio]{opacity:0;pointer-events:none;width:.0625rem;height:.0625rem;position:absolute}& .content{border-radius:var(--cardRadius,1.05rem);width:100%;height:100%;box-shadow:none;text-align:center;transition:box-shadow var(--motion-fast,.16s ease), background var(--motion-fast,.16s ease);background:0 0;border:none;flex-direction:column;align-items:stretch;gap:.3rem;padding:.45rem .35rem .5rem;display:flex;& .schematic{color:var(--heading,#1a1a1a);background:0 0;border-radius:0;padding:.2rem .1rem;line-height:0;display:block}& .schematic svg{width:100%;max-height:4.6rem;margin:0 auto}& p{letter-spacing:-.01em;color:var(--text);margin:0;font-size:.72rem;font-weight:650;line-height:1.25}}&:hover .content{background:color-mix(in srgb, var(--surface-1,#fff) 8%, transparent)}&:has(input[type=radio]:checked) .content{background:color-mix(in srgb, var(--surface-1,#fff) 12%, transparent);box-shadow:inset 0 0 0 .0938rem var(--heading)}&:has(input[type=radio]:focus-visible) .content{box-shadow:var(--focus-ring,inset 0 0 0 .0938rem var(--heading))}}}html[data-shell=tablet] fieldset.layout-radio{gap:.6rem .7rem;& label .content{gap:.35rem;padding:.5rem .4rem .55rem;& .schematic svg{max-height:5rem}& p{font-size:.74rem}}}fieldset#palette{&>fieldset:has(label){grid-template-columns:repeat(auto-fit,minmax(25em,1fr));gap:3em;display:grid;& label{flex-direction:row;display:flex;& input[type=radio]{display:none}& .content{& .colors{border:.1875rem solid var(--text);border-radius:.25em;flex-direction:row;gap:0;width:fit-content;height:2em;margin:0 0 1em;transition:all .2s;display:flex;overflow:hidden;& span{width:1em;height:2em;display:inline-flex}}& h5{margin-bottom:.5em;font-size:1.15em}& .popularity{--score:0%;background:color-mix(in srgb, var(--background), var(--text) 15%);border-radius:.2em;width:100%;height:.25em;margin:0 0 .5em;display:block;position:relative;&:after{content:"";height:.25em;width:var(--score);background:var(--success);border-radius:.2em;display:block;position:absolute;left:0}}& p{font-size:.9em;line-height:1.25em;& .suitable-style{background:color-mix(in srgb, var(--background), var(--text) 15%);border-radius:.2em;padding:.2em .5em;font-size:.8em;line-height:1em;display:inline-flex;&:not(:last-child){margin-right:.5em}}}}&:has(input:checked){& .content{& .colors{border-color:var(--primary)}}}}}}.builder-container{flex-direction:column-reverse;gap:1em;width:100%;height:auto;max-height:80%;font-family:sans-serif;display:flex;& .toolbar{background:0 0;border-radius:.5em;flex-flow:wrap;justify-content:space-between;gap:2em;width:100%;padding:.5em;display:flex;& .tool-group,& .actions{flex-direction:row;gap:.5em;display:flex;&.actions{margin-left:auto}& .division-value{flex-direction:row;align-items:center;gap:.25em;font-size:1.5em;display:inline-flex;& input{width:5em;padding-inline:.5em .1em;font-size:.8rem}}& button{border:none;height:auto;padding:.5em;&.active{background:var(--primary);color:#fff}}& .hint{color:var(--text);margin:0;font-size:.8em}}}& aside.canvas-wrapper{padding:0;display:flex;position:relative;overflow:hidden;& .blueprint-svg{background:var(--background);pointer-events:visible;cursor:crosshair;border:.125rem solid color-mix(in srgb, var(--background), var(--text) 40%);max-height:60vh;margin:0 auto .5em}}}fieldset#style{&>fieldset:has(label){grid-template-columns:repeat(auto-fit,minmax(25em,1fr));display:grid;& label{& .content{text-align:center;border:.1875rem solid #0000;border-radius:.6em;width:100%;& img{border-radius:.4em;width:100%;margin:0 0 .2em}& p{margin-bottom:.5em}}&:hover{& .content{border-color:color-mix(in srgb, var(--primary), transparent 50%)}}&:has(input[type=radio]:checked){& .content{border-color:var(--primary)}}}}}@keyframes sk-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes chat-enter{0%{opacity:0;transform:translateY(.375rem)}to{opacity:1;transform:none}}.init-skeleton{box-sizing:border-box;flex-direction:column;flex:1;gap:.85rem;min-height:0;padding:1.35rem clamp(1.15rem,3vw,1.75rem) 6.5rem;display:flex}.init-skeleton .sk-shimmer{background:linear-gradient(90deg, color-mix(in srgb, var(--heading), transparent 94%) 0%, color-mix(in srgb, var(--heading), transparent 88%) 45%, color-mix(in srgb, var(--heading), transparent 94%) 100%);background-size:200% 100%;animation:1.25s ease-in-out infinite sk-shimmer}.init-skeleton-progress{border-radius:var(--cardRadius,1rem);width:100%;height:2.6rem;margin-bottom:.35rem}.init-skeleton-title{border-radius:.45rem;width:min(16rem,72%);height:1.35rem}.init-skeleton-text{border-radius:.4rem;width:min(22rem,92%);height:.75rem}.init-skeleton-text.is-short{width:min(14rem,60%)}.init-skeleton-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:.65rem;display:grid}.init-skeleton-card{aspect-ratio:1.15;border-radius:var(--cardRadius,1rem);min-height:5.5rem}.init-skeleton-actions{padding:1rem clamp(1.15rem, 3vw, 1.75rem) max(1rem, env(safe-area-inset-bottom,0));background:var(--surface-1,var(--elevatedFill));border-top:.0625rem solid var(--divider,transparent);justify-content:flex-end;gap:.65rem;display:flex;position:absolute;inset:auto 0 0}.init-skeleton-btn{height:var(--control-h,2.75rem);border-radius:50rem;width:6.5rem;display:block}.init-skeleton-btn.is-primary{width:8rem}html[data-shell=smartphone]{& .init-skeleton-cards{grid-template-columns:repeat(2,minmax(0,1fr))}& aside#chat .form-actions button{min-height:var(--hit-min,2.75rem)}& aside#chat .chat-header-tool,& aside#chat .chat-header-close{min-width:var(--hit-min,2.75rem);min-height:var(--hit-min,2.75rem);width:var(--hit-min,2.75rem);height:var(--hit-min,2.75rem)}}@media (prefers-reduced-motion:reduce){.init-skeleton .sk-shimmer{animation:none}}aside#chat{&:has(#init-wrapper){flex-shrink:0;left:auto;overflow:hidden;& header.chat-header{border-bottom-color:#0000}& article.chat-history{display:none}}& .init-shell{top:var(--chat-panel-header-h,3.55rem);z-index:1;flex-direction:column;min-height:0;display:flex;position:absolute;bottom:0;left:0;right:0}& .init-shell:has(.init-skeleton){background:var(--surfaceWarm,var(--surface-1,var(--elevatedFill)))}& .init-shell.is-busy{pointer-events:none}& .init-shell.is-busy #init-wrapper.form-wrapper:after{content:"";z-index:25;background:color-mix(in srgb, var(--elevatedFill,var(--uiBackground)), transparent 55%);pointer-events:none;position:absolute;inset:0}& .init-shell.is-busy #init-wrapper form button[type=submit]{opacity:.7}& .init-shell.is-busy #init-wrapper form .form-actions button[type=submit]:after{content:"…";margin-left:.15em}& #init-wrapper.form-wrapper{background:var(--elevatedFill,var(--uiBackground));height:100%;min-height:0;color:var(--text);flex-direction:column;flex:1;padding:0;display:flex;position:relative;& form{--init-actions-h:5rem;width:100%;height:100%;min-height:0;box-shadow:none;background:0 0;border:none;flex-direction:column;gap:0;padding:0;display:flex;position:relative;overflow:hidden;&>fieldset.form-fieldset{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0;box-shadow:none;color:var(--text);scroll-behavior:smooth;background:0 0;border:none;flex:auto;margin:0;padding:5.75rem clamp(1.5rem,3.6vw,2.25rem) 7.5rem;scroll-padding-top:5.5rem;scroll-padding-bottom:7rem;overflow:auto;&>*{max-width:min(36rem, var(--measure,40ch) * 1.15)}&>fieldset,&>.geometry-fields,&>.appliances,&>div[class*=-view]{max-width:none}&.active{animation:chat-enter var(--motion-med) both}&>h1,&>h2,&>h3,&>h4{margin:0 0 var(--space-3,.75rem);font-size:var(--fs-xl,1.28rem);letter-spacing:var(--tracking-tight,-.03em);font-weight:700;line-height:var(--lh-tight,1.2);color:var(--heading);max-width:22ch}&>p{margin:0 0 var(--space-4,1rem);font-size:var(--fs-md,.95rem);line-height:var(--lh-loose,1.6);color:var(--textSecondary,var(--textMuted));max-width:var(--measure,40ch)}&>p+p{margin-top:-.35rem}&>.init-intro-card,&.has-detail-widgets>h1{max-width:none}&>.init-intro-card{border-radius:var(--cardRadius);background:linear-gradient(145deg, color-mix(in srgb, var(--surface-2), var(--heading) 5%) 0%, var(--surface-2,var(--chipFill)) 55%, color-mix(in srgb, var(--surface-2), var(--heading) 3%) 100%);box-shadow:var(--nestedShadow);border:none;flex-direction:column;gap:.55rem;max-width:36rem;margin:0;padding:1.15rem 1.25rem 1.2rem;display:flex;& h1,& h2,& h3,& h4{letter-spacing:-.03em;color:var(--heading);max-width:24ch;margin:0;font-size:1.22rem;font-weight:700}& h1~h1,& h1~h2,& h1~h3,& h2~h2,& h2~h3,& h3~h2,& h3~h3{display:none}& p{color:var(--textSecondary,var(--textMuted));max-width:42ch;margin:0;font-size:.9rem;line-height:1.5}}flex-direction:column;display:flex;&>.init-intro-card{order:1}&>fieldset.budget-segment-radio{order:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem .65rem;margin-bottom:.75rem;display:grid;&>h3{grid-column:1/-1}}&>fieldset.layout-radio{order:2;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem .65rem;margin-bottom:.75rem;display:grid}&>fieldset.island-checkbox{order:3;margin-bottom:.75rem;display:block;&[hidden]{display:none}}&>fieldset{border:none;min-inline-size:0;margin:0 0 .5rem;padding:0}& legend{letter-spacing:.01em;color:var(--textSecondary,var(--textMuted));text-transform:none;margin:0 0 .65rem;padding:0;font-size:.82rem;font-weight:650}& p,& label,& span{color:var(--text)}&:not(#budget) label{flex-direction:column;gap:.55rem;margin-bottom:.2rem;display:flex;&>span:first-child{letter-spacing:-.01em;color:var(--heading);font-size:.88rem;font-weight:600;line-height:1.3}&>.hint,&>span.hint{opacity:1;color:var(--textTertiary,var(--textMuted));margin-top:.15rem;font-size:.8rem;line-height:1.45}&:has(input[type=checkbox]){box-shadow:none;cursor:pointer;background:0 0;border:none;flex-direction:row;align-items:flex-start;gap:.8rem;padding:0;& input[type=checkbox]{width:1.1rem;height:1.1rem;min-height:0;accent-color:var(--heading);flex-shrink:0;margin:.15rem 0 0}}}& sup{color:var(--danger);margin-left:.15em;font-weight:700}& input[type=number],& input[type=text],& input[type=email],& input[type=tel],& select,& textarea{min-height:var(--control-h);border-radius:var(--controlRadius,.95rem);border:.0625rem solid var(--inputBorder,var(--subtleBorder));background:var(--softInputBg,var(--surface-2));color:var(--text);box-shadow:var(--inputShadow,none);font:inherit;width:100%;transition:border-color var(--motion-fast,.16s ease), box-shadow var(--motion-fast,.16s ease), background var(--motion-fast,.16s ease);padding:.55rem .95rem}& input:hover,& select:hover,& textarea:hover{border-color:var(--inputBorderHover,var(--inputBorder))}& input:focus-visible,& select:focus-visible,& textarea:focus-visible{border-color:var(--inputBorderFocus,var(--heading));box-shadow:var(--inputFocusRing,var(--focus-ring));background:var(--surface-1,var(--elevatedFill));outline:none}:is(& input:user-invalid,& select:user-invalid,& textarea:user-invalid){border-color:var(--danger);background:color-mix(in srgb, var(--danger) 12%, var(--softInputBg,var(--surface-2)));box-shadow:var(--inputInvalidRing)}:is(& input:focus-visible:user-invalid,& select:focus-visible:user-invalid,& textarea:focus-visible:user-invalid){border-color:var(--danger);box-shadow:var(--inputInvalidRing)}&>fieldset:has(label):not(.layout-radio):not(.island-checkbox):not(.budget-segment-radio):not(.worktop-material-radio):not(#geometry-input):not(#budget):not(#plan){grid-template-columns:repeat(auto-fit,minmax(9.75rem,1fr));gap:.9rem;margin-top:.55rem;display:grid;& label{cursor:pointer;gap:0;margin:0;position:relative}& label>input[type=radio]{opacity:0;pointer-events:none;width:.0625rem;height:.0625rem;position:absolute}& label .content{border-radius:var(--cardRadius,1rem);background:linear-gradient(160deg, color-mix(in srgb, var(--surface-2), var(--heading) 3%) 0%, var(--surface-2,var(--chipFill)) 100%);width:100%;height:100%;box-shadow:var(--nestedShadow);text-align:center;transition:box-shadow var(--motion-fast,.16s ease), background var(--motion-fast,.16s ease), transform var(--motion-fast,.16s ease);border:none;flex-direction:column;padding:.75rem;display:flex}& label:has(input:checked) .content{background:linear-gradient(160deg, color-mix(in srgb, var(--surface-1), var(--heading) 3%) 0%, var(--surface-1,var(--elevatedFill)) 100%);box-shadow:inset 0 0 0 .0938rem color-mix(in srgb, var(--heading), transparent 15%), var(--softShadow), var(--premiumGlow)}& label .content img{border-radius:calc(var(--cardRadius,1rem) - .3rem);width:100%;margin:0 0 .4rem;display:block}& label.island-toggle:has(input[type=checkbox]){flex-direction:column;align-items:stretch;gap:.4rem}& label .content p,& label .content h5{color:var(--text);margin:0;font-size:.82rem;font-weight:650;line-height:1.3}& label:hover .content{background:color-mix(in srgb, var(--surface-2), var(--heading) 4%);box-shadow:var(--softShadow);transform:translateY(-.125rem)}& label:has(input[type=radio]:checked) .content{background:linear-gradient(160deg, color-mix(in srgb, var(--surface-1), var(--heading) 3%) 0%, var(--surface-1,var(--elevatedFill)) 100%);box-shadow:inset 0 0 0 .0938rem color-mix(in srgb, var(--heading), transparent 15%), var(--softShadow), var(--premiumGlow)}& label:has(input[type=radio]:focus-visible) .content{box-shadow:var(--focus-ring)}}&#palette>fieldset:has(label){grid-template-columns:1fr;gap:.85rem;& label .content{text-align:left;padding:.85rem 1rem}& label .content .colors{border:none;border-radius:.55rem;height:2.15rem;margin:0 0 .65rem;overflow:hidden}& label .content .popularity{background:var(--chipFill,var(--surfaceMuted));border-radius:50rem;height:.3rem;margin:.35rem 0 .5rem}}&#style>fieldset:has(label){grid-template-columns:repeat(auto-fit,minmax(11rem,1fr))}&#geometry-input,&>#geometry-input{gap:.85rem}& .geometry-fields label{margin-bottom:0}}& .progress-shell{z-index:20;pointer-events:none;width:auto;max-width:calc(100% - 2*clamp(1rem,3.2vw,1.75rem));margin:0;position:absolute;inset:.95rem clamp(1rem,3.2vw,1.75rem) auto}& .progress-shell .progress-chip,& .progress-shell .progress{pointer-events:none}&:has(>.form-actions button[data-direction=back])>fieldset.form-fieldset:not(#budget)>:last-child:not(.estimates){margin-bottom:3rem}& .form-actions{justify-content:flex-end;align-items:center;gap:var(--space-3,.75rem);padding:var(--space-4,1rem) clamp(1.15rem, 3.2vw, 1.75rem) max(var(--space-4,1rem), env(safe-area-inset-bottom,0));z-index:20;background:var(--surface-1,var(--elevatedFill));border-top:.0625rem solid var(--divider,transparent);box-shadow:none;font-size:var(--fs-md,.95rem);flex-flow:wrap;display:flex;position:absolute;inset:auto 0 0;& button{width:auto;min-height:var(--control-h);background:var(--surface-2,var(--chipFill));height:auto;color:var(--text);box-shadow:none;white-space:nowrap;touch-action:manipulation;transition:background var(--motion-fast,.16s ease), filter var(--motion-fast,.16s ease), box-shadow var(--motion-fast,.16s ease);border:none;border-radius:50rem;justify-content:center;align-items:center;gap:.4rem;margin:0;padding:.5rem 1.15rem;font-weight:600;line-height:1.25;display:inline-flex}& button:hover:not(:disabled):not([data-direction=forward]):not([type=submit]){background:color-mix(in srgb, var(--surface-2), var(--heading) 6%)}& button:focus-visible{box-shadow:var(--focus-ring);outline:none}& button:disabled{opacity:.45;cursor:not-allowed;transform:none}& button[data-direction=back]{box-shadow:none;background:0 0;margin-right:auto}& button[data-direction=forward],& button[type=submit]{--init-cta-bg:linear-gradient(165deg, color-mix(in srgb, var(--heading), white 7%) 0%, var(--heading) 55%, color-mix(in srgb, var(--heading), black 8%) 100%);background:var(--init-cta-bg);color:var(--elevatedFill,var(--uiBackground));box-shadow:var(--buttonShadow), var(--premiumGlow);transition:filter var(--motion-fast,.16s ease), box-shadow var(--motion-fast,.16s ease);border:none;margin-left:0}& button[data-direction=forward]:not([disabled]):hover,& button[type=submit]:not([disabled]):hover{background:var(--init-cta-bg);filter:brightness(1.06);box-shadow:var(--buttonShadow), var(--premiumGlow), 0 0 0 .0625rem color-mix(in srgb, var(--heading) 12%, transparent)}& button[data-direction=forward] svg,& button[data-direction=back] svg{flex-shrink:0;width:1.05rem;height:1.05rem}& button[type=submit].is-busy{pointer-events:none;opacity:.7}}& fieldset#intro{& img{border-radius:var(--cardRadius,1rem);width:100%;max-width:100%;box-shadow:none;pointer-events:none;user-select:none;object-fit:cover;border:none;margin:0 0 1.25rem}}& fieldset#plan{min-height:0;min-inline-size:0;padding-bottom:var(--init-actions-h,5rem);flex-direction:column;display:flex;overflow:hidden;&>#geometry-input{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:auto;min-height:0;margin-bottom:0;overflow:hidden auto}&>.estimates{flex:none;margin-top:auto;margin-bottom:0}}& fieldset#budget{min-height:0;min-inline-size:0;padding-bottom:var(--init-actions-h,5rem);flex-direction:column;display:flex;overflow:hidden;&>:last-child{margin-bottom:0}& .budget-input-wrapper{border-radius:var(--controlRadius,.95rem);border:.0625rem solid var(--inputBorder,var(--subtleBorder));background:var(--softInputBg,var(--surface-2));width:100%;box-shadow:var(--inputShadow,none);transition:border-color var(--motion-fast,.16s ease), box-shadow var(--motion-fast,.16s ease), background var(--motion-fast,.16s ease);align-items:center;gap:.65rem;padding:.35rem;display:flex;& input[type=number]{width:auto;min-width:0;box-shadow:none;font-variant-numeric:tabular-nums;letter-spacing:-.02em;background:0 0;border:none;flex:1;padding:.45rem .65rem;font-size:1.2rem;font-weight:700}& input[type=number]:focus-visible{box-shadow:none;background:0 0}}& .budget-input-wrapper:hover{border-color:var(--inputBorderHover,var(--inputBorder))}& .budget-input-wrapper:focus-within{border-color:var(--inputBorderFocus,var(--heading));box-shadow:var(--inputFocusRing,var(--focus-ring));background:var(--surface-1,var(--elevatedFill))}& .budget-input-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;width:100%;margin-top:.55rem;display:grid;& button{background:var(--surface-2,var(--chipFill));width:100%;height:auto;min-height:2.4rem;color:var(--text);box-shadow:none;font-variant-numeric:tabular-nums;touch-action:manipulation;border:none;border-radius:50rem;justify-content:center;padding:.4rem .5rem;font-size:.82rem;font-weight:650}& button:hover{background:color-mix(in srgb, var(--surface-2), var(--heading) 6%);box-shadow:none;transform:none}& button:focus-visible{box-shadow:var(--focus-ring);outline:none}}}}}}html[data-shell=tablet]{& aside#chat:has(#init-wrapper){width:min(54%,30rem);max-width:min(54%,30rem)}& aside#chat #init-wrapper.form-wrapper form{&>fieldset.form-fieldset{padding-inline:.15rem}& fieldset.layout-radio label .content,& fieldset.island-checkbox .slot{min-height:5.5rem;padding:.55rem .4rem}& fieldset.layout-radio label .content p{font-size:.74rem}& fieldset.layout-radio .schematic svg{max-height:5rem}}}html[data-shell=tablet][data-shell-landscape=short]{& aside#chat:has(#init-wrapper){width:100%;max-width:none}& aside#chat #init-wrapper.form-wrapper form{& fieldset.layout-radio{grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem}& fieldset.layout-radio label .content{min-height:4.75rem;padding:.4rem .3rem .45rem}& fieldset.layout-radio .schematic svg{max-height:3.75rem}}}html[data-shell=smartphone][data-shell-landscape=short]{& aside#chat:has(#init-wrapper){width:100%;max-width:none}}html[data-shell=smartphone]{& aside#chat:has(#init-wrapper){border-radius:inherit;width:100%;max-width:none}& aside#chat .init-shell{flex:auto;order:25;width:100%;min-height:0;position:relative;inset:auto}& aside#chat #init-wrapper.form-wrapper form{& .progress-shell{max-width:calc(100% - 1.5rem);inset:.4rem .75rem auto}&>fieldset.form-fieldset{padding-top:3.5rem;padding-inline:.35rem}& fieldset.layout-radio{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}& fieldset.layout-radio label .content{min-height:5.25rem;padding:.5rem .35rem}& fieldset.layout-radio .schematic svg{max-height:4.25rem}& fieldset.layout-radio label .content p{font-size:.72rem}--init-actions-h:7.25rem;& .form-actions{border-top:.0625rem solid var(--divider,transparent);text-align:center;border-radius:0;flex-direction:column;justify-content:center;align-items:stretch;gap:.45rem;padding:.65rem .75rem;& button{text-align:center;border-radius:50rem;flex:none;justify-content:center;width:100%;min-width:0;margin:0;padding:.55rem .85rem}& button[data-direction=back]{flex:none;margin:0}}&>fieldset.form-fieldset{padding:4.25rem .9rem 6.25rem;&>h1,&>h2,&>h3,&>h4{max-width:none;font-size:1.12rem}&>fieldset.budget-segment-radio,&>fieldset.layout-radio{grid-template-columns:repeat(2,minmax(0,1fr))}&>fieldset.island-checkbox{display:block;&[hidden]{display:none}}&#palette>fieldset:has(label){grid-template-columns:1fr}}& fieldset#budget{overscroll-behavior:contain;min-inline-size:0;padding-bottom:var(--init-actions-h,7.25rem);flex-direction:column;display:flex;overflow:hidden auto}}}@media (prefers-reduced-motion:reduce){aside#chat #init-wrapper.form-wrapper form{& .form-actions button,& fieldset.form-fieldset label .content,& fieldset#budget .budget-input-actions button{transition:none}}}.loading-mark .segment{fill:currentColor;stroke:currentColor;stroke-width:5px;stroke-linejoin:round;stroke-dashoffset:0;fill-opacity:1;opacity:1;animation-duration:1.8s;animation-timing-function:cubic-bezier(.42,0,.2,1);animation-iteration-count:infinite;animation-fill-mode:backwards}.loading-mark .first{stroke-dasharray:360;animation-name:loading-k-360;animation-delay:20ms}.loading-mark .second,.loading-mark .third{stroke-dasharray:400;animation-name:loading-k-400}.loading-mark .second{animation-delay:.62s}.loading-mark .third{animation-delay:1.22s}@keyframes loading-k-360{0%,to{stroke-dashoffset:0;fill-opacity:1;opacity:1}34%{stroke-dashoffset:0;fill-opacity:0;opacity:.22}46%{stroke-dashoffset:360px;fill-opacity:0;opacity:.18}68%{stroke-dashoffset:0;fill-opacity:0;opacity:1}82%{stroke-dashoffset:0;fill-opacity:1;opacity:1}}@keyframes loading-k-400{0%,to{stroke-dashoffset:0;fill-opacity:1;opacity:1}34%{stroke-dashoffset:0;fill-opacity:0;opacity:.22}46%{stroke-dashoffset:400px;fill-opacity:0;opacity:.18}68%{stroke-dashoffset:0;fill-opacity:0;opacity:1}82%{stroke-dashoffset:0;fill-opacity:1;opacity:1}}aside#chat{&:has(#photo-render-wrapper){overflow:hidden;& header.chat-header{border-bottom-color:#0000}& article.chat-history,& footer.chat-compose{display:none}}& .photo-render-panel{background:0 0;border:none;margin:0;padding:0}& #photo-render-wrapper.form-wrapper{top:var(--chat-panel-header-h,3.55rem);z-index:1;height:auto;padding:0;position:absolute;bottom:0;left:0;right:0;html[data-shell=smartphone] &{top:1.65rem}& .photo-render-form{box-sizing:border-box;background:var(--elevatedFill,var(--uiBackground));width:100%;height:100%;color:var(--text);box-shadow:none;border:none;flex-direction:column;gap:0;padding:0;display:flex;position:relative;overflow:hidden;& header.chat-header{border-bottom:.0625rem solid var(--panelBorder,transparent);flex-shrink:0;justify-content:space-between;align-items:center;gap:.75rem;min-height:2.85rem;padding:.85rem clamp(1rem,3vw,1.5rem) .55rem;display:flex;& h2{letter-spacing:-.02em;margin:0;font-size:1.15rem;font-weight:700;line-height:1.25}}& .photo-render-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;gap:1.15rem;width:100%;min-height:0;padding:.85rem clamp(1.1rem,3.2vw,1.65rem) 1.25rem;scroll-padding-bottom:1rem;display:flex;position:relative;overflow-y:auto}&.is-busy .photo-render-body,&.is-busy .photo-render-preview,&.is-busy .photo-render-actions{pointer-events:none}& .photo-render-busy-overlay{z-index:20;background:color-mix(in srgb, var(--elevatedFill,var(--uiBackground)) 62%, transparent);-webkit-backdrop-filter:blur(.375rem);color:var(--text);text-align:center;pointer-events:all;cursor:wait;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:1.25rem;display:flex;position:absolute;inset:0}& .photo-render-busy-overlay p{letter-spacing:-.01em;max-width:22ch;margin:0;font-size:.92rem;font-weight:650;line-height:1.4}& .photo-render-lead{color:var(--text);max-width:42ch;margin:0;font-size:.95rem;line-height:1.55}& .photo-render-or{grid-template-columns:1fr auto 1fr;align-items:center;gap:.65rem;margin:-.15rem 0;display:grid;& span{background:var(--panelBorder,var(--subtleBorder));height:.0625rem}& em{letter-spacing:.06em;text-transform:uppercase;color:color-mix(in srgb, var(--text), transparent 25%);font-size:.72rem;font-style:normal;font-weight:650}}& .photo-render-clear-file{color:var(--text);font:inherit;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:none;border-radius:50rem;align-self:flex-start;max-width:100%;margin:.15rem 0 0;padding:.25rem .65rem;font-size:.78rem;font-weight:600;overflow:hidden}& .photo-render-clear-file:hover:not(:disabled){background:var(--chipFill,var(--softCardBg))}& .photo-render-clear-file:focus-visible{box-shadow:var(--focus-ring);outline:none}& .photo-render-hint{color:var(--text);opacity:.88;margin:0;font-size:.8rem;line-height:1.45}& .photo-render-field{flex-direction:column;gap:.5rem;display:flex;&>label,&>.field-label{letter-spacing:-.01em;color:var(--text);font-size:.88rem;font-weight:600}& input[type=url]{box-sizing:border-box;width:100%;min-height:var(--control-h);border-radius:var(--controlRadius,.95rem);background:var(--softInputBg,var(--chipFill));color:var(--text);font:inherit;box-shadow:none;border:none;padding:.55rem .95rem}& input[type=url]:focus-visible{border-color:color-mix(in srgb, var(--accent), var(--heading) 35%);box-shadow:var(--focus-ring);background:var(--elevatedFill,var(--uiBackground));outline:none}& input[type=url]:disabled{opacity:.55}}& .photo-render-presets{grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr));gap:.55rem;margin:0;padding:0;display:grid}& .photo-render-preset{z-index:0;margin:0;padding:0;list-style:none;position:relative}& .photo-render-preset:hover,& .photo-render-preset:focus-within{z-index:8}& .photo-render-preset input{opacity:0;pointer-events:none;width:.0625rem;height:.0625rem;position:absolute}& .photo-render-preset .preset-card{border-radius:var(--cardRadius,1rem);background:var(--chipFill,var(--softCardBg));width:100%;min-height:100%;box-shadow:none;cursor:pointer;transition:border-color var(--motion-fast), border-radius var(--motion-fast), box-shadow var(--motion-fast), transform var(--motion-fast), background var(--motion-fast);border:.0625rem solid #0000;flex-direction:column;gap:.45rem;padding:.55rem .6rem .65rem;display:flex;position:relative}& .photo-render-preset .preset-swatches{border:none;border-radius:.45rem;grid-template-columns:repeat(5,1fr);gap:.125rem;height:1.55rem;display:grid;overflow:hidden}& .photo-render-preset .preset-swatches span{min-width:0;display:block}& .photo-render-preset .preset-label{color:var(--text);margin:0;padding-right:1.1rem;font-size:.78rem;font-weight:650;line-height:1.3}& .photo-render-preset .preset-detail{z-index:2;border:.0625rem solid color-mix(in srgb, var(--heading), transparent 78%);border-top:.0625rem solid color-mix(in srgb, var(--divider,var(--heading)), transparent 82%);border-radius:0 0 var(--cardRadius,1rem) var(--cardRadius,1rem);background:var(--elevatedFill,var(--uiBackground));box-shadow:var(--floatShadow,var(--buttonShadow,var(--softShadow)));text-align:left;pointer-events:none;flex-direction:column;gap:.4rem;margin:0;padding:.5rem .6rem .55rem;display:none;position:absolute;top:calc(100% - .0625rem);left:-.0625rem;right:-.0625rem}& .photo-render-preset .preset-detail-list{flex-direction:column;gap:.35rem;display:flex}& .photo-render-preset .preset-detail-row{grid-template-columns:.7rem minmax(0,1fr);align-items:start;gap:.4rem;display:grid}& .photo-render-preset .preset-detail-swatch{border:.0625rem solid color-mix(in srgb, var(--heading), transparent 82%);border-radius:.2rem;width:.7rem;height:.7rem;margin-top:.12rem;display:block;box-shadow:inset 0 0 0 .0625rem #ffffff1f}& .photo-render-preset .preset-detail-meta{flex-direction:column;gap:.05rem;min-width:0;display:flex}& .photo-render-preset .preset-detail-role{color:var(--text);font-size:.68rem;font-weight:650;line-height:1.25}& .photo-render-preset .preset-detail-nobilia{color:color-mix(in srgb, var(--text), transparent 18%);text-overflow:ellipsis;white-space:nowrap;font-size:.64rem;font-weight:500;line-height:1.25;overflow:hidden}& .photo-render-preset .preset-detail-texture{opacity:.72;text-overflow:ellipsis;white-space:nowrap;font-size:.6rem;font-weight:500;line-height:1.2;overflow:hidden}& .photo-render-preset:hover .preset-detail,& .photo-render-preset:focus-within .preset-detail{display:flex}& .photo-render-preset .preset-check{background:var(--heading);width:1.15rem;height:1.15rem;color:var(--elevatedFill,var(--uiBackground));box-shadow:none;border-radius:50%;place-items:center;font-size:.7rem;font-weight:700;line-height:1;display:grid;position:absolute;bottom:.5rem;right:.5rem;transform:scaleX(-1)rotate(-45deg)}& .photo-render-preset.is-active .preset-card,& .photo-render-preset:has(input:checked) .preset-card{border-color:var(--heading);background:var(--elevatedFill,var(--uiBackground));box-shadow:var(--buttonShadow), 0 0 0 .125rem color-mix(in srgb, var(--accent), transparent 55%)}& .photo-render-preset:hover .preset-card,& .photo-render-preset:focus-within .preset-card{border-color:color-mix(in srgb, var(--heading), transparent 78%);border-radius:var(--cardRadius,1rem) var(--cardRadius,1rem) 0 0;background:var(--elevatedFill,var(--uiBackground));box-shadow:var(--floatShadow,var(--buttonShadow,var(--softShadow)));z-index:3;border-bottom-color:#0000;transform:none}& .photo-render-preset.is-active:hover .preset-card,& .photo-render-preset.is-active:focus-within .preset-card,& .photo-render-preset:has(input:checked):hover .preset-card,& .photo-render-preset:has(input:checked):focus-within .preset-card{border-color:var(--heading);box-shadow:var(--floatShadow,var(--buttonShadow)), 0 0 0 .125rem color-mix(in srgb, var(--accent), transparent 55%);border-bottom-color:#0000}& .photo-render-preset:has(input:focus-visible) .preset-card{box-shadow:var(--focus-ring)}& .photo-render-preset:has(input:disabled) .preset-card{opacity:.55;cursor:not-allowed;transform:none}& .photo-render-file{border-radius:var(--cardRadius,1rem);border:.0938rem dashed color-mix(in srgb, var(--heading), transparent 82%);background:var(--chipFill,var(--softCardBg));min-height:5.5rem;box-shadow:none;text-align:center;cursor:pointer;transition:border-color var(--motion-fast), background var(--motion-fast), box-shadow var(--motion-fast);flex-direction:column;justify-content:center;align-items:center;gap:.35rem;padding:1rem 1.1rem;display:flex;position:relative}& .photo-render-file:hover,& .photo-render-file.is-active{border-color:color-mix(in srgb, var(--heading), transparent 55%);background:var(--elevatedFill,var(--uiBackground));box-shadow:none}& .photo-render-file:focus-within{box-shadow:var(--focus-ring);border-color:color-mix(in srgb, var(--accent), var(--heading) 35%)}& .photo-render-file input[type=file]{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}& .photo-render-file .file-title{color:var(--text);margin:0;font-size:.88rem;font-weight:650}& .photo-render-file .file-meta{color:var(--text);opacity:.85;user-select:none;pointer-events:none;max-width:28ch;margin:0;font-size:.78rem;line-height:1.4}& .photo-render-file.has-file{border-style:solid;border-color:color-mix(in srgb, var(--heading), transparent 70%)}& .photo-render-preview{z-index:4;border-bottom:.0625rem solid var(--divider,transparent);background:var(--elevatedFill,var(--uiBackground));box-shadow:var(--floatShadow);flex-direction:column;flex-shrink:0;gap:.4rem;padding:.65rem clamp(1rem,3vw,1.5rem) .75rem;display:flex}& .photo-render-preview.is-sticky{position:sticky;top:0}& .photo-render-preview .preview-header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}& .photo-render-preview .preview-header .field-label{font-size:.88rem;font-weight:600}& .preview-refresh{background:var(--chipFill,var(--softCardBg));min-height:2rem;color:var(--text);font:inherit;cursor:pointer;touch-action:manipulation;border:none;border-radius:50rem;justify-content:center;align-items:center;padding:.3rem .75rem;font-size:.78rem;font-weight:600;display:inline-flex}& .preview-refresh:hover:not(:disabled){box-shadow:none}& .preview-refresh:focus-visible{box-shadow:var(--focus-ring);outline:none}& .preview-refresh:disabled{opacity:.5;cursor:default}& .source-preview-img{object-fit:contain;border-radius:calc(var(--cardRadius,1rem) - .35rem);background:color-mix(in srgb, var(--uiBackground), var(--heading) 4%);border:none;width:100%;max-height:8.5rem}& .preview-placeholder{min-height:4.5rem;color:var(--text);border-radius:calc(var(--cardRadius,1rem) - .35rem);border:.0625rem dashed color-mix(in srgb, var(--heading), transparent 85%);background:var(--chipFill,var(--softCardBg));text-align:center;place-items:center;padding:.75rem;font-size:.85rem;line-height:1.45;display:grid}& .photo-render-preview .photo-render-hint{font-size:.75rem}& .preview-collapse{background:color-mix(in srgb, var(--heading) 6%, transparent);width:100%;color:var(--heading);font:inherit;letter-spacing:.01em;cursor:pointer;touch-action:manipulation;border:none;border-radius:50rem;justify-content:center;align-items:center;margin:.15rem 0 0;padding:.35rem .65rem;font-size:.72rem;font-weight:650;line-height:1.2;display:none}& .preview-collapse:hover{background:color-mix(in srgb, var(--heading) 10%, transparent)}& .preview-collapse:focus-visible{outline:var(--focus-outline,.125rem solid var(--heading));outline-offset:.125rem}& .photo-render-actions{padding:.85rem clamp(1rem, 3vw, 1.5rem) max(.85rem, env(safe-area-inset-bottom,0));background:var(--elevatedFill,var(--uiBackground));border-top:.0625rem solid var(--divider,transparent);box-shadow:var(--floatShadow);flex-flow:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:.65rem;display:flex;& button{width:auto;max-width:none;min-height:var(--control-h);background:var(--chipFill,var(--softCardBg));height:auto;color:var(--text);box-shadow:none;line-height:1.25;font:inherit;white-space:nowrap;touch-action:manipulation;cursor:pointer;transition:transform var(--motion-fast), box-shadow var(--motion-fast), filter var(--motion-fast);border:none;border-radius:50rem;justify-content:center;align-items:center;gap:.4rem;margin:0;padding:.5rem 1.15rem;font-weight:600;display:inline-flex}& button.secondary{box-shadow:none;background:0 0;margin-right:auto}& button[type=submit]{background:var(--heading);color:var(--elevatedFill,var(--uiBackground));box-shadow:none;border-color:#0000}& button:hover:not(:disabled){box-shadow:none;transform:translateY(-.0625rem)}& button[type=submit]:hover:not(:disabled){filter:brightness(1.05)}& button:focus-visible{box-shadow:var(--focus-ring);outline:none}& button:disabled{opacity:.45;cursor:not-allowed;transform:none}}}}}html[data-shell=smartphone]{& aside#chat #photo-render-wrapper.form-wrapper .photo-render-form{& header.chat-header{min-height:2.5rem;padding:.55rem .85rem .4rem;& h2{font-size:1.05rem;line-height:1.2}}& .photo-render-preview{gap:.3rem;padding:.4rem .75rem .45rem}& .photo-render-preview.is-collapsed{box-shadow:none;padding-bottom:.4rem}& .photo-render-preview .preview-header .field-label{font-size:.8rem}& .preview-collapse{min-height:2.15rem;margin-top:.1rem;font-size:.7rem;display:inline-flex}& .source-preview-img{max-height:5.5rem}& .preview-placeholder{min-height:2.75rem;padding:.5rem;font-size:.78rem}& .photo-render-preview .photo-render-hint{margin:0;font-size:.68rem}& .photo-render-body{gap:.75rem;padding:.5rem .85rem .75rem}& .photo-render-lead{margin:0;font-size:.82rem;line-height:1.35}& .photo-render-presets{grid-template-columns:1fr 1fr;gap:.45rem}& .photo-render-actions{padding:.55rem .75rem max(.55rem, env(safe-area-inset-bottom,0));text-align:center;flex-direction:column;justify-content:center;align-items:stretch;gap:.35rem;& button{text-align:center;flex:none;justify-content:center;width:100%;min-width:0;margin:0;padding:.5rem .85rem}& button.secondary{flex:none;margin:0}}}}@media (prefers-reduced-motion:reduce){aside#chat #photo-render-wrapper.form-wrapper .photo-render-form{& .photo-render-preset .preset-card,& .photo-render-actions button,& .photo-render-file{transition:none}}}@keyframes chat-pulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes stream-blink{0%,to{opacity:1}50%{opacity:0}}@keyframes placeholder{0%{opacity:.5}60%{opacity:1}to{opacity:.5}}@media (prefers-reduced-motion:reduce){.sk-shimmer,.chat-skeleton-row .sk-line,.chat-history-skel .sk-line{animation:none}}.chat-skeleton-row .sk-line,.chat-history-skel .sk-line{background:linear-gradient(90deg, color-mix(in srgb, var(--heading), transparent 94%) 0%, color-mix(in srgb, var(--heading), transparent 88%) 45%, color-mix(in srgb, var(--heading), transparent 94%) 100%);background-size:200% 100%;border-radius:.55rem;animation:1.25s ease-in-out infinite sk-shimmer;display:block}button.chat-caller{border-radius:var(--pillRadius);background:linear-gradient(160deg, color-mix(in srgb, var(--surface-1), var(--heading) 3%) 0%, var(--surface-1,var(--uiBackground)) 100%);box-shadow:var(--floatShadow,var(--popoverShadow)), var(--premiumGlow);cursor:pointer;border:none;padding:0;display:none;position:relative;& .chat-caller-badge{z-index:2;width:.7rem;height:.7rem;box-shadow:0 0 0 .125rem var(--surface-1,#fff), 0 .0625rem .25rem #e85d048c;pointer-events:none;background:#e85d04;border-radius:50%;animation:1.6s ease-in-out infinite chat-coach-badge-pulse;position:absolute;top:.05rem;right:.05rem}&.chat-caller--coach-badge{box-shadow:var(--floatShadow,var(--popoverShadow)), 0 0 0 .125rem #e85d0480}html[data-shell=smartphone] &{display:none!important}html[data-shell=tablet][data-shell-landscape=short] &{left:50%;right:auto;bottom:calc(var(--mobile-toolbox-h,0) + var(--fab-gap,.7rem) + var(--chat-fab-lift,.65rem) + env(safe-area-inset-bottom,0));z-index:var(--z-chat-mobile);width:var(--chat-fab-size,2.75rem);height:var(--chat-fab-size,2.75rem);border-radius:50rem;place-items:center;min-width:2.75rem;min-height:2.75rem;display:grid;position:fixed;transform:translate(-50%)}html[data-shell=smartphone][data-shell-landscape=short] &{left:50%;right:auto;bottom:calc(var(--mobile-toolbox-h,0) + var(--fab-gap,.625rem) + var(--chat-fab-lift,.75rem));z-index:var(--z-chat-mobile);width:var(--chat-fab-size,max(var(--fab-size,2.5rem), 3rem));height:var(--chat-fab-size,max(var(--fab-size,2.5rem), 3rem));border-radius:50rem;place-items:center;min-width:3rem;min-height:3rem;display:grid;position:fixed;transform:translate(-50%)}}@keyframes chat-coach-badge-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(1.15)}}body:has(aside#chat.chat-drawer-open) button.chat-caller{html[data-shell=tablet][data-shell-landscape=short] &{opacity:0;pointer-events:none;transform:translate(-50%)scale(.9)}}body:has(aside#chat.chat-drawer-open) #toolbox-wrap{html[data-shell=smartphone] &,html[data-shell=tablet][data-shell-landscape=short] &,html[data-shell=smartphone][data-shell-landscape=short] &{pointer-events:none;opacity:0;visibility:hidden}}section#workspace:has(#scene.fullscreen)>button.chat-caller{width:3em;height:3em;z-index:var(--z-chat);transition:transform var(--motion-fast), box-shadow var(--motion-fast);border-radius:50%;place-items:center;margin-inline:0;font-size:1.25em;display:grid;position:absolute;inset:auto 1.5em 1.5em auto;&:hover{transform:scale(1.05)}& svg{width:1.5em;height:1.5em}}.chat-backdrop{display:none}html[data-shell=smartphone]{& .chat-backdrop{z-index:calc(var(--z-header) + 2);background:color-mix(in srgb, var(--heading), transparent 48%);-webkit-backdrop-filter:blur(.2rem);width:100%;min-width:0;height:100%;min-height:0;box-shadow:none;cursor:pointer;opacity:0;pointer-events:none;transition:opacity var(--mobile-duration,.36s) var(--mobile-ease,ease);appearance:none;border:0;border-radius:0;margin:0;padding:0;display:block;position:fixed;inset:0}& .chat-backdrop.is-open{opacity:1;pointer-events:auto}}html[data-shell=tablet][data-shell-landscape=short]{& .chat-backdrop{z-index:var(--z-chat-backdrop);background:color-mix(in srgb, var(--heading), transparent 55%);backdrop-filter:blur(.125rem);width:100%;min-width:0;height:100%;min-height:0;box-shadow:none;cursor:pointer;opacity:0;pointer-events:none;transition:opacity var(--motion-med);appearance:none;border:0;border-radius:0;margin:0;padding:0;display:block;position:fixed;inset:0}& .chat-backdrop.is-open{opacity:1;pointer-events:auto}}html[data-shell=smartphone],html[data-shell=smartphone][data-shell-landscape=short]{& .chat-backdrop{z-index:calc(var(--z-header) + 2);background:color-mix(in srgb, var(--heading), transparent 55%);backdrop-filter:blur(.125rem);width:100%;min-width:0;height:100%;min-height:0;box-shadow:none;cursor:pointer;opacity:0;pointer-events:none;transition:opacity var(--motion-med);appearance:none;border:0;border-radius:0;margin:0;padding:0;display:block;position:fixed;inset:0}& .chat-backdrop.is-open{opacity:1;pointer-events:auto}}html[data-shell=smartphone]:has(aside#chat[data-quiz].chat-drawer-open) .chat-backdrop.is-open,html[data-shell=smartphone][data-shell-landscape=short]:has(aside#chat[data-quiz].chat-drawer-open) .chat-backdrop.is-open{-webkit-backdrop-filter:none;pointer-events:none;opacity:0;background:0 0}aside#chat{--border:var(--subtleBorder);--bottomSpace:var(--chat-bottom-space,10em);--chat-suggest-band:0;--chat-muted:var(--textSecondary,var(--textMuted));--chat-transition-fast:var(--motion-fast);--chat-disabled-opacity:.45;--chat-panel-header-h:3.85rem;--chat-footer-stack:calc(var(--bottomSpace) + var(--chat-suggest-band));&:has(#request-form.compose-voice-idle){--bottomSpace:max(13.5rem, var(--chat-bottom-space,10em))}&:has(#request-form #voice-error){--bottomSpace:max(19rem, var(--chat-bottom-space,10em))}&:has(#request-form.compose-voice-draft),&:has(#request-form.compose-voice-listening),&:has(#request-form.compose-voice-transcribing),&:has(#request-form.compose-type-first){--bottomSpace:max(9.75rem, var(--chat-bottom-space,10em))}&:has(footer.chat-compose section.chat-hints),&:has(footer.chat-compose .chat-compose-ctas),&:has(footer.chat-compose .chat-book-cta){--chat-suggest-band:3rem}html[data-shell=smartphone] &{&:has(#request-form.compose-voice-idle){--bottomSpace:max(6.25rem, var(--chat-bottom-space,8.5em))}&:has(#request-form #voice-error){--bottomSpace:max(12.5rem, var(--chat-bottom-space,8.5em))}&:has(#request-form.compose-voice-draft),&:has(#request-form.compose-voice-listening),&:has(#request-form.compose-voice-transcribing),&:has(#request-form.compose-type-first){--bottomSpace:max(8.75rem, var(--chat-bottom-space,8.5em))}&:has(footer.chat-compose section.chat-hints),&:has(footer.chat-compose .chat-compose-ctas),&:has(footer.chat-compose .chat-book-cta){--chat-suggest-band:2.85rem}}background:var(--surfaceWarm,var(--surface-1,var(--elevatedFill)));height:calc(100dvh - var(--header-h) - var(--workspace-pad) * 3);width:var(--chat-width);max-width:var(--chat-max-width);margin:0 var(--workspace-pad) var(--workspace-pad);border-radius:var(--panelRadius);box-shadow:var(--softShadow), var(--panelHighlight);z-index:var(--z-chat);border:none;flex-direction:column;gap:0;margin-left:auto;display:flex;position:relative;overflow:hidden;&:before{content:"";background:var(--surfaceGlow);pointer-events:none;z-index:0;position:absolute;inset:0}&>header.chat-header,&>article.chat-history,&>footer.chat-compose,&>.init-shell,&>#init-wrapper,&>.booking-shell,&>.photo-render-shell{z-index:1}&.chat-density-compact{--bottomSpace:max(7.5rem, calc(var(--chat-bottom-space,8.5em) * .92));--header-action-size:2rem;font-size:.94em;&:has(#request-form.compose-voice-idle){--bottomSpace:max(12.5rem, var(--chat-bottom-space,8.5em))}&:has(#request-form.compose-voice-draft),&:has(#request-form.compose-voice-listening),&:has(#request-form.compose-voice-transcribing),&:has(#request-form.compose-type-first){--bottomSpace:max(9.5rem, var(--chat-bottom-space,8.5em))}& header.chat-header{min-height:2.85rem;padding:.55rem .55rem .55rem .85rem}& article.chat-history{gap:.95em;padding-block:.5rem}}& .chat-header-actions{--header-action-size:2.75rem;opacity:.15;transition:opacity var(--motion-fast,.16s ease);flex-shrink:0;align-items:center;gap:.25rem;margin:0;padding:0;display:flex;&:hover,&:focus-within,html[data-shell=smartphone] &{opacity:1}}& .chat-header-tool,& .chat-header-close{width:var(--header-action-size);height:var(--header-action-size);min-width:var(--header-action-size);min-height:var(--header-action-size);border-radius:var(--pillRadius);background:var(--surface-2,color-mix(in srgb, var(--text) 5%, transparent));color:var(--text);cursor:pointer;opacity:1;touch-action:manipulation;box-shadow:none;z-index:1;border:none;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;font-size:1.15rem;font-weight:600;line-height:1;display:inline-flex;position:relative;& svg{flex-shrink:0;width:1.05rem;height:1.05rem}& .chat-header-close-icon{place-items:center;width:1.05rem;height:1.05rem;line-height:0;display:inline-grid}& .chat-header-close-icon svg{width:100%;height:100%}&:hover{background:color-mix(in srgb, var(--heading), transparent 92%);color:var(--heading)}&:focus-visible{outline:var(--focus-outline);outline-offset:.125rem}}& .chat-header-tool.is-on{background:var(--heading);color:var(--surface-1,var(--elevatedFill));box-shadow:none}& .chat-header-tool.is-on:hover{background:var(--heading);color:var(--surface-1,var(--elevatedFill));filter:brightness(1.06)}& :is(button.chat-caller,.chat-header-close,.chat-header-tool,.chat-suggestion,.chat-history-load-button,.chat-price-sticky,.chat-empty-retry):focus-visible{outline:var(--focus-outline);outline-offset:.125rem;box-shadow:var(--focus-ring)}html[data-shell=tablet] &{height:calc(100dvh - var(--header-h) - var(--workspace-pad) * 2);max-height:calc(100dvh - var(--header-h) - var(--workspace-pad) * 2);margin:0 var(--workspace-pad) var(--workspace-pad) 0;width:var(--chat-width);max-width:var(--chat-max-width);border-radius:var(--tablet-chat-radius,var(--panelRadius));--chat-history-pad-x:.85rem;--chat-history-pad-y:.8rem}html[data-shell=smartphone] &{width:100%;max-width:none;height:var(--mobile-chat-sheet-h,97dvh);max-height:var(--mobile-chat-sheet-h,97dvh);padding:0;padding-bottom:max(.35rem, env(safe-area-inset-bottom,0));border-radius:var(--mobile-sheet-radius,1.25rem) var(--mobile-sheet-radius,1.25rem) 0 0;background:var(--mobile-sheet-bg,var(--surface-1,var(--elevatedFill)));-webkit-backdrop-filter:none;z-index:calc(var(--z-header) + 5);transition:transform var(--mobile-duration,.36s) var(--mobile-ease,ease);box-shadow:var(--mobile-sheet-shadow,var(--floatShadow));pointer-events:none;visibility:hidden;box-sizing:border-box;border:none;flex-direction:column;margin:0;display:flex;position:fixed;inset:auto 0 0;overflow:hidden;transform:translateY(calc(100% + 1.25rem));&.chat-drawer-open{pointer-events:auto;visibility:visible;transform:translateY(0)}&[data-quiz]{height:min(70dvh, calc(100dvh - var(--header-h,4.5rem) - 1.25rem));max-height:min(70dvh, calc(100dvh - var(--header-h,4.5rem) - 1.25rem))}&.is-sheet-dragging{transition:none}&>footer.chat-compose{box-sizing:border-box;flex:none;order:40;max-height:none;margin-top:0;padding-bottom:0}&>article.chat-history{--chat-history-pad-x:.85rem;--chat-history-pad-y:.65rem;min-height:0;padding-bottom:var(--chat-history-pad-y,.65rem);scroll-padding-bottom:var(--space-4,1rem);flex:1 1 0;order:20}&>header.chat-header{display:none}&>.chat-price-sticky{flex-shrink:0;order:15}&>.booking-shell,&>.photo-render-shell,&>.init-shell,&>#init-wrapper{order:25;min-height:0}}&>.chat-mobile-hide{display:none}html[data-shell=smartphone] &{&>.chat-mobile-hide{box-sizing:border-box;width:100%;min-height:1.65rem;color:var(--textSecondary,var(--textMuted,var(--text)));font:inherit;letter-spacing:.02em;cursor:grab;touch-action:none;-webkit-tap-highlight-color:transparent;user-select:none;background:0 0;border:none;border-radius:0;flex-direction:column;flex-shrink:0;order:0;justify-content:center;align-items:center;gap:.2rem;margin:0;padding:.45rem 1rem .2rem;font-size:.68rem;font-weight:550;line-height:1.15;display:flex}&>.chat-mobile-hide:active{background:color-mix(in srgb, var(--heading) 4%, transparent)}&>.chat-mobile-hide:focus-visible{outline:var(--focus-outline);outline-offset:-.125rem}&>.chat-mobile-hide .chat-mobile-hide-grip{background:color-mix(in srgb, var(--heading) 22%, transparent);border-radius:50rem;width:min(2.75rem,26vw);height:.22rem;display:block}&>footer.chat-compose{margin-top:0}}html[data-shell=tablet][data-shell-landscape=short] &{&>.chat-mobile-hide{box-sizing:border-box;width:100%;min-height:1.65rem;color:var(--textSecondary,var(--textMuted,var(--text)));cursor:grab;touch-action:none;-webkit-tap-highlight-color:transparent;user-select:none;background:0 0;border:none;border-radius:0;flex-direction:column;flex-shrink:0;order:0;justify-content:center;align-items:center;gap:0;margin:0;padding:.45rem 1rem .2rem;display:flex}&>.chat-mobile-hide:active{background:color-mix(in srgb, var(--heading) 4%, transparent)}&>.chat-mobile-hide:focus-visible{outline:var(--focus-outline);outline-offset:-.125rem}&>.chat-mobile-hide .chat-mobile-hide-grip{background:color-mix(in srgb, var(--heading) 22%, transparent);border-radius:50rem;width:min(2.75rem,26vw);height:.22rem;display:block}&>footer.chat-compose{margin-top:0}}html[data-shell=tablet][data-shell-landscape=short] &{--bottomSpace:var(--chat-bottom-space,5rem);top:var(--header-h);width:100%;max-width:none;height:min(90dvh, calc(100dvh - var(--header-h)));max-height:calc(100dvh - var(--header-h));border:none;border-bottom:.0625rem solid var(--divider,transparent);z-index:var(--z-chat-mobile);transition:transform var(--motion-med);box-shadow:var(--floatShadow);pointer-events:none;visibility:hidden;border-radius:0;margin:0;padding:0;position:fixed;bottom:auto;left:0;right:0;transform:translateY(calc(-100% - 1rem));&.chat-drawer-open{pointer-events:auto;visibility:visible;transform:translateY(0)}&.chat-float{top:var(--header-h);width:100%;max-width:none;max-height:calc(100dvh - var(--header-h));border-radius:0;position:fixed;bottom:auto;left:0;right:0}}html[data-shell=smartphone][data-shell-landscape=short] &{--bottomSpace:var(--chat-bottom-space,5rem);height:var(--mobile-chat-sheet-h,92dvh);max-height:var(--mobile-chat-sheet-h,92dvh);border-radius:var(--mobile-sheet-radius,1rem) var(--mobile-sheet-radius,1rem) 0 0;top:auto;bottom:0;transform:translateY(calc(100% + 1rem));&.chat-drawer-open{transform:translateY(0)}&.chat-float{height:var(--mobile-chat-sheet-h,92dvh);max-height:var(--mobile-chat-sheet-h,92dvh);border-radius:var(--mobile-sheet-radius,1rem) var(--mobile-sheet-radius,1rem) 0 0;top:auto;bottom:0}}&.chat-float{top:auto;right:max(1.5rem, env(safe-area-inset-right,0));bottom:max(7rem, calc(4.5rem + env(safe-area-inset-bottom,0)));width:min(var(--chat-width), calc(100vw - 2.5rem));height:min(80vh, calc(100dvh - var(--header-h) - 9rem));z-index:var(--z-chat-mobile);box-shadow:var(--floatShadow);border:none;margin:0;position:absolute;left:auto;transform:none;html[data-shell=smartphone] &{top:var(--header-h);width:100%;max-width:none;height:min(88dvh, calc(100dvh - var(--header-h) - env(safe-area-inset-bottom,0)));max-height:calc(100dvh - var(--header-h));border:none;border-bottom:.0625rem solid var(--divider,transparent);border-radius:0;position:fixed;bottom:auto;left:0;right:0;&:after{display:none}}&:after{content:"";border:1em solid #0000;border-top:1em solid var(--elevatedFill,white);pointer-events:none;width:2em;height:2em;margin:0 0 -2em;position:absolute;top:100%;left:calc(100% - 4em)}[data-theme=dark] &:after{border-top-color:var(--elevatedFill,var(--background))}}& header.chat-header{--header-action-size:2.75rem;min-height:var(--chat-panel-header-h,3.85rem);height:var(--chat-panel-header-h,3.85rem);padding:var(--space-3,.75rem) var(--space-3,.75rem) var(--space-3,.75rem) var(--space-4,1rem);border-bottom:.0625rem solid var(--divider,transparent);background:var(--surface-1,var(--elevatedFill,var(--uiBackground)));letter-spacing:.01em;box-sizing:border-box;z-index:80;flex-shrink:0;justify-content:space-between;align-items:center;gap:.6rem;font-size:.92rem;display:flex;position:relative;& h2{color:var(--text);letter-spacing:.015em;margin:0;font-size:1.05rem;font-weight:600;line-height:1.2}& .chat-header-text{min-width:0;padding:0;& .chat-header-title{flex-wrap:wrap;align-items:center;gap:.4em .65em;display:flex}& .chat-header-logo{object-fit:contain;width:auto;max-width:6rem;height:1.35em;display:block}& .chat-status{opacity:1;color:var(--text);align-items:center;gap:.35em;font-size:.65rem;font-weight:500;display:inline-flex}& .chat-status-dot{background:currentColor;border-radius:50%;width:.38em;height:.38em;animation:1.2s ease-in-out infinite chat-pulse}& p{color:var(--text);margin:.35em 0 0;font-size:.78rem;line-height:1.45}}}& article.chat-history{gap:var(--space-3,1rem);min-height:0;padding:var(--chat-history-pad-y,var(--space-3,1rem)) var(--chat-history-pad-x,var(--space-3,1rem)) calc(var(--chat-footer-stack) + var(--chat-history-pad-y,var(--space-3,1rem)));overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scroll-padding-top:var(--space-4,1rem);scroll-padding-bottom:calc(var(--chat-footer-stack) + var(--space-4,1rem));scroll-behavior:auto;background:0 0;flex-direction:column;flex:1;display:flex;position:relative;overflow-y:auto;& .chat-empty{padding:var(--space-6,2rem) var(--space-4,1rem);text-align:center;align-items:center;gap:var(--space-3,.75rem);animation:chat-enter var(--motion-med) both;flex-direction:column;margin:auto 0;display:flex}& .chat-empty-title{font-size:var(--fs-md,.95rem);color:var(--heading);letter-spacing:var(--tracking-tight,-.01em);font-weight:650;line-height:var(--lh-tight,1.25);margin:0}& .chat-empty-hint{font-size:var(--fs-sm,.82rem);line-height:var(--lh-loose,1.6);color:var(--textSecondary,var(--textMuted));max-width:min(var(--measure,40ch), 18rem);margin:0;font-weight:450}& .chat-empty-error{gap:var(--space-2,.5rem)}& .chat-empty-error .chat-empty-title{color:var(--danger)}& .chat-empty-error .chat-empty-retry{margin-top:var(--space-3,.75rem);min-height:var(--hit-min,var(--control-h))}& .chat-history-error{color:var(--danger);text-align:center;margin:0 0 .35em;font-size:.72rem}& .chat-status.is-error{color:var(--danger);opacity:1}& .chat-status.is-stopped{color:var(--text);opacity:1}& .chat-history-load{z-index:1;justify-content:center;padding-bottom:.25em;display:flex;position:sticky;top:0}& .chat-history-load-button{border-radius:var(--pillRadius);background:var(--surface-2,var(--pillBg));color:var(--text);box-shadow:none;cursor:pointer;border:none;padding:.28em .65em;font-size:.65rem;&:disabled{opacity:.55;cursor:wait}}&.is-busy{scroll-behavior:auto}& span.bottom-offset{height:var(--chat-footer-stack);pointer-events:none;position:absolute;inset:auto 0 0}}& footer.chat-compose{min-height:var(--chat-footer-stack);isolation:isolate;flex-shrink:0;position:relative;& .chat-compose-ctas{top:auto;left:.65rem;right:.65rem;bottom:var(--bottomSpace);z-index:5;scrollbar-width:none;pointer-events:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;justify-content:center;align-items:center;gap:.4rem;max-width:calc(100% - 1.3rem);margin:0;padding:0;display:flex;position:absolute;overflow:visible}& .chat-compose-ctas::-webkit-scrollbar{display:none}& .chat-book-cta,& .chat-photo-render-cta{box-sizing:border-box;border:.0625rem solid color-mix(in srgb, var(--heading) 14%, transparent);background:var(--heading);min-width:0;max-width:min(16rem,70vw);min-height:2rem;color:var(--uiBackground,#fff);font:inherit;letter-spacing:.01em;white-space:nowrap;text-overflow:ellipsis;box-shadow:0 .0625rem .125rem color-mix(in srgb, var(--heading) 16%, transparent), 0 .375rem .875rem color-mix(in srgb, var(--heading) 10%, transparent);cursor:pointer;touch-action:manipulation;pointer-events:auto;border-radius:50rem;flex:none;justify-content:center;align-items:center;gap:.4rem;margin:0;padding:0 .95rem;font-size:.82rem;font-weight:700;line-height:1.2;display:inline-flex;position:relative;overflow:hidden}& .chat-book-cta:hover,& .chat-photo-render-cta:hover{background:color-mix(in srgb, var(--heading), #000 8%)}& .chat-cta-icon{opacity:.95;flex-shrink:0;justify-content:center;align-items:center;width:1rem;height:1rem;display:inline-flex}& .chat-cta-icon svg{width:100%;height:100%;display:block}& .chat-cta-label{text-overflow:ellipsis;min-width:0;overflow:hidden}& .chat-book-cta:focus-visible,& .chat-photo-render-cta:focus-visible{outline:var(--focus-outline,.125rem solid var(--heading));outline-offset:.125rem}& .chat-book-cta:active,& .chat-photo-render-cta:active{transform:scale(.98)}html[data-shell=smartphone] &{& .chat-compose-ctas{align-items:stretch;gap:.3rem;max-width:calc(100% - 1rem);left:.5rem;right:.5rem}& .chat-book-cta,& .chat-photo-render-cta{letter-spacing:.015em;white-space:nowrap;text-overflow:ellipsis;text-align:center;flex:1 1 0;gap:.3rem;max-width:none;height:auto;min-height:2.35rem;padding:.28rem .55rem;font-size:.72rem;font-weight:750;line-height:1.15;overflow:hidden}& .chat-cta-icon{width:.95rem;height:.95rem}& .chat-cta-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;font-weight:inherit;display:block;overflow:hidden}}& #request-form{width:auto;height:calc(var(--bottomSpace) - 1.2rem);min-height:5.5rem;max-height:calc(var(--bottomSpace) - 1.1rem);inset:auto .65rem .55rem;box-sizing:border-box;inset-block:auto .55rem;inset-inline:.65rem}& #request-form.compose-voice-primary,& #request-form.compose-voice-idle{width:auto;height:auto;max-height:calc(var(--bottomSpace) - 1rem);min-height:min(calc(var(--bottomSpace) - 1rem), max(5.5rem, calc(var(--bottomSpace) - 1.5rem)));inset:auto .55rem .5rem}& #request-form.compose-type-first{height:calc(var(--bottomSpace) - 1.2rem);min-height:5.5rem;max-height:calc(var(--bottomSpace) - 1.1rem)}html[data-shell=smartphone] &{& #request-form{bottom:max(.45rem, env(safe-area-inset-bottom,0));inset-block-end:max(.45rem, env(safe-area-inset-bottom,0))}& #request-form.compose-voice-primary,& #request-form.compose-voice-idle{bottom:max(.35rem, env(safe-area-inset-bottom,0));max-height:calc(var(--bottomSpace) - .55rem);min-height:min(calc(var(--bottomSpace) - .6rem), max(3.75rem, calc(var(--bottomSpace) - .85rem)))}& #request-form.compose-type-first{height:calc(var(--bottomSpace) - 1rem);min-height:5.5rem;max-height:calc(var(--bottomSpace) - .9rem)}}& section.chat-hints{left:0;right:0;bottom:var(--bottomSpace);z-index:5;box-sizing:border-box;min-height:var(--chat-suggest-band);max-height:var(--chat-suggest-band);pointer-events:auto;background:linear-gradient(180deg, color-mix(in srgb, var(--surfaceWarm,var(--surface-1,#fff)), transparent 55%) 0%, color-mix(in srgb, var(--surfaceWarm,var(--surface-1,#fff)), transparent 12%) 42%, var(--surfaceWarm,var(--surface-1,#faf9f7)) 100%);align-items:center;margin:0;padding:.28rem .65rem .42rem;display:flex;position:absolute;top:auto;overflow:hidden;&:before,&:after{content:"";z-index:2;pointer-events:none;opacity:0;width:.85rem;transition:opacity var(--motion-fast);position:absolute;top:0;bottom:0}&:before{background:linear-gradient(to right, var(--surfaceWarm,var(--surface-1,#faf9f7)), transparent);left:0}&:after{background:linear-gradient(to left, var(--surfaceWarm,var(--surface-1,#faf9f7)), transparent);right:0}&:has(.chat-suggestions[data-overflow=true]):before,&:has(.chat-suggestions[data-overflow=true]):after{opacity:1}&:dir(rtl):before{background:linear-gradient(to left, var(--surfaceWarm,var(--surface-1,#faf9f7)), transparent);left:auto;right:0}&:dir(rtl):after{background:linear-gradient(to right, var(--surfaceWarm,var(--surface-1,#faf9f7)), transparent);left:0;right:auto}& .chat-suggestions{--chat-suggest-fade:.55rem;box-sizing:border-box;overscroll-behavior-x:contain;scroll-snap-type:none;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--heading), transparent 75%) transparent;touch-action:pan-x;flex-flow:row;flex:auto;align-items:center;gap:.35rem;width:100%;min-width:0;max-width:100%;padding-block:.05rem;padding-inline:.15rem .35rem;display:flex;overflow:auto hidden;&::-webkit-scrollbar{height:.1875rem}&::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--heading), transparent 70%);border-radius:50rem}}& .chat-suggestion{z-index:1;letter-spacing:.01em;text-align:start;white-space:nowrap;border:.0625rem solid color-mix(in srgb, var(--heading), transparent 88%);box-sizing:border-box;background:var(--heading);width:fit-content;max-width:min(16rem,80vw);height:auto;min-height:2.25rem;color:var(--background,#fff);text-shadow:none;cursor:pointer;touch-action:manipulation;user-select:none;box-shadow:0 .0625rem .125rem color-mix(in srgb, var(--heading), transparent 68%), 0 .25rem .75rem color-mix(in srgb, var(--heading), transparent 80%);transition:background var(--motion-fast), box-shadow var(--motion-fast), transform var(--motion-fast), filter var(--motion-fast), border-color var(--motion-fast);border-radius:50rem;flex:none;justify-content:center;align-items:center;gap:.35rem;margin:0;padding:.45rem .82rem;font-size:.72rem;font-weight:650;line-height:1.2;display:inline-flex;position:relative;& .chat-suggestion-icon{opacity:.92;flex-shrink:0;width:.9375rem;height:.9375rem;display:inline-flex}& .chat-suggestion-icon svg{width:100%;height:100%;display:block}& .chat-suggestion-label{text-overflow:ellipsis;min-width:0;overflow:hidden}&:hover:not(:disabled){background:color-mix(in srgb, var(--heading), var(--background) 12%);color:var(--background,#fff);border-color:color-mix(in srgb, var(--heading), transparent 70%);box-shadow:0 .125rem .25rem color-mix(in srgb, var(--heading), transparent 62%), 0 .375rem 1rem color-mix(in srgb, var(--heading), transparent 76%);filter:brightness(1.05);transform:translateY(-.0625rem)}&:active:not(:disabled){filter:brightness(.97);transform:translateY(0)}&:focus-visible{outline:var(--focus-outline,.125rem solid var(--heading));outline-offset:.125rem;box-shadow:0 0 0 .125rem var(--background,#fff), 0 0 0 .25rem color-mix(in srgb, var(--heading), transparent 45%), 0 .25rem .75rem color-mix(in srgb, var(--heading), transparent 80%)}&:disabled{cursor:not-allowed;opacity:var(--chat-disabled-opacity);filter:grayscale(.25)}}html[data-shell=smartphone] &{padding:.22rem .5rem .38rem;& .chat-suggestions{--chat-suggest-fade:.65rem;gap:.34rem}& .chat-suggestion{max-width:min(15.5rem,86vw);min-height:2.5rem;padding:.48rem .85rem;font-size:.74rem}& .chat-suggestion .chat-suggestion-icon{width:1rem;height:1rem}}html[data-shell=smartphone] &{& .chat-suggestion{max-width:min(14.5rem,88vw);min-height:2.5rem;padding:.48rem .78rem;font-size:.72rem}}@media (prefers-reduced-motion:reduce){& .chat-suggestion{transition:none}& .chat-suggestion:hover:not(:disabled),& .chat-suggestion:active:not(:disabled){transform:none}}}& .chat-send-hint{color:var(--textTertiary,var(--textMuted));pointer-events:none;user-select:none;z-index:2;white-space:nowrap;text-overflow:ellipsis;transition:opacity var(--motion-fast);margin:0;font-size:.66rem;line-height:1.3;position:absolute;inset:auto auto 1.5rem 2rem;overflow:hidden}&:has(#request-form .voice-listening),&:has(#request-form #voice-error),&:has(#request-form .voice-hint),&:has(#request-form.compose-voice-primary),&:has(#request-form.compose-voice-idle){& .chat-send-hint{opacity:0;visibility:hidden}}html[data-shell=smartphone] &{& .chat-send-hint{display:none}& section.chat-hints .chat-suggestion{border-radius:50rem;min-height:2.5rem;padding-inline:.7rem;font-size:.78rem}}}html[data-shell=smartphone] &{& header.chat-header{display:none}}}html[data-shell=smartphone][data-studio-capture]{& aside#chat,& aside#chat.chat-drawer-open,& .chat-backdrop,& .chat-backdrop.is-open,& aside#chat.is-studio-capturing{opacity:0!important;visibility:hidden!important;pointer-events:none!important}}form#request-form{width:calc(100% - 2em);height:calc(var(--bottomSpace) - 2em);border:.0625rem solid var(--inputBorder,var(--subtleBorder));border-radius:var(--cardRadius,1.1rem);background:var(--softInputBg,var(--surface-2));box-shadow:var(--nestedShadow);transition:border-color var(--motion-fast), box-shadow var(--motion-fast), background var(--motion-fast), min-height var(--motion-fast);padding:0;position:absolute;inset:auto 1em 1em;&.compose-voice-primary{width:auto;height:auto;min-height:min(calc(var(--bottomSpace) - 1.1em), max(5.5rem, calc(var(--bottomSpace) - 1.5em)));max-height:calc(var(--bottomSpace) - 1.1em);box-sizing:border-box;flex-direction:column;justify-content:flex-end;padding:0;display:flex;inset:auto .65em .55em;overflow:visible}&.compose-type-first{width:auto;height:calc(var(--bottomSpace) - 1.2em);min-height:5.5rem;max-height:calc(var(--bottomSpace) - 1.1em);box-sizing:border-box;inset:auto .65em .55em}&.compose-type-first label.compose-field{height:100%;min-height:100%;display:block;position:absolute;inset:0}&.compose-type-first label.compose-field textarea{box-sizing:border-box;width:100%;height:100%;min-height:0;max-height:none;padding:.95rem 1.15rem 2.75rem;position:absolute;inset:0}&.compose-voice-idle{background:linear-gradient(165deg, color-mix(in srgb, var(--surface-1,#fff), var(--heading) 3%) 0%, var(--softInputBg,var(--surface-2)) 55%, var(--surface-2,var(--softInputBg)) 100%);justify-content:center;padding:.7rem .85rem .65rem}&.compose-voice-idle .voice-idle-surface{flex-direction:column;flex:none;justify-content:center;align-items:center;gap:.35rem;width:100%;min-height:0;display:flex}&.compose-voice-idle .voice-cta{text-align:center;letter-spacing:.01em;color:var(--heading);opacity:.92;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:20rem;margin:0;padding:0 .35rem;font-size:.8rem;font-weight:650;line-height:1.3;display:-webkit-box;position:static;overflow:hidden}&.compose-voice-idle .voice-mic-stage{flex-shrink:0;place-items:center;width:3.85rem;height:3.85rem;margin:.1rem 0;display:grid;position:relative}&.compose-voice-idle .voice-ring{border:.0938rem solid color-mix(in srgb, var(--heading), transparent 82%);opacity:.5;pointer-events:none;border-radius:50rem;position:absolute;inset:.1rem}&.compose-voice-idle .voice-ring--delay{opacity:.25;border-width:.0625rem;inset:-.05rem}&.compose-voice-idle .recognition-button.mic-primary{z-index:1;background:var(--heading);width:3.25rem;min-width:2.75rem;height:3.25rem;min-height:2.75rem;color:var(--uiBackground,#fff);box-shadow:0 .25rem .875rem color-mix(in srgb, var(--heading), transparent 72%), 0 0 0 .1875rem color-mix(in srgb, var(--heading), transparent 92%);padding:0;transition:all .2s;position:relative;& span{display:inline-flex}}&.compose-voice-idle .recognition-button.mic-primary svg{--size:1.15rem;width:var(--size);height:var(--size);[data-state=idle] &{--size:1.5rem}}&.compose-voice-idle .recognition-button.mic-primary:hover{background:color-mix(in srgb, var(--heading), #000 8%);transform:scale(1.03)}&.compose-voice-idle .voice-tap-hint{letter-spacing:.02em;color:var(--textMuted,var(--muted,var(--heading)));opacity:.72;flex-shrink:0;margin:0;font-size:.68rem;font-weight:600;line-height:1.2}&.compose-voice-idle .type-escape{box-sizing:border-box;border:.0625rem solid color-mix(in srgb, var(--heading) 12%, transparent);background:color-mix(in srgb, var(--surface-1,#fff) 70%, transparent);height:auto;min-height:2.75rem;color:var(--textSecondary,var(--textMuted,var(--heading)));font:inherit;letter-spacing:.01em;cursor:pointer;touch-action:manipulation;box-shadow:none;transition:background var(--motion-fast), border-color var(--motion-fast), color var(--motion-fast), transform var(--motion-fast);border-radius:50rem;justify-content:center;align-items:center;gap:.35rem;margin:.15rem 0 0;padding:0 .85rem;font-size:.78rem;font-weight:600;line-height:1.2;display:inline-flex}&.compose-voice-idle .type-escape svg{opacity:.85;flex-shrink:0;width:.9rem;height:.9rem}&.compose-voice-idle .type-escape-label{line-height:1}&.compose-voice-idle .type-escape:hover{background:color-mix(in srgb, var(--heading) 5%, var(--surface-1,#fff));border-color:color-mix(in srgb, var(--heading) 18%, transparent);color:var(--heading)}&.compose-voice-idle .type-escape:active{background:color-mix(in srgb, var(--heading) 8%, var(--surface-1,#fff));transform:scale(.98)}&.compose-voice-idle .type-escape:focus-visible{outline:var(--focus-outline,.125rem solid var(--heading));outline-offset:.125rem}&.compose-voice-listening:not(.compose-voice-idle),&.compose-voice-transcribing:not(.compose-voice-idle){border-color:color-mix(in srgb, var(--accent,var(--heading)), transparent 55%);box-shadow:var(--nestedShadow), 0 0 0 .0625rem color-mix(in srgb, var(--accent,var(--heading)), transparent 88%);height:calc(var(--bottomSpace) - 1.2em);min-height:5.5rem;max-height:calc(var(--bottomSpace) - 1.1em)}&.compose-voice-listening:not(.compose-voice-idle) label.compose-field,&.compose-voice-transcribing:not(.compose-voice-idle) label.compose-field{flex:none;height:100%;min-height:100%;display:block;position:absolute;inset:0}&.compose-voice-listening:not(.compose-voice-idle) label.compose-field textarea,&.compose-voice-transcribing:not(.compose-voice-idle) label.compose-field textarea{box-sizing:border-box;width:100%;height:100%;min-height:0;max-height:none;padding:2.15rem 1.15rem 2.75rem;position:absolute;inset:0}&.compose-voice-listening:not(.compose-voice-idle) fieldset,&.compose-voice-transcribing:not(.compose-voice-idle) fieldset{z-index:2;flex-direction:row-reverse;align-items:center;gap:.5rem;display:flex;position:absolute;inset:auto .5em .5em}&.compose-voice-listening .recognition-button.mic-primary,&.compose-voice-listening .recognition-button.active{background:color-mix(in srgb, var(--accent,#c45c26), transparent 12%);color:var(--heading);box-shadow:0 0 0 .1875rem color-mix(in srgb, var(--accent,#c45c26), transparent 65%), 0 0 1.375rem color-mix(in srgb, var(--accent,#c45c26), transparent 55%);animation:1.25s ease-in-out infinite voice-pulse}& .recognition-button.voice-finish{place-items:center;display:inline-grid}& .recognition-button.voice-finish .recognition-icon{transition:opacity var(--motion-fast,.15s ease);grid-area:1/1}& .recognition-button.voice-finish .recognition-icon--enter{opacity:0;visibility:hidden;pointer-events:none}& .recognition-button.voice-finish:hover:not(:disabled),& .recognition-button.voice-finish:focus-visible:not(:disabled){animation:none}& .recognition-button.voice-finish:hover:not(:disabled) .recognition-icon--idle,& .recognition-button.voice-finish:focus-visible:not(:disabled) .recognition-icon--idle{opacity:0;visibility:hidden}& .recognition-button.voice-finish:hover:not(:disabled) .recognition-icon--enter,& .recognition-button.voice-finish:focus-visible:not(:disabled) .recognition-icon--enter{opacity:1;visibility:visible}&.compose-voice-idle .recognition-button.voice-finish .recognition-icon svg{max-width:1.65rem;max-height:1.65rem}&.compose-voice-idle.compose-voice-listening .voice-ring{border-color:color-mix(in srgb, var(--accent,#c45c26), transparent 45%);animation:1.6s ease-out infinite voice-ring-expand}&.compose-voice-idle.compose-voice-listening .voice-ring--delay{animation-delay:.45s}&.compose-voice-transcribing .recognition-button{opacity:.85;animation:1.1s linear infinite voice-spin-soft}&.compose-voice-draft{min-height:5.5rem;padding-bottom:.45rem}&.compose-voice-draft fieldset{justify-content:flex-end;gap:.5rem;inset:auto .55em .5em}&.compose-voice-draft .recognition-button.re-record{background:var(--surface-1,var(--elevatedFill));border:.0625rem solid var(--subtleBorder,var(--inputBorder))}&.compose-voice-draft label.compose-field textarea{min-height:3.6rem;padding-bottom:2.75rem;padding-right:5.5rem}&.compose-voice-primary:not(.compose-voice-idle) fieldset{flex-direction:row-reverse;justify-content:flex-start;align-items:center;gap:.5rem;display:flex;position:absolute;inset:auto .5em .5em}&.compose-voice-primary:not(.compose-voice-idle) .recognition-button.mic-primary{width:2.85rem;min-width:2.85rem;height:2.85rem;min-height:2.85rem}&.compose-voice-primary label.compose-field{flex:1;min-height:3.4rem;display:block;position:relative;inset:auto}&.compose-voice-primary label.compose-field textarea{width:100%;padding:.85rem 1rem 2.6rem;position:relative;inset:auto}&.compose-voice-idle .voice-status-band{white-space:nowrap;text-overflow:ellipsis;z-index:4;background:color-mix(in srgb, var(--surface-1,#fff), var(--heading) 6%);max-width:min(92%,20rem);box-shadow:var(--nestedShadow,none);border-radius:50rem;align-self:center;align-items:center;gap:.4rem;margin:.15rem 0 0;padding:.28rem .75rem;font-size:.68rem;font-weight:650;display:inline-flex;position:static;overflow:hidden;transform:none}&.compose-voice-listening:not(.compose-voice-idle) .voice-status-band,&.compose-voice-transcribing:not(.compose-voice-idle) .voice-status-band{z-index:4;white-space:nowrap;text-overflow:ellipsis;pointer-events:none;background:color-mix(in srgb, var(--surface-1,var(--elevatedFill)), var(--accent,var(--heading)) 8%);max-width:min(92%,100% - 2rem);box-shadow:var(--nestedShadow,none);border-radius:50rem;justify-content:center;align-items:center;gap:.35rem;margin:0;padding:.28rem .85rem;font-size:.68rem;font-weight:650;display:inline-flex;position:absolute;inset:.4rem auto auto 50%;overflow:hidden;transform:translate(-50%)}& .voice-status-dot{background:var(--accent,#c45c26);border-radius:50rem;flex-shrink:0;width:.45rem;height:.45rem;animation:1s ease-in-out infinite voice-dot}&.compose-voice-transcribing .voice-status-dot{background:var(--heading);animation:.7s ease-in-out infinite voice-dot}&:hover{border-color:var(--inputBorderHover,var(--inputBorder))}&:focus-within{border-color:var(--inputBorderFocus,var(--heading));box-shadow:var(--inputFocusRing,var(--focus-ring));background:var(--surface-1,var(--elevatedFill))}&.compose-voice-idle:focus-within{background:linear-gradient(165deg, color-mix(in srgb, var(--surface-1,#fff), var(--heading) 3%) 0%, var(--softInputBg,var(--surface-2)) 55%, var(--surface-2,var(--softInputBg)) 100%)}& label{position:absolute;inset:0;& textarea{border-radius:var(--cardRadius,1.1rem);height:auto;min-height:3.4rem;max-height:8rem;box-shadow:none;resize:none;letter-spacing:.005em;color:var(--heading);background:0 0;border:none;padding:.95rem 1.15rem;font-size:.92rem;line-height:1.45;position:absolute;inset:0;overflow-y:auto}& textarea:focus,& textarea:focus-visible{box-shadow:none;background:0 0;border:none;outline:none}}& fieldset{z-index:2;border:none;flex-direction:row-reverse;gap:.45em;margin:0;padding:0;display:flex;position:absolute;inset:auto .5em .5em;& button{width:var(--control-h);min-height:var(--control-h);min-width:var(--control-h);height:var(--control-h);box-shadow:none;background:var(--surface-1,var(--elevatedFill));color:var(--heading);transition:transform var(--motion-fast), background var(--motion-fast), box-shadow var(--motion-fast);touch-action:manipulation;cursor:pointer;border:none;border-radius:50rem;justify-content:center;align-items:center;gap:0;padding:0;font-size:.7em;line-height:1;display:inline-flex;&:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset,.125rem);box-shadow:var(--focus-ring)}& svg{flex-shrink:0;width:1.1rem;height:1.1rem}&:hover{background:color-mix(in srgb, var(--surface-1), var(--heading) 5%)}&:active{transform:scale(.98)}&.primary,&[type=submit]{background:var(--heading);color:var(--uiBackground);border:none}&[type=submit]:disabled{opacity:.38;cursor:not-allowed;filter:none;box-shadow:none;transform:none}&[type=submit]:disabled:hover{background:var(--heading);color:var(--uiBackground)}&.stop-button,&.retry-button{white-space:nowrap;border-radius:50rem;gap:.35rem;width:auto;min-width:auto;height:auto;min-height:2.2rem;padding:.35rem .75rem;font-size:.72rem;line-height:1.2}&.recognition-button{position:relative;& .recognition-icon{place-items:center;line-height:0;display:grid}& .recognition-icon svg{width:1.1rem;height:1.1rem}&.active{color:var(--heading);background:color-mix(in srgb, var(--accent), transparent 72%);box-shadow:0 0 0 .125rem color-mix(in srgb, var(--accent), transparent 55%);animation:1.4s ease-in-out infinite voice-pulse}&.unsupported{opacity:.55}&:disabled{cursor:not-allowed}}&.type-escape--back{background:var(--surface-1,var(--elevatedFill));border:.0625rem solid var(--subtleBorder,var(--inputBorder))}}}& .voice-hint{z-index:3;border-radius:var(--pillRadius,50rem);letter-spacing:.01em;pointer-events:none;white-space:nowrap;text-overflow:ellipsis;background:color-mix(in srgb, var(--surface-1,var(--elevatedFill)), transparent 8%);width:auto;box-shadow:none;justify-content:center;margin:0;padding:.15rem .45rem;font-size:.66rem;font-weight:600;line-height:1.35;display:inline-flex;position:absolute;inset:.5rem .5rem auto;overflow:hidden}&:has(#voice-error){border-color:var(--danger);box-shadow:var(--inputInvalidRing)}& .voice-error-card{box-sizing:border-box;border-radius:var(--controlRadius,.75rem);background:var(--dangerSoft,color-mix(in srgb, var(--danger) 14%, transparent));width:100%;max-width:100%;color:var(--danger);pointer-events:auto;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.35rem .55rem;margin:.45rem 0 0;padding:.55rem .65rem .6rem;display:grid}& .voice-error-icon{width:1.25rem;height:1.25rem;color:var(--danger);place-items:center;margin-top:.05rem;display:grid;& svg{width:1.15rem;height:1.15rem;display:block}}& .voice-error-copy{flex-direction:column;gap:.2rem;min-width:0;display:flex}& .voice-error-title{letter-spacing:-.01em;color:var(--danger);margin:0;font-size:.85rem;font-weight:700;line-height:1.3}& .voice-error-hint{color:var(--text);margin:0;font-size:.75rem;font-weight:500;line-height:1.4}& .voice-error-retry{border:.0625rem solid color-mix(in srgb, var(--danger) 35%, transparent);background:var(--surface-1,var(--elevatedFill));width:fit-content;min-height:2.35rem;color:var(--danger);font:inherit;cursor:pointer;touch-action:manipulation;border-radius:50rem;grid-column:2;justify-content:center;align-items:center;gap:.35rem;margin:.05rem 0 0;padding:.25rem .7rem;font-size:.78rem;font-weight:650;display:inline-flex;& svg{width:.95rem;height:.95rem;display:block}&:hover{background:color-mix(in srgb, var(--danger) 10%, var(--surface-1,var(--elevatedFill)))}&:focus-visible{outline:var(--focus-outline,.125rem solid var(--heading));outline-offset:.125rem}}&.compose-voice-idle .recognition-button.mic-primary.is-error{background:var(--surface-1,var(--elevatedFill));color:var(--danger);box-shadow:0 0 0 .125rem var(--danger), 0 0 0 .28rem color-mix(in srgb, var(--danger) 28%, transparent)}&.compose-voice-idle .recognition-button.mic-primary.is-error:hover{background:color-mix(in srgb, var(--danger) 10%, var(--surface-1,var(--elevatedFill)));transform:none}& .voice-hint{color:var(--heading)}& .voice-hint.voice-listening{color:var(--heading);background:color-mix(in srgb, var(--surface-2,var(--chipFill)), var(--heading) 4%)}& .voice-listening .voice-interim{opacity:.72;font-weight:500}&:has(.voice-hint) label textarea{padding-top:1.85rem}&.compose-voice-listening:not(.compose-voice-idle):has(.voice-status-band) label textarea,&.compose-voice-transcribing:not(.compose-voice-idle):has(.voice-status-band) label textarea{padding-top:2.15rem}}.chat-thread-shell:has(#request-form.compose-voice-primary) .chat-send-hint,.chat-panel:has(#request-form.compose-voice-primary) .chat-send-hint,div:has(>#request-form.compose-voice-primary) .chat-send-hint{pointer-events:none;opacity:0!important;visibility:hidden!important}:has(#request-form.compose-voice-primary)>.chat-send-hint,:has(#request-form.compose-voice-primary) .chat-send-hint{opacity:0;visibility:hidden}html[data-shell=smartphone]{& form#request-form{inset:.4em .5em max(.4em, env(safe-area-inset-bottom,0));width:calc(100% - 1rem);height:calc(var(--bottomSpace,6.5rem) - 1em);min-height:4.25rem;max-height:calc(var(--bottomSpace,6.5rem) - .85em);border-radius:calc(var(--cardRadius,.95rem) - .05rem);box-shadow:0 .0625rem .125rem color-mix(in srgb, var(--heading) 6%, transparent), 0 .35rem 1rem color-mix(in srgb, var(--heading) 8%, transparent);&.compose-type-first{height:calc(var(--bottomSpace,7.25rem) - 1.1em);min-height:4.75rem;max-height:calc(var(--bottomSpace,7.25rem) - .95rem)}&.compose-voice-primary{inset:.3em .45em max(.3em, env(safe-area-inset-bottom,0));width:calc(100% - .9rem);min-height:calc(var(--bottomSpace) - .9em);max-height:calc(var(--bottomSpace) - .7em);height:auto;overflow:visible}&.compose-voice-idle{justify-content:center;gap:0;padding:.35rem .5rem}&.compose-voice-idle .voice-idle-surface{flex-direction:row;justify-content:center;align-items:center;gap:.85rem;width:100%}&.compose-voice-idle .voice-cta,&.compose-voice-idle .voice-tap-hint{display:none}&.compose-voice-idle .type-escape{order:1}&.compose-voice-idle .voice-mic-stage{order:2;width:3.45rem;height:3.45rem;margin:0}&.compose-voice-idle .voice-ring{inset:.08rem}&.compose-voice-idle .voice-ring--delay{inset:-.04rem}&.compose-voice-idle .recognition-button.mic-primary{width:3.1625rem;min-width:3.1625rem;height:3.1625rem;min-height:3.1625rem;box-shadow:0 .25rem .85rem color-mix(in srgb, var(--heading), transparent 72%), 0 0 0 .125rem color-mix(in srgb, var(--heading), transparent 92%)}&.compose-voice-idle .recognition-button.mic-primary svg{--size:calc(1.1rem * 1.15);[data-state=idle] &{--size:calc(1.3rem * 1.15)}}&.compose-voice-idle .type-escape{border-radius:50%;gap:0;width:3.1625rem;min-width:3.1625rem;height:3.1625rem;min-height:3.1625rem;margin:0;padding:0;position:relative}&.compose-voice-idle .type-escape-label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:.0625rem;height:.0625rem;margin:-.0625rem;padding:0;position:absolute;overflow:hidden}&.compose-voice-idle .type-escape svg{opacity:.9;width:1.3225rem;height:1.3225rem}& label textarea{min-height:2.75rem;max-height:5.5rem;padding:.7rem .85rem;padding-right:calc(var(--hit-min,var(--control-h)) + .65rem);font-size:.9rem}&.compose-type-first label.compose-field textarea{height:100%;min-height:0;max-height:none;padding:.7rem .85rem 2.6rem;padding-right:calc(var(--hit-min,var(--control-h)) + .65rem)}&.compose-voice-draft label.compose-field textarea,&.compose-voice-primary:not(.compose-voice-idle) label.compose-field textarea{padding-right:calc(var(--hit-min,var(--control-h)) + .65rem);padding-bottom:calc(var(--hit-min,var(--control-h)) * 2 + .85rem)}& fieldset{flex-direction:column-reverse;justify-content:flex-end;align-items:flex-end;gap:.3em;inset:auto .3em .3em auto;& button{width:var(--hit-min,var(--control-h));min-width:var(--hit-min,var(--control-h));min-height:var(--hit-min,var(--control-h));height:var(--hit-min,var(--control-h))}}&.compose-voice-primary:not(.compose-voice-idle) fieldset,&.compose-voice-draft fieldset{flex-direction:column-reverse;justify-content:flex-end;align-items:flex-end;gap:.3em;inset:auto .3em .3em auto}& .voice-hint{inset:.4rem auto auto .7rem;right:calc(var(--hit-min,var(--control-h)) + .85rem);max-width:calc(100% - var(--hit-min,var(--control-h)) - 1.2rem);font-size:.62rem}& .voice-error-card{margin-top:.35rem;padding:.45rem .55rem .5rem}& .voice-error-title{font-size:.8rem}& .voice-error-hint{font-size:.72rem}& .voice-error-retry{min-height:2.45rem}&:has(.voice-hint) label textarea{padding-top:1.65rem}}}html[data-shell=smartphone][data-shell-landscape=short]{& form#request-form{width:calc(100% - .8em);height:calc(var(--bottomSpace,5.5rem) - .85em);inset:.4em;&.compose-voice-idle{min-height:5rem;padding:.35rem}&.compose-voice-idle .voice-cta{font-size:.68rem}&.compose-voice-idle .voice-mic-stage{width:3.68rem;height:3.68rem}&.compose-voice-idle .recognition-button.mic-primary{width:3.1625rem;min-width:3.1625rem;height:3.1625rem;min-height:3.1625rem}& label textarea{min-height:2.25rem;max-height:3.5rem;padding:.45rem .65rem;font-size:.85rem}}}@media (prefers-reduced-motion:reduce){form#request-form{& .recognition-button.active,& .voice-ring,& .voice-status-dot,&.compose-voice-transcribing .recognition-button{animation:none!important}}}@keyframes voice-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes voice-ring-expand{0%{opacity:.55;transform:scale(.92)}to{opacity:0;transform:scale(1.35)}}@keyframes voice-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.85)}}@keyframes voice-spin-soft{0%{filter:brightness()}50%{filter:brightness(1.08)}to{filter:brightness()}}@keyframes pulse{0%{transform:scale(1)}10%{transform:scaleY(1.2)}30%{transform:scaleY(.9)}40%{transform:scaleY(1.25)}70%{transform:scaleY(.95)}90%{transform:scaleY(1.1)}to{transform:scale(1)}}.chat-price-sticky{box-sizing:border-box;width:100%;max-width:100%;padding:.45rem max(.85rem, env(safe-area-inset-right,0)) .45rem max(.85rem, env(safe-area-inset-left,0));border:none;border-bottom:.0625rem solid color-mix(in srgb, var(--heading) 8%, transparent);background:color-mix(in srgb, var(--surface-1,var(--uiBackground)) 88%, transparent);-webkit-backdrop-filter:blur(.625rem);cursor:pointer;text-align:left;min-height:2.75rem;transition:padding var(--motion-fast), opacity var(--motion-fast), background var(--motion-fast);border-radius:0;flex-shrink:0;justify-content:space-between;align-items:center;gap:.5rem .75rem;margin:0;display:flex;&.is-compact{opacity:.96;min-height:2.25rem;padding-block:.22rem;& .label{font-size:.58rem}& .value{font-size:.82rem}}&:hover{background:color-mix(in srgb, var(--heading) 5%, var(--surface-1,var(--uiBackground)))}&:focus-visible{outline:var(--focus-outline);outline-offset:-.125rem}& .label{letter-spacing:.08em;text-transform:uppercase;min-width:0;max-width:40%;color:var(--textSecondary,var(--textMuted,var(--text)));text-overflow:ellipsis;white-space:nowrap;flex:0 auto;font-size:.65rem;font-weight:650;overflow:hidden}& .value{font-variant-numeric:tabular-nums;min-width:0;color:var(--heading,var(--text));text-align:right;white-space:nowrap;text-overflow:ellipsis;flex:auto;font-size:.88rem;font-weight:650;overflow:hidden}html[data-shell=tablet] &{min-height:2.85rem;padding-block:.5rem;padding-inline:.9rem;& .value{font-size:.92rem}}html[data-shell=smartphone] &{min-height:3rem}}.sk-shimmer{background:linear-gradient(90deg, color-mix(in srgb, var(--heading), transparent 94%) 0%, color-mix(in srgb, var(--heading), transparent 88%) 45%, color-mix(in srgb, var(--heading), transparent 94%) 100%);background-size:200% 100%;animation:1.25s ease-in-out infinite sk-shimmer}.chat-skeleton{flex-direction:column;gap:1.15rem;width:100%;padding:.35rem 0 .75rem;display:flex}.chat-skeleton-row{flex-direction:column;gap:.45rem;max-width:88%;display:flex}.chat-skeleton-row.is-user{align-self:flex-end;align-items:flex-end;max-width:72%}.chat-skeleton-row .sk-line{border-radius:.55rem;width:100%;height:.85rem;display:block}.chat-skeleton-row .sk-line.sk-bubble{border-radius:var(--cardRadius,1rem);width:min(100%,16rem);height:3.1rem}.chat-skeleton-row .sk-line.sk-short{width:58%;height:.7rem}.chat-skeleton-row.is-user .sk-line.sk-bubble{width:min(100%,11rem);height:2.4rem}.chat-history-skel{flex-direction:column;gap:.45rem;width:min(100%,14rem);margin:.35rem auto .65rem;padding:.35rem .5rem;display:flex}.chat-history-skel .sk-line{border-radius:50rem;width:100%;height:.65rem}.chat-history-skel .sk-line:nth-child(2){width:78%}@media (prefers-reduced-motion:reduce){.sk-shimmer,.chat-skeleton-row .sk-line,.chat-history-skel .sk-line{animation:none}}.chat-entry{align-items:flex-start;gap:var(--space-2,.5rem);width:100%;margin-bottom:var(--space-4,1rem);animation:chat-enter var(--motion-med) both;flex-direction:column;display:flex;&.assistant{scroll-margin-top:.5rem}html[data-shell=tablet] &{gap:.4rem;margin-bottom:.85rem;&.tool .message .content{width:100%}& .assets .timestamp{font-size:.7rem}}html[data-shell=smartphone] &{gap:.35rem;margin-bottom:.7rem;& .assets .avatar{--size:1.15em}& .assets .timestamp{font-size:.68rem}&.tool .message .content{width:100%}}& .assets{align-items:center;gap:var(--space-2,.5rem);width:100%;display:flex;& .timestamp{font-size:var(--fs-xs,.72rem);color:var(--textTertiary,var(--textMuted));letter-spacing:.01em}& .avatar{--size:1.25em;--halfSize:calc(var(--size) / 2);width:var(--size);height:var(--size);background:color-mix(in srgb, var(--heading), var(--background) 22%);color:var(--background);aspect-ratio:1;box-shadow:none;border:none;border-radius:50%;flex-direction:row;justify-content:center;align-items:center;margin:.08em 0 auto;padding:0;display:flex;position:sticky;top:0;& span{font-size:var(--halfSize);font-weight:600;transition:all .2s}& svg{width:var(--halfSize);height:var(--halfSize)}}}& .message{max-width:100%;text-shadow:0 .0625rem 0 var(--textShadowColor);background:0 0;flex-direction:column;flex:1;gap:.15em;padding:.18em .2em;display:flex;& .content{width:fit-content;max-width:100%;display:block;overflow:auto;& .markdown-body{margin-bottom:.25em}}& p,& .markdown-body p{font-weight:400}& .text-placeholder{--width:5em;--delay:.2s;--duration:1s;width:var(--width);background:color-mix(in srgb, var(--background), var(--text) 30%);height:.7em;animation:placeholder var(--duration) var(--delay) infinite ease-in-out;border-radius:.25em;margin:0 .5em 0 0;display:inline-block}}&.widget{flex-direction:column;padding:.5em 0;& .message{width:100%;& .content{width:100%;max-width:100%}}}&.tool{flex-direction:column;& .assets{flex-direction:row-reverse}& .message{align-self:stretch;width:100%;min-width:0}& .message .content{width:100%;min-width:0;max-width:100%;overflow:visible}}&.tool.insight-stack-entry{overflow:visible;& .message,& .message .content{overflow:visible}}&:not(.assistant):not(.think):not(.tool):not(.widget):not(.error){& .message .content{border-radius:var(--cardRadius,1rem);background:linear-gradient(145deg, color-mix(in srgb, var(--surface-2), var(--heading) 5%) 0%, var(--surface-2,var(--chipFill)) 100%);box-shadow:var(--nestedShadow);color:var(--heading);max-width:min(100%, calc(var(--measure,40ch) * 1.35));line-height:var(--lh-body,1.5);font-size:var(--fs-md,.95rem);border:none;padding:.75em 1rem}}&.coach .message .content{width:100%;max-width:min(100%, calc(var(--measure,40ch) * 1.45))}&.assistant,&.think,&.coach{flex-direction:column;& .assets{flex-direction:row-reverse}& .message .content{width:fit-content;max-width:100%;font-size:var(--fs-md,.95rem);font-weight:400;line-height:var(--lh-body,1.5);color:var(--heading);overflow:auto}& .think-message{width:100%;min-width:100%;margin:0 0 1em;padding:0;display:flex;position:relative;& .think-message-icon svg{width:1rem;height:1rem;margin:.2rem .5rem 0 0}}& .message{& .turn-status{color:var(--primary);margin:.5em 0 0;font-size:.72rem;animation:1.2s ease-in-out infinite chat-pulse}& .stream-cursor{vertical-align:text-bottom;background:var(--primary);width:.45em;height:1em;margin-left:.1em;animation:.9s step-end infinite stream-blink;display:inline-block}}}&,&.assistant,&.user{& .message{&:hover .entry-actions,&:focus-within .entry-actions{opacity:1}& .entry-actions{opacity:0;transition:opacity var(--chat-transition-fast,.15s ease);flex-wrap:wrap;gap:.5em;margin:.75em 0 0;display:flex;& .entry-action{color:var(--text);cursor:pointer;height:auto;min-height:auto;text-shadow:inherit;box-shadow:none;background:0 0;border:none;border-radius:0;align-items:center;gap:.35em;padding:0;font-size:.7rem;line-height:1.1;display:inline-flex;& svg{--size:1em;height:var(--size);width:var(--size)}&.copied{color:var(--primary)}&:focus-visible{outline:.125rem solid var(--primary);outline-offset:.125rem}&:hover{text-underline-offset:.2em;text-decoration:underline}}}}}& .tool-card{border-radius:var(--cardRadius,var(--panelRadius));background:var(--surface-2,var(--chipFill));box-shadow:none;color:var(--text);border:none;padding:.7rem .9rem}& .tool-card.error{background:color-mix(in srgb, var(--danger) 8%, var(--surface-2));border:none}& .tool-card-head{align-items:center;gap:.45rem;margin-bottom:.35rem;display:flex}& .tool-card-icon{width:1.1rem;height:1.1rem;color:var(--heading,var(--text));flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}& .tool-card.error .tool-card-icon{color:var(--danger,#c0392b)}& .tool-card-icon svg{width:100%;height:100%;display:block}& .tool-card-title{color:var(--text);font-size:.82rem;font-weight:650}& .tool-card-body{color:var(--text);font-size:.8rem}& .photo-render-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5em;width:100%;margin-top:.75em;display:grid;& figure{background:var(--surface-2,var(--chipFill));border:none;border-radius:.45em;margin:0;overflow:hidden;& img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}}}&.error{flex-direction:column;& .avatar{background:var(--danger);color:#fff;& svg{stroke:#fff}}& .message{background:color-mix(in srgb, var(--danger), white 10%);color:#fff;border-color:var(--danger);text-shadow:0 .0625rem 0 color-mix(in srgb, var(--danger), white 30%);border-radius:.5em;padding:1em;& .timestamp{color:inherit}}}}.chat-coach-actions{flex-wrap:wrap;gap:.5rem;width:100%;margin-top:.75rem;display:flex}.chat-coach-action{box-sizing:border-box;border:.0625rem solid color-mix(in srgb, var(--heading) 14%, transparent);min-height:2.75rem;font:inherit;cursor:pointer;touch-action:manipulation;color:var(--heading);background:color-mix(in srgb, var(--surface-1,#fff) 92%, var(--heading) 4%);border-radius:50rem;padding:.45rem .9rem;font-size:.82rem;font-weight:650;line-height:1.2}.chat-coach-action.is-primary{color:var(--uiBackground,#fff);background:var(--heading);box-shadow:0 .0625rem .125rem color-mix(in srgb, var(--heading) 18%, transparent), 0 .375rem 1rem color-mix(in srgb, var(--heading) 12%, transparent);border-color:#0000}.chat-coach-action.is-secondary{background:color-mix(in srgb, var(--heading) 8%, transparent)}.chat-coach-action.is-ghost{opacity:.88;background:0 0;border-color:#0000;min-height:2.75rem;padding-inline:.65rem;font-weight:550}.chat-coach-action:focus-visible{outline:var(--focus-outline,.125rem solid var(--heading));outline-offset:.125rem}.chat-coach-action:active{transform:scale(.98)}.chat-coach-hints{flex-wrap:wrap;gap:.4rem;margin-top:.5rem;display:flex}.chat-coach-hint{box-sizing:border-box;border:.0625rem solid color-mix(in srgb, var(--heading) 12%, transparent);background:color-mix(in srgb, var(--surface-1,#fff) 70%, transparent);min-height:2.5rem;color:var(--text,var(--heading));font:inherit;cursor:pointer;touch-action:manipulation;transition:background var(--motion-fast), border-color var(--motion-fast);border-radius:50rem;padding:.35rem .75rem;font-size:.76rem;font-weight:550}.chat-coach-hint:hover{border-color:color-mix(in srgb, var(--heading) 20%, transparent);background:color-mix(in srgb, var(--heading) 5%, var(--surface-1,#fff))}.chat-coach-hint:focus-visible{outline:var(--focus-outline,.125rem solid var(--heading));outline-offset:.125rem}html[data-shell=smartphone]{& .chat-coach-hint{min-height:2.75rem}}.chat-coach-status{opacity:.72;margin:.55rem 0 0;font-size:.78rem;font-weight:550}.markdown-body{overflow-wrap:anywhere;word-break:break-word;max-width:100%}.markdown-body pre{background:color-mix(in srgb, var(--text) 6%, var(--uiBackground));border-radius:.4em;max-width:100%;padding:.75em 1em 2.25em;position:relative;overflow-x:auto}.markdown-body img,.markdown-body table{max-width:100%}.markdown-body code{font-size:.85em}.markdown-body table{border-collapse:collapse;width:100%;font-size:.85em}.markdown-body th,.markdown-body td{border:.0625rem solid color-mix(in srgb, var(--text) 20%, transparent);padding:.35em .5em}.markdown-body .code-copy{border:.0625rem solid color-mix(in srgb, var(--text) 15%, transparent);background:var(--uiBackground);color:var(--text);cursor:pointer;border-radius:.25em;min-width:2.75rem;min-height:2.75rem;padding:.2em .45em;font-size:.65rem;position:absolute;bottom:.35em;right:.35em}.kitchen-insight{--insight-hero-mb:1rem;--insight-pad-x:1rem;--insight-pad-y:1rem;--insight-line:var(--divider,transparent);box-sizing:border-box;width:100%;min-width:0;max-width:100%;padding:var(--insight-pad-y) var(--insight-pad-x);border-radius:var(--cardRadius,var(--panelRadius));border:.0625rem solid color-mix(in srgb, var(--heading) 7%, transparent);background:color-mix(in srgb, var(--surface-1,#fff) 55%, var(--surface-2,var(--chipFill)));box-shadow:var(--nestedShadow);text-align:left;color:var(--text);overflow-wrap:anywhere;flex-wrap:wrap;align-items:center;gap:0 .75rem;display:flex;&>header{font-size:var(--sectionLabel,.58rem);letter-spacing:.14em;text-transform:uppercase;flex:1 0 100%;margin:0 0 .65em;font-weight:600}&>.score{font-variant-numeric:tabular-nums;letter-spacing:-.04em;min-width:0;margin:0 0 var(--insight-hero-mb);color:var(--text);text-wrap:balance;flex:auto;font-size:1.55rem;font-weight:600;line-height:1.15}&>.badge{margin:0 0 var(--insight-hero-mb)}& .badge{text-transform:uppercase;letter-spacing:.08em;border:.0625rem solid color-mix(in srgb, var(--insight-accent) 28%, transparent);background:color-mix(in srgb, var(--insight-accent) 12%, transparent);color:var(--insight-accent);border-radius:50rem;padding:.45em .95em;font-size:.55rem;font-weight:600;line-height:1.2;&.excellent,&.good{--insight-accent:var(--success)}&.fair,&.studio{--insight-accent:var(--alert)}&.critical{--insight-accent:color-mix(in srgb, var(--danger) 78%, var(--alert))}}& .chips{border-top:.0625rem solid var(--insight-line);flex-wrap:wrap;flex:1 0 100%;gap:.75rem 1.5rem;margin:0;padding:.75rem 0 0;list-style:none;display:flex}& .chip{background:0 0;flex-direction:column;align-items:flex-start;gap:.2em;min-width:0;max-width:100%;margin:0;padding:0;display:flex;& .value{font-variant-numeric:tabular-nums;color:var(--text);font-size:1.05rem;font-weight:600;line-height:1.15}& .hint{color:var(--textSecondary,var(--textMuted,var(--text)));white-space:normal;overflow-wrap:anywhere;font-size:.7rem;font-weight:500;line-height:1.35}&.warn{border-radius:var(--pillRadius,.75rem);border:.0625rem solid color-mix(in srgb, var(--alert) 22%, transparent);background:color-mix(in srgb, var(--alert) 10%, transparent);padding:.35em .55em;& .value{color:var(--alert)}}&.reference .value{font-weight:500}}}.kitchen-insight.pricing>.score{letter-spacing:-.04em;flex:1 0 100%;margin-bottom:.35rem;font-size:1.5rem}.kitchen-insight.pricing .chips{flex-direction:column;gap:.5rem}.kitchen-insight.evaluation .chips{gap:1rem 2rem}.kitchen-insight.evaluation>.score{font-feature-settings:"tnum" 1;min-width:1.5ch}html[data-shell=tablet]{& .kitchen-insight{--insight-pad-x:.9rem;--insight-pad-y:.9rem}& .kitchen-insight>.score{font-size:1.45rem}& .kitchen-insight.pricing>.score{font-size:1.4rem}& .kitchen-insight .chips{gap:.65rem 1.25rem}& .kitchen-insight .chip .hint{font-size:.68rem}}html[data-shell=smartphone]{& .kitchen-insight{--insight-pad-x:.8rem;--insight-pad-y:.75rem;border-radius:.95rem}& .kitchen-insight>header{margin-bottom:.45em;font-size:.55rem}& .kitchen-insight>.score{font-size:1.35rem}& .kitchen-insight.pricing>.score{font-size:1.28rem}& .kitchen-insight .chips{gap:.55rem 1rem;padding-top:.6rem}& .kitchen-insight .chip .value{font-size:.98rem}& .kitchen-insight .chip .hint{font-size:.65rem}}.insight-stack{--stack-peek:1.5rem;--stack-tuck:1.1rem;--stack-spread:.4rem;--stack-gap:.5rem;--stack-turn-gap:1.15rem;--stack-motion:var(--motion-med,.28s ease);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;user-select:none;outline:none;width:100%;min-width:0;max-width:100%;position:relative;overflow:visible}.insight-stack:focus-visible{outline:var(--focus-outline,.125rem solid var(--heading));outline-offset:.2rem;border-radius:var(--cardRadius,1rem)}.insight-stack-deck{width:100%;transition:gap var(--stack-motion);flex-direction:column;align-items:stretch;gap:0;display:flex;position:relative;overflow:visible}.insight-stack-card{transform-origin:top;width:100%;min-width:0;transition:transform var(--stack-motion), opacity var(--stack-motion), max-height var(--stack-motion), margin var(--stack-motion), padding var(--stack-motion), filter var(--stack-motion);overflow:visible}.insight-stack-card .kitchen-insight{box-shadow:var(--nestedShadow)}.insight-stack.is-collapsed .insight-stack-deck{flex-direction:column;gap:0;display:flex}.insight-stack.is-collapsed .insight-stack-card:first-child{z-index:calc(var(--stack-n) + 1);flex:none;max-height:none;position:relative;overflow:visible}.insight-stack.is-collapsed .insight-stack-card:not(:first-child){--stack-steps:max(1, calc(var(--stack-n) - 1));--stack-fade:max(.15, calc(1 - (var(--i) - 1) * .85 / var(--stack-steps)));z-index:calc(var(--stack-n) - var(--i));flex-direction:column;flex:0 0 var(--stack-peek);height:var(--stack-peek);max-height:var(--stack-peek);margin-top:calc(var(--stack-tuck) * -1);border-radius:var(--cardRadius,1rem);pointer-events:none;width:100%;opacity:var(--stack-fade);justify-content:flex-end;margin-inline:0;display:flex;position:relative;overflow:visible;transform:none}@media (hover:hover) and (pointer:fine){.insight-stack.is-collapsed:hover .insight-stack-card:not(:first-child){margin-top:calc((var(--stack-tuck) - var(--stack-spread)) * -1)}}.insight-stack.is-collapsed:focus-visible .insight-stack-card:not(:first-child){margin-top:calc((var(--stack-tuck) - var(--stack-spread)) * -1)}.insight-stack.is-collapsed .insight-stack-card:not(:first-child) .kitchen-insight{height:calc(var(--stack-peek) + var(--cardRadius,1rem));min-height:calc(var(--stack-peek) + var(--cardRadius,1rem));box-sizing:border-box;border-radius:var(--cardRadius,1rem);border:.0625rem solid color-mix(in srgb, var(--heading) calc(var(--stack-fade) * 7%), transparent);box-shadow:0 .0625rem .125rem color-mix(in srgb, var(--heading) calc(var(--stack-fade) * 6%), transparent), 0 .25rem .875rem color-mix(in srgb, var(--heading) calc(var(--stack-fade) * 7%), transparent);filter:none;flex:none;align-content:stretch;padding:0}.insight-stack.is-collapsed .insight-stack-card:not(:first-child) .kitchen-insight>.score,.insight-stack.is-collapsed .insight-stack-card:not(:first-child) .kitchen-insight>.badge,.insight-stack.is-collapsed .insight-stack-card:not(:first-child) .kitchen-insight>.chips,.insight-stack.is-collapsed .insight-stack-card:not(:first-child) .kitchen-insight>header{visibility:hidden;border:none;height:0;margin:0;padding:0;overflow:hidden}.insight-stack.is-expanded{cursor:pointer}.insight-stack.is-expanded .insight-stack-deck{gap:var(--stack-turn-gap)}.insight-stack.is-expanded .insight-stack-turn{gap:var(--stack-gap);flex-direction:column;width:100%;min-width:0;display:flex}.insight-stack.is-expanded .insight-stack-card{z-index:1;opacity:1;pointer-events:auto;border-radius:0;flex:none;width:100%;height:auto;max-height:none;margin:0;display:block;position:relative;overflow:visible;transform:none}.insight-stack.is-expanded .insight-stack-card .kitchen-insight{filter:none;border-radius:var(--cardRadius,var(--panelRadius));border-top:.0625rem solid color-mix(in srgb, var(--heading) 7%, transparent);height:auto;min-height:0;box-shadow:var(--nestedShadow);padding-block:var(--insight-pad-y,1rem)}.insight-stack.is-expanded .insight-stack-card .kitchen-insight>.score,.insight-stack.is-expanded .insight-stack-card .kitchen-insight>.badge,.insight-stack.is-expanded .insight-stack-card .kitchen-insight>.chips,.insight-stack.is-expanded .insight-stack-card .kitchen-insight>header{visibility:visible;white-space:normal;height:auto;overflow:visible}.insight-stack.is-expanded .insight-stack-badge{display:none}.insight-stack-badge{z-index:calc(var(--stack-n) + 4);font-variant-numeric:tabular-nums;min-width:1.35rem;height:1.35rem;color:var(--surface-1,#fff);background:var(--heading,#1a1a1a);box-shadow:0 .1rem .35rem color-mix(in srgb, var(--heading) 25%, transparent);pointer-events:none;border-radius:50rem;place-items:center;padding:0 .35rem;font-size:.65rem;font-weight:700;line-height:1;display:inline-grid;position:absolute;top:.55rem;right:.55rem}.chat-entry.tool.insight-stack-entry,.chat-entry.tool.insight-stack-entry .message,.chat-entry.tool.insight-stack-entry .message .content{overflow:visible}html[data-shell=tablet]{& .insight-stack{--stack-peek:1.35rem;--stack-tuck:1rem;--stack-spread:.35rem;--stack-gap:.45rem;--stack-turn-gap:1.05rem}& .insight-stack-badge{min-width:1.3rem;height:1.3rem;font-size:.62rem;top:.5rem;right:.5rem}& .chat-entry.tool.insight-stack-entry{margin-bottom:.85rem}}html[data-shell=smartphone]{& .insight-stack{--stack-peek:1.2rem;--stack-tuck:.88rem;--stack-spread:.28rem;--stack-gap:.4rem;--stack-turn-gap:.95rem}& .insight-stack-badge{min-width:1.2rem;height:1.2rem;font-size:.58rem;top:.4rem;right:.4rem}& .chat-entry.tool.insight-stack-entry{margin-bottom:.65rem}}.dropdown{border-radius:var(--cardRadius,1.1rem);background:var(--elevatedFill,var(--uiBackground));border:.0625rem solid var(--panelBorder);min-width:13.5rem;max-width:min(20rem,100vw - 2rem);box-shadow:var(--popoverShadow);z-index:var(--z-dropdown,100010);color:var(--text);-webkit-overflow-scrolling:touch;transform-origin:top;animation:dropdown-in var(--motion-spring) both;pointer-events:auto;isolation:isolate;flex-direction:column;gap:.1rem;padding:.4rem;font-size:.9rem;display:flex;position:absolute;top:calc(100% + .5rem);&.float-right{transform-origin:100% 0;left:auto;right:0}&.float-left{transform-origin:0 0;left:0;right:auto}&.float-none{left:0}&>button,&>a,& .dropdown-item{width:100%;min-width:0;height:auto;min-height:2.5rem;box-shadow:none;color:var(--text);font:inherit;text-align:left;white-space:nowrap;cursor:pointer;touch-action:manipulation;background:0 0;border:none;border-radius:.75rem;flex-direction:row;justify-content:flex-start;align-items:center;gap:.55rem;margin:0;padding:.45rem .75rem;font-size:.875rem;font-weight:500;line-height:1.25;text-decoration:none;display:flex;&>span{min-width:0;font-weight:inherit;text-overflow:ellipsis;overflow:hidden}&>svg{opacity:1;width:1.1rem;height:1.1rem;color:inherit;flex-shrink:0}&:hover:not(:disabled){background:var(--chipFill,color-mix(in srgb, var(--heading), transparent 95%));color:var(--heading)}&:focus-visible{outline:var(--focus-outline);outline-offset:.0625rem}&:disabled{opacity:.4;cursor:not-allowed}}}@keyframes dropdown-in{0%{opacity:0;transform:translateY(-.3rem)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.dropdown{animation:none}}.profile{z-index:2;flex-direction:row-reverse;flex-shrink:0;align-items:center;gap:.25rem;min-width:0;margin-block:auto;text-decoration:none;display:flex;position:relative;&[data-open]{z-index:5}& .profile-compact{flex-direction:row-reverse;align-items:center;min-width:0;display:flex}& .profile-identity{min-width:0;max-width:min(12.5rem,28vw);box-shadow:none;color:inherit;font:inherit;cursor:pointer;touch-action:manipulation;text-align:right;transition:background var(--motion-fast,.15s ease), box-shadow var(--motion-fast,.15s ease);background:0 0;border:none;border-radius:50rem;flex-direction:row-reverse;align-items:center;gap:.5em;margin:0;padding:.2rem .45rem .2rem 1rem;display:flex;&:hover{background:color-mix(in srgb, var(--heading), transparent 94%)}&:focus-visible{outline:var(--focus-outline);outline-offset:.125rem}&:active{background:color-mix(in srgb, var(--heading), transparent 90%)}}& .avatar{--size:2.15rem;width:var(--size);height:var(--size);color:var(--uiBackground);background:var(--heading);box-shadow:none;aspect-ratio:1;object-fit:cover;transition:border-color var(--motion-fast,.15s ease);border:.125rem solid #0000;border-radius:50rem;flex-direction:row;flex-shrink:0;justify-content:center;align-items:center;margin-block:auto;padding:0;font-size:.82rem;font-weight:650;display:flex;& span{letter-spacing:.02em;font-size:.78em;font-weight:650}}& .profile-identity:hover .avatar{border-color:color-mix(in srgb, var(--heading), transparent 70%)}& img.avatar{background:0 0}& .profile-meta{flex-direction:column;justify-content:center;min-width:0;max-width:min(9.5rem,22vw);line-height:1.15;display:flex}& .profile-name{white-space:nowrap;text-overflow:ellipsis;letter-spacing:.01em;color:var(--heading);font-size:.74rem;font-weight:600;line-height:1.2;overflow:hidden}& .profile-email{color:var(--text);opacity:.85;white-space:nowrap;text-overflow:ellipsis;text-decoration:underline;text-decoration-color:color-mix(in srgb, var(--text), transparent 70%);text-underline-offset:.12em;transition:opacity var(--motion-fast,.15s ease), text-decoration-color var(--motion-fast,.15s ease);font-size:.62rem;line-height:1.25;overflow:hidden}& .profile-identity:hover .profile-email{opacity:1;text-decoration-color:var(--heading);color:var(--heading)}&>button.profile-toggle{box-shadow:none;opacity:1;width:var(--control-h);min-width:var(--control-h);min-height:var(--control-h);border-radius:var(--pillRadius);cursor:pointer;touch-action:manipulation;height:auto;color:var(--text);background:0 0;border:none;justify-content:center;align-items:center;gap:0;margin-block:auto;padding:0;line-height:1;display:inline-flex;& svg{width:1.2rem;height:1.2rem;transition:transform var(--motion-fast,.15s ease);flex-shrink:0}&:hover{background:color-mix(in srgb, var(--text), transparent 94%);box-shadow:none;transform:none}&:focus-visible{outline:var(--focus-outline);outline-offset:.125rem}&[aria-expanded=true]{background:color-mix(in srgb, var(--heading), transparent 93%);color:var(--heading);& svg{transform:rotate(180deg)}}}& .dropdown{min-width:15rem}& .profile-menu{margin:0;padding:.2rem .15rem .35rem;font-size:.82rem;list-style:none}& .profile-menu-head{border-bottom:.0625rem solid color-mix(in srgb, var(--accent,var(--text)), transparent 85%);margin:0 0 .25rem;padding:0;list-style:none}& .profile-menu-identity{width:100%;box-shadow:none;color:inherit;font:inherit;text-align:left;cursor:pointer;touch-action:manipulation;transition:background var(--motion-fast,.15s ease);background:0 0;border:none;border-radius:.625rem;flex-direction:column;align-items:flex-start;gap:.15rem;margin:0;padding:.55rem .65rem .65rem;display:flex;&:hover{background:color-mix(in srgb, var(--heading), transparent 94%)}&:focus-visible{outline:var(--focus-outline);outline-offset:.0625rem}}& .profile-menu-identity .name{white-space:nowrap;letter-spacing:-.01em;color:var(--heading);align-items:center;gap:.3em;font-weight:700;display:inline-flex}& .profile-verified{color:var(--success,#2a9d5c);display:inline-flex;& svg{width:1em;height:1em}}& .profile-menu-email{opacity:.8;word-break:break-all;text-decoration:underline;text-decoration-color:color-mix(in srgb, var(--text), transparent 65%);text-underline-offset:.12em;font-size:.78em}& .profile-menu-identity:hover .profile-menu-email{opacity:1;color:var(--heading);text-decoration-color:var(--heading)}& .profile-menu-open-hint{color:var(--heading);opacity:.75;margin-top:.2rem;font-size:.72em;font-weight:600}& .profile-menu-credits{background:color-mix(in srgb, var(--heading), transparent 95%);border-radius:.5rem;justify-content:space-between;align-items:center;gap:.75rem;margin:.15rem 0;padding:.45rem .65rem;font-size:.9em;display:flex;& b{font-variant-numeric:tabular-nums;color:var(--heading);font-weight:700}}& .profile-menu-extra{padding:.25rem .35rem}& .profile-menu-actions{border-top:.0625rem solid color-mix(in srgb, var(--accent,var(--text)), transparent 88%);flex-direction:column;gap:.4rem;margin-top:.45rem;padding:.45rem .35rem .15rem;display:flex}& .profile-menu-link{width:100%;min-height:var(--control-h,2.5rem);border:.0625rem solid color-mix(in srgb, var(--heading), transparent 75%);box-shadow:none;color:var(--heading);font:inherit;cursor:pointer;touch-action:manipulation;transition:background var(--motion-fast,.15s ease), border-color var(--motion-fast,.15s ease);background:0 0;border-radius:50rem;justify-content:center;align-items:center;margin:0;padding:.45rem .85rem;font-size:.88em;font-weight:650;display:inline-flex;&:hover{background:color-mix(in srgb, var(--heading), transparent 93%);border-color:var(--heading)}&:focus-visible{outline:var(--focus-outline);outline-offset:.125rem}}& .profile-menu-logout{background:var(--heading);width:100%;max-width:100%;color:var(--uiBackground);box-shadow:var(--buttonShadow);min-height:var(--control-h);height:auto;line-height:1.25;font:inherit;white-space:nowrap;cursor:pointer;touch-action:manipulation;border:none;border-radius:50rem;justify-content:center;align-items:center;padding:.5rem 1rem;font-weight:650;display:inline-flex;&:hover{filter:brightness(1.05)}&:focus-visible{outline:var(--focus-outline);outline-offset:.125rem}}}html[data-shell=smartphone]{& .profile .profile-meta{display:none}& .profile .profile-identity{max-width:none;padding:.15rem}& .profile .avatar{--size:2rem}}main>header{margin:max(var(--workspace-pad), env(safe-area-inset-top,0)) max(var(--workspace-pad), env(safe-area-inset-right,0)) 0 max(var(--workspace-pad), env(safe-area-inset-left,0));width:calc(100% - max(var(--workspace-pad), env(safe-area-inset-left,0)) - max(var(--workspace-pad), env(safe-area-inset-right,0)));background:var(--surfaceWarm,var(--surface-1,var(--elevatedFill)));gap:var(--space-5,1.4em);height:var(--header-h);min-height:var(--header-h);padding:var(--space-2,.5em) var(--space-5,1.35em);border-radius:var(--panelRadius);z-index:var(--z-header);box-shadow:var(--softShadow), var(--panelHighlight);border:none;flex-direction:row;display:flex;position:relative;overflow:visible;&:before{content:"";border-radius:inherit;background:var(--surfaceGlow);pointer-events:none;z-index:0;position:absolute;inset:0}&>*{z-index:1;position:relative}&>.profile,&>.nav,&>.tools,&>.end,&>.brand-row{z-index:2}& .tools{flex-direction:row;flex-shrink:0;align-items:center;gap:.55rem;margin-left:0;display:flex}& .end{flex-direction:row;flex-shrink:0;align-items:center;gap:.35rem;margin-left:auto;display:none}& .more-wrap{z-index:2;align-items:center;display:flex;position:relative}& .more-wrap[data-open],& .current-project[data-open],& .profile[data-open]{z-index:5}& .more{width:var(--hit-min,2.75rem);height:var(--hit-min,2.75rem);min-width:var(--hit-min,2.75rem);min-height:var(--hit-min,2.75rem);background:var(--surface-2,var(--chipFill));box-shadow:none;color:var(--heading);cursor:pointer;touch-action:manipulation;border:none;border-radius:50rem;justify-content:center;align-items:center;padding:0;display:inline-flex}& .more:hover{background:color-mix(in srgb, var(--surface-2), var(--heading) 6%)}& .more svg{width:1.25rem;height:1.25rem;display:block}& .more:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset,.125rem)}& .group{flex-direction:column;gap:.4rem;padding:.45rem .55rem .55rem;display:flex}& .group+.group,& .group+.dropdown-item{border-top:.0625rem solid var(--divider,transparent)}& .label{font-size:var(--fs-xs,.68rem);letter-spacing:.06em;text-transform:uppercase;color:var(--textTertiary,var(--textMuted));font-weight:650}& .theme{flex-direction:row;justify-content:space-between;align-items:center;gap:.75rem}& .dropdown>.login{background:var(--heading);color:var(--uiBackground);justify-content:center;font-weight:650}& .dropdown>.login:hover:not(:disabled){background:color-mix(in srgb, var(--heading), white 10%);color:var(--uiBackground)}& .brand-row{flex-direction:row;flex-shrink:1;align-self:center;align-items:center;gap:2rem;min-width:0;margin:0 .5rem 0 0;display:flex}& .brand{color:inherit;border-radius:.35rem;flex-shrink:0;align-self:center;align-items:center;margin:0 .5rem;line-height:0;text-decoration:none;display:flex}& .brand-row .brand{flex:0 auto;min-width:0;margin:0}& .brand:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset,.125rem)}& .logo,& .mark{align-items:center;display:flex;& svg{opacity:1;height:auto;color:inherit;display:block}}& .logo{& svg{width:12rem;max-width:100%}}& .mark{display:none}& .brand .name{letter-spacing:-.02em;color:inherit;text-overflow:ellipsis;white-space:nowrap;max-width:14rem;font-size:1.05rem;font-weight:650;line-height:1.2;overflow:hidden}& .brand .logo img{object-fit:contain;width:auto;max-width:12rem;height:2.35rem;display:block;[data-theme=light] &{filter:invert()}}&.is-embed .tools{margin-left:auto}& .nav{flex-direction:row;justify-content:center;align-items:center;gap:.35rem;min-width:0;margin-right:auto;display:flex;overflow:visible;&>button.new-project{min-height:var(--control-h);height:auto;font:inherit;letter-spacing:.01em;white-space:nowrap;cursor:pointer;touch-action:manipulation;transition:transform var(--motion-fast), box-shadow var(--motion-fast), filter var(--motion-fast);border:none;border-radius:50rem;flex-direction:row;flex-shrink:0;justify-content:center;align-items:center;gap:.4em;margin:0 .15rem 0 0;padding:.4rem .95rem .4rem .75rem;font-size:.78rem;font-weight:650;line-height:1.2;display:inline-flex;& svg{opacity:1;width:1.15rem;height:1.15rem;color:inherit;filter:none;flex-shrink:0}&>.new-project-label{font-weight:inherit}&:hover:not(:disabled){transform:translateY(-.0625rem)}&:focus-visible{outline:var(--focus-outline);outline-offset:.125rem}&:disabled{opacity:.45;cursor:not-allowed;transform:none}}& .links{overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-direction:row;flex:auto;align-items:center;gap:.1rem;min-width:0;display:flex;overflow-x:auto;&::-webkit-scrollbar{display:none}}& a{height:auto;min-height:var(--control-h);text-align:center;min-width:3.1rem;max-width:7rem;color:var(--text);letter-spacing:.03em;white-space:nowrap;border-radius:var(--controlRadius,var(--pillRadius));transition:background var(--motion-fast), color var(--motion-fast), box-shadow var(--motion-fast);touch-action:manipulation;text-overflow:ellipsis;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:.25em;margin:0;padding:.4rem .75em;font-size:.72em;font-weight:550;line-height:1.15;text-decoration:none;display:inline-flex;overflow:hidden;&:focus-visible{outline:var(--focus-outline);outline-offset:.125rem}& svg{opacity:1;width:1.45em;height:1.45em;color:inherit}&:hover{background:var(--chipFill,var(--softCardBg));color:var(--text);box-shadow:var(--softShadow)}}& .current-project{max-width:min(34rem,36vw);min-height:var(--control-h);z-index:2;flex-direction:row;flex-shrink:0;align-items:center;gap:.2rem;margin:0;padding:.15rem .5rem .15rem .95rem;font-weight:650;display:flex;position:relative;&[data-open]{z-index:5;background:var(--elevatedFill)}& .current-project-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--heading);letter-spacing:-.01em;font-size:.8rem;font-weight:650;overflow:hidden}& button.current-project-toggle{width:2.25rem;min-width:2.25rem;height:auto;min-height:2.25rem;box-shadow:none;color:var(--text);cursor:pointer;touch-action:manipulation;background:0 0;border:none;border-radius:50rem;flex-direction:row;justify-content:center;align-items:center;gap:0;padding:0;font-size:.75rem;font-weight:600;line-height:1;display:inline-flex;& svg{flex-shrink:0;width:1.15rem;height:1.15rem}&:hover:not(:disabled){background:color-mix(in srgb, var(--heading), transparent 94%);box-shadow:none;color:var(--heading);transform:none}&:focus-visible{outline:var(--focus-outline);outline-offset:.125rem}&[aria-expanded=true]{background:color-mix(in srgb, var(--heading), transparent 93%);color:var(--heading)}}& button.new-project{white-space:nowrap;cursor:pointer;touch-action:manipulation;border:none;border-radius:50rem;flex-direction:row;justify-content:center;align-items:center;gap:.4em;width:auto;min-width:2.25rem;max-width:12rem;height:auto;min-height:2.25rem;padding:.35rem .75rem .35rem .6rem;font-size:.72rem;font-weight:650;line-height:1.2;display:inline-flex;& svg{width:1.1rem;height:1.1rem;color:inherit;filter:none;flex-shrink:0}& span{text-overflow:ellipsis;min-width:0;display:none;overflow:hidden}html[data-shell=desktop] &{& span{display:inline}}html[data-shell=tablet] &{& span{display:inline}}&:hover:not(:disabled){transform:translateY(-.0625rem)}&:focus-visible{outline:var(--focus-outline);outline-offset:.125rem}&:disabled{opacity:.45;cursor:not-allowed;transform:none}}}}& .brand-row>button.new-project{min-height:var(--control-h);height:auto;font:inherit;letter-spacing:.01em;white-space:nowrap;cursor:pointer;touch-action:manipulation;transition:transform var(--motion-fast), box-shadow var(--motion-fast), filter var(--motion-fast);border:none;border-radius:50rem;flex-direction:row;flex-shrink:0;justify-content:center;align-items:center;gap:.4em;margin:0;padding:.4rem .95rem .4rem .75rem;font-size:.78rem;font-weight:650;line-height:1.2;display:inline-flex;& svg{opacity:1;width:1.15rem;height:1.15rem;color:inherit;filter:none;flex-shrink:0}&>.new-project-label{font-weight:inherit}&:hover:not(:disabled){transform:translateY(-.0625rem)}&:focus-visible{outline:var(--focus-outline);outline-offset:.125rem}&:disabled{opacity:.45;cursor:not-allowed;transform:none}}& .theme-switcher-button{width:var(--control-h);min-width:var(--control-h);min-height:var(--control-h);background:var(--chipFill,transparent);height:auto;box-shadow:none;touch-action:manipulation;cursor:pointer;color:var(--text);border:.0625rem solid #0000;border-radius:50rem;place-items:center;gap:0;margin:auto 0;padding:0;line-height:1;display:inline-grid;&:hover{background:var(--elevatedFill);box-shadow:var(--softShadow);border-color:var(--panelBorder);color:var(--heading);transform:none}&:focus-visible{outline:var(--focus-outline);outline-offset:.125rem}}& form#locale-form,& form.locale-form{flex-shrink:0;width:auto;margin:auto 0;font-size:.8em}& .auth{align-items:center;gap:var(--space-2);flex-direction:row;flex-shrink:0;margin:auto 0;font-size:.85em;font-weight:600;display:flex;& .auth-link{box-shadow:none;min-height:var(--control-h);height:auto;color:var(--text);line-height:1.25;font:inherit;white-space:nowrap;cursor:pointer;touch-action:manipulation;background:0 0;border:none;border-radius:50rem;justify-content:center;align-items:center;padding:.4rem .85rem;font-weight:600;display:inline-flex;&:hover{background:var(--chipFill);color:var(--heading);box-shadow:none;transform:none}&:focus-visible{outline:var(--focus-outline);outline-offset:.125rem}}& .button.primary{min-height:var(--control-h);height:auto;color:var(--uiBackground);background:var(--heading);box-shadow:var(--buttonShadow);line-height:1.25;font:inherit;letter-spacing:.01em;cursor:pointer;white-space:nowrap;touch-action:manipulation;transition:transform var(--motion-fast), box-shadow var(--motion-fast);border:none;border-radius:50rem;justify-content:center;align-items:center;padding:.4rem 1.15rem;font-weight:650;display:inline-flex;&:hover{box-shadow:var(--softShadow);transform:translateY(-.0625rem)}&:focus-visible{outline:var(--focus-outline);outline-offset:.125rem}}}}html[data-shell=tablet]{& main>header{height:var(--header-h);min-height:var(--header-h);flex-wrap:nowrap;align-items:center;gap:.55em;max-height:none;padding:.3em .7em;overflow:visible;& .brand{flex-shrink:0;margin:0 .1rem}& .logo svg{width:clamp(4.25rem,16vw,7rem)}& .brand .logo img{max-width:9rem;height:1.85rem}& .brand .name{max-width:10rem;font-size:.95rem}& .nav{gap:.25rem;min-width:0;&>button.new-project{margin-right:.1rem;padding:.35rem .75rem .35rem .6rem;font-size:.72rem}& a{min-width:2.6rem;max-width:5rem;padding:.3rem .4em;font-size:.66em}}& .auth{flex-shrink:0;gap:.3rem;font-size:.78em;& .auth-link{padding:.3rem .5rem}& .button.primary{padding:.3rem .75rem}}}}html[data-shell=smartphone]{& main>header{height:var(--header-h);min-height:var(--header-h);flex-wrap:nowrap;align-items:center;gap:.55em;max-height:none;padding:.3em .7em;overflow:visible;& .brand{flex-shrink:0;margin:0 .1rem}& .logo svg{width:clamp(4.25rem,16vw,7rem)}& .brand .logo img{max-width:9rem;height:1.85rem}& .brand .name{max-width:10rem;font-size:.95rem}& .nav{gap:.25rem;min-width:0;&>button.new-project{margin-right:.1rem;padding:.35rem .75rem .35rem .6rem;font-size:.72rem}& a{min-width:2.6rem;max-width:5rem;padding:.3rem .4em;font-size:.66em}}& .auth{flex-shrink:0;gap:.3rem;font-size:.78em;& .auth-link{padding:.3rem .5rem}& .button.primary{padding:.3rem .75rem}}}}html[data-shell=smartphone]{--phone-chrome-h:var(--header-h);& body{overflow-x:clip}& main#project-page{width:100%;min-width:0;max-width:100%;overflow-x:clip}& main>header{width:100%;max-width:100%;padding-top:calc(env(safe-area-inset-top,0) + var(--header-pad-y,.35rem));padding-bottom:var(--header-pad-y,.35rem);padding-right:max(.75rem, env(safe-area-inset-right,0));padding-left:max(.75rem, env(safe-area-inset-left,0));height:var(--header-h);min-height:var(--header-h);max-height:var(--header-h);box-sizing:border-box;box-shadow:none;-webkit-backdrop-filter:none;pointer-events:none;isolation:isolate;z-index:var(--z-header,100000);opacity:1;visibility:visible;background:0 0;border:none;border-radius:0;flex-direction:row;justify-content:space-between;align-items:center;gap:.5rem;margin:0;display:flex;position:fixed;inset:0 0 auto;overflow:visible;&:before{display:none}&:has(.more-wrap[data-open]),&:has(.variants-wrap[data-open]){background:var(--surface-1,var(--elevatedFill,#fafbfc));z-index:calc(var(--z-dropdown,100010) + 40);pointer-events:auto}& .brand,& .brand-row,& .brand-row>button.new-project,& .end,& .more-wrap,& .more,& .variants-wrap,& .variants{pointer-events:auto}& .brand{min-width:0;max-width:calc(100% - var(--header-control-min,2.5rem) - .75rem);z-index:2;opacity:1;visibility:visible;flex:auto;margin:0;position:relative}&:has(.variants-wrap) .brand{max-width:calc(100% - (var(--header-control-min,2.5rem) * 2) - .9rem)}& .brand .logo{opacity:1;visibility:visible;align-items:center;max-width:100%;display:flex}& .brand .logo svg{opacity:1;flex-shrink:1;width:auto;max-width:100%;height:1.75rem;margin-left:0}& .brand .logo img{max-width:min(9rem,100%);height:1.75rem}& .brand .mark{display:none}& .nav,& .tools{display:none!important}& .brand-row{min-width:0;max-width:calc(100% - var(--header-control-min,2.5rem) - .5rem);flex:auto;gap:.35rem;margin:0;display:flex}&.is-embed .brand{flex:0 auto;max-width:none}& .brand-row>button.new-project{width:var(--header-control-min,2.5rem);min-width:var(--header-control-min,2.5rem);height:var(--header-control-min,2.5rem);min-height:var(--header-control-min,2.5rem);margin:0;padding:0;& .new-project-label{display:none}& svg{width:1.2rem;height:1.2rem}}& .end{z-index:2;opacity:1;visibility:visible;flex:none;align-items:center;gap:.15rem;margin-left:0;display:flex;position:relative}& .end>.profile{display:none}& .more-wrap,& .variants-wrap{z-index:2;opacity:1;visibility:visible;flex-shrink:0;margin:0;position:relative}& .more,& .more.is-menu,& .variants{width:var(--header-control-min,2.5rem);height:var(--header-control-min,2.5rem);min-width:var(--header-control-min,2.5rem);min-height:var(--header-control-min,2.5rem);max-height:var(--header-control-min,2.5rem);box-shadow:none;color:var(--heading);z-index:2;opacity:1;visibility:visible;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}& .more-wrap[data-open] .more{background:0 0;border-radius:50%}& .more:hover,& .variants:hover{background:color-mix(in srgb, var(--heading) 6%, transparent)}& .more.svg,& .more svg,& .variants svg{width:1.3rem;height:1.3rem}& .variants .count{background:var(--heading);min-width:.9rem;height:.9rem;color:var(--surface-1,#fff);text-align:center;border-radius:50rem;padding:0 .2rem;font-size:.55rem;font-weight:700;line-height:.9rem;position:absolute;top:.15rem;right:.15rem}& .variants-wrap .dropdown{top:var(--phone-chrome-h);width:100%;min-width:0;max-width:none;height:auto;max-height:none;padding:.75rem max(1.15rem, env(safe-area-inset-right,0)) max(.85rem, env(safe-area-inset-bottom,0)) max(1.15rem, env(safe-area-inset-left,0));box-shadow:none;background:var(--surface-1,var(--elevatedFill,#fafbfc));z-index:1;border:none;border-radius:0;flex-direction:column;margin:0;display:flex;position:fixed;bottom:0;left:0;right:0;overflow:hidden}& .variants-wrap .dropdown .variants-gallery,& .variants-wrap .dropdown .variants-gallery.compact{flex:auto;height:100%;min-height:0;max-height:none}& .variants-wrap .dropdown .variants-gallery>ul,& .variants-wrap .dropdown .variants-gallery.compact>ul{flex:auto;min-height:0;max-height:none}& .more-wrap .dropdown{top:var(--phone-chrome-h);width:100%;min-width:0;max-width:none;height:auto;max-height:none;padding:.75rem max(1.15rem, env(safe-area-inset-right,0)) max(1.35rem, env(safe-area-inset-bottom,0)) max(1.15rem, env(safe-area-inset-left,0));box-shadow:none;background:var(--surface-1,var(--elevatedFill,#fafbfc));z-index:1;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;transform-origin:top;isolation:auto;animation:phone-menu-sheet-in var(--motion-med,.28s) cubic-bezier(.22, 1, .36, 1) both;border:none;border-radius:0;gap:.35rem;margin:0;position:fixed;bottom:0;left:0;right:0;overflow:hidden auto}& .more-wrap .dropdown.float-right,& .more-wrap .dropdown.float-left,& .more-wrap .dropdown.float-none{left:0;right:0;top:var(--phone-chrome-h)}& .more-wrap .dropdown>.group{gap:.5rem;padding:.65rem .15rem .75rem;&.theme{margin-bottom:auto}}& .more-wrap .dropdown>.group+.group,& .more-wrap .dropdown>.group+.dropdown-item{border-top:.0625rem solid color-mix(in srgb, var(--heading) 8%, transparent);margin-top:.15rem;padding-top:.85rem}& .more-wrap .dropdown>button.dropdown-item,& .more-wrap .dropdown>a.dropdown-item,& .more-wrap .dropdown .dropdown-item{border-radius:.85rem;min-height:3rem;padding:.65rem .85rem;font-size:1rem}& .more-wrap .dropdown>.login{background:var(--heading);min-height:3rem;color:var(--surface-1,#fff);border-radius:50rem;justify-content:center;margin-top:.5rem;font-weight:650}& .more-wrap .dropdown>.login:hover:not(:disabled){background:var(--heading);color:var(--surface-1,#fff);filter:brightness(1.06)}& .more-wrap .dropdown>.login+.dropdown-item{justify-content:center;font-weight:600}}& body:has(main>header .more-wrap[data-open]),& body:has(main>header .variants-wrap[data-open]){overflow:hidden}& body:has(main>header .more-wrap[data-open]) #toolbox-wrap,& body:has(main>header .variants-wrap[data-open]) #toolbox-wrap{visibility:hidden;pointer-events:none}}html[data-shell=smartphone][data-theme=dark]{& main>header.is-phone-chrome{color:#1a1c1f;& .more,& .more.is-menu,& .variants{color:inherit}& .more:hover,& .variants:hover{background:color-mix(in srgb, currentColor 8%, transparent)}&:has(.more-wrap[data-open]),&:has(.variants-wrap[data-open]){color:var(--heading)}}}html[data-shell=smartphone] main#project-page:has(canvas[data-scene-mood=evening])>header.is-phone-chrome{color:#fff;& .brand,& .brand .logo,& .more,& .more.is-menu,& .variants{color:#fff}& .more:hover,& .variants:hover{background:#ffffff1f}&:has(.more-wrap[data-open]),&:has(.variants-wrap[data-open]){color:var(--heading);& .brand,& .brand .logo,& .more,& .more.is-menu,& .variants{color:var(--heading)}& .more:hover,& .variants:hover{background:color-mix(in srgb, var(--heading) 6%, transparent)}}}@keyframes phone-menu-sheet-in{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:translateY(0)}}html[data-shell=smartphone]{& main>header{& .menu-morph{--morph-ease:cubic-bezier(.34, 1.3, .64, 1);--morph-dur:.38s;flex-shrink:0;width:1.35rem;height:1.35rem;display:block;position:relative}& .menu-morph-grid,& .menu-morph-close{will-change:transform, opacity;backface-visibility:hidden;transition:opacity var(--morph-dur) var(--morph-ease), transform var(--morph-dur) var(--morph-ease);place-items:center;display:grid;position:absolute;inset:0}& .menu-morph-grid svg,& .menu-morph-close svg{width:1.3rem;height:1.3rem;display:block}& .menu-morph-grid{opacity:1;transform:rotate(0)scale(1)}& .menu-morph-close{opacity:0;pointer-events:none;transform:rotate(-95deg)scale(.4)}& .more.is-open .menu-morph-grid,& .more-wrap[data-open] .menu-morph-grid{opacity:0;pointer-events:none;transform:rotate(95deg)scale(.4)}& .more.is-open .menu-morph-close,& .more-wrap[data-open] .menu-morph-close{opacity:1;pointer-events:auto;transform:rotate(0)scale(1)}& .more.is-menu{transition:background var(--motion-fast,.16s ease), transform var(--morph-dur,.38s) var(--morph-ease,ease)}& .more.is-menu.is-open,& .more-wrap[data-open] .more.is-menu{transform:rotate(0)}@media (prefers-reduced-motion:reduce){& .menu-morph-grid,& .menu-morph-close{transition:opacity .15s}& .more.is-open .menu-morph-grid,& .more-wrap[data-open] .menu-morph-grid,& .more.is-open .menu-morph-close,& .more-wrap[data-open] .menu-morph-close,& .menu-morph-grid,& .menu-morph-close{transform:none!important}}& .dropdown-item.nav-link{text-align:left;width:100%;color:inherit;box-sizing:border-box;align-items:center;gap:.55rem;text-decoration:none;display:flex}& .nav-link-icon{opacity:.75;flex-shrink:0;place-items:center;width:1.15rem;height:1.15rem;display:inline-grid}& .nav-link-icon svg{width:100%;height:100%}& .group.profile-slot{padding-block:.35rem}& .group.nav-links{gap:.15rem}& .more-wrap .locale-form,& .more-wrap form#locale-form{width:100%}& .more-wrap .locale-seg{justify-content:stretch;width:100%}& .more-wrap .locale-option{flex:1 1 0;min-width:0;min-height:2.5rem}}& body:has(aside#chat.chat-drawer-open) main>header{box-shadow:none;background:0 0}}html[data-shell=smartphone][data-shell-landscape=short]{& main>header{box-shadow:none;padding-block:max(.25rem, env(safe-area-inset-top,0)) .25rem;padding-inline:max(.65rem, env(safe-area-inset-left,0)) max(.45rem, env(safe-area-inset-right,0));background:0 0;border-radius:0;width:100%!important;max-width:100%!important;margin:0!important}}html[data-shell=tablet][data-shell-landscape=short]{& main>header{width:100%;box-shadow:none;padding-block:.1em;padding-top:max(.1em, env(safe-area-inset-top,0));border-radius:0;margin:0}}html[data-shell=tablet][data-shell-landscape=short]{& body:has(aside#chat.chat-drawer-open){--header-h:calc(env(safe-area-inset-top,0) + var(--header-box-h,2.75rem))}& body:has(aside#chat.chat-drawer-open) main>header{border:none;border-bottom:.0625rem solid color-mix(in srgb, var(--heading) 10%, transparent);width:100%;max-width:100%;box-shadow:none;height:var(--header-h);min-height:var(--header-h);max-height:var(--header-h);border-radius:0;margin:0}& body:has(aside#chat.chat-drawer-open) main>header:before{border-radius:0}}html[data-shell=smartphone][data-shell-landscape=short]{& body:has(aside#chat.chat-drawer-open){--header-h:calc(env(safe-area-inset-top,0) + var(--header-box-h,2.75rem))}& body:has(aside#chat.chat-drawer-open) main>header{border:none;border-bottom:.0625rem solid color-mix(in srgb, var(--heading) 10%, transparent);width:100%;max-width:100%;box-shadow:none;height:var(--header-h);min-height:var(--header-h);max-height:var(--header-h);border-radius:0;margin:0}& body:has(aside#chat.chat-drawer-open) main>header:before{border-radius:0}}.variants-gallery{min-width:15rem;max-width:18.5rem;max-height:24rem;color:var(--text);flex-direction:column;gap:.55em;display:flex;overflow:hidden}.variants-gallery.compact{min-width:0;max-width:none;max-height:none}.variants-gallery>.title{letter-spacing:.01em;color:var(--text);margin:0;font-size:.78em;font-weight:650}.variants-gallery>.empty{opacity:.78;margin:0;font-size:.85rem;line-height:1.35}.variants-gallery>ul{overscroll-behavior:contain;grid-template-columns:1fr;gap:.45em;max-height:19rem;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.variants-gallery.compact>ul{max-height:min(60dvh,24rem)}.variants-gallery>ul>li{display:flex;position:relative}.variants-gallery .card{border-radius:var(--cardRadius,1rem);background:var(--chipFill,var(--softCardBg));width:100%;color:var(--text);cursor:pointer;text-align:start;box-shadow:none;border:.0625rem solid #0000;flex-direction:column;gap:.4rem;margin:0;padding:.5rem .55rem .55rem;display:flex}.variants-gallery .card:hover:not(:disabled){border-color:color-mix(in srgb, var(--heading), transparent 82%)}.variants-gallery .card.current{border-color:var(--heading);background:var(--elevatedFill,var(--uiBackground));box-shadow:var(--buttonShadow,var(--softShadow)), 0 0 0 .125rem color-mix(in srgb, var(--accent,var(--heading)), transparent 55%);opacity:1}.variants-gallery .card:disabled{cursor:default;opacity:1}.variants-gallery .card:disabled:not(.current){opacity:.5;cursor:not-allowed}.variants-gallery .shot{aspect-ratio:16/10;background:color-mix(in srgb, var(--heading) 6%, transparent);border-radius:.55rem;width:100%;display:block;position:relative;overflow:hidden}.variants-gallery .shot:not(.has-photo){aspect-ratio:auto;height:1.65rem}.variants-gallery .shot img{object-fit:cover;width:100%;height:100%;display:block}.variants-gallery .shot .schematic{pointer-events:none;height:.7rem;position:absolute;bottom:.2rem;left:.2rem;right:.2rem}.variants-gallery .shot:not(.has-photo) .schematic{height:100%;padding:.28rem .2rem;position:relative;inset:auto}.variants-gallery .shot svg{width:100%;height:100%;display:block}.variants-gallery .shot .row{display:block}.variants-gallery .shot [data-kind=fridge]{fill:color-mix(in srgb, var(--heading) 55%, #5b7c99)}.variants-gallery .shot [data-kind=tower],.variants-gallery .shot [data-kind=pantry],.variants-gallery .shot [data-kind=oven]{fill:color-mix(in srgb, var(--heading) 45%, #4a5560)}.variants-gallery .shot [data-kind=sink]{fill:#2f9aa8}.variants-gallery .shot [data-kind=burner]{fill:#c45c2a}.variants-gallery .shot [data-kind=dishwasher]{fill:#6b7c8a}.variants-gallery .shot [data-kind=plug]{fill:color-mix(in srgb, var(--heading) 18%, transparent)}.variants-gallery .shot [data-kind=cabinet],.variants-gallery .shot [data-kind=hood]{fill:color-mix(in srgb, var(--heading) 28%, #c4bdb0)}.variants-gallery .meta{flex-direction:column;gap:.12rem;min-width:0;padding-right:1.05rem;display:flex}.variants-gallery .meta .name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.74rem;font-weight:650;line-height:1.3;overflow:hidden}.variants-gallery .meta .detail,.variants-gallery .meta .price{opacity:.72;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.72em;font-weight:400;line-height:1.35;overflow:hidden}.variants-gallery .like{box-sizing:border-box;aspect-ratio:1;background:color-mix(in srgb, var(--surface-1,#fff) 82%, transparent);width:1.5rem;min-width:1.5rem;max-width:1.5rem;height:1.5rem;min-height:1.5rem;max-height:1.5rem;color:var(--heading);cursor:pointer;z-index:1;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:.2rem;right:.2rem;overflow:hidden}.variants-gallery .like svg{flex:none;width:.85rem;height:.85rem;display:block}.variants-gallery .like.on{color:#f5c542}.variants-gallery .like.on svg{fill:currentColor}html[data-shell=smartphone] .variants-gallery{min-width:0;max-width:none}html[data-shell=desktop] main#project-page section#workspace{justify-content:flex-end;align-items:flex-end;gap:var(--shell-gap,var(--workspace-gap,1rem))}html[data-shell=tablet]{--tablet-chat-radius:var(--panelRadius,1.15rem);--tablet-chat-shadow:var(--softShadow), var(--panelHighlight);--tablet-scene-gap:.35rem;--tablet-touch-gap:.45rem}html[data-shell=tablet] main#project-page section#workspace{justify-content:flex-end;align-items:flex-end;gap:var(--shell-gap,.75rem);padding:var(--workspace-pad,.45rem);box-sizing:border-box}html[data-shell=tablet] main#project-page section#workspace>aside#scene{border-radius:var(--panelRadius,1.15rem)}html[data-shell=tablet] main#project-page section#workspace>aside#chat{border-radius:var(--tablet-chat-radius);box-shadow:var(--tablet-chat-shadow)}html[data-shell=tablet][data-shell-landscape=short] main#project-page section#workspace{justify-content:stretch;align-items:stretch;gap:0;padding:0}html[data-shell=tablet][data-shell-landscape=short] main#project-page section#workspace>aside#scene{border-radius:0}html[data-shell=tablet][data-shell-landscape=short] main#project-page section#workspace>aside#chat{box-shadow:var(--floatShadow);border-radius:0}html[data-shell=smartphone]{--mobile-ease:cubic-bezier(.22, 1, .36, 1);--mobile-duration:.36s;--mobile-duration-fast:.22s;--mobile-sheet-inset:0;--mobile-sheet-gap:0;--mobile-sheet-radius:var(--mobile-sheet-radius,1.25rem);--mobile-sheet-bg:var(--surface-1,#fafbfc);--mobile-sheet-border:color-mix(in srgb, var(--heading) 8%, transparent);--mobile-sheet-shadow:0 -.125rem .5rem color-mix(in srgb, var(--heading) 6%, transparent), 0 -.75rem 2rem color-mix(in srgb, var(--heading) 10%, transparent);--mobile-chrome-hairline:color-mix(in srgb, var(--heading) 10%, transparent);--mobile-dock-bg:color-mix(in srgb, var(--surface-1,#fff) 94%, transparent);--mobile-active-fill:color-mix(in srgb, var(--heading) 8%, transparent);--mobile-focus-ring:0 0 0 .15rem color-mix(in srgb, var(--heading) 20%, transparent);--mobile-chat-sheet-h:min(97dvh, calc(100dvh - env(safe-area-inset-top,0) - .35rem));--shell-gap:0}html[data-shell=smartphone] main#project-page{min-height:100svh}html[data-shell=smartphone] main#project-page section#workspace{width:100%;min-height:calc(100dvh - var(--header-h,0));justify-content:stretch;align-items:stretch;gap:0;margin:0;padding:0}html[data-shell=smartphone] main#project-page section#workspace>aside#scene{border-radius:0;inset:0}html[data-shell=smartphone][data-shell-landscape=short]{--mobile-chat-sheet-h:min(97dvh, calc(100dvh - env(safe-area-inset-top,0) - .35rem));--shell-gap:0}dialog#confirmation-modal{box-sizing:border-box;background:var(--surface-1,var(--elevatedFill,#fafbfc));width:min(22.5rem,100vw - 2rem);max-width:calc(100vw - 2rem);height:fit-content;min-height:0;max-height:min(90dvh,22rem);color:var(--heading,#1a1c1f);box-shadow:var(--floatShadow,var(--heavyShadow,0 1rem 2.5rem #0000002e));text-shadow:none;z-index:var(--z-modal,10050);border:none;border-radius:1.15rem;gap:0;margin:auto;padding:0;overflow:hidden}dialog#confirmation-modal[open]{height:fit-content;min-height:0;animation:confirm-dialog-in var(--motion-spring,.28s ease-out) both;flex-direction:column;gap:0;padding:0;display:flex}dialog#confirmation-modal[open]::backdrop{background:var(--modalVeil,#11111185);-webkit-backdrop-filter:blur(.4rem)}.modal-content{border:none;flex-direction:column;gap:1.15rem;height:auto;min-height:0;margin:0;padding:1.25rem 1.2rem 1.1rem;display:flex}.modal-copy{letter-spacing:-.022em;color:inherit;align-items:flex-start;gap:.7rem;margin:0;font-size:1.05rem;font-weight:650;line-height:1.35;display:flex}.modal-mark{background:color-mix(in srgb, var(--heading,#1a1c1f) 8%, transparent);width:2rem;height:2rem;color:var(--heading,#1a1c1f);border-radius:50%;flex:none;place-items:center;margin-top:.05rem;display:grid}.modal-mark svg{width:1.05rem;height:1.05rem}.modal-actions{flex-flow:row-reverse wrap;gap:.5rem;margin:0;display:flex}.modal-actions .button{width:auto;min-height:var(--hit-min,2.75rem);font:inherit;cursor:pointer;touch-action:manipulation;transition:filter var(--motion-fast,.16s ease), background-color var(--motion-fast,.16s ease), transform var(--motion-fast,.16s ease);border:none;border-radius:50rem;flex:8rem;justify-content:center;align-items:center;padding:.55rem 1.1rem;font-weight:650;display:inline-flex}.modal-actions .button.primary{background:var(--heading,#1a1c1f);color:var(--surface-1,#fff)}.modal-actions .button:not(.primary){background:var(--surface-2,var(--chipFill,#e8eaed));color:var(--heading,#1a1c1f)}.modal-actions .button.primary:hover{filter:brightness(1.07)}.modal-actions .button:not(.primary):hover{background:color-mix(in srgb, var(--heading,#1a1c1f) 10%, var(--surface-2,#e8eaed))}.modal-actions .button:active{transform:scale(.985)}.modal-actions .button:focus-visible{box-shadow:var(--focus-ring);outline:none}@keyframes confirm-dialog-in{0%{opacity:0;transform:translateY(.35rem)scale(.985)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){dialog#confirmation-modal[open]{animation:none}.modal-actions .button{transition:none}.modal-actions .button:active{transform:none}}body:has(dialog#confirmation-modal[open]){overflow:hidden}html[data-shell=smartphone]{& dialog#confirmation-modal{border-radius:1.05rem;width:min(20.5rem,100vw - 1.75rem);max-width:calc(100vw - 1.75rem)}& dialog#confirmation-modal[open]{height:fit-content;min-height:0;padding:0}& .modal-content{gap:1rem;padding:1.1rem 1rem .95rem}& .modal-copy{font-size:1rem}& .modal-actions{flex-direction:column;gap:.45rem}& .modal-actions .button{flex:none;width:100%;min-height:2.65rem}}dialog#cookie-informer{transition:opacity var(--motion-med), transform var(--motion-med);visibility:visible;width:fit-content;min-width:min(20rem,92vw);max-width:min(25rem,92vw);height:auto;inset:auto;bottom:max(1em, env(safe-area-inset-bottom,0));right:max(1em, env(safe-area-inset-right,0));border:.0625rem solid color-mix(in srgb, var(--subtleBorder), transparent 30%);background:var(--premiumGlass);color:var(--text);box-shadow:var(--heavyShadow), var(--panelHighlight), var(--premiumGlow);opacity:1;border-radius:var(--panelRadius);user-select:none;z-index:var(--z-modal);backdrop-filter:blur(.5rem);flex-flow:column wrap;gap:1em;padding:1.25rem 1.5rem;font-size:.9em;display:flex;position:fixed;& h3,& h5,& p{margin:0}& .actions{justify-content:space-between;align-items:baseline;gap:1rem;display:flex;& a{color:inherit;text-underline-offset:.2em;font-weight:600;text-decoration-style:dotted;text-decoration-thickness:.0625rem}& button{&:first-of-type{margin-left:auto}&.accept{color:var(--uiBackground);background:var(--primary)}&.accept:hover{color:var(--uiBackground);background:var(--primary);filter:brightness(1.06)}}}& a{color:inherit;text-underline-offset:.2em;text-decoration-style:dotted;text-decoration-thickness:.0625rem;[data-theme=dark] &{color:#fff}}}html[data-shell=smartphone]{& dialog#cookie-informer{z-index:2147483646;width:100%;min-width:0;max-width:none;height:100%;max-height:none;padding:max(1.25rem, env(safe-area-inset-top,0)) max(1.25rem, env(safe-area-inset-right,0)) max(1.25rem, env(safe-area-inset-bottom,0)) max(1.25rem, env(safe-area-inset-left,0));box-shadow:none;background:var(--uiBackground,var(--bg,#f6f4f1));backdrop-filter:none;border:none;border-radius:0;justify-content:center;align-items:stretch;gap:1.25rem;margin:0;font-size:1em;inset:0;& h5{color:var(--heading,var(--text));font-size:1.15rem;font-weight:650;line-height:1.25}& p{color:var(--textSecondary,var(--text));font-size:.95rem;line-height:1.45}& .actions{flex-direction:column;align-items:stretch;gap:.65rem;margin-top:.25rem;& button{text-align:center;justify-content:center;align-items:center;width:100%;min-height:2.75rem;margin:0}}&>a{text-align:center;margin-top:.25rem}}}#kitchen-builder{background:#fff}.contact-shadows{mix-blend-mode:multiply}.grid-helper{opacity:.3}#toolbox-wrap{--toolbox-tool:3rem;--toolbox-rail-pad-x:.44rem;--toolbox-fab:calc(var(--toolbox-tool) + 2 * var(--toolbox-rail-pad-x));--toolbox-sheet-top:calc(var(--toolbox-fab) + var(--space-3));align-items:flex-start;gap:var(--space-3);inset:auto;left:max(var(--workspace-pad), env(safe-area-inset-left,0));z-index:var(--z-toolbox);max-height:calc(100dvh - var(--header-h) - 3rem);overscroll-behavior:contain;scrollbar-width:thin;max-width:min(100%, calc(100vw - var(--chat-width) - 2rem));pointer-events:none;flex-direction:column;display:flex;position:absolute;overflow:visible;&>*{pointer-events:auto}html[data-shell=desktop] &{section#workspace:has(#init-wrapper) &{max-width:min(100%,100vw - min(48%,42rem) - 2.5rem)}section#workspace:has(#booking-wrapper) &{max-width:min(100%,100vw - min(50%,50rem) - 2.5rem)}}html[data-shell=tablet] &{section#workspace:has(#init-wrapper) &{max-width:min(100%,100vw - min(48%,42rem) - 2.5rem)}section#workspace:has(#booking-wrapper) &{max-width:min(100%,100vw - min(50%,50rem) - 2.5rem)}}html[data-shell=tablet] &{max-width:min(100%, calc(100vw - var(--chat-width) - 1.25rem));section#workspace:has(#init-wrapper) &{max-width:min(100%,100vw - min(52%,28rem) - 1.5rem)}section#workspace:has(#booking-wrapper) &{max-width:min(100%,100vw - min(55%,26rem) - 1.5rem)}}html[data-shell=smartphone] &{top:auto;left:50%;right:auto;bottom:var(--mobile-dock-inset,max(.65rem, env(safe-area-inset-bottom,0)));box-sizing:border-box;width:auto;height:auto;min-height:0;max-height:none;padding-top:var(--dock-fab-lift,1.67rem);z-index:var(--z-toolbox);pointer-events:none;flex-direction:column-reverse;justify-content:flex-start;align-items:center;gap:.5rem;position:fixed;overflow:visible;transform:translate(-50%);max-width:min(calc(100vw - 1.5rem), calc(100vw - env(safe-area-inset-left,0) - env(safe-area-inset-right,0) - 1rem))!important;&>*{pointer-events:auto}--toolbox-sheet-top:0;--mobile-tool-size:2.35rem;--mobile-tools-cols:5;--mobile-tools-ease:cubic-bezier(.22, 1, .36, 1);--mobile-tools-duration:.34s;&>fieldset#toolbox{grid-template-columns:repeat(var(--mobile-tools-cols,5), var(--mobile-tool-size,2.35rem));grid-template-rows:repeat(var(--mobile-tools-rows,1), auto);box-sizing:border-box;width:100%;max-width:calc(100vw - 1.25rem);min-height:var(--mobile-tools-panel-h,auto);height:auto;padding:var(--mobile-tools-panel-pad-y,.5rem) var(--mobile-tools-panel-pad-x,.55rem);place-content:center space-between;place-items:center;gap:var(--mobile-tools-row-gap,.25rem) var(--mobile-tools-col-gap,.3rem);border:.0625rem solid color-mix(in srgb, var(--heading) 9%, transparent);background:color-mix(in srgb, var(--surface-1,#fff) 96%, transparent);box-shadow:0 .0625rem .1rem color-mix(in srgb, var(--heading) 7%, transparent), 0 .45rem 1.35rem color-mix(in srgb, var(--heading) 11%, transparent);-webkit-backdrop-filter:blur(.85rem);clip:auto;transform-origin:bottom;will-change:transform, opacity;transition:opacity var(--mobile-tools-duration) var(--mobile-tools-ease), transform var(--mobile-tools-duration) var(--mobile-tools-ease), visibility 0s linear var(--mobile-tools-duration);border-radius:1.25rem;grid-auto-rows:auto;grid-auto-flow:row;margin:0 0 1rem;display:grid;position:relative;overflow:visible}&[data-toolbox-open=true]>fieldset#toolbox{opacity:1;visibility:visible;pointer-events:auto;width:100%;transition:opacity var(--mobile-tools-duration) var(--mobile-tools-ease), transform var(--mobile-tools-duration) var(--mobile-tools-ease), visibility 0s linear 0s;margin:0 0 1rem;position:relative;transform:translateY(0)scale(1)}&:not([data-toolbox-open=true])>fieldset#toolbox{opacity:0;visibility:hidden;pointer-events:none;width:100%;margin:0 0 .35rem;position:absolute;bottom:100%;left:0;right:0;transform:translateY(.55rem)scale(.96)}&:not([data-toolbox-open=true])>fieldset#material-colors,&:not([data-toolbox-open=true])>fieldset#kitchen-style,&:not([data-toolbox-open=true])>fieldset#kitchen-lighting:not([data-open=true]){display:none}&:has(>fieldset#material-colors),&:has(>fieldset#kitchen-style),&:has(>fieldset#kitchen-lighting){gap:0;&>fieldset#toolbox{border-top:none;border-top-left-radius:0;border-top-right-radius:0;margin-top:0}}}html[data-shell=smartphone][data-shell-landscape=short] &{top:auto;left:50%;right:auto;bottom:var(--mobile-dock-inset,.5rem);flex-direction:row;gap:.3rem;width:auto;height:auto;min-height:2.6rem;max-height:none;position:fixed;overflow:visible;transform:translate(-50%);max-width:calc(100vw - 1rem)!important;&[data-toolbox-open=true]{width:min(100vw - 1rem,28rem);min-height:2.7rem}&[data-toolbox-open=true]>fieldset#toolbox{width:100%;max-width:none}}html[data-shell=tablet][data-shell-landscape=short] &{--toolbox-sheet-top:0;width:100%;max-height:none;height:var(--mobile-toolbox-rail-h,var(--mobile-toolbox-h,2.75rem));flex-direction:row;gap:0;position:fixed;inset:auto 0 0;overflow:visible;max-width:none!important;&>*{pointer-events:auto;width:100%;max-width:none}&>fieldset#toolbox{clip:auto;pointer-events:auto;width:100%;height:100%;position:relative;overflow:visible;visibility:visible!important;transform:none!important}}}.toolbox-mobile-toggle{display:none}html[data-shell=smartphone]{--dock-bar-w:min(19rem, calc(100vw - 2rem));--dock-bar-h:4rem;--dock-side:2.85rem;--dock-fab:3.75rem;--dock-fab-lift:1.67rem;--dock-icon-muted:color-mix(in srgb, var(--heading) 92%, transparent);--dock-icon-side:1.55rem;--dock-icon-stroke:2.15;--dock-fab-bg:color-mix(in srgb, var(--heading) 94%, #0b1220);& .mobile-dock-clip-defs{pointer-events:none;width:0;height:0;position:absolute;overflow:hidden}& .mobile-dock-bar{box-sizing:border-box;width:var(--dock-bar-w);height:var(--dock-bar-h);min-height:var(--dock-bar-h);box-shadow:none;-webkit-backdrop-filter:none;pointer-events:auto;background:0 0;border:none;border-radius:0;grid-template-columns:1fr auto 1fr;align-items:center;margin:0;padding:0 1.35rem;display:grid;position:relative;overflow:visible}& .mobile-dock-bar:before{content:"";z-index:0;pointer-events:none;background:color-mix(in srgb, var(--surface-1,#fff) 97%, transparent);-webkit-backdrop-filter:blur(1.5rem)saturate(1.2);clip-path:url(#mobile-dock-notch);filter:drop-shadow(0 .05rem .1rem color-mix(in srgb, var(--heading) 4%, transparent)) drop-shadow(0 .4rem 1rem color-mix(in srgb, var(--heading) 7%, transparent)) drop-shadow(0 1rem 2.25rem color-mix(in srgb, var(--heading) 8%, transparent));position:absolute;inset:0}& .mobile-dock-btn{z-index:1;box-sizing:border-box;width:var(--dock-side);height:var(--dock-side);min-width:var(--dock-side);min-height:var(--dock-side);color:var(--dock-icon-muted);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:color var(--motion-fast,.16s ease), background var(--motion-fast,.16s ease), transform var(--motion-fast,.16s ease), box-shadow var(--motion-fast,.16s ease);background:0 0;border:none;border-radius:50%;flex-shrink:0;place-items:center;margin:0;padding:0;display:inline-grid;position:relative}& .mobile-dock-btn svg{width:var(--dock-icon-side,1.55rem);height:var(--dock-icon-side,1.55rem);stroke-width:var(--dock-icon-stroke,2.15);stroke-linecap:round;stroke-linejoin:round;display:block}& .mobile-dock-btn.dock-wand{justify-self:start}& .mobile-dock-btn.dock-tools{justify-self:end}& .mobile-dock-btn.dock-tools,& .mobile-dock-btn.dock-wand{color:var(--dock-icon-muted);box-shadow:none;background:0 0}& .mobile-dock-btn.dock-tools:hover,& .mobile-dock-btn.dock-wand:hover{color:var(--heading);background:color-mix(in srgb, var(--heading) 7%, transparent)}& .mobile-dock-btn.dock-tools:active,& .mobile-dock-btn.dock-wand:active{transform:scale(.94)}& .mobile-dock-btn.dock-tools.is-open{color:var(--heading);background:color-mix(in srgb, var(--heading) 8%, transparent)}& .mobile-dock-btn:focus-visible{outline:var(--focus-outline,.125rem solid var(--heading));outline-offset:.125rem}& .mobile-dock-btn.dock-chat.is-primary{z-index:2;width:calc(var(--dock-fab) * 1.15);height:calc(var(--dock-fab) * 1.15);margin-top:calc(var(--dock-fab-lift) * -1.15);background:var(--dock-fab-bg,var(--heading));color:#fff;transition:box-shadow var(--motion-fast,.15s ease), filter var(--motion-fast,.15s ease), transform var(--motion-fast,.15s ease);place-self:center;position:relative;box-shadow:0 .2rem .4rem #0b122038,0 .65rem 1.35rem #0b122047,0 1.1rem 2rem #0b122029}& .mobile-dock-btn.dock-chat.is-primary:hover{background:var(--dock-fab-bg,var(--heading));filter:brightness(1.06);color:var(--surface-1,#fff)}&[data-theme=dark]{--dock-fab-bg:var(--heading)}&[data-theme=dark] .mobile-dock-btn.dock-chat.is-primary,&[data-theme=dark] .mobile-dock-btn.dock-chat.is-primary:hover{background:var(--heading);color:var(--uiBackground);filter:none}&[data-theme=dark] .mobile-dock-btn.dock-chat.is-primary:hover{filter:brightness(1.06)}& .mobile-dock-btn.dock-chat.is-primary:active{transform:scale(.96)}& .mobile-dock-btn.dock-chat.is-primary svg{width:1.45rem;height:1.45rem}& .mobile-dock-btn.dock-chat .dock-chat-badge{z-index:2;width:.55rem;height:.55rem;box-shadow:0 0 0 .12rem var(--surface-1,#fff), 0 .0625rem .2rem #e85d0473;pointer-events:none;background:#e85d04;border-radius:50%;animation:1.6s ease-in-out infinite dock-chat-badge-pulse;position:absolute;top:.22rem;right:.22rem}& .mobile-dock-btn.dock-chat.has-coach-badge .dock-chat-badge{width:.6rem;height:.6rem}& .mobile-dock-btn.dock-wand:disabled{opacity:1;cursor:not-allowed}& .mobile-dock-btn.dock-wand:disabled svg{opacity:.28}& .mobile-dock-btn.dock-wand.busy:not(:disabled){opacity:.65;animation:1.2s ease-in-out infinite toolbox-busy-pulse}& .toolbox-mobile-toggle{display:none}& body:has(dialog#cookie-informer) #toolbox-wrap{bottom:calc(min(12rem,28dvh) + .75rem)}}html[data-shell=smartphone][data-shell-landscape=short]{--dock-bar-w:min(17rem, calc(100vw - 1.5rem));--dock-bar-h:3.5rem;--dock-side:2.55rem;--dock-fab:3.35rem;--dock-fab-lift:1.32rem}@keyframes dock-chat-badge-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.88;transform:scale(1.12)}}@media (prefers-reduced-motion:reduce){html[data-shell=smartphone] #toolbox-wrap>fieldset#toolbox{transition:none!important}html[data-shell=smartphone] #toolbox-wrap[data-toolbox-open=true]>fieldset#toolbox{transform:none!important}}html[data-shell=smartphone] .mobile-dock-btn.dock-chat.is-primary.has-messages,html[data-shell=smartphone] .mobile-dock-btn.dock-chat.is-primary.has-coach-badge{outline-offset:.14rem;outline:.125rem solid #e85d04d9!important;box-shadow:0 0 0 .28rem #e85d0447,0 .2rem .4rem #0b122038,0 .65rem 1.35rem #0b122047!important}html[data-shell=smartphone] body:has(aside#chat.chat-drawer-open) .mobile-dock-btn.dock-chat.is-primary.has-messages,html[data-shell=smartphone] body:has(aside#chat.chat-drawer-open) .mobile-dock-btn.dock-chat.is-primary.has-coach-badge{outline:none!important;box-shadow:0 .2rem .4rem #0b122038,0 .65rem 1.35rem #0b122047,0 1.1rem 2rem #0b122029!important}html[data-shell=smartphone] body:has(aside#chat.chat-drawer-open) .mobile-dock-btn.dock-chat .dock-chat-badge{display:none!important}#toolbox-wrap>.toolbox-variants-wrap{z-index:4;width:var(--toolbox-fab);height:var(--toolbox-fab);flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative;overflow:visible;&>div:has(>.toolbox-action){z-index:1;width:var(--toolbox-fab);height:var(--toolbox-fab);justify-content:center;align-items:center;display:flex;position:relative}& .toolbox-action{--size:var(--toolbox-fab);width:var(--size);height:var(--size);min-width:var(--size);min-height:var(--size);max-width:var(--size);border-radius:var(--panelRadius);background:var(--surfaceWarm,var(--surface-1,var(--elevatedFill)));color:var(--heading);box-shadow:var(--softShadow), var(--panelHighlight);cursor:pointer;touch-action:manipulation;transition:background var(--motion-fast), color var(--motion-fast), box-shadow var(--motion-fast);border:none;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative;&:before{content:"";z-index:0;border-radius:inherit;background:var(--surfaceGlow);pointer-events:none;position:absolute;inset:0}& svg{z-index:1;width:calc(var(--size) / 2.15);height:calc(var(--size) / 2.15);stroke-width:2.35px;display:block;position:relative}&:hover:not([disabled]){background:var(--surface-2,var(--chipFill));color:var(--heading)}&:active:not([disabled]){transform:scale(.96)}&:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset,.125rem)}&[disabled]{opacity:1;cursor:not-allowed;& svg{opacity:.38}}&.busy:not([disabled]){opacity:.65;animation:1.2s ease-in-out infinite toolbox-busy-pulse}}& .popover-hint{background:var(--surface-1,var(--uiBackground));color:var(--text);text-shadow:none;box-shadow:var(--floatShadow);user-select:none;pointer-events:none;opacity:0;white-space:nowrap;z-index:9999;border-radius:.5em;padding:.2em 1em;font-size:0;transition:all .4s;position:absolute;inset:auto 0 auto 100%;overflow:hidden}@media (hover:hover) and (pointer:fine){&>div:has(>.toolbox-action):hover .popover-hint{opacity:1;font-size:.75rem;font-weight:400;right:auto}}&>div:has(>.toolbox-action):focus-within .popover-hint{opacity:1;font-size:.75rem;font-weight:400;right:auto}&:has(.toolbox-variants-flyout):hover>div>.popover-hint,&:has(.toolbox-variants-flyout):focus-within>div>.popover-hint{opacity:0}}.toolbox-variants-bridge{pointer-events:none;width:.85rem;height:100%;position:absolute;top:0;left:100%}.toolbox-variants-wrap:hover .toolbox-variants-bridge,.toolbox-variants-wrap:focus-within .toolbox-variants-bridge{pointer-events:auto}.toolbox-variants-flyout{z-index:10000;background:var(--surface-1,var(--elevatedFill));box-shadow:var(--floatShadow);opacity:0;pointer-events:none;visibility:hidden;border:none;border-radius:1em;margin:0;padding:1.1em 1.25em;font-size:1rem;transition:opacity .16s,transform .16s,visibility .16s;position:absolute;top:0;left:calc(100% + .55rem);transform:translate(-.2rem)}.toolbox-variants-wrap:hover .toolbox-variants-flyout,.toolbox-variants-wrap:focus-within .toolbox-variants-flyout{opacity:1;pointer-events:auto;visibility:visible;transform:translate(0)}fieldset#toolbox{box-sizing:border-box;padding:.36rem var(--toolbox-rail-pad-x) .56rem;border-radius:var(--panelRadius);background:var(--surfaceWarm,var(--surface-1,var(--elevatedFill)));box-shadow:var(--softShadow), var(--panelHighlight);border:none;flex-flow:column wrap;align-items:center;gap:.45em;font-size:.8rem;display:flex;position:relative;overflow:visible;html[data-shell=desktop] &,html[data-shell=tablet] &{width:var(--toolbox-fab)}&:before{content:"";border-radius:inherit;background:var(--surfaceGlow);pointer-events:none;z-index:0;position:absolute;inset:0}&>label,&>.toolbox-lighting-wrap,&>.toolbox-fronts-wrap,&>div:has(>.toolbox-action),&>.toolbox-sep{z-index:1;position:relative}& .toolbox-sep{background:color-mix(in srgb, var(--heading), transparent 90%);opacity:1;border:0;height:.0625rem;margin:.25em .45em;display:block}&>div:has(>.toolbox-action),&>.toolbox-lighting-wrap,&>.toolbox-fronts-wrap,& label{align-items:center;display:flex;position:relative}& button.toolbox-action,& label>button{--size:var(--toolbox-tool,3rem);font-size:calc(var(--size) / 2.2);height:var(--size);width:var(--size);min-height:var(--size);min-width:var(--size);max-width:var(--size);box-shadow:none;border-radius:var(--panelRadius);color:var(--heading);touch-action:manipulation;cursor:pointer;transition:background var(--motion-fast), color var(--motion-fast), box-shadow var(--motion-fast);background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:0;padding:0;line-height:1;display:inline-flex;&:hover:not([disabled]):not(.active){background:var(--surface-2,var(--chipFill));color:var(--heading);box-shadow:none;transform:none}&:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset,.125rem);box-shadow:var(--focus-ring)}&.active:not([disabled]){background:linear-gradient(160deg, color-mix(in srgb, var(--heading), white 8%) 0%, var(--heading) 100%);color:var(--surface-1,var(--elevatedFill));border-radius:var(--panelRadius);box-shadow:0 0 0 .1875rem color-mix(in srgb, var(--heading), transparent 92%)}&[data-toolbox-action=regenerate]{background:var(--surface-2,var(--chipFill));color:var(--heading);border-radius:var(--panelRadius);& svg{stroke-width:2.35px}}& svg{aspect-ratio:1;width:calc(var(--size) / 2.1);height:calc(var(--size) / 2.1);min-width:calc(var(--size) / 2.1);min-height:calc(var(--size) / 2.1);opacity:1;color:inherit;stroke-width:2.15px;display:block}&[disabled]{opacity:.28}&.busy:not([disabled]){opacity:.65;animation:1.2s ease-in-out infinite toolbox-busy-pulse}}& .popover-hint{background:var(--surface-1,var(--uiBackground));color:var(--text);text-shadow:none;box-shadow:var(--floatShadow);user-select:none;pointer-events:none;opacity:0;white-space:nowrap;z-index:9999;border-radius:.5em;padding:.2em 1em;font-size:0;transition:all .4s;position:absolute;inset:auto 0 auto 100%;overflow:hidden}@media (hover:hover) and (pointer:fine){&>div:has(>.toolbox-action):hover .popover-hint,& label:hover .popover-hint{opacity:1;font-size:1.25em;font-weight:400;right:auto}}&>div:has(>.toolbox-action):focus-within .popover-hint,& label:focus-within .popover-hint{opacity:1;font-size:1.25em;font-weight:400;right:auto}& .toolbox-lighting-wrap,& .toolbox-fronts-wrap{z-index:2;position:relative}& .toolbox-fronts-bridge{pointer-events:none;width:.85rem;height:100%;position:absolute;top:0;left:100%}& .toolbox-fronts-wrap:hover .toolbox-fronts-bridge,& .toolbox-fronts-wrap:focus-within .toolbox-fronts-bridge{pointer-events:auto}& .toolbox-fronts-flyout{z-index:10000;border:.0625rem solid color-mix(in srgb, var(--heading) 11%, transparent);background:color-mix(in srgb, var(--surface-1,#fff) 97%, transparent);box-shadow:0 .0625rem .125rem color-mix(in srgb, var(--heading) 8%, transparent), 0 .75rem 1.75rem color-mix(in srgb, var(--heading) 14%, transparent);-webkit-backdrop-filter:blur(.75rem);opacity:0;pointer-events:none;visibility:hidden;border-radius:.85rem;flex-direction:row;align-items:center;gap:.35rem;margin:0;padding:.4rem;transition:opacity .16s,transform .16s,visibility .16s;display:flex;position:absolute;top:50%;left:calc(100% + .55rem);transform:translateY(-50%)translate(-.2rem)}& .toolbox-fronts-wrap:hover .toolbox-fronts-flyout,& .toolbox-fronts-wrap:focus-within .toolbox-fronts-flyout{opacity:1;pointer-events:auto;visibility:visible;transform:translateY(-50%)translate(0)}& .toolbox-fronts-wrap:hover>div>.popover-hint,& .toolbox-fronts-wrap:focus-within>div>.popover-hint{opacity:0}& .toolbox-variants-wrap{z-index:4;justify-content:center;align-items:center;display:flex;position:relative;overflow:visible}& .toolbox-lighting-wrap.is-kitchen-inactive:hover .popover-hint,& .toolbox-lighting-wrap.is-kitchen-inactive:focus-within .popover-hint{opacity:1;white-space:normal;max-width:11rem;padding:.35em .75em;font-size:1.05em;font-weight:500;line-height:1.3;left:calc(100% + .45rem);right:auto}& .toolbox-lighting-bridge{pointer-events:none;width:.85rem;height:100%;position:absolute;top:0;left:100%}& .toolbox-lighting-wrap:hover .toolbox-lighting-bridge,& .toolbox-lighting-wrap:focus-within .toolbox-lighting-bridge,& .toolbox-lighting-wrap.is-flyout-open .toolbox-lighting-bridge{pointer-events:auto}& .toolbox-lighting-flyout{z-index:10000;border:.0625rem solid color-mix(in srgb, var(--heading) 11%, transparent);background:color-mix(in srgb, var(--surface-1,#fff) 97%, transparent);width:min(15.5rem,72vw);box-shadow:0 .0625rem .125rem color-mix(in srgb, var(--heading) 8%, transparent), 0 .875rem 2.25rem color-mix(in srgb, var(--heading) 16%, transparent), inset 0 .0625rem 0 #ffffffb3;-webkit-backdrop-filter:blur(.875rem);opacity:0;pointer-events:none;visibility:hidden;border-radius:.95rem;flex-direction:column;gap:.55rem;margin:0;padding:.7rem .7rem .65rem;transition:opacity .16s,transform .16s,visibility .16s;display:flex;position:absolute;top:50%;left:calc(100% + .65rem);transform:translateY(-50%)translate(-.25rem)}& .toolbox-lighting-wrap:hover .toolbox-lighting-flyout,& .toolbox-lighting-wrap:focus-within .toolbox-lighting-flyout,& .toolbox-lighting-wrap.is-flyout-open .toolbox-lighting-flyout{opacity:1;pointer-events:auto;visibility:visible;transform:translateY(-50%)translate(0)}& .toolbox-lighting-wrap.is-flyout-up .toolbox-lighting-flyout{top:auto;bottom:0;transform:translateY(0)translate(-.25rem)}& .toolbox-lighting-wrap.is-flyout-up:hover .toolbox-lighting-flyout,& .toolbox-lighting-wrap.is-flyout-up:focus-within .toolbox-lighting-flyout,& .toolbox-lighting-wrap.is-flyout-up.is-flyout-open .toolbox-lighting-flyout{transform:translateY(0)translate(0)}& .toolbox-lighting-flyout-head{grid-template-columns:1.7rem minmax(0,1fr);align-items:start;gap:.55rem;display:grid}& .toolbox-lighting-flyout-icon{background:color-mix(in srgb, var(--heading) 8%, transparent);width:1.7rem;height:1.7rem;color:var(--heading);border-radius:.5rem;place-items:center;display:grid}& .toolbox-lighting-wrap.is-lighting-on .toolbox-lighting-flyout-icon{background:linear-gradient(160deg, color-mix(in srgb, var(--heading), white 10%) 0%, var(--heading) 100%);color:var(--surface-1,#fff)}& .toolbox-lighting-flyout-icon svg{width:.95rem;height:.95rem;display:block}& .toolbox-lighting-flyout-copy{flex-direction:column;gap:.18rem;min-width:0;display:flex}& .toolbox-lighting-flyout-title{letter-spacing:.01em;color:var(--heading);margin:0;font-size:.78rem;font-weight:700;line-height:1.25}& .toolbox-lighting-flyout-hint{opacity:.68;color:var(--text);margin:0;font-size:.62rem;line-height:1.35}& .toolbox-lighting-zones{flex-direction:column;gap:.28rem;margin:0;padding:0;list-style:none;display:flex}& .toolbox-lighting-zones>li{margin:0;padding:0;list-style:none}& .toolbox-lighting-zone{border:.0625rem solid color-mix(in srgb, var(--heading) 9%, transparent);background:color-mix(in srgb, var(--heading) 2.5%, var(--surface-1,#fff));width:100%;min-height:2.75rem;color:var(--text);font:inherit;text-align:start;cursor:pointer;touch-action:manipulation;transition:border-color var(--motion-fast,.15s), background var(--motion-fast,.15s), box-shadow var(--motion-fast,.15s);border-radius:.7rem;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.65rem;margin:0;padding:.48rem .55rem .48rem .6rem;display:grid;&:hover{border-color:color-mix(in srgb, var(--heading) 20%, transparent);background:color-mix(in srgb, var(--heading) 5.5%, var(--surface-1,#fff))}&:focus-visible{outline:.125rem solid color-mix(in srgb, var(--heading) 50%, transparent);outline-offset:.0625rem}&.is-on{border-color:color-mix(in srgb, var(--heading) 28%, transparent);background:color-mix(in srgb, var(--heading) 7%, var(--surface-1,#fff));box-shadow:inset 0 0 0 .0625rem color-mix(in srgb, var(--heading) 6%, transparent)}}& .toolbox-lighting-zone-text{flex-direction:column;gap:.1rem;min-width:0;display:flex}& .toolbox-lighting-zone-label{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.74rem;font-weight:650;line-height:1.25;overflow:hidden}& .toolbox-lighting-zone-state{letter-spacing:.01em;opacity:.55;color:var(--text);font-size:.62rem;font-weight:550;line-height:1.2}& .toolbox-lighting-zone.is-on .toolbox-lighting-zone-state{opacity:.78;color:var(--heading)}& .toolbox-lighting-switch{background:color-mix(in srgb, var(--heading) 16%, transparent);width:2.15rem;height:1.25rem;box-shadow:inset 0 0 0 .0625rem color-mix(in srgb, var(--heading) 8%, transparent);transition:background var(--motion-fast,.15s);border-radius:50rem;flex-shrink:0;position:relative}& .toolbox-lighting-zone.is-on .toolbox-lighting-switch{background:var(--heading)}& .toolbox-lighting-switch-knob{background:var(--surface-1,#fff);width:1rem;height:1rem;box-shadow:0 .0625rem .125rem #0000002e, 0 0 0 .0625rem color-mix(in srgb, var(--heading) 6%, transparent);transition:transform var(--motion-fast,.15s);border-radius:50rem;position:absolute;top:.12rem;left:.12rem}& .toolbox-lighting-zone.is-on .toolbox-lighting-switch-knob{transform:translate(.9rem)}html[data-shell=smartphone] &{& .toolbox-lighting-bridge{display:none}& .toolbox-lighting-flyout{width:min(16rem,100vw - 2rem);top:auto;bottom:calc(100% + .5rem);left:50%;transform:translate(-50%)translateY(.25rem)}& .toolbox-lighting-wrap:hover .toolbox-lighting-flyout,& .toolbox-lighting-wrap:focus-within .toolbox-lighting-flyout{transform:translate(-50%)translateY(0)}}html[data-shell=smartphone] &{flex-direction:unset;flex-wrap:unset;width:auto;height:auto;min-height:0;box-shadow:none;-webkit-backdrop-filter:none;background:0 0;border:none;border-radius:0;gap:0;margin:0;padding:0;overflow:visible;&:before{display:none}& .popover-hint,&>div:has(>.toolbox-action):hover .popover-hint,&>div:has(>.toolbox-action):focus-within .popover-hint,& label:hover .popover-hint,& label:focus-within .popover-hint,& .toolbox-lighting-wrap:hover .popover-hint,& .toolbox-lighting-wrap:focus-within .popover-hint,& .toolbox-lighting-wrap.is-kitchen-inactive:hover .popover-hint,& .toolbox-lighting-wrap.is-kitchen-inactive:focus-within .popover-hint{visibility:hidden!important;opacity:0!important;pointer-events:none!important;width:0!important;max-width:0!important;height:0!important;margin:0!important;padding:0!important;font-size:0!important;display:none!important;overflow:hidden!important}& .toolbox-sep{display:none}& label,&>div:has(>.toolbox-action),& .toolbox-lighting-wrap{box-sizing:border-box;width:var(--mobile-tool-size,2.35rem);max-width:var(--mobile-tool-size,2.35rem);height:var(--mobile-tool-size,2.35rem);justify-content:center;align-items:center;display:flex;position:relative;overflow:visible}& .toolbox-sep{border:none!important;width:0!important;height:0!important;margin:0!important;padding:0!important;display:none!important}& label button,&>div:has(>.toolbox-action)>.toolbox-action,& .toolbox-lighting-wrap>.toolbox-action{--size:var(--mobile-tool-size,2.35rem);box-sizing:border-box;width:var(--size);max-width:var(--size);min-width:0;min-height:0;height:var(--size);max-height:var(--size);aspect-ratio:1;background:0 0;border-radius:50%;padding:0}& label button.active,&>div:has(>.toolbox-action)>.toolbox-action.active,& .toolbox-lighting-wrap>.toolbox-action.active{background:var(--heading);color:var(--surface-1,#fff);box-shadow:none}& label button svg,&>div:has(>.toolbox-action)>.toolbox-action svg,& .toolbox-lighting-wrap>.toolbox-action svg{width:1.35rem;min-width:0;height:1.35rem;min-height:0}}html[data-shell=tablet][data-shell-landscape=short] &{width:100%;height:100%;padding:.06rem max(.12rem, env(safe-area-inset-right,0)) .06rem max(.12rem, env(safe-area-inset-left,0));border:none;border-top:.0625rem solid var(--divider,transparent);box-shadow:none;border-radius:0;flex-flow:row;justify-content:space-between;align-items:center;gap:0;margin:0;overflow-x:clip;& .toolbox-sep{width:.0625rem;height:.9rem;margin:0 .0625rem}& .toolbox-variants-wrap{margin-top:0;width:auto;height:auto;margin-inline:0;&>div:has(>.toolbox-action){width:auto;height:auto}& .toolbox-action[data-toolbox-action=regenerate]{--size:1.95rem;box-shadow:none;border-radius:.3rem}}& label{flex:1 1 0;justify-content:center;min-width:0;max-width:2.1rem;display:flex;& button{aspect-ratio:1;border-radius:.3rem;width:100%;min-width:0;max-width:1.95rem;height:auto;max-height:1.95rem}& button svg{width:52%;min-width:0;height:52%;min-height:0}& .popover-hint{display:none!important}}}html[data-shell=smartphone][data-shell-landscape=short] &{width:100%;height:100%;padding:.06rem max(.12rem, env(safe-area-inset-right,0)) .06rem max(.12rem, env(safe-area-inset-left,0));border:none;border-top:.0625rem solid var(--divider,transparent);box-shadow:none;border-radius:0;flex-flow:row;justify-content:space-between;align-items:center;gap:0;margin:0;overflow-x:clip;& .popover-hint{display:none!important}& .toolbox-sep{width:.0625rem;height:.9rem;margin:0 .0625rem}& label{flex:1 1 0;justify-content:center;min-width:0;max-width:2.1rem;display:flex;& button{aspect-ratio:1;border-radius:.3rem;width:100%;min-width:0;max-width:1.95rem;height:auto;max-height:1.95rem}& button svg{width:52%;min-width:0;height:52%;min-height:0}}}}fieldset#material-colors,fieldset#kitchen-style,fieldset#kitchen-lighting{left:5rem;top:var(--toolbox-sheet-top,0);background:var(--surface-1,var(--elevatedFill));box-shadow:var(--floatShadow);min-width:15rem;max-width:min(20.5rem,100vw - 7rem);max-height:min(100%,100dvh - 2rem);z-index:calc(var(--z-toolbox) + 1);scrollbar-gutter:stable;border:none;border-radius:1em;flex-direction:column;gap:.55em;margin:0;padding:1.1em 1.25em;font-size:1rem;display:flex;position:absolute;overflow:auto;html[data-shell=smartphone] &{box-sizing:border-box;width:100%;min-width:0;max-width:calc(100vw - 1.25rem);max-height:min(52dvh, calc(100dvh - var(--header-h) - var(--mobile-dock-stack,10rem) - 1.25rem));border:.0625rem solid color-mix(in srgb, var(--heading) 9%, transparent);background:color-mix(in srgb, var(--surface-1,#fff) 96%, transparent);box-shadow:none;-webkit-backdrop-filter:blur(.85rem);z-index:calc(var(--z-toolbox) + 1);border-bottom:none;border-radius:1.25rem 1.25rem 0 0;margin:0;padding:.75em .85em;position:relative;inset:auto;overflow:hidden auto}html[data-shell=tablet][data-shell-landscape=short] &,html[data-shell=smartphone][data-shell-landscape=short] &{left:0;right:auto;top:var(--header-h);bottom:var(--mobile-toolbox-h,2.75rem);border-radius:0;width:min(18rem,46vw);max-width:46vw;max-height:none;position:fixed}& .panel-hint{opacity:.72;margin:0;font-size:.72em;line-height:1.35}& .presets{flex-direction:column;gap:.45em;width:100%;padding-bottom:.35rem;display:flex;overflow:visible;& .presets-title{letter-spacing:.01em;color:var(--text);font-size:.78em;font-weight:650}& .preset-grid{grid-template-columns:repeat(auto-fill,minmax(7.25rem,1fr));gap:.45rem;margin:0;padding:0;list-style:none;display:grid;overflow:visible}& .preset-item{z-index:0;min-width:0;margin:0;padding:0;list-style:none;position:relative}& .preset-item:hover,& .preset-item:focus-within{z-index:12}& .preset-card{border-radius:var(--cardRadius,1rem);background:var(--chipFill,var(--softCardBg));width:100%;min-height:100%;color:var(--text);cursor:pointer;box-shadow:none;text-shadow:none;height:auto;transition:border-color var(--motion-fast), border-radius var(--motion-fast), box-shadow var(--motion-fast), transform var(--motion-fast), background var(--motion-fast);border:.0625rem solid #0000;flex-direction:column;align-items:stretch;gap:.4rem;margin:0;padding:.5rem .55rem .55rem;font-size:.78rem;line-height:1.25;display:flex;position:relative;&:hover:not(:disabled){border-color:color-mix(in srgb, var(--heading), transparent 82%)}&.active{border-color:var(--heading);background:var(--elevatedFill,var(--uiBackground));box-shadow:var(--buttonShadow,var(--softShadow)), 0 0 0 .125rem color-mix(in srgb, var(--accent,var(--heading)), transparent 55%)}&:focus-visible{box-shadow:var(--focus-ring,0 0 0 .125rem var(--heading));outline:none}&:disabled{opacity:.55;cursor:not-allowed;transform:none}& .preset-swatches{background:color-mix(in srgb, var(--heading) 6%, transparent);border:none;border-radius:.4rem;grid-template-columns:repeat(5,1fr);gap:.125rem;height:1.5rem;display:grid;overflow:hidden;& .preset-swatch{border:none;border-radius:0;width:auto;min-width:0;height:100%;display:block}& .preset-swatch.is-glass{background-color:#0000;background-image:linear-gradient(155deg, color-mix(in srgb, var(--swatch,#d8dde3) 62%, transparent) 0%, color-mix(in srgb, var(--swatch,#d8dde3) 38%, transparent) 100%), repeating-conic-gradient(from 0deg, #ececeb 0% 25%, #f7f7f6 0% 50%) 0 0 / .375rem .375rem;box-shadow:inset 0 0 0 .0625rem color-mix(in srgb, var(--heading) 12%, transparent)}}& .preset-label{color:var(--text);text-align:left;text-overflow:ellipsis;margin:0;padding-right:1.05rem;font-size:.74rem;font-weight:650;line-height:1.3;overflow:hidden}& .preset-detail{z-index:2;border:.0625rem solid color-mix(in srgb, var(--heading), transparent 78%);border-top:.0625rem solid color-mix(in srgb, var(--divider,var(--heading)), transparent 82%);border-radius:0 0 var(--cardRadius,1rem) var(--cardRadius,1rem);background:var(--elevatedFill,var(--uiBackground));box-shadow:var(--floatShadow,var(--buttonShadow,var(--softShadow)));text-align:left;pointer-events:none;flex-direction:column;gap:.4rem;margin:0;padding:.5rem .55rem .55rem;display:none;position:absolute;top:calc(100% - .0625rem);left:-.0625rem;right:-.0625rem}& .preset-detail-list{flex-direction:column;gap:.35rem;display:flex}& .preset-detail-row{grid-template-columns:.7rem minmax(0,1fr);align-items:start;gap:.4rem;display:grid}& .preset-detail-swatch{border:.0625rem solid color-mix(in srgb, var(--heading), transparent 82%);border-radius:.2rem;width:.7rem;height:.7rem;margin-top:.12rem;display:block;box-shadow:inset 0 0 0 .0625rem #ffffff1f}& .preset-detail-swatch.is-glass{background-color:#0000;background-image:linear-gradient(color-mix(in srgb, var(--swatch,#d8dde3) 58%, transparent), color-mix(in srgb, var(--swatch,#d8dde3) 40%, transparent)), repeating-conic-gradient(from 0deg, #ececeb 0% 25%, #f7f7f6 0% 50%) 0 0 / .25rem .25rem}& .preset-detail-meta{flex-direction:column;gap:.05rem;min-width:0;display:flex}& .preset-detail-role{color:var(--text);font-size:.68rem;font-weight:650;line-height:1.25}& .preset-detail-nobilia{color:color-mix(in srgb, var(--text), transparent 18%);text-overflow:ellipsis;white-space:nowrap;font-size:.64rem;font-weight:500;line-height:1.25;overflow:hidden}& .preset-detail-texture{opacity:.72;text-overflow:ellipsis;white-space:nowrap;font-size:.6rem;font-weight:500;line-height:1.2;overflow:hidden}& .preset-check{background:var(--heading);width:1.05rem;height:1.05rem;color:var(--elevatedFill,var(--uiBackground));box-shadow:none;border-radius:50%;place-items:center;font-size:.65rem;font-weight:700;line-height:1;display:grid;position:absolute;bottom:.4rem;right:.4rem;transform:scaleX(-1)rotate(-45deg)}}& .preset-item:hover .preset-card,& .preset-item:focus-within .preset-card{border-color:color-mix(in srgb, var(--heading), transparent 78%);border-radius:var(--cardRadius,1rem) var(--cardRadius,1rem) 0 0;background:var(--elevatedFill,var(--uiBackground));box-shadow:var(--floatShadow,var(--buttonShadow,var(--softShadow)));z-index:3;border-bottom-color:#0000;transform:none}& .preset-item.is-active:hover .preset-card,& .preset-item.is-active:focus-within .preset-card,& .preset-item:has(.preset-card.active):hover .preset-card,& .preset-item:has(.preset-card.active):focus-within .preset-card{border-color:var(--heading);box-shadow:var(--buttonShadow,var(--softShadow)), 0 0 0 .125rem color-mix(in srgb, var(--accent,var(--heading)), transparent 55%);border-bottom-color:#0000}& .preset-item:hover .preset-detail,& .preset-item:focus-within .preset-detail{display:flex}}& .customize-toggle{box-shadow:none;color:inherit;cursor:pointer;text-underline-offset:.15em;background:0 0;border:none;align-self:flex-start;padding:0;font-size:.72em;text-decoration:underline;&:hover,&:focus-visible{opacity:1;outline:none}}& .customize-zones{flex-direction:column;flex:none;gap:.55em;max-height:none;margin:0;display:flex;overflow:visible}& .material-zone{border-bottom:.0625rem solid color-mix(in srgb, var(--text) 8%, transparent);flex-direction:column;gap:.4em;padding-bottom:.5em;display:flex;&:last-child{border-bottom:none;padding-bottom:0}}& .material-zone-vitrine{border:none;margin:0 -.15em;padding:.45em .5em .55em;& .material-zone-title{letter-spacing:.01em}}& .material-zone-header{justify-content:space-between;align-items:center;gap:.5em;display:flex}& .material-zone-title{font-size:.78em;font-weight:600}& .zone-action{box-shadow:none;color:inherit;opacity:.75;cursor:pointer;text-underline-offset:.12em;white-space:nowrap;background:0 0;border:none;padding:0;font-size:.65em;text-decoration:underline;&:hover,&:focus-visible{opacity:1;outline:none}}& .material-zone-row{flex-direction:column;gap:.35em;padding-top:.15em;display:flex}& .material-zone-row-label{opacity:.75;font-size:.68em}& .swatch-picker{flex-direction:column;gap:.35em;display:flex}& .swatch-picker-label{opacity:.75;font-size:.68em}& .swatch-list{flex-direction:column;gap:.28em;width:100%;display:flex}& .swatch-option{border:.0625rem solid color-mix(in srgb, var(--heading) 10%, transparent);background:color-mix(in srgb, var(--heading) 3.5%, var(--uiBackground,#fff));width:100%;min-height:2.75rem;color:var(--text);font:inherit;text-align:start;cursor:pointer;touch-action:manipulation;box-sizing:border-box;transition:border-color var(--motion-fast,.15s), background var(--motion-fast,.15s), box-shadow var(--motion-fast,.15s);border-radius:.55em;grid-template-columns:2.75rem minmax(0,1fr);align-items:center;gap:.55em;margin:0;padding:.32em .4em .32em .32em;display:grid;&:hover{border-color:color-mix(in srgb, var(--heading) 22%, transparent);background:color-mix(in srgb, var(--heading) 7%, var(--uiBackground,#fff))}&:focus-visible{outline:.125rem solid color-mix(in srgb, var(--heading) 55%, transparent);outline-offset:.0625rem}&.active{border-color:color-mix(in srgb, var(--heading) 72%, transparent);background:color-mix(in srgb, var(--heading) 9%, var(--uiBackground,#fff));box-shadow:0 0 0 .0625rem var(--uiBackground,#fff), inset 0 0 0 .0625rem color-mix(in srgb, var(--heading) 12%, transparent)}}& .swatch-option-preview{width:2.75rem;height:2.75rem;box-shadow:inset 0 0 0 .0625rem color-mix(in srgb, var(--heading) 14%, transparent);background:color-mix(in srgb, var(--heading) 6%, transparent);border-radius:.4em;flex-shrink:0;display:block;position:relative;overflow:hidden}& .swatch-option-preview.is-texture-preview{background-position:50%;background-size:cover}& .solid-swatch-fill{position:absolute;inset:0;box-shadow:inset 0 0 0 .0625rem #00000014}& .swatch-option-meta{flex-direction:column;gap:.1em;min-width:0;display:flex}& .swatch-option-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.78em;font-weight:650;line-height:1.25;overflow:hidden}& .swatch-option-sub{opacity:.7;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.64em;font-weight:550;line-height:1.2;overflow:hidden}& .vitrine-swatch-interior{background:linear-gradient(#d8d4cd 0%,#ebe7e0 45%,#cfcbc3 100%);position:absolute;inset:0}& .vitrine-swatch-interior:after{content:"";background:#8a86808c;height:.0938rem;position:absolute;top:30%;left:18%;right:18%;box-shadow:0 .5rem #8a868073,0 1rem #8a868066}& .vitrine-swatch-alu{border:.125rem solid var(--frame,#5a5e64);pointer-events:none;border-radius:.0625rem;position:absolute;inset:10%;box-shadow:0 0 0 .0312rem #0000002e,inset 0 0 0 .0312rem #ffffff38}& .vitrine-swatch-glass{background:linear-gradient(155deg, color-mix(in srgb, var(--swatch,#9aa3ad) 78%, transparent) 0%, color-mix(in srgb, var(--swatch,#9aa3ad) 88%, transparent) 48%, color-mix(in srgb, var(--swatch,#9aa3ad) 72%, transparent) 100%);opacity:.88;pointer-events:none;position:absolute;inset:0}& .vitrine-swatch-shine{pointer-events:none;mix-blend-mode:soft-light;background:linear-gradient(118deg,#ffffff6b 0%,#0000 38% 62%,#ffffff1f 100%);position:absolute;inset:0}& .style-picker{flex-direction:column;justify-content:space-between;gap:.3em;display:flex}& .style-picker-label{opacity:.75;font-size:.68em}& .style-option-grid{flex-wrap:wrap;gap:.35em;display:flex}& .style-option{border-radius:var(--pillRadius);background:var(--surface-2,var(--pillBg));color:inherit;cursor:pointer;box-shadow:none;text-shadow:none;border:none;padding:.28em .55em;font-size:.67em;line-height:1.15;&:hover,&:focus-visible{background:color-mix(in srgb, var(--surface-2), var(--heading) 6%);outline:none}&.active{background:var(--heading);color:var(--surface-1,var(--elevatedFill));font-weight:600}}& .reset-colors{cursor:pointer;box-shadow:none;background:0 0;border:none;align-self:flex-start;margin-top:.35em;padding:0;font-size:.85em;text-decoration:underline;&:hover,&:focus-visible{opacity:1;outline:none}}}fieldset#controls{z-index:999;flex-flow:column wrap;gap:.5em;font-size:.7rem;display:flex;position:absolute;inset:auto 1em 1em auto;& button{--size:2rem;font-weight:700;font-size:calc(var(--size) / 2);height:var(--size);width:var(--size);border-radius:50%;justify-content:center;padding:0}}@keyframes toolbox-busy-pulse{0%,to{scale:1}50%{scale:1.08}}button#dev-trigger{opacity:0;cursor:auto;background:0 0;border:none;width:1rem;height:1rem;padding:0;position:fixed;inset:0 auto auto 0}fieldset#kitchen-lighting{gap:.65rem}fieldset#kitchen-lighting .toolbox-lighting-flyout-head{grid-template-columns:1.7rem minmax(0,1fr);align-items:start;gap:.55rem;display:grid}fieldset#kitchen-lighting .toolbox-lighting-flyout-icon{background:color-mix(in srgb, var(--heading) 8%, transparent);width:1.7rem;height:1.7rem;color:var(--heading);border-radius:.5rem;place-items:center;display:grid}fieldset#kitchen-lighting.is-lighting-on .toolbox-lighting-flyout-icon{background:linear-gradient(160deg, color-mix(in srgb, var(--heading), white 10%) 0%, var(--heading) 100%);color:var(--surface-1,#fff)}fieldset#kitchen-lighting .toolbox-lighting-flyout-icon svg{width:.95rem;height:.95rem;display:block}fieldset#kitchen-lighting .toolbox-lighting-flyout-copy{flex-direction:column;gap:.18rem;min-width:0;display:flex}fieldset#kitchen-lighting .toolbox-lighting-flyout-title{letter-spacing:.01em;color:var(--heading);margin:0;font-size:.9rem;font-weight:700;line-height:1.25}fieldset#kitchen-lighting .toolbox-lighting-flyout-hint{opacity:.68;color:var(--text);margin:0;font-size:.72rem;line-height:1.35}fieldset#kitchen-lighting .toolbox-lighting-zones{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}fieldset#kitchen-lighting .toolbox-lighting-zones>li{margin:0;padding:0;list-style:none}fieldset#kitchen-lighting .toolbox-lighting-zone{border:.0625rem solid color-mix(in srgb, var(--heading) 9%, transparent);background:color-mix(in srgb, var(--heading) 2.5%, var(--surface-1,#fff));width:100%;min-height:2.85rem;color:var(--text);font:inherit;text-align:start;cursor:pointer;touch-action:manipulation;transition:border-color var(--motion-fast,.15s), background var(--motion-fast,.15s), box-shadow var(--motion-fast,.15s);border-radius:.75rem;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.65rem;margin:0;padding:.55rem .65rem .55rem .7rem;display:grid}fieldset#kitchen-lighting .toolbox-lighting-zone:hover{border-color:color-mix(in srgb, var(--heading) 20%, transparent);background:color-mix(in srgb, var(--heading) 5.5%, var(--surface-1,#fff))}fieldset#kitchen-lighting .toolbox-lighting-zone:focus-visible{outline:.125rem solid color-mix(in srgb, var(--heading) 50%, transparent);outline-offset:.0625rem}fieldset#kitchen-lighting .toolbox-lighting-zone.is-on{border-color:color-mix(in srgb, var(--heading) 28%, transparent);background:color-mix(in srgb, var(--heading) 7%, var(--surface-1,#fff));box-shadow:inset 0 0 0 .0625rem color-mix(in srgb, var(--heading) 6%, transparent)}fieldset#kitchen-lighting .toolbox-lighting-zone-text{flex-direction:column;gap:.1rem;min-width:0;display:flex}fieldset#kitchen-lighting .toolbox-lighting-zone-label{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;font-weight:650;line-height:1.25;overflow:hidden}fieldset#kitchen-lighting .toolbox-lighting-zone-state{letter-spacing:.01em;opacity:.55;color:var(--text);font-size:.68rem;font-weight:550;line-height:1.2}fieldset#kitchen-lighting .toolbox-lighting-zone.is-on .toolbox-lighting-zone-state{opacity:.78;color:var(--heading)}fieldset#kitchen-lighting .toolbox-lighting-switch{background:color-mix(in srgb, var(--heading) 16%, transparent);width:2.15rem;height:1.25rem;box-shadow:inset 0 0 0 .0625rem color-mix(in srgb, var(--heading) 8%, transparent);transition:background var(--motion-fast,.15s);border-radius:50rem;flex-shrink:0;position:relative}fieldset#kitchen-lighting .toolbox-lighting-zone.is-on .toolbox-lighting-switch{background:var(--heading)}fieldset#kitchen-lighting .toolbox-lighting-switch-knob{background:var(--surface-1,#fff);width:1rem;height:1rem;box-shadow:0 .0625rem .125rem #0000002e, 0 0 0 .0625rem color-mix(in srgb, var(--heading) 6%, transparent);transition:transform var(--motion-fast,.15s);border-radius:50rem;position:absolute;top:.12rem;left:.12rem}fieldset#kitchen-lighting .toolbox-lighting-zone.is-on .toolbox-lighting-switch-knob{transform:translate(.9rem)}html[data-shell=smartphone] fieldset#kitchen-lighting{& .toolbox-lighting-zone{min-height:3rem;padding:.6rem .75rem}& .toolbox-lighting-zone-label{font-size:.88rem}}@keyframes scene-capture-flash{0%{filter:brightness()saturate()}15%{filter:brightness(2.7)saturate(1.25)}55%{filter:brightness(1.7)saturate(1.1)}to{filter:brightness()saturate()}}aside#scene{--scene-bg:var(--sceneBg);--scene-vignette-blur:.8125rem;--scene-vignette-darkness:.36;inset:0;right:calc(var(--chat-width) + var(--workspace-pad));top:calc(var(--header-h) + var(--workspace-pad) * 1.35);touch-action:none;background-color:var(--scene-bg);user-select:none;border:none;border-radius:0;flex:1;align-items:center;margin-right:auto;transition:opacity .2s;display:flex;position:absolute;overflow:visible;&[data-scene-mood=evening]{--scene-bg:#726c70;--scene-vignette-blur:.9375rem;--scene-vignette-darkness:.42}&.fullscreen{border:none;inset:0}html[data-shell=tablet] &{top:calc(var(--header-h) + var(--workspace-pad));bottom:var(--workspace-pad);left:var(--workspace-pad);right:calc(var(--chat-width) + var(--workspace-pad) * 2 + var(--tablet-scene-gap,.35rem));border-radius:var(--panelRadius,1.15rem)}html[data-shell=smartphone] &{border-radius:0;inset:0}html[data-shell=tablet][data-shell-landscape=short] &{top:var(--header-h);bottom:var(--mobile-toolbox-h,2.75rem);border-radius:0;left:0;right:0}html[data-shell=smartphone][data-shell-landscape=short] &{top:var(--header-h);bottom:var(--mobile-toolbox-h,2.75rem);left:0;right:0}&.grab{cursor:grab}&.grabbing{cursor:grabbing}& canvas{opacity:1;filter:saturate();border-radius:0;width:100%;height:100%;transition:opacity .48s cubic-bezier(.4,0,.2,1),filter .48s cubic-bezier(.4,0,.2,1);display:block;position:absolute;inset:0}&.scene-visual-busy canvas{opacity:.78;filter:saturate(.9)}& canvas.capture-flash{animation:.2s ease-out forwards scene-capture-flash}&:after{content:"";z-index:1000;pointer-events:none;background:color-mix(in srgb, var(--scene-bg,#1a1a1a) calc(var(--scene-vignette-darkness,.24) * 100%), transparent);backdrop-filter:blur(var(--scene-vignette-blur,5rem));mask-image:var(--scene-vignette-mask);border-radius:0;position:absolute;inset:0;mask-position:50%;mask-size:130%;mask-repeat:no-repeat}&.fullscreen canvas{border-radius:0}&:before{content:"";z-index:2;pointer-events:none;mix-blend-mode:multiply;opacity:.1;width:100%;height:100%;animation:grain-move .75s steps(6) infinite linear;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200' viewBox='0 0 200 200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='0.28'/%3E%3C/svg%3E");background-repeat:repeat;background-size:10rem 10rem;position:absolute;inset:0}}section#workspace:has(#booking-wrapper) aside#scene:not(.fullscreen){right:calc(min(50%, 50rem) + var(--workspace-pad) + .75rem)}html[data-shell=tablet]{& section#workspace:has(#booking-wrapper) aside#scene:not(.fullscreen){right:calc(min(55%, 26rem) + var(--workspace-pad) + .5rem)}}html[data-shell=smartphone]{& section#workspace:has(#booking-wrapper) aside#scene:not(.fullscreen){right:0}}html[data-shell=tablet][data-shell-landscape=short]{& aside#scene:not(.fullscreen),& section#workspace:has(#init-wrapper) aside#scene:not(.fullscreen),& section#workspace:has(#booking-wrapper) aside#scene:not(.fullscreen){left:0;right:0}}html[data-shell=smartphone][data-shell-landscape=short]{& aside#scene:not(.fullscreen),& section#workspace:has(#init-wrapper) aside#scene:not(.fullscreen),& section#workspace:has(#booking-wrapper) aside#scene:not(.fullscreen){left:0;right:0}}.scene-planner-feedback{z-index:100;pointer-events:none;background:color-mix(in srgb, var(--scene-bg,#1a1a1a) 24%, transparent);backdrop-filter:blur(.5rem);border-radius:0;flex-direction:column;justify-content:center;align-items:center;gap:.65rem;display:flex;position:absolute;inset:0;box-shadow:inset 0 0 0 .0625rem #ffffff14}.scene-planner-feedback p{color:var(--text);text-align:center;letter-spacing:.01em;opacity:1;margin:0;font-size:.8rem}.scene-planner-progress{background:color-mix(in srgb, var(--text) 16%, transparent);border-radius:999px;width:min(12rem,70%);height:.25rem;overflow:hidden}.scene-planner-progress-fill{border-radius:inherit;background:var(--text);height:100%;transition:width .2s;display:block}.scene-planner-progress[data-phase=planning] .scene-planner-progress-fill{width:32%;animation:1.15s ease-in-out infinite scene-planner-progress-slide}@keyframes scene-planner-progress-slide{0%{transform:translate(-130%)}to{transform:translate(330%)}}html[data-shell=smartphone] .scene-planner-progress{width:min(10rem,64%)}aside#scene.fullscreen .scene-planner-feedback{border-radius:0}@keyframes grain-move{0%{background-position:0 0}25%{background-position:1.5625rem .9375rem}50%{background-position:-1.125rem 1.75rem}75%{background-position:.75rem -1.375rem}to{background-position:0 0}}main#project-page{--sceneBg:#e6e3de;background:var(--sceneBg);width:100%;min-width:100%;max-width:100%;min-height:100dvh;transition:background-color var(--motion-med);overflow:visible;&:has(canvas[data-scene-mood=evening]){--sceneBg:#726c70}& section#workspace{gap:var(--workspace-gap);height:100%;padding:0;padding-bottom:env(safe-area-inset-bottom,0);scroll-margin-top:calc(var(--header-h,4.75rem) + .5rem);background:0 0;outline:none;flex:1;justify-content:flex-end;align-items:flex-end;min-width:0;margin:0;display:flex;position:absolute;inset:0;overflow:hidden;&:has(.fullscreen){padding:0;& .fullscreen{border-radius:0}}}}@media (prefers-reduced-motion:reduce){main#project-page{transition:none}}
