:root{--primary:#10b981;--primary-dark:#059669;--secondary:#0f766e;--background:#f3f4f6;--card-bg:#fffc;--text-dark:#1f2937;--text-light:#6b7280;--error:#ef4444;--warning:#f59e0b}*{box-sizing:border-box;margin:0;padding:0}body{color:var(--text-dark);-webkit-font-smoothing:antialiased;background:linear-gradient(135deg,#e0f2fe 0%,#d1fae5 100%);min-height:100vh;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif}.auth-container{justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.auth-card{background:var(--card-bg);-webkit-backdrop-filter:blur(16px);border:1px solid #ffffff80;border-radius:24px;width:100%;max-width:400px;padding:40px;transition:transform .3s;box-shadow:0 10px 40px #0000001a}.auth-card:hover{transform:translateY(-5px)}.brand-title{text-align:center;color:var(--secondary);background:linear-gradient(to right, var(--secondary), var(--primary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:8px;font-size:32px;font-weight:800}.auth-subtitle{text-align:center;color:var(--text-light);margin-bottom:30px;font-size:16px}.auth-form{flex-direction:column;gap:16px;display:flex}.input-field{background:#ffffffe6;border:1px solid #0000001a;border-radius:12px;padding:16px;font-size:16px;transition:all .2s}.input-field:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #10b98133}.primary-button{background:linear-gradient(to right, var(--primary), var(--primary-dark));color:#fff;cursor:pointer;border:none;border-radius:12px;padding:16px;font-size:18px;font-weight:600;transition:all .2s;box-shadow:0 4px 15px #10b9814d}.primary-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #10b98166}.primary-button:active{transform:translateY(0)}.auth-footer{text-align:center;margin-top:24px}.link-text{color:var(--secondary);font-weight:500;text-decoration:none;transition:color .2s}.link-text:hover{color:var(--primary);text-decoration:underline}.dashboard-container{flex-direction:column;max-width:600px;min-height:100vh;margin:0 auto;display:flex}.dashboard-header{background:var(--card-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom-right-radius:30px;border-bottom-left-radius:30px;justify-content:space-between;align-items:center;padding:30px;display:flex;box-shadow:0 4px 20px #0000000d}.greeting{color:var(--secondary);font-size:28px;font-weight:800}.subtitle{color:var(--text-light);margin-top:4px}.logout-btn{color:var(--error);cursor:pointer;background:#fee2e2;border:none;border-radius:12px;justify-content:center;align-items:center;padding:12px;transition:background .2s;display:flex}.logout-btn:hover{background:#fca5a5}.dashboard-main{flex:1;padding:30px}.scan-button{background:linear-gradient(135deg, var(--primary), var(--secondary));color:#fff;cursor:pointer;border:none;border-radius:24px;flex-direction:column;align-items:center;width:100%;margin-bottom:30px;padding:40px 20px;transition:transform .3s,box-shadow .3s;display:flex;box-shadow:0 10px 30px #10b98166}.scan-button:hover{transform:translateY(-5px)scale(1.02);box-shadow:0 15px 40px #10b98180}.scan-icon-wrapper{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#fff3;border-radius:50%;justify-content:center;align-items:center;width:90px;height:90px;margin-bottom:16px;display:flex}.scan-title{margin-bottom:8px;font-size:26px;font-weight:800}.scan-subtitle{opacity:.9;font-size:16px}.stats-container{justify-content:space-between;gap:20px;display:flex}.stat-card{background:var(--card-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #ffffff80;border-radius:20px;flex-direction:column;flex:1;align-items:center;padding:24px;transition:transform .2s;display:flex;box-shadow:0 4px 20px #0000000d}.stat-card:hover{transform:translateY(-3px)}.stat-value{color:var(--text-dark);margin:12px 0 4px;font-size:32px;font-weight:800}.stat-label{color:var(--text-light);font-size:14px;font-weight:500}.stat-icon.success{color:var(--primary)}.stat-icon.warning{color:var(--warning)}.capture-container{background:#000;width:100vw;height:100vh;position:relative;overflow:hidden}.capture-container.centered{background:var(--background);text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:20px;display:flex}.camera-view{object-fit:cover;width:100%;height:100%}.camera-overlay{z-index:10;flex-direction:column;justify-content:space-between;padding:20px;display:flex;position:absolute;inset:0}.back-btn{cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;border:none;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;margin-top:20px;transition:background .2s;display:flex}.back-btn:hover{background:#000000b3}.bottom-controls{justify-content:center;margin-bottom:40px;display:flex}.capture-btn{cursor:pointer;background:#ffffff4d;border:none;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;padding:0;transition:transform .1s;display:flex}.capture-btn:active{transform:scale(.95)}.capture-inner-btn{background:#fff;border-radius:50%;width:64px;height:64px}.analyzing-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000b3;border-radius:20px;flex-direction:column;align-items:center;padding:16px 32px;display:flex}.spinner{border:4px solid #10b9814d;border-top-color:var(--primary);border-radius:50%;width:32px;height:32px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.analyzing-text{color:#fff;margin-top:10px;font-weight:600}.result-container{background:var(--background);flex-direction:column;justify-content:center;align-items:center;padding:20px;display:flex}.result-icon{margin-bottom:20px}.result-title{color:var(--text-dark);margin-bottom:30px;font-size:32px;font-weight:800}.result-card{background:#fff;border-radius:20px;width:100%;max-width:400px;margin-bottom:30px;padding:30px;box-shadow:0 10px 30px #00000014}.result-row{flex-direction:column;margin-bottom:20px;display:flex}.result-row:last-child{margin-bottom:0}.result-label{color:var(--text-light);margin-bottom:4px;font-size:14px}.result-value{color:var(--primary);font-size:24px;font-weight:700}.loading-screen{background:var(--background);justify-content:center;align-items:center;height:100vh;display:flex}
