*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--primary: #0ea5e9;--primary-dark: #0284c7;--accent: #6366f1;--success: #16a34a;--warning: #d97706;--danger: #dc2626;--bg: #0f172a;--bg-card: rgba(15, 23, 42, .9);--bg-elevated: rgba(30, 41, 59, .8);--text: #f1f5f9;--text-muted: #94a3b8;--border: rgba(255, 255, 255, .1);--radius: 12px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px)}html,body{height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:none}#root{min-height:100%;display:flex;flex-direction:column}.app-container{padding-top:var(--safe-top);padding-bottom:var(--safe-bottom);min-height:100vh;display:flex;flex-direction:column}.tab-bar{position:fixed;bottom:0;left:0;right:0;background:rgba(15,23,42,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--border);display:flex;justify-content:space-around;padding:.5rem 0;padding-bottom:calc(.5rem + var(--safe-bottom));z-index:100}.tab-item{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.4rem .8rem;border:none;background:none;color:var(--text-muted);font-size:.68rem;font-weight:500;cursor:pointer;transition:color .2s;text-decoration:none}.tab-item.active{color:var(--primary)}.tab-item .tab-icon{font-size:1.4rem}.interior-tab-icon{position:relative}.interior-tab-icon:after{content:"🪑";position:absolute;font-size:.6rem;top:-2px;right:-6px}.page-content{flex:1;padding:1rem;padding-bottom:calc(5rem + var(--safe-bottom));max-width:600px;margin:0 auto;width:100%}.page-header{text-align:center;padding:1.5rem 0 1rem}.page-header h1{font-size:1.8rem;font-weight:800;margin-bottom:.3rem}.page-header h1 span{color:var(--primary)}.page-header p{color:var(--text-muted);font-size:.9rem}.card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;margin-bottom:1rem;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.card-title{font-size:1rem;font-weight:700;margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.5rem}.feature-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:16px;padding:1.5rem 1rem;text-align:center;cursor:pointer;transition:all .2s;text-decoration:none;color:var(--text)}.feature-card:hover,.feature-card:active{border-color:var(--primary);transform:translateY(-2px);box-shadow:0 8px 30px #0ea5e926}.feature-card .icon{font-size:2.5rem;margin-bottom:.75rem}.feature-card h3{font-size:.95rem;font-weight:700;margin-bottom:.3rem}.feature-card p{font-size:.75rem;color:var(--text-muted);line-height:1.4}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;border:none;border-radius:10px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s;width:100%}.btn-primary{background:linear-gradient(135deg,#0ea5e9 0%,#2563eb 100%);color:#fff;box-shadow:0 4px 16px #0ea5e94d}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 24px #0ea5e966}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-outline{background:none;border:1.5px solid var(--border);color:var(--text-muted)}.btn-outline:hover{border-color:var(--primary);color:var(--primary)}.upload-zone{border:2px dashed rgba(56,189,248,.35);border-radius:var(--radius);padding:2.5rem 1.5rem;text-align:center;cursor:pointer;transition:all .2s;background:rgba(255,255,255,.02);position:relative}.upload-zone:hover,.upload-zone.drag-over{border-color:var(--primary);background:rgba(56,189,248,.05)}.upload-zone .icon{font-size:2.5rem;margin-bottom:.5rem}.upload-zone h4{font-size:1rem;margin-bottom:.3rem}.upload-zone p{font-size:.8rem;color:var(--text-muted)}.upload-zone input[type=file]{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.preview-container{margin-top:1rem;text-align:center}.preview-container img{max-width:100%;max-height:200px;border-radius:8px;border:1px solid var(--border)}.preview-container .file-name{font-size:.8rem;color:var(--text-muted);margin-top:.5rem}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.82rem;font-weight:600;color:var(--text-muted);margin-bottom:.35rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.7rem .9rem;background:rgba(255,255,255,.05);border:1.5px solid var(--border);border-radius:8px;font-size:.92rem;color:var(--text);outline:none;transition:border-color .2s}.form-group input::placeholder,.form-group textarea::placeholder{color:#64748b}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#38bdf880;box-shadow:0 0 0 3px #38bdf81a}.form-group select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%2394a3b8' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.result-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.score-ring{width:80px;height:80px;border-radius:50%;border:5px solid;display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0}.score-ring .number{font-size:1.6rem;font-weight:800;line-height:1}.score-ring .label{font-size:.65rem;font-weight:600}.severity-badge{display:inline-block;padding:.2rem .6rem;border-radius:6px;font-size:.72rem;font-weight:700;text-transform:uppercase}.severity-low{background:rgba(22,163,74,.2);color:#86efac}.severity-medium{background:rgba(217,119,6,.2);color:#fcd34d}.severity-high{background:rgba(220,38,38,.2);color:#fca5a5}.severity-critical{background:rgba(220,38,38,.3);color:#fca5a5}.loading-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(15,23,42,.85);display:flex;align-items:center;justify-content:center;flex-direction:column;z-index:999;gap:1rem}.spinner{width:48px;height:48px;border:4px solid rgba(255,255,255,.2);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{font-size:1rem;font-weight:600}.loading-sub{font-size:.85rem;color:var(--text-muted)}.history-item{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:1rem;margin-bottom:.75rem;display:flex;align-items:center;gap:1rem;cursor:pointer;transition:all .2s}.history-item:hover{border-color:#38bdf84d}.history-icon{font-size:1.8rem;flex-shrink:0}.history-info{flex:1;min-width:0}.history-info h4{font-size:.9rem;font-weight:600;margin-bottom:.2rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history-info p{font-size:.78rem;color:var(--text-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.history-date{font-size:.72rem;color:var(--text-muted);flex-shrink:0}.toast{position:fixed;bottom:calc(5rem + var(--safe-bottom));left:50%;transform:translate(-50%);background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:.75rem 1.25rem;font-size:.85rem;box-shadow:0 10px 40px #0006;z-index:200;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translate(-50%) translateY(20px);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}.empty-state{text-align:center;padding:3rem 1.5rem;color:var(--text-muted)}.empty-state .icon{font-size:3rem;margin-bottom:1rem}.brand-i{position:relative;display:inline-block;font-family:Georgia,Times New Roman,serif;font-style:italic;font-size:1.15em;color:#38bdf8;margin-right:1px}.brand-ai-dot{position:absolute;top:-.05em;left:50%;transform:translate(-50%);font-size:.25em;font-style:normal;font-weight:900;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;color:#38bdf8;letter-spacing:.01em;text-shadow:0 0 6px rgba(56,189,248,.5)}@media (max-width: 380px){.feature-grid,.form-row{grid-template-columns:1fr}}.login-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.5rem;background:linear-gradient(160deg,rgba(2,6,23,.85) 0%,rgba(10,22,40,.75) 50%,rgba(2,6,23,.9) 100%);position:relative;overflow:hidden}.login-particles{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1;overflow:hidden}.particle{position:absolute;bottom:-60px;font-size:1.6rem;opacity:.3;animation:floatUp linear infinite;filter:drop-shadow(0 0 10px rgba(56,189,248,.6))}@keyframes floatUp{0%{transform:translateY(0) rotate(0);opacity:0}10%{opacity:.4}90%{opacity:.4}to{transform:translateY(-110vh) rotate(360deg);opacity:0}}.login-header{text-align:center;margin-bottom:1.5rem;position:relative;z-index:10}.login-brand-icon{font-size:2.5rem;margin-bottom:.5rem;filter:drop-shadow(0 0 20px rgba(56,189,248,.5))}.login-brand-title{font-size:2rem;font-weight:900;color:#fff}.login-brand-title span{color:#38bdf8}.login-brand-sub{font-size:.88rem;color:var(--text-muted);margin-top:.3rem}.login-banner{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(14,165,233,.12) 0%,rgba(99,102,241,.08) 100%);border:1px solid rgba(56,189,248,.2);border-radius:10px;padding:.6rem 1rem;margin-bottom:1.25rem;font-size:.8rem;color:#7dd3fc;font-weight:500;position:relative;z-index:10}.login-apps-row{display:flex;justify-content:center;gap:1rem;margin-bottom:1.25rem;position:relative;z-index:10}.login-app-icon{width:50px;height:50px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;background:rgba(2,6,23,.9);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.login-app-pearl{border:2px solid rgba(56,189,248,.3);border-radius:50% 50% 20% 20%/30% 30% 10% 10%}.login-app-savari{border:2px solid #1e293b;border-radius:10px;position:relative}.login-app-savari:before{content:"";position:absolute;bottom:-4px;left:20%;width:8px;height:8px;border-radius:50%;background:#333;border:2px solid #555}.login-app-savari:after{content:"";position:absolute;bottom:-4px;right:20%;width:8px;height:8px;border-radius:50%;background:#333;border:2px solid #555}.login-app-interior{border:2px solid rgba(217,119,6,.3);border-radius:10px;position:relative}.login-app-interior:before{content:"";position:absolute;top:-6px;left:50%;transform:translate(-50%);width:0;height:0;border-left:14px solid transparent;border-right:14px solid transparent;border-bottom:6px solid rgba(217,119,6,.35)}.login-card{width:100%;max-width:420px;background:rgba(2,6,23,.85);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:2px solid rgba(56,189,248,.25);border-radius:50% 50% 20% 20%/15% 15% 5% 5%;padding:2.5rem 1.75rem 1.75rem;box-shadow:0 8px 60px #00000080,0 0 20px #38bdf80d;position:relative;z-index:10}.login-card:before{content:"🦷";position:absolute;top:-14px;left:20%;width:28px;height:28px;background:#0f172a;border:2px solid rgba(56,189,248,.4);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;line-height:28px;text-align:center}.login-card:after{content:"🚗";position:absolute;top:-14px;left:50%;transform:translate(-50%);width:28px;height:28px;background:#0f172a;border:2px solid rgba(52,168,83,.4);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;line-height:28px;text-align:center}.login-card-border-icon{position:absolute;top:-14px;right:20%;width:28px;height:28px;background:#0f172a;border:2px solid rgba(217,119,6,.4);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;z-index:11}.login-error{background:rgba(220,38,38,.15);color:#fca5a5;border:1px solid rgba(220,38,38,.3);border-radius:8px;padding:.7rem 1rem;font-size:.83rem;margin-bottom:1rem}.form-field{margin-bottom:1rem}.form-field label{display:block;font-size:.82rem;font-weight:600;color:#cbd5e1;margin-bottom:.3rem}.input-wrap{position:relative}.input-wrap input{width:100%;padding:.7rem 1rem .7rem 2.5rem;background:rgba(255,255,255,.06);border:1.5px solid rgba(255,255,255,.12);border-radius:10px;font-size:.92rem;color:#f1f5f9;outline:none;transition:border-color .2s,box-shadow .2s}.input-wrap input::placeholder{color:#64748b}.input-wrap input:focus{border-color:#38bdf880;box-shadow:0 0 0 3px #38bdf81a}.input-icon{position:absolute;left:.8rem;top:50%;transform:translateY(-50%);font-size:.9rem;opacity:.6}.btn-auth{width:100%;padding:.8rem;border:none;border-radius:12px;font-size:.95rem;font-weight:700;cursor:pointer;background:linear-gradient(135deg,#0ea5e9 0%,#2563eb 100%);color:#fff;box-shadow:0 4px 20px #0ea5e959;margin-top:.5rem;transition:all .2s}.btn-auth:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 28px #0ea5e980}.btn-auth:disabled{opacity:.5;cursor:not-allowed}.login-divider{display:flex;align-items:center;margin:1.25rem 0;gap:.75rem}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--border)}.login-divider span{font-size:.8rem;color:var(--text-muted)}.btn-guest{width:100%;background:none;border:none;padding:.6rem;font-size:.85rem;color:#94a3b8;cursor:pointer;text-align:center}.btn-guest:hover{color:#38bdf8}.login-footer{text-align:center;margin-top:1.25rem;font-size:.83rem;color:#94a3b8}.login-footer a{color:#38bdf8;font-weight:600;text-decoration:none}.login-credit{margin-top:2rem;text-align:center;position:relative;z-index:10}.login-credit .credit-line{display:block;font-size:.7rem;color:#64748b}.login-credit .credit-name{font-size:1.1rem;font-weight:900;color:#38bdf8;text-shadow:0 0 10px rgba(56,189,248,.6)}.service-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.75rem;margin-top:1.5rem;margin-bottom:1rem}.service-card-pearl{text-decoration:none;color:var(--text);display:block;transition:all .2s;height:180px}.service-card-pearl:hover{transform:translateY(-3px)}.pearl-card-inner{background:rgba(2,6,23,.9);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:2px solid rgba(56,189,248,.3);border-radius:50% 50% 20% 20%/20% 20% 6% 6%;padding:1.5rem .5rem 1rem;text-align:center;box-shadow:0 4px 30px #00000080,0 0 15px #38bdf80f;transition:all .2s;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}.service-card-pearl:hover .pearl-card-inner{border-color:#38bdf88c;box-shadow:0 4px 30px #0009,0 0 20px #38bdf81a}.service-card-savari{text-decoration:none;color:var(--text);display:block;transition:all .2s;height:180px}.service-card-savari:hover{transform:translateY(-3px)}.car-body-card{position:relative;background:rgba(2,6,23,.9);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:3px solid #1e293b;border-radius:14px;overflow:visible;transition:all .2s;box-shadow:0 4px 30px #00000080;height:100%;display:flex;flex-direction:column}.service-card-savari:hover .car-body-card{border-color:#334155;box-shadow:0 4px 30px #0009,0 0 15px #34a8530f}.car-card-hood{height:22px;background:#0f1c2e;border-radius:11px 11px 0 0;display:flex;align-items:center;justify-content:center;border-bottom:1px solid rgba(255,255,255,.04)}.car-card-hood:after{content:"";width:28px;height:3px;background:rgba(255,255,255,.18);border-radius:2px}.car-card-windshield{height:18px;margin:0 12%;background:#0a1628;border-radius:8px 8px 0 0;border:1px solid rgba(255,255,255,.04);border-bottom:none;display:flex;align-items:center;justify-content:center}.car-card-windshield:after{content:"";width:2px;height:10px;background:rgba(255,255,255,.12);border-radius:1px}.car-card-headlight-l,.car-card-headlight-r{display:none}.car-card-mirror-l,.car-card-mirror-r{position:absolute;top:38%;width:7px;height:12px;background:#1e293b;border:1.5px solid #334155;border-radius:3px}.car-card-mirror-l{left:-9px;border-radius:3px 0 0 3px}.car-card-mirror-r{right:-9px;border-radius:0 3px 3px 0}.car-card-wheels{position:absolute;bottom:-8px;left:0;right:0;display:flex;justify-content:space-between;padding:0 14%}.car-card-wheel{width:16px;height:16px;border-radius:50%;background:#1a1a1a;border:2.5px solid #444;box-shadow:0 2px 5px #0009}.car-card-interior{text-align:center;padding:.5rem .5rem .25rem;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center}.car-card-rear{display:flex;justify-content:space-between;align-items:center;padding:3px 10px 6px}.car-card-taillight{width:10px;height:5px;background:#ea4335;border-radius:2px;opacity:.8}.service-icon{width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto .5rem;font-size:1.8rem}.pearl-icon,.savari-icon,.interior-icon{background:transparent}.service-card-interior-design{display:block;transition:all .2s;opacity:.8;height:180px}.service-card-interior-design:hover{transform:translateY(-3px);opacity:1}.interior-card-inner{background:rgba(2,6,23,.9);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:2px solid rgba(217,119,6,.25);border-radius:14px;padding:0;text-align:center;box-shadow:0 4px 30px #00000080,0 0 15px #d977060a;height:100%;display:flex;flex-direction:column;position:relative;overflow:visible;transition:all .2s}.service-card-interior-design:hover .interior-card-inner{border-color:#d9770680;box-shadow:0 4px 30px #0009,0 0 20px #d9770614}.interior-card-roof{position:absolute;top:-10px;left:50%;transform:translate(-50%);width:0;height:0;border-left:25px solid transparent;border-right:25px solid transparent;border-bottom:10px solid rgba(217,119,6,.35)}.interior-card-window-l,.interior-card-window-r{position:absolute;top:14px;width:9px;height:9px;border:1.5px solid rgba(217,119,6,.3);border-radius:2px;background:rgba(135,206,235,.08)}.interior-card-window-l{left:8px}.interior-card-window-r{right:8px}.interior-card-door{position:absolute;bottom:5px;left:50%;transform:translate(-50%);width:10px;height:14px;border:1.5px solid rgba(217,119,6,.25);border-bottom:none;border-radius:5px 5px 0 0;background:rgba(217,119,6,.04)}.interior-card-content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.5rem}.interior-card-inner h3,.interior-card-content h3{font-size:.82rem;font-weight:700;margin-bottom:.15rem}.interior-card-inner p,.interior-card-content p{font-size:.68rem;color:var(--text-muted);margin-bottom:.4rem}.service-badge.coming-soon{color:#fcd34d;background:rgba(217,119,6,.1);border-color:#d9770633}.service-card-pearl h3,.car-card-interior h3{font-size:.82rem;font-weight:700;margin-bottom:.15rem}.service-card-pearl p,.car-card-interior p{font-size:.68rem;color:var(--text-muted);margin-bottom:.4rem}.service-badge{font-size:.58rem;color:#7dd3fc;background:rgba(14,165,233,.08);border:1px solid rgba(56,189,248,.12);border-radius:6px;padding:.2rem .4rem;display:inline-block}.home-features{margin-top:1.25rem;display:flex;flex-direction:row;gap:.5rem;justify-content:center}.home-feature-item{display:flex;align-items:center;gap:.4rem;background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;padding:.4rem .6rem}.home-feature-item>span{font-size:1rem;flex-shrink:0}.home-feature-item strong{font-size:.65rem;display:block}.home-feature-item p{font-size:.6rem;color:var(--text-muted);margin:0}.home-user-bar{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;margin-bottom:.5rem;font-size:.85rem;color:var(--text-muted)}.logout-btn{background:none;border:1px solid rgba(220,38,38,.3);color:#fca5a5;padding:.3rem .75rem;border-radius:6px;font-size:.78rem;cursor:pointer;transition:all .2s}.logout-btn:hover{background:rgba(220,38,38,.15)}
