*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#faf8f5;--fg:#2c2824;--muted:#a09889;--subtle:#7a7268;--border:#e8e4df;--surface:#f0ece7;--card:#fff;--accent:#c4654a;--radius:12px;--font:-apple-system,"SF Pro Display","Helvetica Neue",system-ui,sans-serif}html{font-family:var(--font);background:var(--bg);color:var(--fg);-webkit-text-size-adjust:100%}body{min-height:100dvh;padding-bottom:env(safe-area-inset-bottom)}.header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;padding:18px 20px;display:flex}.logo{letter-spacing:-.02em;font-size:19px;font-weight:700}.badge{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:9px;font-weight:700}.wrap{max-width:540px;margin:0 auto;padding:0 16px}.tabs{border-bottom:1px solid var(--border);gap:2px;margin:6px 0 20px;display:flex}.tab{color:var(--muted);cursor:pointer;font-size:13px;font-weight:400;font-family:var(--font);background:0 0;border:none;border-bottom:2px solid #0000;padding:10px 18px;transition:all .15s}.tab.active{color:var(--fg);border-bottom-color:var(--fg);font-weight:600}.btn{cursor:pointer;width:100%;font-size:14px;font-weight:500;font-family:var(--font);border:none;border-radius:10px;padding:12px;transition:transform .1s,opacity .1s}.btn:active{transform:scale(.98)}.btn-primary{background:var(--fg);color:var(--bg)}.btn-secondary{border:1.5px solid var(--border);color:var(--subtle);background:0 0}.btn-accent{background:var(--accent);color:#fff}.btn:disabled{opacity:.45;pointer-events:none}.dropzone{text-align:center;cursor:pointer;background:var(--surface);border:2px dashed #d4cfc8;border-radius:14px;padding:48px 20px;transition:border-color .2s}.dropzone:hover,.dropzone.over{border-color:var(--muted)}.frame-bar{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.frame-btn{cursor:pointer;border:1.5px solid var(--border);color:var(--subtle);font-size:11px;font-weight:400;font-family:var(--font);white-space:nowrap;background:0 0;border-radius:7px;padding:7px 12px}.frame-btn.active{border-color:var(--fg);color:var(--fg);font-weight:600}.frame-swatch{border:1px solid var(--border);vertical-align:middle;border-radius:2px;width:9px;height:9px;margin-right:5px;display:inline-block}.art-card{background:var(--card);border:1px solid var(--border);cursor:pointer;border-radius:12px;align-items:center;gap:14px;padding:12px;transition:box-shadow .2s;display:flex}.art-card:hover{box-shadow:0 3px 14px #00000012}.wall-wrap{touch-action:none;-webkit-user-select:none;user-select:none;border-radius:14px;position:relative;overflow:hidden;box-shadow:0 4px 20px #00000014}.wall-wrap canvas{width:100%;display:block}.chip-bar{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.chip{border:1.5px solid var(--border);background:var(--card);cursor:pointer;font-size:11px;font-family:var(--font);border-radius:7px;align-items:center;gap:6px;padding:5px 10px;display:flex}.chip.active{border-color:var(--fg);font-weight:600}.chip .remove{color:var(--muted);font-size:14px;line-height:1}.chip .remove:hover{color:var(--accent)}.note{background:var(--surface);color:var(--subtle);border-radius:10px;margin-top:16px;padding:14px 16px;font-size:12px;line-height:1.6}.note strong{color:var(--fg)}.note code{background:#e8e4df;border-radius:3px;padding:1px 4px;font-size:11px}.ar-banner{background:#e8f5e8;border-radius:10px;margin-top:14px;padding:14px 16px;font-size:13px;line-height:1.7}.ar-link{background:var(--fg);color:var(--bg);border-radius:9px;align-items:center;gap:7px;margin-top:8px;padding:9px 18px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.referral-bar{background:var(--card);border:1px solid var(--border);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:14px 16px;display:flex}.back-btn{color:var(--muted);cursor:pointer;font-size:12px;font-family:var(--font);background:0 0;border:none;margin-bottom:12px;padding:0}.label{color:var(--muted);margin-bottom:4px;font-size:11px;font-weight:500}.input{border:1.5px solid var(--border);width:100%;font-size:14px;font-family:var(--font);color:var(--fg);background:var(--card);border-radius:7px;outline:none;padding:9px 10px}.input:focus{border-color:var(--muted)}.flex{display:flex}.gap-8{gap:8px}.gap-10{gap:10px}.gap-12{gap:12px}.mt-12{margin-top:12px}.mt-16{margin-top:16px}.flex-1{flex:1}input[type=file]{display:none}@media (width<=400px){.wrap{padding:0 12px}.frame-bar{gap:4px}.frame-btn{padding:6px 9px;font-size:10px}}
