@import "https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap";:root{--bg:#f7efe2;--panel:#fffaf2;--ink:#231a13;--muted:#6e6154;--accent-strong:#8a4f11;--selection:#e39d373d;color:var(--muted);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at 0 0,#efcd9a66,#0000 26%),linear-gradient(#fbf5ea,#f4eadb 62%,#efe4d2);font:17px/1.55 Montserrat,Avenir Next,Segoe UI,sans-serif}*{box-sizing:border-box}::selection{background:var(--selection)}html{scroll-behavior:smooth}body{min-height:100svh;margin:0}#root{min-height:100svh}h1,h2,h3,strong{color:var(--ink)}h1,h2,h3{margin:0;font-family:Montserrat,Avenir Next,Segoe UI,sans-serif;line-height:1.02}h1{letter-spacing:-.05em;max-width:13ch;font-size:clamp(3rem,7vw,5.2rem)}h2{letter-spacing:-.03em;font-size:clamp(1.6rem,3vw,2.35rem)}h3{margin-bottom:10px;font-size:1.5rem}p{margin:0}button,input,textarea,select{font:inherit}.app-shell{gap:28px;padding:32px;display:grid;position:relative}.app-shell:before,.app-shell:after{content:"";pointer-events:none;z-index:0;position:fixed;inset:auto}.app-shell:before{background:radial-gradient(circle,#ebab4547,#0000 68%);border-radius:50%;width:32rem;height:32rem;animation:16s ease-in-out infinite drift;top:-10rem;right:-6rem}.app-shell:after{background:radial-gradient(circle,#195e4e2e,#0000 70%);border-radius:50%;width:28rem;height:28rem;animation:18s ease-in-out infinite reverse drift;bottom:-10rem;left:-8rem}.hero-panel,.scanner-panel,.results-panel{z-index:1;background:linear-gradient(180deg, #fffaf0eb, #fffffff5), var(--panel);border:1px solid #56493c1f;border-radius:28px;position:relative;overflow:hidden;box-shadow:0 24px 70px #42332624}.hero-panel{padding:42px}.eyebrow,.scanner-kicker{text-transform:uppercase;letter-spacing:.16em;color:var(--accent-strong);margin:0 0 12px;font-size:.75rem}.lede{max-width:40rem;font-size:1.06rem}.action-row{flex-wrap:wrap;align-items:center;gap:14px;margin:28px 0 20px;display:flex}.download-row{margin:0 0 20px}.download-link{color:var(--ink);background:#11483e14;border:1px solid #11483e1f;border-radius:999px;align-items:center;gap:.45rem;padding:.8rem 1rem;text-decoration:none;transition:transform .16s,background .16s;display:inline-flex}.download-link:hover{background:#11483e1f;transform:translateY(-1px)}.primary-button,.ghost-button{appearance:none;font:inherit;cursor:pointer;border:none;border-radius:999px;transition:transform .16s,box-shadow .16s,background .16s}.primary-button{color:#fbf7f0;background:linear-gradient(135deg,#11483e,#0c6558);padding:.92rem 1.5rem;box-shadow:0 18px 30px #11483e38}.primary-button:hover,.ghost-button:hover{transform:translateY(-1px)}.primary-button:disabled{cursor:wait;opacity:.7;transform:none}.ghost-button{color:var(--ink);background:#11483e14;padding:.82rem 1.25rem}.stat-pill{color:var(--ink);background:#ebab4524;border-radius:999px;align-items:center;gap:10px;padding:.75rem 1rem;display:inline-flex}.stat-pill strong{font-size:1.2rem}.instruction-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:28px;display:grid}.instruction-grid article,.empty-state{background:#ffffffb8;border:1px solid #56493c1a;border-radius:20px;padding:22px}.error-banner{color:#772b1c;background:#cc604024;border-radius:16px;margin:0;padding:12px 14px}.scanner-panel,.results-panel{padding:24px}.scanner-topbar,.results-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.camera-stage{background:radial-gradient(circle at top,#ffffff2e,#0000 45%),#10211c;border-radius:24px;width:100%;position:relative;overflow:hidden}.camera-feed,.camera-overlay,.camera-scrim{position:absolute;inset:0}.camera-feed{object-fit:cover;width:100%;height:100%}.camera-scrim{background:linear-gradient(#05110e24,#05110e42)}.camera-overlay{pointer-events:none}.match-tag{color:#f5f2eb;background:#0a1c162e;border:2px solid #eff5eae0;border-radius:16px;justify-content:space-between;align-items:flex-start;padding:8px 10px;display:flex;position:absolute;box-shadow:inset 0 0 0 1px #ffffff2e}.match-tag span,.match-tag strong{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0a1712b8;border-radius:999px;padding:.24rem .48rem}.match-tag strong{color:#ffd585;font-size:1.1rem}.overlay-card{color:#f2efe8;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#081612b8;border-radius:18px;padding:12px 14px;position:absolute}.overlay-card p{color:#f2efe8b8;margin-bottom:4px;font-size:.84rem}.overlay-card strong{font-size:1.35rem}.overlay-status{top:18px;left:18px}.overlay-captured{top:18px;right:18px}.results-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.result-column{background:#ffffffb8;border:1px solid #56493c1a;border-radius:22px;padding:20px}.result-column header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.answer-badge{color:#fffaf0;background:linear-gradient(135deg,#b96f1c,#e39d37);border-radius:50%;justify-content:center;align-items:center;width:2.3rem;height:2.3rem;font-weight:700;display:inline-flex}.result-column ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.result-column li{background:#11483e0f;border-radius:14px;padding:.85rem .95rem}.muted{color:var(--muted)}.processing-canvas{display:none}@keyframes drift{0%,to{transform:translate(0,0)}50%{transform:translateY(20px)}}@media (width<=900px){.app-shell{padding:18px}.hero-panel,.scanner-panel,.results-panel{border-radius:22px}.hero-panel{padding:28px 20px}.instruction-grid,.results-grid{grid-template-columns:1fr}.scanner-topbar,.results-header{flex-direction:column;align-items:flex-start}.overlay-captured{top:auto;bottom:18px;right:18px}}
