@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#172b38;--muted:#63727c;--accent:#19536b;--deep:#113e52;--paper:#f5f7f8;--line:#dce4e8;--soft:#e7eff3;--white:#fff}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,summary,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #72abc2;outline-offset:3px}svg{width:24px;height:24px;flex-shrink:0}header{background:#fff;border-bottom:1px solid var(--line)}.header-inner{max-width:1240px;margin:auto;min-height:92px;padding:18px 40px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:11px;font-family:Manrope,sans-serif;font-size:16px;font-weight:800;line-height:1.3}.brand-symbol{width:42px;height:42px;background:var(--accent);border-radius:11px;color:#fff;display:grid;place-items:center}.brand-bottom{display:block;font-size:14px;font-weight:500;color:var(--muted)}nav{display:flex;gap:27px;align-items:center}nav a{font-size:14px;font-weight:600;padding:12px 0}nav a.active{color:var(--accent);box-shadow:0 2px var(--accent)}.menu-button{display:none}main{max-width:1240px;margin:auto;padding:0 40px 70px}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.2;letter-spacing:-.035em}h1{font-size:46px;margin:15px 0 20px;font-weight:800}h2{font-size:29px;margin:8px 0 14px;font-weight:800}h3{font-size:19px;margin:15px 0 8px;font-weight:700}p{margin:0 0 18px}small{font-size:13px;line-height:1.6;color:var(--muted)}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.14em;color:var(--accent)}.home-top{display:grid;grid-template-columns:1fr 1fr;gap:65px;padding:60px 0 52px;align-items:center}.home-intro h1{font-size:49px;line-height:1.14;max-width:520px}.home-intro>p{font-size:17px;color:var(--muted);line-height:1.7}.actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.button{border:1px solid var(--line);border-radius:8px;padding:12px 20px;display:inline-flex;justify-content:center;align-items:center;min-height:46px;font-size:14px;font-weight:700;line-height:1.4}.primary{background:var(--accent);color:white;border-color:var(--accent)}.primary:hover{background:var(--deep)}.secondary{background:#fff;color:var(--ink)}.secondary:hover{background:var(--soft)}.intro-note{display:flex;gap:20px;font-size:12px;color:var(--muted);margin-top:27px;flex-wrap:wrap}.intro-note span+span:before{content:'·';margin-right:20px}.quick-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:28px;box-shadow:0 8px 30px #172b3805}.quick-heading{display:flex;align-items:center;gap:16px;margin-bottom:22px}.quick-heading h2{font-size:20px;margin:5px 0}.tool-icon{display:inline-flex;width:43px;height:43px;border-radius:10px;align-items:center;justify-content:center;background:var(--soft);color:var(--accent);flex-shrink:0}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px}.field{display:flex;flex-direction:column;gap:7px;font-size:14px;font-weight:500;min-width:0}.field input,.field select,.search input{width:100%;border:1px solid #ccd7dd;padding:12px;border-radius:7px;background:#fff;color:var(--ink);min-height:47px}.field input{font-size:16px}.wide{grid-column:1/-1}.quick-result{background:#eef4f7;border-radius:9px;padding:20px;margin:22px 0 16px}.quick-result>span{font-size:13px;color:var(--muted);display:block}.quick-result>strong{display:block;font-size:34px;letter-spacing:-.05em;font-family:Manrope,sans-serif;color:var(--deep)}.quick-result strong small{font-size:14px;font-weight:500}.quick-result>div{display:flex;flex-wrap:wrap;gap:15px;font-size:12px;margin-top:10px}.text-link{font-size:14px;font-weight:600;color:var(--accent);text-decoration:underline;text-underline-offset:4px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:10px 0 22px}.section-heading h2{font-size:27px;margin-bottom:0}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.tool-card{background:#fff;border:1px solid var(--line);border-radius:11px;padding:24px;display:flex;flex-direction:column;transition:box-shadow .15s,border-color .15s}.tool-card:hover{border-color:#98b3c0;box-shadow:0 5px 17px #172b3807}.card-top{display:flex;align-items:center;justify-content:space-between}.favorite{background:transparent;border:0;padding:7px;color:#a4b1b9}.favorite svg{width:19px;height:19px}.favorite.chosen{color:#a2751c}.favorite.chosen svg{fill:#f7e5b5}.tool-card h3{margin:19px 0 9px}.tool-card p{font-size:14px;color:var(--muted);margin-bottom:22px;flex:1}.open-tool{font-size:13px;font-weight:700;color:var(--accent)}.ad-slot{height:95px;background:#f0f3f5;border:1px dashed #d5dfe4;border-radius:9px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;margin:38px 0}.ad-slot span{font-size:10px;letter-spacing:.16em;color:#8c9aa3}.ad-slot small{color:#8c9aa3;font-size:12px}.detour-banner{display:flex;align-items:center;gap:25px;background:var(--soft);border-radius:12px;padding:29px;margin:30px 0 45px}.detour-banner>div{flex:1}.detour-banner h2{font-size:24px}.detour-banner p{font-size:14px;color:var(--muted);margin:0}.garage-promo{background:#fff;border:1px solid var(--line);border-radius:12px;display:grid;grid-template-columns:1.3fr 1fr;gap:60px;padding:40px}.garage-promo h2{font-size:32px}.garage-promo p{color:var(--muted)}.garage-points{padding:15px 0 0}.garage-points p{display:flex;align-items:center;gap:16px;color:var(--ink);font-size:16px;border-bottom:1px solid var(--line);padding-bottom:17px}.garage-points svg{color:var(--accent)}footer{max-width:1160px;margin:auto;border-top:1px solid var(--line);padding:32px 0;display:flex;justify-content:space-between;align-items:flex-start;gap:25px;flex-wrap:wrap}.footer-brand{font-weight:700;font-size:15px}footer p{font-size:13px;color:var(--muted);margin:7px 0}footer>small{width:100%}.footer-links{display:flex;gap:19px;flex-wrap:wrap;font-size:13px;color:var(--muted)}.page-heading{padding:45px 0 25px}.page-heading>p{color:var(--muted);max-width:660px}.page-heading h1{font-size:40px}.compact{padding:10px 0 22px}.breadcrumbs{display:flex;gap:12px;font-size:13px;color:var(--muted);padding:30px 0 15px}.breadcrumbs a{color:var(--accent)}.directory-controls{background:white;border:1px solid var(--line);border-radius:12px;padding:22px}.search{display:block;max-width:510px}.search>span{display:block;font-size:14px;font-weight:600;margin-bottom:8px}.filter-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.filter{font-size:13px;padding:8px 12px;border-radius:6px;border:1px solid var(--line);background:white;color:var(--muted)}.filter.active{background:var(--accent);border-color:var(--accent);color:white}.muted{color:var(--muted);font-size:14px}#tool-count{margin:22px 0 15px}.calculator-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:25px;align-items:start}.input-panel,.white-panel{background:white;border:1px solid var(--line);border-radius:12px;padding:27px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:23px}.panel-heading h2{font-size:21px;margin:0}.panel-heading h3{margin:0}.panel-heading p{margin:8px 0 0}.unit-picker{font-size:12px;color:var(--muted)}.unit-picker select{padding:5px;border:1px solid var(--line);border-radius:4px;font-size:12px;color:var(--ink);max-width:150px}.advanced{margin:22px 0}.advanced summary{font-size:14px;font-weight:600;color:var(--accent);cursor:pointer;margin-bottom:17px}.form-error{color:#a33232;font-size:14px;margin:20px 0 12px}.form-error:empty{display:none}.input-panel .actions{margin-top:23px}.result-panel{background:var(--deep);color:#fff;border-radius:12px;padding:30px;overflow-wrap:anywhere}.result-panel .eyebrow{color:#aac7d6}.main-result{font-family:Manrope,sans-serif;font-size:39px;font-weight:800;letter-spacing:-.055em;margin-top:18px;line-height:1.25}.result-label{color:#c4d5df;margin:10px 0 25px;font-size:15px}.result-breakdown>div{display:flex;justify-content:space-between;align-items:start;gap:18px;border-bottom:1px solid #ffffff24;padding:12px 0;font-size:14px}.result-breakdown strong{text-align:right;font-weight:600}.result-panel .result-breakdown span{color:#c4d5df}.result-actions{display:flex;gap:9px;flex-wrap:wrap;margin:23px 0 16px}.result-save{padding:9px 12px;min-height:40px;background:#ffffff0b;border-color:#ffffff42;color:#fff;font-size:12px}.result-link{font-size:13px;width:100%;color:#d6e7ef;padding-top:9px;text-decoration:underline}.result-panel small{color:#acc3cf}.explanation{background:#fff;padding:30px;border:1px solid var(--line);border-radius:12px}.explanation h2{font-size:24px}.explanation p{color:var(--muted);font-size:15px}.explanation-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin:22px 0}.explanation h3{font-size:17px}.garage-heading{display:flex;justify-content:space-between;gap:20px;align-items:center}.vehicle-tabs{display:flex;gap:12px;margin-bottom:25px;flex-wrap:wrap}.vehicle-tab{display:flex;align-items:center;gap:10px;padding:12px 19px;border-radius:8px;border:1px solid var(--line);background:white;color:var(--ink);font-size:14px}.vehicle-tab.active{color:var(--accent);border-color:var(--accent);background:#e9f1f5}.vehicle-title{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:22px 0}.vehicle-title h2{font-size:28px}.vehicle-title p{font-size:14px;color:var(--muted);margin:0}.small-button{background:white;color:var(--accent);border:1px solid var(--line);padding:8px 12px;border-radius:6px;font-size:13px;min-height:37px}.danger{color:#9f3434}.garage-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.garage-stats>div{background:#fff;border:1px solid var(--line);border-radius:10px;padding:22px;min-width:0}.garage-stats>div>span{font-size:13px;color:var(--muted)}.garage-stats strong{font-family:Manrope,sans-serif;font-size:23px;display:block;margin:13px 0}.garage-stats small{display:block}.garage-stats strong small{display:inline}.text-button{background:none;border:0;font-size:13px;color:var(--accent);padding:0;text-decoration:underline}.garage-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:22px 0}.white-panel .result-breakdown>div{border-color:var(--line)}.reminder{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px 0;border-bottom:1px solid var(--line)}.reminder p{font-size:14px;color:var(--muted);margin:5px 0}.log-filters{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px}th{text-align:left;font-size:12px;color:var(--muted);background:var(--paper);padding:12px}td{padding:13px 12px;border-bottom:1px solid var(--line);vertical-align:top}td:nth-child(5){min-width:140px}td:nth-child(1){white-space:nowrap}.empty-state{background:#fff;border:1px solid var(--line);border-radius:12px;text-align:center;padding:55px 25px;grid-column:1/-1}.empty-state p{color:var(--muted)}.empty-state h2{font-size:27px}.saved-results{margin-top:35px}.saved-results h2{font-size:24px}.saved-row{display:flex;justify-content:space-between;gap:20px;background:white;border:1px solid var(--line);padding:17px;border-radius:7px;margin-bottom:10px;font-size:14px}.saved-row a{color:var(--accent);font-weight:600}.pro-top{text-align:center;padding:65px 0 45px}.pro-top h1{font-size:48px}.pro-top>p{color:var(--muted)}.price{font-size:48px;font-family:Manrope,sans-serif;font-weight:800;letter-spacing:-.06em;margin:25px 0 4px}.price span{font-size:20px;font-weight:500;letter-spacing:0}.availability{display:block;margin-top:12px}.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.plan-grid h2{font-size:26px}.plan-grid ul{padding-left:20px;line-height:2.3;font-size:15px;margin:20px 0}.pro-plan{border:2px solid #729aaa}.legal-page{max-width:790px;padding:55px 0}.legal-page h1{font-size:40px}.legal-page p{font-size:17px;line-height:1.8;color:var(--muted);margin-bottom:25px}dialog{border:1px solid var(--line);border-radius:14px;max-width:660px;width:calc(100% - 32px);padding:30px;color:var(--ink);max-height:90vh;overflow:auto}dialog::backdrop{background:#152e3c80}dialog .button{margin-top:18px}.close-dialog{background:none;border:0;font-size:26px;color:var(--muted)}.checkbox-label{font-size:14px;display:flex;align-items:center;gap:9px}.checkbox-label input{width:18px;height:18px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--deep);color:white;padding:13px 20px;border-radius:9px;font-size:14px;box-shadow:0 4px 25px #0002;opacity:0;pointer-events:none;transition:opacity .2s;z-index:100;max-width:90vw}#toast.show{opacity:1}#print-content{display:none}@media(max-width:1000px){nav{gap:18px}.header-inner{padding:18px 25px}main{padding:0 25px 50px}.home-top{gap:30px}.home-intro h1{font-size:40px}.quick-card{padding:22px}.garage-stats{grid-template-columns:repeat(2,1fr)}footer{margin:0 25px}.cards{gap:14px}.tool-card{padding:20px}.detour-banner{flex-wrap:wrap}.garage-promo{gap:30px}.main-result{font-size:33px}}@media(max-width:760px){header{position:relative}.header-inner{min-height:76px;padding:15px 20px}.menu-button{display:block;background:white;border:1px solid var(--line);border-radius:6px;padding:8px 13px;font-size:14px}nav{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:15px 20px;z-index:10;flex-direction:column;align-items:stretch;gap:0}nav.mobile-open{display:flex}nav a{padding:12px;box-shadow:none!important}nav a.active{background:var(--soft);border-radius:6px}main{padding:0 20px 45px}.home-top{grid-template-columns:1fr;padding:35px 0 30px;gap:30px}.home-intro h1{font-size:39px}.home-intro>p{font-size:16px}.intro-note{gap:12px}.intro-note span+span:before{margin-right:12px}.quick-card{padding:22px}.section-heading{align-items:start}.section-heading h2{font-size:24px}.section-heading>.text-link{min-width:90px;text-align:right}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tool-card{padding:18px}.tool-card h3{font-size:17px}.tool-card p{font-size:14px}.garage-promo{grid-template-columns:1fr;padding:25px;gap:15px}.garage-promo h2{font-size:28px}.detour-banner{padding:23px;gap:18px}.detour-banner h2{font-size:22px}.detour-banner .button{width:100%}.calculator-layout,.garage-columns,.plan-grid,.explanation-grid{grid-template-columns:1fr}.result-panel{padding:25px}.main-result{font-size:39px}.input-panel,.white-panel{padding:23px}.garage-heading{align-items:start;flex-direction:column}.vehicle-title{align-items:start;flex-direction:column}.garage-stats>div{padding:17px}.garage-stats strong{font-size:21px}.garage-stats{gap:12px}.panel-heading{flex-wrap:wrap}.page-heading h1{font-size:34px}.pro-top{padding:45px 0 30px}.pro-top h1{font-size:39px}.saved-row{flex-wrap:wrap}.saved-row span{width:100%}footer{margin:0 20px;padding:25px 0}.footer-links{gap:13px}dialog{padding:23px}.field-grid{gap:16px 12px}.explanation{padding:25px}.legal-page h1{font-size:34px}}@media(max-width:390px){.cards{grid-template-columns:1fr}.field-grid{grid-template-columns:1fr}.garage-stats{grid-template-columns:1fr}.home-intro h1{font-size:35px}.quick-heading h2{font-size:19px}.main-result{font-size:33px}}@media print{#app,#dialogs,#toast{display:none!important}#print-content{display:block}body{background:white;color:black;font:12pt sans-serif}th,td{padding:8px;border:1px solid #aaa}}

.spending-panel{margin-bottom:22px}.expense-chart{margin:22px 0}.expense-chart>div{display:grid;grid-template-columns:70px 1fr 90px;align-items:center;gap:15px;margin:13px 0;font-size:14px}.expense-chart strong{text-align:right;font-size:14px}.chart-track{height:16px;border-radius:4px;background:var(--soft);overflow:hidden}.chart-track>div{height:100%;background:var(--accent);border-radius:4px}.filter,.open-tool,.text-button,.small-button,nav a,.result-save,.result-link{font-size:14px}

.all-tools-action{display:flex;justify-content:center;margin-top:25px}.all-tools-action .button{min-width:220px;padding:14px 26px;font-size:15px}@media(max-width:760px){.all-tools-action .button{width:100%;max-width:360px}}
