:root{--ink:#241a14;--paper:#f6f0e7;--card:#fffaf3;--line:#e2d6c5;--cog:#a4572a;--cog2:#8a4520;--muted:#74655a;--dark:#2a1d15}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);padding-bottom:env(safe-area-inset-bottom);margin:0;font:16px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer}.banner{color:#f3e3cd;text-align:center;background:#1d130d;padding:8px 14px;font-size:13px;line-height:1.35}.banner strong{color:#ffd9a3}.top{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:14px clamp(16px,4vw,48px);display:flex}.brand{letter-spacing:.22em;font:600 22px/1 Georgia,Times New Roman,serif}.brand span{letter-spacing:.06em;color:var(--muted);text-transform:none;margin-top:5px;font:400 11px/1.4 -apple-system,Helvetica,sans-serif;display:block}.ext{color:var(--cog2);white-space:nowrap;border-bottom:1px solid #d9b999;font-size:14px;text-decoration:none}.hero{max-width:1280px;margin:auto;padding:clamp(22px,4vw,44px) clamp(16px,4vw,48px) 6px}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--cog);margin:0 0 6px;font-size:12px}h1{margin:0 0 10px;font:500 clamp(30px,5vw,52px)/1.08 Georgia,Times New Roman,serif}.lead{color:var(--muted);max-width:620px;margin:0;font-size:clamp(15px,1.6vw,18px)}.cfg{grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);align-items:start;gap:clamp(16px,3vw,40px);max-width:1280px;margin:0 auto;padding:18px clamp(16px,4vw,48px) 40px;display:grid}.stage{position:sticky;top:12px}.stagebox{background:#cdbfae;border-radius:18px;line-height:0;position:relative;overflow:hidden;box-shadow:0 18px 50px -20px #3c230f73}#c{touch-action:none;cursor:grab;aspect-ratio:5/4;width:100%;height:auto;display:block}#c:active{cursor:grabbing}.chip{color:#fff;pointer-events:none;background:#241a14c7;border-radius:99px;padding:8px 12px;font:13px/1 sans-serif;transition:opacity .4s;position:absolute;bottom:12px;left:12px}.chip.gone{opacity:0}.loading{color:var(--muted);background:#e4d9c9;place-items:center;font:14px sans-serif;display:grid;position:absolute;inset:0}.sim{color:var(--muted);margin:8px 4px 0;font-size:12px}.panel{flex-direction:column;gap:14px;display:flex}.step{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px 16px 18px}h2{align-items:center;gap:10px;margin:0 0 12px;font:600 17px/1.2 Georgia,serif;display:flex}h2 i{background:var(--dark);color:#f3d9b4;border-radius:50%;place-items:center;width:26px;height:26px;font:600 13px/1 sans-serif;display:inline-grid}.pieces{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.pieces button{text-align:left;box-shadow:0 0 0 1px var(--line);background:#fff;border:2px solid #0000;border-radius:12px;padding:0;overflow:hidden}.pieces img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.pieces span{padding:6px 8px 8px;font-size:13px;font-weight:600;line-height:1.2;display:block}.pieces button.on{border-color:var(--cog);box-shadow:0 6px 18px -8px #a4572ab3}.credit{color:var(--muted);margin:9px 0 0;font-size:11.5px}.drop{text-align:center;cursor:pointer;background:#fffdf9;border:2px dashed #cdb89f;border-radius:14px;flex-direction:column;align-items:center;gap:2px;padding:20px 12px;transition:all .15s;display:flex}.drop:hover,.drop.over{border-color:var(--cog);background:#fff4e6}.drop input{opacity:0;width:1px;height:1px;position:absolute}.drop b{color:var(--cog2)}.drop span{color:var(--muted);font-size:13px}.or{color:var(--muted);margin:12px 0 8px;font-size:13px}.samples{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.samples button{box-shadow:0 0 0 1px var(--line);background:#fff;border:2px solid #0000;border-radius:12px;padding:8px 6px 6px;font-size:12px}.samples button.on{border-color:var(--cog)}.samples img{object-fit:contain;width:100%;height:56px;margin-bottom:4px;display:block}.note{color:var(--muted);margin:10px 0 0;font-size:12.5px}.err{color:#a02222}.seg{grid-template-columns:1fr 1fr;gap:8px;display:grid}.seg button{box-shadow:0 0 0 1px var(--line);text-align:left;background:#fff;border:2px solid #0000;border-radius:12px;padding:10px}.seg button b{font-size:14.5px;display:block}.seg button span{color:var(--muted);font-size:12.5px}.seg button.on{border-color:var(--cog);background:#fff7ec}.field{margin-top:14px}.field>label{margin-bottom:7px;font-size:13px;font-weight:600;display:block}.sw{flex-wrap:wrap;gap:8px;display:flex}.swb{box-shadow:0 0 0 1px var(--line);background:#fff;border:2px solid #0000;border-radius:99px;align-items:center;gap:7px;padding:5px 11px 5px 5px;font-size:13px;display:flex}.swb i{border-radius:50%;width:24px;height:24px;box-shadow:inset 0 0 0 1px #0003,inset 0 -5px 8px #0000002e}.swb.on{border-color:var(--cog);background:#fff7ec}.rng{grid-template-columns:86px 1fr 52px;align-items:center;gap:8px;margin-bottom:6px;display:grid}.rng label{font-size:14px}.rng output{color:var(--muted);text-align:right;font-size:13px}input[type=range]{width:100%;height:34px;accent-color:var(--cog)}input[type=range]:disabled{opacity:.4}.ghost{color:var(--cog2);background:0 0;border:1px solid #cdb89f;border-radius:99px;width:100%;min-height:44px;margin-top:6px;padding:10px 16px;font-size:14px;font-weight:600}.qty label{margin-bottom:6px;font-size:14px;font-weight:600;display:block}.qrow{grid-template-columns:48px 1fr 48px;gap:6px;display:grid}.qrow button{border:1px solid var(--line);background:#fff;border-radius:12px;height:48px;font-size:22px}.qrow input{text-align:center;border:1px solid var(--line);background:#fff;border-radius:12px;width:100%;height:48px;font-size:20px;font-weight:600}.presets{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.presets button{border:1px solid var(--line);background:#fff;border-radius:99px;min-height:38px;padding:7px 14px}.sum{border-top:1px solid var(--line);margin:16px 0 0}.sum div{border-bottom:1px solid var(--line);justify-content:space-between;gap:14px;padding:8px 0;font-size:14px;display:flex}.sum dt{color:var(--muted)}.sum dd{text-align:right;margin:0;font-weight:600}.cta{background:var(--dark);color:#fbe7c8;border:0;border-radius:99px;width:100%;min-height:52px;margin-top:14px;padding:15px 22px;font-size:16px;font-weight:700;display:block;box-shadow:0 10px 24px -12px #2a1d15cc}.cta:hover{background:#3b2a1d}.refs{max-width:1280px;margin:0 auto;padding:10px clamp(16px,4vw,48px) 36px}.refs h2{font-size:20px}.strip{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.strip figure{margin:0}.strip img{aspect-ratio:1;object-fit:cover;border-radius:14px;width:100%;display:block}footer{border-top:1px solid var(--line);text-align:center;color:var(--muted);padding:20px 16px 90px;font-size:12.5px}footer a{color:var(--cog2)}.mbar{display:none}dialog{background:var(--card);width:min(480px,100vw - 24px);color:var(--ink);border:0;border-radius:20px;padding:22px;box-shadow:0 30px 80px #0006}dialog::backdrop{background:#190f0899}dialog h3{margin:0 0 6px;font:600 22px Georgia,serif}dialog label{margin-top:12px;font-size:13px;font-weight:600;display:block}dialog input,dialog textarea{border:1px solid var(--line);background:#fff;border-radius:10px;width:100%;margin-top:4px;padding:11px 12px;font-size:16px;font-weight:400;display:block}.acts{grid-template-columns:1fr 1.6fr;align-items:end;gap:10px;display:grid}.acts .ghost,.acts .cta{margin-top:14px}@media (width<=900px){.cfg{grid-template-columns:1fr;gap:12px;padding-top:10px}.stage{z-index:6;background:var(--paper);margin:0 calc(-1*clamp(16px,4vw,48px));padding:6px clamp(16px,4vw,48px) 0;position:sticky;top:0;box-shadow:0 8px 14px -12px #00000080}.stagebox{border-radius:14px}#c{object-fit:contain;background:#cdbfae;width:100%;max-height:31vh}.sim{display:none}.chip{padding:6px 10px;font-size:11px;bottom:8px;left:8px}.hero{padding-top:18px}.strip{grid-template-columns:repeat(2,1fr)}.mbar.show{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:20;background:var(--dark);color:#fbe7c8;border-radius:99px;justify-content:space-between;align-items:center;padding:8px 8px 8px 18px;font-size:14px;display:flex;position:fixed;box-shadow:0 12px 30px #0006}.mbar button{color:#2a1d15;background:#d9a566;border:0;border-radius:99px;min-height:44px;padding:10px 20px;font-weight:700}}@media (width<=480px){.pieces{grid-template-columns:repeat(2,1fr)}.brand{font-size:19px}.rng{grid-template-columns:78px 1fr 46px}}
