/* TRIPLOOM V15.1.47 — harmonized authenticated app footer
   Palette synchronized to TRIPLOOM V15.1.48.
   Scope is intentionally limited to the logged-in app footer wrapper. Public
   About/Legal pages keep their own original footer styling. */
:root{
  --taf147-bg:#F4FCFB;
  --taf147-bg-2:#F4FCFB;
  --taf147-card:#ffffff;
  --taf147-border:#C6ECE8;
  --taf147-ink:#1F3B4D;
  --taf147-muted:#6F8792;
  --taf147-heading:#69D7D0;
  --taf147-link:#405C73;
  --taf147-link-hover:#249D98;
  --taf147-rule:#C6ECE8;
  --taf147-shadow:0 12px 30px rgba(35,73,88,.08);
}

html body .app-legal-footer-wrap.triploom-app-footer-v15147{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:none!important;
  margin:32px 0 0!important;
  padding:0 10px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

html body .triploom-app-footer-v15147 .triploom-legal-footer{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:28px clamp(20px,4vw,42px) 18px!important;
  border:1px solid var(--taf147-border)!important;
  border-radius:24px!important;
  background:linear-gradient(145deg,var(--taf147-bg),var(--taf147-bg-2))!important;
  color:var(--taf147-ink)!important;
  box-shadow:var(--taf147-shadow)!important;
  overflow:hidden!important;
}

html body .triploom-app-footer-v15147 .triploom-legal-footer-grid{
  width:min(1080px,100%)!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:.82fr .92fr 1.8fr!important;
  gap:clamp(24px,4vw,54px)!important;
  align-items:start!important;
}

html body .triploom-app-footer-v15147 .triploom-legal-footer section{
  min-width:0!important;
}

html body .triploom-app-footer-v15147 .triploom-legal-footer h3{
  margin:0 0 12px!important;
  color:var(--taf147-heading)!important;
  font-size:10px!important;
  font-weight:900!important;
  line-height:1.2!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}

html body .triploom-app-footer-v15147 .triploom-legal-footer section>a,
html body .triploom-app-footer-v15147 .triploom-legal-footer-links a{
  display:block!important;
  width:max-content!important;
  max-width:100%!important;
  margin:7px 0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:var(--taf147-link)!important;
  text-decoration:none!important;
  font-size:11px!important;
  font-weight:720!important;
  line-height:1.35!important;
  transition:color .14s ease!important;
}

html body .triploom-app-footer-v15147 .triploom-legal-footer a:hover,
html body .triploom-app-footer-v15147 .triploom-legal-footer a:focus-visible{
  color:var(--taf147-link-hover)!important;
  outline:0!important;
}

html body .triploom-app-footer-v15147 .triploom-legal-footer-links{
  columns:2!important;
  column-gap:24px!important;
}

html body .triploom-app-footer-v15147 .triploom-legal-footer-bottom{
  width:min(1080px,100%)!important;
  margin:22px auto 0!important;
  padding-top:14px!important;
  border-top:1px solid var(--taf147-rule)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  color:var(--taf147-muted)!important;
  font-size:9.5px!important;
  font-weight:650!important;
  line-height:1.45!important;
}

@media(max-width:900px){
  html body .triploom-app-footer-v15147 .triploom-legal-footer-grid{
    grid-template-columns:1fr 1fr!important;
    gap:22px 28px!important;
  }
  html body .triploom-app-footer-v15147 .triploom-legal-footer-wide{grid-column:1/-1!important}
}

@media(max-width:600px){
  html body .app-legal-footer-wrap.triploom-app-footer-v15147{
    margin:20px 0 0!important;
    padding:0 8px!important;
  }
  html body .triploom-app-footer-v15147 .triploom-legal-footer{
    padding:22px 16px calc(82px + env(safe-area-inset-bottom))!important;
    border-radius:22px!important;
    box-shadow:0 9px 22px rgba(35,73,88,.07)!important;
  }
  html body .triploom-app-footer-v15147 .triploom-legal-footer-grid{
    grid-template-columns:1fr 1fr!important;
    gap:22px 18px!important;
  }
  html body .triploom-app-footer-v15147 .triploom-legal-footer-wide{grid-column:1/-1!important}
  html body .triploom-app-footer-v15147 .triploom-legal-footer h3{
    margin-bottom:9px!important;
    font-size:9px!important;
  }
  html body .triploom-app-footer-v15147 .triploom-legal-footer section>a,
  html body .triploom-app-footer-v15147 .triploom-legal-footer-links a{
    margin:6px 0!important;
    font-size:10px!important;
    line-height:1.3!important;
  }
  html body .triploom-app-footer-v15147 .triploom-legal-footer-links{
    columns:2!important;
    column-gap:14px!important;
  }
  html body .triploom-app-footer-v15147 .triploom-legal-footer-bottom{
    margin-top:18px!important;
    padding-top:12px!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:3px!important;
    font-size:8.5px!important;
  }
}

html[data-theme="dark"]{
  --taf147-bg:#15252c;
  --taf147-bg-2:#132129;
  --taf147-card:#1a2b33;
  --taf147-border:#2d444e;
  --taf147-ink:#dce9ed;
  --taf147-muted:#91a7b0;
  --taf147-heading:#61c8d0;
  --taf147-link:#c2d4da;
  --taf147-link-hover:#6fcfff;
  --taf147-rule:#2b414a;
  --taf147-shadow:0 12px 30px rgba(0,0,0,.22);
}

@media(prefers-reduced-motion:reduce){
  .triploom-app-footer-v15147 .triploom-legal-footer a{transition:none!important}
}

/* TRIPLOOM V15.4.96 — desktop footer outer-shell removal
   Scope: Dashboard desktop only. Keep the rounded footer card, remove the
   invisible/white wrapper panel behind it. */
@media (min-width:1025px){
  html body[data-page="dashboard"] .app-legal-footer-wrap.triploom-app-footer-v15147{
    display:contents!important;
    width:auto!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    outline:0!important;
    background:transparent!important;
    background-color:transparent!important;
    background-image:none!important;
    box-shadow:none!important;
    filter:none!important;
  }
  html body[data-page="dashboard"] .app-legal-footer-wrap.triploom-app-footer-v15147::before,
  html body[data-page="dashboard"] .app-legal-footer-wrap.triploom-app-footer-v15147::after{
    content:none!important;
    display:none!important;
  }
  html body[data-page="dashboard"] .triploom-app-footer-v15147 .triploom-legal-footer,
  html body[data-page="dashboard"] .app-legal-footer-wrap.triploom-app-footer-v15147 > .triploom-legal-footer{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    margin:32px 0 0!important;
  }
  html body[data-page="dashboard"] .content:has(> .app-legal-footer-wrap.triploom-app-footer-v15147){
    padding-bottom:0!important;
  }
}

/* TRIPLOOM V15.4.97 — mobile footer outer-shell removal + dock-safe page ending
   Remove the invisible outer panel on phones and reserve enough space inside
   the real footer card so the fixed mobile dock never covers final content. */
@media (max-width:800px){
  html body[data-page]:not(.print-page-v4) .app-legal-footer-wrap.triploom-app-footer-v15147{
    display:contents!important;
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    outline:0!important;
    background:transparent!important;
    background-color:transparent!important;
    background-image:none!important;
    box-shadow:none!important;
    filter:none!important;
  }
  html body[data-page]:not(.print-page-v4) .app-legal-footer-wrap.triploom-app-footer-v15147::before,
  html body[data-page]:not(.print-page-v4) .app-legal-footer-wrap.triploom-app-footer-v15147::after{
    content:none!important;
    display:none!important;
  }
  html body[data-page]:not(.print-page-v4) .triploom-app-footer-v15147 .triploom-legal-footer,
  html body[data-page]:not(.print-page-v4) .app-legal-footer-wrap.triploom-app-footer-v15147 > .triploom-legal-footer{
    box-sizing:border-box!important;
    width:calc(100% - 12px)!important;
    max-width:none!important;
    margin:20px 6px 0!important;
    padding:22px 16px calc(86px + max(10px,env(safe-area-inset-bottom)))!important;
  }
  html body[data-page]:not(.print-page-v4){
    scroll-padding-bottom:calc(76px + max(10px,env(safe-area-inset-bottom)))!important;
  }
}
@media (max-width:600px){
  html body[data-page]:not(.print-page-v4) .triploom-app-footer-v15147 .triploom-legal-footer,
  html body[data-page]:not(.print-page-v4) .app-legal-footer-wrap.triploom-app-footer-v15147 > .triploom-legal-footer{
    width:calc(100% - 10px)!important;
    margin:18px 5px 0!important;
    padding:20px 15px calc(86px + max(10px,env(safe-area-inset-bottom)))!important;
    border-radius:22px!important;
  }
}
