/* DPBossPre shared visual consistency layer */
:root{
  --ds-bg:#dff4e6;
  --ds-surface:#ecfaef;
  --ds-surface-alt:#d8f0df;
  --ds-ink:#07130c;
  --ds-muted:#234334;
  --ds-green:#075f35;
  --ds-green-dark:#04351f;
  --ds-green-bright:#0a8a4f;
  --ds-gold:#d9b74a;
  --ds-highlight:#f4ed91;
  --ds-border:#08713f;
  --ds-danger:#6b123d;
  --ds-radius:9px;
  --ds-shadow:0 4px 14px rgba(0,0,0,.22);
  --ds-shadow-soft:0 2px 8px rgba(0,0,0,.16);
  /* Shared card foundation: geometry only; page owners retain content-specific backgrounds. */
  --card-radius:9px;
  --card-border-width:2px;
  --card-border-color:var(--ds-border);
  --card-shadow:var(--ds-shadow-soft);
  --card-pad:8px;
  --card-gap:6px;
  --card-bg:linear-gradient(180deg,var(--ds-surface),var(--ds-surface-alt));
  --card-bg-light:#fffdf0;
  --card-bg-featured:linear-gradient(180deg,#fff4ad,#eee487);
  /* Shared button foundation: one source for geometry, interaction and accessibility. */
  --btn-height:34px;
  --btn-height-compact:27px;
  --btn-radius:7px;
  --btn-pad-y:6px;
  --btn-pad-x:10px;
  --btn-font-size:12px;
  --btn-font-weight:800;
  --btn-bg:linear-gradient(180deg,var(--ds-green-bright),var(--ds-green-dark));
  --btn-bg-secondary:linear-gradient(180deg,#fff,#e8f6ec);
  --btn-color:#fff;
  --btn-color-secondary:var(--ds-green-dark);
  --btn-border:1px solid #fff;
  --btn-ring:0 0 0 1px var(--ds-border);
  --btn-shadow:var(--btn-ring),var(--ds-shadow-soft);
}
body{background:var(--ds-bg);color:var(--ds-ink)}
.page-shell,.site-shell,.chart-page,.markets-page,.market-detail-page,.starline-page,.game-zone-page,.weekly-shell,.weekly-page,.info-shell,.info-page,.static-shell,.static-page{width:100%;max-width:980px;margin-inline:auto}
.panel,.panel-shell,.table-section,.directory-board,.market-search,.markets-intro,.markets-help,.site-footer,.footer-panel{
  border-color:var(--ds-border)!important;
  border-radius:var(--ds-radius)!important;
  box-shadow:var(--ds-shadow)!important;
}
.brand-panel,.compact-brand{
  background:linear-gradient(180deg,#0b2b1a,#04130c)!important;
  border:3px solid var(--ds-border)!important;
  border-radius:10px!important;
  box-shadow:var(--ds-shadow)!important;
  min-height:62px;
}
.brand-panel .brand-logo,.compact-brand,.brand-lockup{display:flex;align-items:center;justify-content:center}
.brand-mark{
  display:grid!important;place-items:center!important;
  width:48px!important;height:48px!important;min-width:48px!important;
  border:2px solid #fff!important;border-radius:50%!important;
  background:linear-gradient(145deg,var(--ds-green-bright),var(--ds-green-dark))!important;
  color:#fff!important;font-style:normal!important;font-weight:900!important;
  box-shadow:0 0 0 3px rgba(10,138,79,.32),0 3px 8px rgba(0,0,0,.35)!important;
}
.brand-main,.brand-copy strong,.brand-copy b{color:#fff!important;font-style:normal!important;font-weight:900!important;letter-spacing:.8px}
.brand-pre,.brand-copy span,.brand-copy em{color:#65e69d!important;font-style:normal!important;font-weight:900!important}
.section-cap,.section-title,.table-title,
.weekly-hero h1,.static-hero h1,.markets-intro h1,.chart-intro h1,.market-detail-hero h1,.starline-hero h1,.game-zone-hero h1,.info-hero h1{
  background:linear-gradient(180deg,var(--ds-green-bright),var(--ds-green))!important;
  color:#fff!important;
  border:2px solid #fff!important;
  border-radius:11px!important;
  text-shadow:1px 1px 2px #000!important;
  box-shadow:0 0 0 1px var(--ds-border)!important;
  font-weight:900!important;
  letter-spacing:.4px!important;
}
/* Shared card foundation. Component owners may keep unique colors/content layout,
   but common geometry and interaction come from this single source. */
:where(
  .panel,.panel-shell,.table-section,.directory-board,.content-panel,
  .welcome-panel,.intro-panel,.lucky-panel,.live-panel,.promo-panel,.support-panel,
  .game-card,.free-market-card,.weekly-number-card,.static-card,.contact-card,
  .starline-card,.pass-card,.forum-post,.number-board,.market-search,.markets-intro,.markets-help
){
  box-sizing:border-box;
  border-width:var(--card-border-width);
  border-style:solid;
  border-color:var(--card-border-color);
  border-radius:var(--card-radius);
  box-shadow:var(--card-shadow);
}
:where(.game-card,.free-market-card,.weekly-number-card,.static-card,.contact-card,.starline-card,.pass-card){
  overflow:hidden;
}
:where(.game-card,.free-market-card,.weekly-number-card,.static-card,.contact-card,.starline-card,.pass-card):focus-within{
  outline:3px solid rgba(217,183,74,.42);
  outline-offset:1px;
}
:where(.game-card,.free-market-card,.weekly-number-card,.static-card,.contact-card,.starline-card,.pass-card) :where(a,button){
  -webkit-tap-highlight-color:transparent;
}
:where(.featured,.featured-row,.game-card.featured,.free-market-card.featured){
  border-color:#a88718;
}
@media(max-width:600px){
  :root{--card-radius:8px;--card-pad:7px;--card-gap:5px}
}

/* Shared button foundation. Page styles may choose a variant, but not redefine core geometry. */
:where(
  .chart-actions a,.chart-actions button,.chart-back-link,.tool-btn,.filter-btn,
  .weekly-nav a,.static-nav a,.static-actions a,.info-nav a,.game-nav a,.starline-nav a,
  .market-detail-actions a,.market-detail-actions button,.pill-action,.starline-more a,
  .static-form button,.quick-nav a,.quick-nav button,.game-actions a,.hero-actions a,
  .support-actions a,.detail-btn,.directory-chart-btn,.starline-result a
){
  min-height:var(--btn-height);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  padding:var(--btn-pad-y) var(--btn-pad-x);
  background:var(--btn-bg)!important;
  border:var(--btn-border)!important;
  color:var(--btn-color)!important;
  border-radius:var(--btn-radius)!important;
  box-shadow:var(--btn-shadow)!important;
  font-size:var(--btn-font-size);
  line-height:1.1;
  font-weight:var(--btn-font-weight)!important;
  font-style:normal;
  text-align:center;
  text-decoration:none!important;
  cursor:pointer;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
  transition:filter .14s ease,transform .14s ease,box-shadow .14s ease;
}
:where(.filter-btn):not(.active){
  background:var(--btn-bg-secondary)!important;
  color:var(--btn-color-secondary)!important;
  border-color:var(--ds-border)!important;
  box-shadow:none!important;
}
:where(.chart-btn,.refresh-mini){
  min-height:var(--btn-height-compact)!important;
  min-width:43px!important;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:4px 8px;
  border-radius:var(--btn-radius);
  font-size:var(--btn-font-size);
  font-weight:var(--btn-font-weight);
  line-height:1.1;
  cursor:pointer;
  touch-action:manipulation;
}
:where(.chart-btn.jodi,.directory-chart-btn.jodi){background:#512f91!important;color:#fff!important}
:where(.chart-btn.panel,.directory-chart-btn.panel){background:#143b73!important;color:#fff!important}
:where(.refresh-mini){background:var(--ds-green-dark)!important;color:#fff!important}
:where(
  .chart-actions a,.chart-actions button,.chart-back-link,.tool-btn,.filter-btn,
  .weekly-nav a,.static-nav a,.static-actions a,.info-nav a,.game-nav a,.starline-nav a,
  .market-detail-actions a,.market-detail-actions button,.pill-action,.starline-more a,
  .static-form button,.quick-nav a,.quick-nav button,.game-actions a,.hero-actions a,
  .support-actions a,.detail-btn,.directory-chart-btn,.starline-result a,.chart-btn,.refresh-mini
):hover{filter:brightness(1.08)}
:where(
  .chart-actions a,.chart-actions button,.chart-back-link,.tool-btn,.filter-btn,
  .weekly-nav a,.static-nav a,.static-actions a,.info-nav a,.game-nav a,.starline-nav a,
  .market-detail-actions a,.market-detail-actions button,.pill-action,.starline-more a,
  .static-form button,.quick-nav a,.quick-nav button,.game-actions a,.hero-actions a,
  .support-actions a,.detail-btn,.directory-chart-btn,.starline-result a,.chart-btn,.refresh-mini
):active{transform:translateY(1px)}
:where(
  .chart-actions a,.chart-actions button,.chart-back-link,.tool-btn,.filter-btn,
  .weekly-nav a,.static-nav a,.static-actions a,.info-nav a,.game-nav a,.starline-nav a,
  .market-detail-actions a,.market-detail-actions button,.pill-action,.starline-more a,
  .static-form button,.quick-nav a,.quick-nav button,.game-actions a,.hero-actions a,
  .support-actions a,.detail-btn,.directory-chart-btn,.starline-result a,.chart-btn,.refresh-mini
):focus-visible{outline:3px solid rgba(217,183,74,.65);outline-offset:2px}

table{border-color:var(--ds-border)!important}
th{background:linear-gradient(180deg,#effff3,#d6f0df)!important;color:var(--ds-ink)!important;font-weight:900!important}
.chart-history th,.weekly-table th,.history-table th,.result-table th,.starline-table th,.info-table th{background:linear-gradient(180deg,var(--ds-green),var(--ds-green-dark))!important;color:#fff!important;text-shadow:1px 1px #000!important}
td,th{border-color:var(--ds-border)!important}
tbody tr:nth-child(even) td{background-color:var(--ds-surface-alt)}
.latest-week td,.latest-row td,.featured-row td,.highlight-row td{background:var(--ds-highlight)!important;box-shadow:inset 0 2px 0 var(--ds-gold),inset 0 -2px 0 var(--ds-gold)}
.site-footer,.footer-panel{
  background:linear-gradient(180deg,#e8f7ec,#cee9d7)!important;
  color:var(--ds-ink)!important;
  text-align:center!important;
  padding:10px 8px 20px!important;
}
.site-footer strong,.footer-panel strong{display:block;color:var(--ds-green-dark)!important;font-size:14px!important;letter-spacing:.4px;margin-bottom:4px}
.site-footer p,.footer-panel p,.site-footer nav,.footer-panel nav{font-size:12px!important;line-height:1.5!important}
.site-footer a,.footer-panel a{color:#0b3f78!important;font-weight:800!important;text-decoration:none!important}
.disclaimer-panel,.disclaimer,.static-notice{background:linear-gradient(180deg,#f4fae4,#e5efbd)!important}
.faq-panel details,.static-faq details{border-color:rgba(8,113,63,.5)!important}
.faq-panel summary,.static-faq summary{color:var(--ds-green-dark)!important;font-weight:900!important}
input,textarea,select{border:1px solid var(--ds-border)!important;border-radius:7px!important;background:#fff!important;color:var(--ds-ink)!important;box-shadow:inset 0 1px 3px rgba(0,0,0,.1)}
@media(max-width:600px){
  .brand-panel,.compact-brand{min-height:58px}
  .brand-mark{width:44px!important;height:44px!important;min-width:44px!important}
  .section-cap,.section-title,.table-title{border-radius:9px!important}
  .site-footer,.footer-panel{padding-bottom:18px!important}
}

/* Approval visual hardening pass — reference-family proportions */
:root{
  --ds-page-mobile:520px;
  --ds-panel-gap:4px;
  --ds-border-strong:2px;
}
body{letter-spacing:0}
.page-shell{max-width:var(--ds-page-mobile)}
.panel,.table-section,.panel-shell,.directory-board,.market-search,.markets-intro,.markets-help,.site-footer,.footer-panel{
  margin-bottom:var(--ds-panel-gap)!important;
  border-width:var(--ds-border-strong)!important;
}
.brand-panel,.compact-brand{min-height:66px!important;padding-block:5px!important}
.brand-logo,.brand-lockup{gap:7px!important}
.brand-main,.brand-copy strong,.brand-copy b{line-height:.95!important}
.brand-pre,.brand-copy span,.brand-copy em{line-height:1!important}
.section-cap,.section-title,.table-title,
.weekly-hero h1,.static-hero h1,.markets-intro h1,.chart-intro h1,.market-detail-hero h1,.starline-hero h1,.game-zone-hero h1,.info-hero h1{
  min-height:32px;display:flex;align-items:center;justify-content:center;padding:5px 8px!important;
}
.market-row{min-height:66px!important}
.market-row h3,.live-item h3{letter-spacing:.2px!important}
.market-result,.live-item strong{font-variant-numeric:tabular-nums;letter-spacing:.6px!important}
th,td{font-variant-numeric:tabular-nums}
.table-scroll,.table-wrap,.responsive-table{scrollbar-width:thin;scrollbar-color:var(--ds-border) #d9efdf}
.site-footer nav,.footer-panel nav{display:flex;justify-content:center;flex-wrap:wrap;gap:3px 8px}

@media(min-width:700px){
  .page-shell{max-width:620px}
  body{background:linear-gradient(90deg,#cce8d5 0,#dff4e6 18%,#dff4e6 82%,#cce8d5 100%)}
}
@media(max-width:420px){
  .brand-panel,.compact-brand{min-height:60px!important}
  .section-cap,.section-title,.table-title{min-height:29px}
  .market-row{min-height:63px!important}
  .site-footer,.footer-panel{padding-bottom:22px!important}
}

/* Shared typography foundation.
   Component styles may choose a size variant, but common font family, weights,
   line-height, rendering and semantic text roles are owned here. */
:root{
  --type-family:Helvetica,Arial,sans-serif;
  --type-body-size:13px;
  --type-body-weight:700;
  --type-body-line:1.45;
  --type-heading-weight:900;
  --type-heading-line:1.12;
  --type-label-size:11px;
  --type-label-weight:800;
  --type-result-weight:900;
  --type-result-line:1.05;
  --type-time-size:11px;
  --type-time-weight:700;
  --type-muted:#315342;
}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{
  font-family:var(--type-family);
  font-synthesis:none;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
:where(button,input,select,textarea){font:inherit}
:where(h1,h2,h3,h4,h5,h6,.section-cap,.section-title,.table-title){
  font-family:var(--type-family);
  font-weight:var(--type-heading-weight);
  line-height:var(--type-heading-line);
  text-wrap:balance;
}
:where(p,li,dd,.chart-copy,.brand-copy,.intro-copy,.content-copy){
  overflow-wrap:anywhere;
}
:where(
  .eyebrow,.market-eyebrow,.weekly-date,.market-status,.status-badge,.live-badge,
  .result-count,.policy-meta,.game-meta,.pass-title,.field-label,label
){
  font-family:var(--type-family);
  font-size:var(--type-label-size);
  font-weight:var(--type-label-weight);
  line-height:1.2;
  letter-spacing:.02em;
}
:where(
  .market-result,.current-result,.panel-current-result,.hero-result,.game-hero-result,
  .large-number,.starline-latest,.weekly-number-card strong,.free-market-card .ank,
  .result-wheel strong,.result-parts strong,.latest-repeat strong
){
  font-family:var(--type-family);
  font-weight:var(--type-result-weight);
  line-height:var(--type-result-line);
  font-variant-numeric:tabular-nums lining-nums;
}
:where(
  .market-time,.market-timing,.hero-time,.latest-time,.result-time,.time-label,
  .weekly-table td:first-child,.starline-session-table td:first-child
){
  font-family:var(--type-family);
  font-size:var(--type-time-size);
  font-weight:var(--type-time-weight);
  line-height:1.25;
  font-variant-numeric:tabular-nums lining-nums;
}
:where(.live-note,.policy-meta,.form-status,.empty-state,.support-note,.section-note){
  line-height:var(--type-body-line);
}
:where(a,button,summary){text-underline-offset:2px}
:where(a,button,summary):focus-visible{outline-offset:2px}
@media(max-width:420px){
  :root{--type-body-size:12px;--type-label-size:10px;--type-time-size:10px}
}


/* Shared borders & surface foundation.
   This layer owns common border widths, dividers, radii, surface fills and shadow
   levels. Page-specific owners may retain approved section colors, but must use
   these shared geometry tokens instead of creating new patch overrides. */
:root{
  --surface-page:var(--ds-bg);
  --surface-panel:var(--ds-surface);
  --surface-panel-alt:var(--ds-surface-alt);
  --surface-light:#fffdf0;
  --surface-highlight:var(--ds-highlight);
  --surface-muted:#eef8f1;
  --border-width:1px;
  --border-width-strong:2px;
  --border-color:var(--ds-border);
  --border-color-soft:rgba(8,113,63,.42);
  --border-color-gold:#a88718;
  --radius-control:7px;
  --radius-card:var(--card-radius);
  --radius-panel:var(--ds-radius);
  --divider-color:rgba(8,113,63,.32);
  --divider:1px solid var(--divider-color);
  --shadow-control:0 1px 4px rgba(0,0,0,.14);
  --shadow-card:var(--card-shadow);
  --shadow-panel:var(--ds-shadow);
  --shadow-inset:inset 0 1px 0 rgba(255,255,255,.55);
}
body{background:var(--surface-page)}
:where(
  .panel,.panel-shell,.table-section,.directory-board,.content-panel,
  .welcome-panel,.intro-panel,.lucky-panel,.live-panel,.promo-panel,.support-panel,
  .market-search,.markets-intro,.markets-help,.site-footer,.footer-panel
){
  border-style:solid;
  border-width:var(--border-width-strong);
  border-color:var(--border-color);
  border-radius:var(--radius-panel);
  box-shadow:var(--shadow-panel);
}
:where(
  .game-card,.free-market-card,.weekly-number-card,.static-card,.contact-card,
  .starline-card,.pass-card,.forum-post,.number-board,.market-row,.live-item
){
  border-style:solid;
  border-width:var(--border-width);
  border-color:var(--border-color-soft);
  border-radius:var(--radius-card);
  box-shadow:var(--shadow-card),var(--shadow-inset);
}
:where(.featured,.featured-row,.highlight-row,.game-card.featured,.free-market-card.featured){
  border-color:var(--border-color-gold)!important;
}
:where(hr,.divider,.section-divider,.card-divider){
  border:0;
  border-top:var(--divider);
  height:0;
  margin-block:6px;
}
:where(table){
  border-collapse:collapse;
  border-spacing:0;
  border:var(--border-width) solid var(--border-color);
  background:var(--surface-light);
}
:where(th,td){border:var(--border-width) solid var(--border-color)}
:where(tbody tr:nth-child(even) td){background-color:var(--surface-panel-alt)}
:where(.latest-week td,.latest-row td,.featured-row td,.highlight-row td){
  background:var(--surface-highlight)!important;
  box-shadow:inset 0 2px 0 var(--ds-gold),inset 0 -2px 0 var(--ds-gold);
}
:where(input,textarea,select){
  border:var(--border-width) solid var(--border-color);
  border-radius:var(--radius-control);
  background:#fff;
  box-shadow:inset 0 1px 3px rgba(0,0,0,.1);
}
:where(input,textarea,select):focus-visible{
  outline:3px solid rgba(217,183,74,.42);
  outline-offset:1px;
  border-color:var(--border-color);
}
:where(.fixed-action){
  border-radius:var(--radius-control)!important;
  box-shadow:0 0 0 1px var(--border-color),0 4px 12px rgba(0,0,0,.32)!important;
}
@media(max-width:600px){
  :root{
    --radius-card:8px;
    --radius-panel:8px;
    --shadow-panel:0 3px 10px rgba(0,0,0,.18);
  }
}


/* Shared Footer Foundation — single-owner geometry and presentation */
:root{
  --ds-footer-bg-start:#e8f7ec;
  --ds-footer-bg-end:#cee9d7;
  --ds-footer-ink:var(--ds-ink);
  --ds-footer-brand:var(--ds-green-dark);
  --ds-footer-link:#0b3f78;
  --ds-footer-border:var(--ds-border);
  --ds-footer-radius:var(--ds-panel-radius,10px);
  --ds-footer-shadow:var(--ds-shadow-panel,0 2px 8px rgba(0,0,0,.18));
  --ds-footer-padding-block:10px 20px;
  --ds-footer-padding-inline:8px;
  --ds-footer-gap:4px;
  --ds-footer-text-size:12px;
  --ds-footer-brand-size:14px;
  --ds-footer-line-height:1.5;
}

.site-footer,
.footer-panel{
  display:block;
  width:100%;
  max-width:100%;
  margin-inline:auto;
  overflow:hidden;
  background:linear-gradient(180deg,var(--ds-footer-bg-start),var(--ds-footer-bg-end))!important;
  color:var(--ds-footer-ink)!important;
  border:var(--ds-border-strong,2px) solid var(--ds-footer-border)!important;
  border-radius:var(--ds-footer-radius)!important;
  box-shadow:var(--ds-footer-shadow)!important;
  padding:var(--ds-footer-padding-block) var(--ds-footer-padding-inline)!important;
  text-align:center!important;
}

.site-footer > :first-child,
.footer-panel > :first-child{margin-top:0}
.site-footer > :last-child,
.footer-panel > :last-child{margin-bottom:0}

.site-footer strong,
.footer-panel strong{
  display:block;
  margin:0 0 var(--ds-footer-gap);
  color:var(--ds-footer-brand)!important;
  font-size:var(--ds-footer-brand-size)!important;
  font-weight:900!important;
  line-height:1.2!important;
  letter-spacing:.4px;
}

.site-footer p,
.footer-panel p,
.site-footer nav,
.footer-panel nav{
  margin:0;
  color:inherit!important;
  font-size:var(--ds-footer-text-size)!important;
  line-height:var(--ds-footer-line-height)!important;
}

.site-footer p + p,
.footer-panel p + p,
.site-footer p + nav,
.footer-panel p + nav,
.site-footer nav + p,
.footer-panel nav + p{margin-top:var(--ds-footer-gap)}

.site-footer nav,
.footer-panel nav{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:3px 8px;
}

.site-footer a,
.footer-panel a{
  color:var(--ds-footer-link)!important;
  font-weight:800!important;
  text-decoration:none!important;
  text-underline-offset:2px;
}
.site-footer a:hover,
.footer-panel a:hover{text-decoration:underline!important}
.site-footer a:focus-visible,
.footer-panel a:focus-visible{
  outline:3px solid rgba(217,183,74,.65);
  outline-offset:2px;
  border-radius:4px;
}

@media(max-width:600px){
  :root{
    --ds-footer-padding-block:9px 18px;
    --ds-footer-padding-inline:7px;
  }
}

@media(max-width:420px){
  :root{
    --ds-footer-padding-block:8px 22px;
    --ds-footer-text-size:11px;
    --ds-footer-brand-size:13px;
  }
}

@media print{
  .site-footer,
  .footer-panel{
    box-shadow:none!important;
    background:#fff!important;
    color:#000!important;
    border-color:#777!important;
  }
  .site-footer a,
  .footer-panel a{color:#000!important}
}


/* Shared fixed bottom navigation foundation.
   This is the single owner for Markets/Home-or-VIP/Refresh controls across all pages. */
:root{
  --fixed-nav-bottom:max(8px,env(safe-area-inset-bottom));
  --fixed-nav-edge:5px;
  --fixed-nav-height:34px;
  --fixed-nav-min-width:58px;
  --fixed-nav-max-width:31vw;
  --fixed-nav-padding-y:6px;
  --fixed-nav-padding-x:9px;
  --fixed-nav-font-size:11px;
  --fixed-nav-radius:5px;
  --fixed-nav-z:1000;
}
:where(.fixed-action){
  position:fixed;
  bottom:var(--fixed-nav-bottom);
  z-index:var(--fixed-nav-z);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:var(--fixed-nav-min-width);
  min-height:var(--fixed-nav-height);
  max-width:var(--fixed-nav-max-width);
  padding:var(--fixed-nav-padding-y) var(--fixed-nav-padding-x);
  border:1px solid #fff;
  border-radius:var(--fixed-nav-radius);
  background:linear-gradient(45deg,#052817,#0b6b3d);
  color:#fff;
  box-shadow:0 0 0 1px var(--ds-border),0 4px 12px rgba(0,0,0,.32);
  font-family:var(--type-family,Helvetica,Arial,sans-serif);
  font-size:var(--fixed-nav-font-size);
  font-style:italic;
  font-weight:900;
  line-height:1;
  text-align:center;
  text-decoration:none;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  cursor:pointer;
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
}
:where(.fixed-action:hover){filter:brightness(1.08)}
:where(.fixed-action:active){transform:translateY(1px)}
:where(.fixed-action:focus-visible){outline:3px solid rgba(217,183,74,.72);outline-offset:2px}
:where(.fixed-left){left:var(--fixed-nav-edge)}
:where(.fixed-center){left:50%;transform:translateX(-50%)}
:where(.fixed-center:active){transform:translate(-50%,1px)}
:where(.fixed-right){right:var(--fixed-nav-edge)}
body{padding-bottom:max(62px,calc(var(--fixed-nav-height) + var(--fixed-nav-bottom) + 22px))}

@media(max-width:420px){
  :root{
    --fixed-nav-edge:4px;
    --fixed-nav-min-width:54px;
    --fixed-nav-padding-x:8px;
    --fixed-nav-font-size:11px;
  }
}
@media(max-width:390px){
  :root{
    --fixed-nav-edge:3px;
    --fixed-nav-min-width:48px;
    --fixed-nav-max-width:30vw;
    --fixed-nav-padding-x:6px;
    --fixed-nav-font-size:10px;
  }
}
@media(max-width:330px){
  :root{
    --fixed-nav-min-width:44px;
    --fixed-nav-padding-y:5px;
    --fixed-nav-padding-x:5px;
    --fixed-nav-font-size:9px;
  }
}
@media print{
  .fixed-action{display:none!important}
  body{padding-bottom:0!important}
}

/* Header & Footer ownership cleanup — single-owner preservation block */
/* All shared header/logo/footer geometry now lives here. Page styles must not redefine it. */
.brand-logo,.brand-copy{min-width:0}
.brand-logo{min-height:62px;padding:2px 8px}
.brand-copy strong,.brand-copy span,.brand-wordmark{overflow-wrap:anywhere}
.brand-main{font-size:38px}
.brand-pre{font-size:24px;padding-bottom:3px}
.brand-copy b{font-size:30px}
.brand-copy em{font-size:19px}
.chart-brand .brand-logo{min-height:58px}
.game-zone-page .compact-brand{padding-inline:5px}
.starline-page .compact-brand{padding-inline:12px}
.site-footer,.footer-panel{max-width:100%}

@media(max-width:600px){
  .brand-logo{min-height:52px!important}
  .brand-main{font-size:clamp(27px,8.2vw,34px)!important}
  .brand-pre{font-size:clamp(17px,5.5vw,23px)!important}
  .brand-copy b{font-size:26px}
  .brand-copy em{font-size:17px}
}
@media(max-width:330px){
  .brand-main{font-size:25px!important}
  .brand-pre{font-size:16px!important}
}


/* Phase 1 — Homepage Top Identity / Main Brand Header
   Reference-family geometry with DPBossPre logo and Green/Black branding. */
.brand-panel.compact-brand,
.brand-panel,
.compact-brand{
  min-height:112px!important;
  padding:6px 10px!important;
  background:linear-gradient(180deg,#062d1b 0%,#00160d 100%)!important;
  border:4px solid #008a4f!important;
  border-radius:18px!important;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.65),0 3px 8px rgba(0,0,0,.35)!important;
  overflow:hidden;
}
.brand-lockup,
.brand-panel .brand-logo{
  width:100%;
  min-height:94px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  padding:0!important;
  text-decoration:none!important;
}
.brand-image{
  width:82px;
  height:82px;
  flex:0 0 82px;
  display:block;
  object-fit:cover;
  border-radius:50%;
  border:2px solid #d8b84a;
  box-shadow:0 0 0 2px #003d24,0 2px 8px rgba(0,0,0,.45);
}
.brand-wordmark{
  display:flex!important;
  align-items:baseline!important;
  gap:5px!important;
  white-space:nowrap;
  overflow:visible!important;
}
.brand-main,
.brand-pre{
  font-family:Arial,Helvetica,sans-serif!important;
  font-style:normal!important;
  font-weight:900!important;
  line-height:1!important;
  text-shadow:1px 1px 0 #000,0 0 8px rgba(0,255,135,.18)!important;
}
.brand-main{
  color:#fff!important;
  font-size:clamp(31px,9vw,54px)!important;
  letter-spacing:.2px!important;
}
.brand-pre{
  color:#d8b84a!important;
  font-size:clamp(23px,6.6vw,40px)!important;
  padding:0!important;
}
.brand-mark,.brand-copy{display:none!important}
@media(max-width:420px){
  .brand-panel.compact-brand,.brand-panel,.compact-brand{min-height:104px!important;padding:5px 7px!important;border-radius:17px!important}
  .brand-lockup,.brand-panel .brand-logo{min-height:88px!important;gap:7px!important}
  .brand-image{width:72px;height:72px;flex-basis:72px}
  .brand-main{font-size:clamp(28px,9vw,38px)!important}
  .brand-pre{font-size:clamp(20px,6.4vw,28px)!important}
}
@media(max-width:340px){
  .brand-image{width:62px;height:62px;flex-basis:62px}
  .brand-main{font-size:27px!important}
  .brand-pre{font-size:19px!important}
}
