.order-form,.order-form__body{display:flex;flex-direction:column;gap:14px}.order-form__note{margin-top:-6px}.order-form__reassure{margin:-4px 0 0;text-align:center;font-size:12px;color:var(--color-text-muted)}.order-form__foot{display:flex;flex-direction:column;gap:14px}.link-btn{border:0;background:none;padding:6px 0;cursor:pointer;font-family:var(--font-body);font-size:13px;color:var(--color-text-secondary);text-decoration:underline;text-underline-offset:3px;text-decoration-color:#2a252040;align-self:flex-start}.link-btn:hover{color:var(--color-brass-text)}.link-btn:focus-visible{outline:2px solid var(--color-brass);outline-offset:2px}.piece-card{display:grid;grid-template-columns:96px 1fr;gap:12px 14px;align-items:center;padding:12px;background:#fff;border:1px solid var(--color-border-light);border-radius:12px}.piece-card__pic{width:96px;height:72px;object-fit:contain;border-radius:8px;background:#f5f2ed}.piece-card__what{grid-column:2}.piece-card__pic+.piece-card__what{grid-column:auto}.piece-card__name{font-size:15px;font-weight:600;color:var(--color-text)}.piece-card__spec{font-size:13px;line-height:1.45;color:var(--color-text-secondary);margin-top:2px;font-variant-numeric:tabular-nums}.piece-card__money{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--color-border-light);padding-top:10px}.piece-card__price{font-family:var(--font-display);font-size:20px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--color-text);white-space:nowrap}.piece-card__money .stepper{flex:0 1 150px}.piece-card__note{font-family:var(--font-body);font-size:12px;font-weight:400;color:var(--color-text-muted)}.piece-card__sum{grid-column:1 / -1;margin-top:-6px;text-align:right;font-size:12px;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.piece-card__parts{grid-column:1 / -1;display:flex;flex-direction:column;gap:8px}.piece-card .install-box{grid-column:1 / -1;margin-top:-4px}.stepper{display:inline-flex;align-items:center;gap:4px;flex:1;min-width:120px;border:1px solid var(--color-border-light);border-radius:var(--radius-sm);background:var(--color-surface-hover);padding:6px 6px 6px 10px;font-variant-numeric:tabular-nums;cursor:default}.stepper__v{flex:1;text-align:center;font-size:13px;font-weight:600;color:var(--color-text);min-width:28px}.stepper__b{width:28px;height:28px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);cursor:pointer;color:var(--color-text-muted);font-size:15px;line-height:1;font-family:var(--font-body);padding:0;transition:all var(--transition-fast)}.stepper__b:hover:not(:disabled){border-color:var(--color-brass-border);background:var(--color-brass-bg);color:var(--color-brass-text)}.stepper__b:disabled{opacity:.3;cursor:default}.stepper__b:focus-visible{outline:2px solid var(--color-brass);outline-offset:2px}.order-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 10px}.order-grid .order-field--wide{grid-column:1 / -1}.order-field{display:block;margin:0}.order-field .modal-input{min-height:40px}.order-field textarea.modal-input{min-height:64px;resize:vertical;line-height:1.45}.order-field select.modal-input{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;cursor:pointer}.order-field--error .modal-input{border-color:var(--color-danger)}.order-field__err{display:block;margin-top:5px;font-size:11px;line-height:1.4;color:var(--color-danger)}.capture__consent{display:flex;align-items:flex-start;gap:10px;cursor:pointer;font-size:11px;line-height:1.5;color:var(--color-text-secondary)}.capture__consent input[type=checkbox]{flex:0 0 auto;width:16px;height:16px;margin:2px 0 0;accent-color:var(--color-brass);cursor:pointer}.capture__consent input[type=checkbox]:focus-visible{outline:2px solid var(--color-brass);outline-offset:2px;border-radius:3px}.capture__consent--form{grid-column:1 / -1;margin-top:2px}.capture__optional{display:inline-block;margin-left:4px;padding:0 6px;font-size:9px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;line-height:16px;color:var(--color-text-muted);border:1px solid var(--color-border-light);border-radius:999px;vertical-align:1px}.capture__notice{margin:0;font-size:11px;line-height:1.5;color:var(--color-text-muted);overflow-wrap:anywhere}.capture__notice a{color:inherit}.kicker{display:flex;align-items:center;gap:7px;margin:0;font-family:var(--font-body);font-size:10px;font-weight:700;letter-spacing:.08em;line-height:1.3;text-transform:uppercase;color:var(--color-text-secondary)}.kicker:before{content:"";flex-shrink:0;width:6px;height:6px;border-radius:50%;background:var(--color-brass)}.kicker--center{justify-content:center}.order-done{display:flex;flex-direction:column;gap:22px}.order-done__ref{display:flex;flex-direction:column;align-items:center;gap:8px;padding:22px 16px 18px;text-align:center;background:var(--color-brass-bg);border:1px solid var(--color-brass-border);border-radius:var(--radius-sm)}.order-done__ref-v{display:block;font-family:var(--font-display);font-size:30px;line-height:1.15;letter-spacing:.04em;color:var(--color-text);font-variant-numeric:tabular-nums;white-space:nowrap}.order-done__ref-keep{font-size:12px;color:var(--color-text-secondary)}.order-done__block{display:flex;flex-direction:column;gap:12px}.order-done__lead{margin:0;font-size:15px;line-height:1.55;color:var(--color-text)}.order-done__block>.kicker{margin:0}.timeline{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.timeline__step{position:relative;display:flex;flex-direction:column;gap:3px;min-width:0}.timeline__step:not(:last-child):after{content:"";position:absolute;top:12px;left:32px;right:-6px;height:1px;background:var(--color-brass-border)}.timeline__n{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;margin-bottom:6px;border-radius:50%;border:1px solid var(--color-brass);background:var(--color-surface);font-size:12px;font-weight:600;color:var(--color-text);font-variant-numeric:tabular-nums}.timeline__what{font-size:13px;font-weight:600;line-height:1.3;color:var(--color-text)}.timeline__when{font-size:12px;line-height:1.4;color:var(--color-text-secondary)}.kv{margin:0;border-top:1px solid var(--color-border-light)}.kv__row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:10px 0;border-bottom:1px solid var(--color-border-light)}.kv dt{flex-shrink:0;font-size:12px;color:var(--color-text-secondary)}.kv dd{margin:0;min-width:0;display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right;font-size:13px;color:var(--color-text)}.kv__strong{font-weight:600;font-variant-numeric:tabular-nums}.kv__sub{font-size:12px;color:var(--color-text-secondary)}.kv__break{overflow-wrap:anywhere}.kv__nowrap{white-space:nowrap;font-variant-numeric:tabular-nums}@media (max-width: 480px){.order-done{gap:20px}.order-done__ref-v{font-size:clamp(18px,5.8vw,26px);letter-spacing:.02em}.timeline{grid-template-columns:1fr;gap:0}.timeline__step{display:grid;grid-template-columns:24px 1fr;column-gap:12px;row-gap:2px;padding-bottom:14px}.timeline__step:last-child{padding-bottom:0}.timeline__n{grid-row:1 / span 2;margin:0}.timeline__what{grid-column:2;padding-top:3px}.timeline__when{grid-column:2}.timeline__step:not(:last-child):after{top:28px;bottom:2px;left:12px;right:auto;width:1px;height:auto}.order-grid{grid-template-columns:1fr}.piece-card__money .stepper{flex-basis:140px}.piece-card__price{font-size:18px}.piece-card__note{font-size:12px}}@media (pointer: coarse){.link-btn{min-height:40px}}@media (max-width: 1023px){.modal-backdrop:has(.modal-card--sheet){padding:0;align-items:stretch}.modal-card.modal-card--sheet{max-width:560px;height:100dvh;max-height:100dvh;border-radius:0;border-width:0 1px;padding:16px 16px 0;display:flex;flex-direction:column;overflow:hidden}.modal-card--sheet .modal-header{margin-bottom:12px;flex-shrink:0}.modal-card--sheet>.order-form{flex:1;min-height:0;display:flex;flex-direction:column;gap:0;overflow:hidden}.modal-card--sheet .order-form__body{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:8px}.modal-card--sheet .order-form__body>*{flex-shrink:0}.modal-card--sheet .order-form__foot{flex-shrink:0;gap:8px;padding:10px 0 max(12px,env(safe-area-inset-bottom));background:var(--color-surface);border-top:1px solid var(--color-border-light)}.modal-card--sheet .order-form__reassure{margin:0}.link-btn{min-height:44px}.order-field .modal-input{min-height:44px;font-size:16px}.stepper__b{width:44px;height:44px}.order-field__err,.piece-card__note,.capture__consent,.capture__notice{font-size:12px}}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/poppins/poppins-400-latin.woff2) format("woff2")}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/poppins/poppins-500-latin.woff2) format("woff2")}@font-face{font-family:OC Jost;src:url(/fonts/jost/Jost-500-Medium.otf) format("opentype");font-weight:500;font-style:normal;font-display:swap}.oc-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;overflow-y:auto;background:#fff;-webkit-overflow-scrolling:touch;outline:none}.oc{font:400 15px/1.55 Poppins,system-ui,-apple-system,sans-serif;color:#000;background:#fff;min-height:100%}.oc b,.oc strong{font-weight:500}.oc a{color:#000}.oc-top{display:flex;align-items:center;gap:16px;padding:20px 40px;border-bottom:1px solid #000000}.oc-mark{font:500 56px/1 OC Jost,Poppins,sans-serif;letter-spacing:-.03em;margin-right:auto}.oc-tag{font-size:12px;letter-spacing:.12em;text-transform:uppercase}.oc-tag:before{content:"";display:inline-block;width:7px;height:7px;background:#000;margin-right:8px;vertical-align:1px}.oc-tag--block{display:block;margin-bottom:18px}.oc-close{border:0;background:none;font-size:28px;line-height:1;width:44px;height:44px;cursor:pointer;color:#000}.oc-wrap{max-width:1200px;margin:0 auto;padding:56px 40px 48px}.oc-hello{margin:0 0 40px;max-width:860px}.oc h1{font-weight:400;font-size:52px;line-height:1.08;letter-spacing:-.025em;margin:0 0 16px}.oc-lede{color:#333;font-size:17px;max-width:56ch;margin:0}.oc-design{display:grid;grid-template-columns:7fr 5fr;gap:48px;align-items:start;margin:0 0 64px}.oc-design--solo{grid-template-columns:minmax(0,720px)}.oc-pic{margin:0}.oc-pic__frame{aspect-ratio:4 / 3;background:#f4f4f4}.oc-pic img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:#f4f4f4}.oc-pic figcaption{font-size:12px;color:#6f6f6f;margin-top:8px}.oc-sec{border-top:1px solid #000000;padding-top:18px}.oc-name{font-size:26px;line-height:1.2;letter-spacing:-.01em;margin:0 0 12px}.oc-plain{color:#333;margin:0 0 20px}.oc-facts{margin:0 0 24px;font-size:14px}.oc-facts>div{display:grid;grid-template-columns:110px 1fr;border-bottom:1px solid #e3e3e3}.oc-facts dt,.oc-facts dd{margin:0;padding:10px 0}.oc-facts dt{color:#6f6f6f}.oc-sw{display:inline-block;width:14px;height:14px;vertical-align:-2px;margin-right:8px}.oc-life{font-size:17px;line-height:1.55;margin:0;padding-left:16px;border-left:2px solid #000000}.oc-next{margin:0 0 72px}.oc-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.oc-steps li{border-top:1px solid #e3e3e3;padding-top:16px}.oc-steps__n{display:block;font-size:12px;color:#6f6f6f;margin-bottom:10px}.oc-steps b{display:block;font-weight:400;font-size:20px;line-height:1.25;margin-bottom:6px}.oc-steps li>span:last-child{display:block;color:#6f6f6f;font-size:14px}.oc-settle{border-top:1px solid #d6d6d6;padding-top:24px;font-size:13px;line-height:1.55;color:#333;margin:0 0 56px}.oc-settle h2{font-weight:500;font-size:15px;color:#000;margin:0 0 6px}.oc-settle h3{font-weight:500;font-size:13px;color:#000;margin:0 0 2px}.oc-settle__gentle{margin:0 0 20px;max-width:64ch}.oc-settle__ref{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin:0 0 20px}.oc-settle__ref small{color:#6f6f6f;font-size:13px}.oc-settle__ref b{font-size:18px;font-weight:500;color:#000;letter-spacing:.02em}.oc-settle__sum{width:100%;max-width:420px;border-collapse:collapse;margin:0 0 24px;font-variant-numeric:tabular-nums}.oc-settle__sum td{padding:6px 0;border-bottom:1px solid #ececec}.oc-settle__sum td:last-child{text-align:right;white-space:nowrap}.oc-settle__total td{color:#000;font-weight:500;border-bottom:0}.oc-settle__sum--lines{max-width:560px}.oc-settle__sum--lines th{padding:0 0 6px;font-weight:400;color:#6f6f6f;border-bottom:1px solid #ececec}.oc-settle__sum--lines td,.oc-settle__sum--lines th{vertical-align:top}.oc-settle__sum--lines .num{text-align:right;white-space:nowrap;padding-left:12px}.oc-ways{display:grid;grid-template-columns:1fr 1fr;gap:40px}.oc-way__sub{margin:0 0 12px;color:#6f6f6f}.oc-qrrow{display:flex;gap:20px;align-items:flex-start}.oc-qr{flex:none;width:140px;height:140px;border:1px solid #e3e3e3;background:#fff}.oc-qr img,.oc-qr__wait{display:block;width:100%;height:100%}.oc-kv{display:grid;grid-template-columns:auto 1fr auto;margin:0;flex:1;min-width:0;font-variant-numeric:tabular-nums}.oc-kv dt,.oc-kv dd{margin:0;padding:6px 0;border-bottom:1px solid #ececec}.oc-kv dt{color:#6f6f6f;padding-right:12px;white-space:nowrap}.oc-kv__v{color:#000;overflow-wrap:anywhere}.oc-kv__c{text-align:right;padding-left:8px}.oc-copy{border:1px solid #cfcfcf;background:#fff;padding:1px 7px;font:inherit;font-size:11px;color:#333;min-width:52px;min-height:28px;cursor:pointer}.oc-copy.is-done{border-color:#000;color:#000}.oc-save{display:inline-block;margin-top:10px;font-size:12px;color:#333}.oc-closing{max-width:640px;margin:0 0 40px}.oc-closing p{font-size:16px;color:#333;margin:0 0 12px}.oc-closing .oc-sig{color:#000;margin-top:18px}.oc-btn{display:inline-block;margin-top:16px;background:#000;color:#fff;border:0;padding:13px 20px;font:inherit;font-size:14px;min-height:44px;cursor:pointer}.oc-foot{border-top:1px solid #e3e3e3;padding-top:14px;font-size:12px;color:#6f6f6f;margin:0}.oc-foot a{color:#6f6f6f}@media (max-width: 760px){.oc-top{padding:16px 20px;gap:12px}.oc-mark{font-size:48px}.oc-top .oc-tag{white-space:nowrap}.oc-wrap{padding:32px 20px 40px}.oc h1{font-size:34px}.oc-lede{font-size:16px}.oc-hello{margin-bottom:28px}.oc-design{grid-template-columns:1fr;gap:28px;margin-bottom:48px}.oc-name{font-size:22px}.oc-steps{grid-template-columns:1fr;gap:18px}.oc-next{margin-bottom:52px}.oc-ways{grid-template-columns:1fr;gap:28px}.oc-qr{width:128px;height:128px}}@media (max-width: 420px){.oc-qrrow{flex-direction:column;gap:12px}.oc-kv{width:100%}}html.pay-document,html.pay-document body,html.pay-document #root{height:auto;min-height:100%;overflow:visible}.pay-line{margin:0}.pay-muted{margin:0;font-size:.875em;color:#6f6f6f}.pay-page{max-width:640px;margin:0 auto;padding:32px 20px 64px;font-family:Poppins,system-ui,-apple-system,sans-serif}.pay-page h1{font-weight:400;font-size:2rem;letter-spacing:-.02em;margin:0 0 16px}.pay-facts{display:grid;gap:6px;margin:16px 0}.pay-facts>div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #e3e3e3;padding:6px 0}.pay-facts dt{color:#6f6f6f}.pay-facts dd{margin:0;text-align:right}.invoice{max-width:780px;margin:0 auto;padding:32px 24px 64px;font-size:14px}.invoice h1{letter-spacing:.08em;font-size:1.25rem}.invoice table{width:100%;border-collapse:collapse;margin:16px 0}.invoice th,.invoice td{text-align:left;padding:6px 4px;border-bottom:1px solid #e3e3e3;vertical-align:top}.invoice td.num,.invoice th.num{text-align:right;white-space:nowrap}.invoice tr.note td{color:#6f6f6f;font-size:.9em}.invoice tr.total td{font-weight:700}.invoice__head{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}.invoice__export{border:1px solid #d6d6d6;padding:12px 14px;margin:16px 0;font-size:13px;color:#333}@media print{.invoice__bar{display:none}.invoice{padding:0}@page{size:A4;margin:16mm}}:root{--font-display: "Outfit", sans-serif;--font-body: "Outfit", sans-serif;--sidebar-w: 420px;--sheet-collapsed-h: 72px;--color-bg: #f5f2ed;--color-surface: #ffffff;--color-surface-hover: #faf8f5;--color-border: #e2ded7;--color-border-light: #eeeae4;--color-text: #2a2520;--color-text-secondary: #5e574f;--color-text-muted: #8a847c;--color-brass: #9a8464;--color-brass-light: #c4b49c;--color-brass-bg: rgba(154, 132, 100, .07);--color-brass-border: rgba(154, 132, 100, .28);--color-danger: #b84f4f;--color-danger-bg: rgba(184, 79, 79, .06);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--shadow-sm: 0 1px 3px rgba(42, 37, 32, .04);--shadow-md: 0 4px 16px rgba(42, 37, 32, .06);--shadow-lg: 0 8px 32px rgba(42, 37, 32, .08);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .4s cubic-bezier(.4, 0, .2, 1)}.section-label{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-secondary)}.group-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted)}.sidebar-scroll::-webkit-scrollbar{width:2px}.sidebar-scroll::-webkit-scrollbar-track{background:transparent}.sidebar-scroll::-webkit-scrollbar-thumb{background:transparent;border-radius:1px;transition:background .3s}.sidebar-scroll:hover::-webkit-scrollbar-thumb{background:var(--color-border)}.sidebar-scroll::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.viewport-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 50% 40%,#faf7f2,#f5f2ed,#ede9e2);pointer-events:none;z-index:0}.viewport-canvas{cursor:grab}.viewport-toolbar{display:flex;flex-direction:column;gap:6px;z-index:10}.viewport-toolbar-btn{position:relative;display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;font-size:16px;cursor:pointer;border:1px solid rgba(154,132,100,.2);background:#ffffffd9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 2px 8px #2a252014;color:var(--color-text);padding:0;transition:all .2s ease}.viewport-toolbar-btn:hover{border-color:var(--color-brass-border);background:#fffffff2;box-shadow:0 4px 16px #2a25201f;transform:translateY(-1px)}.viewport-toolbar-btn--active{background:var(--color-brass);border-color:var(--color-brass);color:#fff;box-shadow:0 2px 12px #9a84644d}.viewport-toolbar-btn--active:hover{background:#8a7558;border-color:#8a7558}.viewport-toolbar-tooltip{position:absolute;right:calc(100% + 8px);top:50%;transform:translateY(-50%);padding:5px 10px;border-radius:6px;font-size:11px;font-family:var(--font-body);font-weight:500;letter-spacing:.02em;color:#fff;background:#2a2520e0;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s ease}.viewport-toolbar-btn:hover .viewport-toolbar-tooltip{opacity:1}@media (max-width: 1023px){.viewport-toolbar-btn{width:44px;height:44px;border-radius:12px}.viewport-toolbar-tooltip{display:none}}.swatch{position:relative;border-radius:50%;cursor:pointer;border:2px solid transparent;outline:none;transition:transform var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast);background-size:cover;background-position:center;padding:0}.swatch:hover{transform:scale(1.12);z-index:2}.swatch--sm{width:28px;height:28px}.swatch--md{width:40px;height:40px}.swatch--active{border-color:var(--color-brass);outline:2px solid var(--color-brass-border);outline-offset:1px;box-shadow:inset 0 0 0 2px #fff6;animation:swatchSelect .3s ease-out}.swatch:not(.swatch--active){box-shadow:var(--shadow-sm)}@keyframes swatchSelect{0%{transform:scale(1)}40%{transform:scale(1.12)}to{transform:scale(1)}}.swatch-preview{position:fixed;width:120px;background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-md);overflow:hidden;pointer-events:none;opacity:0;transition:opacity var(--transition-fast);z-index:9999}.swatch-preview--visible{opacity:1}.swatch-preview__img{width:100%;height:96px;object-fit:cover;display:block}.swatch-preview__info{padding:6px 8px;display:flex;flex-direction:column;gap:2px}.swatch-preview__name{font-size:10px;font-weight:600;color:var(--color-text);line-height:1.2}.swatch-preview__type{font-size:8px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted)}@media (max-width: 1023px){.swatch--sm{width:34px;height:34px}.swatch--md{width:46px;height:46px}}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%;overflow:hidden;font-family:var(--font-body);background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit}::placeholder{opacity:1;color:color-mix(in oklab,currentColor 50%,transparent)}.swatch{border:1px solid rgba(0,0,0,.18)}.swatch:hover{border-color:#00000052}.swatch--active{border-color:var(--color-brass)}.swatch-preview{border:1px solid rgba(0,0,0,.18)}.relative{position:relative}.absolute{position:absolute}.inset-0{top:0;right:0;bottom:0;left:0}.w-full{width:100%}.h-full{height:100%}.flex-1{flex:1 1 0%}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:2px;background:var(--color-border);border-radius:1px;outline:none;cursor:pointer}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:var(--color-text);border:3px solid var(--color-surface);box-shadow:0 1px 4px #2a252033;cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.2);box-shadow:0 2px 8px #2a252040}input[type=range]::-webkit-slider-thumb:active{transform:scale(1.05)}input[type=range]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--color-text);border:3px solid var(--color-surface);box-shadow:0 1px 4px #2a252033;cursor:pointer}@keyframes fadeInUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeInUp var(--transition-slow) ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-fade{animation:fadeIn var(--transition-base) ease-out}.viewport-canvas{cursor:grab;touch-action:none}.viewport-canvas:active{cursor:grabbing}.viewport-toolbar--mobile{top:max(12px,env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right));flex-direction:row}@keyframes modalBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes modalCardIn{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px;background:#2a252066;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:modalBackdropIn .2s ease-out}.modal-card{width:100%;padding:28px;background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-md);box-shadow:0 20px 60px #2a252033;animation:modalCardIn .35s cubic-bezier(.16,1,.3,1);max-height:calc(100dvh - 32px);overflow-y:auto;outline:none}.modal-card--sm{max-width:380px}.modal-card--md{max-width:520px}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.modal-title{font-family:var(--font-display);font-size:20px;font-weight:400;color:var(--color-text)}.modal-close{background:none;border:none;cursor:pointer;color:var(--color-text-muted);padding:4px;display:flex;border-radius:var(--radius-sm);transition:color var(--transition-fast),background var(--transition-fast);min-width:32px;min-height:32px;align-items:center;justify-content:center}.modal-close:hover{color:var(--color-text);background:var(--color-surface-hover)}.modal-close:focus-visible{outline:2px solid var(--color-brass);outline-offset:2px}.modal-btn-primary{width:100%;padding:11px;font-size:10px;font-family:var(--font-body);font-weight:600;letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-sm);border:none;background:var(--color-brass);color:#fff;cursor:pointer;transition:background var(--transition-fast),opacity var(--transition-fast)}.modal-btn-primary:hover:not(:disabled){background:#8a7558}.modal-btn-primary:disabled{background:var(--color-border);cursor:default;color:var(--color-text-muted)}.modal-btn-secondary{width:100%;padding:11px;font-size:10px;font-family:var(--font-body);font-weight:600;letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:transparent;color:var(--color-text-muted);cursor:pointer;transition:all var(--transition-fast)}.modal-btn-secondary:hover{border-color:var(--color-brass-border);color:var(--color-brass)}.modal-btn-danger{width:100%;padding:11px;font-size:10px;font-family:var(--font-body);font-weight:600;letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-sm);border:none;background:var(--color-danger);color:#fff;cursor:pointer;transition:background var(--transition-fast)}.modal-btn-danger:hover{background:#a04444}.modal-label{display:block;font-size:9px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:6px}.modal-input{width:100%;padding:10px 12px;font-size:13px;font-family:var(--font-body);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);outline:none;box-sizing:border-box;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.modal-input:focus{border-color:var(--color-brass);box-shadow:0 0 0 3px var(--color-brass-bg)}.modal-error{margin-bottom:16px;padding:10px 12px;font-size:11px;color:var(--color-danger);background:var(--color-danger-bg);border:1px solid rgba(184,79,79,.15);border-radius:var(--radius-sm)}.modal-success{margin-bottom:16px;padding:14px 16px;font-size:12px;line-height:1.5;color:var(--color-brass);background:var(--color-brass-bg);border:1px solid var(--color-brass-border);border-radius:var(--radius-sm)}.cabinet-card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px 10px;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;transition:all var(--transition-base)}.cabinet-card:hover:not(:disabled){border-color:var(--color-brass-border);background:var(--color-brass-bg);box-shadow:var(--shadow-md);transform:translateY(-2px)}.cabinet-card:disabled{opacity:.4;cursor:default}.cabinet-card__icon{display:flex;align-items:center;justify-content:center;transition:transform var(--transition-fast)}.cabinet-card:hover:not(:disabled) .cabinet-card__icon{transform:scale(1.08)}.cabinet-card__name{font-size:12px;font-weight:600;color:var(--color-text);text-align:center}.cabinet-card__price{font-size:11px;color:var(--color-text-muted)}.empty-state-nudge{display:flex;flex-direction:column;align-items:center;gap:10px;padding:20px;border:1px dashed var(--color-border);border-radius:var(--radius-md);text-align:center;animation:nudgeFadeUp .5s ease-out}.empty-state-nudge__icon{color:var(--color-brass-light);animation:nudgePulse 2s ease-in-out infinite}.empty-state-nudge__text{font-size:12px;color:var(--color-text-muted);line-height:1.4}@keyframes nudgePulse{0%,to{transform:translateY(0);opacity:.7}50%{transform:translateY(-3px);opacity:1}}@keyframes nudgeFadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.sidebar-tabs{display:flex;gap:0;margin-top:8px;border-bottom:1px solid var(--color-border-light)}.sidebar-tab{flex:1;padding:9px 0 8px;font-size:11px;font-weight:600;font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;position:relative;transition:color var(--transition-fast)}.sidebar-tab:after{content:"";position:absolute;bottom:-1px;left:20%;right:20%;height:2px;background:var(--color-brass);border-radius:1px;transform:scaleX(0);transition:transform var(--transition-base)}.sidebar-tab:hover{color:var(--color-text-secondary)}.sidebar-tab--active{color:var(--color-text);font-weight:700}.sidebar-tab--active:after{transform:scaleX(1)}.sheet-transition{transition:transform .3s cubic-bezier(.4,0,.2,1)}.sheet-handle{width:40px;height:4px;border-radius:2px;background:var(--color-border);margin:10px auto}.sheet-backdrop{animation:sheetBackdropIn .2s ease-out}@keyframes sheetBackdropIn{0%{opacity:0}to{opacity:1}}.sheet-dragging{opacity:.55}@media (max-width: 1023px){html,body,#root{overscroll-behavior:none;-webkit-overflow-scrolling:touch}input[type=range]::-webkit-slider-thumb{width:22px;height:22px}input[type=range]::-moz-range-thumb{width:22px;height:22px}.sidebar-tab{padding:11px 0 10px;font-size:11px}.section-label{font-size:12px}}.app{position:relative;width:100%;height:100%;overflow:hidden;background:var(--color-bg)}.viewport{position:absolute;top:0;right:0;bottom:0;left:0}@media (min-width: 1024px){.viewport{right:var(--sidebar-w)}}.sidebar-kicker{font-size:10px;font-weight:600;letter-spacing:.1em;color:var(--color-brass);margin-bottom:4px}.box-panel-close{background:none;border:none;cursor:pointer;color:var(--color-text-muted);padding:4px;display:flex;border-radius:var(--radius-sm);transition:color var(--transition-fast),background var(--transition-fast)}.box-panel-close:hover{color:var(--color-text);background:var(--color-surface-hover)}.dragchip{position:fixed;z-index:1000;pointer-events:none;background:var(--color-surface);border:1px solid var(--color-brass-border);border-radius:6px;padding:6px 8px;display:flex;align-items:center;gap:6px;box-shadow:0 2px 8px #0000001f;opacity:.95}.dragchip[data-refused=true]{border-color:var(--color-danger)}.dragchip__label{font-size:10px;font-weight:600;color:var(--color-text);letter-spacing:.04em;text-transform:uppercase}.dragchip[data-refused=true] .dragchip__label{color:var(--color-danger)}.dragchip[data-refused=true]{max-width:292px}.dragchip[data-refused=true] .dragchip__label{text-transform:none;letter-spacing:.01em;line-height:1.45;font-weight:500;font-size:12px}.dragchip[data-note=true]{max-width:292px;align-items:flex-start}.dragchip[data-note=true] .dragchip__label{text-transform:none;letter-spacing:.01em;line-height:1.45;font-weight:500}.armed-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;min-height:36px;border-radius:var(--radius-sm);border:1px solid var(--color-brass-border);background:var(--color-surface);box-shadow:var(--shadow-lg);color:var(--color-text);font-family:var(--font-body);font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;pointer-events:auto;white-space:nowrap}.armed-chip__dot{width:7px;height:7px;border-radius:50%;background:var(--color-brass);flex-shrink:0}.armed-chip__put-down{color:var(--color-text-muted);font-weight:500;letter-spacing:.04em;border-left:1px solid var(--color-border-light);padding-left:8px}.room-notice{position:absolute;left:50%;top:22px;transform:translate(-50%);z-index:14;display:flex;align-items:center;gap:12px;max-width:min(520px,calc(100% - 32px));padding:10px 14px;border-radius:var(--radius-sm);border:1px solid var(--color-border-light);background:var(--color-surface);box-shadow:var(--shadow-lg);font-family:var(--font-body);font-size:11px;line-height:1.5;color:var(--color-text-secondary);text-align:left}.room-notice--nudge{cursor:pointer;border-style:dashed;border-color:var(--color-brass-border);color:var(--color-text-muted)}.room-notice__text{flex:1}.room-notice__actions{display:flex;gap:6px;flex-shrink:0}.room-notice__primary,.room-notice__secondary{padding:7px 12px;min-height:32px;font-family:var(--font-body);font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-sm);cursor:pointer}.room-notice__primary{border:none;background:var(--color-brass);color:#fff}.room-notice__secondary{border:1px solid var(--color-border);background:transparent;color:var(--color-text-muted)}.dup-handle{width:26px;height:26px;border-radius:50%;border:1px solid var(--color-brass-border);background:var(--color-surface);color:var(--color-brass);font-family:var(--font-body);font-size:15px;font-weight:600;line-height:1;cursor:pointer;box-shadow:0 2px 6px #2a25202e;display:flex;align-items:center;justify-content:center;padding:0;transition:transform var(--transition-fast),background var(--transition-fast)}.dup-handle:hover{transform:scale(1.12);background:var(--color-brass-bg)}.rotate-handle{width:28px;height:28px;border-radius:50%;border:1px solid var(--color-brass-border);background:var(--color-surface);color:var(--color-brass);font-family:var(--font-body);font-size:16px;font-weight:600;line-height:1;cursor:pointer;box-shadow:0 2px 6px #2a25202e;display:flex;align-items:center;justify-content:center;padding:0;touch-action:manipulation;transition:transform var(--transition-fast),background var(--transition-fast)}.rotate-handle:hover{transform:rotate(-30deg) scale(1.12);background:var(--color-brass-bg)}@media (max-width: 1023px){.dup-handle{width:34px;height:34px;font-size:18px}.rotate-handle{width:44px;height:44px;font-size:22px}}.toast{position:absolute;left:50%;top:22px;transform:translate(-50%);z-index:30;padding:9px 16px;border-radius:var(--radius-sm);background:#2a2520eb;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;font-size:11px;font-family:var(--font-body);letter-spacing:.02em;opacity:0;transition:opacity var(--transition-fast);pointer-events:none}.toast[data-show=true]{opacity:1}.summary-table{width:100%;border-collapse:collapse}.summary-table th{text-align:left;font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);padding:0 8px 7px 0;border-bottom:1px solid var(--color-border)}.summary-table td{padding:8px 8px 8px 0;border-bottom:1px solid var(--color-border-light);font-size:11px;font-variant-numeric:tabular-nums;color:var(--color-text-secondary)}.summary-table td.q{text-align:right;font-weight:600;padding-right:0}.summary-table td.p{text-align:right;color:var(--color-text-muted);padding-right:0}.summary-table tfoot td{font-weight:600;border-bottom:0;color:var(--color-text)}.facts{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--color-border-light);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);overflow:hidden}.fact{background:var(--color-surface);padding:11px 12px}.fact dt{font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted)}.fact dd{font-size:17px;font-weight:600;font-variant-numeric:tabular-nums;margin-top:2px;color:var(--color-text)}.fact dd small{font-size:10px;font-weight:500;color:var(--color-text-muted)}.placeholder{padding:13px 15px;border:1px dashed var(--color-brass-border);border-radius:var(--radius-sm);background:var(--color-brass-bg);font-size:11px;line-height:1.6;color:var(--color-text-secondary)}.placeholder b{display:block;color:var(--color-brass);font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:5px}.placeholder span{display:block;margin-top:7px;color:var(--color-text-muted)}.receipt{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10.5px;line-height:1.65;white-space:pre-wrap;background:var(--color-surface-hover);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);padding:13px 14px;color:var(--color-text-secondary)}@media (max-width: 1023px){.armed-chip{position:fixed;left:12px;right:auto;bottom:calc(128px + env(safe-area-inset-bottom));max-width:calc(100vw - 24px)}.room-notice{top:auto;bottom:calc(128px + env(safe-area-inset-bottom));flex-direction:column;align-items:stretch;gap:8px;text-align:center}.room-notice--nudge{top:calc(68px + env(safe-area-inset-top));bottom:auto}.room-notice__actions{justify-content:center}.room-notice__primary,.room-notice__secondary{flex:1;min-height:44px}}.app--kiosk .sidebar-tab{padding:15px 0 14px;font-size:12px}.app--kiosk .sidebar-scroll button:not(.info-tip):not([role=switch]){min-height:44px}.app--kiosk .cabinet-card{padding:18px 10px;gap:10px}.app--kiosk .cabinet-card__name{font-size:13px}.app--kiosk .swatch--sm{width:40px;height:40px}.app--kiosk .swatch--md{width:48px;height:48px}.app--kiosk .viewport-toolbar{gap:8px}.app--kiosk .viewport-toolbar-btn{width:52px;height:52px;border-radius:14px;font-size:20px}.app--kiosk .viewport-toolbar-btn svg{width:22px;height:22px}.app--kiosk .viewport-toolbar-tooltip{display:none}.app--kiosk .dup-handle{width:36px;height:36px;font-size:19px}.app--kiosk .rotate-handle{width:44px;height:44px;font-size:22px}.app--kiosk .room-notice__primary,.app--kiosk .room-notice__secondary{min-height:44px;padding:9px 16px;font-size:11px}.app--kiosk .room-notice{font-size:12px;padding:12px 16px}.app--kiosk input[type=range]::-webkit-slider-thumb{width:24px;height:24px}.app--kiosk input[type=range]::-moz-range-thumb{width:24px;height:24px}.room-notice--kiosk{position:fixed;z-index:10000;font-size:12px;padding:12px 16px;border-color:var(--color-brass-border);background:var(--color-surface);color:var(--color-text);font-variant-numeric:tabular-nums}.room-notice--kiosk .room-notice__primary{min-height:44px;padding:9px 16px;font-size:11px}.kiosk-handoff-button{width:100%;min-height:56px;padding:14px;font-size:12px;font-family:var(--font-body);font-weight:700;letter-spacing:.08em;text-transform:uppercase;border-radius:var(--radius-sm);border:none;background:var(--color-brass);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:opacity .15s}.kiosk-handoff-button:disabled{background:var(--color-border);color:var(--color-text-muted);cursor:default}.handoff{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#2a2520f2;display:flex;align-items:center;justify-content:center;padding:24px}.handoff__card{display:flex;flex-direction:column;align-items:center;gap:18px;width:min(420px,100%);padding:28px 28px 24px;background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:0 4px 24px #0000004d;text-align:center;font-family:var(--font-body)}.handoff__kicker{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--color-brass)}.handoff__qr{display:block;width:300px;height:300px;max-width:100%}.handoff__refusal{width:300px;max-width:100%;padding:24px 16px;font-size:13px;line-height:1.5;color:var(--color-text-secondary);border:1px dashed var(--color-brass-border);border-radius:var(--radius-sm);background:var(--color-brass-bg)}.handoff__line{font-size:13px;line-height:1.55;color:var(--color-text-secondary);max-width:320px}.handoff__done{width:100%;min-height:52px;padding:12px;font-size:12px;font-family:var(--font-body);font-weight:700;letter-spacing:.08em;text-transform:uppercase;border-radius:var(--radius-sm);border:none;background:var(--color-text);color:#fff;cursor:pointer}.sendme{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border:1px dashed var(--color-brass-border);border-radius:var(--radius-sm);background:var(--color-brass-bg);font-family:var(--font-body);text-align:left}.sendme__head{display:flex;align-items:center;justify-content:space-between}.sendme__kicker{font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-brass)}.sendme__close{background:none;border:none;cursor:pointer;color:var(--color-text-muted);font-size:16px;line-height:1;padding:2px 4px;border-radius:var(--radius-sm)}.sendme__close:hover{color:var(--color-text)}.sendme__form{display:flex;flex-direction:column;gap:8px}.sendme__row{display:flex;gap:6px}.sendme__input{flex:1;min-width:0;padding:8px 10px;font-size:12px}.sendme__send{flex-shrink:0;padding:8px 14px;font-size:10px;font-family:var(--font-body);font-weight:600;letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-sm);border:none;background:var(--color-brass);color:#fff;cursor:pointer}.sendme__send:disabled{background:var(--color-border);color:var(--color-text-muted);cursor:default}.sendme__consent{display:flex;align-items:flex-start;gap:8px;font-size:10.5px;line-height:1.45;color:var(--color-text-secondary);cursor:pointer}.sendme__consent input{margin:2px 0 0;flex-shrink:0;width:14px;height:14px;accent-color:var(--color-brass)}.sendme__note{font-size:10.5px;line-height:1.45;color:var(--color-text-muted)}.sendme__done{font-size:11px;line-height:1.5;color:var(--color-brass)}.sendme__field{display:flex;flex-direction:column;gap:3px}.sendme__field .modal-label{margin-bottom:2px}.sendme__helper{font-size:10px;line-height:1.4;color:var(--color-text-muted)}.sendme__line{margin:0;font-size:11px;line-height:1.5;color:var(--color-text-secondary)}.sendme__title{font-size:12px;font-weight:600;color:var(--color-brass);margin-bottom:4px}.sendme__done .sendme__line{margin-bottom:6px}.sendme__actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.sendme__secondary{padding:8px 14px;font-size:10px;font-family:var(--font-body);font-weight:600;letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-sm);border:1px solid var(--color-brass-border);background:transparent;color:var(--color-brass);cursor:pointer}.sendme__note--error{color:var(--color-danger)}.consent-optional{display:inline-block;margin-left:2px;padding:0 5px;font-size:9px;font-weight:600;letter-spacing:.04em;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-muted)}.field-error{margin-top:4px;font-size:10.5px;line-height:1.45;color:var(--color-danger)}.order-copy{margin:6px 0 0;font-size:11px;line-height:1.55;color:var(--color-text-secondary)}.order-copy--muted{color:var(--color-text-muted);font-size:10.5px}.order-price{font-weight:600;color:var(--color-text);font-size:12px;margin-top:12px}.account-choice{display:flex;flex-direction:column;gap:8px;margin-top:16px;padding-top:14px;border-top:1px solid var(--color-border-light)}.account-choice--after{margin-top:12px;padding-top:12px;border-top-color:var(--color-brass-border)}.account-choice__note{margin:0;font-size:11px;line-height:1.5;color:var(--color-text-muted)}.account-choice__or{margin:0;font-size:12px;font-weight:600;color:var(--color-text-secondary)}.account-choice__row{display:flex;gap:8px}.account-choice__row>button{flex:1}@media (max-width: 480px){.account-choice__row{flex-direction:column}}.sendme--kiosk{width:100%;max-width:340px}.sendme--kiosk .sendme__row{flex-wrap:wrap}.sendme--kiosk .sendme__input{min-height:44px;font-size:14px}.sendme--kiosk .sendme__send{flex-basis:100%;min-height:44px;padding:10px 16px;font-size:11px}.sendme--kiosk .sendme__consent{font-size:12px}.sendme--kiosk .sendme__consent input{width:18px;height:18px}.sendme--kiosk .sendme__done{font-size:13px}@media (max-width: 1023px){.sheet-grip{padding:10px 0}.mobile-sheet:not([data-snap=collapsed]) .sheet-grip{padding:8px 0}.sheet-grip .sheet-handle{margin:0 auto}.sheet-peek{padding:0 max(16px,env(safe-area-inset-right)) 0 max(16px,env(safe-area-inset-left))}.sheet-peek__head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px}.sheet-peek__line{min-width:0;font-size:14px;font-weight:600;color:var(--color-text);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sheet-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px}.sheet-head__name{display:flex;align-items:baseline;gap:8px;min-width:0}.sheet-head__line{min-width:0;font-size:12px;color:var(--color-text-muted);letter-spacing:.02em;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sheet-tabs-row{display:flex;align-items:flex-end;gap:4px}.sheet-tabs-row .sidebar-tabs{margin-top:0}.sheet-tabs-row .undo-redo{gap:0!important}.undo-redo button{width:44px!important;height:44px!important;border-color:transparent!important}.app,.mobile-sheet,.modal-backdrop{touch-action:pan-x pan-y}.toast{top:calc(68px + env(safe-area-inset-top));max-width:calc(100% - 24px)}.sidebar-tab{min-height:44px}.mobile-sheet button:not(.info-tip):not([role=switch]):not(.swatch),.modal-backdrop button,.room-notice button,.armed-chip{min-height:44px;min-width:44px}.modal-close{min-width:44px;min-height:44px}.account-button{min-height:44px!important}.room-notice--nudge{min-height:44px}.swatch--sm,.swatch--md{width:46px;height:46px}.box-panel-close{min-width:44px;min-height:44px;align-items:center;justify-content:center;margin:-12px -12px -12px 0}.dup-handle{width:44px;height:44px;font-size:20px}.sendme__consent,.modal-backdrop label:has(input[type=checkbox]){min-height:44px;align-items:center}.sendme__consent input{width:22px;height:22px}.info-tip{min-width:44px!important;min-height:44px!important;margin:-15px -14px -15px -8px!important;border:0!important;background:radial-gradient(circle,transparent 8px,var(--color-border) 8px,var(--color-border) 9px,transparent 9.5px)!important}input:not([type=range]):not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px!important;min-height:44px}.sidebar-tab,.sidebar-kicker,.group-label,.cabinet-card__price,.modal-btn-primary,.modal-btn-secondary,.modal-btn-danger,.modal-label,.modal-error,.dragchip__label,.armed-chip,.room-notice,.room-notice__primary,.room-notice__secondary,.toast,.summary-table th,.summary-table td,.fact dt,.fact dd small,.placeholder,.placeholder b,.receipt,.swatch-preview__name,.swatch-preview__type,.handoff__kicker,.sendme__kicker,.sendme__send,.sendme__consent,.sendme__note,.sendme__done,.sendme__helper,.sendme__line,.sendme__secondary,.consent-optional,.field-error,.order-copy,.order-copy--muted,.account-choice__note,.info-tip,[style*="font-size: 8px"],[style*="font-size: 9px"],[style*="font-size: 10px"],[style*="font-size: 10.5px"],[style*="font-size: 11px"]{font-size:12px!important}}.piece-print{display:none}@media print{body{overflow:visible;background:#fff}.app{display:block;height:auto;overflow:visible}.viewport,.viewport-toolbar,.dragchip,.toast,.sheet-handle,.sheet-backdrop,.armed-chip,.room-notice,.sidebar-tabs,.empty-state-nudge,.sendme{display:none!important}.receipt{border:0;padding:0;font-size:11px;color:#000}.piece-print{display:block;margin:0 0 14px;padding:0;break-inside:avoid}.piece-print img{width:100%;max-height:42vh;object-fit:contain;border:1px solid #ddd}}:root{--color-brass-text: #8a7558}.sidebar-tabs{margin-top:12px}.viewport-toolbar .undo-redo{border:1px solid rgba(154,132,100,.2);border-radius:10px;background:#ffffffd9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.sidebar-tab--icon{display:flex;flex-direction:column;align-items:center;gap:3px;padding:7px 0 6px;font-size:10px}.sb-head{background:var(--color-surface);flex-shrink:0}.sb-title-row{display:flex;align-items:center;gap:6px 10px;flex-wrap:wrap}.sb-title{font-family:var(--font-display);font-size:20px;font-weight:700;letter-spacing:.04em;color:var(--color-text);line-height:1;white-space:nowrap;margin:0}.sb-dims{font-family:var(--font-body);font-size:11px;font-weight:500;line-height:1.3;font-variant-numeric:tabular-nums;letter-spacing:.02em;color:var(--color-text-secondary);margin-top:3px}.sb-price{text-align:right;flex-shrink:0}.sb-price__v{font-family:var(--font-display);font-size:20px;font-weight:600;line-height:1;font-variant-numeric:tabular-nums;color:var(--color-text)}.sb-price__note{font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);margin-top:3px}.chip-row{border-bottom:1px solid var(--color-border-light);flex-shrink:0;display:flex;align-items:center;gap:8px;background:var(--color-surface)}.chip-row--sheet{border:0;padding:0;background:transparent}.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 6px 4px 10px;border-radius:var(--radius-sm);border:1px solid var(--color-brass-border);background:var(--color-brass-bg);font-size:11px;font-weight:600;letter-spacing:.03em;color:var(--color-brass-text)}.chip__k{font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;opacity:.75}.chip--empty{border:1px dashed var(--color-border);background:transparent;color:var(--color-text-muted);font-weight:500;padding-right:8px}.chip__x{width:20px;height:20px;border:none;border-radius:50%;padding:0;background:transparent;color:var(--color-brass-text);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background var(--transition-fast)}.chip__x:hover{background:#9a84642e}.sb-actions-row{border-top:1px solid var(--color-border-light);background:var(--color-surface);flex-shrink:0}.sb-actions{display:flex;gap:6px}.sb-action{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:7px;min-height:32px;min-width:0;font-size:10px;font-family:var(--font-body);font-weight:600;letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:transparent;color:var(--color-text-muted);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.sb-action:hover{border-color:var(--color-brass-border);color:var(--color-brass-text)}.sb-action--done{border-color:var(--color-brass-border);background:var(--color-brass-bg);color:var(--color-brass-text)}.sb-action.sb-action--order{flex:1.8 1 0;flex-direction:column;gap:1px;padding:5px 8px;border-color:var(--color-brass-text);background:var(--color-brass-text);color:#fff}.sb-action.sb-action--order:hover:not(:disabled){border-color:#75634a;background:#75634a;color:#fff}.sb-action.sb-action--order:disabled{border-color:var(--color-border);background:var(--color-border);color:var(--color-text-muted);cursor:default}.sb-action--order__k{line-height:1.2;font-weight:700;letter-spacing:.08em}.sb-action--order__v{font-size:12px;font-weight:600;letter-spacing:0;text-transform:none;font-variant-numeric:tabular-nums;line-height:1.2}.footer-note{font-size:11px;color:var(--color-text-muted);text-align:center;letter-spacing:.02em;line-height:1.5}.sb-foot{background:var(--color-surface);flex-shrink:0;padding-bottom:max(10px,env(safe-area-inset-bottom,10px));font-family:var(--font-body);font-size:10px;color:var(--color-text-muted);letter-spacing:.08em;text-align:center;text-transform:uppercase;opacity:.7}.sb-foot--notice{margin-top:2px;text-transform:none}.sb-foot--sheet{padding:4px 0 0;font-size:12px}.summary-account{display:flex}.group{display:flex;flex-direction:column;gap:10px}.sidebar-scroll .group{background:var(--color-surface-hover);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);padding:11px 12px 14px}.summary-glance{gap:12px}.summary-glance__name{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.summary-glance__size{font-family:var(--font-display);font-size:19px;font-weight:600;line-height:1.2;margin-top:4px;color:var(--color-text);font-variant-numeric:tabular-nums}.summary-glance__layout{font-size:12px;color:var(--color-text-secondary);margin-top:2px;font-variant-numeric:tabular-nums}.summary-facts{margin:0;padding-top:10px;border-top:1px solid var(--color-border-light);display:flex;flex-direction:column;gap:6px}.summary-facts__row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:12px;line-height:1.4}.summary-facts__row dt{color:var(--color-text-muted);font-weight:600;flex-shrink:0}.summary-facts__row dd{margin:0;color:var(--color-text);text-align:right;display:inline-flex;align-items:center;justify-content:flex-end;gap:7px}.summary-facts__chip{width:14px;height:14px;border-radius:50%;box-shadow:inset 0 0 0 1px #2a25201f;flex-shrink:0}.summary-price{gap:2px}.summary-price__k{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary)}.summary-price__v{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 8px;margin-top:2px;font-family:var(--font-display);font-size:28px;font-weight:600;line-height:1.15;font-variant-numeric:tabular-nums;color:var(--color-text)}.summary-price__unit{font-family:var(--font-body);font-size:12px;font-weight:500;color:var(--color-text-muted)}.summary-price__note{font-size:12px;line-height:1.45;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.summary-more__toggle{display:flex;align-items:center;justify-content:space-between;gap:8px;list-style:none;cursor:pointer;font-size:12px;font-weight:600;letter-spacing:.02em;color:var(--color-text-secondary);min-height:20px}.summary-more__toggle::-webkit-details-marker{display:none}.summary-more__toggle:after{content:"";width:7px;height:7px;margin-right:3px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform var(--transition-fast)}.summary-more[open]>.summary-more__toggle:after{transform:rotate(-135deg) translateY(-1px)}.summary-more__toggle:hover{color:var(--color-brass-text)}.summary-more__toggle:focus-visible{outline:2px solid var(--color-brass);outline-offset:3px;border-radius:2px}.summary-more[open]>.summary-more__toggle{padding-bottom:10px;margin-bottom:2px;border-bottom:1px solid var(--color-border-light)}.sidebar-scroll .summary-more:not([open]){padding-bottom:11px}.summary-row{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px;line-height:22px;color:var(--color-text-secondary)}.summary-row>span:first-child{color:var(--color-text-muted);font-weight:600}.summary-row--switch{cursor:pointer}.summary-row--switch input{width:16px;height:16px;margin:0;accent-color:var(--color-brass)}.summary-more .summary-table td,.summary-more .summary-table th{font-size:11px}.install-box{display:flex;align-items:center;gap:10px;cursor:pointer;min-height:32px;margin-top:6px;font-size:13px;font-weight:500;color:var(--color-text);font-variant-numeric:tabular-nums}.install-box input[type=checkbox]{flex:0 0 auto;width:18px;height:18px;margin:0;accent-color:var(--color-brass);cursor:pointer}.install-box input[type=checkbox]:focus-visible{outline:2px solid var(--color-brass);outline-offset:2px;border-radius:3px}@media (max-width: 1023px){.install-box{min-height:44px}}
