:root{--bg:#060810;--surface:#090d1a;--surface-2:#0d1221;--surface-3:#121828;--border:#192038;--border-strong:#263353;--text:#ebf0fa;--text-muted:#566380;--text-dim:#253045;--accent:#f5a623;--accent-hover:#fbb83a;--accent-glow:#f5a6231f;--accent-glow-strong:#f5a62338;--accent-border:#f5a6234d;--data:#22d3ee;--data-dim:#22d3eebf;--data-glow:#22d3ee1a;--data-border:#22d3ee38;--danger:#f04444;--danger-dim:#f0444417;--success:#10b981;--font-display:"Sora", sans-serif;--font-body:"DM Sans", sans-serif;--font-mono:"JetBrains Mono", monospace;--nav-height:58px;--radius:8px;--radius-lg:12px;--radius-xl:18px;--radius-pill:100px;--shadow-sm:0 2px 8px #00000080;--shadow-md:0 8px 32px #000000a6, 0 2px 8px #00000080;--shadow-accent:0 0 0 3px var(--accent-glow);--shadow-accent-strong:0 0 0 4px var(--accent-glow-strong), 0 0 24px var(--accent-glow);font-family:var(--font-body);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-size:15px;line-height:1.6}*,:before,:after{box-sizing:border-box}body,h1,h2,h3,h4,h5,h6,p{margin:0}a{color:inherit}button,input,select,textarea{font-family:inherit}body:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(100% 55% at 15% -5%,#f5a6230b 0%,#0000 60%),radial-gradient(70% 45% at 88% 95%,#22d3ee08 0%,#0000 55%);position:fixed;inset:0}#root{z-index:1;flex-direction:column;min-height:100svh;display:flex;position:relative}.nav{height:var(--nav-height);border-bottom:1px solid var(--border);z-index:100;-webkit-backdrop-filter:blur(28px)saturate(180%);background:#090d1ad9;align-items:center;padding:0 32px;display:flex;position:sticky;top:0}.nav-logo{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text);flex-shrink:0;align-items:center;gap:10px;margin-right:36px;font-size:16px;font-weight:700;text-decoration:none;transition:opacity .2s;display:flex}.nav-logo:hover{opacity:.8}.nav-logo-icon{background:linear-gradient(140deg, var(--accent) 0%, #fbba3a 100%);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:15px;line-height:1;display:flex;box-shadow:0 2px 12px #f5a62366,0 0 0 1px #f5a62340}.nav-links{flex:1;gap:2px;display:flex}.nav-link{border-radius:var(--radius);color:var(--text-muted);letter-spacing:-.01em;white-space:nowrap;padding:5px 14px;font-size:14px;font-weight:500;text-decoration:none;transition:color .15s,background .15s}.nav-link:hover,.nav-link.nav-link-active{color:var(--text);background:var(--surface-2)}.nav-user{align-items:center;gap:12px;margin-left:auto;display:flex}.nav-user-name{color:var(--text-muted);font-size:13px;font-weight:500}.main{flex:1;width:100%;max-width:1100px;margin:0 auto;padding:40px 32px}.page-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:32px;display:flex}.page-header-left{flex-direction:column;display:flex}.back-link{color:var(--text-muted);align-items:center;gap:5px;width:fit-content;margin-bottom:10px;font-size:13px;font-weight:500;text-decoration:none;transition:color .15s;display:inline-flex}.back-link:hover{color:var(--accent)}.page-title{font-family:var(--font-display);letter-spacing:-.03em;color:var(--text);font-size:30px;font-weight:700;line-height:1}.page-subtitle{color:var(--text-muted);margin-top:6px;font-size:13px;font-weight:400}.btn{border-radius:var(--radius);font-size:14px;font-weight:600;font-family:var(--font-body);letter-spacing:-.01em;cursor:pointer;white-space:nowrap;border:1px solid #0000;align-items:center;gap:6px;padding:9px 20px;line-height:1;text-decoration:none;transition:all .18s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-primary{background:linear-gradient(140deg, var(--accent) 0%, #fbba3a 100%);color:#07060f;border-color:var(--accent);box-shadow:0 2px 8px #f5a62340}.btn-primary:hover:not(:disabled){background:linear-gradient(140deg, var(--accent-hover) 0%, #ffca5a 100%);border-color:var(--accent-hover);box-shadow:var(--shadow-accent-strong);transform:translateY(-1px)}.btn-primary:active:not(:disabled){box-shadow:var(--shadow-accent);transform:translateY(0)}.btn-secondary{background:var(--surface-2);color:var(--text);border-color:var(--border)}.btn-secondary:hover:not(:disabled){background:var(--surface-3);border-color:var(--border-strong);transform:translateY(-1px)}.btn-ghost{color:var(--text-muted);border-color:var(--border);background:0 0}.btn-ghost:hover:not(:disabled){color:var(--text);border-color:var(--border-strong);background:var(--surface-2)}.btn-danger{color:var(--danger);background:0 0;border-color:#0000;padding-left:10px;padding-right:10px}.btn-danger:hover:not(:disabled){background:var(--danger-dim);border-color:#f0444438}.btn:disabled{opacity:.38;cursor:not-allowed}.btn-sm{padding:5px 13px;font-size:13px}.btn-full{justify-content:center;width:100%}.vehicle-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;display:grid}.vehicle-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;padding:22px;text-decoration:none;transition:border-color .25s,background .25s,transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s;display:block;position:relative;overflow:hidden}.vehicle-card:before{content:"";opacity:0;background:linear-gradient(135deg,#f5a6230a 0%,#0000 60%);transition:opacity .25s;position:absolute;inset:0}.vehicle-card:after{content:"";background:linear-gradient(to bottom, var(--accent), #f5a6234d);opacity:0;width:2px;transition:opacity .2s;position:absolute;top:0;bottom:0;left:0}.vehicle-card:hover{border-color:var(--accent-border);background:var(--surface-2);box-shadow:var(--shadow-md), 0 0 0 1px var(--accent-border);transform:translateY(-3px)}.vehicle-card:hover:before,.vehicle-card:hover:after{opacity:1}.vehicle-card-icon{background:var(--accent-glow);border:1px solid var(--accent-border);border-radius:var(--radius);justify-content:center;align-items:center;width:36px;height:36px;margin-bottom:14px;font-size:17px;display:flex}.vehicle-card-name{font-family:var(--font-display);color:var(--text);letter-spacing:-.02em;margin-bottom:4px;font-size:19px;font-weight:700;line-height:1.15}.vehicle-card-meta{color:var(--text-muted);font-size:13px;font-weight:400}.vehicle-list{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;display:flex;overflow:hidden}.vehicle-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 22px;transition:background .15s;display:flex}.vehicle-row:last-child{border-bottom:none}.vehicle-row:hover{background:var(--surface-2)}.vehicle-row-info{align-items:center;gap:14px;display:flex}.vehicle-row-name{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text);font-size:16px;font-weight:700;text-decoration:none;transition:color .15s}.vehicle-row-name:hover{color:var(--accent)}.vehicle-row-meta{color:var(--text-muted);font-size:13px}.vehicle-row-actions{align-items:center;gap:6px;display:flex}.table-container{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.table-top{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 22px;display:flex}.table-top-title{font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:700}.table{border-collapse:collapse;width:100%}.table th{text-align:left;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);background:var(--surface-2);border-bottom:1px solid var(--border);cursor:pointer;-webkit-user-select:none;user-select:none;padding:9px 18px;font-size:10px;font-weight:700;transition:color .15s}.table th:hover{color:var(--text-muted)}.table td{border-bottom:1px solid var(--border);color:var(--text);padding:12px 18px;font-size:14px;transition:background .1s}.table tbody tr:last-child td{border-bottom:none}.table tbody tr:hover td{background:var(--surface-2)}.num{font-family:var(--font-mono);font-feature-settings:"tnum" 1;letter-spacing:-.02em;font-size:13px}.num-accent{font-family:var(--font-mono);font-feature-settings:"tnum" 1;color:var(--accent);letter-spacing:-.02em;font-size:13px;font-weight:700}.td-muted{color:var(--text-muted);font-size:13px}.pagination{border-top:1px solid var(--border);align-items:center;gap:10px;padding:12px 22px;display:flex}.pagination-info{color:var(--text-muted);margin:0 auto;font-size:13px}.stats-row{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin-bottom:22px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px 22px;transition:border-color .2s,transform .2s;position:relative;overflow:hidden}.stat-card:before{content:"";background:linear-gradient(90deg, transparent, var(--border-strong), transparent);opacity:.6;height:1px;position:absolute;top:0;left:0;right:0}.stat-card:hover{border-color:var(--border-strong);transform:translateY(-1px)}.stat-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);margin-bottom:8px;font-size:10px;font-weight:700}.stat-value{font-family:var(--font-mono);color:var(--data);font-feature-settings:"tnum" 1;letter-spacing:-.04em;font-size:22px;font-weight:700;line-height:1}.stat-value.accent{color:var(--accent)}.badge{border-radius:var(--radius-pill);letter-spacing:.06em;text-transform:uppercase;border:1px solid;align-items:center;padding:2px 8px;font-size:10px;font-weight:700;display:inline-flex}.badge-petrol{color:#fc8181;background:#ef444414;border-color:#ef444433}.badge-diesel{color:#f5a623;background:#f5a62317;border-color:#f5a62338}.badge-lpg{color:#34d399;background:#10b98114;border-color:#10b98138}.badge-electric{color:#22d3ee;background:#22d3ee14;border-color:#22d3ee38}.badge-hybrid{color:#c4b5fd;background:#a78bfa14;border-color:#a78bfa38}.receipt-link{border-radius:var(--radius-pill);letter-spacing:.06em;text-transform:uppercase;color:var(--success);background:#10b98114;border:1px solid #10b98133;align-items:center;gap:3px;padding:2px 8px;font-size:10px;font-weight:700;text-decoration:none;transition:background .15s;display:inline-flex}.receipt-link:hover{background:#10b98126}.section-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.section-title{letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);font-size:10px;font-weight:700}.form-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:20px;padding:28px;position:relative}.form-card-title{letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);border-bottom:1px solid var(--border);margin-bottom:22px;padding-bottom:16px;font-size:10px;font-weight:700}.form-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.form-group{flex-direction:column;gap:7px;display:flex}.form-group.full{grid-column:span 2}.form-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:700}.form-label.req:after{content:" *";color:var(--accent)}.form-input,.form-select,.form-textarea{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-family:var(--font-body);appearance:none;outline:none;width:100%;padding:11px 14px;font-size:15px;font-weight:400;transition:border-color .18s,box-shadow .18s,background .18s}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow);background:var(--surface-3)}.form-input[readonly]{color:var(--text-muted);cursor:default;background:#090d1a80}.form-input::placeholder{color:var(--text-dim)}.form-select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' stroke='%23566380' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:38px}.form-textarea{resize:vertical;min-height:80px}.form-calc{border:1px solid var(--data-border);border-radius:var(--radius);font-family:var(--font-mono);font-feature-settings:"tnum" 1;color:var(--data);letter-spacing:-.04em;box-shadow:0 0 16px var(--data-glow);text-shadow:0 0 20px #22d3ee66;background:linear-gradient(135deg,#090d1acc 0%,#0d122199 100%);align-items:center;padding:11px 14px;font-size:24px;font-weight:700;line-height:1;display:flex}.form-actions{border-top:1px solid var(--border);gap:10px;margin-top:26px;padding-top:22px;display:flex}input[type=file].form-file{background:var(--surface-2);border:1px dashed var(--border-strong);border-radius:var(--radius);color:var(--text-muted);cursor:pointer;width:100%;padding:13px;font-size:13px;transition:border-color .18s,background .18s}input[type=file].form-file:hover{border-color:var(--accent-border);background:var(--accent-glow)}.auth-page{background:var(--bg);justify-content:center;align-items:center;min-height:100svh;padding:24px;display:flex;position:relative}.auth-page:before{content:"";pointer-events:none;background:radial-gradient(80% 60% at 50% -10%,#f5a62312 0%,#0000 60%),radial-gradient(50% 40% at 90% 90%,#22d3ee0a 0%,#0000 50%),radial-gradient(60% 40% at 0 80%,#f5a62308 0%,#0000 50%);position:fixed;inset:0}.auth-card{border:1px solid var(--border-strong);border-radius:var(--radius-xl);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);width:100%;max-width:400px;box-shadow:var(--shadow-md), 0 0 0 1px #ffffff08 inset;background:#090d1acc;padding:44px;position:relative}.auth-logo{font-family:var(--font-display);letter-spacing:-.03em;color:var(--text);align-items:center;gap:10px;margin-bottom:4px;font-size:19px;font-weight:700;display:flex}.auth-logo-icon{background:linear-gradient(140deg, var(--accent) 0%, #fbba3a 100%);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;display:flex;box-shadow:0 2px 12px #f5a62366}.auth-tagline{color:var(--text-muted);margin-bottom:36px;margin-left:42px;font-size:13px}.auth-title{font-family:var(--font-display);letter-spacing:-.03em;color:var(--text);margin-bottom:24px;font-size:22px;font-weight:700}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-footer{color:var(--text-muted);text-align:center;margin-top:18px;font-size:13px}.auth-footer a{color:var(--accent);font-weight:600;text-decoration:none}.auth-footer a:hover{text-decoration:underline}.alert{border-radius:var(--radius);border:1px solid;padding:11px 16px;font-size:14px}.alert-error{background:var(--danger-dim);color:#f07070;border-color:#f0444438}.empty{text-align:center;color:var(--text-muted);padding:60px 24px}.empty-icon{opacity:.25;margin-bottom:16px;font-size:38px}.empty-title{font-family:var(--font-display);color:var(--text-muted);letter-spacing:-.02em;margin-bottom:6px;font-size:18px;font-weight:700}.empty-desc{color:var(--text-dim);margin-bottom:22px;font-size:14px}.loading-row{color:var(--text-muted);justify-content:center;align-items:center;gap:10px;padding:40px 0;font-size:14px;display:flex}.dot-sep{background:var(--border-strong);border-radius:50%;flex-shrink:0;width:3px;height:3px}.inline-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:20px;padding:26px}.inline-form-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text);margin-bottom:20px;font-size:15px;font-weight:700}@media (width<=768px){.main{padding:20px 16px}.form-grid{grid-template-columns:1fr}.form-group.full{grid-column:span 1}.nav{padding:0 16px}.auth-card{padding:30px 22px}.page-title{font-size:24px}.stats-row{grid-template-columns:1fr 1fr}.form-card{padding:20px}}.tab-bar{display:none}@media (width<=768px){.tab-bar{border-top:1px solid var(--border);-webkit-backdrop-filter:blur(28px)saturate(180%);z-index:200;height:64px;padding:0 8px;padding-bottom:env(safe-area-inset-bottom,0px);background:#090d1aeb;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}.tab-bar-item{color:var(--text-muted);letter-spacing:.05em;border-radius:var(--radius);flex-direction:column;flex:1;align-items:center;gap:3px;padding:6px 16px;font-size:10px;font-weight:600;text-decoration:none;transition:color .15s;display:flex}.tab-bar-item.active{color:var(--accent)}.tab-bar-item-icon{font-size:20px;line-height:1}.tab-bar-center{color:var(--text-muted);letter-spacing:.05em;flex-direction:column;flex:1;align-items:center;gap:3px;font-size:10px;font-weight:700;text-decoration:none;display:flex}.tab-bar-center-btn{background:linear-gradient(140deg, var(--accent) 0%, #fbba3a 100%);border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;margin-top:-14px;font-size:22px;line-height:1;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 4px 20px #f5a62380,0 0 0 2px #f5a62333}.tab-bar-center:hover .tab-bar-center-btn{transform:scale(1.08);box-shadow:0 6px 28px #f5a62399,0 0 0 3px #f5a62340}.main{padding-bottom:84px}.nav-links{display:none}}.charts-grid{grid-template-columns:1fr 1fr;gap:16px;padding:20px;display:grid}@media (width<=768px){.charts-grid{grid-template-columns:1fr}}
