:root{--karvia-primary-50:#0b02b81f;--karvia-primary-100:#0b02b833;--karvia-primary-500:var(--kv-royal,#0b02b8);--karvia-primary-600:var(--kv-royal,#0b02b8);--karvia-primary-700:#08018a;--karvia-success-50:#3da56a1f;--karvia-success-100:#3da56a33;--karvia-success-500:var(--kv-forest,#3da56a);--karvia-success-600:#2f8f58;--karvia-success-700:#297f50;--karvia-warning-50:#f59e0b1f;--karvia-warning-500:var(--kv-warning,#f59e0b);--karvia-warning-600:#d97706;--karvia-danger-50:#ff4d4d1f;--karvia-danger-500:var(--kv-red,#ff4d4d);--karvia-danger-600:#e63939;--karvia-gray-50:#121012;--karvia-gray-100:#1a1819;--karvia-gray-200:#ebe6e338;--karvia-gray-300:#ebe6e359;--karvia-gray-400:#ebe6e38c;--karvia-gray-500:#ebe6e38c;--karvia-gray-600:#ebe6e3b3;--karvia-gray-700:#ebe6e3;--karvia-gray-800:#363336;--karvia-gray-900:#000;--karvia-text-display:4rem;--karvia-text-h1:3.5rem;--karvia-text-h2:2.25rem;--karvia-text-h3:1.875rem;--karvia-text-h4:1.5rem;--karvia-text-lg:1.125rem;--karvia-text-base:1rem;--karvia-text-sm:.875rem;--karvia-text-xs:.75rem;--karvia-space-1:.25rem;--karvia-space-2:.5rem;--karvia-space-3:.75rem;--karvia-space-4:1rem;--karvia-space-5:1.25rem;--karvia-space-6:1.5rem;--karvia-space-8:2rem;--karvia-space-10:2.5rem;--karvia-space-12:3rem;--karvia-space-16:4rem;--karvia-space-20:5rem;--karvia-header-height:4.75rem;--karvia-header-gap:.75rem;--karvia-header-clearance:calc(var(--karvia-header-height) + var(--karvia-header-gap));--karvia-radius-sm:.5rem;--karvia-radius-md:.75rem;--karvia-radius-lg:1rem;--karvia-radius-xl:1.5rem;--karvia-radius-2xl:2rem;--karvia-shadow-sm:0 1px 2px #0006;--karvia-shadow-md:0 8px 24px #00000073;--karvia-shadow-lg:0 10px 15px #00000059;--karvia-shadow-xl:0 20px 25px #0006;--karvia-shadow-2xl:0 25px 50px #00000073;--karvia-gradient-primary:linear-gradient(135deg,var(--karvia-primary-500),var(--kv-periwinkle,#5f75f4));--karvia-gradient-success:linear-gradient(135deg,var(--karvia-success-600),var(--karvia-success-500));--karvia-gradient-background:var(--kv-ink,#000)}*{box-sizing:border-box;margin:0;padding:0}body{font-size:var(--karvia-text-base);color:var(--kv-canvas);background:var(--karvia-gradient-background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}.text-accent{background:var(--karvia-gradient-primary);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.image-optimized{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;will-change:transform;transform:translateZ(0)}.image-lazy{opacity:0;transition:opacity .3s ease-in-out}.image-lazy.loaded{opacity:1}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-spinner{border:3px solid var(--kv-border-strong);border-top-color:var(--kv-cta);border-radius:50%;width:2rem;height:2rem;animation:.8s linear infinite spin}@keyframes karvia-fade-up{0%{opacity:0;transform:translateY(2rem)}to{opacity:1;transform:translateY(0)}}@keyframes karvia-float{0%,to{transform:translateY(0)}50%{transform:translateY(-1rem)}}@keyframes karvia-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}.karvia-card{background:var(--kv-charcoal);border-radius:var(--karvia-radius-lg);box-shadow:none;border:1px solid var(--kv-border-strong);color:var(--kv-canvas);transition:border-color .2s}.karvia-card:hover{box-shadow:none;border-color:var(--kv-lime);transform:none}.jarvis-card{border-radius:var(--karvia-radius-lg,1.25rem);transition:border-color .2s,box-shadow .2s}.kv-page--landing .karvia-section-dark .jarvis-card,.karvia-section-dark .jarvis-card,.kv-ink-band .jarvis-card{border:1px solid var(--kv-border-strong);background:var(--kv-charcoal);color:var(--kv-canvas)}.kv-page--landing .karvia-section-dark .jarvis-card:hover,.karvia-section-dark .jarvis-card:hover,.kv-ink-band .jarvis-card:hover{border-color:var(--kv-lime);box-shadow:none;transform:none}.karvia-btn-primary{align-items:center;gap:var(--karvia-space-2);padding:var(--karvia-space-4)var(--karvia-space-8);background:var(--kv-lime);color:var(--kv-ink);font-family:var(--kv-font);font-size:var(--karvia-text-base);border-radius:var(--karvia-radius-lg);box-shadow:none;cursor:pointer;border:none;font-weight:700;text-decoration:none;transition:filter .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.karvia-btn-primary:hover{filter:brightness(1.05);box-shadow:none;transform:none}.karvia-btn-secondary{align-items:center;gap:var(--karvia-space-2);padding:var(--karvia-space-4)var(--karvia-space-8);background:var(--karvia-gradient-success);color:#fff;font-family:var(--kv-font);font-size:var(--karvia-text-base);border-radius:var(--karvia-radius-lg);box-shadow:var(--karvia-shadow-lg);cursor:pointer;border:none;font-weight:600;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.karvia-btn-secondary:hover{box-shadow:var(--karvia-shadow-xl);transform:translateY(-.125rem)}.karvia-btn-outline{align-items:center;gap:var(--karvia-space-2);padding:var(--karvia-space-3)var(--karvia-space-6);color:var(--kv-lime);font-family:var(--kv-font);font-size:var(--karvia-text-sm);border:1px solid var(--kv-border-strong);border-radius:var(--karvia-radius-md);cursor:pointer;background:0 0;font-weight:700;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.karvia-btn-outline:hover{border-color:var(--kv-lime);background:#b5ff001a;transform:none}.karvia-btn{justify-content:center;align-items:center;gap:var(--karvia-space-2);padding:var(--karvia-space-3)var(--karvia-space-6);font-family:var(--kv-font);font-weight:600;font-size:var(--karvia-text-sm);border-radius:var(--karvia-radius-lg);cursor:pointer;text-align:center;border:none;min-width:200px;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.karvia-btn-primary{background:var(--kv-lime);color:var(--kv-ink);box-shadow:none}.karvia-btn-primary:hover{background:var(--kv-lime);filter:brightness(1.05);box-shadow:none;transform:none}.karvia-btn-secondary{background:var(--kv-charcoal)!important;color:var(--kv-canvas)!important;border:1px solid var(--kv-border-strong)!important;box-shadow:none!important}.karvia-btn-secondary:hover{transform:none;background:var(--kv-charcoal)!important;border-color:var(--kv-lime)!important;color:var(--kv-lime)!important;box-shadow:none!important}.karvia-btn-lg{padding:var(--karvia-space-4)var(--karvia-space-8);font-size:var(--karvia-text-base);min-width:250px}.karvia-btn-success{color:#fff;background:linear-gradient(135deg,#059669,#047857);box-shadow:0 4px 12px #05966933}.karvia-btn-success:hover{background:linear-gradient(135deg,#047857,#065f46);transform:translateY(-1px);box-shadow:0 6px 20px #0596694d}.karvia-btn-toggle{background:var(--karvia-gray-100);color:var(--karvia-gray-600);min-width:auto;box-shadow:0 2px 4px #0000000d}.karvia-btn-toggle:hover{background:var(--karvia-gray-200);color:var(--karvia-gray-700);transform:translateY(-1px);box-shadow:0 4px 8px #0000001a}.karvia-animate-fade-up{animation:.6s ease-out forwards karvia-fade-up}.karvia-animate-float{animation:4s ease-in-out infinite karvia-float}.karvia-animate-pulse{animation:3s ease-in-out infinite karvia-pulse}@media (max-width:1200px){.hero-cards-container{gap:var(--karvia-space-4)!important;padding:var(--karvia-space-6)!important;grid-template-columns:repeat(2,1fr)!important}}@media (max-width:1024px){.hero-cards-container{gap:var(--karvia-space-4)!important;padding:var(--karvia-space-6)!important;grid-template-columns:repeat(2,1fr)!important}}@media (max-width:768px){.hero-cards-container{gap:var(--karvia-space-3)!important;padding:var(--karvia-space-4)!important;grid-template-columns:repeat(2,1fr)!important}}@media (max-width:480px){.hero-cards-container{gap:var(--karvia-space-4)!important;padding:var(--karvia-space-4)!important;grid-template-columns:1fr!important}.hero-card{padding:var(--karvia-space-4)!important;height:auto!important;min-height:200px!important}}@media (max-width:640px){.hero-card{padding:var(--karvia-space-5)!important}}.hero-section,.karvia-page-top{padding-top:calc(var(--karvia-header-clearance) + 1.75rem)!important}@media (max-width:1024px){.hero-section,.karvia-page-top{padding-top:calc(var(--karvia-header-clearance) + 1rem)!important}}@media (max-width:768px){:root{--karvia-header-gap:.5rem}.hero-section,.karvia-page-top{padding-top:calc(var(--karvia-header-clearance) + .75rem)!important}:is(main:has(>.karvia-hero-section),main:has(>.fleet-hero)){padding-top:0!important}section.karvia-hero-section:first-of-type,section.fleet-hero:first-of-type,section.hero-section:first-of-type,main.hero-section,main.karvia-page-top{margin-top:0!important}}@media (max-width:480px){:root{--karvia-header-gap:.5rem}.hero-section,.karvia-page-top{padding-top:calc(var(--karvia-header-clearance) + .75rem)!important}}@media (max-width:768px){.hero-cards-container{margin-top:var(--karvia-space-4)!important}}@media (max-width:375px){:root{--karvia-header-gap:.5rem}.hero-section,.karvia-page-top{padding-top:calc(var(--karvia-header-clearance) + .75rem)!important}.hero-cards-container{margin-top:var(--karvia-space-6)!important}}@media (max-width:1200px){.pricing-value-cards{grid-template-columns:repeat(2,1fr)!important;gap:1rem!important}}@media (max-width:1024px){.pricing-value-cards{grid-template-columns:repeat(2,1fr)!important;gap:1rem!important}}@media (max-width:640px){.pricing-value-cards{grid-template-columns:1fr!important;gap:1rem!important}}@media (max-width:1200px){.features-tech-grid{gap:var(--karvia-space-4)!important;grid-template-columns:repeat(2,1fr)!important;max-width:64rem!important}}@media (max-width:768px){.features-tech-grid{gap:var(--karvia-space-4)!important;grid-template-columns:1fr!important}}.dashboard-container{background:linear-gradient(135deg,#1a202c 0%,#2d3748 100%);min-height:100vh;display:flex}.dashboard-sidebar{z-index:100;background:#fff;border-right:1px solid #e2e8f0;flex-direction:column;width:280px;height:100vh;transition:transform .3s;display:flex;position:fixed;top:0;left:0;box-shadow:0 4px 6px -1px #0000001a}.mobile-menu-toggle{z-index:200;background:var(--kv-lime);width:48px;height:48px;color:var(--kv-ink);cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;font-size:1.5rem;display:none;position:fixed;top:1rem;left:1rem;box-shadow:0 4px 12px #0006}.sidebar-overlay{z-index:90;background:#00000080;display:none;position:fixed;inset:0}.dashboard-main{flex:1;margin-left:280px;padding:2rem;overflow-x:hidden}.dashboard-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.dashboard-header h1{color:#fff;margin:0;font-size:2rem;font-weight:700}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem;display:grid}.stat-card{background:#fff;border-radius:1rem;padding:1.5rem;box-shadow:0 4px 6px #0000001a}.quick-actions-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:2rem;display:grid}.quick-action-card{text-align:center;cursor:pointer;color:inherit;background:#fff;border-radius:1rem;padding:1.5rem;text-decoration:none;transition:all .2s}.quick-action-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #00000026}.fleet-section{grid-template-columns:2fr 1fr;gap:1.5rem;display:grid}.vehicle-card{background:#fff;border-radius:.75rem;align-items:center;gap:1rem;margin-bottom:.75rem;padding:1rem;transition:all .2s;display:flex}.vehicle-card:hover{background:#f8fafc}.nav-link{color:var(--kv-muted);font-family:var(--kv-font);border-radius:.5rem;align-items:center;gap:.75rem;margin:.25rem 0;padding:.75rem 1rem;text-decoration:none;transition:all .2s;display:flex}.nav-link:hover{color:var(--kv-canvas);background:#ebe6e314}.nav-link.active{background:var(--kv-lime);color:var(--kv-ink)}.user-profile-section{border-top:1px solid var(--kv-border);margin-top:auto;padding:1rem}.user-profile-card{background:var(--kv-surface);border-radius:.75rem;align-items:center;gap:.75rem;padding:.75rem;display:flex}.user-avatar{color:#fff;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:.875rem;font-weight:600;display:flex}@media (max-width:1024px){.dashboard-sidebar{width:240px}.dashboard-main{margin-left:240px;padding:1.5rem}.dashboard-header h1{font-size:1.75rem}.stats-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.fleet-section{grid-template-columns:1fr}.quick-actions-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.mobile-menu-toggle{display:flex}.dashboard-sidebar{width:280px;transform:translate(-100%)}.dashboard-sidebar.open{transform:translate(0)}.sidebar-overlay.visible{display:block}.dashboard-main{margin-left:0;padding:5rem 1rem 1rem}.dashboard-header{flex-direction:column;align-items:flex-start}.dashboard-header h1{font-size:1.5rem}.stats-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.stat-card{padding:1rem}.stat-card h3{font-size:1.5rem}.quick-actions-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.quick-action-card{padding:1rem}.fleet-section{grid-template-columns:1fr;gap:1rem}.vehicle-card{text-align:center;flex-direction:column;padding:1rem}.mobile-period-selector{margin-bottom:1rem;justify-content:center!important;width:100%!important}.mobile-period-selector button{flex:1;max-width:90px;min-width:70px!important}.obd-section-header{text-align:center!important;flex-direction:column!important;gap:1rem!important}.chart-container{overflow-x:auto;padding:.75rem!important}.chart-svg{width:100%;min-width:300px;height:auto}.status-badge{margin:0 auto;align-self:center!important}.metrics-grid{grid-template-columns:1fr!important;gap:.75rem!important}.diagnostic-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))!important}}@media (max-width:480px){.dashboard-main{padding:4.5rem .75rem .75rem}.dashboard-header h1{font-size:1.25rem}.stats-grid{grid-template-columns:1fr 1fr;gap:.5rem}.stat-card{padding:.75rem}.stat-card h3{font-size:1.25rem}.stat-card p{font-size:.75rem}.quick-actions-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}.quick-action-card{padding:.75rem;font-size:.875rem}.quick-action-card span:first-child{font-size:1.5rem}.karvia-btn{min-width:auto;padding:.5rem 1rem;font-size:.875rem}}.chat-container{flex-direction:column;height:calc(100vh - 200px);min-height:400px;display:flex}.chat-messages{flex:1;padding:1rem;overflow-y:auto}.chat-input-container{border-top:1px solid var(--kv-border);gap:.75rem;padding:1rem;display:flex}.chat-input{border:1px solid #e5e7eb;border-radius:2rem;outline:none;flex:1;padding:.875rem 1rem;font-size:1rem}.chat-input:focus{border-color:var(--kv-royal)}@media (max-width:768px){.chat-container{height:calc(100vh - 150px)}.chat-input-container{flex-direction:row;padding:.75rem}.chat-input{padding:.75rem;font-size:.9rem}.chat-messages{padding:.75rem}.message-bubble{max-width:85%!important;padding:.75rem 1rem!important;font-size:.9rem!important}}.obd-gauges-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;display:grid}.obd-gauge-card{text-align:center;background:#1f2937;border-radius:1rem;padding:1.5rem}@media (max-width:768px){.obd-gauges-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.obd-gauge-card{padding:1rem}.obd-gauge-card h3{font-size:1.75rem}}@media (max-width:480px){.obd-gauges-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}.obd-gauge-card{padding:.75rem}.obd-gauge-card h3{font-size:1.5rem}}input,select,textarea{font-size:16px!important}@media (max-width:768px){input,select,textarea{border-radius:.5rem;padding:.75rem}button:not(.ai-action-row):not(.ai-health-card__actions):not(.dash-chip):not(.kv-vehicle-tab):not(.kv-tab){min-height:44px;padding:.75rem 1rem}}.responsive-table{width:100%;overflow-x:auto}@media (max-width:768px){.responsive-table table{min-width:600px}.responsive-table th,.responsive-table td{padding:.75rem .5rem;font-size:.875rem}}.modal-overlay{z-index:1000;background:#000000b3;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-content{background:#fff;border-radius:1rem;width:100%;max-width:600px;max-height:90vh;overflow-y:auto}@media (max-width:768px){.modal-overlay{align-items:flex-end;padding:.5rem}.modal-content{border-radius:1rem 1rem 0 0;max-height:85vh}}@media (hover:none) and (pointer:coarse){.karvia-card:hover,.quick-action-card:hover,.vehicle-card:hover{transform:none}.karvia-card:active,.quick-action-card:active,.vehicle-card:active{opacity:.9;transform:scale(.98)}.nav-link{min-height:48px;padding:1rem}button:not(.ai-action-row):not(.ai-health-card__actions):not(.dash-chip),a:not(.dash-chip):not(.ai-chat-btn){min-height:44px}}@media (max-width:768px){html,body{width:100%;overflow-x:hidden}[style*="grid-template-columns: repeat(auto-fit"],[style*="grid-template-columns: repeat(2"],[style*="grid-template-columns: repeat(3"],[style*="grid-template-columns: repeat(4"]{grid-template-columns:1fr 1fr!important}[style*="display: flex"][style*=gap]{flex-wrap:wrap!important}[style*="padding: 1.5rem"],[style*="padding: 2rem"]{padding:1rem!important}}@media (max-width:480px){[style*="grid-template-columns: repeat(auto-fit"],[style*="grid-template-columns: repeat(2"]{grid-template-columns:1fr!important}[style*="padding: 1.5rem"],[style*="padding: 2rem"]{padding:.75rem!important}[style*="font-size: 2rem"]{font-size:1.5rem!important}[style*="font-size: 1.5rem"]{font-size:1.25rem!important}}
