:root{color-scheme:light;--bg: #f4f2ef;--surface: #ffffff;--text: #1a1a1a;--muted: #6b6b6b;--border: #e5e2dc;--accent: #1a1a1a;--accent-on: #ffffff;--danger: #c0392b;--ok: #2d6a4f;font-family:Segoe UI,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);min-height:100dvh}.phone{max-width:420px;margin:0 auto;padding:.75rem 1rem 2rem;min-height:100dvh}.topbar{display:flex;justify-content:space-between;align-items:baseline;padding:.5rem 0 .75rem;border-bottom:1px solid var(--border);margin-bottom:.75rem}.logo{font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:.85rem}.tag{font-size:.75rem;color:var(--muted)}.steps{list-style:none;display:flex;justify-content:space-between;padding:0;margin:0 0 1rem;gap:.25rem}.steps li{flex:1;text-align:center;font-size:.65rem;color:var(--muted)}.steps li.done{color:var(--text);font-weight:600}.steps .dot{display:block;width:8px;height:8px;border-radius:50%;background:var(--border);margin:0 auto .25rem}.steps li.done .dot{background:var(--accent)}.product-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;margin-bottom:.75rem}.product-img{width:100%;aspect-ratio:3 / 4;object-fit:cover;display:block;background:#eee}.product-meta{padding:.75rem 1rem 1rem}.product-meta h1{font-size:1rem;margin:0 0 .35rem;font-weight:600}.product-meta p{margin:0;font-size:.9rem;color:var(--muted);display:flex;align-items:center;gap:.5rem}.chip{width:14px;height:14px;border-radius:50%;border:1px solid var(--border);display:inline-block}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1rem}.card h2{margin:0 0 .5rem;font-size:1rem}.hint{color:var(--muted);font-size:.88rem;line-height:1.45;margin:0 0 .75rem}.consent{display:flex;gap:.5rem;font-size:.82rem;color:var(--muted);margin-bottom:1rem;line-height:1.4}.btn{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;padding:.7rem 1rem;font-size:.92rem;cursor:pointer;text-decoration:none;text-align:center}.btn.primary{background:var(--accent);color:var(--accent-on);border-color:var(--accent)}.btn.outline{margin-top:.5rem}.btn.block{display:block;width:100%}.btn.text{border:none;background:transparent;color:var(--muted);padding:.5rem}.btn:disabled{opacity:.45;cursor:not-allowed}.pick-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:.75rem}.pick-tile{border:1px dashed var(--border);border-radius:12px;padding:1.25rem .5rem;background:#faf9f7;cursor:pointer;font-size:.9rem}.pick-icon{display:block;font-size:1.75rem;margin-bottom:.35rem}.preview,.result{width:100%;border-radius:8px;border:1px solid var(--border);object-fit:contain;max-height:55vh;background:#f0eeeb;margin-bottom:.75rem}.row{display:flex;gap:.5rem;flex-wrap:wrap}.row .btn{flex:1}.swatches{display:flex;gap:.5rem;margin:.75rem 0 1rem;justify-content:center}.swatch{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;box-shadow:inset 0 0 0 1px #00000014}.swatch.active{border-color:var(--accent)}.center{text-align:center;display:flex;flex-direction:column;align-items:center;gap:.5rem}.spinner{width:2rem;height:2rem;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error{color:var(--danger);font-size:.9rem}.ok{color:var(--ok);font-size:.88rem}.hidden{display:none}
