.app{flex-direction:column;max-width:480px;min-height:100svh;margin:0 auto;display:flex}.page{flex-direction:column;flex:1;padding:24px 20px 80px;animation:.2s ease-out fade-in;display:flex}.page-header{margin-bottom:24px}.page-header h1{margin-bottom:8px;font-size:28px;font-weight:700}.page-header p{color:var(--text-muted);font-size:15px;line-height:1.5}.disclaimer{color:var(--text-muted);text-align:center;border-top:1px solid var(--border);margin-top:auto;padding:16px;font-size:12px;line-height:1.5}.card{padding:var(--spacing-card);background:var(--card-bg);border-radius:var(--radius-lg);border:var(--card-border);box-shadow:var(--card-shadow)}.card-inner{background:var(--bg);border-radius:var(--radius-md);box-shadow:var(--card-shadow);padding:12px}.nav-bar{background:var(--primary);border-top:1px solid var(--border);width:100%;max-width:480px;padding:8px 0;padding-bottom:max(8px, env(safe-area-inset-bottom));z-index:100;box-shadow:var(--nav-shadow);justify-content:space-around;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.nav-bar button{color:var(--text-muted);border-radius:var(--radius-md);min-width:60px;min-height:48px;box-shadow:none;background:0 0;border:none;flex-direction:column;align-items:center;gap:2px;padding:4px 8px;font-size:11px;display:flex}.nav-bar button.active{color:var(--accent-bright)}.nav-bar button .nav-icon{font-size:20px}.camera-viewfinder{flex-direction:column;gap:8px;display:flex}.camera-video-wrapper{border-radius:var(--radius-lg);background:#000;position:relative;overflow:hidden}.camera-video{object-fit:cover;width:100%;max-height:60vh;display:block}.camera-controls{gap:8px;display:flex}.camera-capture-btn{background:var(--accent-bright);color:#fff;border-radius:var(--radius-lg);cursor:pointer;min-height:48px;box-shadow:var(--btn-shadow);border:none;flex:2;justify-content:center;align-items:center;gap:6px;padding:12px 16px;font-size:15px;font-weight:600;display:flex}.camera-cancel-btn{background:var(--card-bg);color:var(--text);border-radius:var(--radius-lg);border:var(--card-border);cursor:pointer;flex:1;justify-content:center;align-items:center;min-height:48px;padding:12px 16px;font-size:15px;font-weight:600;display:flex}.shutter-overlay{opacity:0;pointer-events:none;z-index:5;background:#fff;position:absolute;inset:0}.shutter-overlay.shutter-flash{animation:.15s ease-out shutter-flash}@keyframes shutter-flash{0%{opacity:.8}to{opacity:0}}.scan-recording-dot{background:#ef4444;border-radius:50%;width:10px;height:10px;animation:1s ease-in-out infinite pulse-record}@keyframes pulse-record{0%,to{opacity:1}50%{opacity:.3}}@keyframes scan-pulse{0%{box-shadow:inset 0 0 0 2px #e9456099}to{box-shadow:inset 0 0 0 2px #0000}}.camera-video-wrapper.scanning{animation:1s ease-out scan-pulse}.ai-thinking-icon{font-size:32px;animation:1.5s ease-in-out infinite pulse-think}@keyframes pulse-think{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.ai-thinking-text{animation:.4s ease-out think-fade-in}@keyframes think-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.analyzing-skeleton{flex-direction:column;gap:10px;display:flex}.skeleton-header{align-items:center;gap:10px;display:flex}.skeleton-dot{background:linear-gradient(90deg, var(--border) 25%, var(--accent) 50%, var(--border) 75%);background-size:200% 100%;border-radius:50%;width:24px;height:24px;animation:1.5s ease-in-out infinite shimmer}.skeleton-line{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--border) 25%, var(--accent) 50%, var(--border) 75%);background-size:200% 100%;height:12px;animation:1.5s ease-in-out infinite shimmer}@keyframes toast-in{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes toast-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(100%)}}.toast-container{z-index:200;pointer-events:none;flex-direction:column;gap:8px;width:calc(100% - 40px);max-width:440px;display:flex;position:fixed;bottom:76px;left:50%;transform:translate(-50%)}.toast{background:var(--card-bg);color:var(--text);border-radius:var(--radius-md);border:1px solid var(--accent-bright);pointer-events:auto;padding:12px 16px;font-size:14px;font-weight:500;animation:.25s ease-out toast-in;box-shadow:0 4px 16px #00000040}.toast.exiting{animation:.2s ease-in forwards toast-out}.finding-card-enter{animation:.3s ease-out both card-slide-in}@keyframes card-slide-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.btn-bounce{animation:.4s ease-out btn-bounce}@keyframes btn-bounce{0%{transform:scale(.9)}60%{transform:scale(1.03)}to{transform:scale(1)}}@keyframes fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (orientation:landscape){.app{max-width:100%}.camera-video{max-height:50vh}.nav-bar{max-width:100%}}:root{--primary:#1a1a2e;--primary-light:#16213e;--accent:#0f3460;--accent-bright:#e94560;--text:#f1f1f1;--text-muted:#a0a0b0;--bg:#0f0f1a;--card-bg:#1a1a2e;--border:#2a2a3e;--success:#4ade80;--warning:#fbbf24;--critical:#ef4444;--moderate:#f59e0b;--cosmetic:#3b82f6;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--card-shadow:none;--card-border:1px solid var(--border);--btn-shadow:none;--spacing-card:16px;--nav-shadow:none;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{min-height:100svh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}button{cursor:pointer;border-radius:var(--radius-lg);border:none;min-width:48px;min-height:48px;font-family:inherit;font-size:16px}.btn-primary{background:var(--accent-bright);color:#fff;width:100%;box-shadow:var(--btn-shadow);padding:14px 28px;font-size:18px;font-weight:600;transition:opacity .2s}.btn-primary:active{opacity:.8}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--card-bg);color:var(--text);border:var(--card-border);width:100%;box-shadow:var(--btn-shadow);padding:12px 24px}
