/*!
InoBox Theme
File: cookie.css
Author: Thomas Cabrit
Developer: https://github.com/Thomas-Cabrit
Company: Kcalb Ltd
Company Website: https://kcalb-ltd.com
© InoBox.org powered by Kcalb Ltd
*/

html{
  scroll-padding-top:118px;
  scroll-behavior:auto;
}

.cookie-page .outer-container{
  max-width:1230px !important;
}

.cookie-page .inner-card.card-cookie{
  max-width:1230px !important;
  width:100%;
}

.cookie-page .logo-link{
  display:inline-flex;
  margin:2px auto 18px;
}

.cookie-page .cookie-hero{
  text-align:center;
  max-width:600px;
  margin:0 auto 12px;
}

.cookie-page .footer-centered{
  max-width:600px;
  margin-left:auto;
  margin-right:auto;
}

/* FIX TITRES: aligné sur le pattern style.css (sub = gris en light, muted en dark) */
.cookie-page .hero-title{
  margin:22px 0 14px 0;
  line-height:1.1;
  text-align:center;
}

.cookie-page .hero-main{
  display:block;
  font-weight:800;
  letter-spacing:-1px;
  color:var(--accent);
  font-size:32px;
  line-height:1.1;
  margin:0;
}

.cookie-page .hero-sub{
  display:inline-block;
  margin-top:10px;
  color:#6b7280;
  font-weight:400;
  font-size:26px;
  line-height:1.25;
  letter-spacing:-0.25px;
  text-transform:none;
  opacity:1;
  width:100%;
  text-align:center;
}

html[data-theme="dark"] .cookie-page .hero-sub{
  color:var(--muted);
  opacity:.95;
}

.cookie-page .hero-updated{
  margin:14px auto 0;
  width:fit-content;
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:9px 12px;
  border-radius:999px;
  background:var(--policy-bg);
  border:1px solid var(--policy-border);
  box-shadow:0 10px 18px rgba(0,0,0,.16);
  color:var(--text);
}

.cookie-page .updated-label{
  font-weight:800;
  font-size:12px;
  color:var(--muted);
  opacity:.95;
}

.cookie-page .updated-dot{
  width:6px;
  height:6px;
  border-radius:999px;
  background:rgba(var(--accent-rgb),.92);
  box-shadow:0 0 14px rgba(var(--accent-rgb),.22);
}

.cookie-page .updated-date{
  font-weight:900;
  font-size:12px;
  letter-spacing:.2px;
}

.cookie-page .cookie-intro{
  margin:14px auto 0;
  font-size:13.5px;
  line-height:1.75;
  color:var(--soft);
  opacity:.95;
}

.cookie-page .content{
  width:100%;
  text-align:left;
  margin-top:18px;
}

.cookie-page .cookie-layout{
  width:100%;
  display:grid;
  grid-template-columns:340px minmax(0,1fr);
  gap:22px;
  align-items:start;
}

.cookie-page .toc{
  position:sticky;
  top:96px;
  align-self:start;
  z-index:8;
}

.cookie-page .toc-inner{
  background:var(--policy-bg);
  border:1px solid var(--policy-border);
  border-radius:22px;
  padding:14px 12px 24px;
  max-height:calc(100vh - 130px);
  overflow:hidden;
  box-shadow:0 12px 26px rgba(0,0,0,.28);
}

html[data-theme="light"] .cookie-page .toc-inner{
  box-shadow:0 12px 26px rgba(0,0,0,.10);
}

.cookie-page .toc-title{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:10px;
  padding:6px 8px 12px;
  font-weight:800;
  color:var(--text);
  border-bottom:3px solid var(--silver);
  margin-bottom:4px;
}

.cookie-page .toc-hint{
  font-size:12px;
  font-weight:700;
  color:var(--muted);
  opacity:.82;
  white-space:nowrap;
}

.cookie-page .toc-list{
  margin:0;
  padding:6px 4px 12px;
  list-style:none;
  max-height:calc(100vh - 285px);
  overflow:auto;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;
  background:transparent;
}

.cookie-page .toc-list::-webkit-scrollbar{width:10px}
.cookie-page .toc-list::-webkit-scrollbar-track{background:transparent}
.cookie-page .toc-list::-webkit-scrollbar-thumb{
  background:rgba(255,255,255,.12);
  border-radius:999px;
  border:2px solid transparent;
  background-clip:padding-box;
}
html[data-theme="light"] .cookie-page .toc-list::-webkit-scrollbar-thumb{
  background:rgba(0,0,0,.12);
  border:2px solid transparent;
  background-clip:padding-box;
}

