
:root{--suisy-ink:#08283a;--suisy-blue:#076a9d;--suisy-blue-soft:#e8f6fc;--suisy-green:#138a5a;--suisy-green-soft:#e9f8f0;--suisy-red:#dc2339;--suisy-paper:#f5f8fa;--suisy-line:#c9dbe5;--suisy-muted:#587284;--suisy-shadow:0 18px 45px rgba(8,40,58,.12)}
*{box-sizing:border-box}.tool-page{background:var(--suisy-paper);color:var(--suisy-ink)}.tool-main{width:min(1160px,calc(100% - 32px));margin:0 auto;padding:34px 0 80px}.tool-header{background:#fff;border-bottom:1px solid var(--suisy-line);min-height:76px;display:flex;align-items:center;justify-content:space-between;padding:10px max(18px,calc((100vw - 1160px)/2));gap:16px}.tool-header img{width:142px;height:auto}.tool-header nav{display:flex;gap:18px;flex-wrap:wrap}.tool-header a{font-weight:700;color:var(--suisy-ink);text-decoration:none}.tool-header a:hover,.tool-header a:focus-visible{color:var(--suisy-blue)}.tool-crumbs{font-size:.92rem;color:var(--suisy-muted);margin:0 0 22px}.tool-crumbs a{color:inherit}.tool-hero{display:grid;grid-template-columns:1.4fr .75fr;gap:24px;padding:34px;border-radius:24px;background:linear-gradient(135deg,#08283a,#0c4a6e);color:#fff;box-shadow:var(--suisy-shadow);margin-bottom:28px}.tool-kicker{display:inline-flex;gap:8px;align-items:center;color:#bfe9ff;font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.tool-kicker::before{content:'';display:block;width:8px;height:8px;border-radius:99px;background:#41d391}.tool-hero h1{font-family:Lexend,Arial,sans-serif;font-size:clamp(2rem,4vw,3.4rem);line-height:1.08;margin:14px 0}.tool-hero p{font-size:1.12rem;line-height:1.6;color:#d9ebf5;max-width:700px}.trust-card{align-self:end;padding:22px;border:1px solid rgba(255,255,255,.24);border-radius:18px;background:rgba(255,255,255,.09)}.trust-card strong{display:block;font-size:1.25rem;margin:8px 0}.trust-card p{font-size:.95rem;margin:0}.tool-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr);gap:24px}.tool-panel,.tool-sidebar,.tool-result{background:#fff;border:1px solid var(--suisy-line);border-radius:20px;box-shadow:0 8px 28px rgba(8,40,58,.06)}.tool-panel{padding:30px}.tool-sidebar{padding:24px;height:max-content;position:sticky;top:18px}.tool-sidebar h2,.tool-panel h2{font-family:Lexend,Arial,sans-serif;margin:0 0 10px}.tool-sidebar p{color:var(--suisy-muted);line-height:1.55}.stepper{display:flex;align-items:center;gap:0;margin:4px 0 30px;overflow:auto}.step{display:flex;align-items:center;gap:8px;white-space:nowrap;color:var(--suisy-muted);font-size:.86rem;font-weight:700}.step b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#e9f0f4;color:var(--suisy-ink)}.step.active{color:var(--suisy-blue)}.step.active b{background:var(--suisy-blue);color:#fff}.step.done b{background:var(--suisy-green);color:#fff}.step-line{height:2px;width:36px;background:#dbe7ed;margin:0 8px}.form-step[hidden]{display:none}.form-step h2{font-size:1.55rem}.form-step>p{color:var(--suisy-muted);line-height:1.55;margin-top:0}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0}.field-grid.one{grid-template-columns:1fr}.field label,.choice-group legend{display:block;font-size:.92rem;font-weight:800;margin-bottom:8px}.field input,.field select{display:block;width:100%;min-height:49px;border:1px solid #aabfca;border-radius:10px;padding:11px 13px;background:#fff;color:var(--suisy-ink);font:inherit}.field input:focus,.field select:focus{outline:3px solid rgba(7,106,157,.25);border-color:var(--suisy-blue)}.field-error{display:block;min-height:20px;color:#b01b31;font-size:.82rem;margin-top:5px}.choice-group{border:0;padding:0;margin:24px 0}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.choice{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--suisy-line);padding:14px;border-radius:12px;cursor:pointer;transition:border-color .18s,transform .18s,background .18s}.choice:hover{border-color:var(--suisy-blue);transform:translateY(-1px)}.choice:has(input:checked){border-color:var(--suisy-blue);background:var(--suisy-blue-soft)}.choice input{accent-color:var(--suisy-blue);margin-top:3px}.choice strong,.choice small{display:block}.choice small{color:var(--suisy-muted);line-height:1.35;margin-top:3px}.tool-actions{display:flex;justify-content:space-between;gap:12px;margin-top:28px}.button-primary,.button-secondary{appearance:none;border:0;border-radius:11px;min-height:48px;padding:12px 18px;font:700 1rem/1 Lexend,Arial,sans-serif;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}.button-primary{background:var(--suisy-blue);color:#fff}.button-primary:hover{background:#055a86}.button-secondary{background:#e8f0f4;color:var(--suisy-ink)}.button-primary:focus-visible,.button-secondary:focus-visible{outline:3px solid rgba(7,106,157,.35);outline-offset:3px}.tool-result{padding:24px;margin-top:20px}.tool-result[hidden]{display:none}.result-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid var(--suisy-line);padding-bottom:16px}.result-status{color:var(--suisy-green);font-weight:800;font-size:.88rem}.result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0}.result-item{padding:15px;background:#f4f8fa;border-radius:12px}.result-item small{display:block;color:var(--suisy-muted);font-weight:700}.result-item strong{display:block;margin-top:5px}.notice{border-left:4px solid var(--suisy-green);background:var(--suisy-green-soft);padding:14px 16px;border-radius:0 10px 10px 0;line-height:1.5}.source-log{margin:22px 0 0;padding:0;list-style:none}.source-log li{border-top:1px solid var(--suisy-line);padding:12px 0;display:flex;gap:10px}.source-log b{min-width:29px;color:var(--suisy-blue)}.dossier-card{border:1px solid var(--suisy-line);padding:14px;border-radius:12px;background:#fff;margin:12px 0}.dossier-card h3{font-size:1rem;margin:0 0 5px}.dossier-card p{margin:0;font-size:.9rem}.saved-pill{display:inline-flex;padding:5px 8px;border-radius:99px;background:var(--suisy-green-soft);color:#0b6d45;font-size:.75rem;font-weight:800}.calc-value{font-size:clamp(2rem,5vw,3.5rem);font-family:Lexend,Arial,sans-serif;margin:10px 0;color:var(--suisy-blue)}.meter{height:10px;background:#dce9ef;border-radius:999px;overflow:hidden}.meter>i{display:block;height:100%;background:var(--suisy-green);border-radius:inherit;transition:width .35s ease}.tool-link-list{padding:0;margin:18px 0;list-style:none}.tool-link-list li+li{margin-top:8px}.tool-link-list a{color:var(--suisy-blue);font-weight:700}.fade-in{animation:fadeIn .35s ease both}@keyframes fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (max-width:800px){.tool-header nav{display:none}.tool-main{width:min(100% - 24px,1160px);padding-top:20px}.tool-hero,.tool-layout{grid-template-columns:1fr}.tool-hero{padding:25px}.tool-sidebar{position:static;order:2}.tool-panel{padding:21px}.field-grid,.choice-grid,.result-grid{grid-template-columns:1fr}.step-line{width:14px;margin:0 4px}.step span{display:none}.tool-actions{flex-wrap:wrap}.button-primary,.button-secondary{flex:1}.tool-header img{width:126px}}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

.route-action-list{padding:0 0 0 24px;margin-top:20px}
.route-action-list li{padding:16px 0;border-bottom:1px solid var(--suisy-line)}
.route-action-list h4{margin:0 0 8px;font-size:1rem;line-height:1.5}
.route-action-list p{margin:0 0 10px;line-height:1.6}
.route-action-list a{display:inline-flex;align-items:center;min-height:44px;color:var(--suisy-blue);font-weight:700;text-underline-offset:3px}
@media(max-width:800px){.tool-header{flex-wrap:wrap;gap:10px;padding-block:12px}.tool-header nav{display:flex;flex-wrap:wrap;gap:10px;width:100%;justify-content:space-between}.tool-header nav a{display:flex;align-items:center;min-height:44px;padding:6px 10px;background:#eef3f6;border-radius:8px}}

.tool-page{margin:0;font-family:"Source Sans 3",Arial,sans-serif;font-size:17px;line-height:1.5}
.result-status[data-saved="false"]{color:#8a4b00}.notice.route-unsaved{background:#fff5e7;border-left-color:#a36308}
