@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";
:root{--bg:#f7f8fa;--bg-white:#fff;--bg-hover:#f0f1f3;--bg-canvas:#f8f9fb;--surface:#fff;--surface-soft:#ffffffd1;--surface-strong:#fffffff2;--bg-dark:#0a0a0a;--text:#111;--text-secondary:#6b7280;--text-muted:#9ca3af;--text-inverse:#fff;--primary:#0a0a0a;--accent:#00c2a8;--accent-hover:#00a892;--accent-light:#00c2a814;--border:#e5e7eb;--border-light:#f3f4f6;--success:#10b981;--success-light:#10b98114;--warning:#f59e0b;--warning-light:#f59e0b14;--info:#3b82f6;--info-light:#3b82f614;--font:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--text-xs:.75rem;--text-sm:.8125rem;--text-base:.9375rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--max-width:1200px;--sidebar-width:240px;--sidebar-collapsed:64px;--header-height:60px;--radius-sm:6px;--radius:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px;--shadow-sm:0 1px 2px #0000000a;--shadow:0 1px 3px #0000000f, 0 1px 2px #0000000a;--shadow-md:0 4px 6px #0000000d, 0 2px 4px #00000008;--shadow-lg:0 10px 15px #0000000f, 0 4px 6px #00000008;--shadow-xl:0 20px 25px #00000014, 0 8px 10px #0000000a;--transition-fast:.15s ease;--transition:.2s ease;--transition-slow:.3s ease}html[data-theme=dark]{--bg:#11161d;--bg-white:#171d26;--bg-hover:#202836;--bg-canvas:#0d1117;--surface:#171d26;--surface-soft:#171d26d1;--surface-strong:#0d1117e6;--text:#f3f5f7;--text-secondary:#b7c0cc;--text-muted:#8a95a5;--border:#2a3443;--border-light:#202836;--shadow-sm:0 1px 2px #00000052;--shadow:0 1px 3px #00000059, 0 1px 2px #0000003d;--shadow-md:0 8px 18px #0000004d;--shadow-lg:0 16px 32px #00000057;--shadow-xl:0 24px 48px #0000006b}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}body{font-family:var(--font);font-size:var(--text-base);color:var(--text);background-color:var(--bg-canvas);min-height:100vh;transition:background-color var(--transition-slow), color var(--transition-fast);background-image:linear-gradient(#f8f9fbf2,#f8f9fbfa);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;line-height:1.6}html[data-theme=dark] body{background-image:linear-gradient(#080c12f2,#080c12fa)}a{color:inherit;text-decoration:none}button{font-family:var(--font);cursor:pointer;background:0 0;border:none}input,select,textarea{font-family:var(--font);font-size:var(--text-base)}img{max-width:100%;display:block}ul,ol{list-style:none}.container{max-width:var(--max-width);padding:0 var(--space-6);margin:0 auto}.page-content{padding-top:calc(var(--header-height) + 72px + var(--space-8));padding-bottom:var(--space-16);min-height:100vh}.garage-bar{top:var(--header-height);z-index:95;background:var(--surface-strong);border-bottom:1px solid var(--border-light);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:fixed;left:0;right:0}.garage-bar-inner{align-items:center;gap:var(--space-3);padding-top:var(--space-2);padding-bottom:var(--space-2);display:flex}.garage-title{align-items:center;gap:var(--space-2);min-width:220px;font-size:var(--text-xs);color:var(--text-secondary);font-weight:600;display:flex}.garage-fields{gap:var(--space-2);grid-template-columns:repeat(7,minmax(0,1fr));width:100%;display:grid}.garage-fields .input{height:34px;font-size:var(--text-xs)}@media (max-width:1100px){.garage-bar-inner{align-items:stretch;gap:var(--space-2);flex-direction:column}.garage-title{min-width:0}.garage-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.page-content{padding-top:calc(var(--header-height) + 132px + var(--space-8))}}@media (max-width:640px){.garage-fields{grid-template-columns:1fr 1fr}.page-content{padding-top:calc(var(--header-height) + 190px + var(--space-6))}}h1,h2,h3,h4,h5,h6{letter-spacing:-.01em;font-weight:600;line-height:1.3}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}h4{font-size:var(--text-lg)}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);border-radius:var(--radius);transition:all var(--transition);white-space:nowrap;height:36px;font-weight:500;display:inline-flex}.btn-primary{background:var(--primary);color:var(--text-inverse)}.btn-primary:hover{box-shadow:var(--shadow-md);background:#1a1a1a;transform:translateY(-1px)}.btn-accent{background:var(--accent);color:var(--text-inverse)}.btn-accent:hover{background:var(--accent-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-outline{border:1px solid var(--border);background:var(--bg-white);color:var(--text)}.btn-outline:hover{border-color:var(--text-muted);background:var(--bg-hover)}.btn-ghost{color:var(--text-secondary)}.btn-ghost:hover{background:var(--bg-hover);color:var(--text)}.btn-sm{height:32px;padding:var(--space-1) var(--space-3);font-size:var(--text-xs)}.btn-lg{height:44px;padding:var(--space-3) var(--space-6);font-size:var(--text-base)}.btn-icon{width:36px;padding:0}.btn-icon.btn-sm{width:32px}.btn:active{opacity:.85;transform:translateY(0)!important}.btn:disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.btn-secondary{background:var(--bg);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{background:var(--bg-hover);border-color:var(--text-muted)}.input{width:100%;height:40px;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius);transition:all var(--transition);outline:none;display:block}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #00c2a81f}select.input{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%239CA3AF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:32px}select.input:hover{border-color:var(--accent)}.input-lg{height:48px;padding:var(--space-3) var(--space-4);font-size:var(--text-base)}.input-search{padding-left:var(--space-10);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%239CA3AF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E");background-position:12px;background-repeat:no-repeat}.card{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all var(--transition)}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.card-interactive{cursor:pointer}.card-interactive:hover{box-shadow:var(--shadow-lg);border-color:var(--accent);transform:translateY(-3px)}.card-body{padding:var(--space-5)}.badge{font-size:var(--text-xs);border-radius:var(--radius-full);align-items:center;padding:2px 8px;font-weight:500;line-height:1.5;display:inline-flex}.badge-success{background:var(--success-light);color:var(--success)}.badge-warning{background:var(--warning-light);color:var(--warning)}.badge-accent{background:var(--accent-light);color:var(--accent)}.badge-info{background:var(--info-light);color:var(--info)}.badge-neutral{background:var(--bg-hover);color:var(--text-secondary)}.table-wrapper{overflow-x:auto}.table{border-collapse:collapse;width:100%}.table th{text-align:left;padding:var(--space-3) var(--space-4);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);border-bottom:1px solid var(--border);font-weight:600}.table td{padding:var(--space-3) var(--space-4);font-size:var(--text-sm);border-bottom:1px solid var(--border-light)}.table tr:hover td{background:var(--bg);transition:background var(--transition-fast)}.table tr{transition:background var(--transition-fast)}.grid{gap:var(--space-5);display:grid}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}@media (min-width:769px) and (max-width:1024px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.section{padding:var(--space-12) 0}.section-title{font-size:var(--text-xl);margin-bottom:var(--space-6);font-weight:600}.separator{background:var(--border);height:1px;margin:var(--space-6) 0}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fade-in{opacity:0;animation:.9s cubic-bezier(.16,1,.3,1) forwards fadeIn}.animate-slide-up{animation:.4s forwards slideUp}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes spin3d{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes float{0%,to{transform:translateY(0)rotate(0)}25%{transform:translateY(-6px)rotate(2deg)}50%{transform:translateY(-2px)rotate(0)}75%{transform:translateY(-8px)rotate(-2deg)}}@keyframes pistonMove{0%,to{transform:translateY(0)}50%{transform:translateY(12px)}}@keyframes rotateY3d{0%{transform:perspective(200px)rotateY(0)}to{transform:perspective(200px)rotateY(360deg)}}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:200px 0}}@keyframes voiceRing{0%{opacity:.5;transform:scale(1)}80%{opacity:0;transform:scale(1.6)}to{opacity:0;transform:scale(1.6)}}.animate-spin-slow{animation:8s linear infinite spin}@media (max-width:640px){.container{padding:0 var(--space-6)}header .container,header>div{padding-right:24px!important}h1{font-size:var(--text-2xl)}h2{font-size:var(--text-xl)}.hide-mobile{display:none!important}}@media (min-width:641px){.hide-desktop{display:none!important}}.header-logo img{object-fit:contain;width:160px!important;height:54px!important}@media (max-width:640px){.header-logo{z-index:101!important;width:auto!important;margin:0!important;padding:0!important;position:absolute!important;top:50%!important;left:8px!important;transform:translateY(-50%)!important}.header-logo img{object-fit:contain!important;object-position:left center!important;width:130px!important;height:40px!important;margin:0!important}}label{font-size:var(--text-sm);color:var(--text);margin-bottom:var(--space-2);font-weight:600;display:block}.skeleton{background:linear-gradient(90deg, var(--bg-hover) 25%, var(--bg) 50%, var(--bg-hover) 75%);border-radius:var(--radius);background-size:200% 100%;animation:1.5s ease-in-out infinite shimmer}.empty-state{padding:var(--space-12) var(--space-6);text-align:center;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state svg{margin-bottom:var(--space-4);opacity:.3}.empty-state p{font-size:var(--text-sm)}.nav-link{color:var(--text-secondary);transition:color var(--transition);font-size:var(--text-sm);font-weight:500}.nav-link:hover{color:var(--text)}.footer-link{color:#fff9;transition:color var(--transition);font-size:var(--text-sm)}.footer-link:hover{color:#fff}.progress-bar{background:var(--border);border-radius:var(--radius-full);height:4px;overflow:hidden}.progress-bar-fill{background:var(--accent);border-radius:var(--radius-full);height:100%;transition:width var(--transition-slow)}.alert{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius);font-size:var(--text-sm);display:flex}.alert-success{background:var(--success-light);color:var(--success);border:1px solid #10b98133}.alert-error{color:#dc2626;background:#ef444414;border:1px solid #ef444433}.alert-info{background:var(--info-light);color:var(--info);border:1px solid #3b82f633}.spin{animation:1s linear infinite spin}@keyframes pulse-red{0%,to{opacity:1;box-shadow:0 0 #f006}50%{opacity:.8;box-shadow:0 0 0 6px #f000}}.show-mobile{display:none!important}@media (max-width:768px){.show-mobile{display:flex!important}.hide-mobile{display:none!important}aside{z-index:1100;top:0;bottom:0;left:0;transform:translate(-100%);box-shadow:20px 0 50px #0003;width:280px!important;position:fixed!important}aside.sidebar-open{transform:translate(0)!important}.dashboard-content{padding:var(--space-4)!important;margin-top:60px!important}.dashboard-grid-responsive{gap:var(--space-4)!important;grid-template-columns:1fr!important;display:grid!important}.dashboard-split-grid,.dashboard-chart-grid{gap:var(--space-6)!important;grid-template-columns:1fr!important;display:grid!important}.dashboard-header-responsive{align-items:flex-start!important;gap:var(--space-4)!important;flex-direction:column!important}.dashboard-header-responsive button{width:100%!important}.dashboard-mode-grid{grid-template-columns:repeat(2,1fr)!important}.dashboard-form-grid{grid-template-columns:1fr!important}.dashboard-form-grid>div{grid-column:span 1!important}}@media (min-width:769px) and (max-width:1024px){.dashboard-grid-responsive{grid-template-columns:repeat(2,1fr)!important}}.dashboard-grid-responsive{gap:var(--space-4);grid-template-columns:repeat(4,1fr);display:grid}.dashboard-split-grid{gap:var(--space-6);grid-template-columns:1fr 1fr;display:grid}.dashboard-chart-grid{gap:var(--space-6);grid-template-columns:2fr 1fr;display:grid}.dashboard-mode-grid{gap:var(--space-2);grid-template-columns:repeat(4,1fr);display:grid}.dashboard-form-grid{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}@media (max-width:640px){.btn-lg{width:100%;height:48px}.card{border-radius:var(--radius)}}
