:root{--color-bg:#fff;--color-text:#1a1a1e;--color-text-secondary:#3a3a42;--color-text-muted:#6b6b72;--color-text-faint:#8a8a90;--color-text-faintest:#9a9aa0;--color-accent:#6c4fe0;--color-accent-bg:#eeebfb;--color-accent-orange:#d98a3d;--color-accent-orange-bg:#fbeee1;--color-accent-blue:#3d6ad9;--color-accent-blue-bg:#e7eefb;--color-star:#f5a623;--color-border:#e3e3e7;--color-border-light:#eeeef1;--color-border-lighter:#f0f0f2;--color-gray-bg:#f4f3f7;--color-dark-bg:#17171b;--font-sans:"Plus Jakarta Sans", system-ui, sans-serif;--font-serif:"Newsreader", Georgia, serif;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-xl:24px;--radius-pill:999px;--gutter:28px;--shadow-card:0 18px 44px #1a1a1e24;--shadow-soft:0 4px 16px #1a1a1e0f;--primary:var(--color-accent);--secondary:#21c359;--light-primary:#fef2f2;--light-secondary:var(--color-accent-bg);--bg:var(--color-bg);--paper:var(--color-gray-bg);--text:var(--color-text);--petrol:var(--color-accent);--petrol-soft:var(--color-accent-bg);--diesel:var(--color-accent-orange);--diesel-soft:var(--color-accent-orange-bg);--ev:var(--color-accent-blue);--ev-soft:var(--color-accent-blue-bg);--win:var(--secondary);--win-text:#15803d;--win-ink:#166534;--win-soft:color-mix(in srgb, var(--secondary) 10%, #fff);--primary-deep:color-mix(in srgb, var(--color-accent) 82%, #000);--light-tertiary:var(--win-soft);--muted:var(--color-text-muted);--line:var(--color-border);--line-soft:var(--color-border-light);--r-lg:var(--radius-lg);--r-md:var(--radius-md);--r-sm:var(--radius-sm);--pad:16px;--display:var(--font-sans);--body:var(--font-sans);--mono:var(--font-sans)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{color:var(--text);font-family:var(--body);-webkit-font-smoothing:antialiased;background-color:var(--bg);margin:0;font-size:16px;line-height:1.5}h1,h2,h3{font-family:var(--display);letter-spacing:-.02em;margin:0;font-weight:600}p{margin:0}button{font:inherit;color:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--radius-sm)}.page{flex-direction:column;gap:22px;width:100%;max-width:620px;margin:0 auto;padding:20px 16px 44px;display:flex}.masthead{border-bottom:1px solid var(--color-border-light);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 16px;padding-bottom:16px;display:flex}.masthead__brand{flex-direction:column;flex:12rem;gap:6px;min-width:0;display:flex}.wordmark{letter-spacing:-.03em;font-size:clamp(1.875rem,7.5vw,2.375rem);font-weight:600;line-height:1.05}.wordmark span{color:var(--primary)}.tagline{font-family:var(--font-serif);color:var(--color-text-muted);font-size:.9375rem;font-style:italic;font-weight:400;line-height:1.45}.page-footer{border-top:1px solid var(--color-border-light);margin-top:4px;padding-top:16px}.page-footer p{color:var(--color-text-faintest);font-size:.6875rem}.section-label{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;font-size:.6875rem;font-weight:600}.vehicle-class-switch{border-radius:var(--radius-pill);background:var(--color-gray-bg);border:1px solid var(--color-border-lighter);grid-template-columns:1fr 1fr;gap:4px;max-width:320px;margin:0 auto 12px;padding:4px;display:grid}.vehicle-class-switch button{border-radius:var(--radius-pill);letter-spacing:.01em;color:var(--color-text-muted);background:0 0;border:0;padding:9px 14px;font-size:.75rem;font-weight:600;transition:background-color .18s,color .18s,box-shadow .18s}.vehicle-class-switch button[aria-pressed=true]{background:var(--color-dark-bg);color:#fff;box-shadow:var(--shadow-soft)}.cars{grid-template-columns:1fr 1fr;gap:10px;display:grid}.car{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);flex-direction:column;gap:10px;padding:12px;transition:border-color .18s,box-shadow .18s;display:flex}.car-photo{aspect-ratio:auto;border-radius:var(--radius-md);background:0 0;justify-content:flex-end;align-items:center;min-height:0;display:flex;position:relative;overflow:visible}.car-photo img,.car-photo>span[aria-hidden]{display:none}.car-photo:has(.car-badge){margin-bottom:2px}.car-photo .car-badge{position:static}.car-fuel-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.car-fuel-heading{letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-faint);font-size:.6875rem;font-weight:700}.car-tag{border-radius:var(--radius-pill);letter-spacing:.04em;text-transform:uppercase;background:var(--color-accent-blue-bg);color:var(--color-accent-blue);margin:0;padding:7px 12px;font-size:.6875rem;font-weight:700}.car--ev .car-tag{background:var(--color-accent-blue-bg);color:var(--color-accent-blue)}.car--petrol .car-tag{background:var(--color-accent-bg);color:var(--color-accent)}.car--diesel .car-tag{background:var(--color-accent-orange-bg);color:var(--color-accent-orange)}.fuel-switch{border-radius:var(--radius-pill);border:1px solid var(--color-border);background:#fff;grid-template-columns:1fr 1fr;gap:3px;padding:3px;display:inline-grid}.fuel-switch button{border-radius:var(--radius-pill);letter-spacing:.04em;text-transform:uppercase;min-width:88px;color:var(--color-text-muted);background:0 0;border:1px solid #0000;padding:7px 10px;font-size:.6875rem;font-weight:700;transition:background-color .18s,color .18s,box-shadow .18s,border-color .18s}.fuel-switch button.petrol[aria-pressed=true]{background:var(--color-accent);color:#fff;border-color:var(--color-accent);box-shadow:0 4px 12px #6c4fe047}.fuel-switch button.diesel[aria-pressed=true]{background:var(--color-accent-orange);color:#fff;border-color:var(--color-accent-orange);box-shadow:0 4px 12px #d98a3d47}.fuel-switch button[aria-pressed=false]{background:var(--color-gray-bg)}.fuel-switch button:disabled{opacity:.45;cursor:not-allowed;text-decoration:none}.baas-switch{border-radius:var(--radius-pill);border:1px solid var(--color-border);background:#fff;grid-template-columns:1fr 1fr;gap:3px;padding:3px;display:inline-grid}.baas-switch button{background:var(--color-gray-bg);border-radius:var(--radius-pill);letter-spacing:.04em;text-transform:uppercase;min-width:72px;color:var(--color-text-muted);border:1px solid #0000;padding:7px 10px;font-size:.6875rem;font-weight:700;transition:background-color .18s,color .18s,box-shadow .18s,border-color .18s}.baas-switch button[aria-pressed=true]{background:var(--color-accent-blue);border-color:var(--color-accent-blue);color:#fff;box-shadow:0 4px 12px #3d6ad947}.baas-switch button:disabled{opacity:.45;cursor:not-allowed}.car-baas-note{color:var(--color-accent-blue);margin-top:4px;font-size:.6875rem;font-weight:600}.car-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.car-name{font-family:var(--display);font-size:.9375rem;font-weight:600;line-height:1.25}.car-variant{color:var(--color-text-muted);font-size:.75rem}.car-price{text-align:right;font-family:var(--body);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:.8125rem;font-weight:600;line-height:1.2}.car-price span{font-family:var(--body);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:2px;font-size:.5625rem;font-weight:600;display:block}.car-cost{border-top:1px solid var(--color-border-light);justify-content:space-between;align-items:flex-end;gap:16px;margin-top:auto;padding-top:12px;display:flex}.car-cost>div{flex-direction:column;gap:6px;display:flex}.car-cost-label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:.625rem;font-weight:700}.car-cost-total{font-family:var(--display);font-variant-numeric:tabular-nums;color:var(--color-text);font-size:1.1875rem;font-weight:600;line-height:1.15}.car-cost-emi{font-family:var(--body);color:var(--color-text-muted);font-variant-numeric:tabular-nums;font-size:.75rem}.car-delta{text-align:right;letter-spacing:.06em;text-transform:uppercase;flex-direction:column;flex-shrink:0;gap:6px;font-size:.6875rem;font-weight:700;line-height:1.2;display:flex}.car-delta strong{font-family:var(--display);letter-spacing:-.02em;text-transform:none;font-variant-numeric:tabular-nums;margin-top:0;font-size:1.4375rem;font-weight:600;display:block}.car-delta--save{color:var(--win-text)}.car-delta--loss{color:#dc2626}.car--win{border-color:color-mix(in srgb, var(--win) 45%, var(--color-border));background:var(--win-soft);box-shadow:0 0 0 1px color-mix(in srgb, var(--win) 12%, transparent), var(--shadow-soft)}.car-badge{z-index:2;border-radius:var(--radius-pill);border:1px solid color-mix(in srgb, var(--color-star) 55%, #fff);background:color-mix(in srgb, var(--color-star) 18%, #fff);color:var(--color-text);font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;box-shadow:var(--shadow-soft);align-items:center;gap:6px;padding:7px 12px 7px 8px;font-size:.75rem;font-weight:600;line-height:1;animation:.4s cubic-bezier(.2,1.4,.4,1) both badge-pop;display:inline-flex;position:absolute;top:10px;right:10px}.car-badge-icon{background:var(--color-star);color:#fff;border-radius:50%;place-items:center;width:20px;height:20px;display:grid}.car-badge-icon svg{width:12px;height:12px}.car-badge-text{color:var(--color-text-secondary)}@keyframes badge-pop{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.car--win .car-cost{border-top-color:color-mix(in srgb, var(--win) 25%, var(--color-border-light))}.car-specs-row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 12px;display:flex}.car-specs{color:var(--muted);margin:0;font-size:.6875rem}.car-specs-row .estimate{text-align:right;margin:0}.car-picks{flex-direction:column;gap:6px;display:flex}.field{flex-direction:column;gap:4px;display:flex}.field label{color:var(--muted);font-size:.6875rem;font-weight:600}.field-wrap{display:flex;position:relative}.field input,.field select{width:100%;font:inherit;color:var(--text);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);appearance:none;padding:9px 12px;font-size:.8125rem;line-height:1.3;transition:border-color .15s,box-shadow .15s,background-color .15s}.field input{font-family:var(--body);font-variant-numeric:tabular-nums;-moz-appearance:textfield}.field input::-webkit-outer-spin-button{appearance:none;margin:0}.field input::-webkit-inner-spin-button{appearance:none;margin:0}.field select{background-image:linear-gradient(45deg, transparent 50%, var(--text) 50%), linear-gradient(135deg, var(--text) 50%, transparent 50%);background-position:calc(100% - 14px) 14px,calc(100% - 10px) 14px;background-repeat:no-repeat;background-size:4px 4px,4px 4px;padding-right:26px}.field input:focus,.field select:focus{border-color:var(--primary);background:var(--color-gray-bg);box-shadow:0 0 0 3px var(--color-accent-bg);outline:none}.field-suffix{font-family:var(--body);color:var(--color-text-faint);pointer-events:none;font-size:.6875rem;font-weight:500;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.field--error input{background:var(--light-primary);border-color:#d63a5a}.field-note{color:var(--muted);font-size:.6875rem}.field-note--error{color:#b32844;font-weight:600}.verdict{border-radius:var(--radius-md);background:var(--color-gray-bg);border:1px solid var(--color-border-light);border-left:4px solid var(--color-border);flex-direction:column;gap:4px;padding:16px 18px;display:flex}.verdict--petrol{background:var(--petrol-soft);border-color:var(--color-border-light);border-left-color:var(--petrol)}.verdict--diesel{background:var(--diesel-soft);border-color:var(--color-border-light);border-left-color:var(--diesel)}.verdict--ev{background:var(--ev-soft);border-color:var(--color-border-light);border-left-color:var(--ev)}.verdict h2{text-wrap:balance;font-size:clamp(1.0625rem,3.6vw,1.25rem);line-height:1.2}.verdict-savings{border-radius:var(--radius-pill);background:var(--color-bg);border:1px solid var(--color-border-light);font-variant-numeric:tabular-nums;align-self:flex-start;margin-top:10px;padding:7px 14px;font-size:.8125rem;font-weight:600}.verdict-savings strong{font-family:var(--display);font-size:1.125rem;line-height:1}.verdict-note{color:var(--muted);margin-top:8px;font-size:.875rem}.verdict--petrol .verdict-savings strong{color:var(--petrol)}.verdict--diesel .verdict-savings strong{color:var(--diesel)}.verdict--ev .verdict-savings strong{color:var(--ev)}.controls{grid-template-columns:1fr 1fr;align-items:start;gap:14px 10px;display:grid}.estimate{color:var(--muted);font-size:.6875rem}.cta{border-radius:var(--radius-pill);background:var(--color-dark-bg);color:#fff;width:100%;font-family:var(--display);box-shadow:var(--shadow-soft);border:0;padding:14px 22px;font-size:1rem;font-weight:600;transition:background-color .18s,transform .12s,box-shadow .18s}.cta:hover{background:color-mix(in srgb, var(--color-dark-bg) 88%, #fff)}.cta:active{transform:scale(.98)}.cta--header{flex:none;align-self:center;width:auto;margin-left:auto;padding:10px 18px;font-size:.8125rem;font-weight:600}.cta--header:active{transform:scale(.98)}.btn{border:1px solid var(--color-border);background:var(--color-bg);border-radius:var(--radius-pill);padding:11px 18px;font-size:.875rem;font-weight:600;transition:background-color .15s,border-color .15s}.btn:hover{background:var(--color-gray-bg);border-color:var(--color-border)}.btn:active{transform:scale(.98)}.btn--primary{border-color:var(--color-dark-bg);background:var(--color-dark-bg);color:#fff}.btn--primary:hover{background:color-mix(in srgb, var(--color-dark-bg) 88%, #fff);border-color:color-mix(in srgb, var(--color-dark-bg) 88%, #fff)}.btn--text{box-shadow:none;color:var(--muted);text-underline-offset:3px;background:0 0;border:0;padding:11px 2px;text-decoration:underline}.btn--text:active{transform:none}dialog.sheet{border-radius:var(--r-lg) var(--r-lg) 0 0;background:var(--bg);width:100%;max-width:640px;max-height:92dvh;color:var(--text);border:0;margin:auto auto 0;padding:0;overflow:hidden}dialog.sheet::backdrop{background:color-mix(in srgb, var(--text) 55%, transparent)}.wizard{flex-direction:column;max-height:92dvh;display:flex}.wizard-top{padding:16px var(--pad) 12px;background:var(--color-gray-bg);border-bottom:1px solid var(--color-border-light);justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.wizard-top h2{font-size:1.125rem}.wizard-top p{color:var(--muted);margin-top:2px;font-size:.75rem}.icon-btn{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-bg);flex-shrink:0;place-items:center;width:36px;height:36px;font-size:1rem;line-height:1;transition:background-color .15s,transform .12s;display:grid}.icon-btn:hover{background:var(--color-gray-bg)}.icon-btn:active{transform:scale(.96)}.stepper ol{padding:12px var(--pad);border-bottom:1px solid var(--color-border-light);gap:6px;margin:0;list-style:none;display:flex;overflow-x:auto}.stepper button{color:var(--muted);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;padding:4px 2px;font-size:.75rem;font-weight:600}.stepper button[aria-current=step]{color:var(--primary);border-bottom-color:var(--primary)}.stepper button:disabled{opacity:.45;cursor:not-allowed}.wizard-body{min-height:0;padding:16px var(--pad) 20px;flex:1;overflow-y:auto}.wizard-body>div{flex-direction:column;gap:20px;display:flex}.wizard-foot{padding:12px var(--pad);border-top:1px solid var(--color-border-light);background:var(--color-bg);justify-content:space-between;align-items:center;gap:10px;display:flex}.wizard-foot div{gap:8px;display:flex}.step-context{color:var(--color-text-muted);background:var(--color-accent-bg);border-radius:var(--radius-md);border:1px solid var(--color-border-light);padding:10px 12px;font-size:.8125rem}.group{border:0;flex-direction:column;gap:12px;margin:0;padding:0;display:flex}.group>legend{font-family:var(--display);margin-bottom:4px;padding:0;font-size:.9375rem;font-weight:600}.computed{background:var(--color-gray-bg);border-radius:var(--radius-md);color:var(--color-text-muted);border:1px solid var(--color-border-light);justify-content:space-between;align-items:baseline;gap:12px;padding:10px 12px;font-size:.8125rem;display:flex}.computed strong{font-family:var(--body);color:var(--text);font-variant-numeric:tabular-nums;font-weight:600}.radio-list{border:0;flex-direction:column;gap:8px;margin:0;padding:0;display:flex}.radio-list legend{color:var(--muted);margin-bottom:4px;padding:0;font-size:.75rem;font-weight:600}.radio{border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;background:var(--color-bg);align-items:flex-start;gap:10px;padding:10px 12px;font-size:.8125rem;transition:border-color .15s,background-color .15s;display:flex}.radio:has(input:checked){border-color:var(--primary);background:var(--color-accent-bg)}.radio input{accent-color:var(--primary);margin-top:3px}.radio span{color:var(--muted);font-size:.75rem;display:block}.radio strong{color:var(--text);font-weight:600}.results{flex-direction:column;gap:16px;display:flex}.emi{border-radius:var(--radius-md);border:1px solid var(--color-border-light);padding:14px}.emi--petrol{background:var(--petrol-soft)}.emi--diesel{background:var(--diesel-soft)}.emi--ev{background:var(--ev-soft)}.emi h3{letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);font-size:.6875rem;font-family:var(--body);font-weight:600}.emi-amount{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:600}.emi--petrol .emi-amount{color:var(--petrol)}.emi--diesel .emi-amount{color:var(--diesel)}.emi--ev .emi-amount{color:var(--ev)}.emi-rate{color:var(--muted);font-size:.75rem}.emi dl{border-top:1px solid var(--color-border-light);grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0 0;padding-top:10px;display:grid}.emi dt{font-family:var(--body);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);font-size:.625rem;font-weight:600}.emi dd{font-family:var(--body);font-variant-numeric:tabular-nums;margin:2px 0 0;font-size:.8125rem;font-weight:600}.data-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.8125rem}.data-table td:not(:first-child){font-family:var(--body);font-weight:500}.data-table th{text-align:right;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);padding:8px 6px;font-size:.6875rem}.data-table th:first-child{text-align:left}.data-table td{border-bottom:1px solid var(--color-border-light);text-align:right;padding:9px 6px}.data-table td:first-child{text-align:left;color:var(--muted)}.data-table tr.total td{border-top:2px solid var(--color-text);border-bottom:0;font-weight:600}.chart-card h3{font-family:var(--body);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:8px;font-size:.75rem;font-weight:700}.tips{background:var(--color-accent-bg);border:1px solid var(--color-border-light);border-radius:var(--radius-md);padding:14px}.tips h2{font-size:.9375rem;font-weight:600}.tips ul{color:var(--muted);flex-direction:column;gap:5px;margin:8px 0 0;padding-left:18px;font-size:.8125rem;display:flex}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.page>*{animation:.5s cubic-bezier(.22,1,.36,1) both rise}.page>:nth-child(2){animation-delay:50ms}.page>:nth-child(3){animation-delay:.1s}.page>:nth-child(4){animation-delay:.15s}.page>:nth-child(5){animation-delay:.2s}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}@media (width>=600px){.page{gap:26px;max-width:780px;padding:32px 24px 56px}.cars{gap:14px}.car{padding:14px}.verdict{padding:18px 22px 18px 26px}dialog.sheet{border-radius:var(--r-lg);max-height:88dvh;margin:auto}.wizard{max-height:88dvh}}@media (width>=960px){.page{gap:30px;max-width:1060px}.cars{gap:20px}.car{padding:16px}.car-picks{grid-template-columns:minmax(0,.9fr) minmax(0,1fr) minmax(0,1.3fr);gap:10px;display:grid}.controls{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:16px 14px;display:grid}}
