:root{--bg: #0a0a0a;--surface: #161616;--surface-2: #1f1f1f;--ink: #ffffff;--ink-soft: #a1a1aa;--accent: #fb923c;--accent-deep: #c2410c;--success: #22c55e;--error: #ef4444;--border: #2a2a2a}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html,body,#root{width:100%;min-height:100%;background:var(--bg);color:var(--ink);font-family:Inter,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;overflow:auto}body{background:var(--bg)}button,input,svg{font:inherit}.screen{position:absolute;top:0;right:0;bottom:0;left:0;display:none;align-items:center;justify-content:center;padding:24px;background:radial-gradient(circle at 30% 20%,rgba(251,146,60,.15),transparent 50%),radial-gradient(circle at 70% 80%,rgba(194,65,12,.1),transparent 50%),var(--bg)}.screen.active{display:flex}.welcome-card{width:min(100%,760px);display:flex;flex-direction:column;align-items:center;text-align:center}.icon-wrap{width:92px;height:92px;margin-bottom:20px;border-radius:22px;display:grid;place-items:center;background:linear-gradient(180deg,#ffb066,#f97316);box-shadow:0 0 32px #f97316b3}.icon-wrap svg,.perm-icon svg,.btn-primary svg{width:30px;height:30px;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.business-tag{font-size:.76rem;letter-spacing:.15em;text-transform:uppercase;color:#ffffffe6;font-weight:700;margin-bottom:12px}h1{font-size:clamp(2.8rem,5vw,5rem);line-height:.96;letter-spacing:-.07em;font-weight:800;margin:0}.lead{max-width:700px;margin-top:18px;font-size:clamp(1.05rem,1.8vw,1.5rem);line-height:1.5;color:var(--ink-soft)}.perms-list{width:min(100%,540px);background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:14px 18px;margin-top:30px;display:grid;gap:10px}.perm-row{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:14px;text-align:left;padding:8px 0}.perm-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:#ffffff0d;color:var(--accent)}.perm-icon svg{width:18px;height:18px}.perm-text{display:flex;flex-direction:column;gap:4px}.perm-text strong{font-size:1.02rem;font-weight:700}.perm-text span{color:var(--ink-soft);font-size:1rem}.btn-primary{margin-top:28px;width:min(100%,500px);border:1px solid rgba(255,255,255,.14);border-radius:18px;background:#fffffff5;color:#111827;height:64px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-size:clamp(1.6rem,2vw,2rem);font-weight:700;cursor:pointer;box-shadow:0 6px 30px #ffffff14}.btn-primary svg{width:20px;height:20px;stroke:#111827}.permission-error{margin-top:18px;padding:12px 14px;border-radius:10px;background:#ef44441f;border:1px solid rgba(239,68,68,.4);color:#fecaca;font-size:.95rem;max-width:560px}.capture-view{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 30% 20%,rgba(251,146,60,.12),transparent 50%),var(--bg);padding:20px}.capture-shell{width:min(100%,980px);min-height:90vh;display:flex;flex-direction:column;gap:18px}.capture-header{display:flex;align-items:center;justify-content:center;padding-top:8px}.header-title{font-size:1.1rem;letter-spacing:.14em;text-transform:uppercase;color:#fffc}.camera-panel{position:relative;width:100%;min-height:72vh;border-radius:28px;overflow:hidden;background:#070707;border:1px solid rgba(255,255,255,.08)}.camera-video,.result-image{width:100%;height:100%;object-fit:cover;display:block}.capture-button{position:absolute;left:50%;bottom:26px;transform:translate(-50%);width:86px;height:86px;border:0;border-radius:50%;background:#ffffff1f;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);box-shadow:inset 0 0 0 6px #ffffff24;cursor:pointer}.capture-ring{display:block;width:62px;height:62px;margin:12px auto;border-radius:50%;background:#fff;box-shadow:0 0 0 3px #ffffff1f}.result-panel{display:grid;gap:18px;padding-bottom:32px}.result-actions{display:flex;flex-wrap:wrap;gap:12px}.result-footer-actions{position:sticky;bottom:0;padding-top:8px;background:#0a0a0ad9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding-bottom:8px}.result-actions button,.contact-panel button,.file-picker,.row button{min-height:44px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:#ffffff0f;color:var(--ink);padding:0 18px;cursor:pointer}.result-actions .secondary,.row .secondary,.contact-panel .secondary{background:#ffffff08}.whatsapp-button{background:linear-gradient(180deg,#2dd14d,#1ea93d)!important;border-color:#26a244b3!important;color:#fff!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;font-weight:700!important;box-shadow:0 8px 24px #24ba4b52!important}.whatsapp-icon{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center}.whatsapp-icon svg{width:18px;height:18px;fill:currentColor}.result-image{border-radius:28px;min-height:420px;border:1px solid rgba(255,255,255,.08)}.result-details{display:grid;gap:18px}.map-wrap{width:100%;border-radius:20px;overflow:hidden;height:250px;border:1px solid rgba(255,255,255,.08)}.map-wrap iframe{width:100%;height:100%;border:0}.location-box{display:flex;flex-direction:column;gap:8px;padding:16px 18px;border-radius:16px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);color:var(--ink-soft)}.location-box strong{color:var(--ink);font-size:1rem}.contact-panel{padding:20px;border-radius:20px;background:#ffffff05;border:1px solid rgba(255,255,255,.08)}.contact-panel h2{margin-bottom:8px}.contact-panel p{color:var(--ink-soft);margin-bottom:14px}.row{display:flex;flex-wrap:wrap;gap:12px}.contact-actions{margin-bottom:18px}.file-picker{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:0 18px;min-height:42px;border-radius:10px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);cursor:pointer;color:var(--ink)}.file-picker input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.manual-contact{margin-top:12px}.manual-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-bottom:12px}.manual-grid input{width:100%;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:var(--ink);border-radius:10px;padding:12px 14px}.contacts ul{list-style:none;padding:0;display:grid;gap:8px}.contacts li{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border-radius:10px;background:#ffffff08;border:1px solid rgba(255,255,255,.06)}.error{margin-top:12px;color:#fca5a5}@media (max-width: 640px){.screen{padding:18px}.icon-wrap{width:76px;height:76px;border-radius:18px}.business-tag{letter-spacing:.12em}.lead{max-width:480px}.perms-list{padding:12px 14px}.perm-row{gap:10px}.btn-primary{width:100%;height:58px}.camera-panel{min-height:58vh}.capture-button{width:74px;height:74px}.capture-ring{width:52px;height:52px}}
