:root{--background:#f3f8ff;--card:#fff;--ink:#10243f;--muted:#64748b;--line:#d7e6f8;--brand:#064ca3;--brand-dark:#053b7d;--brand-soft:#e5f3ff;--accent:#12b9e8;--warning:#fff7db;--warning-ink:#7a4c00;--success:#e5f3ff;--success-ink:#064ca3;--danger:#a33838}*{box-sizing:border-box}html{background:var(--background)}body{color:var(--ink);background:radial-gradient(circle at top left, #12b9e838, transparent 30rem), radial-gradient(circle at top right, #064ca32e, transparent 24rem), var(--background);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{font:inherit}.page-shell{width:min(100%,760px);min-height:100svh;margin:0 auto;padding:20px 14px 40px}.hero{padding:18px 4px 12px}.brand-lockup{align-items:center;gap:12px;margin-bottom:14px;display:flex}.brand-lockup img{border-radius:8px;width:74px;height:auto;display:block;box-shadow:0 10px 24px #064ca329}.eyebrow{color:var(--brand-dark);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:800}h1,h2,p{margin-top:0}h1{letter-spacing:0;max-width:12ch;margin-bottom:10px;font-size:clamp(2rem,10vw,3.45rem);line-height:.96}.hero-copy{max-width:34rem;color:var(--muted);margin-bottom:0;font-size:1rem;line-height:1.45}.panel{border:1px solid var(--line);background:#ffffffe0;border-radius:8px;margin-top:14px;padding:16px;box-shadow:0 16px 40px #064ca314}.section-heading{align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.section-heading h2{margin-bottom:3px;font-size:1.08rem}.section-heading p{color:var(--muted);margin-bottom:0;font-size:.92rem;line-height:1.35}.step{color:#fff;background:linear-gradient(135deg, var(--brand), var(--accent));border-radius:999px;flex:0 0 30px;place-items:center;width:30px;height:30px;font-weight:800;display:grid}.input{border:1px solid var(--line);width:100%;min-height:48px;color:var(--ink);background:#fff;border-radius:8px;outline:none;padding:12px 14px}.input:focus{border-color:var(--brand);box-shadow:0 0 0 4px #12b9e829}.input:disabled{color:#8c9693;background:#edf2f0}.product-input{min-height:56px;font-size:1.05rem}.chain-list,.results{gap:10px;margin-top:12px;display:grid}.chain-list{max-height:276px;padding-right:2px;overflow:auto}.chain-pill,.product-card{border:1px solid var(--line);width:100%;color:var(--ink);cursor:pointer;text-align:left;background:#fff;border-radius:8px}.chain-pill{justify-content:space-between;align-items:center;gap:10px;min-height:48px;padding:10px 12px;display:flex}.chain-pill span{font-weight:800}.chain-pill small{color:var(--muted);white-space:nowrap}.chain-pill.selected{border-color:var(--brand);background:linear-gradient(135deg, var(--brand-soft), #f7fcff)}.product-card{grid-template-columns:1fr auto;gap:12px;padding:14px;display:grid}.product-card strong{margin-bottom:6px;line-height:1.25;display:block}.product-card p{color:var(--muted);margin-bottom:3px;font-size:.88rem;line-height:1.35}.product-card span{color:var(--success-ink);background:var(--success);border-radius:999px;align-self:start;padding:5px 8px;font-size:.75rem;font-weight:800}.product-card.loaded{border-color:#064ca359}.product-card.loaded span{color:var(--success-ink);background:var(--success)}.status{color:var(--muted);margin:12px 0 0}.status.error{color:var(--danger)}.image-status{color:var(--brand-dark);background:var(--brand-soft);border-radius:8px;margin:12px 0 0;padding:10px 12px;font-size:.92rem;font-weight:800}.empty-state,.warning-card{color:var(--warning-ink);background:var(--warning);border-radius:8px;gap:6px;margin-top:12px;padding:14px;display:grid}.empty-state span,.warning-card span{color:var(--muted)}.result-panel h2{margin:12px 0 8px;font-size:1.15rem;line-height:1.25}.success-badge{width:fit-content;color:var(--success-ink);background:var(--success);border-radius:999px;padding:7px 10px;font-size:.86rem;font-weight:900;display:inline-flex}.result-copy{border:1px solid var(--line);color:var(--muted);background:#f8fbfa;border-radius:8px;padding:12px;line-height:1.45}.actions{gap:10px;display:grid}.primary-button,.secondary-button{border-radius:8px;justify-content:center;align-items:center;min-height:48px;font-weight:900;text-decoration:none;display:inline-flex}.primary-button{color:#fff;background:linear-gradient(135deg, var(--brand), var(--accent));cursor:pointer;border:0}.secondary-button{border:1px solid var(--brand);color:var(--brand-dark);background:#fff}@media (min-width:680px){.page-shell{padding-top:34px}h1{max-width:16ch}.actions{grid-template-columns:1fr 1fr}}
