:root{--paper:#f5f0e8;--paper-deep:#ebe3d8;--ink:#2a2a2a;--clay:#c17a4e;--sage:#6f7d68;--line:rgba(42,42,42,.12);--card:rgba(255,253,249,.78)}*{box-sizing:border-box}html{scroll-behavior:smooth}body,html{background:#242320}body{margin:0;color:var(--ink);font-family:Segoe UI Variable,Segoe UI,Arial,sans-serif;-webkit-font-smoothing:antialiased}button{color:inherit;font:inherit;-webkit-tap-highlight-color:transparent}.app-shell{position:relative;width:min(100%,540px);min-height:100svh;margin:0 auto;overflow:hidden;background:var(--paper);padding:0 16px calc(28px + env(safe-area-inset-bottom));box-shadow:0 0 80px rgba(0,0,0,.34)}.app-shell:before{position:fixed;z-index:0;inset:0;pointer-events:none;content:"";opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.22'/%3E%3C/svg%3E")}.config-section,.cover-hero,.intro,.save-button,.summary-card,.topbar,.viewer-card,footer{position:relative;z-index:2}.cover-hero{min-height:520px;overflow:hidden;border-radius:30px;background:#27231f;color:#fff;box-shadow:0 24px 60px rgba(49,38,29,.24)}.cover-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.57) saturate(.82);transform:scale(1.03)}.cover-hero:after{position:absolute;inset:0;content:"";background:linear-gradient(180deg,rgba(20,17,14,.08),rgba(20,17,14,.15) 35%,rgba(20,17,14,.88))}.light-sweep{position:absolute;z-index:1;inset:-30% auto -30% -55%;width:48%;background:linear-gradient(90deg,transparent,rgba(255,224,180,.14),transparent);transform:skewX(-12deg);animation:room-light 8s ease-in-out infinite}@keyframes room-light{0%,20%{left:-55%;opacity:0}45%{opacity:1}70%,to{left:110%;opacity:0}}.cover-copy{position:absolute;z-index:2;right:24px;bottom:92px;left:24px}.cover-copy small{font-size:7px;font-weight:800;letter-spacing:.2em;color:#d9bb98}.cover-copy h1{margin:12px 0;font:500 43px/.92 Georgia,serif;letter-spacing:-.05em}.cover-copy p{max-width:370px;margin:0;color:rgba(255,255,255,.72);font-size:11px;line-height:1.55}.cover-hero>a{position:absolute;z-index:3;right:20px;bottom:20px;left:20px;height:52px;justify-content:center;gap:8px;border-radius:16px;background:#f5f0e8;color:#2a2a2a;text-decoration:none;font-size:10px;font-weight:850}.cover-hero>a,.topbar{display:flex;align-items:center}.topbar{height:72px;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px}.brand-mark{position:relative;display:block;width:36px;height:36px;border-radius:50% 50% 48% 52%/42% 50% 50% 58%;background:var(--ink);transform:rotate(-8deg)}.brand-mark i{position:absolute;left:10px;width:16px;height:2px;border-radius:2px;background:var(--paper);transform:rotate(-32deg)}.brand-mark i:first-child{top:11px}.brand-mark i:nth-child(2){top:17px;width:12px;background:var(--clay)}.brand-mark i:nth-child(3){top:23px;width:8px}.brand>span:last-child{display:grid;grid-gap:1px;gap:1px}.brand b{font-family:Georgia,serif;font-size:15px;letter-spacing:.11em}.brand small{color:#8e887f;font-size:6px;font-weight:800;letter-spacing:.22em}.live{display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:99px;background:rgba(255,255,255,.4);padding:7px 9px;color:#78736b;font-size:7px;font-weight:800;letter-spacing:.08em}.live i{width:6px;height:6px;border-radius:50%;background:var(--sage);box-shadow:0 0 0 4px rgba(111,125,104,.12)}.intro{padding:20px 2px 19px}.eyebrow{display:flex;align-items:center;gap:6px;color:var(--clay);font-size:8px;font-weight:900;letter-spacing:.15em}.intro h1{max-width:430px;margin:8px 0 10px;font-family:Georgia,Times New Roman,serif;font-size:clamp(31px,8vw,43px);font-weight:500;letter-spacing:-.055em;line-height:.98}.intro p{max-width:410px;margin:0;color:#777168;font-size:11px;line-height:1.55}.viewer-card{overflow:hidden;border:1px solid rgba(42,42,42,.1);border-radius:28px;background:#e7ded1;box-shadow:0 18px 48px rgba(62,48,36,.13)}.viewer-toolbar{position:absolute;z-index:5;top:12px;right:12px;left:12px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.viewer-toolbar>span{display:flex;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.3);border-radius:99px;background:rgba(42,42,42,.67);padding:7px 10px;color:#fff;font-size:7px;font-weight:750}.viewer-toolbar button,.viewer-toolbar>span{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.viewer-toolbar button{display:grid;width:35px;height:35px;place-items:center;border:1px solid rgba(255,255,255,.45);border-radius:12px;background:rgba(255,255,255,.78);cursor:pointer;pointer-events:auto}.viewer-toolbar button.active{background:var(--clay);color:white}.canvas-wrap{height:390px;touch-action:none}.viewer-caption{display:flex;height:43px;align-items:center;justify-content:space-between;border-top:1px solid rgba(42,42,42,.1);background:rgba(255,253,249,.72);padding:0 14px;color:#6e6961;font-size:7px;font-weight:850;letter-spacing:.08em;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.viewer-caption span{display:flex;align-items:center;gap:5px}.config-section{padding-top:30px}.section-title{display:grid;grid-template-columns:32px 1fr;align-items:center;grid-gap:9px;gap:9px;margin-bottom:12px}.section-title>span{display:grid;width:32px;height:32px;place-items:center;border-radius:11px;background:var(--ink);color:var(--paper);font-family:Georgia,serif;font-size:9px}.section-title div{display:grid;grid-gap:2px;gap:2px}.section-title small{color:var(--clay);font-size:6px;font-weight:900;letter-spacing:.16em}.section-title h2{margin:0;font-family:Georgia,serif;font-size:20px;font-weight:500;letter-spacing:-.025em}.collection-grid{display:grid;grid-auto-columns:minmax(210px,82%);grid-auto-flow:column;grid-gap:9px;gap:9px;overflow-x:auto;padding-bottom:5px;scroll-snap-type:x mandatory;scrollbar-width:none}.collection-grid::-webkit-scrollbar{display:none}.collection-grid>button{display:grid;width:100%;grid-template-columns:86px 1fr;align-items:center;grid-gap:12px;gap:12px;border:1px solid var(--line);border-radius:19px;background:var(--card);padding:8px;cursor:pointer;text-align:left;transition:border-color .2s,box-shadow .2s,transform .2s;scroll-snap-align:start}.collection-grid>button.selected{border-color:var(--clay);box-shadow:0 11px 25px rgba(106,72,49,.1)}.collection-image{position:relative;width:86px;height:64px;border-radius:13px;background-position:50%;background-size:cover}.collection-image i{position:absolute;right:6px;top:6px;display:grid;width:20px;height:20px;place-items:center;border-radius:50%;background:var(--clay);color:white}.collection-grid>button>span:last-child{display:grid;min-width:0;grid-gap:2px;gap:2px}.collection-grid b{font-family:Georgia,serif;font-size:13px;font-weight:550}.collection-grid small{color:#8a847b;font-size:8px}.collection-grid em{margin-top:4px;color:var(--clay);font-size:8px;font-style:normal;font-weight:850}.layout-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px}.layout-grid button{display:grid;min-height:88px;place-content:center;justify-items:center;grid-gap:7px;gap:7px;border:1px solid var(--line);border-radius:18px;background:rgba(255,253,249,.66);cursor:pointer}.layout-grid button i{display:grid;width:36px;height:31px;place-items:center;border-radius:10px;background:var(--paper-deep);font-family:Georgia,serif;font-size:22px;font-style:normal}.layout-grid button b{font-size:8px}.layout-grid button.selected{border-color:var(--ink);background:var(--ink);color:var(--paper)}.layout-grid button.selected i{background:var(--clay);color:#fff}.measure-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:9px;gap:9px}.contact-field,.measure-grid label{display:grid;grid-gap:7px;gap:7px;border:1px solid var(--line);border-radius:17px;background:var(--card);padding:12px}.contact-field span,.measure-grid span{color:#8a847b;font-size:7px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.contact-field input,.measure-grid input{width:100%;border:0;outline:0;background:transparent;color:var(--ink);font:500 20px Georgia,serif}.choice-row{display:flex;gap:7px;overflow:auto;scrollbar-width:none}.choice-row button{flex:0 0 auto;border:1px solid var(--line);border-radius:99px;background:var(--card);padding:11px 15px;font-size:9px}.budget-grid button.selected,.choice-row button.selected{border-color:var(--ink);background:var(--ink);color:var(--paper)}.budget-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.budget-grid button{display:flex;min-height:54px;align-items:center;gap:8px;border:1px solid var(--line);border-radius:16px;background:var(--card);padding:0 12px;font-size:8px;font-weight:750}.contact-field{margin-top:9px}.contact-field input{font:500 14px Segoe UI,sans-serif}.summary-card{display:grid;grid-template-columns:42px 1fr;align-items:center;grid-gap:11px;gap:11px;margin-top:27px;border-radius:21px;background:#e8dfd2;padding:14px}.summary-card>span{display:grid;width:42px;height:42px;place-items:center;border-radius:14px;background:var(--clay);color:white}.summary-card div{display:grid;grid-gap:3px;gap:3px}.summary-card small{color:#8a6d5c;font-size:6px;font-weight:900;letter-spacing:.12em}.summary-card b{font-family:Georgia,serif;font-size:11px}.summary-card p{margin:0;color:#7d756b;font-size:7px}.save-button{display:flex;width:100%;height:54px;align-items:center;justify-content:center;gap:9px;margin-top:12px;border:0;border-radius:17px;background:var(--ink);color:var(--paper);cursor:pointer;font-size:10px;font-weight:850;box-shadow:0 13px 28px rgba(42,42,42,.17)}footer{padding:24px 0 4px;color:#938d84;font-size:7px;text-align:center}footer b{color:var(--ink)}.toast{position:fixed;z-index:30;left:50%;bottom:calc(22px + env(safe-area-inset-bottom));display:flex;width:max-content;max-width:calc(100% - 32px);align-items:center;gap:8px;border-radius:14px;background:var(--ink);padding:12px 15px;color:#fff;font-size:9px;box-shadow:0 18px 40px rgba(0,0,0,.25)}.toast svg{color:#d4a27e}@media (max-width:370px){.app-shell{padding-right:12px;padding-left:12px}.canvas-wrap{height:345px}.intro h1{font-size:31px}}@media (min-width:700px){body{padding:24px 0}.app-shell{min-height:calc(100svh - 48px);border-radius:34px}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}