@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Lora:ital,wght@0,400;0,500;0,600;0,700;1,500&family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--primary-50: #FDF1EF;--primary-100: #FBDFDA;--primary-200: #F6BDB3;--primary-300: #EE9384;--primary-400: #E66554;--primary-500: #E03E2D;--primary-600: #C42E1F;--primary-700: #9D2417;--primary-800: #761A11;--primary-900: #4F110B;--primary: var(--primary-500);--primary-hover: var(--primary-600);--primary-press: var(--primary-700);--primary-on: #FFFFFF;--primary-soft: var(--primary-50);--ink: #1A1816;--ink-2: #3A3633;--ink-3: #6A6460;--ink-4: #9A938D;--ink-5: #C4BDB6;--line: #E8E2DA;--line-strong:#D6CFC5;--paper: #FAF7F2;--paper-2: #F4EFE7;--surface: #FFFFFF;--paper-admin:#F7F8FA;--fg1: var(--ink);--fg2: var(--ink-2);--fg3: var(--ink-3);--fg4: var(--ink-4);--bg: var(--paper);--bg-elevated: var(--surface);--border: var(--line);--status-new-fg: #1F4FBF;--status-new-bg: #E7EEFC;--status-contacted-fg: #8A4A00;--status-contacted-bg: #FCEFD8;--status-progress-fg: #5B2BB8;--status-progress-bg: #ECE3FB;--status-won-fg: #036B4A;--status-won-bg: #DCF4E8;--status-lost-fg: #5C5853;--status-lost-bg: #ECE8E1;--cat-customer: #10B981;--cat-prospect: #3B82F6;--cat-supplier: #F59E0B;--cat-dealer: #8B5CF6;--cat-investor: #EC4899;--cat-other: #6B7280;--ai-fg: #4B2A8A;--ai-bg: #F1ECFB;--ai-line:#DCCEFA;--focus-ring: color-mix(in oklch, var(--primary-500) 60%, transparent);--font-sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display: "Lora", "Iowan Old Style", Georgia, serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--fs-12: 12px;--lh-12: 16px;--fs-13: 13px;--lh-13: 18px;--fs-14: 14px;--lh-14: 20px;--fs-15: 15px;--lh-15: 22px;--fs-16: 16px;--lh-16: 24px;--fs-18: 18px;--lh-18: 26px;--fs-20: 20px;--lh-20: 28px;--fs-24: 24px;--lh-24: 32px;--fs-30: 30px;--lh-30: 36px;--fs-36: 36px;--lh-36: 42px;--fs-48: 48px;--lh-48: 54px;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 24px;--s-6: 32px;--s-7: 48px;--s-8: 64px;--r-sm: 4px;--r-md: 8px;--r-lg: 12px;--r-xl: 16px;--r-pill: 999px;--shadow-sm: 0 1px 2px rgb(26 24 22 / .04);--shadow-md: 0 4px 12px rgb(26 24 22 / .06), 0 1px 2px rgb(26 24 22 / .04);--shadow-lg: 0 12px 32px rgb(26 24 22 / .1), 0 2px 6px rgb(26 24 22 / .05);--ease-out: cubic-bezier(.2, .8, .2, 1);--dur-1: .12s;--dur-2: .18s;--dur-3: .24s}html,body{background:var(--bg);color:var(--fg1);font-family:var(--font-sans);font-size:var(--fs-15);line-height:var(--lh-15);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,.h1{font-family:var(--font-display);font-size:var(--fs-48);line-height:var(--lh-48);font-weight:500;letter-spacing:-.015em;color:var(--fg1);margin:0}h2,.h2{font-family:var(--font-display);font-size:var(--fs-36);line-height:var(--lh-36);font-weight:500;letter-spacing:-.015em;color:var(--fg1);margin:0}h3,.h3{font-family:var(--font-sans);font-size:var(--fs-24);line-height:var(--lh-24);font-weight:600;letter-spacing:-.005em;color:var(--fg1);margin:0}h4,.h4{font-family:var(--font-sans);font-size:var(--fs-18);line-height:var(--lh-18);font-weight:600;color:var(--fg1);margin:0}h5,.h5,.eyebrow{font-family:var(--font-sans);font-size:var(--fs-12);line-height:var(--lh-12);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--fg3);margin:0}p,.body{font-size:var(--fs-15);line-height:var(--lh-15);color:var(--fg2);margin:0;text-wrap:pretty}.small{font-size:var(--fs-13);line-height:var(--lh-13);color:var(--fg3)}code,pre,.mono{font-family:var(--font-mono);font-size:var(--fs-13);line-height:var(--lh-13)}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:var(--r-sm)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}.app-shell{min-height:100%;padding:var(--s-7) var(--s-4);max-width:720px;margin:0 auto}@media (min-width: 720px){.app-shell{padding:var(--s-8) var(--s-5)}}.app-header h1{color:var(--primary)}.app-header .lead{margin-top:var(--s-2);margin-bottom:var(--s-7);color:var(--fg3);font-size:var(--fs-16);line-height:var(--lh-16)}.muted{color:var(--fg3)}.small{font-size:var(--fs-13);line-height:var(--lh-13)}.status-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s-5);box-shadow:var(--shadow-sm)}.status-card h2{font-family:var(--font-sans);font-size:var(--fs-20);line-height:var(--lh-20);font-weight:600;letter-spacing:-.005em;margin-bottom:var(--s-2);color:var(--fg1)}.status-card p{margin-bottom:var(--s-4)}.checklist{margin:0;padding-left:var(--s-5);color:var(--fg3);line-height:1.9}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:var(--font-sans);font-size:var(--fs-15);font-weight:500;line-height:1;border-radius:var(--r-md);padding:9px 16px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);cursor:pointer;min-height:44px;transition:background var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out),transform 80ms var(--ease-out)}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--primary);color:var(--primary-on)}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-secondary{background:var(--bg-elevated);color:var(--ink);border-color:var(--line-strong)}.btn-secondary:hover:not(:disabled){background:var(--paper-2)}.btn-ghost{background:transparent;color:var(--ink)}.btn-ghost:hover:not(:disabled){background:var(--paper-2)}.btn-danger{background:transparent;color:var(--primary-700);border-color:var(--primary-200)}.btn-danger:hover:not(:disabled){background:var(--primary-50)}.btn-lg{padding:14px 22px;font-size:var(--fs-16);min-height:52px}.actions-stack{display:flex;flex-direction:column;gap:var(--s-3)}.actions-stack .btn{width:100%}.captured-preview{width:100%;border-radius:var(--r-md);border:1px solid var(--border);background:var(--bg-elevated);margin-bottom:var(--s-4);display:block}.captured-thumb{width:100%;max-height:240px;object-fit:contain;border-radius:var(--r-md);border:1px solid var(--border);background:var(--bg-elevated);margin-bottom:var(--s-5);display:block}.loading-screen{min-height:60vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:var(--s-3)}.loading-screen h2{font-family:var(--font-sans);font-size:var(--fs-20);line-height:var(--lh-20);font-weight:600;letter-spacing:-.005em;margin:0}.loading-screen .captured-thumb{margin-bottom:var(--s-5)}.spinner{width:40px;height:40px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--primary);animation:spinner-rotate .8s linear infinite}@keyframes spinner-rotate{to{transform:rotate(360deg)}}.card-form{display:flex;flex-direction:column}.form-field{display:flex;flex-direction:column;gap:var(--s-1);margin-bottom:var(--s-4)}.form-field label{display:flex;align-items:center;gap:var(--s-2);font-size:var(--fs-12);font-weight:600;color:var(--fg2)}.form-field input,.form-field textarea{font-family:var(--font-sans);font-size:var(--fs-15);line-height:var(--lh-15);padding:10px 12px;background:var(--bg-elevated);border:1px solid var(--line-strong);border-radius:var(--r-md);color:var(--ink);outline:none;width:100%;transition:border-color var(--dur-1) var(--ease-out),box-shadow var(--dur-1) var(--ease-out)}.form-field input:focus,.form-field textarea:focus{border-color:var(--primary-400);box-shadow:0 0 0 3px var(--focus-ring)}.form-field textarea{resize:vertical;min-height:64px}.ai-badge{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:600;padding:2px 6px;border-radius:var(--r-pill);background:var(--ai-bg);color:var(--ai-fg);border:1px solid var(--ai-line);letter-spacing:.02em;text-transform:lowercase}.confidence-banner{display:block;padding:var(--s-3) var(--s-4);border-radius:var(--r-md);margin-bottom:var(--s-4);font-size:var(--fs-13);line-height:var(--lh-13);font-weight:500;border:1px solid transparent}.confidence-low{background:var(--status-contacted-bg);color:var(--status-contacted-fg);border-color:#8a4a002e}.confidence-medium{background:var(--status-new-bg);color:var(--status-new-fg);border-color:#1f4fbf2e}.toast{position:fixed;left:50%;bottom:calc(var(--s-5) + env(safe-area-inset-bottom));transform:translate(-50%);max-width:calc(100vw - var(--s-6));background:var(--ink);color:var(--paper);padding:var(--s-3) var(--s-5);border-radius:var(--r-pill);box-shadow:var(--shadow-lg);font-size:var(--fs-14);line-height:var(--lh-14);font-weight:500;z-index:1000;pointer-events:none;animation:toast-in var(--dur-2) var(--ease-out)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.camera{position:fixed;top:0;right:0;bottom:0;left:0;background:#000;color:#fff;display:flex;flex-direction:column}.camera-intro,.camera-message{margin:auto;padding:var(--s-7);max-width:420px;width:100%;text-align:center}.camera-intro h2,.camera-message h2{font-family:var(--font-display);font-size:var(--fs-24);line-height:var(--lh-24);font-weight:500;letter-spacing:-.015em;margin-bottom:var(--s-3);color:#fff}.camera-intro .muted,.camera-message .muted{color:#ffffffb3;margin-bottom:var(--s-5);line-height:1.5}.camera-intro .btn-secondary,.camera-intro .btn-ghost,.camera-message .btn-secondary,.camera-message .btn-ghost{background:transparent;color:#fff;border-color:#ffffff40}.camera-intro .btn-secondary:hover,.camera-intro .btn-ghost:hover,.camera-message .btn-secondary:hover,.camera-message .btn-ghost:hover{background:#ffffff14}.camera-stage{position:relative;flex:1;display:flex;flex-direction:column;overflow:hidden}.camera-video,.camera-preview-image{flex:1;width:100%;height:100%;object-fit:cover;background:#000}.camera-frame-guide{position:absolute;top:12%;right:8%;bottom:12%;left:8%;border:2px dashed rgba(255,255,255,.55);border-radius:var(--r-xl);pointer-events:none}.camera-controls{position:absolute;left:0;right:0;bottom:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--s-4);padding:var(--s-5) var(--s-5) calc(var(--s-5) + env(safe-area-inset-bottom));background:linear-gradient(to top,rgb(26 24 22 / .55),transparent)}.camera-controls .btn{background:#00000059;color:#fff;border:1px solid rgba(255,255,255,.25)}.camera-controls .btn:hover:not(:disabled){background:#00000080}.btn-shutter{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:72px;height:72px;border-radius:50%;border:4px solid rgba(255,255,255,.85);background:#fff;cursor:pointer;justify-self:center;box-shadow:0 0 0 3px #00000059;transition:transform 80ms var(--ease-out),background var(--dur-1) var(--ease-out)}.btn-shutter:active{transform:scale(.94);background:var(--primary)}
