.app{width:min(720px,calc(100% - 2rem));margin:0 auto;padding:2.25rem 0 3.5rem;animation:rise .7s ease both}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.brand{margin-bottom:1.85rem}.brand__top{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem 1rem}.user-chip{display:flex;align-items:center;gap:.55rem;max-width:100%;padding:.35rem .45rem .35rem .35rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:#24283bb8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.user-chip__avatar{width:1.75rem;height:1.75rem;border-radius:50%;object-fit:cover}.user-chip__email{font-size:.88rem;color:var(--ink-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:12rem}.user-chip__balance{min-width:1.5rem;padding:.15rem .45rem;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:#ff9e6424;color:var(--ink);font-size:.82rem;font-variant-numeric:tabular-nums;text-align:center}.btn--ghost{background:transparent;border:1px solid var(--line-strong);color:var(--ink-soft);padding:.4rem .75rem;font-size:.85rem;border-radius:var(--radius-sm)}.btn--ghost:not(:disabled):hover{border-color:var(--ink-muted);color:var(--ink);background:#c0caf50f}.login-panel{align-items:start}.google-btn{min-height:2.75rem}.install-banner{position:sticky;top:0;z-index:20;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin:0 0 1.15rem;padding:.95rem 1.1rem;border:1px solid var(--line-strong);border-radius:var(--radius);background:linear-gradient(135deg,rgba(255,158,100,.16),transparent 55%),var(--paper-raised);color:var(--ink);box-shadow:var(--shadow);animation:rise .45s ease both}.install-banner__text{display:grid;gap:.15rem;min-width:min(100%,16rem)}.install-banner__text strong{font-family:var(--font-display);font-size:1.05rem;font-weight:700;letter-spacing:-.02em}.install-banner__text span{font-size:.9rem;color:var(--ink-soft);line-height:1.35}.install-banner__actions{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}.install-banner__btn{padding:.55rem .9rem}.install-banner .btn--ghost{color:var(--ink-soft);border-color:var(--line-strong)}.brand__mark{margin:0;font-family:var(--font-display);font-size:clamp(2.75rem,8.5vw,4rem);font-weight:800;letter-spacing:-.045em;line-height:.92;background:linear-gradient(120deg,#c0caf5,#7aa2f7 45%,#ff9e64);-webkit-background-clip:text;background-clip:text;color:transparent}.brand__title{margin:.8rem 0 .45rem;font-family:var(--font-display);font-size:clamp(1.45rem,4.2vw,1.9rem);font-weight:700;letter-spacing:-.03em;color:var(--ink)}.brand__lede{margin:0;max-width:34rem;color:var(--ink-soft);line-height:1.5;font-size:1.02rem}.panel{display:grid;gap:1.45rem;padding:1.15rem 0 0}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:.7rem}.section-head h2{margin:0;font-family:var(--font-display);font-size:1.2rem;font-weight:700;letter-spacing:-.02em}.muted{color:var(--ink-soft)}.photo-actions{display:flex;flex-wrap:wrap;gap:.65rem}.thumb-grid{list-style:none;margin:1rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:.7rem}.thumb{position:relative;aspect-ratio:1;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper-deep);animation:fade-in .35s ease both}@keyframes fade-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.thumb img{width:100%;height:100%;object-fit:cover}.thumb__remove{position:absolute;top:.3rem;right:.3rem;width:1.65rem;height:1.65rem;border:0;border-radius:50%;background:#16161ec7;color:#fff;line-height:1;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.textarea{width:100%;resize:vertical;min-height:7rem;padding:.9rem 1rem;border:1px solid var(--line);border-radius:var(--radius);background:#16161eb8;color:var(--ink);transition:border-color .15s ease,background .15s ease}.textarea::placeholder{color:var(--ink-muted)}.textarea:focus{outline:none;border-color:#ff9e648c;background:#24283bd9;box-shadow:0 0 0 3px var(--accent-soft)}.currency-row{display:flex;align-items:center;gap:.75rem}.currency-row select{padding:.5rem .75rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper-deep);color:var(--ink)}.btn{border:1px solid transparent;border-radius:var(--radius-sm);padding:.8rem 1.15rem;transition:transform .15s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:not(:disabled):active{transform:translateY(1px)}.btn--primary{background:linear-gradient(180deg,#ffb07a 0%,var(--accent) 45%,var(--accent-deep) 100%);color:#1a1b26;border-color:transparent;font-weight:700;letter-spacing:.01em;box-shadow:0 8px 24px #ff9e6438}.btn--cta{width:100%;padding:1.2rem 1.25rem;font-size:1.18rem;font-family:var(--font-display);font-weight:700;border-radius:var(--radius);letter-spacing:-.02em}.empty-hint{margin:.25rem 0 0}.appraisal-grid{list-style:none;margin:.25rem 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.appraisal-card{display:grid;gap:0;width:100%;padding:0;border:1px solid var(--line);border-radius:var(--radius);background:#24283ba6;text-align:left;color:inherit;overflow:hidden;transition:border-color .15s ease,transform .15s ease,background .15s ease,box-shadow .15s ease}.appraisal-card:hover{border-color:#ff9e6466;background:var(--paper-hover);box-shadow:0 12px 28px #00000047}.appraisal-card__main{display:grid;gap:.5rem;width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.appraisal-card__main:active{transform:translateY(1px)}.appraisal-card__usage{padding:0 .55rem .65rem}.appraisal-card__cover{position:relative;aspect-ratio:1;background:linear-gradient(145deg,rgba(122,162,247,.12),transparent 60%),var(--paper-deep);overflow:hidden}.appraisal-card__cover img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;max-width:none;object-fit:cover}.appraisal-card__placeholder{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--ink-muted);font-size:.85rem}.appraisal-card__meta{display:grid;gap:.2rem;padding:0 .7rem .8rem}.appraisal-card__price{font-family:var(--font-display);font-weight:700;font-size:1.1rem;letter-spacing:-.02em;color:var(--accent)}.appraisal-card__title{font-size:.92rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.appraisal-card__date{font-size:.8rem;color:var(--ink-muted)}.detail-photos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.65rem}.detail-photos__item{position:relative;aspect-ratio:1;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper-deep)}.detail-photos__item img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;max-width:none;object-fit:cover}.detail-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.35rem}.result__id{margin:0;font-size:.85rem;word-break:break-all}.result__id code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.84em;color:var(--ink-soft)}.result__id-row{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin:0 0 .55rem}.public-toggle{display:inline-flex;align-items:center;gap:.55rem;cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--ink-soft);font-size:.88rem}.public-toggle input{position:absolute;opacity:0;width:1px;height:1px;overflow:hidden}.public-toggle__track{position:relative;width:2.4rem;height:1.35rem;border-radius:999px;background:#565f898c;border:1px solid var(--line-strong);transition:background .15s ease,border-color .15s ease;flex-shrink:0}.public-toggle__track:after{content:"";position:absolute;top:.12rem;left:.12rem;width:1rem;height:1rem;border-radius:50%;background:#c0caf5;transition:transform .15s ease}.public-toggle input:checked+.public-toggle__track{background:#9ece6a59;border-color:#9ece6a8c}.public-toggle input:checked+.public-toggle__track:after{transform:translate(1.05rem);background:var(--ok)}.public-toggle input:focus-visible+.public-toggle__track{outline:2px solid var(--info);outline-offset:2px}.public-toggle input:disabled+.public-toggle__track{opacity:.55}.public-toggle__label{min-width:5.5rem}.public-badge{font-size:.8rem;color:var(--ok);border:1px solid rgba(158,206,106,.35);border-radius:var(--radius-sm);padding:.15rem .45rem}.btn--primary:not(:disabled):hover{background:linear-gradient(180deg,#ffc090 0%,#ffaa72 45%,var(--accent) 100%);box-shadow:0 10px 28px #ff9e644d}.btn--secondary{background:#24283bcc;color:var(--ink);border-color:var(--line-strong)}.btn--secondary:not(:disabled):hover{border-color:#7aa2f773;background:var(--paper-hover)}.error{margin:0;color:var(--danger)}.loading-hint{margin:0;animation:pulse 1.4s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.55}50%{opacity:1}}.progress-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:1.25rem;background:radial-gradient(ellipse at 30% 20%,rgba(255,158,100,.18),transparent 55%),radial-gradient(ellipse at 80% 80%,rgba(122,162,247,.14),transparent 50%),#0f1018e0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fade-in .25s ease both}.progress-overlay__panel{width:min(28rem,100%);display:grid;gap:.75rem;padding:1.6rem 1.4rem 1.4rem;background:linear-gradient(165deg,#2f334df2,#24283bfa);border:1px solid var(--line-strong);border-radius:calc(var(--radius) + 4px);box-shadow:var(--shadow);color:var(--ink);animation:rise .4s ease both}.progress-overlay__eyebrow{margin:0;font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted);font-weight:600}.progress-overlay__title{margin:0;font-family:var(--font-display);font-size:clamp(1.55rem,5vw,2rem);font-weight:800;letter-spacing:-.03em;line-height:1.15;animation:pulse 1.6s ease-in-out infinite}.progress-overlay__hint{margin:0 0 .35rem;font-size:.95rem;line-height:1.4}.progress-bar{position:relative;height:.7rem;overflow:hidden;background:#16161ed9;border:1px solid var(--line);border-radius:999px}.progress-bar__fill{height:100%;background:linear-gradient(90deg,var(--info) 0%,var(--accent) 100%);border-radius:inherit;transition:width .2s ease-out}.progress-bar__pct{margin:0;font-variant-numeric:tabular-nums;font-size:.9rem;color:var(--ink-soft)}.progress-stages{list-style:none;margin:.5rem 0 0;padding:0;display:grid;gap:.35rem}.progress-stage{display:grid;grid-template-columns:1.4rem 1fr;gap:.55rem;align-items:start;padding:.5rem .45rem;border-radius:var(--radius-sm);border-bottom:0;opacity:.4;transition:opacity .25s ease,transform .25s ease,background .25s ease}.progress-stage--running,.progress-stage--done,.progress-stage--empty,.progress-stage--error,.progress-stage--skipped{opacity:1}.progress-stage--running{transform:translate(2px);background:var(--accent-soft)}.progress-stage--skipped{opacity:.72}.progress-stage--empty{opacity:.88}.progress-stage--error{background:color-mix(in srgb,var(--danger) 12%,transparent)}.progress-stage__mark{font-size:.95rem;line-height:1.35;color:var(--ink-muted);text-align:center;font-weight:700}.progress-stage--running .progress-stage__mark{color:var(--accent);animation:pulse 1.1s ease-in-out infinite}.progress-stage--done .progress-stage__mark{color:var(--ok)}.progress-stage--empty .progress-stage__mark{color:var(--warn, #e0af68)}.progress-stage--error .progress-stage__mark{color:var(--danger)}.progress-stage--skipped .progress-stage__mark{color:var(--ink-muted)}.progress-stage__status{font-weight:500;color:var(--ink-muted);font-size:.88em}.progress-stage--error .progress-stage__status{color:var(--danger)}.progress-stage--empty .progress-stage__status{color:var(--warn, #e0af68)}.progress-stage__body{display:grid;gap:.15rem;min-width:0}.progress-stage__label{font-size:1rem;font-weight:600;line-height:1.3}.progress-stage--pending .progress-stage__label{font-weight:500}.progress-stage__detail{font-size:.85rem;color:var(--ink-soft);line-height:1.35}.result__label{margin:0;text-transform:uppercase;letter-spacing:.1em;font-size:.78rem;font-weight:600;color:var(--ink-muted)}.result__price{margin:.4rem 0 .25rem;font-family:var(--font-display);font-size:clamp(2.6rem,9.5vw,3.8rem);font-weight:800;letter-spacing:-.04em;line-height:1;background:linear-gradient(120deg,#ff9e64,#e0af68 55%,#c0caf5);-webkit-background-clip:text;background-clip:text;color:transparent;animation:rise .55s ease both}.result__range,.result__confidence{margin:.25rem 0 0}.result__block{padding-top:1rem;margin-top:.35rem;border-top:1px solid var(--line)}.result__block h2,.result__block h3{margin:0 0 .45rem;font-family:var(--font-display);letter-spacing:-.02em}.result__block h2{font-size:1.35rem;font-weight:700}.result__block h3{font-size:1.1rem;font-weight:700;color:var(--ink-soft)}.result__block p{margin:0;line-height:1.55}.result__usage{margin-top:.85rem}.usage-disclosure{border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--surface) 88%,var(--ink) 4%);overflow:hidden}.usage-disclosure--compact{border-radius:8px}.usage-disclosure__toggle{display:flex;align-items:center;gap:.45rem;width:100%;padding:.55rem .7rem;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.usage-disclosure--compact .usage-disclosure__toggle{padding:.4rem .55rem;font-size:.85rem}.usage-disclosure__toggle:hover{background:color-mix(in srgb,var(--accent) 8%,transparent)}.usage-disclosure__summary{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.usage-disclosure__chevron{color:var(--ink-muted);font-size:.75rem}.usage-disclosure__panel{padding:0 .75rem .75rem;border-top:1px solid var(--line);font-size:.88rem;line-height:1.45}.usage-disclosure__panel section+section{margin-top:.65rem}.usage-disclosure__panel h4{margin:.65rem 0 .25rem;font-size:.78rem;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-muted)}.usage-disclosure__panel ul{margin:0;padding-left:1rem}.usage-disclosure__panel li+li{margin-top:.3rem}.usage-disclosure__panel p{margin:0}.usage-tier{display:inline-block;margin-left:.4rem;padding:.05rem .35rem;border-radius:4px;font-size:.72rem;font-weight:600;letter-spacing:.02em;vertical-align:middle}.usage-tier--free{color:color-mix(in srgb,var(--ink-muted) 90%,var(--ink));background:color-mix(in srgb,var(--ink-muted) 14%,transparent)}.usage-tier--tier1{color:color-mix(in srgb,var(--accent) 85%,var(--ink));background:color-mix(in srgb,var(--accent) 16%,transparent)}.rec-list,.comp-list{margin:0;padding-left:1.15rem;line-height:1.55}.rec-list li+li,.comp-list li+li{margin-top:.4rem}.comp-list__item--untrusted>a{text-decoration-style:dashed;opacity:.85}.comp-trust{font-size:.85em}.comp-trust--suspicious{color:#e0af68}.comp-trust--dead{color:#f7768e}.ebay-block__landscape,.firstdibs-block__landscape,.catawiki-block__landscape{margin:0 0 .45rem}.ebay-block__notes,.firstdibs-block__notes,.catawiki-block__notes{margin:0 0 .55rem;line-height:1.5}.footer{margin-top:2.25rem;padding-top:1.25rem;border-top:1px solid var(--line);font-size:.88rem;color:var(--ink-muted)}.stat-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.stat-grid li{display:grid;gap:.2rem;padding:.85rem .95rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:#24283b73}.stat-grid__value{font-family:var(--font-display);font-size:1.55rem;font-weight:700;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.stat-grid__label{color:var(--ink-soft);font-size:.88rem}.api-key-row,.account-form-row{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center}.api-key{flex:1 1 14rem;display:block;overflow-x:auto;padding:.65rem .75rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper-deep);font-size:.82rem;word-break:break-all}.text-input{flex:1 1 12rem;min-width:0;padding:.65rem .75rem;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--paper-deep);color:var(--ink);font:inherit}.text-input--narrow{flex:0 0 5.5rem;width:5.5rem}.text-input:focus{outline:2px solid rgba(255,158,100,.35);outline-offset:1px}.field-label{display:grid;gap:.35rem;color:var(--ink-soft);font-size:.88rem}.success{margin:0;color:#9dcea8;font-size:.95rem}.linkish{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;padding:0;margin:0;background:none;color:var(--accent, #ff9e64);text-decoration:underline;cursor:pointer;font:inherit}.coupon-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius-sm)}.coupon-table{width:100%;border-collapse:collapse;font-size:.9rem}.coupon-table th,.coupon-table td{padding:.65rem .75rem;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}.coupon-table th{color:var(--ink-soft);font-weight:600;background:#24283b8c}.coupon-table tr:last-child td{border-bottom:0}.coupon-table code{font-size:.82rem;word-break:break-all}@media(max-width:520px){.app{width:min(100% - 1.25rem,720px);padding-top:1.5rem}.btn--primary{width:100%}.user-chip__email{max-width:8.5rem}}:root{--ink: #c0caf5;--ink-soft: #a9b1d6;--ink-muted: #565f89;--paper: #1a1b26;--paper-raised: #24283b;--paper-deep: #16161e;--paper-hover: #2f334d;--accent: #ff9e64;--accent-deep: #ff8a4a;--accent-soft: rgba(255, 158, 100, .16);--line: rgba(192, 202, 245, .12);--line-strong: rgba(192, 202, 245, .22);--ok: #9ece6a;--warn: #e0af68;--danger: #f7768e;--info: #7aa2f7;--shadow: 0 20px 48px rgba(0, 0, 0, .45);--radius: 10px;--radius-sm: 6px;--font-display: "Syne", "Segoe UI", sans-serif;--font-body: "DM Sans", "Segoe UI", sans-serif;color:var(--ink);background:var(--paper);font-family:var(--font-body);font-size:16px;line-height:1.5;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;color-scheme:dark}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{min-height:100dvh;background:radial-gradient(900px 520px at 8% -8%,rgba(255,158,100,.14),transparent 55%),radial-gradient(780px 480px at 96% 4%,rgba(122,162,247,.12),transparent 50%),radial-gradient(640px 420px at 50% 110%,rgba(187,154,247,.08),transparent 55%),linear-gradient(180deg,#1f2030 0%,var(--paper) 42%,var(--paper-deep) 100%)}button,input,textarea,select{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}a{color:var(--info);text-decoration-thickness:1px;text-underline-offset:.15em}a:hover{color:var(--accent)}::selection{background:#ff9e6447;color:#fff}