.cookie-page .toc-link{
  display:flex;
  align-items:center;
  gap:10px;
  padding:9px 10px;
  border-radius:16px;
  text-decoration:none !important;
  outline:none;
  color:var(--text);
  background:transparent;
  border:1px solid transparent;
  transform:none !important;
  transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,opacity .18s ease;
  cursor:pointer;
}

.cookie-page .toc-link:hover{
  text-decoration:none !important;
  background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.08);
}

html[data-theme="light"] .cookie-page .toc-link:hover{
  background:rgba(0,0,0,.05);
  border-color:rgba(0,0,0,.08);
}

.cookie-page .toc-idx{
  width:26px;
  min-width:26px;
  height:26px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-weight:900;
  font-size:12px;
  background:transparent;
  border:2px solid rgba(var(--accent-rgb),.85);
  color:rgba(var(--accent-rgb),1);
  opacity:.98;
}

html[data-theme="light"] .cookie-page .toc-idx{
  border:2px solid rgba(var(--accent-rgb),.95);
  color:rgba(var(--accent-rgb),1);
}

.cookie-page .toc-link.is-active .toc-idx{
  background:rgba(var(--accent-rgb),1);
  border-color:rgba(var(--accent-rgb),1);
  color:#ffffff;
}

html[data-theme="light"] .cookie-page .toc-link.is-active .toc-idx{
  background:rgba(var(--accent-rgb),1);
  border-color:rgba(var(--accent-rgb),1);
  color:#ffffff;
}

@keyframes tocPulseSoft{
  0%{opacity:.82}
  100%{opacity:1}
}

.cookie-page .toc-link.is-active{
  background:rgba(var(--accent-rgb),.12);
  border-color:rgba(var(--accent-rgb),.22);
  box-shadow:0 0 0 3px rgba(var(--accent-rgb),.10);
  animation:tocPulseSoft 2.1s ease-in-out infinite alternate;
}

.cookie-page .toc-actions{
  display:flex;
  gap:10px;
  padding:12px 6px 0px;
  border-top:3px solid var(--silver);
  margin-top:6px;
  margin-bottom:-6px;
}

.cookie-page .toc-btn{
  flex:1 1 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:10px 12px;
  border-radius:var(--btn-radius);
  text-decoration:none !important;
  font-weight:600;
  font-size:12px;
  letter-spacing:.2px;
  white-space:nowrap;
  position:relative;
  overflow:hidden;
  transform:none !important;
  cursor:pointer;
  line-height:1;
  box-shadow:none !important;
  background:transparent;
  border:1px solid var(--policy-border);
  color:var(--text);
  transition:background .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,filter .18s ease,transform .25s ease !important;
}

.cookie-page .toc-btn .btn-txt{
  position:relative;
  z-index:2;
}

.cookie-page .toc-btn .btn-ico{
  width:18px;
  min-width:18px;
  height:18px;
  border-radius:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  position:relative;
  z-index:2;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  padding:0;
  margin:0;
  color:inherit;
  line-height:0;
}

.cookie-page .toc-btn .btn-ico svg{
  width:18px;
  height:18px;
  display:block;
}

.cookie-page .toc-actions .toc-btn.inobutton,
.cookie-page .toc-actions .toc-btn.inobutton:hover,
.cookie-page .toc-actions .toc-btn.inobutton:active{
  transform:none !important;
  box-shadow:none !important;
  filter:none !important;
}

.cookie-page .toc-actions .toc-btn.inobutton::before,
.cookie-page .toc-actions .toc-btn.inobutton::after{
  content:none !important;
  display:none !important;
}

.cookie-page .toc-btn:hover{
  transform:none !important;
  background:var(--policy-bg);
  border-color:rgba(var(--accent-rgb),.28);
  box-shadow:0 0 0 3px rgba(var(--accent-rgb),.10) !important;
}

html[data-theme="light"] .cookie-page .toc-btn:hover{
  box-shadow:0 0 0 3px rgba(var(--accent-rgb),.14) !important;
}

.cookie-page .toc-btn:active{
  transform:none !important;
  filter:brightness(.98);
}

.cookie-page .toc-btn:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:3px;
  border-radius:calc(var(--btn-radius) + 2px);
}

