:root{--ink: #202020;--ink-soft: rgba(32, 32, 32, .55);--accent: #d8683f;--accent-down: #c65c33;--bg: #faf6f0;--chip: #f1ece4;--chip-border: #e3dcd1;--none-glyph: #c9c0b1;font-family:ui-rounded,SF Pro Rounded,-apple-system,Segoe UI,Roboto,Helvetica Neue,sans-serif;color:var(--ink)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);overflow:hidden;-webkit-font-smoothing:antialiased}.app{height:100%;height:100dvh;display:flex;flex-direction:column}.header{flex:0 0 auto;display:flex;justify-content:space-between;align-items:center;padding:20px 28px}.brand{font-weight:700;font-size:18px;letter-spacing:-.01em;white-space:nowrap}.brand-mark{color:var(--accent);margin-right:2px}.brand-sub{font-weight:500;color:var(--ink-soft);margin-left:10px;font-size:15px}.stage{flex:1;display:flex;align-items:center;justify-content:center;min-height:0;padding:4px 16px}.preview{height:100%;max-height:min(60vh,88vw);aspect-ratio:1 / 1;width:auto}.toolbar{display:flex;gap:10px;align-items:center;position:relative}.btn{border:1.5px solid var(--chip-border);background:#fff;color:var(--ink);border-radius:999px;padding:9px 18px;font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;transition:transform .13s ease,background-color .13s ease}.btn:hover{transform:scale(1.04)}.btn:active{transform:scale(.98)}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-down);border-color:var(--accent-down)}.download{position:relative}.download-menu{position:absolute;right:0;top:calc(100% + 6px);background:#fff;border:1.5px solid var(--chip-border);border-radius:12px;padding:4px;display:flex;flex-direction:column;min-width:104px;z-index:10;box-shadow:0 6px 18px #20202014}.download-menu button{border:0;background:none;font:inherit;font-size:14px;font-weight:500;padding:9px 12px;text-align:left;border-radius:8px;cursor:pointer;color:var(--ink)}.download-menu button:hover{background:var(--chip)}.picker{flex:0 0 auto;display:flex;flex-direction:column;gap:12px;padding:0 16px calc(18px + env(safe-area-inset-bottom));align-items:center}.picker-options{display:flex;align-items:center;gap:10px;overflow-x:auto;max-width:100%;min-height:80px;padding:8px 4px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.picker-options::-webkit-scrollbar{display:none}.picker-options:before,.picker-options:after{content:"";margin:auto}.picker-empty{margin:0;font-size:13.5px;color:var(--ink-soft);white-space:nowrap}.chip{width:64px;height:64px;flex:0 0 auto;border-radius:18px;border:0;box-shadow:inset 0 0 0 1.5px var(--chip-border);background:var(--chip);cursor:pointer;padding:7px;transition:transform .14s ease,box-shadow .14s ease}.chip:hover{transform:scale(1.08)}.chip svg{width:100%;height:100%;display:block;pointer-events:none}.chip-swatch{border-radius:50%;padding:5px}.chip-selected{box-shadow:inset 0 0 0 1.5px var(--chip-border),0 0 0 2.5px var(--bg),0 0 0 5px var(--ink)}.picker-tabs{display:flex;gap:4px;background:#fff;border:1.5px solid var(--chip-border);border-radius:999px;padding:4px;max-width:100%;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.picker-tabs::-webkit-scrollbar{display:none}.tab{border:0;background:none;font:inherit;font-size:13.5px;font-weight:600;color:var(--ink);opacity:.55;padding:8px 14px;border-radius:999px;cursor:pointer;white-space:nowrap;transition:opacity .13s ease,background-color .13s ease}.tab:hover{opacity:.85}.tab-active{background:var(--chip);opacity:1}.chip:focus-visible,.tab:focus-visible,.btn:focus-visible,.download-menu button:focus-visible{outline:2.5px solid var(--ink);outline-offset:2px}.chip-swatch:focus-visible{outline-offset:1px}@media(max-width:700px){.header{padding:14px 16px}.brand{font-size:16px}.brand-sub{font-size:13.5px;margin-left:8px}.btn{padding:10px 16px;min-height:44px}.preview{max-height:min(46vh,92vw)}.picker{gap:8px;padding-bottom:calc(12px + env(safe-area-inset-bottom))}.chip{width:56px;height:56px;border-radius:16px;padding:6px}.picker-options{min-height:72px;padding:6px 2px}.tab{min-height:44px;padding:10px 13px}}@media(prefers-reduced-motion:reduce){.chip,.tab,.btn{transition:none}.chip:hover,.btn:hover,.btn:active{transform:none}.picker-options,.picker-tabs{scroll-behavior:auto}}
