/* ============================================================
   okgames casino — tokens-responsive-1015f9.css
   Mobile-first canvas: 320-430px, centered on wide screens.
   Palette: #0E1621 base / #004D40 + #00695C teal / #F0FDFF ice
            #BDC3C7 + #BBBBBB silver text lines
   Direction: condensed headings, near-square corners (3px),
   square game tiles with caption names, outlined bottom dock,
   underline active markers, icon micro-rotation, soft press.
   All classes and custom properties use the c5f979- prefix.
   ============================================================ */

:root{
  --c5f979-ink:        #0E1621;
  --c5f979-ink-deep:   #070c12;
  --c5f979-ink-panel:  #101b26;
  --c5f979-ink-card:   #0b141d;
  --c5f979-hairline:   #1d2c3a;
  --c5f979-teal:       #00695C;
  --c5f979-teal-deep:  #004D40;
  --c5f979-ice:        #F0FDFF;
  --c5f979-silver:     #BDC3C7;
  --c5f979-steel:      #BBBBBB;
  --c5f979-corner:     3px;
  --c5f979-corner-cta: 8px;
  --c5f979-font-round: ui-rounded, "Segoe UI", -apple-system, BlinkMacSystemFont, Roboto, "Helvetica Neue", Arial, sans-serif;
  --c5f979-font-tight: "Arial Narrow", "Roboto Condensed", "Segoe UI", system-ui, sans-serif;
  --c5f979-dock-h:     62px;
}

*,*::before,*::after{ box-sizing:border-box; }

html{
  background:var(--c5f979-ink-deep);
  -webkit-text-size-adjust:100%;
}

body{
  margin:0 auto;
  max-width:430px;                       /* hard mobile-canvas cap */
  min-height:100vh;
  background:var(--c5f979-ink);
  color:var(--c5f979-ice);
  font-family:var(--c5f979-font-round);
  font-size:15px;
  line-height:1.55;
  overflow-x:hidden;
}

img{ max-width:100%; display:block; }

h1,h2,h3{
  font-family:var(--c5f979-font-tight);
  font-weight:700;
  letter-spacing:.02em;
  line-height:1.2;
  margin:0 0 .45em;
}

h1{ font-size:1.62rem; text-transform:none; }
h2{ font-size:1.28rem; }
h3{ font-size:1.02rem; }

p{ margin:0 0 .8em; color:var(--c5f979-silver); }

a{ color:var(--c5f979-ice); }

.c5f979-skip{
  position:absolute; left:-999px; top:0;
  background:var(--c5f979-teal); color:var(--c5f979-ice);
  padding:8px 14px; z-index:200; border-radius:var(--c5f979-corner);
}
.c5f979-skip:focus{ left:8px; top:8px; }

:focus-visible{ outline:2px solid var(--c5f979-ice); outline-offset:2px; }

/* ---------- top identity bar + action row (layered header) ---------- */