.cookie-page .toc-btn-ghost{
  background:var(--btn-black);
  color:#ffffff;
  border:2px solid var(--btn-black-border);
  box-shadow:none !important;
}

html[data-theme="light"] .cookie-page .toc-btn-ghost{
  background:var(--btn-black);
  color:#ffffff;
  border:2px solid #0d0d0d;
}

.cookie-page .toc-btn-ghost:hover{
  background:transparent;
  color:var(--text);
  border-color:rgba(var(--accent-rgb),.28);
  box-shadow:0 0 0 3px rgba(var(--accent-rgb),.10) !important;
}

html[data-theme="light"] .cookie-page .toc-btn-ghost:hover{
  background:transparent;
  color:#0d0d0d;
  border-color:#0d0d0d;
  box-shadow:0 0 0 3px rgba(0,0,0,.06) !important;
}

.cookie-page .toc-btn-accent{
  background:var(--btn-green);
  color:#0d0d0d;
  border:2px solid var(--btn-green-border);
  box-shadow:none !important;
}

html[data-theme="light"] .cookie-page .toc-btn-accent{
  background:var(--btn-green);
  color:#0d0d0d;
  border:2px solid var(--btn-green-border);
}

.cookie-page .toc-btn-accent:hover{
  background:transparent;
  color:var(--accent);
  border-color:var(--accent);
  box-shadow:0 0 0 3px rgba(var(--accent-rgb),.10) !important;
}

html[data-theme="light"] .cookie-page .toc-btn-accent:hover{
  box-shadow:0 0 0 3px rgba(var(--accent-rgb),.14) !important;
}

.cookie-page .cookie-article{
  width:100%;
}

.cookie-page .cookie-article-inner{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.cookie-page .section{
  position:relative;
  scroll-margin-top:118px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.03);
  padding:18px 18px 14px;
  overflow:hidden;
  box-shadow:0 10px 24px rgba(0,0,0,.22);
}

html[data-theme="light"] .cookie-page .section{
  border-color:rgba(0,0,0,.10);
  background:rgba(0,0,0,.02);
  box-shadow:0 10px 22px rgba(0,0,0,.10);
}

.cookie-page .section::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 18% 12%, rgba(255,255,255,.08), rgba(255,255,255,0) 55%),
    radial-gradient(circle at 82% 18%, rgba(255,255,255,.05), rgba(255,255,255,0) 60%);
  opacity:.45;
  pointer-events:none;
}

html[data-theme="light"] .cookie-page .section::before{
  background:
    radial-gradient(circle at 18% 12%, rgba(0,0,0,.06), rgba(0,0,0,0) 55%),
    radial-gradient(circle at 82% 18%, rgba(0,0,0,.04), rgba(0,0,0,0) 60%);
}

.cookie-page .section.is-active{
  border-color:rgba(var(--accent-rgb),.30);
  background:
    radial-gradient(circle at 85% 92%, rgba(var(--accent-rgb),.20), rgba(var(--accent-rgb),0) 55%),
    rgba(255,255,255,.03);
  box-shadow:0 16px 34px rgba(0,0,0,.28);
}

html[data-theme="light"] .cookie-page .section.is-active{
  background:
    radial-gradient(circle at 85% 92%, rgba(var(--accent-rgb),.18), rgba(var(--accent-rgb),0) 55%),
    rgba(0,0,0,.02);
  box-shadow:0 16px 30px rgba(0,0,0,.12);
}

@keyframes pulse-accent{
  0%,100%{opacity:.40;transform:scale(.92);box-shadow:0 0 6px rgba(var(--accent-rgb),.35)}
  50%{opacity:1;transform:scale(1.08);box-shadow:0 0 18px rgba(var(--accent-rgb),.78),0 0 6px rgba(255,255,255,.28)}
}

.cookie-page .section.is-active::after{
  content:"";
  position:absolute;
  right:14px;
  bottom:14px;
  width:10px;
  height:10px;
  border-radius:999px;
  background:rgba(var(--accent-rgb),1);
  box-shadow:0 0 12px rgba(var(--accent-rgb),.55);
  animation:pulse-accent 2.8s ease-in-out infinite;
  pointer-events:none;
}

.cookie-page .section-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}

.cookie-page .sec-title{
  margin:0;
  font-size:13px;
  font-weight:600;
  letter-spacing:-.1px;
  color:var(--text);
  line-height:1.25;
}

.cookie-page .subhead{
  font-weight:700;
  color:var(--accent);
}

