/* =====================================================================
   GoDartsPro : Lockdown Challenge (app 54)                       v2.0.0
   /wp-content/themes/dart/assets/css/gdp-game-lockdown.css

   Loaded AFTER gdp-game.css. Everything shared lives there: tokens, the
   photo band, cards, chips, figures, the flash, the full screen button.
   This file is only what Lockdown arranges differently. Colours as rgba
   are the palette tokens written out:
     --gdp-win    #3ddc84   rgba(61,220,132,x)
     --gdp-accent #ffa400   rgba(255,164,0,x)
     --gdp-bust   #ff5a52   rgba(255,90,82,x)
     --gdp-go     #2c8a5a   rgba(44,138,90,x)
   Lockdown's own: the virus red #ff3b4e (rgba(255,59,78,x)), critical
   crimson #ff1744, the shield cyan #4cc9ff (rgba(76,201,255,x)), and the
   A1 gold #ffd451 for trebles and medals.
   ===================================================================== */

.gdp-ld-screen{position:relative;}
.gdp .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0;}


/* =====================================================================
   SETUP
   ===================================================================== */

/* One line, so the options and Start stay on screen on a laptop. */
.gdp-ld-title{
  font-size:clamp(30px,3.6vw,44px);line-height:1;letter-spacing:.01em;margin:4px 0 16px;white-space:nowrap;
  text-shadow:0 4px 26px rgba(0,0,0,.7);text-transform:uppercase;
}
/* The 2020 story opens the rules column. */
.gdp-ld-story{
  margin:0 0 18px !important;padding:0 0 16px;border-bottom:1px solid rgba(255,255,255,.08);
  font-family:var(--gdp-font-note);font-weight:300;font-size:13.5px !important;line-height:1.55;color:#d7d7d7 !important;font-style:italic;
}
.gdp-ld-title span{color:#ff3b4e;text-shadow:0 0 30px rgba(255,59,78,.35),0 4px 26px rgba(0,0,0,.7);}
.gdp-ld-lede{
  font-family:var(--gdp-font-note);font-weight:300;font-size:14.5px;line-height:1.55;
  color:#d7d7d7;margin:0 0 18px;max-width:52ch;text-shadow:0 1px 6px rgba(0,0,0,.75);
}

.gdp-ld-card{display:flex;flex-direction:column;gap:16px;}
.gdp-ld-field{display:flex;flex-direction:column;gap:8px;}

.gdp-ld-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;}
.gdp-ld-mode{
  position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:3px;
  padding:12px 14px;border-radius:10px;cursor:pointer;text-align:left;
  background:var(--gdp-panel2);border:1px solid var(--gdp-line);color:var(--gdp-ink);font-family:var(--gdp-font);
  transition:border-color .15s,background .15s;
}
.gdp-ld-mode b{font-size:17px;font-weight:500;letter-spacing:.02em;}
.gdp-ld-mode span{font-family:var(--gdp-font-note);font-size:12px;color:var(--gdp-muted);}
.gdp-ld-mode.is-main{grid-column:1 / -1;padding:14px 16px;
  background:linear-gradient(100deg,rgba(255,59,78,.16),rgba(29,29,29,.95) 60%);}
