/* template-skin:ledger prefix:ld */
/**
 * Ledger — mesa de caixa / conferência financeira
 * Distinto: VIP instalação · Arena placar · Pulse diário · Atlas mapa
 * Classes: .ld-* (builder + landing.js)
 */
/* fontes: HTML preconnect + link não bloqueante (sem @import) */

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{margin:0;background:#e4ebf0!important;color:#121820}
body{
  --ld-bg:#e4ebf0;--ld-paper:#f7fafc;--ld-ink:#121820;--ld-muted:#4a5a68;
  --ld-line:#b8c5d0;--ld-green:#1b7a4e;--ld-green-deep:#145c3b;--ld-rail:#1e2a36;
  --ld-amber:#c9862a;--ld-font:"IBM Plex Sans","Segoe UI",sans-serif;
  --ld-display:"Source Serif 4","Georgia",serif;--ld-dock:76px;--ld-sticky-h:64px;
  font-family:var(--ld-font);line-height:1.65;color:var(--ld-ink);
  background:
    linear-gradient(180deg,#d5dee6 0%,var(--ld-bg) 120px),
    repeating-linear-gradient(0deg,transparent,transparent 27px,rgba(30,42,54,.06) 27px,rgba(30,42,54,.06) 28px);
  padding-bottom:calc(var(--ld-dock) + 14px + env(safe-area-inset-bottom, 0px));
}
html{scroll-padding-top:calc(var(--ld-sticky-h) + 8px);scroll-padding-bottom:calc(var(--ld-dock) + 18px + env(safe-area-inset-bottom, 0px))}
@media(min-width:960px){body{padding-bottom:0}html{scroll-padding-bottom:0}}
img{max-width:100%;height:auto;display:block}
a{color:var(--ld-green-deep);text-underline-offset:3px}
a:hover{color:var(--ld-ink)}
.ld-shell{min-height:100vh}
.ld-wrap{width:min(1080px,calc(100% - 1.5rem));margin-inline:auto}

.ld-tape{background:var(--ld-rail);color:#c5d3df;font-size:.78rem;font-variant-numeric:tabular-nums}
.ld-tape__inner{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;justify-content:space-between;padding:.5rem 0;align-items:center}
.ld-tape__mark{font-weight:700;color:var(--ld-amber);letter-spacing:.04em}
.ld-tape__meta{opacity:.9}

.ld-banner[hidden]{display:none!important}
.ld-banner{background:#e8f3ec;border-bottom:1px solid #a8c9b5}
.ld-banner__inner{display:grid;grid-template-columns:42px 1fr auto auto;gap:.7rem;align-items:center;padding:.65rem 0}
.ld-banner__icon{width:42px;height:42px;border-radius:6px;object-fit:cover;border:2px solid #fff;box-shadow:0 2px 8px rgba(18,24,32,.12)}
.ld-banner__kicker{display:block;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ld-green-deep)}
.ld-banner__line{display:block;font-family:var(--ld-display);font-size:1.05rem;font-weight:600;color:var(--ld-ink)}
.ld-banner__x{border:0;background:transparent;font-size:1.35rem;cursor:pointer;color:var(--ld-muted)}

.ld-head{position:sticky;top:0;z-index:40;background:rgba(228,235,240,.95);backdrop-filter:blur(8px);border-bottom:1px solid var(--ld-line)}
.ld-head__row{display:flex;align-items:center;gap:.65rem;padding:.75rem 0;min-height:62px}
.ld-brand{display:flex;align-items:center;gap:.55rem;text-decoration:none;color:inherit;min-width:0}
.ld-brand__mark{width:42px;height:42px;border-radius:6px;object-fit:cover;box-shadow:0 3px 10px rgba(18,24,32,.14)}
.ld-brand__text{display:flex;flex-direction:column;min-width:0}
.ld-brand__name{font-family:var(--ld-display);font-weight:700;font-size:1.1rem;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ld-brand__tag{font-size:.7rem;color:var(--ld-muted);letter-spacing:.07em;text-transform:uppercase}
.ld-nav{display:none;gap:.1rem;margin-left:auto}
.ld-nav a{text-decoration:none;color:var(--ld-muted);font-weight:600;font-size:.88rem;padding:.4rem .65rem;border-radius:4px}
.ld-nav a:hover,.ld-nav a.is-active{background:#fff;color:var(--ld-ink);box-shadow:inset 0 -2px 0 var(--ld-green)}
.ld-head__cta{display:none;gap:.45rem;margin-left:.4rem}
.ld-toggle{margin-left:auto;width:42px;height:42px;border:1px solid var(--ld-line);border-radius:6px;background:#fff;cursor:pointer;font-size:1.15rem}
.ld-drawer{display:none;flex-direction:column;gap:.35rem;padding:0 0 .9rem}
.ld-drawer.is-open{display:flex}
.ld-drawer a{text-decoration:none;color:var(--ld-ink);font-weight:600;padding:.65rem .85rem;border-radius:6px;background:#fff;border:1px solid var(--ld-line)}
@media(min-width:980px){
  .ld-nav,.ld-head__cta{display:flex}
  .ld-toggle,.ld-drawer{display:none!important}
}

.ld-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:4px;padding:.68rem 1.1rem;font-weight:700;font-size:.9rem;text-decoration:none;border:1.5px solid transparent;cursor:pointer;transition:transform .12s ease}
.ld-btn:hover{transform:translateY(-1px)}
.ld-btn--green{background:var(--ld-green);color:#fff;border-color:var(--ld-green)}
.ld-btn--green:hover{background:var(--ld-green-deep);color:#fff}
.ld-btn--rail{background:var(--ld-rail);color:#fff;border-color:var(--ld-rail)}
.ld-btn--ghost{background:transparent;color:var(--ld-rail);border-color:var(--ld-rail)}
.ld-btn--lg{padding:.85rem 1.25rem;font-size:.98rem}

.ld-hero{padding:1.35rem 0 1.75rem}
.ld-hero__grid{display:grid;gap:1.1rem}
@media(min-width:900px){.ld-hero__grid{grid-template-columns:1fr 300px;gap:1.4rem;align-items:start}}
.ld-hero__main{background:var(--ld-paper);border:1px solid var(--ld-line);border-radius:4px;padding:1.35rem 1.25rem 1.5rem;box-shadow:0 10px 28px rgba(18,24,32,.07);position:relative;overflow:hidden}
.ld-hero__main::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--ld-green),var(--ld-amber))}
.ld-hero__eyebrow{margin:0 0 .7rem;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ld-green-deep);font-variant-numeric:tabular-nums}
.ld-hero__title{font-family:var(--ld-display);font-size:clamp(1.65rem,3.8vw,2.4rem);line-height:1.18;margin:0 0 .85rem;color:var(--ld-ink);font-weight:700}
.ld-hero__lead{margin:0 0 1.15rem;color:var(--ld-muted);max-width:38em}
.ld-hero__actions{display:flex;flex-wrap:wrap;gap:.55rem}
.ld-book{background:var(--ld-rail);color:#dce6ee;border-radius:4px;padding:1.1rem 1rem;border:1px solid #0f161d;font-variant-numeric:tabular-nums}
.ld-book h2{margin:0 0 .75rem;font-family:var(--ld-display);font-size:1.1rem;color:var(--ld-amber)}
.ld-book dl{margin:0;display:grid;gap:.4rem}
.ld-book__row{display:grid;grid-template-columns:1fr auto;gap:.5rem;padding:.4rem 0;border-bottom:1px dashed rgba(201,134,42,.35);font-size:.92rem}
.ld-book__row:last-child{border:0}
.ld-book dt{opacity:.8}
.ld-book dd{margin:0;font-weight:700}

.ld-section{padding:1.1rem 0 1.8rem}
.ld-section__head{margin-bottom:1.1rem}
.ld-section__head h2{font-family:var(--ld-display);font-size:clamp(1.3rem,2.6vw,1.75rem);margin:0;color:var(--ld-ink)}
.ld-section__head p{margin:.3rem 0 0;color:var(--ld-muted);max-width:36em}
.ld-rows{display:grid;gap:.65rem}
.ld-row{display:grid;gap:.35rem .9rem;background:var(--ld-paper);border:1px solid var(--ld-line);border-radius:4px;padding:.9rem 1rem;grid-template-columns:72px 1fr}
@media(min-width:700px){.ld-row{grid-template-columns:88px 1fr auto;align-items:center}}
.ld-row__code{font-size:.72rem;font-weight:700;letter-spacing:.06em;color:var(--ld-green-deep);font-variant-numeric:tabular-nums}
.ld-row h3{margin:0;font-size:1.02rem;color:var(--ld-ink)}
.ld-row p{margin:0;font-size:.9rem;color:var(--ld-muted)}
.ld-row__link{font-weight:700;font-size:.88rem;text-decoration:none;color:var(--ld-green-deep)}

.ld-mediagrid{display:grid;gap:1rem}
@media(min-width:760px){.ld-mediagrid{grid-template-columns:1fr 1fr}}
.ld-mediacard{background:#fff;border:1px solid var(--ld-line);border-radius:4px;overflow:hidden;display:grid}
@media(min-width:560px){.ld-mediacard{grid-template-columns:150px 1fr}}
.ld-mediacard img{width:100%;height:140px;object-fit:cover}
@media(min-width:560px){.ld-mediacard img{height:100%;min-height:140px}}
.ld-mediacard--portrait{grid-template-columns:1fr}
@media(min-width:560px){.ld-mediacard--portrait{grid-template-columns:120px 1fr}}
.ld-mediacard--portrait img{height:180px;object-fit:cover;object-position:center top}
@media(min-width:560px){.ld-mediacard--portrait img{height:100%;min-height:180px}}
.ld-mediacard__body{padding:.95rem 1rem}
.ld-mediacard__body h3{margin:0 0 .35rem;font-family:var(--ld-display);font-size:1.12rem;color:var(--ld-ink)}
.ld-mediacard__body p{margin:0;color:var(--ld-muted);font-size:.92rem}
.ld-split{display:grid;gap:1.1rem;align-items:start}
@media(min-width:860px){.ld-split{grid-template-columns:1.2fr .8fr}}
.ld-split__visual{border-radius:4px;overflow:hidden;border:1px solid var(--ld-line);background:#dfe6ec}
.ld-split__visual img{width:100%;aspect-ratio:16/9;object-fit:cover}
.ld-split__visual--tall img{aspect-ratio:3/4}

.ld-page{padding:1.15rem 0 2.25rem}
.ld-card{background:var(--ld-paper);border:1px solid var(--ld-line);border-radius:4px;padding:1.2rem 1.1rem 1.5rem;box-shadow:0 8px 22px rgba(18,24,32,.05)}
.ld-crumbs{font-size:.86rem;color:var(--ld-muted);margin:0 0 .9rem}
.ld-crumbs a{text-decoration:none;font-weight:600}
.ld-lead{color:var(--ld-muted);font-size:1.02rem}
.ld-prose h2{font-family:var(--ld-display);color:var(--ld-ink);font-size:1.3rem;margin:1.5rem 0 .65rem}
.ld-prose h3{color:var(--ld-rail);margin:1.1rem 0 .45rem}
.ld-prose p,.ld-prose li{color:var(--ld-muted)}
.ld-prose ol{padding-left:1.2rem}
.ld-figure{margin:1.15rem 0;border-radius:4px;overflow:hidden;border:1px solid var(--ld-line);background:#dfe6ec}
.ld-figure img{width:100%;aspect-ratio:16/9;object-fit:cover}
.ld-figure figcaption{padding:.55rem .85rem;font-size:.84rem;color:var(--ld-muted)}
.ld-faq details{background:#fff;border:1px solid var(--ld-line);border-radius:4px;padding:.85rem 1rem;margin:0 0 .55rem}
.ld-faq summary{cursor:pointer;font-weight:700;color:var(--ld-ink)}
.ld-faq p{margin:.45rem 0 0;color:var(--ld-muted)}

.ld-foot{background:var(--ld-rail);color:#aebcc8;padding:2rem 0 5.5rem;margin-top:.75rem}
@media(min-width:960px){.ld-foot{padding-bottom:2.25rem}}
.ld-foot a{color:#fff;text-decoration:none}
.ld-foot__grid{display:grid;gap:1.35rem}
@media(min-width:760px){.ld-foot__grid{grid-template-columns:1.35fr 1fr 1fr}}
.ld-foot__brand{font-family:var(--ld-display);font-size:1.3rem;color:#fff;margin:0 0 .45rem}
.ld-foot h3{margin:0 0 .55rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ld-amber)}
.ld-foot ul{list-style:none;margin:0;padding:0}
.ld-foot li{margin:.3rem 0}
.ld-foot__meta{margin-top:1.5rem;padding-top:.9rem;border-top:1px solid rgba(174,188,200,.25);font-size:.8rem;opacity:.85}

.ld-dock{position:fixed;left:0;right:0;bottom:0;z-index:50;display:flex;gap:.55rem;justify-content:center;padding:.6rem .85rem calc(.6rem + env(safe-area-inset-bottom));background:rgba(247,250,252,.97);border-top:1px solid var(--ld-line);backdrop-filter:blur(8px)}
.ld-dock .ld-btn{flex:1;max-width:210px}
@media(min-width:960px){.ld-dock{display:none}}

.ld-news-list{display:grid;gap:.9rem}
.ld-news-card{background:#fff;border:1px solid var(--ld-line);border-radius:4px;overflow:hidden;display:grid}
.ld-news-card.has-thumb{grid-template-columns:1fr}
@media(min-width:700px){.ld-news-card.has-thumb{grid-template-columns:200px 1fr}}
.ld-news-card__media img{width:100%;height:140px;object-fit:cover}
@media(min-width:700px){.ld-news-card__media img{height:100%;min-height:140px}}
.ld-news-card__body{padding:.95rem 1.05rem}
.ld-news-card__meta{display:flex;gap:.65rem;flex-wrap:wrap;font-size:.78rem;color:var(--ld-muted);margin:0 0 .4rem;font-variant-numeric:tabular-nums}
.ld-news-card__title{margin:0 0 .35rem;font-family:var(--ld-display);font-size:1.08rem;line-height:1.25}
.ld-news-card__title a{text-decoration:none;color:var(--ld-ink)}
.ld-news-card__title a:hover{color:var(--ld-green-deep)}
.ld-news-card__excerpt{margin:0;color:var(--ld-muted);font-size:.9rem}
.ld-news-empty{padding:1rem;border:1px dashed var(--ld-line);border-radius:4px;background:#fff;color:var(--ld-muted)}
.ld-pager{margin-top:1.15rem;display:grid;gap:.55rem;justify-items:center}
.ld-pager__row{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;justify-content:center}
.ld-pager__pages{display:flex;gap:.3rem;list-style:none;margin:0;padding:0}
.ld-pager__btn,.ld-pager__num{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 .5rem;border-radius:4px;border:1px solid var(--ld-line);background:#fff;color:var(--ld-ink);text-decoration:none;font-weight:700;font-size:.88rem;font-variant-numeric:tabular-nums}
.ld-pager__num.is-current{background:var(--ld-green);color:#fff;border-color:var(--ld-green)}
.ld-pager__btn.is-disabled{opacity:.4}
.ld-pager__gap{padding:.35rem;color:var(--ld-muted)}
.ld-pager__status{font-size:.8rem;color:var(--ld-muted);font-variant-numeric:tabular-nums}
.ld-article__title{font-family:var(--ld-display);font-size:clamp(1.45rem,3vw,2rem);line-height:1.2;color:var(--ld-ink);margin:0 0 .7rem}
.ld-article__body,.ld-prose{font-size:1.01rem}
.ld-news-hero{margin:.9rem 0 1.1rem;border-radius:4px;overflow:hidden}
.ld-news-hero img{width:100%;aspect-ratio:16/9;object-fit:cover}
.ld-news-nav{display:grid;gap:.65rem;margin:1.5rem 0;grid-template-columns:1fr}
@media(min-width:700px){.ld-news-nav{grid-template-columns:1fr 1fr}}
.ld-news-nav a{display:block;padding:.9rem;border-radius:4px;border:1px solid var(--ld-line);background:#eef3f6;text-decoration:none;color:inherit}
.ld-news-nav a span{display:block;font-size:.78rem;color:var(--ld-muted);margin-bottom:.2rem}
.ld-news-nav a strong{color:var(--ld-ink);font-size:.92rem}
.ld-news-related{margin:1.35rem 0;padding:1rem;background:#e8f0eb;border-radius:4px}
.ld-news-related h2{margin:0 0 .55rem;font-family:var(--ld-display);font-size:1.1rem}
.ld-byline{font-weight:600;color:var(--ld-green-deep)}
.ld-week-digest{margin:.5rem 0}

/* --- CTA visibility (skin-matched) --- */
.ld-cta-rail {
  position: fixed;
  right: max(0.85rem, env(safe-area-inset-right));
  bottom: max(0.85rem, env(safe-area-inset-bottom));
  z-index: 90;
  pointer-events: none;
}
.ld-cta-rail__btn {
  pointer-events: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.75rem;
  padding: 0.7rem 1.15rem;
  border-radius: 999px;
  font-weight: 700;
  font-size: 0.95rem;
  letter-spacing: 0.01em;
  text-decoration: none !important;
  color: #fff !important;
  background: var(--ld-green);
  box-shadow: 0 10px 28px rgba(0,0,0,.22);
  border: 0;
}
.ld-cta-rail__btn:hover { filter: brightness(1.06); }
.ld-cta-rail__btn:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
@media (max-width: 720px) {
  .ld-cta-rail {
    left: max(0.75rem, env(safe-area-inset-left));
    right: max(0.75rem, env(safe-area-inset-right));
    bottom: max(0.75rem, env(safe-area-inset-bottom));
  }
  .ld-cta-rail__btn { width: 100%; border-radius: 0.85rem; }
}
.ld-cta-mid {
  margin: 1.1rem 0 1.35rem;
  padding: 0;
  border: 0;
  background: transparent;
  text-align: left;
}
.ld-cta-mid__btn {
  display: inline-flex !important;
  min-height: 2.6rem;
  padding: 0.7rem 1.35rem;
  font-weight: 700;
  text-decoration: none !important;
}
/* 若主按钮类未覆盖底色，给 mid 一个皮肤底 */
a.ld-cta-mid__btn:not([class*="--solid"]):not([class*="-cta"]):not([class*="--navy"]):not([class*="--teal"]):not([class*="--coral"]):not([class*="--forest"]) {
  color: #fff !important;
  background: var(--ld-green);
  border-radius: 999px;
  border: 0;
  padding: 0.7rem 1.35rem;
}
.ld-btn--cta-vis {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.4rem;
  padding: 0.55rem 1rem;
  border-radius: 999px;
  font-weight: 700;
  text-decoration: none !important;
  color: #fff !important;
  background: var(--ld-green);
  border: 0;
}
