body{margin:0;font-family:Inter,sans-serif;background-color:#0f0f10;color:#fff;height:100vh;display:flex;flex-direction:column}html,body{height:100vh;margin:0}a{color:#ccc;text-decoration:none;margin:0 12px;font-size:14px}a:hover{color:#fff}.app-wrapper{display:flex;flex-direction:column;height:100vh;width:100vw;background-color:#0f0f10}.header{width:100%;padding:12px 20px;background:#1a1a1d;display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #9e70ff;box-sizing:border-box}.logo{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:700;color:#fff}.nav-links{display:flex;align-items:center;flex-wrap:wrap}.app-container{flex:1;display:flex;justify-content:center;align-items:center;padding:16px;width:100%;box-sizing:border-box;background-color:#0f0f10}.card{background-color:#1a1a1d;border-radius:16px;padding:2px 20px 24px;width:100%;max-width:360px;min-height:320px;text-align:center;box-shadow:0 0 20px #0000004d;position:relative;transition:all .3s ease;box-sizing:border-box}.back-button{position:relative;background:none;border:none;color:#fff;cursor:pointer;padding:4px;z-index:1}@media (min-width: 480px){.card{max-width:400px;padding:28px 24px}}@media (min-width: 768px){.card{max-width:480px;padding:36px 30px}}@media (min-width: 1024px){.card{max-width:550px;padding:48px 36px}}h3{font-size:20px;margin-top:12px}p{font-size:14px;color:#ccc;margin:8px 0 20px}.icon{margin:16px 0;font-size:28px}.icon.blue{color:#9e70ff}.icon.green{color:#4cc956}button{background-color:#9e70ff;color:#fff;border:none;border-radius:10px;padding:12px 18px;font-size:14px;cursor:pointer;margin-top:10px;width:100%;transition:background-color .2s ease}.back{position:absolute;top:14px;left:14px;background:none;color:#888;border:none;font-size:18px;cursor:pointer}.toggle-box{background:#2b2b2f;border-radius:12px;padding:12px;margin:18px 0;text-align:left}.toggle-box span{font-weight:700;color:#fff}.toggle-box p{margin:6px 0 10px;font-size:13px}.switch{position:relative;display:inline-block;width:50px;height:24px;float:right}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#555;transition:.4s;border-radius:24px}.slider:before{position:absolute;content:"";height:16px;width:16px;left:4px;bottom:4px;background-color:#fff;transition:.4s;border-radius:50%}input:checked+.slider{background-color:#9e70ff}input:checked+.slider:before{transform:translate(26px)}.footer{text-align:center;font-size:13px;color:#888;padding:1px;background-color:#0f0f10;border-top:1px solid #2e2e30}.footer a{color:#9e70ff;margin-left:6px;text-decoration:underline}@media (max-height: 600px){.footer{font-size:12px;padding:1px}}.upload-card{border:2px dashed #9e70ff;border-radius:12px;padding:24px;text-align:center;background-color:#1c1c1c;margin-top:20px;color:#fff;transition:background-color .2s ease}.image-preview-container{position:relative;display:inline-block;max-width:100%;margin-bottom:8px}.remove-image{top:6px;right:6px;background:none;border:none;cursor:pointer;color:#fff;background-color:#00000080;border-radius:50%;padding:2px}.upload-card{position:relative;border:2px dashed #9e70ff;border-radius:12px;padding:16px;text-align:center;background-color:#1c1c1c;margin-top:20px;margin-left:-12px;margin-right:-12px;color:#fff;transition:background-color .2s ease}.upload-card.drag-over{background-color:#2a2a2a}.icon-container{margin-bottom:12px}.upload-label{display:block;cursor:pointer}.upload-instruction{font-size:16px;color:#ccc}.filename{font-weight:700;color:#fff;font-size:16px}.scan-button{margin-top:16px;padding:10px 24px;background-color:#9e70ff;color:#fff;border:none;border-radius:8px;cursor:pointer}.scan-button:hover{background-color:#9e70ff}.image-preview-container{max-width:100%;margin-bottom:8px}.remove-image{top:12px;right:12px;background:none;border:none;cursor:pointer;color:#fff;border-radius:50%;padding:4px;z-index:10}.image-preview-container{max-width:100%;margin-bottom:8px;position:relative;overflow:hidden;border-radius:8px}.image-preview{width:100%;max-height:300px;object-fit:contain;border-radius:8px}.scan-overlay{position:absolute;top:0;left:0;height:100%;width:100%;background:linear-gradient(to bottom,#4a90e200,#4a90e24d,#4a90e200);animation:scan-move 2s infinite linear;pointer-events:none;border-radius:8px}@keyframes scan-move{0%{transform:translateY(-100%)}50%{transform:translateY(100%)}to{transform:translateY(-100%)}}.scan-button{margin-top:16px;padding:10px 24px;background-color:#9e70ff;color:#fff;border:none;border-radius:8px;cursor:pointer;position:relative;overflow:hidden}.scan-button:disabled{opacity:.7;cursor:not-allowed}.scan-button.scanning:before{content:"";position:absolute;top:0;left:-50%;height:100%;width:200%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);animation:scan-horizontal 1.5s linear infinite}@keyframes scan-horizontal{0%{transform:translate(-100%)}to{transform:translate(100%)}}.driver-summary-container{background-color:transparent;padding:16px 0;border-bottom:1px solid #2a2a2a;font-family:system-ui,sans-serif;width:100%}.driver-meta{display:flex;justify-content:space-between;align-items:center;gap:12px}.driver-meta .left{display:flex;align-items:center;gap:12px}.avatar-square{width:48px;height:48px;border-radius:8px;overflow:hidden;background-color:#333;display:flex;align-items:center;justify-content:center}.avatar-square img{width:100%;height:100%;object-fit:cover;border-radius:8px}.avatar-placeholder{width:100%;height:100%;background-color:#555;border-radius:8px}.info{display:flex;flex-direction:column;text-align:left}.driver-name{font-size:16px;font-weight:600;color:#f1f1f1}.license-plate{font-size:14px;color:#e0e0e0;letter-spacing:.5px;margin-top:2px;border:1px solid #444;border-radius:5px;padding:2px 10px}.risk-badge-square{width:48px;height:48px;background-color:#e63946;border-radius:8px;font-size:12px;font-weight:500;color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;flex-shrink:0}.driver-tags{margin:12px 0;display:flex;flex-wrap:wrap;gap:8px}.chip{background-color:#2a2a2a;color:#f1f1f1;font-size:12px;padding:6px 12px;border-radius:999px;white-space:nowrap}.ai-summary{margin-top:12px;padding:0;color:#f1f1f1;text-align:left}.ai-summary .label{font-size:12px;text-transform:uppercase;font-weight:600;color:#aaa;margin-bottom:6px;letter-spacing:.5px}.ai-text{font-size:13px;text-align:justify;line-height:1.5}.complaints-toggle-btn{margin-top:16px;background-color:#2a2a2a;color:#f1f1f1;border:none;border-radius:8px;padding:8px 16px;font-size:13px;cursor:pointer}.complaints-list{max-height:250px;overflow-y:auto;margin-top:1rem;padding-right:.5rem;scroll-behavior:smooth}.complaint-card{background:#1a1a1a;padding:.75rem;border-radius:12px;margin-bottom:.75rem;border:1px solid #333}.complaint-meta{display:flex;justify-content:space-between;font-size:.95rem;color:#fff;margin-bottom:.5rem}.complaint-message{color:#bbb;font-size:.85rem;line-height:1.4;text-align:justify}.complaint-meta{display:flex;justify-content:space-between;margin-bottom:6px;font-size:12px;color:#aaa}.complaint-user{font-weight:500}.report-issue-btn{margin-top:16px;background-color:#e63946;color:#fff;border:none;border-radius:8px;padding:8px 16px;font-size:13px;cursor:pointer}.report-issue-btn:hover{background-color:#c62828}.report-card{border-radius:16px;color:#f1f1f1;display:flex;flex-direction:column;gap:16px;max-width:480px;width:100%;margin:0 auto}.report-card h3{margin:0;font-size:18px;color:#fff;text-align:center}.report-card label{display:flex;flex-direction:column;font-size:13px;gap:4px;color:#ccc}.report-card input,.report-card textarea{background-color:#2a2a2a;border:1px solid #333333;color:#f1f1f1;border-radius:8px;padding:10px;font-size:13px;width:100%;resize:none;box-sizing:border-box}.report-card textarea{min-height:100px}.report-card button{background-color:#9e70ff;color:#fff;border:none;border-radius:8px;padding:10px 20px;font-size:14px;cursor:pointer;align-self:center;margin-top:8px;transition:background-color .2s ease}.report-card button:hover{background-color:#9e70ff}.helpline-card{background-color:#1c1c1e;padding:2rem;border-radius:12px;color:#fff;margin-top:2rem;box-shadow:0 2px 8px #0000004d;text-align:center}.helpline-card h3{margin:1rem 0 .5rem}.helpline-description{font-size:.9rem;color:#ccc;margin-bottom:1.5rem}.helpline-icons{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap}.icon-button{display:flex;flex-direction:column;align-items:center;background-color:#9e70ff;color:#fff;text-decoration:none;border-radius:12px;padding:1rem;transition:background-color .3s ease;width:90px}.icon-button:hover{background-color:#9e70ff}.icon-label{margin-top:.5rem;font-size:.8rem}.error-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#ff00004d;border-radius:8px;width:100%;height:100%}.fullscreen-loader{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#0f0f10;z-index:9999;overflow:hidden}.loader-sheen{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to bottom,#4a90e200,#4a90e24d,#4a90e200);animation:scan-movez 2.5s infinite linear;pointer-events:none}@keyframes scan-movez{0%{transform:translateY(-100%)}50%{transform:translateY(100%)}to{transform:translateY(-100%)}}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}
