:root{--ink: #1d2b28;--ink-soft: #55635f;--paper: #f6f2ea;--card: #fffdf8;--line: #e3dccf;--evergreen: #1f3a34;--evergreen-2: #2c5248;--berry: #c8553d;--berry-dark: #a8432e;--gold: #d9a441;--radius: 14px;--display: "Fraunces", Georgia, serif;--body: "Nunito Sans", system-ui, -apple-system, Segoe UI, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--body);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}#root{display:flex;flex-direction:column}main{flex:1}h1,h2{font-family:var(--display);font-weight:700;letter-spacing:-.01em;margin:0}h1{font-size:2rem;line-height:1.15}h2{font-size:1.05rem}a{color:var(--evergreen-2)}button{font:inherit;cursor:pointer}.site-header{display:flex;align-items:center;gap:18px;padding:14px 28px;background:var(--evergreen);color:var(--paper)}.brand{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none}.brand span{font-family:var(--display);font-size:1.35rem;font-weight:700}.brand img{border-radius:8px;box-shadow:0 0 0 1px #fff2}.tagline{opacity:.75;font-size:.92rem}.site-footer{display:flex;justify-content:space-between;gap:12px;padding:16px 28px;font-size:.85rem;color:var(--ink-soft);border-top:1px solid var(--line)}.configurator{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:24px;padding:24px 28px;max-width:1400px;margin:0 auto;width:100%}.stage{min-height:560px}.preview{position:relative;height:100%;min-height:560px;border-radius:var(--radius);background:radial-gradient(120% 90% at 50% 10%,#fff,#eef1f2 55%,#dde3e4);border:1px solid var(--line);overflow:hidden}.preview-canvas{position:absolute;top:0;right:0;bottom:0;left:0}.preview-canvas canvas{display:block}.preview-hint{position:absolute;left:16px;bottom:14px;font-size:.8rem;color:var(--ink-soft);background:#fffc;padding:4px 10px;border-radius:99px}.preview-busy,.preview-error{position:absolute;top:14px;left:50%;transform:translate(-50%);font-size:.85rem;padding:6px 14px;border-radius:99px;background:var(--evergreen);color:var(--paper)}.preview-error{background:var(--berry)}.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:26px 24px;display:flex;flex-direction:column;gap:22px;align-self:start}.lede{color:var(--ink-soft);margin:8px 0 0;line-height:1.5}.group{display:flex;flex-direction:column;gap:12px}.group-head{display:flex;align-items:center;justify-content:space-between}.tip{margin:0;font-size:.88rem;color:var(--ink-soft);line-height:1.45}.small{font-size:.82rem;color:var(--ink-soft);margin:0}.error{color:var(--berry-dark);font-size:.88rem;margin:0}.unit-toggle{display:inline-flex;background:#efe9dd;border-radius:99px;padding:3px}.unit-toggle button{border:0;background:transparent;padding:5px 12px;border-radius:99px;font-size:.82rem;color:var(--ink-soft)}.unit-toggle button.on{background:var(--card);color:var(--ink);box-shadow:0 1px 2px #0002;font-weight:700}.dim{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;align-items:center;gap:2px 12px}.dim-label{font-weight:700}.dim-label em{font-style:normal;font-weight:400;color:var(--ink-soft);font-size:.85rem;margin-left:4px}.dim-input{grid-row:span 2;display:flex;align-items:center;gap:6px}.dim-input input{width:96px;padding:9px 10px;font:inherit;font-size:1.05rem;text-align:right;border:1.5px solid var(--line);border-radius:10px;background:#fff}.dim-input input:focus{outline:none;border-color:var(--evergreen-2);box-shadow:0 0 0 3px #2c524822}.dim.bad .dim-input input{border-color:var(--berry)}.dim-unit{width:26px;color:var(--ink-soft);font-size:.9rem}.dim-alt{font-size:.8rem;color:var(--ink-soft)}.textures{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.texture{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 8px;border-radius:12px;border:1.5px solid var(--line);background:#fff}.texture.on{border-color:var(--evergreen-2);box-shadow:0 0 0 3px #2c524822}.texture-name{font-weight:700;font-size:.92rem}.swatch{width:56px;height:40px;border-radius:8px;display:block;box-shadow:inset 0 0 0 1px #0001}.swatch-smooth{background:linear-gradient(160deg,#f3efe7,#d9d3c7)}.swatch-snow{background:radial-gradient(circle at 25% 35%,#fff 0 9px,transparent 10px),radial-gradient(circle at 70% 55%,#fff 0 11px,transparent 12px),radial-gradient(circle at 45% 80%,#fff 0 8px,transparent 9px),linear-gradient(160deg,#eef4fb,#cfdbe8)}.swatch-brick{background:repeating-linear-gradient(0deg,transparent 0 9px,#e6d8c8 9px 10px),linear-gradient(90deg,transparent 0 18px,#e6d8c8 18px 19px,transparent 19px 37px,#e6d8c8 37px 38px,transparent 38px),#a4553f}.link{background:none;border:0;padding:0;color:var(--evergreen-2);font-weight:700;font-size:.88rem;text-decoration:underline;text-underline-offset:3px;align-self:start}.order{border-top:1px dashed var(--line);padding-top:18px;display:flex;flex-direction:column;gap:10px}.price{display:flex;align-items:baseline;justify-content:space-between}.price-label{font-weight:700}.price-value{font-family:var(--display);font-size:2rem;font-weight:700;color:var(--evergreen)}.cta{margin-top:4px;padding:14px 18px;border:0;border-radius:12px;background:var(--berry);color:#fff;font-weight:700;font-size:1.05rem;box-shadow:0 2px 0 var(--berry-dark)}.cta:hover:not(:disabled){background:var(--berry-dark)}.cta:disabled{opacity:.55;cursor:not-allowed}.cta-secondary{display:inline-block;margin-top:18px;padding:11px 18px;border-radius:12px;background:var(--evergreen);color:var(--paper);text-decoration:none;font-weight:700}.page-card{max-width:560px;margin:48px auto;padding:32px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius)}.summary{display:grid;grid-template-columns:auto 1fr;gap:8px 18px;margin:22px 0 6px}.summary dt{color:var(--ink-soft)}.summary dd{margin:0;font-weight:700}.admin{padding:24px 28px;max-width:1400px;margin:0 auto;width:100%}.admin-head{display:flex;align-items:center;gap:18px;margin-bottom:18px}.admin-head h1{margin-right:auto}.orders{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;font-size:.9rem}.orders th,.orders td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}.orders th{background:#efe9dd;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft)}.orders select{font:inherit;padding:4px 6px;border-radius:8px;border:1px solid var(--line)}.files a{margin-right:10px;font-weight:700}.tag{margin-left:6px;font-size:.7rem;background:var(--gold);color:#fff;padding:1px 6px;border-radius:99px;text-transform:uppercase}@media(max-width:900px){.configurator{grid-template-columns:1fr;padding:14px}.stage,.preview{min-height:380px}.tagline{display:none}.orders{display:block;overflow-x:auto}}
