:root{
  --salary-ink:#091024;
  --salary-muted:#68728a;
  --salary-line:#e9e9f5;
  --salary-purple:#7658ff;
  --salary-blue:#4f72ff;
  --salary-soft:#f7f5ff;
  --salary-card:rgba(255,255,255,.88);
}

.salary-main{
  overflow:hidden;
  background:
    radial-gradient(circle at 88% 9%,rgba(117,88,255,.15),transparent 24%),
    radial-gradient(circle at 8% 34%,rgba(70,126,255,.10),transparent 25%),
    #fff;
}
.salary-hero{padding:150px 0 58px;position:relative}
.salary-hero:before{
  content:"";position:absolute;inset:40px 0 auto 48%;height:520px;width:520px;
  border-radius:50%;background:radial-gradient(circle,rgba(133,100,255,.12),transparent 64%);filter:blur(10px);pointer-events:none
}
.salary-breadcrumb{margin-bottom:38px}
.salary-breadcrumb nav{display:flex;gap:9px;align-items:center;color:#8a92a4;font-size:.76rem;font-weight:700}
.salary-breadcrumb a{color:#68728a;text-decoration:none}.salary-breadcrumb a:hover{color:#684cff}
.salary-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);gap:72px;align-items:end}
.salary-hero h1{
  max-width:900px;margin:18px 0 24px;font-family:Manrope,sans-serif;
  font-size:clamp(3.5rem,7vw,6.7rem);line-height:.91;letter-spacing:-.07em;color:var(--salary-ink)
}
.salary-hero h1 span{background:linear-gradient(90deg,#5b62ff,#9b4dff);-webkit-background-clip:text;background-clip:text;color:transparent}
.salary-hero-lead{max-width:790px;margin:0;color:#69748c;font-size:1.04rem;line-height:1.75}
.salary-proof{display:grid;gap:12px;padding:24px;border:1px solid rgba(108,86,235,.12);border-radius:26px;background:rgba(255,255,255,.72);box-shadow:0 24px 70px rgba(58,47,128,.07);backdrop-filter:blur(18px)}
.salary-proof-item{display:grid;grid-template-columns:42px 1fr;gap:13px;align-items:center;padding:12px;border-radius:17px;background:rgba(248,247,255,.78)}
.salary-proof-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:linear-gradient(145deg,#eef0ff,#f1e9ff);color:#694fff;font-weight:900}
.salary-proof-item strong{display:block;color:#11182c;font-size:.86rem}.salary-proof-item small{display:block;margin-top:3px;color:#7d8496;font-size:.69rem;line-height:1.45}

.salary-tool-section{padding:14px 0 100px}
.salary-tool-shell{display:grid;grid-template-columns:minmax(0,.95fr) minmax(390px,1.05fr);gap:22px;align-items:start}
.salary-panel{border:1px solid var(--salary-line);border-radius:30px;background:var(--salary-card);box-shadow:0 30px 90px rgba(35,38,88,.08);backdrop-filter:blur(18px)}
.salary-input-panel{padding:30px}
.salary-result-panel{position:sticky;top:98px;padding:30px;background:linear-gradient(160deg,#0d1425 0%,#11182b 67%,#17152f 100%);border-color:rgba(255,255,255,.06);color:#fff;box-shadow:0 34px 90px rgba(10,15,34,.23)}
.salary-panel-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:24px}
.salary-panel-head h2{margin:5px 0 0;font-family:Manrope,sans-serif;font-size:1.45rem;letter-spacing:-.03em}.salary-panel-head p{margin:5px 0 0;color:#80899d;font-size:.76rem;line-height:1.5}
.salary-step{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 9px;border-radius:999px;background:#f0edff;color:#664cff;font-weight:900;font-size:.68rem}
.salary-field{margin-top:22px}.salary-field:first-of-type{margin-top:0}
.salary-field-label{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px;color:#22293a;font-size:.76rem;font-weight:800}
.salary-field-label small{color:#9299a9;font-weight:600}
.salary-segment{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:5px;padding:5px;border-radius:16px;background:#f4f5f9}
.salary-segment button{min-height:45px;padding:8px 10px;border:0;border-radius:12px;background:transparent;color:#6f7788;font:700 .74rem Inter,sans-serif;cursor:pointer;transition:.2s ease}
.salary-segment button:hover{color:#242b3d}.salary-segment button.is-active{background:#fff;color:#12192b;box-shadow:0 7px 22px rgba(30,37,76,.08)}
.salary-amount-wrap{position:relative}.salary-amount-wrap input{width:100%;height:76px;padding:0 76px 0 21px;border:1px solid #e4e6ef;border-radius:18px;background:#fff;color:#0b1225;font:800 1.55rem Manrope,sans-serif;outline:none;transition:.2s ease}
.salary-amount-wrap input:focus{border-color:#8b72ff;box-shadow:0 0 0 4px rgba(118,88,255,.1)}
.salary-amount-wrap span{position:absolute;right:22px;top:50%;transform:translateY(-50%);color:#6a53f1;font:800 1rem Manrope,sans-serif}
.salary-presets{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.salary-presets button{padding:8px 11px;border:1px solid #e6e5f2;border-radius:999px;background:#fff;color:#60697c;font:700 .65rem Inter,sans-serif;cursor:pointer}.salary-presets button:hover{border-color:#aa9cff;color:#6047ec}
.salary-grid-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.salary-select,.salary-number{width:100%;height:48px;padding:0 14px;border:1px solid #e5e7ef;border-radius:14px;background:#fff;color:#1b2233;font:700 .75rem Inter,sans-serif;outline:none}.salary-select:focus,.salary-number:focus{border-color:#8c74ff;box-shadow:0 0 0 3px rgba(118,88,255,.08)}
.salary-status-line.is-muted{opacity:.55;pointer-events:none}
.salary-advanced{margin-top:25px;border-top:1px solid #ececf4;padding-top:18px}.salary-advanced summary{display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none;cursor:pointer;color:#252c3d;font-size:.78rem;font-weight:800}.salary-advanced summary::-webkit-details-marker{display:none}.salary-advanced summary:after{content:"+";display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:#f2efff;color:#664cff;font-size:1.05rem}.salary-advanced[open] summary:after{content:"−"}.salary-advanced-body{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}.salary-advanced-body .salary-field{margin:0}
.salary-switch-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:7px 12px;border:1px solid #e5e7ef;border-radius:14px;background:#fff}.salary-switch-row span{font-size:.72rem;font-weight:700;color:#30384a}.salary-switch{position:relative;width:42px;height:24px}.salary-switch input{opacity:0;position:absolute}.salary-switch i{display:block;width:42px;height:24px;border-radius:999px;background:#dfe2ea;cursor:pointer;transition:.2s}.salary-switch i:after{content:"";position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.15);transition:.2s}.salary-switch input:checked+i{background:linear-gradient(90deg,#566dff,#9552ff)}.salary-switch input:checked+i:after{transform:translateX(18px)}
.salary-input-note{margin:19px 0 0;padding:13px 14px;border-radius:14px;background:#f8f8fc;color:#7f8798;font-size:.65rem;line-height:1.55}

.salary-result-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}.salary-result-head .kicker{color:#a99cff}.salary-source{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid rgba(255,255,255,.08);border-radius:999px;background:rgba(255,255,255,.04);color:#b7bfd0;font-size:.58rem;font-weight:700}.salary-source:before{content:"";width:7px;height:7px;border-radius:50%;background:#56dd9b;box-shadow:0 0 12px rgba(86,221,155,.5)}.salary-source[data-source="fallback"]:before{background:#ffc35a;box-shadow:0 0 12px rgba(255,195,90,.5)}
.salary-result-main{padding:25px;border:1px solid rgba(255,255,255,.08);border-radius:23px;background:linear-gradient(150deg,rgba(255,255,255,.075),rgba(255,255,255,.025));overflow:hidden;position:relative}.salary-result-main:after{content:"";position:absolute;right:-65px;bottom:-100px;width:230px;height:230px;border-radius:50%;background:radial-gradient(circle,rgba(117,88,255,.32),transparent 68%);pointer-events:none}.salary-result-main small{display:block;color:#9ba4b9;font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.salary-result-main strong{display:block;margin-top:7px;font:800 clamp(2.5rem,5vw,4.6rem) Manrope,sans-serif;letter-spacing:-.055em;line-height:1;color:#fff}.salary-result-main p{margin:10px 0 0;color:#afb7c8;font-size:.7rem}.salary-result-main.is-secondary-focus{opacity:.75}
.salary-result-secondary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.salary-result-tile{min-height:102px;padding:17px;border:1px solid rgba(255,255,255,.07);border-radius:18px;background:rgba(255,255,255,.035)}.salary-result-tile small{display:block;color:#8f98ae;font-size:.59rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.salary-result-tile strong{display:block;margin-top:8px;font:800 1.18rem Manrope,sans-serif;color:#f7f8ff}.salary-result-tile em{display:block;margin-top:4px;color:#7f89a2;font-size:.59rem;font-style:normal}.salary-result-gross.is-primary-focus{border-color:rgba(143,117,255,.42);background:rgba(114,83,255,.12)}
.salary-ratio{margin:17px 0 0;padding:17px 0 0;border-top:1px solid rgba(255,255,255,.07)}.salary-ratio-top{display:flex;justify-content:space-between;gap:14px;color:#969fb3;font-size:.62rem}.salary-ratio-track{height:7px;margin-top:9px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}.salary-ratio-fill{height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#5281ff,#9b54ff);transition:width .35s ease}
.salary-details{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:18px;border:1px solid rgba(255,255,255,.07);border-radius:19px;overflow:hidden;background:rgba(255,255,255,.06)}.salary-detail{padding:15px 16px;background:#12192a}.salary-detail span{display:block;color:#8d96aa;font-size:.58rem}.salary-detail strong{display:block;margin-top:5px;color:#e9ecf6;font-size:.79rem}.salary-detail.full{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px}.salary-detail.full strong{margin:0}
.salary-alert{margin-top:14px;padding:12px 13px;border-radius:13px;background:rgba(255,255,255,.05);color:#9fa8ba;font-size:.61rem;line-height:1.5}.salary-alert[data-type="warning"]{background:rgba(255,179,71,.09);color:#f1c887}.salary-alert[data-type="info"]{background:rgba(113,96,255,.09);color:#b9b0f6}
.salary-loading{margin-top:12px;color:#9aa3b5;font-size:.62rem}.salary-loading:before{content:"";display:inline-block;width:9px;height:9px;margin-right:7px;border:2px solid rgba(255,255,255,.22);border-top-color:#a390ff;border-radius:50%;animation:salarySpin .7s linear infinite}@keyframes salarySpin{to{transform:rotate(360deg)}}

.salary-explain{padding:100px 0;background:#f8f8fc;border-top:1px solid #eef0f5;border-bottom:1px solid #eef0f5}.salary-explain-head{display:grid;grid-template-columns:1fr .9fr;gap:70px;align-items:end}.salary-explain h2,.salary-seo h2{margin:12px 0 0;font-family:Manrope,sans-serif;font-size:clamp(2.3rem,4vw,4.3rem);line-height:1;letter-spacing:-.055em}.salary-explain-head p{margin:0;color:#707a90;line-height:1.75}.salary-concepts{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-top:44px}.salary-concept{padding:24px;border:1px solid #e9ebf2;border-radius:22px;background:#fff}.salary-concept span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#f0edff;color:#684fff;font-weight:900}.salary-concept h3{margin:17px 0 8px;font-size:.88rem}.salary-concept p{margin:0;color:#7a8396;font-size:.69rem;line-height:1.6}
.salary-reference{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:30px}.salary-reference-card{padding:24px;border-radius:22px;background:#11182a;color:#fff}.salary-reference-card span{color:#9586ff;font-size:.62rem;font-weight:900;letter-spacing:.09em}.salary-reference-card strong{display:block;margin-top:7px;font:800 1.5rem Manrope,sans-serif}.salary-reference-card p{margin:6px 0 0;color:#9ea7bb;font-size:.68rem;line-height:1.55}
.salary-seo{padding:100px 0}.salary-seo-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px;align-items:start}.salary-seo-copy{position:sticky;top:110px}.salary-seo-copy p{color:#747d90;line-height:1.75}.salary-faq{display:grid;gap:10px}.salary-faq details{border:1px solid #e8eaf1;border-radius:18px;background:#fff}.salary-faq summary{padding:20px 22px;cursor:pointer;list-style:none;font-size:.78rem;font-weight:800;color:#161e30}.salary-faq summary::-webkit-details-marker{display:none}.salary-faq summary:after{content:"+";float:right;color:#7658ff;font-size:1.1rem}.salary-faq details[open] summary:after{content:"−"}.salary-faq p{margin:0;padding:0 22px 21px;color:#747d90;font-size:.7rem;line-height:1.65}
.salary-disclaimer{margin-top:24px;padding:18px 20px;border:1px solid #ebeaf4;border-radius:18px;background:#faf9ff;color:#747d90;font-size:.65rem;line-height:1.65}.salary-disclaimer strong{color:#252d3f}

@media(max-width:1050px){
  .salary-hero-grid{grid-template-columns:1fr;gap:35px}.salary-proof{max-width:700px}.salary-tool-shell{grid-template-columns:1fr}.salary-result-panel{position:relative;top:auto}.salary-concepts{grid-template-columns:1fr 1fr}.salary-seo-grid{grid-template-columns:1fr;gap:40px}.salary-seo-copy{position:static}.salary-explain-head{grid-template-columns:1fr;gap:25px}
}
@media(max-width:720px){
  .salary-hero{padding:115px 0 42px}.salary-breadcrumb{margin-bottom:26px}.salary-hero h1{font-size:clamp(3rem,15vw,4.5rem)}.salary-tool-section{padding-bottom:72px}.salary-panel{border-radius:23px}.salary-input-panel,.salary-result-panel{padding:20px}.salary-grid-two,.salary-advanced-body,.salary-result-secondary,.salary-details,.salary-reference{grid-template-columns:1fr}.salary-concepts{grid-template-columns:1fr}.salary-detail.full{grid-column:auto;display:block}.salary-detail.full strong{margin-top:5px}.salary-amount-wrap input{height:68px;font-size:1.35rem}.salary-segment button{font-size:.68rem}.salary-explain,.salary-seo{padding:72px 0}.salary-result-head{display:grid}.salary-source{justify-self:start}.salary-proof{padding:16px}
}

.salary-advanced .salary-amount-wrap input{height:48px;padding:0 50px 0 14px;font:700 .75rem Inter,sans-serif}
.salary-advanced .salary-amount-wrap span{right:14px;font-size:.78rem}


/* Précisions contextuelles 2026 — volontairement discrètes */
.salary-context-note{
  margin-top:14px;
  padding:12px 14px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
  background:rgba(255,255,255,.035);
  color:rgba(235,239,255,.72);
  font-size:.72rem;
  line-height:1.55;
}
.salary-context-note strong{color:#fff;font-weight:700}
.salary-context-sep{display:inline-block;margin:0 8px;color:#8d7cff}
@media (max-width:640px){
  .salary-context-note{font-size:.69rem;padding:11px 12px}
  .salary-context-sep{display:block;height:5px;overflow:hidden;color:transparent;margin:0}
}

/* Heures supplémentaires / 39 h — précision 2026 */
.salary-field-wide{grid-column:1/-1}
.salary-hour-presets{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}
.salary-hour-presets button{padding:7px 10px;border:1px solid #e6e5f2;border-radius:999px;background:#fff;color:#60697c;font:700 .63rem Inter,sans-serif;cursor:pointer;transition:.18s ease}
.salary-hour-presets button:hover,.salary-hour-presets button.is-active{border-color:#9a87ff;color:#5e49e8;background:#f7f5ff}
.salary-custom-rates{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:12px;border:1px solid #eceaf7;border-radius:16px;background:#faf9ff}
.salary-custom-rates[hidden]{display:none!important}
.salary-rate-cell label{display:block;margin-bottom:6px;color:#626b7e;font-size:.63rem;font-weight:800}
.salary-rate-cell .salary-amount-wrap input{height:44px;font-size:.78rem}
@media(max-width:640px){.salary-custom-rates{grid-template-columns:1fr}}
