
:root{
  --ls-navy:#071d4c;
  --ls-navy-2:#0d2f78;
  --ls-blue:#1f7dff;
  --ls-cyan:#18bfd4;
  --ls-violet:#7b4dff;
  --ls-bg:#f4f8ff;
  --ls-card:#ffffff;
  --ls-border:#d9e6fb;
  --ls-text:#10254d;
  --ls-muted:#5d6f8d;
  --ls-shadow:0 14px 35px rgba(16,37,77,.08);
}
html{scroll-behavior:smooth}
body{background:linear-gradient(180deg,#f8fbff 0%,#eef5ff 100%) !important;color:var(--ls-text) !important;font-family:Inter,Arial,sans-serif}
.ls-shell{max-width:1180px;margin:0 auto;padding:0 24px}
.ls-tool-header{position:relative;z-index:3;padding:18px 0 10px;background:transparent}
.ls-tool-header-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.ls-studio-link{display:flex;align-items:center;gap:12px;text-decoration:none !important;color:var(--ls-navy) !important;font-weight:900;letter-spacing:-.03em}
.ls-studio-link img{width:44px;height:44px;border-radius:12px;box-shadow:0 8px 18px rgba(21,91,255,.15)}
.ls-studio-wordmark{font-size:1.35rem;line-height:1}.ls-studio-wordmark strong{color:var(--ls-navy)}.ls-studio-wordmark span{color:var(--ls-blue)}
.ls-tool-home{display:flex;flex-direction:column;gap:2px;min-width:0;color:var(--ls-text)!important;text-decoration:none!important}
.ls-tool-kicker{font-size:.7rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--ls-blue)}
.ls-tool-name{font-size:1.1rem;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ls-header-button,.home-link,.home{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 16px;border-radius:999px;border:1px solid var(--ls-border)!important;background:#fff !important;color:var(--ls-navy)!important;font-size:.9rem;font-weight:800;box-shadow:0 8px 18px rgba(16,37,77,.06);text-decoration:none!important}
main{position:relative}
main > *:first-child{margin-top:4px}
.intro,.hero,.page-card,.solver,.result,.input-card,.result-card,.card,.group,.summary,.tip,.steps article,.safety,.page section,.tool-shell,.panel,.results,.workspace aside,.workspace .calculator,.workspace .forms,.workspace .result,.workspace .stage{box-shadow:var(--ls-shadow)}
.intro,.hero{background:linear-gradient(135deg,#ffffff 0%,#f2f7ff 100%) !important;border:1px solid var(--ls-border)!important;border-radius:28px;margin-top:10px !important;padding-top:32px !important;padding-bottom:32px !important}
.hero,.intro,.workspace,.page{position:relative}
.page-card,.solver,.result,.input-card,.result-card,.card,.group,.tip,.safety,.results,.workspace aside,.workspace .calculator,.workspace .forms,.workspace .result,.workspace .stage{background:var(--ls-card)!important;border:1px solid var(--ls-border)!important;border-radius:24px !important}
.summary{background:linear-gradient(145deg,var(--ls-navy) 0%, var(--ls-navy-2) 100%) !important;color:#fff !important;border:0 !important;box-shadow:0 18px 38px rgba(7,29,76,.2) !important}
.summary > p,.summary .local-note,.summary .summary-label{color:#dbe7ff !important}
.summary > strong,.summary h2,.summary h3{color:#fff !important}
.group-head,.page-card h1,.page-card h2,.hero h1,.intro h1,.workspace h1,.workspace h2,.results h2,.page h1,.page h2{color:var(--ls-navy) !important}
.kicker,.eyebrow,.summary-label{color:var(--ls-blue) !important}
button,.button,.actions button,.result-actions button,.hero-actions .btn,.tabs button,.segments button,.filters button{cursor:pointer;transition:all .18s ease}
button,.button,.actions button:first-child,.result-actions .primary,.hero-actions .btn.primary,.btn.primary,#generate,.primary{background:linear-gradient(135deg,var(--ls-blue),var(--ls-violet)) !important;color:#fff !important;border:0 !important;box-shadow:0 10px 24px rgba(38,112,255,.22)}
button.secondary,.btn.secondary,.actions button:not(:first-child),.result-actions button:not(.primary),.tabs button,.segments button,.filters button,.hero-actions .btn.secondary{background:#fff !important;color:var(--ls-navy) !important;border:1px solid var(--ls-border) !important;box-shadow:none}
button:hover,.button:hover,.actions button:hover,.result-actions button:hover,.hero-actions .btn:hover{transform:translateY(-1px);filter:brightness(1.02)}
input,select,textarea{border:1px solid #cfe0fb !important;background:#fbfdff !important;color:var(--ls-text) !important;border-radius:14px !important;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}
input:focus,select:focus,textarea:focus{outline:0;box-shadow:0 0 0 4px rgba(31,125,255,.15) !important;border-color:#7ab2ff !important}
footer.ls-footer{margin-top:44px;background:linear-gradient(135deg,#081c47 0%,#0f327b 100%) !important;color:#fff !important;border-top:0 !important}
.ls-footer-inner{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:30px 24px 18px}
.ls-footer-brand p{margin:10px 0 0;color:#d7e4ff}
.ls-footer .ls-studio-link{color:#fff !important}.ls-footer .ls-studio-wordmark strong,.ls-footer .ls-studio-wordmark span{color:#fff}
.ls-footer-nav{display:flex;gap:14px 18px;flex-wrap:wrap}.ls-footer-nav a{color:#e8f0ff !important;font-weight:700;text-decoration:none !important}
.ls-footer-bottom{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:0 24px 24px;color:#d7e4ff;font-size:.93rem}
.ls-footer-bottom a{color:#fff !important;font-weight:800;text-decoration:none !important}
[data-footer]{display:none !important}
@media (max-width:900px){
  .ls-tool-header-inner{align-items:flex-start}
}
@media (max-width:700px){
  .ls-shell{padding:0 18px}
  .ls-tool-header{padding-top:14px}
  .ls-tool-header-inner{display:grid;grid-template-columns:1fr;gap:12px}
  .ls-tool-home{order:3}
  .ls-header-button,.home-link,.home{justify-self:start}
  .intro,.hero{padding-left:18px !important;padding-right:18px !important}
  .ls-footer-inner,.ls-footer-bottom{padding-left:18px;padding-right:18px}
}

/* LibraireStudios V2 unified tool chrome */
:root{--tool-bg:#f0f4fa;--tool-accent:#476386;--tool-accent-soft:#dfe7f3}
body{background:var(--tool-bg)!important}
.min-h-screen{background:transparent!important}
.ls-tool-header{background:rgba(255,255,255,.92)!important;border-bottom:1px solid rgba(7,29,76,.08);box-shadow:0 6px 24px rgba(7,29,76,.05);padding:0!important}
.ls-tool-header-inner{height:92px;display:grid!important;grid-template-columns:1fr auto 1fr!important;align-items:center!important;gap:22px!important;max-width:1220px!important;margin:0 auto!important;padding:0 22px!important}
.ls-main-logo{display:block;width:min(270px,100%);justify-self:start}
.ls-main-logo img{display:block;width:100%;height:auto;max-height:64px;object-fit:contain;object-position:left center}
.ls-tool-identity{display:flex!important;align-items:center;justify-content:center;gap:12px;padding:9px 18px;border-radius:18px;background:var(--tool-accent-soft);border:1px solid color-mix(in srgb,var(--tool-accent) 20%,white);color:var(--ls-navy,#071d4c)!important;text-decoration:none!important;box-shadow:0 6px 18px rgba(7,29,76,.05)}
.ls-tool-identity img{width:40px;height:40px;object-fit:contain;flex:none}
.ls-tool-identity-copy{display:flex;flex-direction:column;gap:2px;text-align:left}
.ls-tool-identity-copy small{font-size:.63rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:var(--tool-accent)}
.ls-tool-identity-copy strong{font-size:1.03rem;line-height:1.1;color:#071d4c;white-space:nowrap}
.ls-home-button{justify-self:end;display:inline-flex;align-items:center;gap:8px;padding:11px 17px;border-radius:999px;background:#fff!important;border:1px solid #d7e3f4!important;color:#071d4c!important;text-decoration:none!important;font-size:.9rem;font-weight:850;box-shadow:0 8px 20px rgba(7,29,76,.07);transition:.18s ease}
.ls-home-button:hover,.ls-home-button:focus-visible{transform:translateY(-1px);border-color:var(--tool-accent)!important;box-shadow:0 10px 24px rgba(7,29,76,.11)}
.ls-home-button svg{width:17px;height:17px}
main{background:transparent!important}
.ls-footer{background:linear-gradient(110deg,#071d4c,#102d67)!important}
.ls-footer-inner{max-width:1220px!important;margin:0 auto;display:grid!important;grid-template-columns:1.3fr 1fr auto!important;align-items:center!important;gap:28px!important;padding:30px 22px 20px!important}
.ls-footer-brandmark{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none}
.ls-footer-brandmark img{width:42px;height:42px;object-fit:contain}
.ls-footer-brandmark strong{font-size:1.1rem;color:#fff}.ls-footer-brandmark span{color:#66b5ff}
.ls-footer-tagline{margin:6px 0 0!important;color:#cbdaf0!important;font-size:.82rem}
.ls-footer-nav{justify-content:center!important}
.ls-socials{display:flex;align-items:center;justify-content:flex-end;gap:10px}
.ls-social-link{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;border:1px solid rgba(255,255,255,.23);background:rgba(255,255,255,.08);color:#fff!important;text-decoration:none!important;transition:.18s ease}
.ls-social-link:hover,.ls-social-link:focus-visible{background:#fff;color:#071d4c!important;transform:translateY(-2px)}
.ls-social-link svg{width:21px;height:21px;fill:currentColor}
.ls-social-link[data-disabled="true"]{opacity:.38;cursor:default;pointer-events:none}
.ls-footer-bottom{max-width:1220px!important;margin:0 auto!important;padding:0 22px 24px!important}
@media(max-width:820px){
 .ls-tool-header-inner{height:auto!important;min-height:86px;grid-template-columns:1fr auto!important;padding:13px 18px!important}
 .ls-main-logo{width:220px}.ls-tool-identity{grid-column:1/-1;grid-row:2;justify-self:center;margin-bottom:4px}.ls-home-button{grid-column:2;grid-row:1}
 .ls-footer-inner{grid-template-columns:1fr!important;text-align:center!important}.ls-footer-brandmark{justify-content:center}.ls-footer-nav,.ls-socials{justify-content:center!important}
}
@media(max-width:480px){.ls-main-logo{width:175px}.ls-tool-header-inner{padding-inline:14px!important}.ls-home-button{padding:10px 13px}.ls-tool-identity{width:100%;max-width:330px}.ls-tool-identity-copy strong{font-size:.95rem}}


/* RC5 reference header + Budget Wise refinement */
.ls-tool-header{position:relative;z-index:50;padding:0!important;background:rgba(255,255,255,.96)!important;border-bottom:1px solid #dce8f7!important;box-shadow:0 4px 18px rgba(7,29,76,.06)}
.ls-tool-header-inner{height:88px!important;display:grid!important;grid-template-columns:minmax(220px,1fr) auto minmax(220px,1fr)!important;align-items:center!important;gap:22px!important;max-width:1220px!important;margin:0 auto!important;padding:0 22px!important}
.ls-main-logo{width:260px!important;max-width:100%!important;justify-self:start}.ls-main-logo img{max-height:62px!important;object-fit:contain!important;object-position:left center!important}
.ls-tool-identity{justify-self:center!important;display:flex!important;align-items:center!important;gap:12px!important;padding:7px 15px!important;border-radius:16px!important;background:linear-gradient(135deg,#f4fbff,#f5f1ff)!important;border:1px solid #d6e6fb!important;text-decoration:none!important;box-shadow:0 6px 16px rgba(7,29,76,.06)!important}
.ls-tool-identity img{width:48px!important;height:48px!important;object-fit:contain!important}.ls-tool-identity strong{font-size:1.24rem!important;color:#071d4c!important;letter-spacing:-.02em!important;white-space:nowrap!important}
.ls-header-actions{justify-self:end;display:flex;align-items:center;gap:9px}.ls-tools-menu{position:relative}.ls-tools-button,.ls-home-button{height:40px!important;padding:0 13px!important;border-radius:11px!important;border:1px solid #cfdff2!important;background:#fff!important;color:#071d4c!important;box-shadow:0 5px 14px rgba(7,29,76,.06)!important;font-size:.82rem!important;font-weight:850!important;text-decoration:none!important;display:inline-flex!important;align-items:center!important;gap:7px!important;white-space:nowrap!important}
.ls-tools-button svg{width:15px;height:15px}.ls-home-button svg{width:16px;height:16px}.ls-tools-button:hover,.ls-home-button:hover{border-color:#1f7dff!important;background:#f5f9ff!important;transform:none!important}
.ls-tools-dropdown{position:absolute;right:0;top:47px;width:238px;padding:8px;background:#071d4c;border:1px solid rgba(126,185,255,.35);border-radius:14px;box-shadow:0 18px 45px rgba(7,29,76,.28);z-index:80}.ls-tools-dropdown[hidden]{display:none!important}.ls-tools-dropdown a{display:flex;align-items:center;gap:10px;padding:8px 10px;color:#fff!important;text-decoration:none!important;border-radius:9px;font-size:.82rem;font-weight:700}.ls-tools-dropdown a:hover,.ls-tools-dropdown a[aria-current="page"]{background:linear-gradient(90deg,rgba(24,191,212,.26),rgba(123,77,255,.34))}.ls-tools-dropdown img{width:24px;height:24px;object-fit:contain;flex:none}
.ls-coffee-link{width:auto!important;padding:0 12px!important;display:flex!important;gap:7px!important}.ls-coffee-link span{font-size:.78rem;font-weight:800;white-space:nowrap}
body{background:linear-gradient(180deg,var(--tool-bg) 0%,#f7fbff 34%,#eef5ff 100%)!important}
body .intro{max-width:1180px!important;margin:26px auto 34px!important;padding:32px 26px!important}
body .intro h1{font-family:Inter,Arial,sans-serif!important;font-size:clamp(2.25rem,4.4vw,3.8rem)!important;line-height:1.03!important;letter-spacing:-.055em!important;font-weight:850!important}
body .intro h1 em{font-style:normal!important;background:linear-gradient(90deg,#18bfd4,#1f7dff,#7b4dff);-webkit-background-clip:text;background-clip:text;color:transparent!important}
@media(max-width:820px){.ls-tool-header-inner{height:auto!important;grid-template-columns:1fr auto!important;gap:10px!important;padding:12px 16px!important}.ls-main-logo{width:210px!important}.ls-tool-identity{grid-column:1/-1;grid-row:2;justify-self:center!important}.ls-header-actions{grid-column:2;grid-row:1}.ls-tools-button span{display:none}.ls-tools-dropdown{right:0}.ls-coffee-link span{display:none}.ls-coffee-link{width:42px!important;padding:0!important}}
@media(max-width:500px){.ls-main-logo{width:170px!important}.ls-tools-button,.ls-home-button{padding:0 10px!important}.ls-home-button span{display:none}.ls-tools-dropdown{position:fixed;left:14px;right:14px;top:76px;width:auto}.ls-tool-identity img{width:42px!important;height:42px!important}.ls-tool-identity strong{font-size:1.08rem!important}}

/* RC7 unified brandmark */
.ls-main-logo{display:flex!important;align-items:center!important;gap:13px!important;text-decoration:none!important;width:auto!important;max-width:none!important}.ls-main-logo>img{width:58px!important;height:58px!important;max-height:none!important;object-fit:contain!important;flex:none}.ls-main-wordmark{display:grid!important;grid-template-columns:auto auto!important;align-items:baseline!important;column-gap:0!important;line-height:1!important}.ls-main-wordmark strong{font-size:1.72rem!important;color:#071d4c!important;font-weight:900!important;letter-spacing:-.04em}.ls-main-wordmark>span{font-size:1.72rem!important;color:#1f7dff!important;font-weight:900!important;letter-spacing:-.04em}.ls-main-wordmark small{grid-column:1/-1;margin-top:7px;color:#607393;font-size:.7rem!important;font-weight:600!important;letter-spacing:.01em}
