/* Italian tool workspaces share the article palette and masthead. */
body.tool-page{--ink:var(--nt-ink);--muted:var(--nt-muted);--blue:var(--nt-blue);--line:var(--nt-line);--surface:var(--nt-surface);--ricaora-rim:var(--nt-line);--ricaora-shadow:0 12px 30px #1b5c8b0c;--ricaora-cta:#087bea;--fit-panel:var(--nt-surface);--fit-soft:#087bea0b;--model-glass:var(--nt-surface);--model-rim:var(--nt-line);--model-input:var(--nt-surface);--model-line:var(--nt-line);--model-shadow:var(--ricaora-shadow);--cost-glass:var(--nt-surface);--cost-rim:var(--nt-line);--cost-input:var(--nt-surface);--cost-shadow:var(--ricaora-shadow);--cost-inner:transparent;--cost-input-line:var(--nt-line);background:radial-gradient(ellipse at 10% 0,#dff6ff80,transparent 52%),#f3f7fb;color:var(--ink);font-family:'DM Sans',system-ui,sans-serif}
html[data-theme=dark] body.tool-page{--ink:var(--nt-ink);--muted:var(--nt-muted);--blue:var(--nt-blue);--line:var(--nt-line);--surface:var(--nt-surface);--fit-panel:var(--nt-surface);--fit-soft:#86d2ff0d;--model-glass:var(--nt-surface);--model-rim:var(--nt-line);--model-input:#18394e;--model-line:var(--nt-line);--cost-glass:var(--nt-surface);--cost-rim:var(--nt-line);--cost-input:#18394e;--cost-inner:transparent;--cost-input-line:var(--nt-line);background:linear-gradient(180deg,#122f47,#102a40)}
.tool-page .site-head>.wrap,.tool-page .site-foot>.wrap{max-width:1126px}
.tool-page .gl-header{display:flex;align-items:center;justify-content:space-between;gap:14px}
.tool-page .gl-header-actions{display:flex;align-items:center;gap:10px}
.tool-page .theme-toggle{display:grid;place-items:center;width:44px;height:44px;min-height:44px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);cursor:pointer}
.tool-page .theme-toggle svg{width:23px;height:23px}
.tool-page .locale-picker summary{display:flex;align-items:center;min-height:44px;padding:8px;font-size:12px;cursor:pointer}
.tool-page main.wrap{width:min(960px,calc(100% - 48px));max-width:960px;padding-bottom:36px}
.tool-page.cost-page main.wrap{max-width:800px}
.tool-page :is(.fit-intro,.cost-intro,.model-hero){padding:16px 0 28px;max-width:none}
.tool-page :is(.fit-eyebrow,.cost-intro>.cost-kicker,.model-kicker){display:block;color:var(--blue);font-size:11px;font-weight:750;letter-spacing:.08em}
.tool-page :is(.fit-eyebrow,.cost-intro>.cost-kicker,.model-kicker):before{content:'';display:block;width:35px;height:4px;background:#087bea;border-radius:4px;margin-bottom:14px}
.tool-page :is(.fit-intro,.cost-intro,.model-hero) h1{font:750 clamp(34px,4.5vw,50px)/1.08 'Space Grotesk',system-ui,sans-serif;letter-spacing:-.045em;color:var(--ink);margin:12px 0 16px;max-width:21ch}
.tool-page :is(.fit-intro,.cost-intro,.model-hero)>p{font-size:16px;line-height:1.7;color:var(--muted);max-width:65ch}
.tool-page :is(h2,h3){font-family:'Space Grotesk',system-ui,sans-serif;color:var(--ink)}
.tool-page #cost-form,.tool-page :is(.fit-result,.fit-dimension,.fit-compare,.fit-action-panel,.model-card,.cost-answer,.cost-panel,.cost-metric){background:var(--surface);border-color:var(--line);box-shadow:var(--ricaora-shadow);backdrop-filter:none}
.tool-page :is(.fit-button,.cost-button,.model-button){font-family:inherit;border-radius:13px;box-shadow:none;min-height:48px}
.tool-page .fit-button-primary,.tool-page .cost-primary{background:#087bea!important;color:#fff!important;border-color:#087bea}
.tool-page :is(input,select){font-family:inherit;min-width:0}
.tool-page :is(.fit-field input,.fit-field select,.growth-select input,.growth-select select,.growth-controls input){background:var(--cost-input);border:1px solid var(--line);color:var(--ink);font:500 16px 'DM Sans',system-ui,sans-serif;border-radius:12px;min-height:48px;width:100%;padding:11px 12px}
.tool-page .cost-field{border:0;background:transparent;box-shadow:none;padding:0}
.tool-page .cost-field input{box-shadow:none}
.tool-page .cost-grid{gap:24px}
.tool-page #cost-form{padding:26px}
.tool-page .cost-field small{font-size:13px;line-height:1.6}
.tool-page .cost-note{font-size:13px}
.tool-page .cost-metric{padding:20px;border:1px solid var(--line)}
.tool-page .cost-answer{border-left:4px solid #087bea}
.tool-page .cost-options{margin-top:20px;padding-top:10px;border-top:1px solid var(--line)}
.tool-page .cost-options .cost-field{margin-top:10px}
.tool-page .growth-select{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.tool-page .growth-select fieldset{min-width:0;border:1px solid var(--line);border-radius:18px;padding:20px;margin:0;background:var(--fit-soft)}
.tool-page .growth-select legend{font:700 18px 'Space Grotesk',system-ui,sans-serif;padding:0 8px}
.tool-page .growth-select label{display:block;font-size:14px;line-height:1.5;font-weight:650;margin:16px 0 8px}
.tool-page .growth-select small{display:block;font-size:13px;line-height:1.6;margin-top:8px;color:var(--muted)}
.tool-page .growth-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.tool-page .growth-controls label{font-size:14px;line-height:1.5;font-weight:650}
.tool-page .growth-controls input{display:block;margin-top:8px}
.tool-page .growth-status{font-size:14px;line-height:1.65;color:var(--muted)}
.tool-page .model-card{padding:26px;margin:0 0 24px}
.tool-page .model-card h3{margin-top:28px}
.tool-page .model-method{background:var(--fit-soft);border-color:var(--line)}
.tool-page .comparison-table{width:100%;min-width:0;table-layout:fixed;border-collapse:collapse;font-size:14px;line-height:1.6}
.tool-page .comparison-table :is(th,td){padding:16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line);overflow-wrap:anywhere;color:var(--ink)}
.tool-page .comparison-table thead th{background:var(--fit-soft);font-weight:750}
.tool-page .comparison-table caption{padding:14px;text-align:left;font-size:13px;color:var(--muted)}
.tool-page .comparison-table tbody tr:nth-child(even){background:var(--fit-soft)}
.tool-page .comparison-actions a{display:block;min-height:44px;padding:8px 0;color:var(--blue)}
.tool-page .tool-related{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}
.tool-page .tool-related a{display:flex;align-items:center;min-height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:13px;background:var(--surface);color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}
.tool-page :is(input,select):focus-visible{outline:3px solid #087bea;outline-offset:3px}
.tool-page.fit-page{--fit-card:var(--nt-surface);--fit-card-line:var(--nt-line);--fit-card-shadow:var(--ricaora-shadow);--fit-input:var(--cost-input);--fit-active:var(--fit-soft)}
html[data-theme=dark] .tool-page.fit-page{--fit-card:var(--nt-surface);--fit-card-line:var(--nt-line);--fit-input:var(--cost-input);--fit-active:var(--fit-soft)}
.tool-page.fit-page .fit-panel{padding:0;border:0;background:transparent;box-shadow:none}
.tool-page.fit-page[data-fit-view=steps] .fit-intro,.tool-page.fit-page[data-fit-view=result] .fit-intro{padding:14px 0 18px}
.tool-page.fit-page[data-fit-view=steps] .fit-intro h1,.tool-page.fit-page[data-fit-view=result] .fit-intro h1{font-size:24px;max-width:none;margin:0}
.tool-page.fit-page[data-fit-view=steps] .fit-eyebrow,.tool-page.fit-page[data-fit-view=result] .fit-eyebrow{display:none}
.tool-page.fit-page .fit-summary-next{background:#087bea}
@media(max-width:640px){
 .tool-page main.wrap{width:calc(100% - 32px)}
 .tool-page .site-head .brand{width:125px;flex-basis:125px}
 .tool-page .gl-header-actions{gap:6px}
 .tool-page :is(.fit-intro,.cost-intro,.model-hero){padding:12px 0 22px}
 .tool-page :is(.fit-intro,.cost-intro,.model-hero) h1{font-size:34px}
 .tool-page :is(.fit-intro,.cost-intro,.model-hero)>p{font-size:15px;line-height:1.65}
 .tool-page :is(.model-card,#cost-form,.cost-answer,.cost-panel){padding:20px;border-radius:21px}
 .tool-page .growth-select{grid-template-columns:1fr;gap:20px}
 .tool-page .growth-select fieldset{padding:16px}
 .tool-page .growth-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}
 .tool-page .cost-grid{gap:22px}
 .tool-page .cost-result .cost-grid{grid-template-columns:1fr;gap:12px}
 .tool-page .cost-actions{flex-direction:column}
 .tool-page .comparison-table{display:block;font-size:14px}
 .tool-page .comparison-table caption{display:block}
 .tool-page .comparison-table thead{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .tool-page .comparison-table tbody{display:block}
 .tool-page .comparison-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border-top:1px solid var(--line)}
 .tool-page .comparison-table tbody th{grid-column:1/-1;padding:12px 14px 0;border:0;font-size:14px}
 .tool-page .comparison-table td{padding:10px 14px 16px;border:0;font-size:15px}
 .tool-page .comparison-table td+td{border-left:1px solid var(--line)}
 .tool-page .comparison-table td:before{content:attr(data-car);display:block;color:var(--muted);font-size:11px;line-height:1.5;font-weight:650;margin-bottom:7px}
 .tool-page #comparison-results{padding:18px 10px}
 .tool-page #comparison-results h2{padding-inline:8px}
 .tool-page .tool-related{display:grid}
}
@media print{.tool-page .tool-related{display:none}}

.tool-page.fit-page :is(input[name=weeklyKm],input[name=dayKm]){font-size:28px;font-weight:750;color:var(--blue);min-height:56px}
