.wdfwd,.wdfwd *{box-sizing:border-box}
.wdfwd{
 --bg:#075793;--bg2:#063f70;--navy:#082f54;--ink:#142331;--muted:#6e7d89;
 --paper:#fff;--line:#dce6ed;--yellow:#f5d66a;--gold:#d9aa3e;--green:#1fa86b;
 --red:#d94d49;--cyan:#36a9d7;--shadow:0 18px 48px rgba(3,38,68,.13);
 width:min(1600px,calc(100vw - 28px));max-width:none!important;margin:34px auto 64px!important;
 font-family:inherit;color:var(--ink);line-height:1.45;clear:both
}
.wdfwd h1,.wdfwd h2,.wdfwd p{margin-top:0}
.wdfwd-hero{
 display:grid;grid-template-columns:minmax(0,1fr) 460px;gap:32px;align-items:end;
 padding:38px 42px;border-radius:24px 24px 0 0;color:#fff;
 background:linear-gradient(135deg,#073c68,#08639d);box-shadow:var(--shadow)
}
.wdfwd-eyebrow,.wdfwd-section-kicker{display:block;color:#ffd76d;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.16em;margin-bottom:9px}
.wdfwd-hero h1{font-size:clamp(34px,4vw,58px);line-height:1;letter-spacing:-.045em;margin-bottom:13px;color:#fff}
.wdfwd-hero p{max-width:900px;margin-bottom:0;color:rgba(255,255,255,.84);font-size:16px}
.wdfwd-hero-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;min-width:0}
.wdfwd-hero-meta>span{padding:12px 14px;border:1px solid rgba(255,255,255,.17);border-radius:11px;background:rgba(255,255,255,.07);font-size:10px;text-transform:uppercase;letter-spacing:.05em}
.wdfwd-hero-meta strong{display:block;font-size:22px;color:#fff;margin-top:3px}
.wdfwd-hero-meta small{grid-column:1/-1;color:rgba(255,255,255,.65);text-align:right}
.wdfwd-dashboard-grid{
 display:grid;grid-template-columns:1.25fr .78fr 1.12fr .82fr;gap:14px;
 padding:14px;background:linear-gradient(180deg,var(--bg),var(--bg2))
}
.wdfwd-card{background:#f8fbfd;border:1px solid rgba(255,255,255,.42);border-radius:15px;padding:18px;min-width:0;box-shadow:0 8px 24px rgba(3,38,68,.12)}
.wdfwd-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}
.wdfwd-card-head span{display:block;color:#6b7b87;font-size:9px;text-transform:uppercase;letter-spacing:.12em;font-weight:900;margin-bottom:3px}
.wdfwd-card-head h2{font-size:18px;line-height:1.15;margin:0;color:var(--navy);text-transform:uppercase;letter-spacing:.015em}
.wdfwd-card-head small{display:block;margin-top:4px;color:#7b8b96;font-size:9px}
.wdfwd-card-head>b,.wdfwd-card-head>strong{font-size:18px;color:var(--navy);white-space:nowrap}
.wdfwd-members{min-height:620px}
.wdfwd-donut-zone{display:grid;gap:18px;align-content:start}
.wdfwd-donut{width:min(330px,88%);aspect-ratio:1;margin:4px auto;position:relative;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(8,47,84,.08),0 11px 25px rgba(8,47,84,.12)}
.wdfwd-donut:after{content:"";position:absolute;inset:25%;border-radius:50%;background:#f8fbfd;box-shadow:0 0 0 1px rgba(8,47,84,.07)}
.wdfwd-donut>div{position:absolute;z-index:2;inset:30%;display:grid;place-content:center;text-align:center}
.wdfwd-donut strong{font-size:24px;color:var(--navy)}
.wdfwd-donut span{font-size:9px;color:#70808c;text-transform:uppercase}
.wdfwd-donut-legend{max-height:255px;overflow:auto;padding-right:4px;scrollbar-width:thin}
.wdfwd-donut-legend>div,.wdfwd-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;padding:7px 2px;border-bottom:1px solid #e7edf1;font-size:11px}
.wdfwd-donut-legend small{color:#81909a;width:46px;text-align:right}
.wdfwd-center-stack,.wdfwd-right-stack{display:grid;gap:14px;align-content:start}
.wdfwd-test-grid{display:grid;gap:8px}
.wdfwd-test{display:grid;grid-template-columns:50px 1fr 42px;align-items:center;gap:8px;background:var(--yellow);padding:10px;border-radius:8px;box-shadow:inset 0 0 0 1px rgba(114,88,19,.14)}
.wdfwd-test>span{font-weight:900;color:#26313a}
.wdfwd-test>strong{text-align:right;font-size:17px}
.wdfwd-test>b{font-size:30px;line-height:1;text-align:center}
.wdfwd .trend-up{color:var(--green)}.wdfwd .trend-down{color:var(--red)}.wdfwd .trend-equal{color:#287fb0}
.wdfwd-mini-chart-card{min-height:165px}
.wdfwd-linechart{height:105px;position:relative}
.wdfwd-linechart svg{width:100%;height:100%;overflow:visible;display:block}
.wdfwd-chart-tip{position:fixed;z-index:999999;pointer-events:none;background:#071f36;color:#fff;padding:7px 9px;border-radius:7px;font-size:11px;box-shadow:0 8px 22px rgba(0,0,0,.25);transform:translate(-50%,-120%);display:none}
.wdfwd-breeds{min-height:620px}
.wdfwd-breed-search{display:flex;align-items:center;gap:7px;border:1px solid #d6e0e6;border-radius:8px;background:#fff;padding:7px 9px;margin-bottom:9px}
.wdfwd-breed-search input{border:0!important;outline:0!important;box-shadow:none!important;width:100%;height:26px;padding:0!important;font-size:12px}
.wdfwd-scroll-list{overflow:auto;scrollbar-width:thin}
.wdfwd-breed-list{height:500px}
.wdfwd-country-list{max-height:330px}
.wdfwd-row{grid-template-columns:minmax(0,1fr) auto;font-size:11px}
.wdfwd-row span{overflow-wrap:anywhere}.wdfwd-row strong{color:#0d3558}
.wdfwd-total{display:grid;align-content:center;min-height:180px;padding:24px;border-radius:15px;background:linear-gradient(135deg,#ffe48a,#f4c94f);color:#183047;box-shadow:0 12px 28px rgba(94,70,12,.18)}
.wdfwd-total span{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.1em}
.wdfwd-total strong{display:block;font-size:clamp(34px,3.6vw,56px);line-height:1;margin:8px 0}
.wdfwd-total small{color:#6d5b23}

/* Compact historical births panel */
.wdfwd-births-compact{
 display:grid;grid-template-columns:minmax(250px,.34fr) minmax(0,.66fr);gap:26px;align-items:center;
 padding:22px 26px;background:#f8fbfd;border-left:14px solid var(--bg2);border-right:14px solid var(--bg2);
 border-top:1px solid #dbe6ec;border-bottom:1px solid #dbe6ec
}
.wdfwd-births-copy .wdfwd-section-kicker{color:#6e7f8c;margin-bottom:6px}
.wdfwd-births-copy h2{margin:0 0 8px;color:var(--navy);font-size:24px;letter-spacing:-.02em}
.wdfwd-births-copy p{margin:0 0 14px;color:#74838e;font-size:12px}
.wdfwd-birth-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.wdfwd-birth-kpis>div{padding:10px;border:1px solid #dce6ec;border-radius:9px;background:#fff}
.wdfwd-birth-kpis span{display:block;color:#7b8994;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.wdfwd-birth-kpis strong{display:block;margin-top:3px;color:var(--navy);font-size:17px;white-space:nowrap}
.wdfwd-linechart-births{height:160px}
.wdfwd-birth-chart-wrap{min-width:0;padding:5px 5px 0}

.wdfwd-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:14px;background:var(--bg2);border-radius:0 0 24px 24px}
.wdfwd-bar-list{display:grid;gap:12px;max-height:430px;overflow:auto;padding-right:4px}
.wdfwd-bar-row>div{display:flex;justify-content:space-between;gap:12px;font-size:11px;margin-bottom:4px}
.wdfwd-bar-row i{display:block;height:7px;border-radius:999px;background:#e3ebf0;overflow:hidden}
.wdfwd-bar-row i b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1b75a8,#4db4d4)}
.wdfwd-bar-list-gold .wdfwd-bar-row i b{background:linear-gradient(90deg,#c78f20,#f1c95e)}
.wdfwd-data-footer{display:flex;justify-content:space-between;gap:30px;align-items:center;padding:19px 26px;margin-top:14px;border:1px solid var(--line);border-radius:14px;background:#fff}
.wdfwd-data-footer strong,.wdfwd-data-footer span{display:block}.wdfwd-data-footer strong{color:var(--navy)}.wdfwd-data-footer span,.wdfwd-data-footer small{color:#78858e}

/* Desktop: after JS detaches dashboard from the legacy theme content column. */
@media(min-width:981px){
 html.wdfwd-desktop-clean,html.wdfwd-desktop-clean body{overflow-x:hidden!important}
 .wdfwd.wdfwd-desktop-detached{width:calc(100vw - 34px)!important;max-width:none!important;margin:34px auto 64px!important;position:relative!important;left:auto!important;right:auto!important;transform:none!important;float:none!important}
 .wdfwd-legacy-empty{display:none!important}
}

@media(max-width:1250px){
 .wdfwd-hero{grid-template-columns:1fr 400px}
 .wdfwd-dashboard-grid{grid-template-columns:1.15fr .85fr 1fr}
 .wdfwd-right-stack{grid-column:1/-1;grid-template-columns:1fr .55fr}
}
@media(max-width:980px){
 .wdfwd{width:min(100% - 22px,1200px);margin-top:22px!important}
 .wdfwd-hero{grid-template-columns:1fr}
 .wdfwd-hero-meta{min-width:0;max-width:620px}
 .wdfwd-dashboard-grid{grid-template-columns:1fr 1fr}
 .wdfwd-members{min-height:0}.wdfwd-breeds{min-height:0}
 .wdfwd-breeds{grid-column:1/-1}.wdfwd-breed-list{height:420px}
 .wdfwd-right-stack{grid-column:1/-1}
 .wdfwd-births-compact{grid-template-columns:1fr;border-left-width:10px;border-right-width:10px}
 .wdfwd-linechart-births{height:190px}
}
@media(max-width:680px){
 .wdfwd{width:calc(100vw - 16px);margin-top:16px!important}
 .wdfwd-hero{padding:28px 20px;border-radius:18px 18px 0 0}
 .wdfwd-hero-meta{grid-template-columns:1fr 1fr}
 .wdfwd-dashboard-grid{grid-template-columns:1fr;padding:9px;gap:9px}
 .wdfwd-breeds{grid-column:auto}
 .wdfwd-right-stack{grid-column:auto;grid-template-columns:1fr}
 .wdfwd-births-compact{padding:18px 14px;border-left-width:9px;border-right-width:9px}
 .wdfwd-birth-kpis{grid-template-columns:1fr 1fr 1fr}
 .wdfwd-birth-kpis strong{font-size:14px}
 .wdfwd-linechart-births{height:170px}
 .wdfwd-bottom-grid{grid-template-columns:1fr;padding:9px;gap:9px;border-radius:0 0 18px 18px}
 .wdfwd-data-footer{align-items:flex-start;flex-direction:column}
 .wdfwd-donut{width:min(280px,92%)}
}


/* ==========================================================
   WDF WORLD DATABASE 1.2
   True desktop shell + server-rendered historical charts
   ========================================================== */

.wdfwd-linechart-server{
  display:block;
  overflow:visible;
}
.wdfwd-linechart-server .wdfwd-server-chart{
  display:block;
  width:100%!important;
  height:100%!important;
  overflow:visible;
}
.wdfwd-chart-empty{
  height:100%;
  display:grid;
  place-items:center;
  color:#80909b;
  font-size:11px;
  border:1px dashed #dbe3e8;
  border-radius:8px;
}

@media(min-width:981px){
  html.wdfwd-desktop-clean,
  html.wdfwd-desktop-clean body{
    overflow-x:hidden!important;
  }

  /*
   * The element is a child of the shared header/footer shell after JS mounts it.
   * No 1600px cap: on desktop it uses essentially the full available width.
   */
  .wdfwd.wdfwd-desktop-detached{
    display:block!important;
    position:relative!important;
    float:none!important;
    clear:both!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;

    width:calc(100% - 24px)!important;
    max-width:none!important;
    min-width:0!important;

    margin:34px 12px 64px!important;
    padding-left:0!important;
    padding-right:0!important;
  }

  .wdfwd-legacy-empty{
    display:none!important;
  }

  /*
   * Protect the dashboard from common legacy theme rules that assign a
   * content-column width to main/article/page containers.
   */
  body.wdfwd-world-database-active #wdf-world-database-dashboard{
    box-sizing:border-box!important;
  }
}


.wdfwd-report-year{
  display:inline-block;
  margin-left:.18em;
  color:#f4d36e;
  font-weight:800;
}
