:root{--bg-base: #0b1216;--surface: rgba(16, 30, 38, .92);--surface-border: rgba(255, 255, 255, .14);--text-primary: #eaf6f8;--text-muted: rgba(234, 246, 248, .72);--eyebrow: #7fd7ff;--accent-cyan: #43cbff;--accent-purple: #9708cc;--accent-teal: #50d2bb;--btn-primary-text: #04252f;--btn-secondary-bg: #34535c;--btn-secondary-text: #e0edef;--error: #ff9b9b;--notice: #f4c968;--input-bg: rgba(15, 25, 35, .9);--input-border: rgba(255, 255, 255, .15);--glow-cyan: radial-gradient( 1100px 750px at 88% -12%, rgb(151 8 204 / .26), transparent 62% );--glow-purple: radial-gradient( 950px 700px at -8% -4%, rgb(67 203 255 / .2), transparent 60% );color:var(--text-primary);background-color:var(--bg-base);background-image:var(--glow-cyan),var(--glow-purple);background-attachment:fixed;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select{font:inherit}:focus-visible{outline:2px solid var(--accent-cyan);outline-offset:2px}.shell{display:grid;min-height:100vh;place-items:center;padding:24px}.shell:before{content:"";position:fixed;inset:0 0 auto 0;height:4px;background:linear-gradient(135deg,var(--accent-cyan) 10%,var(--accent-purple) 100%);z-index:1}.auth-bg{background-image:linear-gradient(135deg,var(--accent-cyan) 10%,var(--accent-purple) 100%)}.card{width:min(100%,560px);padding:32px;border:1px solid var(--surface-border);border-radius:12px;background:var(--surface);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 20px 70px #0000004d}.auth-card{width:min(100%,480px)}.auth-header{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px;margin-bottom:10px}.auth-header h1{margin:0;font-size:2rem}.toggle-btn{padding:6px 14px;border:1px solid var(--surface-border);border-radius:6px;color:var(--text-primary);background:var(--surface);font-size:.82rem;font-weight:600;cursor:pointer}.toggle-btn:hover{border-color:var(--accent-cyan);color:var(--accent-cyan)}.toggle-btn[aria-pressed=true]{border-color:var(--accent-cyan);color:var(--accent-cyan);background:#43cbff1a}.success-notice{margin:0 0 4px;padding:10px 14px;border-radius:8px;color:var(--btn-primary-text);background:var(--accent-teal);font-size:.88rem;font-weight:600}.eyebrow{margin:0 0 8px;color:var(--eyebrow);font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}h1{margin:0 0 10px;color:var(--text-primary);font-size:clamp(1.8rem,5vw,2.5rem)}.muted,.notice{color:var(--text-muted);line-height:1.5}form,label{display:grid;gap:8px}form{gap:18px;margin-top:24px}label{color:var(--text-muted);font-size:.75rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}input,select{width:100%;padding:11px 12px;border:1px solid var(--input-border);border-radius:8px;color:var(--text-primary);background:var(--input-bg)}button{padding:11px 16px;border:0;border-radius:8px;color:var(--btn-primary-text);background:var(--accent-cyan);cursor:pointer;font-weight:700}button:hover:not(:disabled){filter:brightness(1.12)}button:disabled{cursor:not-allowed;opacity:.45}button.secondary{color:var(--btn-secondary-text);background:var(--btn-secondary-bg)}button.secondary:hover:not(:disabled){filter:brightness(1.15)}.controls{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:28px 0 0}.status-grid div{padding:14px;border-radius:10px;background:var(--surface);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.status-grid .wide{grid-column:1 / -1}dt{color:var(--text-muted);font-size:.75rem;text-transform:uppercase}dd{margin:5px 0 0;color:var(--text-primary);line-height:1.4}.error{margin:0;color:var(--error)}.notice{margin-bottom:0;font-size:.9rem}.device-id{color:var(--accent-teal);font-size:.82rem;font-weight:600}.vehicle-reg-card,.device-provision-card{width:min(100%,560px)}.vin-input-row{display:flex;gap:8px}.vin-input{flex:1}.scan-btn{white-space:nowrap;flex-shrink:0}.cancel-scan-btn{margin-top:4px;padding:6px 12px;font-size:.82rem}.vin-hint{color:var(--text-muted);font-size:.78rem;line-height:1.4}.vehicle-row{display:flex;align-items:flex-end;gap:12px}.vehicle-select-label{flex:1}.add-vehicle-btn{flex-shrink:0;white-space:nowrap}.back-btn{margin-top:16px}