.c5f979-top{
  position:sticky; top:0; z-index:60;
  background:linear-gradient(180deg,#0c1520 0%,var(--c5f979-ink) 100%);
  border-bottom:1px solid var(--c5f979-hairline);
}

.c5f979-idbar{
  display:flex; align-items:center; justify-content:center;
  gap:9px; padding:10px 14px 6px;
}

.c5f979-idlogo{
  width:34px; height:34px; border-radius:var(--c5f979-corner);
  border:1px solid var(--c5f979-hairline); background:var(--c5f979-ink-card);
  object-fit:cover; flex:none;
}

.c5f979-idname{
  display:inline-flex; align-items:center; gap:9px;
  font-family:var(--c5f979-font-tight);
  font-size:1.18rem; font-weight:700; letter-spacing:.04em;
  color:var(--c5f979-ice); text-decoration:none;
}
.c5f979-idname span{ color:#39b7a4; }

.c5f979-actbar{
  display:grid; grid-template-columns:52px 1fr 1fr; gap:8px;
  padding:6px 12px 10px; align-items:stretch;
}

.c5f979-menubtn{
  display:flex; align-items:center; justify-content:center;
  min-height:44px;
  background:var(--c5f979-ink-card);
  border:1px solid var(--c5f979-hairline);
  border-radius:var(--c5f979-corner-cta);
  color:var(--c5f979-ice); cursor:pointer;
  transition:transform .12s ease, border-color .12s ease;
}
.c5f979-menubtn svg{ width:20px; height:20px; }
.c5f979-menubtn:active{ transform:scale(.94); border-color:var(--c5f979-teal); }
.c5f979-menubtn[aria-expanded="true"]{ border-color:var(--c5f979-teal); background:var(--c5f979-teal-deep); }

.c5f979-btnreg,
.c5f979-btnlog{
  min-height:44px;
  font-family:var(--c5f979-font-round);
  font-weight:700; font-size:.95rem; letter-spacing:.03em;
  border-radius:var(--c5f979-corner-cta);
  cursor:pointer;
  transition:transform .12s ease, filter .12s ease;
}
.c5f979-btnreg{
  background:linear-gradient(135deg,#00836f,var(--c5f979-teal) 55%,var(--c5f979-teal-deep));
  color:var(--c5f979-ice); border:1px solid #018a76;
  box-shadow:0 2px 0 #02352e;
}
.c5f979-btnlog{
  background:transparent; color:var(--c5f979-ice);
  border:1px solid var(--c5f979-steel);
}
.c5f979-btnreg:active,
.c5f979-btnlog:active{ transform:translateY(1px) scale(.97); }

/* ---------- layered dropdown menu ---------- */

.c5f979-menu{
  position:absolute; top:100%; left:0; right:0;
  background:var(--c5f979-ink-panel);
  border-bottom:1px solid var(--c5f979-hairline);
  max-height:0; overflow:hidden; visibility:hidden;
  transition:max-height .28s ease, visibility .28s;
  box-shadow:0 14px 22px rgba(3,7,11,.55);
}
.c5f979-menu.c5f979-is-open{ max-height:72vh; overflow-y:auto; visibility:visible; }

.c5f979-mgroup{ border-bottom:1px solid var(--c5f979-hairline); }
.c5f979-mgroup:last-child{ border-bottom:none; }

.c5f979-mhead{
  width:100%; display:flex; align-items:center; justify-content:space-between;
  min-height:46px; padding:10px 16px;
  background:transparent; border:none; cursor:pointer;
  color:var(--c5f979-steel);
  font-family:var(--c5f979-font-tight);
  font-size:.86rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase;
}
.c5f979-mchev{
  width:16px; height:16px; transition:transform .2s ease; color:var(--c5f979-silver);
}
.c5f979-mgroup.c5f979-open .c5f979-mchev{ transform:rotate(180deg); color:#39b7a4; }

.c5f979-mlist{
  display:none; padding:0 8px 10px;
  grid-template-columns:1fr; gap:2px;
}
.c5f979-mgroup.c5f979-open .c5f979-mlist{ display:grid; }
@media (min-width:375px){ .c5f979-mlist{ grid-template-columns:1fr 1fr; } }

.c5f979-mitem{
  display:flex; align-items:center; gap:8px;
  min-height:44px; padding:8px 10px;
  color:var(--c5f979-ice); text-decoration:none;
  border-radius:var(--c5f979-corner);
  border:1px solid transparent;
  font-size:.92rem;
  transition:background .12s ease, border-color .12s ease, transform .12s ease;
}
.c5f979-mitem svg{ width:16px; height:16px; color:#39b7a4; flex:none; }
.c5f979-mitem:active{ background:var(--c5f979-teal-deep); transform:scale(.97); }
.c5f979-mitem[aria-current="page"]{
  border-color:var(--c5f979-teal);
  box-shadow:inset 0 -2px 0 #39b7a4;
}

/* ---------- banner strip (carousel) ---------- */

.c5f979-strip{
  position:relative; margin:12px 12px 0;
  border-radius:var(--c5f979-corner);
  border:1px solid var(--c5f979-hairline);
  overflow:hidden; background:var(--c5f979-ink-card);
}
.c5f979-track{
  display:flex; width:100%;
  transition:transform .38s cubic-bezier(.25,.7,.3,1);
  touch-action:pan-y;
}
.c5f979-slide{
  flex:0 0 100%; position:relative; display:block; cursor:pointer;
  text-decoration:none;
}
button.c5f979-slide{
  width:100%; font:inherit; color:inherit; text-align:left;
  background:transparent; border:0; padding:0;
}
.c5f979-slide img{
  width:100%; aspect-ratio:5/2; object-fit:cover;
}
.c5f979-slidecap{
  position:absolute; left:0; right:0; bottom:0;
  padding:22px 12px 8px;
  background:linear-gradient(180deg,rgba(14,22,33,0) 0%,rgba(7,12,18,.92) 82%);
  font-family:var(--c5f979-font-tight);
  font-size:.92rem; font-weight:700; letter-spacing:.03em;
  color:var(--c5f979-ice);
}
.c5f979-slidecap small{
  display:block; font-family:var(--c5f979-font-round);
  font-weight:400; font-size:.74rem; letter-spacing:0;
  color:var(--c5f979-silver); margin-top:2px;
}

.c5f979-sarrow{
  position:absolute; top:50%; transform:translateY(-50%);
  width:32px; height:44px; display:flex; align-items:center; justify-content:center;
  background:rgba(7,12,18,.62); border:none; cursor:pointer;
  color:var(--c5f979-ice);
}
.c5f979-sarrow svg{ width:16px; height:16px; }
.c5f979-sprev{ left:0; border-radius:0 var(--c5f979-corner-cta) var(--c5f979-corner-cta) 0; }
.c5f979-snext{ right:0; border-radius:var(--c5f979-corner-cta) 0 0 var(--c5f979-corner-cta); }
.c5f979-sarrow:active{ background:var(--c5f979-teal-deep); }

.c5f979-sdots{
  position:absolute; bottom:6px; left:0; right:0;
  display:flex; justify-content:center; gap:6px;
}
.c5f979-sdot{
  width:7px; height:7px; padding:0; border-radius:50%;
  border:1px solid var(--c5f979-ice); background:transparent; cursor:pointer;
}
.c5f979-sdot.c5f979-on{ background:var(--c5f979-ice); }

/* ---------- lead / intro ---------- */

.c5f979-lead{ padding:16px 14px 4px; }

.c5f979-kicker{
  display:inline-block;
  font-family:var(--c5f979-font-tight);
  font-size:.72rem; font-weight:700; letter-spacing:.18em; text-transform:uppercase;
  color:#39b7a4; margin-bottom:6px;
}

.c5f979-leadcta{
  display:flex; gap:8px; flex-wrap:wrap; margin:2px 0 6px;
}
.c5f979-cta{
  flex:1 1 130px;
  min-height:46px;
  display:inline-flex; align-items:center; justify-content:center; gap:7px;
  padding:10px 14px;
  border-radius:var(--c5f979-corner-cta);
  font-family:var(--c5f979-font-round); font-weight:700; font-size:.92rem;
  text-decoration:none; cursor:pointer;
  transition:transform .12s ease, filter .12s ease;
}
.c5f979-cta svg{ width:15px; height:15px; }
.c5f979-cta:active{ transform:scale(.96); }
.c5f979-cta-solid{
  background:linear-gradient(135deg,#00836f,var(--c5f979-teal) 60%,var(--c5f979-teal-deep));
  color:var(--c5f979-ice); border:1px solid #018a76;
}
.c5f979-cta-line{
  background:rgba(0,105,92,.12); color:var(--c5f979-ice);
  border:1px solid var(--c5f979-teal);
}

/* ---------- game floors (category sections) ---------- */

.c5f979-floor{
  padding:18px 12px 6px;
  border-top:1px solid var(--c5f979-hairline);
  position:relative;
}
.c5f979-floor::before{                 /* scene-branch rail */
  content:""; position:absolute; top:18px; bottom:14px; left:0;
  width:3px; border-radius:0 3px 3px 0;
  background:linear-gradient(180deg,#39b7a4,var(--c5f979-teal-deep));
  opacity:.75;
}
.c5f979-floor > *{ padding-left:6px; }

.c5f979-floortag{
  display:inline-block;
  font-family:var(--c5f979-font-tight);
  font-size:.68rem; font-weight:700; letter-spacing:.16em; text-transform:uppercase;
  color:var(--c5f979-ink); background:#39b7a4;
  padding:2px 8px 1px; border-radius:2px;
  margin-bottom:8px;
}

.c5f979-floorlink{
  display:inline-flex; align-items:center; gap:5px;
  font-size:.8rem; color:#39b7a4; text-decoration:none;
  border:1px solid var(--c5f979-teal);
  border-radius:999px; padding:4px 11px;
  margin-bottom:8px;
  transition:transform .12s ease, background .12s ease;
}
.c5f979-floorlink:active{ transform:scale(.95); background:var(--c5f979-teal-deep); }
.c5f979-floorlink svg{ width:12px; height:12px; }

.c5f979-chiprow{
  display:flex; gap:8px; flex-wrap:wrap; margin:0 0 10px;
}
.c5f979-chip{
  display:inline-flex; align-items:center; gap:6px;
  min-height:36px; padding:6px 12px;
  font-size:.82rem; text-decoration:none;
  color:var(--c5f979-ice);
  background:var(--c5f979-ink-card);
  border:1px solid var(--c5f979-hairline);
  border-radius:var(--c5f979-corner-cta);
  transition:border-color .12s ease, transform .12s ease;
}
.c5f979-chip svg{ width:13px; height:13px; color:#39b7a4; }
.c5f979-chip:active{ transform:scale(.95); border-color:var(--c5f979-teal); }

/* ---------- game shelf grid (square tiles, name below) ---------- */

.c5f979-shelf{
  display:grid; grid-template-columns:repeat(4,1fr);
  gap:8px 7px; padding:4px 0 8px;
}
@media (min-width:375px){ .c5f979-shelf{ gap:10px 9px; } }

.c5f979-gtile{
  display:flex; flex-direction:column; gap:5px;
  padding:0; background:transparent; border:none; cursor:pointer;
  text-align:center;
  transition:transform .12s ease;
}
.c5f979-gtile:active{ transform:scale(.93); }
.c5f979-gtile img{
  width:100%; aspect-ratio:1/1; object-fit:cover;
  border-radius:var(--c5f979-corner);
  border:1px solid var(--c5f979-hairline);
  background:var(--c5f979-ink-card);
  transition:border-color .15s ease;
}
.c5f979-gtile:active img,
.c5f979-gtile:focus-visible img{ border-color:#39b7a4; }
.c5f979-gname{
  font-size:.68rem; line-height:1.28; color:var(--c5f979-silver);
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;
  overflow:hidden; min-height:1.7em;
}

/* ---------- content modules ---------- */

.c5f979-mod{
  padding:20px 14px 8px;
  border-top:1px solid var(--c5f979-hairline);
  background:
    linear-gradient(180deg,rgba(0,77,64,.10) 0%,rgba(14,22,33,0) 120px),
    var(--c5f979-ink);
}

/* promotion cards */
.c5f979-pcard{
  background:var(--c5f979-ink-card);
  border:1px solid var(--c5f979-hairline);
  border-left:3px solid #39b7a4;
  border-radius:var(--c5f979-corner);
  padding:12px 12px 14px;
  margin-bottom:10px;
}
.c5f979-pcard h3{ margin-bottom:4px; }
.c5f979-pcard p{ font-size:.86rem; margin-bottom:10px; }
.c5f979-pcard .c5f979-cta{ flex:none; min-height:40px; font-size:.85rem; padding:8px 14px; }

/* winners feed */
.c5f979-feed{
  border:1px solid var(--c5f979-hairline);
  border-radius:var(--c5f979-corner);
  overflow:hidden; margin-bottom:10px;
}
.c5f979-frow{
  display:grid; grid-template-columns:1fr auto; gap:2px 10px;
  padding:9px 12px;
  border-bottom:1px solid var(--c5f979-hairline);
  background:var(--c5f979-ink-card);
}
.c5f979-frow:last-child{ border-bottom:none; }
.c5f979-frow:nth-child(even){ background:var(--c5f979-ink-panel); }
.c5f979-fgame{
  font-size:.86rem; color:var(--c5f979-ice); font-weight:600;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.c5f979-famt{
  font-family:var(--c5f979-font-tight);
  font-size:.9rem; font-weight:700; color:#39b7a4; text-align:right;
}
.c5f979-fwho{
  grid-column:1; font-size:.72rem; color:var(--c5f979-steel);
}
.c5f979-fwhen{
  grid-column:2; font-size:.72rem; color:var(--c5f979-steel); text-align:right;
}
.c5f979-fnote{ font-size:.74rem; color:var(--c5f979-steel); }

/* tricks branches */
.c5f979-branch{
  display:grid; grid-template-columns:86px 1fr; gap:10px;
  padding:11px 0;
  border-bottom:1px dashed var(--c5f979-hairline);
}
.c5f979-branch:last-of-type{ border-bottom:none; }
.c5f979-branchtag{
  align-self:start;
  font-family:var(--c5f979-font-tight);
  font-size:.7rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase;
  color:var(--c5f979-ink); background:var(--c5f979-silver);
  border-radius:2px; padding:3px 7px; text-align:center;
}
.c5f979-branch:nth-child(even) .c5f979-branchtag{ background:#39b7a4; }
.c5f979-branch p{ margin:0; font-size:.86rem; }

/* category highlights */
.c5f979-hlgrid{ display:grid; grid-template-columns:1fr; gap:9px; }
@media (min-width:375px){ .c5f979-hlgrid{ grid-template-columns:1fr 1fr; } }
.c5f979-hlcard{
  background:var(--c5f979-ink-card);
  border:1px solid var(--c5f979-hairline);
  border-radius:var(--c5f979-corner);
  padding:10px 11px;
}
.c5f979-hlcard h3{
  display:flex; align-items:center; gap:7px;
  font-size:.92rem; margin-bottom:4px;
}
.c5f979-hlcard svg{ width:15px; height:15px; color:#39b7a4; flex:none; }
.c5f979-hlcard p{ margin:0; font-size:.8rem; }

/* pros and limitations */
.c5f979-vlists{ display:grid; grid-template-columns:1fr; gap:10px; margin-bottom:12px; }
@media (min-width:375px){ .c5f979-vlists{ grid-template-columns:1fr 1fr; } }
.c5f979-vlist{
  list-style:none; margin:0; padding:10px 12px 10px 14px;
  background:var(--c5f979-ink-card);
  border:1px solid var(--c5f979-hairline);
  border-radius:var(--c5f979-corner);
}
.c5f979-vlist li{
  position:relative; padding:5px 0 5px 18px;
  font-size:.84rem; color:var(--c5f979-silver);
  border-bottom:1px dashed rgba(29,44,58,.6);
}
.c5f979-vlist li:last-child{ border-bottom:none; }
.c5f979-vlist li::before{
  position:absolute; left:0; top:8px;
  font-weight:700;
}
.c5f979-vplus li::before{ content:"+"; color:#39b7a4; }
.c5f979-vminus li::before{ content:"–"; color:var(--c5f979-steel); }
.c5f979-vlist h3{ font-size:.86rem; letter-spacing:.1em; text-transform:uppercase; color:var(--c5f979-steel); }

/* ---------- homepage extended footer ---------- */

.c5f979-xfoot{
  margin-top:18px;
  border-top:3px double var(--c5f979-hairline);
  padding:16px 14px 8px;
  background:var(--c5f979-ink-panel);
}

.c5f979-xpromo{
  display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-bottom:16px;
}
.c5f979-xbtn{
  display:flex; align-items:center; justify-content:center; gap:7px;
  min-height:52px; padding:9px 10px;
  border-radius:var(--c5f979-corner-cta);
  font-size:.84rem; font-weight:700; text-align:center;
  cursor:pointer; text-decoration:none;
  transition:transform .12s ease;
}
.c5f979-xbtn svg{ width:16px; height:16px; flex:none; }
.c5f979-xbtn:active{ transform:scale(.95); }
.c5f979-xbtn-fill{
  background:linear-gradient(135deg,#00836f,var(--c5f979-teal) 60%,var(--c5f979-teal-deep));
  color:var(--c5f979-ice); border:1px solid #018a76;
}
.c5f979-xbtn-line{
  background:transparent; color:var(--c5f979-ice);
  border:1px solid var(--c5f979-steel);
}

.c5f979-xbrand{
  font-size:.82rem; color:var(--c5f979-steel);
  border-left:3px solid var(--c5f979-teal);
  padding:2px 0 2px 10px; margin-bottom:16px;
}

.c5f979-xdir{
  display:grid; grid-template-columns:1fr; gap:6px; margin-bottom:14px;
}
@media (min-width:375px){ .c5f979-xdir{ grid-template-columns:1fr 1fr; } }
.c5f979-xlink{
  display:flex; align-items:center; gap:8px;
  min-height:42px; padding:8px 10px;
  font-size:.82rem; text-decoration:none;
  color:var(--c5f979-ice);
  background:var(--c5f979-ink-card);
  border:1px solid var(--c5f979-hairline);
  border-radius:var(--c5f979-corner);
  transition:transform .12s ease, border-color .12s ease;
}
.c5f979-xlink svg{ width:14px; height:14px; color:#39b7a4; flex:none; }
.c5f979-xlink:active{ transform:scale(.96); border-color:var(--c5f979-teal); }

.c5f979-xnote{
  font-size:.72rem; color:var(--c5f979-steel);
  border-top:1px solid var(--c5f979-hairline);
  padding-top:10px;
}

/* ---------- common footer ---------- */

.c5f979-foot{
  padding:14px 14px calc(14px + var(--c5f979-dock-h));
  text-align:center;
  font-size:.74rem; color:var(--c5f979-steel);
  border-top:1px solid var(--c5f979-hairline);
}

/* ---------- fixed bottom dock (5 roles, outlined) ---------- */

.c5f979-dock{
  position:fixed; bottom:0; left:0; right:0; z-index:70;
  max-width:430px; margin:0 auto;
  display:grid; grid-template-columns:repeat(5,1fr);
  background:rgba(10,17,25,.97);
  border-top:1px solid var(--c5f979-steel);      /* outlined function bar */
  padding:4px 0 calc(4px + env(safe-area-inset-bottom,0px));
}
.c5f979-dockbtn{
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px;
  min-height:54px; padding:6px 2px 4px;
  background:transparent; border:none; cursor:pointer;
  color:var(--c5f979-silver); text-decoration:none;
  position:relative;
  transition:color .15s ease;
}
.c5f979-dockic{ width:22px; height:22px; transition:transform .18s ease; }
.c5f979-docklb{
  font-size:.62rem; letter-spacing:.05em;
  font-family:var(--c5f979-font-tight); font-weight:700;
}
.c5f979-dockbtn:active{ transform:scale(.92); }
.c5f979-dockbtn[aria-current="page"]{ color:var(--c5f979-ice); }
.c5f979-dockbtn[aria-current="page"] .c5f979-dockic{
  transform:rotate(-8deg);                      /* icon micro-rotation */
  color:#39b7a4;
}
.c5f979-dockbtn[aria-current="page"]::after{    /* underline active marker */
  content:""; position:absolute; left:50%; top:0;
  transform:translateX(-50%);
  width:22px; height:3px; border-radius:0 0 3px 3px;
  background:#39b7a4;
}

/* ---------- wide-screen dressing (canvas stays 430 max) ---------- */

@media (min-width:431px){
  body{
    box-shadow:0 0 0 1px var(--c5f979-hairline), 0 0 44px rgba(0,0,0,.6);
    min-height:100vh;
  }
}

/* ---------- reduced motion ---------- */

/* ---------- inline promo text ---------- */

.c5f979-inlink{
  display:inline; padding:0; margin:0;
  background:none; border:0; cursor:pointer;
  color:#39b7a4; font:inherit; font-weight:700;
  text-decoration:underline; text-underline-offset:2px;
}

/* ---------- help: breadcrumb ---------- */

.c5f979-crumb{
  display:flex; flex-wrap:wrap; gap:6px;
  padding:12px 14px 0;
  font-size:.75rem; color:var(--c5f979-steel);
}
.c5f979-crumb a{ color:#39b7a4; text-decoration:none; }
.c5f979-crumb span[aria-hidden]{ color:var(--c5f979-steel); }

/* ---------- guide: numbered route ---------- */

.c5f979-route{
  list-style:none; margin:0 0 12px; padding:0;
}
.c5f979-stop{
  display:grid; grid-template-columns:36px 1fr; gap:8px;
  padding:11px 0;
  border-bottom:1px dashed var(--c5f979-hairline);
}
.c5f979-stop:last-child{ border-bottom:none; }
.c5f979-num{
  width:32px; height:32px; margin-top:2px;
  display:flex; align-items:center; justify-content:center;
  font-family:var(--c5f979-font-tight); font-weight:700; font-size:.85rem;
  color:var(--c5f979-ink); background:#39b7a4;
  border-radius:var(--c5f979-corner);
}
.c5f979-stop p{ margin:0; font-size:.86rem; }
.c5f979-stop h3{ margin:0 0 4px; font-size:.95rem; }

.c5f979-warn{
  margin:0 0 10px; padding:10px 12px;
  background:var(--c5f979-ink-card);
  border:1px solid var(--c5f979-hairline);
  border-top:3px solid var(--c5f979-steel);
  border-radius:var(--c5f979-corner);
}
.c5f979-warn p{ margin:0; font-size:.86rem; }

.c5f979-ticks{
  list-style:none; margin:0 0 12px; padding:0;
}
.c5f979-ticks li{
  position:relative;
  min-height:44px;
  margin:0 0 8px; padding:10px 10px 10px 36px;
  background:var(--c5f979-ink-card);
  border:1px solid var(--c5f979-hairline);
  border-radius:var(--c5f979-corner);
  color:var(--c5f979-silver); font-size:.86rem;
}
.c5f979-ticks li::before{
  content:"";
  position:absolute; left:12px; top:14px;
  width:12px; height:12px;
  border:2px solid #39b7a4; border-radius:2px;
}

.c5f979-qa details{
  border-bottom:1px solid var(--c5f979-hairline);
  background:var(--c5f979-ink-card);
}
.c5f979-qa details:first-of-type{ border-top:1px solid var(--c5f979-hairline); }
.c5f979-qa summary{
  min-height:44px; padding:12px 12px;
  cursor:pointer; font-weight:700; color:var(--c5f979-ice);
}
.c5f979-qa details p{ margin:0; padding:0 12px 12px; font-size:.86rem; }

.c5f979-split{ display:grid; grid-template-columns:1fr; gap:8px; margin-bottom:12px; }
@media (min-width:375px){ .c5f979-split{ grid-template-columns:1fr 1fr; } }
.c5f979-stack{
  background:var(--c5f979-ink-card);
  border:1px solid var(--c5f979-hairline);
  border-radius:var(--c5f979-corner);
  padding:10px 12px;
}
.c5f979-stack h3{
  font-size:.8rem; letter-spacing:.08em; text-transform:uppercase;
  color:var(--c5f979-steel); margin-bottom:6px;
}
.c5f979-stack ul{ margin:0; padding-left:16px; }
.c5f979-stack li{ margin:6px 0; color:var(--c5f979-silver); font-size:.84rem; }

/* ---------- review: verdict ledger, pairs, stamps, trail ---------- */

.c5f979-verdict{
  margin:0 0 12px; padding:12px;
  background:var(--c5f979-ink-card);
  border:1px solid var(--c5f979-teal);
  border-radius:var(--c5f979-corner);
}
.c5f979-verdict p{ font-size:.9rem; }

.c5f979-bounds{ margin:0 0 12px; }
.c5f979-bounds div{
  display:grid; grid-template-columns:92px 1fr; gap:8px;
  padding:10px 0;
  border-bottom:1px solid var(--c5f979-hairline);
}
.c5f979-bounds dt{
  margin:0;
  font-family:var(--c5f979-font-tight); font-size:.72rem; font-weight:700;
  letter-spacing:.08em; text-transform:uppercase; color:#39b7a4;
}
.c5f979-bounds dd{ margin:0; color:var(--c5f979-silver); font-size:.84rem; }

.c5f979-pair{
  display:grid; grid-template-columns:64px 1fr; gap:8px;
  padding:10px 0;
  border-bottom:1px dashed var(--c5f979-hairline);
}
.c5f979-pair b{
  align-self:start;
  font-family:var(--c5f979-font-tight); font-size:.68rem; letter-spacing:.06em;
  text-transform:uppercase; text-align:center;
  color:var(--c5f979-ink); background:var(--c5f979-silver);
  border-radius:2px; padding:4px 4px;
}
.c5f979-pair:nth-child(even) b{ background:#39b7a4; }
.c5f979-pair p{ margin:0; font-size:.84rem; }

.c5f979-stamps{
  display:grid; grid-template-columns:1fr; gap:8px; margin:0 0 12px;
}
@media (min-width:375px){ .c5f979-stamps{ grid-template-columns:1fr 1fr; } }
.c5f979-stamp{
  min-height:44px; padding:10px;
  background:var(--c5f979-ink-card);
  border:1px dashed var(--c5f979-teal);
  border-radius:var(--c5f979-corner);
  color:var(--c5f979-silver); font-size:.82rem;
}

.c5f979-trail{ list-style:none; margin:0 0 12px; padding:0; }
.c5f979-trail li{
  position:relative; padding:0 0 14px 18px;
  border-left:2px solid var(--c5f979-teal);
  color:var(--c5f979-silver); font-size:.86rem;
}
.c5f979-trail li:last-child{ border-left-color:transparent; }
.c5f979-trail li::before{
  content:""; position:absolute; left:-5px; top:4px;
  width:8px; height:8px; border-radius:50%; background:#39b7a4;
}

@media (prefers-reduced-motion:reduce){
  *{ transition:none !important; animation:none !important; }
  .c5f979-track{ transition:none; }
}
