*,*: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:none;display:flex;flex-direction:column;padding:6px 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{height:38vh;min-height:190px;max-height:300px;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:1 1 auto;background:var(--paper);color:var(--ink);border-radius:25px 25px 0 0;padding:14px 20px 4px;box-shadow:0 -14px 36px #14201626;z-index:2}.steps{display:flex;list-style:none;margin:0 0 14px;padding:0;gap:4px}.step{flex:1 1 0}.step button{width:100%;min-height:0;padding:0;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:10px;color:var(--muted)}.step button i{font-style:normal;font-size:10px;font-weight:700;width:20px;height:20px;border-radius:50%;border:1px solid #d2d7c8;background:#fff;display:grid;place-items:center}.step[aria-current=step] button{color:var(--ink);font-weight:750}.step[aria-current=step] button i{background:#3f5230;border-color:#3f5230;color:#fff}.step button:disabled{opacity:.45}.panel{min-height:196px}.panel h2{font-size:17px;font-weight:750;letter-spacing:-.3px}.panel .sub{font-size:11px;color:var(--muted);margin-top:5px;line-height:1.5}.plate-field{display:block;margin-top:12px}.plate-input{width:100%;height:64px;border:2px solid #20261c;border-radius:12px;background:#fff;color:#16181a;text-align:center;font-size:28px;font-weight:800;letter-spacing:1px;padding:0 12px}.plate-input::placeholder{color:#c8cdc0;font-weight:700}.hint-line{font-size:11px;color:var(--muted);margin:9px 2px 0;line-height:1.5;min-height:17px}.hint-line .warn{color:#b8532f;font-weight:650}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:12px}.cards.two{grid-template-columns:repeat(2,1fr)}.card{border:1px solid var(--line);border-radius:11px;background:#fff;padding:10px;text-align:left;min-height:56px}.card-label{display:block;font-size:12.5px;font-weight:700}.card-sub{display:block;font-size:9.5px;color:var(--muted);margin-top:3px;line-height:1.4}.card[aria-pressed=true]{border-color:#5a713d;background:#f2f6e6;box-shadow:inset 0 0 0 .5px #5a713d}.opt{display:block;width:100%;margin-top:8px;border:1px solid var(--line);border-radius:11px;background:#fff;padding:9px 12px;text-align:left;min-height:48px}.opt-label{display:block;font-size:12px;font-weight:650}.opt-sub{display:block;font-size:9.5px;color:var(--muted);margin-top:2px}.opt[aria-pressed=true]{border-color:#5a713d;background:#f2f6e6;box-shadow:inset 0 0 0 .5px #5a713d}.swatches{display:flex;gap:10px;margin-top:16px}.swatch{width:52px;height:52px;display:grid;place-items:center;border-radius:50%;border:1px solid transparent;padding:4px}.swatch span{width:40px;height:40px;border-radius:50%;background:var(--sw);border:1px solid #0001;display:grid;place-items:center;font-size:16px;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:12px 20px calc(16px + env(safe-area-inset-bottom));z-index:3}.actions{display:flex;gap:8px}.back{flex:none;min-width:62px;height:48px;border-radius:11px;border:1px solid var(--line);background:#fff;font-size:12.5px;font-weight:650}.cta{flex:1 1 auto;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}}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