.cookie-page .p{
  margin:10px 0 0;
  font-size:13.5px;
  line-height:1.75;
  color:var(--soft);
  opacity:.95;
}

.cookie-page .list{
  margin:10px 0 0;
  padding-left:18px;
  color:var(--soft);
  font-size:13.5px;
  line-height:1.75;
  opacity:.95;
}

.cookie-page .cookie-article a:not(.sec-anchor){
  color:rgba(var(--accent-rgb),1);
  font-weight:700;
}

.cookie-page .cookie-article a:not(.sec-anchor):hover{
  color:rgba(var(--accent-rgb),1);
  border-bottom-color:rgba(var(--accent-rgb),.92);
}

.cookie-page .cookie-article a:not(.sec-anchor):active{
  filter:brightness(1.05);
}

.cookie-page .cookie-article a:not(.sec-anchor):focus-visible{
  outline:none;
  border-bottom-color:rgba(var(--accent-rgb),1);
  box-shadow:0 0 0 3px rgba(var(--accent-rgb),.22);
  border-radius:8px;
}

.cookie-page a.sec-anchor{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:30px;
  height:30px;
  border-radius:999px;
  text-decoration:none !important;
  font-weight:900;
  font-size:12px;
  background:rgba(var(--accent-rgb),1);
  border:1px solid rgba(var(--accent-rgb),.55);
  box-shadow:0 10px 16px rgba(0,0,0,.18);
  opacity:.98;
  cursor:pointer;
  color:#000000;
}

html[data-theme="light"] .cookie-page a.sec-anchor{
  color:#ffffff !important;
  background:rgba(var(--accent-rgb),1);
  border:1px solid rgba(var(--accent-rgb),.58);
  box-shadow:0 10px 14px rgba(0,0,0,.10);
}

.cookie-page a.sec-anchor:hover{filter:brightness(1.03)}
.cookie-page a.sec-anchor:active{filter:brightness(.98)}

.cookie-page .back-top{
  margin-top:12px;
}

.cookie-page .back-top a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:fit-content;
  padding:10px 12px;
  border-radius:var(--btn-radius);
  background:transparent;
  border:1px solid var(--policy-border);
  color:var(--text);
  text-decoration:none !important;
  font-weight:600;
  font-size:12px;
  letter-spacing:.2px;
  white-space:nowrap;
  cursor:pointer;
  box-shadow:none !important;
  transform:none !important;
  transition:background .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,filter .18s ease,transform .25s ease !important;
}

.cookie-page .back-top a:hover{
  background:var(--policy-bg);
  border-color:rgba(var(--accent-rgb),.28);
  box-shadow:0 0 0 3px rgba(var(--accent-rgb),.10) !important;
}

html[data-theme="light"] .cookie-page .back-top a:hover{
  box-shadow:0 0 0 3px rgba(var(--accent-rgb),.14) !important;
}

.cookie-page .back-top a:active{
  filter:brightness(.98);
}

.cookie-page .back-top a:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:3px;
  border-radius:calc(var(--btn-radius) + 2px);
}

.cookie-page .support-divider{
  height:1px;
  width:100%;
  margin:16px 0 10px;
  background:rgba(255,255,255,.14);
  opacity:.7;
}

html[data-theme="light"] .cookie-page .support-divider{
  background:rgba(0,0,0,.14);
}

.cookie-page .support-line{
  color:var(--muted);
  font-weight:600;
  font-size:13px;
}

@media (max-width:1200px){
  .cookie-page .outer-container{max-width:600px !important}
  .cookie-page .inner-card.card-cookie{max-width:600px !important}
  .cookie-page .cookie-layout{grid-template-columns:1fr;gap:14px}
  .cookie-page .toc{top:10px;z-index:20}
  .cookie-page .toc-inner{max-height:none}
  .cookie-page .toc-list{max-height:46vh}
  .cookie-page .hero-main{font-size:28px}
  .cookie-page .hero-sub{font-size:20px}
}

@media (max-width:600px){
  .cookie-page .toc-title{font-size:13px}
}

@media (max-width:520px){
  .cookie-page .hero-main{font-size:28px}
  .cookie-page .hero-sub{font-size:20px}
}

@media (prefers-reduced-motion:reduce){
  .cookie-page .toc-link.is-active{animation:none !important}
  .cookie-page .section.is-active::after{animation:none !important}
  .cookie-page .toc-btn{transition:none !important}
  .cookie-page .back-top a{transition:none !important}
}
