.comp[data-v-0d62dcfb]{display:flex;align-items:center;gap:10px;margin-bottom:10px}.search[data-v-0d62dcfb]{position:relative;flex:1;min-width:0}.suggestions[data-v-0d62dcfb]{position:absolute;left:0;right:0;z-index:5;list-style:none;margin:4px 0 0;padding:4px;background:var(--panel-3);border:1px solid var(--line-strong);border-radius:var(--radius-sm);max-height:240px;overflow-y:auto}.suggestions li[data-v-0d62dcfb]{display:flex;align-items:center;gap:10px;padding:8px;border-radius:8px;cursor:pointer}.suggestions li[data-v-0d62dcfb]:hover{background:var(--panel-2)}.s-name[data-v-0d62dcfb]{font-size:.9rem;font-weight:600}.s-brand[data-v-0d62dcfb]{margin-left:auto;font-size:.74rem;color:var(--faint)}.parts-select[data-v-0d62dcfb]{width:64px;flex:0 0 auto}.comp[data-v-2e59c0da]{display:flex;align-items:center;gap:10px;margin-bottom:10px}.paint-select[data-v-2e59c0da]{flex:1;min-width:0}.parts-select[data-v-2e59c0da]{width:68px;flex:0 0 auto}.result[data-v-2e59c0da]{display:flex;align-items:center;gap:14px;margin-bottom:14px}.result-body[data-v-2e59c0da]{min-width:0}.rlabel[data-v-2e59c0da]{font-size:.95rem;font-weight:600}.rhex[data-v-2e59c0da]{font-size:.8rem;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;margin-top:2px}label[data-v-2e59c0da]{margin-top:10px}.block[data-v-2e59c0da]{display:block;width:100%;margin-top:14px}.notice[data-v-2e59c0da]{color:var(--good);font-size:.82rem;margin:10px 0 0}.modebar[data-v-47fcb7c3]{display:flex;gap:6px;margin-bottom:14px}.modebar button[data-v-47fcb7c3]{flex:1;padding:9px;font-size:.85rem;font-weight:600;background:var(--panel);color:var(--muted);border:1px solid var(--line);border-radius:9px;cursor:pointer}.modebar button.on[data-v-47fcb7c3]{color:var(--text);border-color:var(--accent);background:#e3b23c1a}.cmp[data-v-47fcb7c3]{display:flex;align-items:center;gap:5px;flex:0 0 auto}.recipe-row[data-v-47fcb7c3]{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.recipe-row .recipe[data-v-47fcb7c3]{flex:1;min-width:0}.actions[data-v-47fcb7c3]{display:flex;gap:8px;margin-top:8px}.save-form[data-v-47fcb7c3]{margin-top:10px;padding:10px;background:var(--panel-2);border-radius:8px}.save-form label[data-v-47fcb7c3]{margin-top:6px}.cat-toggle[data-v-47fcb7c3]{display:flex;align-items:center;gap:8px;font-size:.82rem;color:var(--text);margin-bottom:12px;cursor:pointer}.cat-toggle input[data-v-47fcb7c3]{width:17px;height:17px;accent-color:var(--accent);flex:0 0 auto}.corr-badge[data-v-47fcb7c3]{font-size:.6rem;font-weight:700;letter-spacing:.04em;text-transform:none;color:var(--good);border:1px solid rgba(99,210,154,.4);background:#63d29a1a;padding:2px 7px;border-radius:999px;margin-left:6px;vertical-align:middle}.photo-picker[data-v-866d1120]{display:flex;gap:10px;flex-wrap:wrap}.file[data-v-866d1120],.photo-picker>.btn[data-v-866d1120]{flex:1 1 auto;margin:0}.file input[data-v-866d1120]{display:none}.btn[data-v-866d1120]{width:100%}.btn svg[data-v-866d1120]{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.8}.live-head[data-v-a1ae44eb]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.live-head h3[data-v-a1ae44eb]{margin:0;font-size:1rem}.stage[data-v-a1ae44eb]{position:relative;line-height:0;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--line);background:#000}video[data-v-a1ae44eb]{width:100%;height:auto;max-height:60vh;display:block;object-fit:contain;touch-action:none;cursor:crosshair}.crosshair[data-v-a1ae44eb]{position:absolute;width:18px;height:18px;margin:-9px 0 0 -9px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1.5px #000,0 0 6px #0009;pointer-events:none}.scan-flag[data-v-a1ae44eb]{position:absolute;left:8px;top:8px;display:flex;align-items:center;gap:6px;font-size:.68rem;line-height:1;color:#fff;background:#0000008c;padding:5px 9px;border-radius:999px}.scan-flag .dot[data-v-a1ae44eb]{width:8px;height:8px;border-radius:50%;background:var(--faint)}.scan-flag .dot.on[data-v-a1ae44eb]{background:var(--good);box-shadow:0 0 6px var(--good)}.hint[data-v-a1ae44eb]{font-size:.76rem;margin:8px 0 0}.overlay[data-v-a1ae44eb]{position:absolute;left:0;right:0;bottom:0;padding:28px 8px 8px;background:linear-gradient(to top,#000000b8,#0000);pointer-events:none;line-height:normal}.matches[data-v-a1ae44eb]{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin-bottom:7px;pointer-events:auto}.matches[data-v-a1ae44eb]::-webkit-scrollbar{display:none}.chip[data-v-a1ae44eb]{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;max-width:60%;padding:5px 10px 5px 5px;border-radius:999px;border:1px solid rgba(255,255,255,.25);background:#14161ce6;color:#fff;cursor:pointer}.chip[data-v-a1ae44eb]:active{transform:translateY(1px)}.chip .c-name[data-v-a1ae44eb]{font-size:.8rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ocr-line[data-v-a1ae44eb]{display:flex;align-items:baseline;gap:7px;height:20px}.ocr-line .lbl[data-v-a1ae44eb]{flex:0 0 auto;font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#ffffff8c}.ocr-line .txt[data-v-a1ae44eb]{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.76rem;color:#ffffffeb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scanner-head[data-v-d0fd6b5e]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.scanner-head h3[data-v-d0fd6b5e]{margin:0;font-size:1rem}.cat-search[data-v-d0fd6b5e]{position:relative}.suggestions[data-v-d0fd6b5e]{list-style:none;margin:6px 0 0;padding:4px;background:var(--panel-3);border:1px solid var(--line-strong);border-radius:var(--radius-sm);max-height:260px;overflow-y:auto}.suggestions li[data-v-d0fd6b5e]{display:flex;align-items:center;gap:10px;padding:8px;border-radius:8px;cursor:pointer}.suggestions li[data-v-d0fd6b5e]:hover{background:var(--panel-2)}.s-name[data-v-d0fd6b5e]{font-size:.9rem;font-weight:600}.s-brand[data-v-d0fd6b5e]{margin-left:auto;font-size:.74rem;color:var(--faint)}.or[data-v-d0fd6b5e]{text-align:center;font-size:.74rem;color:var(--faint);margin:14px 0 10px;text-transform:uppercase;letter-spacing:.1em}.block[data-v-d0fd6b5e]{display:block;width:100%;text-align:center}.stage[data-v-d0fd6b5e]{position:relative;margin-top:12px;line-height:0}canvas[data-v-d0fd6b5e]{width:100%;height:auto;border-radius:var(--radius-sm);border:1px solid var(--line);touch-action:none;cursor:crosshair}.crosshair[data-v-d0fd6b5e]{position:absolute;width:16px;height:16px;margin:-8px 0 0 -8px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1.5px #000,0 0 6px #0009;pointer-events:none}.hint[data-v-d0fd6b5e]{font-size:.76rem;margin:6px 0 0}.ocr-row[data-v-d0fd6b5e]{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:12px 0}.fields[data-v-d0fd6b5e]{display:flex;gap:14px;margin:14px 0}.field-swatch[data-v-d0fd6b5e]{display:flex;flex-direction:column;align-items:center;gap:8px}.field-swatch input[type=color][data-v-d0fd6b5e]{width:46px;height:30px}.field-inputs[data-v-d0fd6b5e]{flex:1;min-width:0}.field-inputs label[data-v-d0fd6b5e]{margin-top:8px}.field-inputs label[data-v-d0fd6b5e]:first-child{margin-top:0}.add-actions[data-v-4ab4b763]{display:flex;gap:10px;flex-wrap:wrap}.add-actions .ic[data-v-4ab4b763]{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.8}.added-note[data-v-4ab4b763]{color:var(--good);font-size:.82rem;margin:10px 0 0}.search-row[data-v-4ab4b763]{display:flex;align-items:center;gap:8px}.search-row input[data-v-4ab4b763]{flex:1}.search-row .clear[data-v-4ab4b763]{flex:0 0 auto}.list-controls[data-v-4ab4b763]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0 4px;font-size:.8rem}.owned-toggle[data-v-4ab4b763]{display:inline-flex;align-items:center;gap:7px;color:var(--text);cursor:pointer}.owned-toggle input[data-v-4ab4b763]{width:16px;height:16px;accent-color:var(--accent)}.sort[data-v-4ab4b763]{display:inline-flex;align-items:center;gap:6px;color:var(--muted);margin:0}.sort select[data-v-4ab4b763]{width:auto;padding:6px 8px;font-size:.8rem}.empty[data-v-4ab4b763]{margin-top:12px}.plist[data-v-4ab4b763]{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.pcard[data-v-4ab4b763]{border:1px solid var(--line);border-left:4px solid var(--line);border-radius:11px;background:var(--panel-2);overflow:hidden}.pcard.open[data-v-4ab4b763]{border-color:var(--line-strong);background:var(--panel-3)}.pcard.dim .phead[data-v-4ab4b763]{opacity:.55}.phead[data-v-4ab4b763]{display:flex;align-items:center;gap:11px;padding:10px 12px;cursor:pointer}.pinfo[data-v-4ab4b763]{flex:1;min-width:0}.pname[data-v-4ab4b763]{font-size:.92rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pmeta[data-v-4ab4b763]{font-size:.74rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pchips[data-v-4ab4b763]{display:flex;gap:5px;flex:0 0 auto}.chip[data-v-4ab4b763]{font-size:.64rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 7px;border-radius:999px;border:1px solid var(--line-strong);color:var(--faint)}.chip.low[data-v-4ab4b763]{color:var(--accent);border-color:#e3b23c80}.chip.excl[data-v-4ab4b763]{color:var(--muted)}.chev[data-v-4ab4b763]{width:18px;height:18px;flex:0 0 auto;stroke:var(--faint);fill:none;stroke-width:2;transition:transform .18s}.pcard.open .chev[data-v-4ab4b763]{transform:rotate(180deg)}.pbody[data-v-4ab4b763]{padding:4px 12px 14px;border-top:1px solid var(--line)}.pbody .row.top[data-v-4ab4b763],.del-row[data-v-4ab4b763]{margin-top:12px}.top[data-v-4ab4b763]{align-items:flex-start}.names[data-v-4ab4b763]{flex:1;display:flex;flex-direction:column;gap:7px}.hexrow[data-v-4ab4b763]{margin-top:8px}.hex[data-v-4ab4b763]{flex:1}.toggles.small[data-v-4ab4b763]{font-size:.78rem;margin-top:10px}.inv-head[data-v-4ab4b763]{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.inv-head h2[data-v-4ab4b763]{margin:0}.inv-actions[data-v-4ab4b763]{display:flex;gap:8px;flex:0 0 auto}.ghost-sm[data-v-4ab4b763]{display:inline-flex;align-items:center;justify-content:center;gap:5px;box-sizing:border-box;height:34px;padding:0 12px;line-height:1;font-size:.76rem;font-weight:600;border-radius:9px;border:1px solid var(--line-strong);background:var(--panel-2);color:var(--text);cursor:pointer}.ghost-sm[data-v-4ab4b763]:active{transform:translateY(1px)}.ghost-sm svg[data-v-4ab4b763]{width:15px;height:15px;stroke:var(--accent);fill:none;stroke-width:1.9}.ghost-sm input[data-v-4ab4b763]{display:none}.actions[data-v-c80b60e3]{display:flex;gap:8px;margin-top:8px}.file input[data-v-8daacece]{display:none}.stage[data-v-8daacece]{position:relative;margin-top:10px;line-height:0}canvas[data-v-8daacece]{width:100%;height:auto;border-radius:var(--radius-sm);border:1px solid var(--line);touch-action:none;cursor:crosshair}.crosshair[data-v-8daacece]{position:absolute;width:16px;height:16px;margin:-8px 0 0 -8px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1.5px #000,0 0 6px #0009;pointer-events:none}.hint[data-v-8daacece]{font-size:.76rem;margin:6px 0 0}.result[data-v-8daacece]{display:flex;align-items:center;gap:10px;margin-top:10px;font-size:.85rem}.report[data-v-c685b549]{padding:10px;background:var(--panel-2);border-radius:8px;font-size:.9rem}.report .meta[data-v-c685b549]{margin-top:4px}.metric[data-v-c685b549]{display:inline-flex;align-items:center;gap:6px;margin-top:8px;font-size:.8rem}.actions[data-v-c685b549]{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}.correction[data-v-c685b549]{margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel-2)}.corr-title[data-v-c685b549]{font-size:.66rem;text-transform:uppercase;letter-spacing:.1em;color:var(--faint);margin-bottom:6px}.corr-summary[data-v-c685b549]{font-size:.86rem;line-height:1.45;margin:0}.corr-ba[data-v-c685b549]{display:flex;align-items:center;gap:8px;margin-top:10px;font-size:.9rem;flex-wrap:wrap}.ba-before[data-v-c685b549]{color:var(--danger);font-weight:700}.ba-after[data-v-c685b549]{color:var(--good);font-weight:700}.ba-arrow[data-v-c685b549]{color:var(--faint)}.corr-toggle[data-v-c685b549]{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;color:var(--text);margin-left:auto;cursor:pointer}.corr-toggle input[data-v-c685b549]{width:16px;height:16px;accent-color:var(--accent)}.notice[data-v-c685b549]{color:var(--good);font-size:.82rem;margin:10px 0 0}.acc-head[data-v-08ebfef1]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.acc-head h3[data-v-08ebfef1]{margin:0;font-size:1rem}.switch[data-v-08ebfef1]{display:flex;gap:6px;margin-bottom:14px}.switch button[data-v-08ebfef1]{flex:1;padding:9px;font-size:.85rem;font-weight:600;background:var(--panel-2);color:var(--muted);border:1px solid var(--line);border-radius:9px;cursor:pointer}.switch button.on[data-v-08ebfef1]{color:var(--text);border-color:var(--accent);background:#e3b23c1a}.reset-head[data-v-08ebfef1]{font-size:.95rem;font-weight:700;margin-bottom:12px}.link[data-v-08ebfef1]{display:inline-block;margin-top:12px;padding:4px 0;background:none;border:none;color:var(--accent);font-size:.82rem;cursor:pointer}form label[data-v-08ebfef1]{margin-top:10px}form label[data-v-08ebfef1]:first-child{margin-top:0}.block[data-v-08ebfef1]{display:block;width:100%;margin-top:14px}.err[data-v-08ebfef1]{color:var(--danger);font-size:.82rem;margin:10px 0 0}.signed[data-v-08ebfef1]{font-size:.95rem;margin:0 0 6px}.status[data-v-08ebfef1]{font-size:.8rem;color:var(--muted);margin:0 0 14px}.status.synced[data-v-08ebfef1]{color:var(--good)}.status.error[data-v-08ebfef1]{color:var(--danger)}.status.syncing[data-v-08ebfef1]{color:var(--accent)}.note[data-v-08ebfef1]{font-size:.76rem;color:var(--faint);line-height:1.5;margin:14px 0 0}.m-head[data-v-bd9c40f3]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.m-head h3[data-v-bd9c40f3]{margin:0;font-size:1rem}.body[data-v-bd9c40f3]{margin-top:12px}.thumb[data-v-bd9c40f3]{width:100%;max-height:220px;object-fit:contain;border-radius:var(--radius-sm);border:1px solid var(--line);background:#000;display:block}.count-row[data-v-bd9c40f3]{display:inline-flex;align-items:center;gap:8px;font-size:.82rem;color:var(--muted);margin:12px 0 6px}.count-row select[data-v-bd9c40f3]{width:auto;padding:6px 8px}.match-row[data-v-bd9c40f3]{display:flex;align-items:center;gap:11px;padding:9px 0;border-top:1px solid var(--line)}.mbody[data-v-bd9c40f3]{flex:1;min-width:0}.mrecipe[data-v-bd9c40f3]{font-size:.88rem;font-weight:600}.mmeta[data-v-bd9c40f3]{font-size:.74rem;color:var(--muted);margin-top:2px}.block[data-v-bd9c40f3]{display:block;width:100%;margin-top:14px}.note[data-v-bd9c40f3]{font-size:.74rem;color:var(--faint);line-height:1.5;margin:10px 0 0}.head[data-v-211f1d58]{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.head h2[data-v-211f1d58]{margin:0}.head-actions[data-v-211f1d58]{display:flex;gap:8px;flex:0 0 auto}.empty[data-v-211f1d58]{margin-top:12px}.plist[data-v-211f1d58]{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.pcard[data-v-211f1d58]{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--panel-2);cursor:pointer}.pinfo[data-v-211f1d58]{flex:1;min-width:0}.pname[data-v-211f1d58]{font-size:.95rem;font-weight:600}.pmeta[data-v-211f1d58]{font-size:.76rem;color:var(--muted);margin-top:2px}.swatches[data-v-211f1d58]{display:flex;gap:3px;flex:0 0 auto}.title-input[data-v-211f1d58]{font-size:1.15rem;font-weight:700;margin-top:4px}.scheme-sum[data-v-211f1d58]{font-size:.9rem;color:var(--text);margin:10px 0 0}.target[data-v-211f1d58]{padding:10px 0;border-top:1px solid var(--line)}.target[data-v-211f1d58]:first-of-type{border-top:none}.trow[data-v-211f1d58]{display:flex;align-items:center;gap:10px}.tfields[data-v-211f1d58]{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.tname[data-v-211f1d58]{flex:1}.best[data-v-211f1d58]{display:flex;align-items:center;gap:10px;margin-top:8px;padding-left:2px}.best.none[data-v-211f1d58]{font-size:.8rem;color:var(--faint)}.best-body[data-v-211f1d58]{flex:1;min-width:0}.best-recipe[data-v-211f1d58]{font-size:.86rem;font-weight:600}.best-meta[data-v-211f1d58]{font-size:.74rem;color:var(--muted);margin-top:2px}.add-target[data-v-211f1d58]{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.add-label[data-v-211f1d58]{font-size:.66rem;text-transform:uppercase;letter-spacing:.1em;color:var(--faint);margin-bottom:8px}.cat-search[data-v-211f1d58]{position:relative}.suggestions[data-v-211f1d58]{list-style:none;margin:6px 0 0;padding:4px;background:var(--panel-3);border:1px solid var(--line-strong);border-radius:var(--radius-sm);max-height:240px;overflow-y:auto}.suggestions li[data-v-211f1d58]{display:flex;align-items:center;gap:10px;padding:8px;border-radius:8px;cursor:pointer}.suggestions li[data-v-211f1d58]:hover{background:var(--panel-2)}.s-name[data-v-211f1d58]{font-size:.9rem;font-weight:600}.s-brand[data-v-211f1d58]{margin-left:auto;font-size:.74rem;color:var(--faint)}.draft-row[data-v-211f1d58]{display:flex;align-items:center;gap:10px;margin-top:10px}.cat-toggle[data-v-211f1d58]{display:flex;align-items:center;gap:8px;font-size:.82rem;color:var(--text);margin-bottom:12px;cursor:pointer}.cat-toggle input[data-v-211f1d58]{width:17px;height:17px;accent-color:var(--accent);flex:0 0 auto}:root{color-scheme:dark;--bg: #0d0e12;--bg-2: #101218;--panel: #161922;--panel-2: #1e222d;--panel-3: #262b38;--line: #2a2f3c;--line-strong: #3a4150;--text: #eceef3;--muted: #99a0af;--faint: #6b7280;--accent: #e3b23c;--accent-2: #f0c766;--accent-ink: #1c1606;--danger: #ff6f6f;--good: #63d29a;--radius: 16px;--radius-sm: 11px;--shadow: 0 10px 30px -12px rgba(0, 0, 0, .6);--tabbar-h: 62px;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body{margin:0}body{background:radial-gradient(1100px 600px at 50% -10%,#1a1d27,#1a1d2700 60%),var(--bg);color:var(--text);min-height:100dvh;overflow-x:hidden;-webkit-text-size-adjust:100%}.mix .recipe,.mix .meta,.paint-line{overflow-wrap:anywhere}.app{max-width:680px;margin:0 auto;padding:0 16px calc(var(--tabbar-h) + 28px + env(safe-area-inset-bottom))}header{position:sticky;top:0;z-index:20;margin:0 -16px 16px;padding:calc(14px + env(safe-area-inset-top)) 16px 12px;background:linear-gradient(180deg,#0d0e12f5,#0d0e12b8);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}h1{font-size:1.15rem;font-weight:700;letter-spacing:.02em;margin:0;display:flex;align-items:center;gap:9px}h1 .dot{width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,var(--accent-2),var(--accent));box-shadow:0 0 12px #e3b23c99}.sub{color:var(--muted);font-size:.78rem;line-height:1.4;margin:5px 0 0}.head-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.account-btn{position:relative;flex:0 0 auto;width:38px;height:38px;border-radius:50%;border:1px solid var(--line-strong);background:var(--panel-2);color:var(--muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.account-btn svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.8}.account-btn:after{content:"";position:absolute;right:-1px;top:-1px;width:10px;height:10px;border-radius:50%;border:2px solid var(--bg);background:var(--faint)}.account-btn.synced:after{background:var(--good)}.account-btn.syncing:after{background:var(--accent)}.account-btn.error:after{background:var(--danger)}.account-btn.offline:after{background:var(--muted)}section,.card{background:linear-gradient(180deg,var(--panel),var(--bg-2));border:1px solid var(--line);border-radius:var(--radius);padding:16px;margin-bottom:14px;box-shadow:var(--shadow)}section>h2{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:var(--faint);margin:0 0 12px}label{display:block;font-size:.76rem;color:var(--muted);margin-bottom:5px}input[type=text],select{width:100%;padding:11px 12px;font-size:16px;background:var(--panel-2);color:var(--text);border:1px solid var(--line);border-radius:var(--radius-sm);outline:none;transition:border-color .15s,box-shadow .15s}input[type=text]:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #e3b23c29}input[type=color]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:54px;height:46px;padding:0;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel-2);cursor:pointer}input[type=color]::-webkit-color-swatch-wrapper{padding:4px}input[type=color]::-webkit-color-swatch{border:none;border-radius:7px}.row{display:flex;gap:10px;align-items:center}.row>*{min-width:0}.row input[type=text],.row select{flex:1;width:auto}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:11px 15px;font-size:.9rem;font-weight:600;border-radius:var(--radius-sm);border:1px solid transparent;cursor:pointer;transition:transform .05s,filter .15s,background .15s}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:default}.btn-primary{background:linear-gradient(180deg,var(--accent-2),var(--accent));color:var(--accent-ink)}.btn-primary:hover{filter:brightness(1.05)}.btn-ghost{background:var(--panel-2);color:var(--text);border-color:var(--line-strong)}.pill{display:inline-flex;align-items:center;gap:5px;font-size:.78rem;font-weight:500;padding:6px 12px;border-radius:999px;border:1px solid var(--line-strong);background:var(--panel-2);color:var(--muted);cursor:pointer}.pill:active{transform:translateY(1px)}.pill.accent{color:var(--accent);border-color:#e3b23c80;background:#e3b23c1a}.pill.danger{color:var(--danger);border-color:#ff6f6f59;background:#ff6f6f14}.icon-btn{background:transparent;border:none;color:var(--muted);font-size:1rem;cursor:pointer;padding:4px 6px;border-radius:8px}.icon-btn:hover{color:var(--text);background:var(--panel-2)}.toggles{display:flex;flex-wrap:wrap;gap:12px 16px;margin-top:12px;font-size:.82rem}.toggles label{display:inline-flex;align-items:center;gap:7px;color:var(--text);margin:0;cursor:pointer}.toggles input[type=checkbox]{width:17px;height:17px;accent-color:var(--accent)}.swatch{border-radius:9px;flex:0 0 auto;box-shadow:inset 0 0 0 1px #ffffff24,inset 0 0 0 3px #00000040}.mix{display:flex;gap:12px;align-items:flex-start;padding:13px 0;border-top:1px solid var(--line)}.mix:first-of-type{border-top:none;padding-top:2px}.mix .body{flex:1;min-width:0}.mix .recipe{font-size:.95rem;font-weight:600}.mix .meta{font-size:.78rem;color:var(--muted);margin-top:3px;line-height:1.45}.tag{font-size:.74rem;color:var(--faint)}.dbadge{flex:0 0 auto;font-size:.72rem;font-weight:700;font-variant-numeric:tabular-nums;padding:3px 9px;border-radius:999px;border:1px solid currentColor;white-space:nowrap}.q-great{color:var(--good);background:#63d29a1f}.q-good{color:#4fd6c4;background:#4fd6c41f}.q-ok{color:var(--accent);background:#e3b23c1f}.q-bad{color:var(--danger);background:#ff6f6f1f}.muted{color:var(--muted);font-size:.86rem}.verdict{font-size:.9rem;line-height:1.5;padding:12px;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--radius-sm);margin:0 0 12px}.paint-line{display:flex;align-items:center;gap:11px;padding:9px 0;font-size:.86rem}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:30;display:flex;justify-content:center;gap:4px;padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:#0e0f14e6;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line)}.tabbar .tab{flex:1;max-width:130px;display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 2px;background:none;border:none;color:var(--faint);font-size:.66rem;font-weight:600;letter-spacing:.02em;cursor:pointer;border-radius:10px}.tabbar .tab svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.8}.tabbar .tab.active{color:var(--accent);background:#e3b23c1a}.tabbar .tab .count{font-variant-numeric:tabular-nums}footer{color:var(--faint);font-size:.72rem;text-align:center;margin-top:6px}
