*,*:before,*:after{box-sizing:border-box}:root{--paper: #f6f7f1;--accent: #d7f77e;--line: #dde1d4;--muted: #6c7362;--ink: #252b22;--stage: #242d27}html,body{margin:0;height:100%;font-family:-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Malgun Gothic,sans-serif;font-size:14px;background:var(--stage);color:#f5f8ee;-webkit-font-smoothing:antialiased}body{overscroll-behavior:none}button,input,select{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none;min-height:44px;-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #7fd8f0;outline-offset:2px}h1,h2,h3,p{margin:0}#root{height:100%}.app{display:flex;flex-direction:column;height:100dvh;max-width:480px;margin:0 auto;position:relative;background:var(--stage)}.nav{flex:none;height:52px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;padding-top:env(safe-area-inset-top);height:calc(52px + env(safe-area-inset-top))}.brand{font-size:16px;letter-spacing:2px;font-weight:850}.brand i{color:var(--accent);font-style:normal}.nav-label{font-size:11px;color:#b6c2ae}.stage{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;padding:14px 24px 0;background:radial-gradient(ellipse at 55% 32%,#66775a,#354334 34%,#242d27 66%)}.eyebrow{flex:none;font-size:10px;letter-spacing:1.6px;font-weight:700;color:var(--accent)}.stage h1{flex:none;font-size:26px;font-weight:500;line-height:1.22;letter-spacing:-1px;margin-top:8px}.stage-info{flex:none;display:flex;justify-content:space-between;gap:10px;font-size:10px;color:#bfcab6;border-top:1px solid #ffffff2b;padding:9px 0 12px}.viewer{flex:1 1 auto;min-height:150px;position:relative;touch-action:none}.viewer canvas{display:block}.viewer-loading,.viewer-hint{position:absolute;left:0;right:0;bottom:6px;text-align:center;font-size:11px;color:#c1c9b9;pointer-events:none}.viewer-loading{top:50%;bottom:auto;transform:translateY(-50%)}.sheet{flex:none;background:var(--paper);color:var(--ink);border-radius:25px 25px 0 0;padding:0 20px;box-shadow:0 -14px 36px #14201626;z-index:2}.handle{width:35px;height:4px;background:#c9cebf;border-radius:5px;margin:10px auto 4px}.sheet-top{height:32px;display:flex;align-items:center;justify-content:space-between}.sheet-top h2{font-size:14px}.sheet-top small{font-size:10px;color:var(--muted)}.tabs{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line)}.tab{font-size:12px;color:var(--muted);border-bottom:2px solid transparent;padding:0}.tab[aria-selected=true]{color:var(--ink);font-weight:800;border-color:var(--ink)}.sheet-body{min-height:172px;padding:12px 0}.grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.choice{border:1px solid var(--line);border-radius:10px;padding:7px 10px;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:46px;text-align:left}.choice .label{font-size:11.5px;font-weight:650}.choice small{font-size:9px;color:var(--muted);margin-left:3px}.choice[aria-pressed=true]{border-color:#5a713d;background:#f2f6e6;box-shadow:inset 0 0 0 .5px #5a713d}.choice[aria-pressed=true] .check{background:#4c6436;border-color:#4c6436;color:#fff}.check{flex:none;width:15px;height:15px;border:1px solid #c6c9c2;border-radius:50%;font-size:10px;color:transparent;display:grid;place-items:center}.paint{width:10px;height:10px;border-radius:50%;border:1px solid #0002;display:inline-block;flex:none}.usage-label{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:650}.field{display:block;margin-bottom:10px}.field>span{display:block;font-size:10px;color:var(--muted);margin-bottom:5px}.text-input,select{width:100%;height:46px;border:1px solid var(--line);border-radius:10px;padding:0 12px;background:#fff}.text-input{font-size:19px;font-weight:750;letter-spacing:.5px}select{font-size:14px;font-weight:600}.note{font-size:10px;color:var(--muted);margin-top:6px;line-height:1.55}.note.err{color:#c44231;font-weight:600}.rule{margin-top:9px;font-size:10px;line-height:1.55;color:#4c5a3a;background:#eef3df;border-radius:7px;padding:7px 9px}.swatches{display:flex;gap:9px}.swatch{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;border:1px solid transparent;padding:5px}.swatch span{width:34px;height:34px;border-radius:50%;background:var(--sw);border:1px solid #0001;display:grid;place-items:center;font-size:15px;color:transparent}.swatch[aria-pressed=true]{border-color:#5a713d}.swatch[aria-pressed=true] span{color:#fff}.checkout{flex:none;background:var(--paper);color:var(--ink);padding:11px 20px calc(16px + env(safe-area-inset-bottom));z-index:3}.price-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.price-row small{font-size:10px;color:var(--muted)}.price{font-size:21px;font-weight:800;letter-spacing:-.6px}.price span{font-size:12px;font-weight:500}.cta{width:100%;height:48px;border-radius:11px;background:var(--accent);color:#24311d;font-weight:750;font-size:13px;display:flex;align-items:center;justify-content:center;gap:9px}.cta:disabled{opacity:.45;cursor:default}.checkout-note{text-align:center;color:var(--muted);font-size:9px;margin-top:6px}@media (min-width: 520px){body{background:#dadbd8;display:grid;place-items:center}.app{height:812px;max-height:100dvh;box-shadow:0 20px 80px #24272533}}