.gdp-ld-mode.is-main b{font-size:21px;}
.gdp-ld-mode:hover{border-color:#4a4a4a;}
.gdp-ld-mode.is-on{background:rgba(255,164,0,.12);border-color:var(--gdp-accent);}
.gdp-ld-mode.is-main.is-on{background:linear-gradient(100deg,rgba(255,164,0,.2),rgba(40,26,6,.95) 60%);}
.gdp-ld-mode.is-on b{color:var(--gdp-accent);}
.gdp-ld-mode.is-locked{opacity:.4;cursor:not-allowed;}
.gdp-ld-mode:focus-visible{outline:2px solid var(--gdp-win);outline-offset:2px;}
.gdp-ld-tag{
  position:absolute;top:-8px;right:10px;padding:1px 9px;border-radius:999px;
  font-style:normal;font-family:var(--gdp-font);font-size:10px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--gdp-accent-ink);background:var(--gdp-accent);
}
.gdp-ld-moderule{margin:0;min-height:18px;font-family:var(--gdp-font-note);font-size:12.5px;line-height:1.45;color:#cfcfcf;}
.gdp-ld-lockmsg{display:flex;align-items:center;gap:8px;margin:0;font-family:var(--gdp-font-note);font-size:12.5px;color:var(--gdp-accent);}

/* includeDartsSetup() prints a Bootstrap select and its own heading. */
.gdp-ld-darts{width:100%;}
.gdp-ld-darts select,.gdp-ld-darts .form-control{
  width:100%;max-width:340px;height:40px;font-family:var(--gdp-font);font-size:14px;
  background:var(--gdp-panel2);border:1px solid var(--gdp-line);color:var(--gdp-ink);
  border-radius:8px;box-shadow:none;padding:6px 10px;
}
.gdp-ld-darts select:focus,.gdp-ld-darts .form-control:focus{border-color:var(--gdp-accent);outline:none;box-shadow:none;}
.gdp-ld-darts .app-header-m,.gdp-ld-darts .app-header-s,.gdp-ld-darts h3,.gdp-ld-darts h4,.gdp-ld-darts label{
  font-family:var(--gdp-font-note);font-size:13px;font-weight:400;letter-spacing:0;text-transform:none;color:var(--gdp-muted);margin:0 0 6px;
}

.gdp-ld-best{margin:14px 0;}
.gdp-ld-figs{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:10px;}
.gdp-ld-figs .gdp-figure{background:rgba(18,18,18,.88);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);position:relative;}
.gdp-ld-figs .gdp-figure.is-best b{color:var(--gdp-accent);}
.gdp-ld-figs .gdp-ld-medal.is-fig{position:absolute;top:6px;left:8px;width:16px;height:20px;}
.gdp-ld-goal{
  display:flex;align-items:center;gap:8px;margin:0 0 10px;
  font-family:var(--gdp-font);font-size:15px;letter-spacing:.03em;color:#e6e6e6;text-shadow:0 1px 6px rgba(0,0,0,.75);
}
.gdp-ld-goal .fa-solid{color:var(--gdp-accent);}
.gdp-ld-first{font-family:var(--gdp-font-note);font-size:13.5px;line-height:1.5;color:#cfcfcf;margin:0 0 10px;text-shadow:0 1px 6px rgba(0,0,0,.75);}

.gdp-ld-ladder{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;}
.gdp-ld-ladder li{
  display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;column-gap:8px;align-items:center;
  padding:7px 9px;border-radius:9px;background:rgba(18,18,18,.82);border:1px solid rgba(255,255,255,.07);opacity:.62;
}
.gdp-ld-ladder li .gdp-ld-medal{grid-row:1 / 3;width:20px;height:24px;}
.gdp-ld-ladder b{font-family:var(--gdp-font);font-size:13px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;line-height:1.1;}
.gdp-ld-ladder span{font-family:var(--gdp-font-note);font-size:11px;color:var(--gdp-muted);}
.gdp-ld-ladder li.is-got{opacity:1;border-color:rgba(255,212,81,.45);background:rgba(40,30,8,.8);}

.gdp-ld-trial{font-family:var(--gdp-font-note);font-size:12.5px;color:#cfcfcf;margin:0 0 10px;}
.gdp-ld-trial a{color:var(--gdp-accent);}
.gdp-ld-start{display:flex;gap:10px;align-items:stretch;flex-wrap:wrap;}
.gdp-ld-start .gdp-btn-primary{
  flex:1 1 220px;width:auto;min-height:56px;background:var(--gdp-go);border-color:var(--gdp-go);color:#fff;
  font-size:19px;letter-spacing:.06em;text-transform:uppercase;
}
.gdp-ld-start .gdp-btn-primary:hover{background:var(--gdp-go-hi);}
.gdp-ld-sound{min-height:56px;}
.gdp-ld-start .gdp-btn:focus-visible{outline:2px solid #fff;outline-offset:2px;}

/* The game in progress, above the options. */
.gdp-ld-resume{
  display:grid;grid-template-columns:58px minmax(0,1fr);gap:4px 14px;align-items:center;margin:0 0 14px;padding:12px 14px;border-radius:12px;
  background:linear-gradient(100deg,rgba(255,59,78,.18),rgba(18,18,18,.92) 70%);border:1px solid rgba(255,59,78,.6);
  animation:ldIn .35s ease-out;
}
.gdp-ld-resume-i{grid-row:1 / 3;width:58px;height:58px;}
.gdp-ld-resume-i .gdp-ld-mini{width:58px;height:58px;}
.gdp-ld-resume-t{display:flex;flex-direction:column;min-width:0;}
.gdp-ld-resume-t b{font-family:var(--gdp-font);font-size:17px;font-weight:500;letter-spacing:.04em;}
.gdp-ld-resume-t span{font-family:var(--gdp-font-note);font-size:12.5px;color:#d8d8d8;}
.gdp-ld-resume-a{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.gdp-ld-resume .gdp-btn-primary{width:auto;padding:9px 22px;background:var(--gdp-go);border-color:var(--gdp-go);color:#fff;text-transform:uppercase;letter-spacing:.06em;}
@keyframes ldIn{from{opacity:0;transform:translateY(5px);}to{opacity:1;transform:none;}}

.gdp-ld-linkbtn{
  padding:4px 2px;background:none;border:0;cursor:pointer;
  font-family:var(--gdp-font-note);font-size:12.5px;color:var(--gdp-muted);
  text-decoration:underline;text-underline-offset:3px;
}
.gdp-ld-linkbtn:hover{color:var(--gdp-ink);}
.gdp-ld-linkbtn.is-danger:hover{color:#ffb0aa;}
.gdp-ld-linkbtn.is-confirm{color:#ffb0aa;text-decoration:none;font-weight:600;}
.gdp-ld-linkbtn:focus-visible{outline:2px solid var(--gdp-accent);outline-offset:2px;border-radius:3px;}

/* How it works: the pictures are the game's own. */
.gdp-ld-legend{list-style:none;margin:0 0 6px;padding:0;display:flex;flex-direction:column;gap:12px;}
.gdp-ld-legend li{display:grid;grid-template-columns:52px minmax(0,1fr);gap:12px;align-items:center;}
.gdp-ld-legend li > span{width:52px;height:52px;display:flex;align-items:center;justify-content:center;}
.gdp-ld-legend li > span .gdp-ld-mini{width:52px;height:52px;}
.gdp-ld-legend b{display:block;font-family:var(--gdp-font);font-size:15px;font-weight:500;letter-spacing:.03em;color:#fff;margin-bottom:2px;}
.gdp-ld-legend li div span{font-family:var(--gdp-font-note);font-weight:300;font-size:13px;line-height:1.5;color:#c9c9c9;}
.gdp-ld-legend-sh svg{width:42px;height:42px;overflow:visible;}
.gdp-ld-legend-sh polygon{fill:rgba(63,193,240,.55);stroke:#7fe3ff;stroke-width:1.6;filter:drop-shadow(0 0 6px rgba(76,201,255,.6));}
.gdp-ld-legend-sh text{fill:#effcff;font-family:var(--gdp-font);font-weight:600;font-size:13px;text-anchor:middle;dominant-baseline:central;}
.gdp-ld-legend-boss{border-radius:50%;background:radial-gradient(circle at 38% 32%,#ff6a7d,#b0002c 50%,#2a0008);
  box-shadow:0 0 18px rgba(255,23,68,.5);color:#ffd451;font-size:20px;}
.gdp-ld-intro p{font-family:var(--gdp-font-note);font-size:13px;line-height:1.55;color:#c9c9c9;}
.gdp-ld-intro .gdp-hint a{color:var(--gdp-accent);}

/* The small virus used on the setup screen. */
.gdp-ld-mini{display:block;overflow:visible;}
.gdp-ld-mini .ld-v-spk line{stroke:#ff8a6a;stroke-width:2.2;stroke-linecap:round;}
.gdp-ld-mini .ld-v-spk circle{fill:#ffb08c;}
.gdp-ld-mini.is-t5 .ld-v-spk line{stroke:#ff4d6d;}
.gdp-ld-mini.is-t5 .ld-v-spk circle{fill:#ff8aa0;}
.gdp-ld-mini .ld-v-n{font-size:17px;}


/* =====================================================================
   PLAY
   ===================================================================== */

.gdp-ld-bar{margin-bottom:10px;}
.gdp-ld-stat{display:inline-flex;align-items:baseline;gap:7px;margin-right:10px;}
.gdp-ld-stat b{font-family:var(--gdp-font);font-size:22px;font-weight:500;color:var(--gdp-ink);font-variant-numeric:tabular-nums;
  display:inline-block;text-align:left;min-width:1.6em;}
.gdp-ld-stat b.js-ld-time{min-width:2.6em;}
.gdp-ld-stat.is-clevel{display:none;}
.gdp-ld-screen.is-challenge .gdp-ld-stat.is-clevel{display:inline-flex;}
.gdp-ld-stat.is-clevel b{color:#ff8a8a;}
.gdp-ld-stat.fx-up b{animation:ldLvl .9s ease-out;}
@keyframes ldLvl{30%{color:#fff;text-shadow:0 0 18px rgba(255,59,78,.9);transform:scale(1.25);}}
.gdp-ld-roundbtn{width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.24);display:inline-flex;align-items:center;justify-content:center;}
.gdp-ld-roundbtn:focus-visible{outline:2px solid var(--gdp-accent);outline-offset:2px;}
.gdp-ld-exitbtn{
  display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;margin-left:4px;border-radius:999px;cursor:pointer;
  font-family:var(--gdp-font);font-size:14px;letter-spacing:.1em;text-transform:uppercase;
  background:transparent;border:1px solid rgba(255,164,0,.7);color:var(--gdp-accent);transition:background .15s;
}
.gdp-ld-exitbtn:hover{background:rgba(255,164,0,.14);}
.gdp-ld-exitbtn:focus-visible{outline:2px solid #fff;outline-offset:2px;}
/* Not saved yet: a small amber dot on the throw count. */
.gdp-ld-screen.is-unsaved .js-ld-throw::after{
  content:"";display:inline-block;width:6px;height:6px;margin-left:5px;vertical-align:super;
  border-radius:50%;background:var(--gdp-accent);animation:ldBlink 1s ease-in-out infinite;
}
@keyframes ldBlink{50%{opacity:.25;}}

.gdp-ld-stage{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,370px);gap:22px;align-items:start;}
.gdp-ld-boardcol{min-width:0;display:flex;justify-content:center;}

/* ---------- the board ---------- */
.gdp-ld-board{
  position:relative;width:min(100%,600px);aspect-ratio:1 / 1;flex:0 0 auto;
  border-radius:50%;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:manipulation;
}
.gdp-ld-board::before{
  content:"";position:absolute;inset:-3%;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,rgba(255,59,78,.0) 58%,rgba(255,59,78,.12) 68%,rgba(0,0,0,0) 72%);
  transition:opacity .5s;opacity:.6;
}
.gdp-ld-boardimg{position:absolute;inset:0;width:100%;height:100%;display:block;filter:drop-shadow(0 14px 40px rgba(0,0,0,.75));pointer-events:none;}
.gdp-ld-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;}
.gdp-ld-fx{position:absolute;inset:-12%;width:124%;height:124%;pointer-events:none;z-index:3;}
.gdp-ld-svg *{pointer-events:none;}
.gdp-ld-svg .ld-hit{fill:transparent;pointer-events:all;cursor:crosshair;}
.has-board .gdp-ld-svg .ld-hit{cursor:default;}

/* A number under attack: its bed takes a wash of the threat. */
.ld-wedge{fill:transparent;transition:fill .45s ease;}
.ld-wedge.is-t1{fill:rgba(255,138,61,.08);}
.ld-wedge.is-t2{fill:rgba(255,106,58,.12);}
.ld-wedge.is-t3{fill:rgba(242,69,47,.17);}
.ld-wedge.is-t4{fill:rgba(224,33,60,.24);}
.ld-wedge.is-t5{fill:rgba(255,23,68,.3);animation:ldWedge 1s ease-in-out infinite;}
.ld-wedge.is-shield{fill:rgba(76,201,255,.1);}
@keyframes ldWedge{50%{fill:rgba(255,23,68,.48);}}

.ld-hover{fill:rgba(255,255,255,.26);stroke:#fff;stroke-width:1.1;stroke-opacity:.8;transition:d .05s;}
.ld-hover.fx-tap{animation:ldTap .5s ease-out;}
@keyframes ldTap{0%{fill:rgba(255,255,255,.75);}100%{fill:rgba(255,255,255,.15);}}

/* The virus. The level sets its size (transform); hits, pops and
   arrivals run on the separate scale property, so the two never fight. */
.ld-v-in{transform-box:view-box;transform-origin:0 0;transform:scale(.3);opacity:0;
  transition:transform .4s cubic-bezier(.2,1.5,.4,1),opacity .3s ease;}
.ld-v.is-t1 .ld-v-in{transform:scale(.84);opacity:1;}
.ld-v.is-t2 .ld-v-in{transform:scale(.91);opacity:1;}
.ld-v.is-t3 .ld-v-in{transform:scale(.98);opacity:1;}
.ld-v.is-t4 .ld-v-in{transform:scale(1.05);opacity:1;}
.ld-v.is-t5 .ld-v-in{transform:scale(1.12);opacity:1;}
.ld-v.is-out .ld-v-in{transform:scale(1.35);}
.ld-v-glow{opacity:.9;}
.ld-v.is-t5 .ld-v-glow{animation:ldGlow .9s ease-in-out infinite;}
@keyframes ldGlow{50%{opacity:.35;}}
/* The spikes turn faster at every threat level: slow at 1, racing at 5. */
.ld-v-spk{transform-box:view-box;transform-origin:0 0;animation:ldSpin 24s linear infinite;}
.ld-v.is-t2 .ld-v-spk{animation-duration:13s;}
.ld-v.is-t3 .ld-v-spk{animation-duration:7.5s;}
.ld-v.is-t4 .ld-v-spk{animation-duration:4s;}
.ld-v.is-t5 .ld-v-spk{animation-duration:2s;}
.ld-v-spk line{stroke:#ffc04d;stroke-width:2.2;stroke-linecap:round;}
.ld-v-spk circle{fill:#ffe08a;stroke:rgba(80,30,0,.5);stroke-width:.6;}
.ld-v.is-t2 .ld-v-spk line{stroke:#ff9a3a;}
.ld-v.is-t2 .ld-v-spk circle{fill:#ffc58a;}
.ld-v.is-t3 .ld-v-spk line{stroke:#ff6a3a;}
.ld-v.is-t3 .ld-v-spk circle{fill:#ffa080;}
.ld-v.is-t4 .ld-v-spk line{stroke:#ff3b4e;}
.ld-v.is-t4 .ld-v-spk circle{fill:#ff8a94;}
.ld-v.is-t5 .ld-v-spk line{stroke:#ff1744;}
.ld-v.is-t5 .ld-v-spk circle{fill:#ff6a86;}
@keyframes ldSpin{to{transform:rotate(360deg);}}
.ld-v-body{stroke:rgba(0,0,0,.45);stroke-width:1;}
.ld-v-tex{fill:none;stroke:rgba(60,0,0,.38);stroke-width:1.3;stroke-linecap:round;}
.ld-v-dot{fill:rgba(60,0,0,.35);}
.ld-v-shine{fill:#fff;opacity:.38;}
/* The threat ring: five segments on a dark band, so they read on any
   bed. Lit segments take the level's colour, from amber to crimson; the
   unlit ones stay as faint outlines, so 3 of 5 reads at a glance. */
.ld-v-track{fill:none;stroke:rgba(0,0,0,.6);stroke-width:7;}
.ld-v-pips path{fill:none;stroke:rgba(255,255,255,.22);stroke-width:3.2;stroke-linecap:round;}
.ld-v-pips path.is-on{stroke-width:4.6;}
.ld-v.is-t1 .ld-v-pips path.is-on{stroke:#ffd451;}
.ld-v.is-t2 .ld-v-pips path.is-on{stroke:#ffa400;}
.ld-v.is-t3 .ld-v-pips path.is-on{stroke:#ff6a26;}
.ld-v.is-t4 .ld-v-pips path.is-on{stroke:#ff3b4e;filter:drop-shadow(0 0 2px rgba(255,59,78,.9));}
.ld-v.is-t5 .ld-v-pips path.is-on{stroke:#ff1744;filter:drop-shadow(0 0 3px rgba(255,23,68,1));}
.ld-v-n{fill:#fff;font-family:var(--gdp-font);font-weight:600;font-size:17px;text-anchor:middle;dominant-baseline:central;
  stroke:rgba(40,0,0,.65);stroke-width:3;paint-order:stroke;}
/* The moments. */
.ld-v-in.fx-hit{animation:ldHit .5s cubic-bezier(.2,1.4,.4,1);}
@keyframes ldHit{0%{scale:1;}25%{scale:.72 .86;}55%{scale:1.08;}100%{scale:1;}}
.ld-v-in.fx-grow{animation:ldGrow .5s cubic-bezier(.2,1.4,.4,1);}
@keyframes ldGrow{0%{scale:1;}35%{scale:1.22;}100%{scale:1;}}
.ld-v-in.fx-pop{animation:ldPop .65s ease-out;}
@keyframes ldPop{0%{scale:1;opacity:1;}40%{scale:1.5;opacity:.6;}100%{scale:1.8;opacity:0;}}

/* The shield. */
.ld-sh{opacity:0;transform-box:view-box;transform-origin:0 0;scale:.4;transition:opacity .35s ease,scale .45s cubic-bezier(.2,1.5,.4,1);}
.ld-v.is-shield .ld-sh{opacity:1;scale:1;}
.ld-sh-hex{fill:url(#ldShield);stroke:#9eeaff;stroke-width:1.6;filter:drop-shadow(0 0 5px rgba(76,201,255,.7));}
.ld-sh-in{fill:none;stroke:rgba(255,255,255,.45);stroke-width:.8;}
.ld-sh-n{fill:#f2fdff;font-family:var(--gdp-font);font-weight:600;font-size:14px;text-anchor:middle;dominant-baseline:central;
  stroke:rgba(0,40,70,.6);stroke-width:2.5;paint-order:stroke;}
.ld-v.is-shield .ld-sh-hex{animation:ldShimmer 2.6s ease-in-out infinite;}
@keyframes ldShimmer{50%{stroke:#fff;}}
.ld-v.fx-shield .ld-sh{animation:ldShieldIn .7s cubic-bezier(.2,1.5,.4,1);}
@keyframes ldShieldIn{0%{scale:.2;opacity:0;}60%{scale:1.25;opacity:1;}100%{scale:1;}}

/* Where the darts landed. */
.ld-mark circle{fill:rgba(0,0,0,.55);stroke:#fff;stroke-width:1.4;}
.ld-mark path{stroke:#fff;stroke-width:1.6;stroke-linecap:round;}
.ld-mark.is-hit circle{stroke:#3ddc84;fill:rgba(10,60,30,.6);}
.ld-mark text{fill:#fff;font-family:var(--gdp-font);font-size:8px;font-weight:600;text-anchor:middle;stroke:#000;stroke-width:2;paint-order:stroke;}

/* The boss. */
.ld-boss{opacity:0;transform-box:view-box;transform-origin:0 0;transform:scale(.25) rotate(-40deg);
  transition:opacity .5s ease,transform .8s cubic-bezier(.2,1.3,.4,1);}
.gdp-ld-board.is-boss .ld-boss{opacity:1;transform:none;}
.gdp-ld-board.is-boss .ld-v{opacity:.18;transition:opacity .4s;}
.gdp-ld-board.is-boss .ld-wedge{fill:transparent;animation:none;}
.ld-boss-aura{fill:url(#ldBossAura);transform-box:view-box;transform-origin:0 0;animation:ldAura 1.6s ease-in-out infinite;}
@keyframes ldAura{50%{transform:scale(1.12);opacity:.7;}}
.ld-boss-orbit{transform-box:view-box;transform-origin:0 0;animation:ldSpin 6s linear infinite reverse;}
.ld-boss-orbit circle{fill:none;stroke:rgba(255,212,81,.55);stroke-width:1.5;stroke-dasharray:3 9;}
.ld-boss-spk{transform-box:view-box;transform-origin:0 0;animation:ldSpin 14s linear infinite;}
.ld-boss-spk line{stroke:#ff4d6d;stroke-width:4;stroke-linecap:round;}
.ld-boss-spk circle{fill:#ff9fb0;stroke:#5a0014;stroke-width:1;}
.ld-boss-body{fill:url(#ldBoss);stroke:#ff4d6d;stroke-width:1.5;}
.ld-boss-tex{fill:none;stroke:rgba(30,0,6,.55);stroke-width:2;stroke-linecap:round;}
.ld-boss-iris{fill:url(#ldIris);transform-box:view-box;transform-origin:0 0;animation:ldIris 1.2s ease-in-out infinite;}
/* The bullseye in the boss's eye: the only target. The 25 is dead grey. */
.ld-boss-25{fill:#2b2b2b;stroke:rgba(0,0,0,.6);stroke-width:1;}
.ld-boss-25x{stroke:rgba(255,255,255,.35);stroke-width:1.6;stroke-linecap:round;}
.ld-boss-bullring{fill:none;stroke:#fff;stroke-width:1.4;}
.ld-boss-bull{fill:#ff1a2e;transform-box:view-box;transform-origin:0 0;animation:ldBull .9s ease-in-out infinite;
  filter:drop-shadow(0 0 4px rgba(255,26,46,1));}
@keyframes ldBull{50%{fill:#ff6a78;transform:scale(1.15);}}
.ld-boss-label rect{fill:rgba(10,0,2,.88);stroke:#ff1a2e;stroke-width:1.2;}
.ld-boss-label text{fill:#fff;font-family:var(--gdp-font);font-weight:600;font-size:10.5px;letter-spacing:.12em;text-anchor:middle;dominant-baseline:central;}
.ld-boss-label .is-dot{fill:#ff1a2e;stroke:#fff;stroke-width:1;}
/* The side panel says the same in words: red counts, green does not. */
.gdp-ld-bossinfo{display:flex;flex-direction:column;gap:6px;width:100%;}
.gdp-ld-bossinfo b{font-weight:500;font-size:15px;color:#ffd451;}
.gdp-ld-bossinfo span{display:flex;align-items:center;gap:8px;font-family:var(--gdp-font-note);font-size:12.5px;color:#f0f0f0;}
.gdp-ld-bossinfo span.is-no{color:#bdbdbd;text-decoration:line-through;text-decoration-color:rgba(255,255,255,.45);}
.gdp-ld-dot{flex:0 0 auto;width:12px;height:12px;border-radius:50%;border:2px solid #fff;}
.gdp-ld-dot.is-red{background:#ff1a2e;box-shadow:0 0 8px rgba(255,26,46,.9);}
.gdp-ld-dot.is-green{background:#1f8a4c;}
.ld-boss-socket{fill:#1a0005;stroke:rgba(255,77,109,.55);stroke-width:1.5;}
.ld-boss-veins{stroke:rgba(255,212,81,.45);stroke-width:1.4;stroke-linecap:round;}
@keyframes ldIris{50%{transform:scale(1.12);}}
.ld-boss-hp path{fill:none;stroke:rgba(255,255,255,.18);stroke-width:7;stroke-linecap:round;}
.ld-boss-hp path.is-hit{stroke:#ffd451;filter:drop-shadow(0 0 4px rgba(255,212,81,.9));}
.ld-boss.fx-hurt .ld-boss-body,.ld-boss.fx-hurt .ld-boss-iris{animation:ldHurt .5s ease-out;}
@keyframes ldHurt{0%{transform:scale(1);}30%{transform:scale(.86);}60%{transform:scale(1.06);}100%{transform:scale(1);}}
.ld-boss.fx-hurt .ld-boss-body{transform-box:view-box;transform-origin:0 0;}

/* The board's moods. */
.gdp-ld-board::after{content:"";position:absolute;inset:-4%;border-radius:50%;pointer-events:none;opacity:0;z-index:2;transition:opacity .4s;}
.gdp-ld-board.is-critical::after{
  opacity:1;background:radial-gradient(circle,rgba(255,23,68,0) 60%,rgba(255,23,68,.38) 74%,rgba(255,23,68,0) 80%);
  animation:ldBeat 1s ease-in-out infinite;
}
@keyframes ldBeat{0%,100%{opacity:.35;}15%{opacity:1;}30%{opacity:.45;}45%{opacity:.9;}}
.gdp-ld-board.is-boss::before{opacity:1;background:radial-gradient(circle,rgba(0,0,0,.0) 20%,rgba(10,0,2,.55) 60%,rgba(0,0,0,0) 72%);}
.gdp-ld-board.is-outbreak::after{
  opacity:1;animation:none;
  background:radial-gradient(circle,rgba(255,23,68,.5) 0%,rgba(140,0,20,.55) 55%,rgba(255,23,68,0) 75%);
}
.gdp-ld-board.fx-shake{animation:ldShake .6s ease-out;}
@keyframes ldShake{0%,100%{transform:none;}20%{transform:translate(-8px,3px);}40%{transform:translate(7px,-4px);}60%{transform:translate(-5px,2px);}80%{transform:translate(3px,-1px);}}

/* Announcements over the board. */
.gdp-ld-banner{
  position:absolute;left:50%;top:50%;z-index:4;pointer-events:none;
  transform:translate(-50%,-50%) scale(.6);opacity:0;transition:opacity .25s ease,transform .45s cubic-bezier(.2,1.5,.4,1);
  font-family:var(--gdp-font);font-weight:600;font-size:clamp(34px,6vw,64px);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;
}
.gdp-ld-banner span{
  display:inline-block;padding:8px 26px;border-radius:14px;background:rgba(8,8,8,.78);
  backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.2);
}
.gdp-ld-banner.is-open{opacity:1;transform:translate(-50%,-50%) scale(1);}
.gdp-ld-banner.is-clear span{color:#8de6ff;border-color:rgba(76,201,255,.7);text-shadow:0 0 24px rgba(76,201,255,.8);}
.gdp-ld-banner.is-boss span{color:#ffd451;border-color:rgba(255,23,68,.8);text-shadow:0 0 24px rgba(255,23,68,.9);background:rgba(40,0,8,.82);}
.gdp-ld-banner.is-out span{color:#fff;border-color:#ff1744;background:rgba(150,0,26,.88);text-shadow:0 0 20px rgba(255,255,255,.4);}
.gdp-ld-banner.is-won span{color:#04230f;background:var(--gdp-win);border-color:#bff5d6;box-shadow:0 0 60px rgba(61,220,132,.6);}

/* ---------- the side ---------- */
.gdp-ld-side{display:flex;flex-direction:column;gap:12px;min-width:0;}

.gdp-ld-meter{padding:12px 14px;border-radius:12px;background:rgba(14,14,14,.86);border:1px solid rgba(255,255,255,.1);}
.gdp-ld-meter-h{display:flex;align-items:baseline;gap:10px;margin-bottom:8px;}
.gdp-ld-meter-h b{font-family:var(--gdp-font);font-size:30px;font-weight:600;line-height:1;font-variant-numeric:tabular-nums;min-width:1.4em;}
.gdp-ld-meter-h em{margin-left:auto;font-style:normal;font-family:var(--gdp-font);font-size:12px;letter-spacing:.1em;text-transform:uppercase;
  color:#fff;background:#ff1744;padding:2px 9px;border-radius:999px;animation:ldBlink 1s ease-in-out infinite;}
.gdp-ld-meter-t{height:10px;border-radius:5px;background:rgba(255,255,255,.08);overflow:hidden;}
.gdp-ld-meter-t i{display:block;height:100%;width:0;border-radius:5px;background:linear-gradient(90deg,#ffb36b,#ff6a3a 50%,#ff1744);
  transition:width .5s cubic-bezier(.2,1,.3,1);}
.gdp-ld-meter.is-hot .gdp-ld-meter-h b{color:#ff8a8a;}
.gdp-ld-meter.is-crit{border-color:rgba(255,23,68,.6);box-shadow:0 0 24px rgba(255,23,68,.18) inset;}

.gdp-ld-tiles{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;}
.gdp-ld-tile{
  position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;padding:7px 2px 6px;border-radius:9px;
  background:rgba(18,18,18,.86);border:1px solid rgba(255,255,255,.08);border-top:3px solid rgba(255,255,255,.12);
  transition:border-color .3s,background .3s;
}
.gdp-ld-tile > b{font-family:var(--gdp-font);font-size:18px;font-weight:500;line-height:1;font-variant-numeric:tabular-nums;}
.gdp-ld-tile-p{display:flex;gap:2px;}
.gdp-ld-tile-p i{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.12);}
.gdp-ld-tile-p i.is-on{background:#ff6a3a;}
.gdp-ld-tile-v{position:absolute;top:3px;right:5px;font-family:var(--gdp-font);font-size:10px;color:var(--gdp-muted);}
.gdp-ld-tile.is-clean{opacity:.55;}
.gdp-ld-tile.is-t1{border-top-color:#ffd451;}
.gdp-ld-tile.is-t1 .gdp-ld-tile-p i.is-on{background:#ffd451;}
.gdp-ld-tile.is-t2{border-top-color:#ffa400;}
.gdp-ld-tile.is-t2 .gdp-ld-tile-p i.is-on{background:#ffa400;}
.gdp-ld-tile.is-t3{border-top-color:#ff6a26;}
.gdp-ld-tile.is-t4{border-top-color:#ff3b4e;background:rgba(60,8,14,.86);}
.gdp-ld-tile.is-t4 .gdp-ld-tile-p i.is-on,.gdp-ld-tile.is-t5 .gdp-ld-tile-p i.is-on{background:#ff3b4e;}
.gdp-ld-tile.is-t5{border-top-color:#ff1744;background:rgba(90,0,18,.9);animation:ldTile 1s ease-in-out infinite;}
.gdp-ld-tile.is-t5 .gdp-ld-tile-v{color:#fff;}
@keyframes ldTile{50%{box-shadow:0 0 0 2px rgba(255,23,68,.7),0 0 16px rgba(255,23,68,.5);}}
.gdp-ld-tile.is-shield{border-top-color:#4cc9ff;}
.gdp-ld-tile.is-shield .gdp-ld-tile-v{color:#8de6ff;}
.gdp-ld-tile.fx-up{animation:ldTileUp .6s ease-out;}
.gdp-ld-tile.fx-down{animation:ldTileDown .6s ease-out;}
@keyframes ldTileUp{0%{background:rgba(255,59,78,.55);}}
@keyframes ldTileDown{0%{background:rgba(61,220,132,.5);}}

.gdp-ld-forecast{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-family:var(--gdp-font);font-size:14px;letter-spacing:.03em;color:#e2e2e2;
}
.gdp-ld-forecast:empty{display:none;}
.gdp-ld-forecast .fa-solid{color:#ff6a6a;}
.gdp-ld-forecast em{font-style:normal;margin-left:auto;font-size:12px;letter-spacing:.06em;color:#ffd451;}
.gdp-ld-forecast.is-boss{color:#ffd451;padding:8px 12px;border-radius:10px;background:rgba(80,0,16,.75);border:1px solid rgba(255,23,68,.6);}
.gdp-ld-forecast.is-boss .fa-solid{color:#ffd451;}

.gdp-ld-hint{position:relative;padding:10px 34px 10px 12px;border-radius:10px;background:rgba(255,164,0,.08);border:1px solid rgba(255,164,0,.4);}
.gdp-ld-hint p{margin:0;font-family:var(--gdp-font-note);font-size:13px;line-height:1.45;color:#eee;}
.gdp-ld-hintclose{position:absolute;top:6px;right:6px;width:24px;height:24px;border:0;background:none;color:var(--gdp-muted);cursor:pointer;}

.gdp-ld-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;}
.gdp-ld-slot{
  display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;border-radius:12px;min-height:84px;justify-content:center;
  background:rgba(18,18,18,.88);border:1px dashed rgba(255,255,255,.2);transition:all .15s;
}
.gdp-ld-slot small{font-family:var(--gdp-font);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--gdp-muted);}
.gdp-ld-slot-s{font-family:var(--gdp-font);font-size:26px;font-weight:600;line-height:1.1;color:rgba(255,255,255,.35);}
.gdp-ld-slot-e{min-height:15px;font-style:normal;font-family:var(--gdp-font);font-size:12px;letter-spacing:.04em;color:var(--gdp-muted);}
.gdp-ld-slot.is-next{border-color:rgba(255,164,0,.75);border-style:solid;box-shadow:0 0 0 1px rgba(255,164,0,.25) inset;}
.gdp-ld-slot.is-hit{border-style:solid;border-color:var(--gdp-win);background:rgba(20,70,42,.85);animation:ldSlot .4s ease-out;}
.gdp-ld-slot.is-hit .gdp-ld-slot-s{color:#fff;}
.gdp-ld-slot.is-hit .gdp-ld-slot-e{color:#a8f5c9;}
.gdp-ld-slot.is-hit.is-t{border-color:#ffd451;background:rgba(70,52,8,.88);}
.gdp-ld-slot.is-hit.is-t .gdp-ld-slot-e{color:#ffe7a1;}
.gdp-ld-slot.is-none{border-style:solid;}
.gdp-ld-slot.is-none .gdp-ld-slot-s{color:#cfcfcf;}
@keyframes ldSlot{0%{transform:scale(.92);}60%{transform:scale(1.04);}100%{transform:none;}}

.gdp-ld-controls{display:grid;grid-template-columns:1fr 1fr;gap:7px;}
.gdp-ld-miss,.gdp-ld-undo{
  position:relative;display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border-radius:12px;cursor:pointer;
  font-family:var(--gdp-font);font-size:16px;letter-spacing:.1em;text-transform:uppercase;color:var(--gdp-ink);
  background:rgba(30,30,30,.9);border:1px solid rgba(255,255,255,.2);
}
.gdp-ld-undo{color:var(--gdp-muted);}
.gdp-ld-miss:hover:not(:disabled),.gdp-ld-undo:hover:not(:disabled){border-color:rgba(255,255,255,.45);color:var(--gdp-ink);}
.gdp-ld-miss:disabled,.gdp-ld-undo:disabled{opacity:.35;cursor:not-allowed;}
.gdp-ld-next{
  grid-column:1 / -1;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
  min-height:68px;border-radius:14px;cursor:pointer;color:#fff;font-family:var(--gdp-font);
  background:var(--gdp-go);border:1px solid var(--gdp-win);transition:background .15s,transform .08s;
}
.gdp-ld-next span{font-size:22px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;line-height:1;}
.gdp-ld-next small{font-size:12px;letter-spacing:.12em;text-transform:uppercase;opacity:.85;}
.gdp-ld-next:hover:not(:disabled){background:var(--gdp-go-hi);}
.gdp-ld-next:active:not(:disabled){transform:scale(.98);}
.gdp-ld-next:disabled{opacity:.35;cursor:not-allowed;}
.gdp-ld-next.is-boss,.gdp-ld-next.is-boss:hover:not(:disabled){background:#8a0020;border-color:#ff4d6d;}
.gdp-ld-next.is-boss:hover:not(:disabled){background:#a3002a;}
.gdp-ld-controls kbd{
  position:absolute;top:6px;right:8px;padding:0 6px;border-radius:5px;font-family:var(--gdp-font);font-size:10px;
  background:rgba(0,0,0,.3);color:inherit;opacity:.65;box-shadow:none;
}
.gdp-ld-miss:focus-visible,.gdp-ld-undo:focus-visible,.gdp-ld-next:focus-visible{outline:3px solid #fff;outline-offset:2px;}

.gdp-ld-ghost{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 12px;border-radius:999px;align-self:flex-start;
  font-family:var(--gdp-font);font-size:13px;letter-spacing:.03em;color:var(--gdp-muted);
  background:rgba(12,12,12,.72);border:1px solid rgba(255,255,255,.1);
}
.gdp-ld-ghost em{font-style:normal;font-family:var(--gdp-font-note);font-size:11.5px;opacity:.75;}
.gdp-ld-ghost.is-ahead{color:var(--gdp-win);border-color:rgba(61,220,132,.45);}
.gdp-ld-ghost.is-behind{color:#ffb0aa;border-color:rgba(255,90,82,.4);}

/* With a board the darts are scored by it: the boxes show each dart and
   are where one is corrected. Miss and Undo go; Next wave stays, for
   settling a throw early. */
.gdp .gdp-wrap.js-ld-wrap.has-board .gdp-ld-miss,
.gdp .gdp-wrap.js-ld-wrap.has-board .gdp-ld-undo,
.gdp .gdp-wrap.js-ld-wrap.has-board .gdp-ld-slots,
.gdp .gdp-wrap.js-ld-wrap.has-board .gdp-ld-hint{display:none;}
.gdp-ld-scolia{margin:0;}
.gdp .gdp-wrap.js-ld-wrap.has-board .gdp-ld-scolia{order:-1;}
.gdp .gdp-wrap.js-ld-wrap.has-board .gdp-ld-side{display:flex;}
.gdp .gdp-wrap.js-ld-wrap.has-board .gdp-ld-controls{order:0;}
.gdp-ld-scolia .dart-detail-container{padding-top:0;margin-bottom:0;}
.gdp-ld-scolia .dart-detail-wrapper{padding-left:4px;padding-right:4px;}
.gdp-ld-scolia .dart-detail{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:88px;padding:6px 4px;}
.gdp .gdp-ld-scolia .dart-detail .js-dart-detail-score{font-family:var(--gdp-font);font-size:40px;font-weight:600;line-height:1;}
.gdp .gdp-ld-scolia .dart-detail .js-dart-detail-hit{font-family:var(--gdp-font);font-size:20px;line-height:1.1;margin-top:6px;min-height:20px;color:#e6e6e6;}
.gdp-ld-scolia .js-dart-distance,.gdp-ld-scolia .js-hide-autotrack-darts{display:none !important;}
.gdp .gdp-ld-scolia .dart-detail.gdp-ld-box-miss{border-color:rgba(255,255,255,.18);background:rgba(20,20,20,.9);box-shadow:none;}
.gdp .gdp-ld-scolia .dart-detail.gdp-ld-box-miss .js-dart-detail-score{color:rgba(255,255,255,.45);}
.gdp .gdp-ld-scolia .row{margin-left:-4px;margin-right:-4px;}

/* ---------- leaving ---------- */
.gdp-ld-modal{
  position:fixed;inset:0;z-index:1190;display:flex;align-items:center;justify-content:center;padding:16px;
  background:rgba(4,4,4,.78);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);
}
.gdp-ld-modal.is-hidden{display:none !important;}
.gdp-ld-modal-card{
  width:min(520px,100%);max-height:calc(100vh - 32px);overflow:auto;text-align:center;padding:26px 24px 22px;border-radius:18px;
  background:linear-gradient(160deg,rgba(255,164,0,.12),rgba(16,16,16,.98) 45%);border:1px solid rgba(255,255,255,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 30px 80px rgba(0,0,0,.7);animation:ldModal .35s cubic-bezier(.2,1.3,.4,1);
}
@keyframes ldModal{from{opacity:0;transform:translateY(14px) scale(.96);}to{opacity:1;transform:none;}}
.gdp-ld-modal-ic{width:46px;height:46px;margin:0 auto 12px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  color:var(--gdp-accent);border:1px solid rgba(255,164,0,.6);font-size:18px;}
.gdp-ld-modal-card h2{font-family:var(--gdp-font);font-size:28px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;margin:0;color:#fff;}
.gdp-ld-exitsum{font-family:var(--gdp-font);font-size:15px;letter-spacing:.04em;color:#cfcfcf;margin:8px 0 18px;}
.gdp-ld-exitopts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px;}
.gdp-ld-exitopt{
  display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:14px;border-radius:12px;cursor:pointer;text-align:left;
  font-family:var(--gdp-font);color:var(--gdp-ink);background:rgba(28,28,28,.95);border:1px solid rgba(255,255,255,.16);
  transition:border-color .15s,background .15s,transform .1s;
}
.gdp-ld-exitopt i{font-size:18px;}
.gdp-ld-exitopt b{font-size:18px;font-weight:500;letter-spacing:.04em;}
.gdp-ld-exitopt span{font-family:var(--gdp-font-note);font-size:12.5px;line-height:1.45;color:#bdbdbd;}
.gdp-ld-exitopt.is-later i{color:#8de6ff;}
.gdp-ld-exitopt.is-later:hover{border-color:#4cc9ff;background:rgba(10,40,56,.9);}
.gdp-ld-exitopt.is-end i{color:var(--gdp-accent);}
.gdp-ld-exitopt.is-end:hover{border-color:var(--gdp-accent);background:rgba(50,34,6,.9);}
.gdp-ld-exitopt:active{transform:scale(.98);}
.gdp-ld-exitopt:focus-visible{outline:2px solid #fff;outline-offset:2px;}
.gdp-ld-modal .gdp-ld-exitstay{width:auto;min-width:220px;padding:13px 36px;background:var(--gdp-go);border-color:var(--gdp-go);color:#fff;
  text-transform:uppercase;letter-spacing:.06em;font-size:17px;}
.gdp-ld-modal .gdp-ld-exitstay:hover{background:var(--gdp-go-hi);}
.gdp-ld-exitempty,.gdp-ld-exitquit{display:none;}
.gdp-ld-modal.is-empty .gdp-ld-exitopts{display:none;}
.gdp-ld-modal.is-empty .gdp-ld-exitempty{display:block;font-family:var(--gdp-font-note);font-size:13px;color:#cfcfcf;margin:0 0 16px;}
.gdp-ld-modal.is-empty .gdp-ld-exitquit{display:block;margin:12px auto 0;}
.gdp-ld-modal .gdp-ld-exitstay:focus-visible{outline:2px solid #fff;outline-offset:2px;}


/* =====================================================================
   RESULT
   ===================================================================== */

/* The site slides a "To Performance Center" button down from the top
   edge after a game: the result starts under it. */
.gdp-ld-result{max-width:900px;margin:0 auto;padding:40px 0 10px;}
.gdp-ld-res-head{text-align:center;margin-bottom:22px;}
.gdp-ld-res-word{
  font-family:var(--gdp-font);font-weight:600;font-size:clamp(34px,5.8vw,62px);line-height:.95;letter-spacing:.06em;text-transform:uppercase;margin:8px 0 10px;
}
.gdp-ld-res-head.is-out .gdp-ld-res-word{color:#ff3b4e;text-shadow:0 0 40px rgba(255,23,68,.45);}
.gdp-ld-res-head.is-won .gdp-ld-res-word{color:var(--gdp-win);text-shadow:0 0 40px rgba(61,220,132,.4);}
.gdp-ld-res-head.is-ended .gdp-ld-res-word{color:var(--gdp-accent);}
.gdp-ld-res-top{display:flex;align-items:center;justify-content:center;gap:clamp(18px,5vw,56px);margin:10px 0 8px;flex-wrap:wrap;}
.gdp-ld-res-medal{display:inline-flex;align-items:center;gap:14px;text-align:left;}
.gdp-ld-res-medal .gdp-ld-medal.is-big{width:70px;height:84px;}
.gdp-ld-res-medal b{display:block;font-family:var(--gdp-font);font-size:34px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;line-height:1;}
.gdp-ld-res-medal span{font-family:var(--gdp-font);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--gdp-muted);}
.gdp-ld-res-head.is-m4 .gdp-ld-res-medal b{background:linear-gradient(100deg,#3ddc84,#ffd451);-webkit-background-clip:text;background-clip:text;color:transparent;}
.gdp-ld-res-head.is-m3 .gdp-ld-res-medal b{color:#ffd451;}
.gdp-ld-res-head.is-m2 .gdp-ld-res-medal b{color:#dfe6ec;}
.gdp-ld-res-head.is-m1 .gdp-ld-res-medal b{color:#e0a46a;}
.gdp-ld-res-head.fx-in .gdp-ld-medal{animation:ldMedal 1.1s cubic-bezier(.2,1.3,.4,1) both;}
.gdp-ld-res-head.fx-in .gdp-ld-res-word{animation:ldWord .7s cubic-bezier(.2,1.3,.4,1) both;}
@keyframes ldMedal{0%{transform:translateY(-30px) rotate(-25deg) scale(.4);opacity:0;}60%{transform:rotate(8deg) scale(1.08);opacity:1;}100%{transform:none;}}
@keyframes ldWord{0%{opacity:0;transform:scale(1.4);letter-spacing:.3em;filter:blur(8px);}100%{opacity:1;transform:none;filter:none;}}
/* The number, and what it counts centred under it. */
.gdp-ld-res-score{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;}
.gdp-ld-res-score b{font-family:var(--gdp-font);font-weight:600;font-size:clamp(90px,14vw,150px);line-height:.88;color:#fff;
  font-variant-numeric:tabular-nums;text-shadow:0 6px 34px rgba(0,0,0,.85);}
.gdp-ld-res-score span{font-family:var(--gdp-font);font-size:15px;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:#bdbdbd;text-align:center;line-height:1;
  padding:6px 14px 6px calc(14px + .3em);border-top:1px solid rgba(255,255,255,.14);}
.gdp-ld-pb{
  display:inline-flex;align-items:center;gap:9px;padding:9px 20px;border-radius:999px;margin-top:6px;
  font-family:var(--gdp-font);font-size:17px;font-weight:500;letter-spacing:.05em;color:var(--gdp-accent-ink);
  background:linear-gradient(112deg,#fff1c2 0%,#ffd451 30%,#ffa400 70%,#ffcf66 100%);background-size:220% 100%;
  box-shadow:0 10px 30px rgba(255,164,0,.3);animation:ldPb 2.4s ease-in-out infinite alternate;
}
.gdp-ld-pb.is-soft{background:rgba(255,164,0,.12);color:var(--gdp-accent);border:1px solid rgba(255,164,0,.5);box-shadow:none;animation:none;}
@keyframes ldPb{from{background-position:0% 50%;}to{background-position:100% 50%;}}
.gdp-ld-res-line{font-family:var(--gdp-font-note);font-size:14px;color:#cfcfcf;margin:12px auto 0;max-width:60ch;}

.gdp-ld-res-figs{grid-template-columns:repeat(var(--ld-n,6),minmax(0,1fr));margin-bottom:22px;}
.gdp-ld-res-figs .gdp-figure{background:rgba(18,18,18,.88);}
.gdp-ld-res-figs .gdp-figure.is-gold b{color:#ffd451;}
.gdp-ld-res-figs .gdp-figure.is-green b{color:var(--gdp-win);}
.gdp-ld-res-figs .gdp-figure.is-blue b{color:#8de6ff;}
.gdp-ld-res-figs .gdp-figure.is-red b{color:#ff8a8a;}

.gdp-ld-res-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:26px;margin-bottom:18px;}
.gdp-ld-chart{display:block;width:100%;height:130px;border-radius:10px;background:rgba(18,18,18,.82);border:1px solid rgba(255,255,255,.07);}
.ld-chart-l{fill:none;stroke:#ff6a6a;stroke-width:2.5;vector-effect:non-scaling-stroke;stroke-linejoin:round;}
.ld-chart-end{fill:#ff3b4e;stroke:#fff;stroke-width:2;vector-effect:non-scaling-stroke;}
.ld-chart-end.is-won{fill:var(--gdp-win);}
.ld-chart-end.is-out{fill:#ff1744;}
.gdp-ld-note{font-family:var(--gdp-font-note);font-size:12px;color:var(--gdp-muted);margin:8px 0 0;}
.gdp-ld-hist{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:4px;align-items:end;height:130px;padding:8px 8px 0;
  border-radius:10px;background:rgba(18,18,18,.82);border:1px solid rgba(255,255,255,.07);}
.gdp-ld-hbar{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:2px;}
.gdp-ld-hbar i{display:block;width:100%;min-height:2px;border-radius:3px 3px 0 0;background:#7f8b99;}
.gdp-ld-hbar.is-power i{background:var(--gdp-win);}
.gdp-ld-hbar.is-zero i{background:#ff6a6a;}
.gdp-ld-hbar b{order:-1;font-family:var(--gdp-font);font-size:11px;font-weight:500;color:#d8d8d8;}
.gdp-ld-hbar span{font-family:var(--gdp-font);font-size:11px;color:var(--gdp-muted);padding-bottom:4px;}

.gdp-ld-pernum{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:6px;}
.gdp-ld-pernum li{display:flex;flex-direction:column;align-items:center;gap:4px;padding:9px 3px 8px;border-radius:10px;
  background:rgba(18,18,18,.82);border:1px solid rgba(255,255,255,.07);border-top:3px solid rgba(255,255,255,.18);}
.gdp-ld-pernum b{font-family:var(--gdp-font);font-size:20px;font-weight:500;line-height:1;}
.gdp-ld-pernum span{font-family:var(--gdp-font);font-size:13px;color:#d8d8d8;}
.gdp-ld-pernum i{display:block;width:80%;height:4px;border-radius:2px;background:rgba(255,255,255,.08);overflow:hidden;}
.gdp-ld-pernum em{display:block;height:100%;background:var(--gdp-win);}
.gdp-ld-pernum li.is-t1,.gdp-ld-pernum li.is-t2{border-top-color:#ff9a4a;}
.gdp-ld-pernum li.is-t3,.gdp-ld-pernum li.is-t4{border-top-color:#ff3b4e;}
.gdp-ld-pernum li.is-t5,.gdp-ld-pernum li.is-outbreak{border-top-color:#ff1744;background:rgba(90,0,18,.85);}
.gdp-ld-pernum li.is-shield{border-top-color:#4cc9ff;}
.gdp-ld-pernum li.is-clean{border-top-color:var(--gdp-win);}

.gdp-ld-res-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:22px;}
.gdp-ld-res-actions .gdp-btn-primary{
  width:auto;min-width:220px;background:var(--gdp-go);border-color:var(--gdp-go);color:#fff;
  font-size:18px;letter-spacing:.06em;text-transform:uppercase;
}
.gdp-ld-res-actions .gdp-btn-primary:hover{background:var(--gdp-go-hi);}
.gdp-ld-res-actions a.gdp-btn{color:var(--gdp-ink);text-decoration:none;}
.gdp-ld-save{text-align:center;margin:14px 0 0;min-height:20px;font-family:var(--gdp-font-note);font-size:12.5px;color:var(--gdp-muted);}
.gdp-ld-save.is-ok{color:var(--gdp-win);}
.gdp-ld-save.is-error{color:#ffb0aa;}
.gdp-ld-retry{
  margin-left:6px;padding:3px 12px;border-radius:999px;cursor:pointer;font-family:var(--gdp-font);font-size:12px;letter-spacing:.08em;
  background:none;border:1px solid rgba(255,90,82,.6);color:var(--gdp-ink);
}

/* Medals: a disc with a shield on its face. */
.gdp-ld-medal{width:28px;height:34px;overflow:visible;--m1:#ffd451;--m2:#b07a12;--rb1:#b0002c;--rb2:#8a0020;}
.gdp-ld-medal.is-silver{--m1:#e6edf2;--m2:#7c8a96;}
.gdp-ld-medal.is-bronze{--m1:#e7ad74;--m2:#8a4f22;}
.gdp-ld-medal.is-elite{--m1:#a6f3c8;--m2:#d9a521;--rb1:#1f8a55;--rb2:#176b42;}
.gdp-ld-medal.is-none{--m1:#4a4a4a;--m2:#2c2c2c;--rb1:#3a3a3a;--rb2:#2e2e2e;}
.gdp-ld-medal .rb{fill:var(--rb1);}
.gdp-ld-medal .rb.is-2{fill:var(--rb2);}
.gdp-ld-medal .rim{fill:var(--m2);}
.gdp-ld-medal .face{fill:var(--m1);}
.gdp-ld-medal .bed,.gdp-ld-medal .dot{fill:var(--m2);}
.gdp-ld-medal .dot{fill:var(--m1);}


/* =====================================================================
   THE PHOTOGRAPH
   The theme's .container-main-graphic rule loads after gdp-game.css at
   the same specificity and hides the shared photo. Restated one step
   more specific with the shared photographs (owner, 25 October 2026).
   ===================================================================== */
.gdp .gdp-wrap.js-ld-wrap{
  background-color:var(--gdp-bg);
  background-image:
    linear-gradient(-18deg, transparent 0 45.35%, var(--gdp-divider) 45.35% 45.7%, transparent 45.7%),
    linear-gradient(-18deg, var(--gdp-tint-hi) 0 45.7%, var(--gdp-tint-lo) 45.7%),
    linear-gradient(to bottom,
      rgba(10,10,10,0) 0,
      rgba(10,10,10,0) calc(var(--gdp-band) * .45),
      rgba(10,10,10,.55) calc(var(--gdp-band) * .74),
      rgba(10,10,10,.88) calc(var(--gdp-band) * .90),
      var(--gdp-bg) var(--gdp-band)),
    url('/wp-content/themes/dart/images/2026/260623-start-main-photo-2.webp');
  background-size:100% var(--gdp-band), 100% var(--gdp-band), 100% 100%, 100% auto;
  background-position:left top, left top, left top, center top;
  background-repeat:no-repeat;
}
/* What could run past the sides (the board's effects layer, the banners)
   is clipped by the screens, not by the frame. Clipping the frame itself
   cut the Scolia badge in half in Safari: the badge straddles the top
   border on purpose, and Safari clips both directions when one is set to
   clip. The badge is the frame's own child, outside the screens. */
.gdp .gdp-wrap.js-ld-wrap > .gdp-ld-screen{overflow-x:clip;}
@media(max-width:900px){
  .gdp .gdp-wrap.js-ld-wrap{
    background-image:
      linear-gradient(-18deg, transparent 0 32.94%, var(--gdp-divider) 32.94% 33.5%, transparent 33.5%),
      linear-gradient(-18deg, var(--gdp-tint-hi) 0 33.5%, var(--gdp-tint-lo) 33.5%),
      linear-gradient(to bottom,
        rgba(10,10,10,0) 0,
        rgba(10,10,10,0) calc(var(--gdp-band) * .45),
        rgba(10,10,10,.55) calc(var(--gdp-band) * .74),
        rgba(10,10,10,.88) calc(var(--gdp-band) * .90),
        var(--gdp-bg) var(--gdp-band)),
      url('/wp-content/themes/dart/images/2026/260623-start-main-photo-2-mobile.webp');
  }
}
.gdp .gdp-wrap.js-ld-wrap:not(.is-playing):not(.is-over){--gdp-tint-hi:rgba(8,8,8,.62);--gdp-tint-lo:rgba(8,8,8,.48);}
.gdp .gdp-wrap.js-ld-wrap.is-playing{--gdp-divider:rgba(255,164,0,.12);}
.gdp .gdp-wrap.js-ld-wrap .gdp-screen-setup .gdp-intro{background:rgba(10,10,10,.55);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);}
@media(min-width:992px){ .gdp .gdp-wrap.js-ld-wrap.is-playing{min-height:640px;} }

/* The "Removing darts" popup must not widen the page (A1 rev 9). */
.gdp .gdp-wrap.js-ld-wrap .dart-retrieve-container{left:0;right:0;width:auto;max-width:100%;margin-left:0;margin-right:0;box-sizing:border-box;}
.gdp .gdp-wrap.js-ld-wrap .gdp-retrieve{width:600px;max-width:100%;box-sizing:border-box;}

.gdp-figure .gdp-unit{display:inline;font-size:.5em;font-weight:400;letter-spacing:normal;text-transform:none;color:rgba(255,255,255,.55);margin:0 0 0 2px;}
.gdp-figure b{white-space:nowrap;}

/* Full screen: the play screen is scaled to the window by the shared
   script from its page size; the board keeps its page size inside it. */
html.gdp-fs:not(.gdp-fs-plain) .gdp-wrap.js-ld-wrap .gdp-ld-board{width:600px;}


/* =====================================================================
   NARROW
   ===================================================================== */

@media(max-width:1100px){
  .gdp-ld-res-figs{grid-template-columns:repeat(4,minmax(0,1fr));}
}
@media(max-width:991px){
  .gdp-ld-stage{grid-template-columns:1fr;gap:16px;}
  .gdp-ld-side{max-width:600px;width:100%;margin:0 auto;}
  .gdp-ld-board{width:min(100%,560px);}
  .gdp-ld-res-grid{grid-template-columns:1fr;}
  .gdp-ld-pernum{grid-template-columns:repeat(5,minmax(0,1fr));}
}
@media(max-width:760px){
  .gdp-ld-exitopts{grid-template-columns:1fr;}
  .gdp-ld-res-figs{grid-template-columns:repeat(3,minmax(0,1fr));}
}

/* Phones: the board first, as large as the screen allows, then the darts
   of the throw and the buttons, then the numbers and the forecast. All
   that is needed to throw fits one screen. */
@media(max-width:600px){
  .gdp-ld-modes{gap:6px;}
  .gdp-ld-mode{padding:10px 9px;}
  .gdp-ld-mode b{font-size:14px;}
  .gdp-ld-mode.is-main b{font-size:18px;}
  .gdp-ld-mode span{font-size:11px;}
  .gdp-ld-figs{grid-template-columns:repeat(2,minmax(0,1fr));}
  .gdp-ld-ladder{grid-template-columns:repeat(2,minmax(0,1fr));}

  .gdp-ld-screen.js-ld-play .gdp-bar{flex-wrap:nowrap;padding-bottom:6px;margin-bottom:4px;}
  .gdp-ld-screen.js-ld-play .gdp-bar-rules{display:none;}
  .gdp-ld-screen.js-ld-play .gdp-bar-actions{gap:2px;width:100%;justify-content:space-between;}
  .gdp-ld-stat{gap:4px;margin-right:2px;}
  .gdp-ld-stat .gdp-label{font-size:9px;letter-spacing:.1em;}
  .gdp-ld-stat b{font-size:17px;}
  .gdp-ld-roundbtn{width:34px;height:34px;}
  .gdp-ld-exitbtn{height:34px;padding:0 11px;font-size:12px;}

  .gdp-ld-stage{display:flex;flex-direction:column;align-items:stretch;gap:8px;}
  .gdp-ld-board{width:min(100%,56svh,470px);min-width:240px;}
  .gdp-ld-side{display:contents;}
  .gdp-ld-boardcol{order:1;}
  .gdp-ld-scolia{order:2;}
  .gdp-ld-slots{order:2;gap:5px;}
  .gdp-ld-controls{order:3;grid-template-columns:76px 76px minmax(0,1fr);gap:5px;}
  .gdp-ld-hint{order:4;}
  .gdp-ld-meter{order:5;padding:9px 12px;}
  .gdp-ld-tiles{order:6;gap:4px;}
  .gdp-ld-forecast{order:7;font-size:13px;}
  .gdp-ld-ghost{order:8;font-size:12px;}

  .gdp-ld-slot{min-height:58px;padding:5px 3px;gap:0;}
  .gdp-ld-slot small{font-size:9px;}
  .gdp-ld-slot-s{font-size:20px;}
  .gdp-ld-slot-e{font-size:11px;min-height:13px;}
  .gdp-ld-next{grid-column:3;grid-row:1;min-height:52px;border-radius:12px;}
  .gdp-ld-next span{font-size:18px;}
  .gdp-ld-next small{font-size:10px;}
  .gdp-ld-miss,.gdp-ld-undo{min-height:52px;font-size:13px;flex-direction:column;gap:2px;letter-spacing:.06em;}
  .gdp-ld-controls kbd{display:none;}
  .gdp-ld-meter-h b{font-size:22px;}
  .gdp-ld-tile{padding:5px 1px 4px;}
  .gdp-ld-tile > b{font-size:15px;}
  .gdp-ld-tile-p i{width:5px;height:5px;}
  .gdp .gdp-wrap.js-ld-wrap.has-board .gdp-ld-controls{grid-template-columns:1fr;}
  .gdp .gdp-wrap.js-ld-wrap.has-board .gdp-ld-next{grid-column:1;}
  .gdp-ld-scolia .dart-detail{min-height:64px;}
  .gdp .gdp-ld-scolia .dart-detail .js-dart-detail-score{font-size:30px;}
  .gdp .gdp-ld-scolia .dart-detail .js-dart-detail-hit{font-size:16px;margin-top:3px;}

  .gdp-ld-banner{font-size:34px;}
  .gdp-ld-result{padding-top:44px;}
  .gdp-ld-res-figs{grid-template-columns:repeat(2,minmax(0,1fr));}
  .gdp-ld-res-score b{font-size:96px;}
  .gdp-ld-res-score span{font-size:13px;letter-spacing:.24em;}
  .gdp-ld-resume{grid-template-columns:46px minmax(0,1fr);}
  .gdp-ld-resume-i,.gdp-ld-resume-i .gdp-ld-mini{width:46px;height:46px;}
  .gdp-ld-modal-card{padding:20px 16px 16px;}
  .gdp-ld-modal-card h2{font-size:23px;}
}
@media(max-width:600px) and (max-height:700px){
  .gdp-ld-board{width:min(100%,48svh,400px);min-width:220px;}
  .gdp-ld-slot{min-height:50px;}
  .gdp-ld-next,.gdp-ld-miss,.gdp-ld-undo{min-height:46px;}
}

@media(prefers-reduced-motion:reduce){
  .ld-v-in,.ld-sh,.ld-boss,.gdp-ld-banner,.ld-wedge,.gdp-ld-meter-t i{transition:none;}
  .ld-v-spk,.ld-v.is-t5 .ld-v-glow,.ld-wedge.is-t5,.ld-boss-aura,.ld-boss-orbit,.ld-boss-spk,.ld-boss-iris,
  .gdp-ld-board.is-critical::after,.gdp-ld-tile.is-t5,.ld-boss-bull,.gdp-ld-meter-h em,.ld-v.is-shield .ld-sh-hex,
  .gdp-ld-pb,.gdp-ld-resume,.gdp-ld-modal-card,.gdp-ld-res-head.fx-in .gdp-ld-medal,.gdp-ld-res-head.fx-in .gdp-ld-res-word,
  .gdp-ld-slot.is-hit,.gdp-ld-screen.is-unsaved .js-ld-throw::after{animation:none;}
  .gdp-ld-board.is-critical::after{opacity:.6;}
}


/* =====================================================================
   FULL SCREEN, WIDE SCREENS
   The bar moves up beside the board, into the side column, so the play
   screen is only as tall as the board. The shared script then scales it
   up further: the board grows from 600 to about 680 pixels on a
   1280 x 800 laptop and to about 950 on a 1920 x 1080 screen.
   ===================================================================== */
@media(min-width:992px){
  html.gdp-fs:not(.gdp-fs-plain) .gdp-ld-screen.js-ld-play{
    display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,370px);column-gap:22px;
    grid-template-areas:"board bar" "board side";grid-template-rows:auto 1fr;align-items:start;
  }
  html.gdp-fs:not(.gdp-fs-plain) .gdp-ld-screen.js-ld-play .gdp-ld-stage{display:contents;}
  html.gdp-fs:not(.gdp-fs-plain) .gdp-ld-screen.js-ld-play .gdp-ld-bar{grid-area:bar;margin-bottom:10px;}
  html.gdp-fs:not(.gdp-fs-plain) .gdp-ld-screen.js-ld-play .gdp-bar-rules{display:none;}
  html.gdp-fs:not(.gdp-fs-plain) .gdp-ld-screen.js-ld-play .gdp-bar-actions{width:100%;justify-content:space-between;gap:4px;}
  html.gdp-fs:not(.gdp-fs-plain) .gdp-ld-screen.js-ld-play .gdp-ld-stat{margin-right:2px;}
  html.gdp-fs:not(.gdp-fs-plain) .gdp-ld-screen.js-ld-play .gdp-ld-boardcol{grid-area:board;}
  html.gdp-fs:not(.gdp-fs-plain) .gdp-ld-screen.js-ld-play .gdp-ld-side{grid-area:side;}
}

/* =====================================================================
   YOUR STATS (v2.1)
   The shared tab and panel (gdp-game.css: .gdp-statstab, .gdp-stats);
   what is Lockdown's own is below.
   ===================================================================== */
/* The tab is for between games: hidden while a game is on the board. */
.gdp .gdp-wrap.js-ld-wrap.is-playing .gdp-statstab{display:none;}
.gdp .js-ld-stats .gdp-stats-head{gap:14px;flex-wrap:wrap;}
.gdp .js-ld-stats .gdp-stats-head h2{flex:0 0 auto;}
.gdp .gdp-ld-schips{flex:1 1 auto;justify-content:flex-end;}
.gdp .js-ld-stats .gdp-stats-body{background:radial-gradient(1200px 500px at 85% -10%,rgba(255,59,78,.07),transparent 60%);}

/* The headline: six figures, three across. */
.gdp .gdp-ld-stfigs{grid-template-columns:repeat(6,minmax(0,1fr));margin-bottom:20px;}
.gdp .gdp-ld-stfigs .gdp-figure{position:relative;background:rgba(20,20,20,.92);}
.gdp .gdp-ld-stfigs .gdp-figure.is-best{border-color:rgba(255,164,0,.45);background:linear-gradient(180deg,rgba(255,164,0,.10),rgba(20,20,20,.92));}
.gdp .gdp-ld-stfigs .gdp-figure.is-best b{color:var(--gdp-accent);}
.gdp .gdp-ld-stfigs .gdp-ld-medal.is-fig{position:absolute;top:7px;left:9px;width:16px;height:20px;}
.gdp .gdp-ld-stfigs .gdp-unit,.gdp .gdp-ld-stper .gdp-unit{font-size:.55em;margin-left:2px;color:var(--gdp-muted);}

/* Medals won: each medal with its count. */
.gdp .gdp-ld-stmedals{list-style:none;margin:0 0 24px;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;}
.gdp .gdp-ld-stmedals li{display:grid;grid-template-columns:30px 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;
  padding:10px 12px;border-radius:11px;border:1px solid var(--gdp-line);background:rgba(20,20,20,.92);opacity:.55;}
.gdp .gdp-ld-stmedals li.is-got{opacity:1;border-color:rgba(255,212,81,.45);background:rgba(40,30,8,.8);}
.gdp .gdp-ld-stmedals .gdp-ld-medal{grid-row:1 / 4;width:30px;height:36px;}
.gdp .gdp-ld-stmedals b{font-family:var(--gdp-font);font-size:24px;font-weight:600;line-height:1;font-variant-numeric:tabular-nums;}
.gdp .gdp-ld-stmedals span{font-family:var(--gdp-font);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#d8d8d8;}
.gdp .gdp-ld-stmedals small{font-family:var(--gdp-font-note);font-size:11px;color:var(--gdp-muted);}

/* Number by number: the average hits in a game. */
.gdp .gdp-ld-pernum.is-stats li{border-top-color:var(--gdp-accent);}
.gdp .gdp-ld-pernum.is-stats em{background:var(--gdp-accent);}
.gdp .gdp-ld-pernum.is-stats li.is-weak{border-top-color:#ff3b4e;background:rgba(70,8,18,.75);}
.gdp .gdp-ld-pernum.is-stats li.is-weak em{background:#ff6a6a;}
.gdp .gdp-ld-pernum.is-stats li.is-strong{border-top-color:var(--gdp-win);}
.gdp .gdp-ld-pernum.is-stats li.is-strong em{background:var(--gdp-win);}
.gdp .gdp-ld-stline{font-family:var(--gdp-font-note);font-size:13px;color:#e6e6e6;margin:10px 0 0;}
.gdp .gdp-ld-stline i{color:#ff6a6a;margin-right:4px;}
.gdp .gdp-ld-sth3{margin-top:24px;}
.gdp .js-ld-stats .gdp-ld-hbar b small{font-size:9px;color:var(--gdp-muted);margin-left:1px;}
.gdp .gdp-ld-stper{margin:22px 0 0;}
.gdp .gdp-ld-stper .gdp-figure{background:rgba(20,20,20,.92);}
.gdp .gdp-ld-stper .gdp-figure.is-gold b{color:#ffd451;}
.gdp .gdp-ld-stper .gdp-figure.is-green b{color:var(--gdp-win);}
.gdp .gdp-ld-stper .gdp-figure.is-blue b{color:#8de6ff;}
.gdp .gdp-ld-stper .gdp-figure.is-red b{color:#ff8a8a;}

/* Your games: a row per game, opening to its story. */
.gdp .gdp-ld-sthist{margin-top:0;}
.gdp .gdp-ld-sess{display:grid;grid-template-columns:24px 92px minmax(0,1fr) auto 18px;align-items:center;gap:10px;width:100%;
  padding:9px 12px;margin-bottom:6px;border-radius:10px;border:1px solid var(--gdp-line);background:rgba(20,20,20,.92);
  color:var(--gdp-ink);font-family:var(--gdp-font);text-align:left;cursor:pointer;}
.gdp .gdp-ld-sess:hover{border-color:var(--gdp-accent);}
.gdp .gdp-ld-sess.is-on{border-color:var(--gdp-accent);background:#1a1305;}
.gdp .gdp-ld-sess:focus-visible{outline:2px solid var(--gdp-win);outline-offset:2px;}
.gdp .gdp-ld-sess-m{display:flex;align-items:center;justify-content:center;}
.gdp .gdp-ld-sess-m .gdp-ld-medal{width:20px;height:24px;}
.gdp .gdp-ld-stdot{display:block;width:10px;height:10px;border-radius:50%;background:#7f8b99;}
.gdp .gdp-ld-stdot.is-won{background:var(--gdp-win);box-shadow:0 0 8px rgba(61,220,132,.6);}
.gdp .gdp-ld-stdot.is-out{background:#ff1744;box-shadow:0 0 8px rgba(255,23,68,.6);}
.gdp .gdp-ld-stdot.is-ended{background:transparent;border:2px solid #7f8b99;}
.gdp .gdp-ld-sess-when{font-size:12px;color:var(--gdp-muted);white-space:nowrap;}
.gdp .gdp-ld-sess-what{font-size:14px;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.gdp .gdp-ld-sess.is-won .gdp-ld-sess-what{color:var(--gdp-win);}
.gdp .gdp-ld-sess.is-out .gdp-ld-sess-what{color:#ff8a8a;}
.gdp .gdp-ld-sess.is-ended .gdp-ld-sess-what{color:var(--gdp-muted);}
.gdp .gdp-ld-sess-num{display:flex;align-items:baseline;gap:4px;justify-content:flex-end;}
.gdp .gdp-ld-sess-num b{font-size:20px;font-weight:600;font-variant-numeric:tabular-nums;}
.gdp .gdp-ld-sess-num small{font-size:11px;color:var(--gdp-muted);letter-spacing:.06em;}
.gdp .gdp-ld-sess-chev{width:8px;height:8px;border-right:2px solid var(--gdp-muted);border-bottom:2px solid var(--gdp-muted);transform:rotate(45deg);margin-top:-4px;transition:transform .2s;}
.gdp .gdp-ld-sess.is-on .gdp-ld-sess-chev{transform:rotate(-135deg);margin-top:4px;border-color:var(--gdp-accent);}
.gdp .gdp-ld-gdetail{padding:6px 2px 14px;}
.gdp .gdp-ld-gdetail .gdp-ld-chart{height:96px;}
.gdp .gdp-ld-pernum.is-mini{gap:4px;margin-top:8px;}
.gdp .gdp-ld-pernum.is-mini li{padding:6px 2px 6px;border-top-color:rgba(255,255,255,.12);}
.gdp .gdp-ld-pernum.is-mini b{font-size:14px;}
.gdp .gdp-ld-pernum.is-mini span{font-size:11px;}
.gdp .gdp-ld-pernum.is-mini em{background:var(--gdp-accent);}
.gdp .gdp-ld-gmeta{font-family:var(--gdp-font-note);font-size:12px;color:var(--gdp-muted);margin:8px 0 0;line-height:1.6;}
.gdp .gdp-ld-gmeta b{color:#f0f0f0;font-weight:600;}
.gdp .gdp-ld-stnone{padding:30px 0;text-align:center;}
.gdp .gdp-ld-upsell{max-width:520px;margin:30px auto;}

@media(max-width:1100px){
  .gdp .gdp-ld-stfigs{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:760px){
  .gdp .gdp-ld-schips{justify-content:flex-start;order:3;flex-basis:100%;}
  .gdp .gdp-ld-stmedals{grid-template-columns:repeat(2,minmax(0,1fr));}
  .gdp .gdp-ld-pernum.is-mini{grid-template-columns:repeat(5,minmax(0,1fr));}
}
@media(max-width:600px){
  .gdp .gdp-ld-stfigs{grid-template-columns:repeat(2,minmax(0,1fr));}
  .gdp .gdp-ld-sess{grid-template-columns:22px 1fr auto 14px;}
  .gdp .gdp-ld-sess-when{grid-column:2;grid-row:2;}
  .gdp .gdp-ld-sess-what{grid-column:2;grid-row:1;}
  .gdp .gdp-ld-sess-m{grid-row:1 / 3;}
  .gdp .gdp-ld-sess-num{grid-column:3;grid-row:1 / 3;}
  .gdp .gdp-ld-sess-chev{grid-column:4;grid-row:1 / 3;}
}
.gdp .gdp-ld-sess.is-old .gdp-ld-sess-what{color:#d8d8d8;}
/* On a phone the shared panel dissolves its left column: keep the numbers
   first and the list of games after them. */
@media(max-width:900px){ .gdp .gdp-ld-stgrid > .gdp-ld-sthist{order:2;margin-top:24px;align-self:stretch;width:100%;} }

/* The note when the browser blocks the game's sounds. Shown with a board
   too: a Scolia player needs the sounds as much as anyone. */
.gdp .gdp-ld-sndnote{position:relative;padding:11px 34px 12px 13px;border-radius:10px;
  background:rgba(76,201,255,.08);border:1px solid rgba(76,201,255,.45);}
.gdp .gdp-ld-sndnote b{display:block;font-family:var(--gdp-font);font-size:13px;font-weight:500;letter-spacing:.08em;
  text-transform:uppercase;color:#8de6ff;margin-bottom:4px;}
.gdp .gdp-ld-sndnote p{margin:0 0 9px;font-family:var(--gdp-font-note);font-size:13px;line-height:1.45;color:#eee;}
.gdp .gdp-ld-sndok{font-family:var(--gdp-font);font-size:12px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;
  padding:6px 14px;border-radius:999px;border:1px solid rgba(76,201,255,.6);background:none;color:#8de6ff;}
.gdp .gdp-ld-sndok:hover{background:rgba(76,201,255,.14);}
.gdp .gdp-ld-sndnote.is-hidden{display:none;}
@media(max-width:991px){ .gdp .gdp-ld-sndnote{order:4;} }
