@font-face{font-family:"Open Sans";font-style:normal;font-weight:300 800;font-display:swap;src:url("/assets/fonts/opensans-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:"Open Sans";font-style:normal;font-weight:300 800;font-display:swap;src:url("/assets/fonts/opensans-latin.woff2") format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:500 800;font-display:swap;src:url("/assets/fonts/montserrat-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:500 800;font-display:swap;src:url("/assets/fonts/montserrat-latin.woff2") format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
:root{color-scheme:dark;--bg:#050706;--panel:rgba(6,10,8,.92);--panel2:rgba(20,14,8,.82);--gold:#f4c65f;--gold2:#ffe19a;--line:rgba(244,180,61,.68);--green:#29e293;--red:#ff5a45;--text:#f5f3ed;--muted:#c8c4ba;--sans:"Open Sans",system-ui,sans-serif;--display:"Montserrat","Open Sans",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;min-width:320px;background:#050706;color:var(--text);font-family:var(--sans);line-height:1.55}body::before{content:"";position:fixed;inset:0;z-index:-2;background:url("/assets/img/hero-bg.webp") center/cover no-repeat;filter:saturate(1.1) brightness(.55)}body::after{content:"";position:fixed;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(0,0,0,.38),rgba(0,0,0,.72));pointer-events:none}
a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--gold2);outline-offset:3px}.skip-link{position:fixed;top:8px;left:8px;z-index:300;transform:translateY(-180%);padding:10px 14px;border-radius:10px;background:var(--gold);color:#161006;font-weight:800}.skip-link:focus{transform:none}
.rules-header{position:sticky;top:0;z-index:100;border-bottom:1px solid rgba(244,180,61,.35);background:rgba(3,5,4,.96);backdrop-filter:blur(12px)}.rules-header__inner{width:min(1240px,calc(100% - 40px));min-height:72px;margin:auto;display:flex;align-items:center;gap:30px}.rules-logo{font-family:var(--display);font-size:38px;font-weight:800;letter-spacing:-.05em;white-space:nowrap}.rules-logo span{color:#f21a34}.rules-nav{margin-left:auto}.rules-nav ul{display:flex;gap:24px;align-items:center;list-style:none;margin:0;padding:0}.rules-nav a,.rules-nav__dialog{font:700 14px/1 var(--sans);color:#ddd}.rules-nav a:hover,.rules-nav__dialog:hover{color:var(--gold2)}.rules-nav__dialog{padding:0;border:0;background:none;cursor:pointer;white-space:nowrap}
.rules-shell{width:min(1240px,calc(100% - 40px));margin:0 auto;padding:20px 0 54px}.breadcrumb ol{display:flex;flex-wrap:wrap;gap:9px;list-style:none;margin:0 0 16px;padding:0;color:#f7d36f;font-size:14px;font-weight:700}.breadcrumb li+li::before{content:"›";margin-right:9px;color:#aa925a}.breadcrumb a:hover{text-decoration:underline}
.rules-hero{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;padding:30px;border:1.5px solid var(--line);border-radius:22px;background:linear-gradient(135deg,rgba(30,18,8,.94),rgba(4,10,7,.94));box-shadow:0 22px 65px rgba(0,0,0,.42),0 0 25px rgba(255,177,43,.12)}.rules-kicker{margin:0 0 7px;color:var(--gold);font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:13px}.rules-hero h1{margin:0;font-family:var(--display);font-size:clamp(34px,5vw,58px);line-height:1.02;color:#f8dfa0}.rules-lead{max-width:820px;margin:15px 0 0;color:#ece9e2;font-size:18px}.rules-note{margin:16px 0 0;padding:12px 14px;border-left:3px solid var(--green);border-radius:0 10px 10px 0;background:rgba(23,83,58,.18);color:#dcebe3;font-size:14px}.quick-card{align-self:stretch;padding:19px;border:1px solid rgba(244,198,95,.34);border-radius:17px;background:rgba(4,8,6,.72)}.quick-card h2{margin:0 0 12px;color:var(--gold2);font-size:18px}.quick-card dl{margin:0}.quick-card div{display:flex;justify-content:space-between;gap:16px;padding:8px 0;border-top:1px solid rgba(244,198,95,.13)}.quick-card div:first-of-type{border-top:0}.quick-card dt{color:#aaa69e}.quick-card dd{margin:0;text-align:right;font-weight:700;color:#fff}
.rules-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:18px;margin-top:18px}.rules-toc{position:sticky;top:92px;align-self:start;padding:18px;border:1px solid rgba(244,180,61,.42);border-radius:17px;background:rgba(5,9,7,.91);box-shadow:0 12px 30px rgba(0,0,0,.25)}.rules-toc h2{margin:0 0 10px;font-size:16px;color:var(--gold2)}.rules-toc ol{margin:0;padding-left:22px}.rules-toc li{margin:7px 0;color:#aaa}.rules-toc a{color:#e1ddd4;font-size:14px}.rules-toc a:hover{color:var(--gold2)}.back-game{display:flex;justify-content:center;margin-top:16px;padding:11px 14px;border:1px solid var(--gold);border-radius:999px;color:#fff;font-weight:800;background:rgba(244,198,95,.08)}.back-game:hover{background:rgba(244,198,95,.16)}
.rules-content{display:flex;flex-direction:column;gap:14px}.rule-section{scroll-margin-top:94px;padding:24px 26px;border:1px solid rgba(244,180,61,.34);border-radius:18px;background:var(--panel);box-shadow:0 10px 30px rgba(0,0,0,.2)}.rule-section h2{margin:0 0 10px;font-family:var(--display);font-size:25px;color:#f7d98b}.rule-section h3{margin:20px 0 7px;color:#fff;font-size:18px}.rule-section p{margin:8px 0;color:#ddd}.rule-section ul,.rule-section ol{margin:10px 0;padding-left:24px}.rule-section li{margin:8px 0;color:#ddd}.rule-section strong{color:#fff}.rule-number{display:inline-grid;place-items:center;width:34px;height:34px;margin-right:9px;border:1px solid rgba(244,198,95,.65);border-radius:50%;background:rgba(244,198,95,.1);color:var(--gold2);font-size:15px;vertical-align:3px}
.rule-callout{margin:16px 0 4px;padding:14px 16px;border:1px solid rgba(41,226,147,.36);border-radius:13px;background:rgba(15,68,47,.18)}.rule-callout--gold{border-color:rgba(244,198,95,.45);background:rgba(78,52,17,.18)}.rule-callout--red{border-color:rgba(255,90,69,.4);background:rgba(86,24,20,.16)}.rule-callout strong{color:var(--gold2)}.rule-callout--red strong{color:#ff9d8d}
.rule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.mini-rule{padding:15px;border:1px solid rgba(244,198,95,.2);border-radius:13px;background:rgba(22,16,9,.55)}.mini-rule h3{margin:0 0 6px;font-size:16px;color:#fff}.mini-rule p{margin:0;font-size:14px;color:#ccc}
.rule-table-wrap{overflow-x:auto;margin-top:14px;border:1px solid rgba(244,198,95,.2);border-radius:13px}.rule-table{width:100%;border-collapse:collapse;min-width:560px}.rule-table th,.rule-table td{padding:12px 14px;text-align:left;border-bottom:1px solid rgba(244,198,95,.13)}.rule-table th{background:rgba(244,198,95,.08);color:var(--gold2);font-size:13px;text-transform:uppercase;letter-spacing:.05em}.rule-table td{color:#ddd}.rule-table tr:last-child td{border-bottom:0}
.faq details{border-top:1px solid rgba(244,198,95,.16);padding:13px 0}.faq details:first-of-type{border-top:0}.faq summary{cursor:pointer;font-weight:800;color:#fff}.faq p{margin:8px 0 0;color:#ccc}
.rules-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:18px;padding:18px;border:1px solid rgba(244,180,61,.35);border-radius:17px;background:rgba(5,9,7,.9)}.rules-bottom__text strong{display:block;color:var(--gold2);font-size:17px}.rules-bottom__text span{color:#bbb;font-size:14px}.rules-bottom__actions{display:flex;flex-wrap:wrap;gap:10px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:999px;font-weight:800}.button--gold{background:linear-gradient(180deg,#ffe49b,#efad32);color:#211302}.button--outline{border:1px solid rgba(244,198,95,.72);background:rgba(244,198,95,.06);color:#fff}.button:hover{filter:brightness(1.07)}
.rules-footer{border-top:1px solid rgba(244,180,61,.28);background:rgba(3,5,4,.95)}.rules-footer__inner{width:min(1240px,calc(100% - 40px));margin:auto;display:flex;justify-content:space-between;gap:24px;padding:24px 0;color:#bdb8af;font-size:13px}.rules-footer nav{display:flex;gap:16px;flex-wrap:wrap}.rules-footer a:hover{color:var(--gold2)}
@media(max-width:900px){.rules-content{min-width:0}.rules-header__inner{min-height:64px;flex-wrap:wrap;padding:10px 0}.rules-logo{font-size:32px}.rules-nav{width:100%;margin-left:0;overflow-x:auto;padding-bottom:4px}.rules-nav ul{gap:18px;white-space:nowrap}.rules-hero{grid-template-columns:1fr}.rules-layout{grid-template-columns:minmax(0,1fr)}.rules-toc{position:static}.rules-toc ol{columns:2}.rule-grid{grid-template-columns:1fr}}
@media(max-width:620px){.rules-shell,.rules-header__inner,.rules-footer__inner{width:calc(100% - 24px)}.rules-shell{padding-top:12px}.rules-hero{padding:22px 18px;border-radius:18px}.rules-lead{font-size:16px}.rules-toc ol{columns:1}.rule-section{padding:20px 17px}.rule-section h2{font-size:22px}.rules-bottom,.rules-footer__inner{flex-direction:column}.rules-bottom__actions{width:100%}.button{flex:1}.rules-nav ul{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Tysiąc Rules Premium R1 — aligned with Tysiąc game hero */
html{
  background:#04110d;
}
body{
  background:
    radial-gradient(circle at 18% 8%,rgba(16,98,76,.16),transparent 30%),
    radial-gradient(circle at 84% 18%,rgba(8,79,82,.12),transparent 28%),
    linear-gradient(180deg,#040b08 0%,#06120e 42%,#071812 100%);
}
body::before{
  background:
    radial-gradient(circle at 22% 6%,rgba(16,92,69,.16),transparent 30%),
    linear-gradient(180deg,#040b08 0%,#06130f 48%,#071913 100%);
  filter:none;
}
body::after{
  background:linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.12) 42%,rgba(0,0,0,.22));
}

.rules-shell{
  width:min(1280px,calc(100% - 44px));
  padding-top:22px;
}

/* premium hero: same visual architecture as the Tysiąc game page */
.rules-hero.rules-hero--premium{
  display:grid;
  grid-template-columns:46% 54%;
  min-height:430px;
  gap:0;
  padding:0;
  border:0;
  border-radius:22px;
  overflow:hidden;
  background:
    radial-gradient(circle at 18% 32%,rgba(20,101,76,.22),transparent 34%),
    radial-gradient(circle at 78% 18%,rgba(13,91,94,.16),transparent 30%),
    linear-gradient(135deg,#07140f 0%,#082019 42%,#07191a 72%,#050b09 100%);
  box-shadow:0 24px 58px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.025);
}
.rules-hero__visual{
  position:relative;
  min-height:430px;
  display:grid;
  place-items:center;
  padding:24px;
  background:
    radial-gradient(circle at 42% 45%,rgba(22,111,77,.20),transparent 56%),
    linear-gradient(145deg,rgba(5,28,20,.88),rgba(5,16,14,.72));
}
.rules-hero__visual::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,transparent 72%,rgba(2,8,6,.42));
}
.rules-card-scene{
  position:relative;
  z-index:1;
  width:min(100%,500px);
  aspect-ratio:1.08;
  border:0;
  border-radius:20px;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 44%,rgba(49,108,71,.92),rgba(10,49,33,.95) 58%,#092719 100%);
  box-shadow:0 20px 42px rgba(0,0,0,.42),inset 0 0 60px rgba(0,0,0,.26);
}
.rules-score-board{
  position:absolute;
  left:18px;
  top:18px;
  min-width:108px;
  padding:10px 12px;
  border:0;
  border-radius:11px;
  background:rgba(7,12,9,.76);
  box-shadow:0 8px 18px rgba(0,0,0,.28);
}
.rules-score-board span{
  display:block;
  color:#c9c5bb;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.rules-score-board strong{
  display:block;
  margin-top:2px;
  color:#ffe29a;
  font:800 24px/1 var(--display);
}
.rules-marriage-badges{
  position:absolute;
  right:18px;
  top:18px;
  display:grid;
  grid-template-columns:repeat(2,34px);
  gap:6px;
}
.rules-marriage-badges span{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border:0;
  border-radius:9px;
  background:rgba(5,8,6,.72);
  box-shadow:0 4px 10px rgba(0,0,0,.18);
  font-size:20px;
}
.rules-marriage-badges .red{color:#ff5b5b}
.rules-card-fan{
  position:absolute;
  left:50%;
  top:51%;
  width:310px;
  height:230px;
  transform:translate(-50%,-50%);
}
.rules-playing-card{
  position:absolute;
  left:50%;
  top:50%;
  width:112px;
  height:166px;
  padding:9px;
  border-radius:12px;
  background:linear-gradient(145deg,#fffdf8,#e9e4d8);
  color:#151515;
  box-shadow:0 14px 22px rgba(0,0,0,.36);
  transform-origin:50% 92%;
}
.rules-playing-card.red{color:#c91e2d}
.rules-playing-card .rank{display:block;font:800 25px/1 var(--display)}
.rules-playing-card .suit{display:block;font-size:22px;line-height:1.05}
.rules-playing-card .big-suit{
  position:absolute;
  left:50%;
  top:54%;
  transform:translate(-50%,-50%);
  font-size:58px;
  opacity:.92;
}
.rules-playing-card.rc1{transform:translate(-50%,-50%) rotate(-25deg) translateY(14px)}
.rules-playing-card.rc2{transform:translate(-50%,-50%) rotate(-13deg) translateY(3px)}
.rules-playing-card.rc3{transform:translate(-50%,-50%) rotate(0deg) translateY(-4px)}
.rules-playing-card.rc4{transform:translate(-50%,-50%) rotate(13deg) translateY(3px)}
.rules-playing-card.rc5{transform:translate(-50%,-50%) rotate(25deg) translateY(14px)}
.rules-table-caption{
  position:absolute;
  left:50%;
  bottom:18px;
  transform:translateX(-50%);
  white-space:nowrap;
  padding:7px 13px;
  border:0;
  border-radius:999px;
  background:rgba(5,9,7,.74);
  box-shadow:0 5px 14px rgba(0,0,0,.2);
  color:#e9dfc6;
  font-size:12px;
  font-weight:800;
}

.rules-hero__copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:34px 34px 30px;
  background:
    radial-gradient(circle at 0 100%,rgba(27,180,133,.10),transparent 42%),
    linear-gradient(145deg,#0a5b49 0%,#075141 52%,#063f34 100%);
}
.rules-kicker{
  margin:0 0 8px;
  color:#f4c65f;
  font-size:13px;
  letter-spacing:.09em;
}
.rules-hero h1{
  margin:0;
  max-width:720px;
  color:#f8dfa0;
  font-size:clamp(42px,4.8vw,66px);
  line-height:.98;
  letter-spacing:-.04em;
}
.rules-lead{
  max-width:760px;
  margin:16px 0 0;
  color:#f0f3ef;
  font-size:17px;
  line-height:1.55;
}
.rules-facts{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:8px;
  list-style:none;
  margin:22px 0 18px;
  padding:0;
}
.rules-facts li{
  min-width:0;
  padding:2px 10px;
  text-align:center;
  border-right:1px solid rgba(255,255,255,.14);
}
.rules-facts li:last-child{border-right:0}
.rules-facts span{
  display:block;
  min-height:30px;
  margin-bottom:4px;
  color:#f4c65f;
  font-size:27px;
  font-weight:800;
  line-height:1;
}
.rules-facts strong{
  display:block;
  color:#fff;
  font-size:13px;
  font-weight:700;
}
.rules-note{
  margin:2px 0 0;
  padding:13px 15px;
  border:0;
  border-left:3px solid #29e293;
  border-radius:0 12px 12px 0;
  background:rgba(4,35,27,.48);
  color:#e2eee8;
  font-size:13px;
}
.rules-hero__actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:18px;
}
.rules-primary-action,
.rules-secondary-action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:0 22px;
  border:0;
  border-radius:999px;
  font-weight:800;
}
.rules-primary-action{
  background:linear-gradient(180deg,#ffe59b,#f3ae32);
  color:#241503;
  box-shadow:0 8px 20px rgba(0,0,0,.18);
}
.rules-secondary-action{
  background:linear-gradient(135deg,#0d5a4d 0%,#117462 100%);
  color:#fff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 8px 20px rgba(0,0,0,.18);
}
.rules-primary-action:hover,
.rules-secondary-action:hover{filter:brightness(1.06)}

/* content: remove boxy framing and turn the page into one premium reading surface */
.rules-layout{
  grid-template-columns:230px minmax(0,1fr);
  gap:28px;
  margin-top:30px;
}
.rules-toc{
  top:96px;
  padding:18px 0 18px 18px;
  border:0;
  border-left:1px solid rgba(244,198,95,.22);
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.rules-toc h2{
  margin-bottom:13px;
  color:#f5d77f;
  font-size:15px;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.rules-toc ol{padding-left:20px}
.rules-toc li{margin:8px 0;color:#858f89}
.rules-toc a{color:#d6ddd8}
.back-game{
  justify-content:flex-start;
  margin-top:18px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:#57d7b5!important;
}
.back-game:hover{background:transparent;color:#8ce8d7!important}

.rules-content{
  gap:0;
  border-radius:22px;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 0%,rgba(20,118,91,.08),transparent 30%),
    linear-gradient(180deg,rgba(7,22,17,.94),rgba(4,14,11,.97));
  box-shadow:0 20px 48px rgba(0,0,0,.24);
}
.rule-section{
  position:relative;
  padding:34px 38px 36px;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.rule-section+.rule-section{
  border-top:1px solid rgba(255,255,255,.07);
}
.rule-section h2{
  display:flex;
  align-items:center;
  gap:12px;
  margin:0 0 14px;
  color:#f8dc91;
  font-size:29px;
  letter-spacing:-.02em;
}
.rule-number{
  flex:0 0 auto;
  width:38px;
  height:38px;
  margin:0;
  border:0;
  border-radius:50%;
  background:linear-gradient(135deg,rgba(244,198,95,.18),rgba(244,198,95,.08));
  box-shadow:inset 0 0 0 1px rgba(244,198,95,.28);
  color:#ffe29a;
}
.rule-section p,
.rule-section li{
  color:#d7ddd9;
  font-size:16px;
  line-height:1.68;
}
.rule-section h3{
  margin-top:24px;
  color:#f4f7f4;
}
.rule-callout{
  margin-top:20px;
  padding:15px 17px;
  border:0;
  border-left:3px solid #29e293;
  border-radius:0 12px 12px 0;
  background:rgba(15,68,47,.22);
}
.rule-callout--gold{
  border-left-color:#f4c65f;
  background:rgba(78,52,17,.18);
}
.rule-callout--red{
  border-left-color:#ff6b57;
  background:rgba(86,24,20,.16);
}
.rule-table-wrap{
  margin-top:18px;
  border:0;
  border-radius:14px;
  overflow-x:auto;
  background:rgba(2,10,7,.46);
}
.rule-table th{
  background:rgba(244,198,95,.075);
}
.rule-table th,
.rule-table td{
  border-bottom-color:rgba(255,255,255,.07);
}
.faq details{
  border-top-color:rgba(255,255,255,.08);
}
.rules-bottom{
  margin-top:28px;
  padding:22px 24px;
  border:0;
  border-radius:18px;
  background:
    radial-gradient(circle at 0 100%,rgba(27,180,133,.08),transparent 38%),
    linear-gradient(145deg,rgba(8,34,27,.94),rgba(4,16,13,.96));
  box-shadow:0 14px 34px rgba(0,0,0,.18);
}
.button--outline{
  border:0;
  background:linear-gradient(135deg,#0d5a4d 0%,#117462 100%);
}

@media(max-width:1000px){
  .rules-hero.rules-hero--premium{grid-template-columns:1fr}
  .rules-hero__visual{min-height:390px}
  .rules-hero__copy{padding:30px}
}
@media(max-width:900px){
  .rules-layout{gap:18px}
  .rules-toc{
    padding:18px;
    border-left:0;
    border-radius:16px;
    background:rgba(6,24,18,.66);
  }
}
@media(max-width:620px){
  .rules-shell{width:calc(100% - 20px)}
  .rules-hero__visual{min-height:330px;padding:14px}
  .rules-card-scene{width:100%}
  .rules-card-fan{transform:translate(-50%,-50%) scale(.82)}
  .rules-score-board{transform:scale(.88);transform-origin:top left}
  .rules-marriage-badges{transform:scale(.88);transform-origin:top right}
  .rules-hero__copy{padding:24px 20px}
  .rules-hero h1{font-size:42px}
  .rules-lead{font-size:15px}
  .rules-facts{grid-template-columns:repeat(2,1fr);row-gap:14px}
  .rules-facts li:nth-child(2){border-right:0}
  .rules-content{border-radius:16px}
  .rule-section{padding:26px 19px 28px}
  .rule-section h2{font-size:23px}
  .rules-hero__actions{display:grid}
}


/* Tysiąc Rules Right Panel R1 */
.rules-shell{
  width:min(1480px,calc(100% - 44px));
}
.rules-page-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 310px;
  gap:22px;
  align-items:start;
}
.rules-main-column{
  min-width:0;
}
.rules-side-panel{
  display:flex;
  flex-direction:column;
  gap:16px;
  min-width:0;
  position:static;
}
.rules-side-card{
  padding:20px;
  border:0;
  border-radius:18px;
  background:
    radial-gradient(circle at 0 0,rgba(25,132,105,.10),transparent 42%),
    linear-gradient(145deg,rgba(7,35,28,.96),rgba(4,18,15,.98));
  box-shadow:0 16px 34px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.025);
}
.rules-side-card h2{
  margin:0 0 10px;
  color:#f5dc95;
  font-family:var(--display);
  font-size:21px;
}
.rules-side-eyebrow{
  margin:0 0 6px!important;
  color:#58d9b8!important;
  font-size:11px!important;
  font-weight:800!important;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.rules-side-facts{
  margin:12px 0 16px;
}
.rules-side-facts div{
  display:flex;
  justify-content:space-between;
  gap:14px;
  padding:9px 0;
  border-top:1px solid rgba(255,255,255,.07);
}
.rules-side-facts div:first-child{border-top:0}
.rules-side-facts dt{
  color:#bfc8c2;
}
.rules-side-facts dd{
  margin:0;
  color:#fff;
  font-weight:800;
  text-align:right;
}
.rules-side-primary{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  border-radius:999px;
  background:linear-gradient(135deg,#0e6555,#12816d);
  color:#fff;
  font-weight:800;
  box-shadow:0 8px 18px rgba(0,0,0,.16);
}
.rules-side-primary:hover{filter:brightness(1.06)}
.rules-side-nav>a{
  display:grid;
  grid-template-columns:34px 1fr;
  align-items:center;
  gap:10px;
  padding:10px 0;
  border-top:1px solid rgba(255,255,255,.07);
}
.rules-side-nav>a:first-of-type{border-top:0}
.rules-side-nav span{
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border-radius:50%;
  background:rgba(244,198,95,.10);
  color:#e8c86f;
  font-size:11px;
  font-weight:800;
}
.rules-side-nav strong{
  color:#f0f3f0;
  font-size:13px;
}
.rules-side-nav a:hover strong{color:#ffe09a}
.rules-side-related>a{
  display:grid;
  grid-template-columns:64px 1fr;
  gap:12px;
  align-items:center;
  padding:12px 0;
  border-top:1px solid rgba(255,255,255,.07);
}
.rules-side-related>a:first-of-type{margin-top:2px}
.rules-side-thumb{
  display:grid;
  place-items:center;
  width:64px;
  height:46px;
  border-radius:10px;
  color:#f7e3a5;
  font-size:25px;
  font-weight:800;
  box-shadow:inset 0 0 16px rgba(0,0,0,.22);
}
.rules-side-thumb--poker{
  background:radial-gradient(circle at 50% 42%,rgba(18,111,76,.85),rgba(4,38,27,.98));
}
.rules-side-thumb--warcaby{
  background:
    conic-gradient(#d9b06c 25%,#4d2d1f 0 50%,#d9b06c 0 75%,#4d2d1f 0) 0 0/22px 22px;
  color:#161616;
}
.rules-side-thumb--gomoku{
  background-color:#c89d5b;
  background-image:
    repeating-linear-gradient(to right,transparent 0 12px,rgba(63,40,20,.72) 12px 13px),
    repeating-linear-gradient(to bottom,transparent 0 12px,rgba(63,40,20,.72) 12px 13px);
  color:#111;
}
.rules-side-related strong{
  display:block;
  color:#fff;
  font-size:14px;
}
.rules-side-related small{
  display:block;
  margin-top:2px;
  color:#bfc8c2;
  font-size:11px;
  line-height:1.35;
}
.rules-side-related a:hover{filter:brightness(1.08)}

@media(max-width:1320px){
  .rules-page-grid{
    grid-template-columns:1fr;
  }
  .rules-side-panel{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .rules-side-related{
    grid-column:1/-1;
  }
}
@media(max-width:760px){
  .rules-side-panel{grid-template-columns:1fr}
  .rules-side-related{grid-column:auto}
}


/* Tysiąc Rules Header Actions R1 */
.sprite{position:absolute;width:0;height:0;overflow:hidden}
.rules-header__inner{
  width:min(1510px,calc(100% - 48px));
  min-height:80px;
}
.rules-nav{
  margin-left:auto;
}
.rules-header-actions{
  display:flex;
  align-items:center;
  gap:16px;
  margin-left:26px;
}
.rules-head-search{
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  padding:0;
  border:1px solid rgba(244,198,95,.8);
  border-radius:50%;
  background:#070907;
  color:#fff;
  cursor:pointer;
}
.rules-head-search svg{
  width:22px;
  height:22px;
}
.rules-head-btn{
  height:48px;
  padding:0 26px;
  border-radius:999px;
  font-family:var(--sans);
  font-size:15px;
  font-weight:700;
  white-space:nowrap;
  cursor:pointer;
}
.rules-head-btn--outline{
  border:1px solid var(--gold);
  background:#050706;
  color:#fff;
}
.rules-head-btn--gold{
  border:0;
  background:linear-gradient(180deg,#ffe9ad,#f2b43f);
  color:#201202;
  box-shadow:0 0 18px rgba(255,186,67,.28);
}
.rules-head-search:hover,
.rules-head-btn:hover{
  filter:brightness(1.08);
}

@media(max-width:1180px){
  .rules-header__inner{
    width:calc(100% - 32px);
    min-height:66px;
    gap:18px;
  }
  .rules-nav ul{gap:14px}
  .rules-header-actions{
    gap:10px;
    margin-left:12px;
  }
  .rules-head-search{
    width:42px;
    height:42px;
  }
  .rules-head-btn{
    height:42px;
    padding:0 18px;
    font-size:14px;
  }
}
@media(max-width:980px){
  .rules-header__inner{
    flex-wrap:wrap;
    padding:10px 0;
  }
  .rules-nav{
    order:3;
    width:100%;
    overflow-x:auto;
  }
  .rules-nav ul{
    justify-content:flex-start;
    white-space:nowrap;
  }
  .rules-header-actions{
    margin-left:auto;
  }
}
@media(max-width:620px){
  .rules-header__inner{width:calc(100% - 24px)}
  .rules-head-btn{
    padding:0 13px;
    font-size:13px;
  }
  .rules-head-search{
    width:40px;
    height:40px;
  }
}
@media(max-width:500px){
  .rules-header-actions{
    width:100%;
    display:grid;
    grid-template-columns:44px 1fr 1fr;
    margin-left:0;
  }
  .rules-head-search{
    width:44px;
    height:44px;
  }
  .rules-head-btn{
    width:100%;
    padding:0 10px;
  }
}


/* Global Header Frameless R1 */
.site-header,
.rules-header{
  border:0!important;
  border-bottom:0!important;
}
.site-header .head-icon,
.site-header .head-btn,
.site-header .head-btn--outline,
.site-header .head-btn--gold,
.site-header .icon-btn,
.site-header .search-btn,
.site-header .btn--head,
.site-header .btn--outline,
.site-header .dropdown,
.site-header .menu-panel,
.site-header .soon,
.rules-header .rules-head-search,
.rules-header .rules-head-btn,
.rules-header .rules-head-btn--outline,
.rules-header .rules-head-btn--gold{
  border:0!important;
}
.site-header .menu-panel{
  border-bottom:0!important;
}


/* GLOBAL SUBPAGE BACKGROUND — match Poradniki R1 */
html,
body{background:#050706!important}
body::before{
  content:""!important;
  position:fixed!important;
  inset:0!important;
  z-index:-2!important;
  background:url("/assets/img/hero-bg.webp") center/cover no-repeat!important;
  filter:saturate(1.25) brightness(.9)!important;
}
body::after{
  content:""!important;
  position:fixed!important;
  inset:0!important;
  z-index:-1!important;
  background:linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.22) 34%,rgba(0,0,0,.4))!important;
  pointer-events:none!important;
}


/* GLOBAL SUBPAGE TEAL BACKGROUND — exact Poradniki R16 */
html{
  background:#041713!important;
}
body{
  background:
    radial-gradient(circle at 18% 8%,rgba(16,104,91,.16),transparent 30%),
    radial-gradient(circle at 82% 16%,rgba(9,87,92,.13),transparent 26%),
    linear-gradient(180deg,#03110e 0%,#041814 42%,#05211c 100%)!important;
}
body::before{
  content:""!important;
  position:fixed!important;
  inset:0!important;
  z-index:-2!important;
  background:
    radial-gradient(circle at 16% 10%,rgba(18,120,102,.16),transparent 30%),
    radial-gradient(circle at 84% 20%,rgba(8,92,104,.12),transparent 27%),
    linear-gradient(180deg,#03110e 0%,#041914 46%,#05231e 100%)!important;
  filter:none!important;
}
body::after{
  content:""!important;
  position:fixed!important;
  inset:0!important;
  z-index:-1!important;
  background:
    linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.10) 40%,rgba(0,0,0,.20))!important;
  pointer-events:none!important;
}
.page-shell,
.page-grid{
  background:transparent!important;
}


/* Poker rules hero — frameless premium R2 */
.poker-rules-page .rules-hero{
  border:0!important;
  outline:0!important;
  box-shadow:0 24px 54px rgba(0,0,0,.24)!important;
  background:
    radial-gradient(circle at 78% 18%,rgba(244,198,95,.055),transparent 28%),
    radial-gradient(circle at 12% 88%,rgba(34,192,151,.08),transparent 34%),
    linear-gradient(135deg,#08251f 0%,#0a3028 48%,#071c18 100%)!important;
}
.poker-rules-page .rules-hero::before,
.poker-rules-page .rules-hero::after{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}
.poker-rules-page .quick-card{
  border:0!important;
  outline:0!important;
  background:
    linear-gradient(180deg,rgba(4,20,17,.92),rgba(5,31,25,.86))!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.025),
    0 14px 28px rgba(0,0,0,.18)!important;
}
.poker-rules-page .quick-card div{
  border-top:0!important;
  position:relative;
}
/* R20 — legacy hairline separator on ::before removed: it out-specified the icon ::before (rows 2-5 icons overlapped labels); the ::after separator below is the single source. */
.poker-rules-page .rules-note{
  border:0!important;
  border-left:0!important;
  outline:0!important;
  border-radius:14px!important;
  background:
    linear-gradient(90deg,rgba(9,67,54,.82),rgba(7,48,40,.72))!important;
  box-shadow:none!important;
  color:#e5f1ec!important;
}
.poker-rules-page .rules-note strong{
  color:#f4d98c!important;
}
@media(max-width:620px){
  .poker-rules-page .rules-hero{
    border-radius:20px!important;
  }
}


/* Poker rules page width + header parity R3 */
.poker-rules-page .rules-shell{
  width:min(1360px,calc(100% - 64px))!important;
}
.poker-rules-page .rules-header__inner{
  width:min(1510px,calc(100% - 48px));
}
.poker-rules-page .rules-header-actions{
  flex:0 0 auto;
}
@media(max-width:1180px){
  .poker-rules-page .rules-shell{
    width:min(1120px,calc(100% - 32px))!important;
  }
}
@media(max-width:620px){
  .poker-rules-page .rules-shell{
    width:calc(100% - 20px)!important;
  }
}


/* Unified full footer for rules subpages R1 */
.site-footer{
  margin-top:4px;
  border-top:1px solid rgba(244,180,61,.35);
  background:rgba(3,5,4,.94);
}
.footer-inner{
  width:min(1360px,calc(100% - 64px));
  margin:auto;
  display:grid;
  grid-template-columns:1.15fr .8fr 1fr 1.35fr;
  gap:30px;
  padding:30px 0 22px;
}
.footer-logo{
  font-family:var(--display);
  font-size:36px;
  font-weight:800;
  letter-spacing:-.05em;
  color:#fff;
  text-decoration:none;
}
.footer-logo span{color:#f21a34}
.footer-brand p,.footer-news p{color:#c9c5bc;font-size:14px}
.footer-col h2,.footer-news h2{font-size:14px;margin:0;color:#fff}
.footer-col ul{list-style:none;margin:8px 0 0;padding:0}
.footer-col li{margin:6px 0}
.footer-col a,.footer-col button,.footer-links button{
  border:0;
  background:none;
  padding:0;
  color:#d8d5cd;
  cursor:pointer;
  font:inherit;
  text-decoration:none;
}
.footer-col a:hover,.footer-col button:hover,.footer-links button:hover{color:#f4c65f}
.footer-news form{display:flex;gap:8px;margin-top:10px}
.footer-news input{
  flex:1;
  min-width:0;
  height:38px;
  padding:0 14px;
  border:1px solid rgba(244,198,95,.35);
  border-radius:999px;
  background:#080a08;
  color:#fff;
}
.footer-news form button{
  height:38px;
  padding:0 18px;
  border:0;
  border-radius:999px;
  background:linear-gradient(180deg,#ffe49d,#f0ad32);
  color:#201202;
  font-weight:800;
  cursor:pointer;
}
.footer-bottom{
  width:min(1360px,calc(100% - 64px));
  margin:auto;
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding:16px 0 24px;
  border-top:1px solid rgba(244,180,61,.18);
  color:#c8c4ba;
  font-size:13px;
}
.footer-bottom p{margin:0}
.footer-links{display:flex;gap:18px}
@media(max-width:1180px){
  .footer-inner,.footer-bottom{width:calc(100% - 32px)}
}
@media(max-width:820px){
  .footer-inner{grid-template-columns:1fr 1fr}
  .footer-news{grid-column:1/-1}
}
@media(max-width:560px){
  .footer-inner{grid-template-columns:1fr}
  .footer-bottom{flex-direction:column}
  .footer-news form{flex-direction:column}
  .footer-news form button{width:100%}
}


/* Gomoku rules premium architecture R2 */
.gomoku-rules-page .rules-shell{
  width:min(1360px,calc(100% - 64px))!important;
}
.gomoku-rules-page .rules-header__inner{
  width:min(1360px,calc(100% - 48px))!important;
}
.gomoku-rules-page .rules-nav{
  margin-left:auto;
}
.gomoku-rules-page .rules-header-actions{
  flex:0 0 auto;
}

/* Frameless upper section */
.gomoku-rules-page .gomoku-rules-hero{
  grid-template-columns:1fr!important;
  gap:0!important;
  padding:34px 36px!important;
  border:0!important;
  outline:0!important;
  border-radius:24px!important;
  background:
    radial-gradient(circle at 82% 10%,rgba(43,190,151,.11),transparent 28%),
    radial-gradient(circle at 10% 92%,rgba(23,121,100,.12),transparent 35%),
    linear-gradient(135deg,#08271f 0%,#0a3a30 52%,#061f1a 100%)!important;
  box-shadow:0 22px 48px rgba(0,0,0,.24)!important;
}
.gomoku-rules-page .gomoku-rules-hero::before,
.gomoku-rules-page .gomoku-rules-hero::after{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}
.gomoku-rules-page .gomoku-rules-hero .rules-kicker{
  color:#66d9bc!important;
}
.gomoku-rules-page .gomoku-rules-hero h1{
  color:#f4d994!important;
}
.gomoku-rules-page .gomoku-rules-hero .rules-lead{
  max-width:900px;
  color:#edf4f0!important;
}
.gomoku-rules-page .gomoku-rules-hero .rules-note{
  max-width:980px;
  border:0!important;
  border-left:0!important;
  border-radius:14px!important;
  background:linear-gradient(90deg,rgba(7,78,62,.82),rgba(7,54,45,.72))!important;
  box-shadow:none!important;
  color:#e4f1ec!important;
}
.gomoku-rules-page .gomoku-rules-hero .rules-note strong{
  color:#f3d98d!important;
}

/* Main architecture: balanced 1360px canvas + premium right rail */
.gomoku-rules-page .gomoku-rules-page-grid{
  grid-template-columns:minmax(0,1fr) 300px!important;
  gap:20px!important;
}
.gomoku-rules-page .gomoku-rules-content-layout{
  display:block!important;
  margin-top:18px;
}
.gomoku-rules-page .gomoku-rules-content-layout .rules-content{
  min-width:0;
}
.gomoku-rules-page .gomoku-rules-side-panel{
  position:static;
  top:auto;
  align-self:start;
}
.gomoku-rules-page .rules-side-card{
  border:0!important;
  outline:0!important;
  background:
    radial-gradient(circle at 0 0,rgba(28,156,126,.10),transparent 38%),
    linear-gradient(145deg,rgba(6,39,31,.97),rgba(3,22,18,.98))!important;
  box-shadow:0 16px 32px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.025)!important;
}
.gomoku-rules-page .rules-side-eyebrow{
  color:#63d8bb!important;
}
.gomoku-rules-page .rules-side-card h2{
  color:#f4d994!important;
}
.gomoku-rules-page .rules-side-primary{
  background:linear-gradient(135deg,#0d6a57,#118a70)!important;
  box-shadow:0 10px 20px rgba(0,0,0,.16)!important;
}
.gomoku-rules-page .rules-side-facts div,
.gomoku-rules-page .rules-side-nav>a,
.gomoku-rules-page .rules-side-related>a{
  border-color:rgba(116,219,191,.09)!important;
}
.gomoku-rules-page .rules-side-nav span{
  background:rgba(72,198,163,.11)!important;
  color:#77e0c4!important;
}
.gomoku-rules-page .rules-side-related>a:nth-of-type(2) .rules-side-thumb{
  background:linear-gradient(145deg,#4a161b,#28100f)!important;
  color:#ff777f!important;
}

/* Prevent lower content from looking wider than the rest of the site */
.gomoku-rules-page .rule-section,
.gomoku-rules-page .rules-bottom{
  max-width:100%;
}
.gomoku-rules-page .rules-bottom{
  border:0!important;
  background:linear-gradient(135deg,rgba(7,42,34,.92),rgba(4,24,20,.94))!important;
  box-shadow:0 14px 28px rgba(0,0,0,.14)!important;
}

@media(max-width:1180px){
  .gomoku-rules-page .rules-shell{
    width:min(1120px,calc(100% - 32px))!important;
  }
  .gomoku-rules-page .gomoku-rules-page-grid{
    grid-template-columns:1fr!important;
  }
  .gomoku-rules-page .gomoku-rules-side-panel{
    position:static;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .gomoku-rules-page .rules-side-related{
    grid-column:1/-1;
  }
}
@media(max-width:760px){
  .gomoku-rules-page .gomoku-rules-side-panel{
    grid-template-columns:1fr!important;
  }
  .gomoku-rules-page .rules-side-related{
    grid-column:auto;
  }
}
@media(max-width:620px){
  .gomoku-rules-page .rules-shell{
    width:calc(100% - 20px)!important;
  }
  .gomoku-rules-page .gomoku-rules-hero{
    padding:24px 20px!important;
    border-radius:20px!important;
  }
}


/* Warcaby rules premium architecture R1 */
.warcaby-rules-page .rules-shell{
  width:min(1360px,calc(100% - 48px))!important;
}
.warcaby-rules-page .rules-header__inner{
  width:min(1510px,calc(100% - 48px))!important;
}

/* Hero: separate premium content field + right summary rail, no gold frame. */
.warcaby-rules-page .rules-hero{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 310px!important;
  gap:18px!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.warcaby-rules-page .rules-hero>div{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:338px;
  padding:30px 32px;
  border:0!important;
  border-radius:20px;
  background:
    linear-gradient(90deg,rgba(5,57,47,.98) 0%,rgba(5,55,46,.96) 48%,rgba(4,49,41,.80) 66%,rgba(3,34,29,.56) 100%),
    url("/assets/img/warcaby-board.webp") right center/58% auto no-repeat,
    linear-gradient(135deg,#083a30 0%,#0b4a3c 50%,#06271f 100%);
  box-shadow:0 20px 44px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.025);
}
.warcaby-rules-page .rules-hero>div::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    radial-gradient(circle at 9% 10%,rgba(72,215,177,.08),transparent 34%),
    linear-gradient(90deg,transparent 55%,rgba(0,0,0,.12));
  pointer-events:none;
}
.warcaby-rules-page .rules-kicker{
  color:#f0c85f!important;
}
.warcaby-rules-page .rules-hero h1{
  max-width:650px;
  color:#f6dfa2!important;
  font-size:clamp(42px,4.7vw,64px)!important;
  letter-spacing:-.035em;
}
.warcaby-rules-page .rules-lead{
  max-width:760px;
  color:#edf4f0!important;
  line-height:1.58;
}
.warcaby-rules-page .rules-note{
  position:relative;
  max-width:900px;
  margin-top:16px!important;
  padding:13px 15px 13px 50px!important;
  border:0!important;
  border-left:0!important;
  border-radius:12px!important;
  background:linear-gradient(90deg,rgba(9,91,72,.82),rgba(7,63,52,.72))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
  color:#e6f2ed!important;
}
.warcaby-rules-page .rules-note::before{
  content:"i";
  position:absolute;
  left:16px;
  top:50%;
  transform:translateY(-50%);
  display:grid;
  place-items:center;
  width:24px;
  height:24px;
  border-radius:50%;
  background:rgba(92,225,190,.16);
  color:#8ce9d1;
  font-weight:900;
}
.warcaby-rules-page .rules-note strong{color:#fff1c4!important}

/* Right summary panel in the same teal family as the page. */
.warcaby-rules-page .quick-card{
  align-self:stretch!important;
  padding:23px 20px!important;
  border:0!important;
  outline:0!important;
  border-radius:20px!important;
  background:
    radial-gradient(circle at 12% 0%,rgba(41,175,141,.13),transparent 38%),
    linear-gradient(155deg,rgba(7,49,39,.98),rgba(3,26,22,.99))!important;
  box-shadow:0 20px 44px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.025)!important;
}
.warcaby-rules-page .quick-card h2{
  margin:0 0 14px!important;
  color:#f5d98e!important;
  font:800 21px/1.2 var(--display);
}
.warcaby-rules-page .quick-card dl{margin:0!important}
.warcaby-rules-page .quick-card div{
  display:grid!important;
  grid-template-columns:40px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  min-height:55px;
  padding:8px 0!important;
  border:0!important;
  position:relative;
}
.warcaby-rules-page .quick-card div+div::after{
  content:"";
  position:absolute;
  left:50px;
  right:0;
  top:0;
  height:1px;
  background:linear-gradient(90deg,rgba(100,220,190,.10),rgba(100,220,190,.04),transparent);
}
.warcaby-rules-page .quick-card div::before{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:10px;
  background:linear-gradient(145deg,rgba(20,123,96,.72),rgba(7,78,63,.78));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045);
  color:#78e1c4;
  font-size:19px;
  font-weight:900;
}
.warcaby-rules-page .quick-card div:nth-of-type(1)::before{content:"●●";font-size:11px;letter-spacing:-3px}
.warcaby-rules-page .quick-card div:nth-of-type(2)::before{content:"▦"}
.warcaby-rules-page .quick-card div:nth-of-type(3)::before{content:"◉"}
.warcaby-rules-page .quick-card div:nth-of-type(4)::before{content:"▶";font-size:16px}
.warcaby-rules-page .quick-card div:nth-of-type(5)::before{content:"◎"}
.warcaby-rules-page .quick-card dt{
  color:#b8c9c2!important;
  font-size:14px;
}
.warcaby-rules-page .quick-card dd{
  color:#fff!important;
  font-weight:800!important;
}

/* Architecture below hero: clean teal navigation rail + frameless content panels. */
.warcaby-rules-page .rules-layout{
  grid-template-columns:250px minmax(0,1fr)!important;
  gap:20px!important;
  margin-top:18px!important;
}
.warcaby-rules-page .rules-toc{
  position:sticky;
  top:92px;
  padding:20px 18px!important;
  border:0!important;
  border-left:1px solid rgba(78,210,174,.20)!important;
  border-radius:0!important;
  background:
    linear-gradient(90deg,rgba(7,48,39,.34),rgba(4,27,22,.08) 74%,transparent)!important;
  box-shadow:none!important;
}
.warcaby-rules-page .rules-toc h2{
  color:#f2cf70!important;
  font-size:15px!important;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.warcaby-rules-page .rules-toc ol{
  padding-left:20px!important;
}
.warcaby-rules-page .rules-toc li{
  color:#759187!important;
}
.warcaby-rules-page .rules-toc a{
  color:#bdccc6!important;
}
.warcaby-rules-page .rules-toc a:hover{
  color:#78e2c5!important;
}
.warcaby-rules-page .back-game{
  justify-content:flex-start!important;
  margin-top:18px!important;
  padding:10px 0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#64dcc0!important;
}

/* Remove gold frames from ALL rule content on this page. */
.warcaby-rules-page .rules-content{
  gap:16px!important;
}
.warcaby-rules-page .rule-section{
  padding:28px 30px!important;
  border:0!important;
  outline:0!important;
  border-radius:18px!important;
  background:
    radial-gradient(circle at 5% 0%,rgba(37,155,126,.07),transparent 34%),
    linear-gradient(145deg,rgba(7,38,31,.94),rgba(3,22,18,.98))!important;
  box-shadow:0 16px 36px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.02)!important;
}
.warcaby-rules-page .rule-section h2{
  color:#f3d88f!important;
  font-size:27px!important;
}
.warcaby-rules-page .rule-section p,
.warcaby-rules-page .rule-section li{
  color:#d4dfda!important;
}
.warcaby-rules-page .rule-number{
  border:0!important;
  background:rgba(244,198,95,.09)!important;
  box-shadow:inset 0 0 0 1px rgba(244,198,95,.14)!important;
  color:#edcf7a!important;
}
.warcaby-rules-page .rule-callout,
.warcaby-rules-page .rule-callout--gold,
.warcaby-rules-page .rule-callout--red{
  border:0!important;
  border-left:3px solid rgba(81,220,181,.72)!important;
  background:linear-gradient(90deg,rgba(8,74,59,.48),rgba(7,39,32,.28))!important;
  box-shadow:none!important;
}
.warcaby-rules-page .rule-callout--red{
  border-left-color:rgba(236,102,94,.72)!important;
  background:linear-gradient(90deg,rgba(94,31,28,.34),rgba(31,20,17,.20))!important;
}
.warcaby-rules-page .rule-callout strong,
.warcaby-rules-page .rule-callout--gold strong{
  color:#f4dfa8!important;
}
.warcaby-rules-page .mini-rule{
  border:0!important;
  background:rgba(5,28,23,.70)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02)!important;
}
.warcaby-rules-page .rule-table-wrap{
  border:0!important;
  border-radius:14px!important;
  background:rgba(4,27,22,.72)!important;
}
.warcaby-rules-page .rule-table th{
  background:rgba(24,92,73,.20)!important;
  color:#efd589!important;
}
.warcaby-rules-page .rule-table th,
.warcaby-rules-page .rule-table td{
  border-color:rgba(94,208,177,.08)!important;
}
.warcaby-rules-page .faq details{
  border:0!important;
  background:rgba(5,29,23,.62)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02)!important;
}

/* Bottom navigation and footer: no remaining gold frame. */
.warcaby-rules-page .rules-bottom{
  border:0!important;
  background:linear-gradient(135deg,rgba(7,45,36,.92),rgba(4,25,21,.95))!important;
  box-shadow:0 14px 30px rgba(0,0,0,.14)!important;
}
.warcaby-rules-page .button--gold,
.warcaby-rules-page .button--outline{
  border:0!important;
  background:linear-gradient(135deg,#0d6957,#11876f)!important;
  color:#fff!important;
}
.warcaby-rules-page .site-footer{
  border-top:0!important;
  background:linear-gradient(180deg,rgba(3,17,14,.95),rgba(2,10,8,.98))!important;
}
.warcaby-rules-page .footer-bottom{
  border-color:rgba(89,205,174,.08)!important;
}
.warcaby-rules-page .footer-news input{
  border:0!important;
  box-shadow:inset 0 0 0 1px rgba(90,211,177,.10)!important;
}
.warcaby-rules-page .footer-news form button{
  background:linear-gradient(135deg,#0e6c59,#128871)!important;
  color:#fff!important;
}

@media(max-width:1000px){
  .warcaby-rules-page .rules-hero{
    grid-template-columns:1fr!important;
  }
  .warcaby-rules-page .rules-hero>div{
    min-height:320px;
  }
  .warcaby-rules-page .quick-card{
    min-height:auto!important;
  }
}
@media(max-width:900px){
  .warcaby-rules-page .rules-layout{
    grid-template-columns:1fr!important;
  }
  .warcaby-rules-page .rules-toc{
    position:static!important;
    border-left:0!important;
    border-radius:16px!important;
    background:linear-gradient(145deg,rgba(7,42,34,.78),rgba(4,24,20,.78))!important;
  }
}
@media(max-width:620px){
  .warcaby-rules-page .rules-shell{
    width:calc(100% - 20px)!important;
  }
  .warcaby-rules-page .rules-hero>div{
    min-height:auto;
    padding:24px 20px!important;
    background:
      linear-gradient(90deg,rgba(5,57,47,.98),rgba(5,55,46,.92)),
      url("/assets/img/warcaby-board.webp") right center/cover no-repeat!important;
  }
  .warcaby-rules-page .rules-hero h1{
    font-size:42px!important;
  }
  .warcaby-rules-page .rules-lead{
    font-size:15px!important;
  }
  .warcaby-rules-page .quick-card{
    padding:20px!important;
  }
  .warcaby-rules-page .rule-section{
    padding:24px 20px!important;
  }
}


/* Gomoku rules premium architecture R4 */
/* Match the Warcaby premium rules architecture: teal fields, no gold frames. */
.gomoku-rules-page .rules-shell{
  width:min(1360px,calc(100% - 48px))!important;
}
.gomoku-rules-page .rules-header__inner{
  width:min(1510px,calc(100% - 48px))!important;
}
.gomoku-rules-page .gomoku-rules-page-grid{
  grid-template-columns:minmax(0,1fr) 300px!important;
  gap:20px!important;
}

/* Hero = large content field + dedicated right summary field. */
.gomoku-rules-page .gomoku-rules-hero{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:18px!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.gomoku-rules-page .gomoku-rules-hero__main{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:338px;
  padding:30px 32px!important;
  border:0!important;
  border-radius:20px!important;
  background:
    radial-gradient(circle at 72% 42%,rgba(248,221,164,.045),transparent 28%),
    linear-gradient(90deg,rgba(5,57,47,.98) 0%,rgba(5,54,45,.96) 55%,rgba(4,45,37,.90) 100%)!important;
  box-shadow:0 20px 44px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.025)!important;
}
.gomoku-rules-page .gomoku-rules-hero__main::before{
  content:"";
  position:absolute;
  right:-10px;
  top:-24px;
  width:52%;
  height:120%;
  z-index:-2;
  opacity:.32;
  background:
    radial-gradient(circle at 30% 36%,#111 0 13px,transparent 14px),
    radial-gradient(circle at 54% 48%,#efe5d1 0 15px,transparent 16px),
    radial-gradient(circle at 72% 62%,#111 0 13px,transparent 14px),
    repeating-linear-gradient(to right,transparent 0 42px,rgba(207,174,112,.22) 42px 43px),
    repeating-linear-gradient(to bottom,transparent 0 42px,rgba(207,174,112,.22) 42px 43px),
    linear-gradient(135deg,rgba(170,124,69,.16),rgba(84,55,28,.08));
  transform:rotate(-3deg) scale(1.06);
}
.gomoku-rules-page .gomoku-rules-hero__main::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(90deg,rgba(5,57,47,.98) 0%,rgba(5,56,46,.92) 50%,rgba(5,49,41,.46) 77%,rgba(4,40,33,.18) 100%);
}
.gomoku-rules-page .gomoku-rules-hero .rules-kicker{color:#efc960!important}
.gomoku-rules-page .gomoku-rules-hero h1{
  max-width:650px;
  color:#f6dfa2!important;
  font-size:clamp(42px,4.7vw,64px)!important;
  letter-spacing:-.035em;
}
.gomoku-rules-page .gomoku-rules-hero .rules-lead{
  max-width:760px;
  color:#edf4f0!important;
  line-height:1.58;
}
.gomoku-rules-page .gomoku-rules-hero .rules-note{
  position:relative;
  max-width:900px;
  margin-top:16px!important;
  padding:13px 15px 13px 50px!important;
  border:0!important;
  border-left:0!important;
  border-radius:12px!important;
  background:linear-gradient(90deg,rgba(9,91,72,.82),rgba(7,63,52,.72))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
  color:#e6f2ed!important;
}
.gomoku-rules-page .gomoku-rules-hero .rules-note::before{
  content:"i";
  position:absolute;
  left:16px;
  top:50%;
  transform:translateY(-50%);
  display:grid;
  place-items:center;
  width:24px;
  height:24px;
  border-radius:50%;
  background:rgba(92,225,190,.16);
  color:#8ce9d1;
  font-weight:900;
}
.gomoku-rules-page .gomoku-rules-hero .rules-note strong{color:#fff1c4!important}

/* Summary card uses the same teal system as the hero, not a black/gold card. */
.gomoku-rules-page .gomoku-quick-card{
  align-self:stretch!important;
  padding:23px 20px!important;
  border:0!important;
  outline:0!important;
  border-radius:20px!important;
  background:
    radial-gradient(circle at 12% 0%,rgba(41,175,141,.13),transparent 38%),
    linear-gradient(155deg,rgba(7,49,39,.98),rgba(3,26,22,.99))!important;
  box-shadow:0 20px 44px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.025)!important;
}
.gomoku-rules-page .gomoku-quick-card h2{
  margin:0 0 14px!important;
  color:#f5d98e!important;
  font:800 21px/1.2 var(--display);
}
.gomoku-rules-page .gomoku-quick-card div{
  display:grid!important;
  grid-template-columns:40px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  min-height:55px;
  padding:8px 0!important;
  border:0!important;
  position:relative;
}
.gomoku-rules-page .gomoku-quick-card div+div::after{
  content:"";
  position:absolute;
  left:50px;
  right:0;
  top:0;
  height:1px;
  background:linear-gradient(90deg,rgba(100,220,190,.10),rgba(100,220,190,.04),transparent);
}
.gomoku-rules-page .gomoku-quick-card div::before{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:10px;
  background:linear-gradient(145deg,rgba(20,123,96,.72),rgba(7,78,63,.78));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045);
  color:#78e1c4;
  font-size:18px;
  font-weight:900;
}
.gomoku-rules-page .gomoku-quick-card div:nth-of-type(1)::before{content:"●○";font-size:13px;letter-spacing:-2px}
.gomoku-rules-page .gomoku-quick-card div:nth-of-type(2)::before{content:"▦"}
.gomoku-rules-page .gomoku-quick-card div:nth-of-type(3)::before{content:"●";font-size:16px}
.gomoku-rules-page .gomoku-quick-card div:nth-of-type(4)::before{content:"＋"}
.gomoku-rules-page .gomoku-quick-card div:nth-of-type(5)::before{content:"⑤"}
.gomoku-rules-page .gomoku-quick-card dt{color:#b8c9c2!important;font-size:14px}
.gomoku-rules-page .gomoku-quick-card dd{color:#fff!important;font-weight:800!important}

/* Lower content: frameless teal reading surfaces. */
.gomoku-rules-page .gomoku-rules-content-layout{
  display:block!important;
  margin-top:18px!important;
}
.gomoku-rules-page .rules-content{gap:16px!important}
.gomoku-rules-page .rule-section{
  padding:28px 30px!important;
  border:0!important;
  outline:0!important;
  border-radius:18px!important;
  background:
    radial-gradient(circle at 5% 0%,rgba(37,155,126,.07),transparent 34%),
    linear-gradient(145deg,rgba(7,38,31,.94),rgba(3,22,18,.98))!important;
  box-shadow:0 16px 36px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.02)!important;
}
.gomoku-rules-page .rule-section h2{color:#f3d88f!important;font-size:27px!important}
.gomoku-rules-page .rule-section p,
.gomoku-rules-page .rule-section li{color:#d4dfda!important}
.gomoku-rules-page .rule-number{
  border:0!important;
  background:rgba(244,198,95,.09)!important;
  box-shadow:inset 0 0 0 1px rgba(244,198,95,.14)!important;
  color:#edcf7a!important;
}
.gomoku-rules-page .rule-callout,
.gomoku-rules-page .rule-callout--gold,
.gomoku-rules-page .rule-callout--red{
  border:0!important;
  border-left:3px solid rgba(81,220,181,.72)!important;
  background:linear-gradient(90deg,rgba(8,74,59,.48),rgba(7,39,32,.28))!important;
  box-shadow:none!important;
}
.gomoku-rules-page .rule-callout--red{
  border-left-color:rgba(236,102,94,.72)!important;
  background:linear-gradient(90deg,rgba(94,31,28,.34),rgba(31,20,17,.20))!important;
}
.gomoku-rules-page .mini-rule{
  border:0!important;
  background:rgba(5,28,23,.70)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02)!important;
}
.gomoku-rules-page .rule-table-wrap{
  border:0!important;
  border-radius:14px!important;
  background:rgba(4,27,22,.72)!important;
}
.gomoku-rules-page .rule-table th{
  background:rgba(24,92,73,.20)!important;
  color:#efd589!important;
}
.gomoku-rules-page .rule-table th,
.gomoku-rules-page .rule-table td{border-color:rgba(94,208,177,.08)!important}
.gomoku-rules-page .faq details{
  border:0!important;
  background:rgba(5,29,23,.62)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02)!important;
}

/* Right rail: architectural navigation only, matching the page tone. */
.gomoku-rules-page .gomoku-rules-side-panel{
  position:static!important;
  display:flex!important;
  flex-direction:column!important;
  gap:16px;
  align-self:start;
}
.gomoku-rules-page .gomoku-side-summary{
  width:100%;
  margin:0!important;
}
.gomoku-rules-page .rules-side-card{
  border:0!important;
  outline:0!important;
  border-radius:18px!important;
  background:
    radial-gradient(circle at 0 0,rgba(28,156,126,.10),transparent 38%),
    linear-gradient(145deg,rgba(6,39,31,.97),rgba(3,22,18,.98))!important;
  box-shadow:0 16px 32px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.025)!important;
}
.gomoku-rules-page .rules-side-eyebrow{color:#63d8bb!important}
.gomoku-rules-page .rules-side-card h2{color:#f4d994!important}
.gomoku-rules-page .rules-side-nav>a,
.gomoku-rules-page .rules-side-related>a{border-color:rgba(116,219,191,.09)!important}
.gomoku-rules-page .rules-side-nav span{
  background:rgba(72,198,163,.11)!important;
  color:#77e0c4!important;
}
.gomoku-rules-page .rules-side-related>a:nth-of-type(2) .rules-side-thumb{
  background:linear-gradient(145deg,#4a161b,#28100f)!important;
  color:#ff777f!important;
}

/* Bottom actions and footer: remove remaining gold framing. */
.gomoku-rules-page .rules-bottom{
  border:0!important;
  background:linear-gradient(135deg,rgba(7,45,36,.92),rgba(4,25,21,.95))!important;
  box-shadow:0 14px 30px rgba(0,0,0,.14)!important;
}
.gomoku-rules-page .button--gold,
.gomoku-rules-page .button--outline{
  border:0!important;
  background:linear-gradient(135deg,#0d6957,#11876f)!important;
  color:#fff!important;
}
.gomoku-rules-page .site-footer{
  border-top:0!important;
  background:linear-gradient(180deg,rgba(3,17,14,.95),rgba(2,10,8,.98))!important;
}
.gomoku-rules-page .footer-bottom{border-color:rgba(89,205,174,.08)!important}
.gomoku-rules-page .footer-news input{
  border:0!important;
  box-shadow:inset 0 0 0 1px rgba(90,211,177,.10)!important;
}
.gomoku-rules-page .footer-news form button{
  background:linear-gradient(135deg,#0e6c59,#128871)!important;
  color:#fff!important;
}

@media(max-width:1180px){
  .gomoku-rules-page .rules-shell{
    width:min(1120px,calc(100% - 32px))!important;
  }
  .gomoku-rules-page .gomoku-rules-page-grid{
    grid-template-columns:1fr!important;
  }
  .gomoku-rules-page .gomoku-rules-side-panel{
    display:flex!important;
    flex-direction:column!important;
  }
}
@media(max-width:1000px){
  .gomoku-rules-page .gomoku-rules-hero{
    grid-template-columns:1fr!important;
  }
  .gomoku-rules-page .gomoku-rules-hero__main{min-height:320px}
}
@media(max-width:760px){
  .gomoku-rules-page .gomoku-rules-side-panel{
    display:flex!important;
    flex-direction:column!important;
  }
}
@media(max-width:620px){
  .gomoku-rules-page .rules-shell{width:calc(100% - 20px)!important}
  .gomoku-rules-page .gomoku-rules-hero__main{
    min-height:auto;
    padding:24px 20px!important;
  }
  .gomoku-rules-page .gomoku-rules-hero h1{font-size:42px!important}
  .gomoku-rules-page .gomoku-rules-hero .rules-lead{font-size:15px!important}
  .gomoku-rules-page .gomoku-quick-card{padding:20px!important}
  .gomoku-rules-page .rule-section{padding:24px 20px!important}
}


/* Poker rules premium architecture R4 */
/* Poker rules aligned to the same frameless teal premium system as Warcaby and Gomoku. */
.poker-rules-page .rules-shell{
  width:min(1360px,calc(100% - 48px))!important;
}
.poker-rules-page .rules-header__inner{
  width:min(1510px,calc(100% - 48px))!important;
}

/* Hero: premium teal content field + dedicated right summary field. */
.poker-rules-page .rules-hero{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 310px!important;
  gap:18px!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.poker-rules-page .rules-hero>div{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:338px;
  padding:30px 32px!important;
  border:0!important;
  border-radius:20px!important;
  background:
    radial-gradient(circle at 82% 14%,rgba(244,198,95,.055),transparent 27%),
    linear-gradient(90deg,rgba(5,57,47,.98) 0%,rgba(5,55,46,.96) 53%,rgba(4,47,39,.86) 100%)!important;
  box-shadow:0 20px 44px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.025)!important;
}
.poker-rules-page .rules-hero>div::before{
  content:"A♠";
  position:absolute;
  right:84px;
  top:48px;
  z-index:-2;
  display:grid;
  place-items:center;
  width:116px;
  height:166px;
  border-radius:13px;
  background:linear-gradient(155deg,rgba(255,250,239,.92),rgba(224,213,190,.90));
  color:#15120e;
  font:800 34px/1 Georgia,serif;
  box-shadow:
    76px 28px 0 -2px rgba(229,220,203,.90),
    76px 28px 0 0 rgba(255,255,255,.18),
    0 18px 42px rgba(0,0,0,.22);
  transform:rotate(-8deg);
  opacity:.16;
}
.poker-rules-page .rules-hero>div::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(90deg,rgba(5,57,47,.98) 0%,rgba(5,55,46,.92) 54%,rgba(5,49,41,.48) 82%,rgba(4,40,33,.20) 100%);
}
.poker-rules-page .rules-kicker{color:#efc960!important}
.poker-rules-page .rules-hero h1{
  max-width:700px;
  color:#f6dfa2!important;
  font-size:clamp(42px,4.7vw,64px)!important;
  letter-spacing:-.035em;
}
.poker-rules-page .rules-lead{
  max-width:780px;
  color:#edf4f0!important;
  line-height:1.58;
}
.poker-rules-page .rules-note{
  position:relative;
  max-width:920px;
  margin-top:16px!important;
  padding:13px 15px 13px 50px!important;
  border:0!important;
  border-left:0!important;
  border-radius:12px!important;
  background:linear-gradient(90deg,rgba(9,91,72,.82),rgba(7,63,52,.72))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
  color:#e6f2ed!important;
}
.poker-rules-page .rules-note::before{
  content:"i";
  position:absolute;
  left:16px;
  top:50%;
  transform:translateY(-50%);
  display:grid;
  place-items:center;
  width:24px;
  height:24px;
  border-radius:50%;
  background:rgba(92,225,190,.16);
  color:#8ce9d1;
  font-weight:900;
}
.poker-rules-page .rules-note strong{color:#fff1c4!important}

/* Right summary card */
.poker-rules-page .quick-card{
  align-self:stretch!important;
  padding:23px 20px!important;
  border:0!important;
  outline:0!important;
  border-radius:20px!important;
  background:
    radial-gradient(circle at 12% 0%,rgba(41,175,141,.13),transparent 38%),
    linear-gradient(155deg,rgba(7,49,39,.98),rgba(3,26,22,.99))!important;
  box-shadow:0 20px 44px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.025)!important;
}
.poker-rules-page .quick-card h2{
  margin:0 0 14px!important;
  color:#f5d98e!important;
  font:800 21px/1.2 var(--display);
}
.poker-rules-page .quick-card div{
  display:grid!important;
  grid-template-columns:40px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  min-height:55px;
  padding:8px 0!important;
  border:0!important;
  position:relative;
}
.poker-rules-page .quick-card div+div::after{
  content:"";
  position:absolute;
  left:50px;
  right:0;
  top:0;
  height:1px;
  background:linear-gradient(90deg,rgba(100,220,190,.10),rgba(100,220,190,.04),transparent);
}
.poker-rules-page .quick-card div::before{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:10px;
  background:linear-gradient(145deg,rgba(20,123,96,.72),rgba(7,78,63,.78));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045);
  color:#78e1c4;
  font-size:18px;
  font-weight:900;
}
.poker-rules-page .quick-card div:nth-of-type(1)::before{content:"●●";font-size:10px;letter-spacing:-2px}
.poker-rules-page .quick-card div:nth-of-type(2)::before{content:"♠";font-size:19px}
.poker-rules-page .quick-card div:nth-of-type(3)::before{content:"2"}
.poker-rules-page .quick-card div:nth-of-type(4)::before{content:"5"}
.poker-rules-page .quick-card div:nth-of-type(5)::before{content:"◎"}
.poker-rules-page .quick-card dt{color:#b8c9c2!important;font-size:14px}
.poker-rules-page .quick-card dd{color:#fff!important;font-weight:800!important}

/* Lower architecture: content first, navigation rail on the right. */
.poker-rules-page .rules-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 250px!important;
  gap:20px!important;
  margin-top:18px!important;
  align-items:start!important;
}
.poker-rules-page .rules-content{
  grid-column:1;
  grid-row:1;
  gap:16px!important;
}
.poker-rules-page .rules-toc{
  grid-column:2;
  grid-row:1;
  position:sticky!important;
  top:92px!important;
  align-self:start!important;
  padding:20px 18px!important;
  border:0!important;
  border-left:1px solid rgba(78,210,174,.20)!important;
  border-radius:0!important;
  background:
    linear-gradient(90deg,rgba(7,48,39,.34),rgba(4,27,22,.08) 74%,transparent)!important;
  box-shadow:none!important;
}
.poker-rules-page .rules-toc h2{
  color:#f2cf70!important;
  font-size:15px!important;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.poker-rules-page .rules-toc ol{padding-left:20px!important}
.poker-rules-page .rules-toc li{color:#759187!important}
.poker-rules-page .rules-toc a{color:#bdccc6!important}
.poker-rules-page .rules-toc a:hover{color:#78e2c5!important}
.poker-rules-page .back-game{
  justify-content:flex-start!important;
  margin-top:18px!important;
  padding:10px 0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#64dcc0!important;
}

/* All reading sections frameless teal. */
.poker-rules-page .rule-section{
  padding:28px 30px!important;
  border:0!important;
  outline:0!important;
  border-radius:18px!important;
  background:
    radial-gradient(circle at 5% 0%,rgba(37,155,126,.07),transparent 34%),
    linear-gradient(145deg,rgba(7,38,31,.94),rgba(3,22,18,.98))!important;
  box-shadow:0 16px 36px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.02)!important;
}
.poker-rules-page .rule-section h2{
  color:#f3d88f!important;
  font-size:27px!important;
}
.poker-rules-page .rule-section p,
.poker-rules-page .rule-section li{color:#d4dfda!important}
.poker-rules-page .rule-number{
  border:0!important;
  background:rgba(244,198,95,.09)!important;
  box-shadow:inset 0 0 0 1px rgba(244,198,95,.14)!important;
  color:#edcf7a!important;
}
.poker-rules-page .rule-callout,
.poker-rules-page .rule-callout--gold,
.poker-rules-page .rule-callout--red{
  border:0!important;
  border-left:3px solid rgba(81,220,181,.72)!important;
  background:linear-gradient(90deg,rgba(8,74,59,.48),rgba(7,39,32,.28))!important;
  box-shadow:none!important;
}
.poker-rules-page .rule-callout--red{
  border-left-color:rgba(236,102,94,.72)!important;
  background:linear-gradient(90deg,rgba(94,31,28,.34),rgba(31,20,17,.20))!important;
}
.poker-rules-page .rule-callout strong,
.poker-rules-page .rule-callout--gold strong{color:#f4dfa8!important}
.poker-rules-page .rule-table-wrap{
  border:0!important;
  border-radius:14px!important;
  background:rgba(4,27,22,.72)!important;
}
.poker-rules-page .rule-table th{
  background:rgba(24,92,73,.20)!important;
  color:#efd589!important;
}
.poker-rules-page .rule-table th,
.poker-rules-page .rule-table td{border-color:rgba(94,208,177,.08)!important}
.poker-rules-page .faq details{
  border:0!important;
  background:rgba(5,29,23,.62)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02)!important;
}

/* Bottom navigation + footer without gold outlines. */
.poker-rules-page .rules-bottom{
  border:0!important;
  background:linear-gradient(135deg,rgba(7,45,36,.92),rgba(4,25,21,.95))!important;
  box-shadow:0 14px 30px rgba(0,0,0,.14)!important;
}
.poker-rules-page .button--gold,
.poker-rules-page .button--outline{
  border:0!important;
  background:linear-gradient(135deg,#0d6957,#11876f)!important;
  color:#fff!important;
}
.poker-rules-page .site-footer{
  border-top:0!important;
  background:linear-gradient(180deg,rgba(3,17,14,.95),rgba(2,10,8,.98))!important;
}
.poker-rules-page .footer-bottom{border-color:rgba(89,205,174,.08)!important}
.poker-rules-page .footer-news input{
  border:0!important;
  box-shadow:inset 0 0 0 1px rgba(90,211,177,.10)!important;
}
.poker-rules-page .footer-news form button{
  background:linear-gradient(135deg,#0e6c59,#128871)!important;
  color:#fff!important;
}

@media(max-width:1000px){
  .poker-rules-page .rules-hero{grid-template-columns:1fr!important}
  .poker-rules-page .rules-hero>div{min-height:320px}
}
@media(max-width:900px){
  .poker-rules-page .rules-layout{grid-template-columns:1fr!important}
  .poker-rules-page .rules-content{grid-column:1;grid-row:1}
  .poker-rules-page .rules-toc{
    grid-column:1;
    grid-row:2;
    position:static!important;
    border-left:0!important;
    border-radius:16px!important;
    background:linear-gradient(145deg,rgba(7,42,34,.78),rgba(4,24,20,.78))!important;
  }
}
@media(max-width:620px){
  .poker-rules-page .rules-shell{width:calc(100% - 20px)!important}
  .poker-rules-page .rules-hero>div{
    min-height:auto;
    padding:24px 20px!important;
  }
  .poker-rules-page .rules-hero h1{font-size:42px!important}
  .poker-rules-page .rules-lead{font-size:15px!important}
  .poker-rules-page .quick-card{padding:20px!important}
  .poker-rules-page .rule-section{padding:24px 20px!important}
}


/* Tysiac rules premium architecture R4 */
.tysiac-rules-page .rules-shell{
  width:min(1360px,calc(100% - 48px))!important;
}
.tysiac-rules-page .rules-header__inner{
  width:min(1510px,calc(100% - 48px))!important;
}
.tysiac-rules-page .rules-page-grid{
  grid-template-columns:minmax(0,1fr) 300px!important;
  gap:20px!important;
}

/* Hero: unified premium teal architecture. */
.tysiac-rules-page .tysiac-rules-hero{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 310px!important;
  gap:18px!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.tysiac-rules-page .tysiac-rules-hero__main{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:338px;
  padding:30px 32px;
  border:0!important;
  border-radius:20px;
  background:
    radial-gradient(circle at 82% 12%,rgba(244,198,95,.055),transparent 28%),
    linear-gradient(90deg,rgba(5,57,47,.98) 0%,rgba(5,55,46,.96) 53%,rgba(4,47,39,.86) 100%);
  box-shadow:0 20px 44px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.025);
}
.tysiac-rules-page .tysiac-rules-hero__main::before{
  content:"K♥";
  position:absolute;
  right:120px;
  top:72px;
  z-index:-2;
  display:grid;
  place-items:center;
  width:112px;
  height:158px;
  border-radius:12px;
  background:linear-gradient(155deg,rgba(255,250,239,.92),rgba(224,213,190,.90));
  color:#b51425;
  font:800 32px/1 Georgia,serif;
  box-shadow:
    68px 22px 0 -2px rgba(230,220,201,.88),
    132px 42px 0 -4px rgba(227,217,198,.72),
    0 18px 42px rgba(0,0,0,.22);
  transform:rotate(-9deg);
  opacity:.15;
}
.tysiac-rules-page .tysiac-rules-hero__main::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(90deg,rgba(5,57,47,.98) 0%,rgba(5,55,46,.92) 54%,rgba(5,49,41,.48) 82%,rgba(4,40,33,.20) 100%);
}
.tysiac-rules-page .rules-kicker{color:#efc960!important}
.tysiac-rules-page .rules-hero h1{
  max-width:700px;
  color:#f6dfa2!important;
  font-size:clamp(42px,4.7vw,64px)!important;
  letter-spacing:-.035em;
}
.tysiac-rules-page .rules-lead{
  max-width:780px;
  color:#edf4f0!important;
  line-height:1.58;
}
.tysiac-rules-page .rules-facts{
  margin-top:20px!important;
  border:0!important;
  background:transparent!important;
}
.tysiac-rules-page .rules-facts li{
  border-color:rgba(97,215,184,.09)!important;
}
.tysiac-rules-page .rules-facts span{color:#75e1c5!important}
.tysiac-rules-page .rules-note{
  position:relative;
  max-width:920px;
  margin-top:16px!important;
  padding:13px 15px 13px 50px!important;
  border:0!important;
  border-left:0!important;
  border-radius:12px!important;
  background:linear-gradient(90deg,rgba(9,91,72,.82),rgba(7,63,52,.72))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
  color:#e6f2ed!important;
}
.tysiac-rules-page .rules-note::before{
  content:"i";
  position:absolute;
  left:16px;
  top:50%;
  transform:translateY(-50%);
  display:grid;
  place-items:center;
  width:24px;
  height:24px;
  border-radius:50%;
  background:rgba(92,225,190,.16);
  color:#8ce9d1;
  font-weight:900;
}
.tysiac-rules-page .rules-note strong{color:#fff1c4!important}
.tysiac-rules-page .rules-primary-action,
.tysiac-rules-page .rules-secondary-action{
  border:0!important;
  background:linear-gradient(135deg,#0d6957,#11876f)!important;
  color:#fff!important;
  box-shadow:0 10px 22px rgba(0,0,0,.15)!important;
}

/* Right summary field. */
.tysiac-rules-page .tysiac-quick-card{
  align-self:stretch!important;
  padding:23px 20px!important;
  border:0!important;
  outline:0!important;
  border-radius:20px!important;
  background:
    radial-gradient(circle at 12% 0%,rgba(41,175,141,.13),transparent 38%),
    linear-gradient(155deg,rgba(7,49,39,.98),rgba(3,26,22,.99))!important;
  box-shadow:0 20px 44px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.025)!important;
}
.tysiac-rules-page .tysiac-quick-card h2{
  margin:0 0 14px!important;
  color:#f5d98e!important;
  font:800 21px/1.2 var(--display);
}
.tysiac-rules-page .tysiac-quick-card div{
  display:grid!important;
  grid-template-columns:40px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  min-height:55px;
  padding:8px 0!important;
  border:0!important;
  position:relative;
}
.tysiac-rules-page .tysiac-quick-card div+div::after{
  content:"";
  position:absolute;
  left:50px;
  right:0;
  top:0;
  height:1px;
  background:linear-gradient(90deg,rgba(100,220,190,.10),rgba(100,220,190,.04),transparent);
}
.tysiac-rules-page .tysiac-quick-card div::before{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:10px;
  background:linear-gradient(145deg,rgba(20,123,96,.72),rgba(7,78,63,.78));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045);
  color:#78e1c4;
  font-size:18px;
  font-weight:900;
}
.tysiac-rules-page .tysiac-quick-card div:nth-of-type(1)::before{content:"●●";font-size:10px;letter-spacing:-2px}
.tysiac-rules-page .tysiac-quick-card div:nth-of-type(2)::before{content:"24";font-size:13px}
.tysiac-rules-page .tysiac-quick-card div:nth-of-type(3)::before{content:"↗"}
.tysiac-rules-page .tysiac-quick-card div:nth-of-type(4)::before{content:"+10";font-size:12px}
.tysiac-rules-page .tysiac-quick-card div:nth-of-type(5)::before{content:"★"}
.tysiac-rules-page .tysiac-quick-card dt{color:#b8c9c2!important;font-size:14px}
.tysiac-rules-page .tysiac-quick-card dd{color:#fff!important;font-weight:800!important}

/* Content becomes a single premium reading column; side rail is the only navigation. */
.tysiac-rules-page .rules-layout{
  display:block!important;
  margin-top:18px!important;
}
.tysiac-rules-page .rules-content{
  gap:16px!important;
}
.tysiac-rules-page .rule-section{
  padding:28px 30px!important;
  border:0!important;
  outline:0!important;
  border-radius:18px!important;
  background:
    radial-gradient(circle at 5% 0%,rgba(37,155,126,.07),transparent 34%),
    linear-gradient(145deg,rgba(7,38,31,.94),rgba(3,22,18,.98))!important;
  box-shadow:0 16px 36px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.02)!important;
}
.tysiac-rules-page .rule-section h2{color:#f3d88f!important;font-size:27px!important}
.tysiac-rules-page .rule-section p,
.tysiac-rules-page .rule-section li{color:#d4dfda!important}
.tysiac-rules-page .rule-number{
  border:0!important;
  background:rgba(244,198,95,.09)!important;
  box-shadow:inset 0 0 0 1px rgba(244,198,95,.14)!important;
  color:#edcf7a!important;
}
.tysiac-rules-page .rule-callout,
.tysiac-rules-page .rule-callout--gold,
.tysiac-rules-page .rule-callout--red{
  border:0!important;
  border-left:3px solid rgba(81,220,181,.72)!important;
  background:linear-gradient(90deg,rgba(8,74,59,.48),rgba(7,39,32,.28))!important;
  box-shadow:none!important;
}
.tysiac-rules-page .rule-callout--red{
  border-left-color:rgba(236,102,94,.72)!important;
  background:linear-gradient(90deg,rgba(94,31,28,.34),rgba(31,20,17,.20))!important;
}
.tysiac-rules-page .rule-callout strong,
.tysiac-rules-page .rule-callout--gold strong{color:#f4dfa8!important}
.tysiac-rules-page .rule-table-wrap{
  border:0!important;
  border-radius:14px!important;
  background:rgba(4,27,22,.72)!important;
}
.tysiac-rules-page .rule-table th{
  background:rgba(24,92,73,.20)!important;
  color:#efd589!important;
}
.tysiac-rules-page .rule-table th,
.tysiac-rules-page .rule-table td{border-color:rgba(94,208,177,.08)!important}
.tysiac-rules-page .faq details{
  border:0!important;
  background:rgba(5,29,23,.62)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02)!important;
}

/* Right rail: one source of navigation + related games. */
.tysiac-rules-page .rules-side-panel{
  position:static!important;
  display:flex!important;
  flex-direction:column;
  gap:16px;
  align-self:start;
}
.tysiac-rules-page .rules-side-card{
  border:0!important;
  outline:0!important;
  border-radius:18px!important;
  background:
    radial-gradient(circle at 0 0,rgba(28,156,126,.10),transparent 38%),
    linear-gradient(145deg,rgba(6,39,31,.97),rgba(3,22,18,.98))!important;
  box-shadow:0 16px 32px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.025)!important;
}
.tysiac-rules-page .rules-side-eyebrow{color:#63d8bb!important}
.tysiac-rules-page .rules-side-card h2{color:#f4d994!important}
.tysiac-rules-page .rules-side-nav>a,
.tysiac-rules-page .rules-side-related>a{border-color:rgba(116,219,191,.09)!important}
.tysiac-rules-page .rules-side-nav span{
  background:rgba(72,198,163,.11)!important;
  color:#77e0c4!important;
}
.tysiac-rules-page .rules-side-related>a:first-of-type .rules-side-thumb{
  background:radial-gradient(circle at 50% 42%,rgba(18,111,76,.85),rgba(4,38,27,.98))!important;
}
.tysiac-rules-page .rules-side-related>a:nth-of-type(2) .rules-side-thumb{
  background:conic-gradient(#d9b06c 25%,#4d2d1f 0 50%,#d9b06c 0 75%,#4d2d1f 0) 0 0/22px 22px!important;
}
.tysiac-rules-page .rules-side-related>a:nth-of-type(3) .rules-side-thumb{
  background-color:#c89d5b!important;
  background-image:
    repeating-linear-gradient(to right,transparent 0 12px,rgba(63,40,20,.72) 12px 13px),
    repeating-linear-gradient(to bottom,transparent 0 12px,rgba(63,40,20,.72) 12px 13px)!important;
}

/* Bottom + footer without gold framing. */
.tysiac-rules-page .rules-bottom{
  border:0!important;
  background:linear-gradient(135deg,rgba(7,45,36,.92),rgba(4,25,21,.95))!important;
  box-shadow:0 14px 30px rgba(0,0,0,.14)!important;
}
.tysiac-rules-page .button--gold,
.tysiac-rules-page .button--outline{
  border:0!important;
  background:linear-gradient(135deg,#0d6957,#11876f)!important;
  color:#fff!important;
}
.tysiac-rules-page .site-footer{
  border-top:0!important;
  background:linear-gradient(180deg,rgba(3,17,14,.95),rgba(2,10,8,.98))!important;
}
.tysiac-rules-page .footer-bottom{border-color:rgba(89,205,174,.08)!important}
.tysiac-rules-page .footer-news input{
  border:0!important;
  box-shadow:inset 0 0 0 1px rgba(90,211,177,.10)!important;
}
.tysiac-rules-page .footer-news form button{
  background:linear-gradient(135deg,#0e6c59,#128871)!important;
  color:#fff!important;
}

@media(max-width:1180px){
  .tysiac-rules-page .rules-shell{
    width:min(1120px,calc(100% - 32px))!important;
  }
  .tysiac-rules-page .rules-page-grid{
    grid-template-columns:1fr!important;
  }
  .tysiac-rules-page .rules-side-panel{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .tysiac-rules-page .rules-side-related{grid-column:1/-1}
}
@media(max-width:1000px){
  .tysiac-rules-page .tysiac-rules-hero{
    grid-template-columns:1fr!important;
  }
  .tysiac-rules-page .tysiac-rules-hero__main{min-height:320px}
}
@media(max-width:760px){
  .tysiac-rules-page .rules-side-panel{grid-template-columns:1fr!important}
  .tysiac-rules-page .rules-side-related{grid-column:auto}
}
@media(max-width:620px){
  .tysiac-rules-page .rules-shell{width:calc(100% - 20px)!important}
  .tysiac-rules-page .tysiac-rules-hero__main{
    min-height:auto;
    padding:24px 20px!important;
  }
  .tysiac-rules-page .rules-hero h1{font-size:42px!important}
  .tysiac-rules-page .rules-lead{font-size:15px!important}
  .tysiac-rules-page .tysiac-quick-card{padding:20px!important}
  .tysiac-rules-page .rule-section{padding:24px 20px!important}
}


/* Rules module GLOBAL QA R1 */
/* Shared geometry and visual tokens for all four rule pages. */
.poker-rules-page,
.tysiac-rules-page,
.warcaby-rules-page,
.gomoku-rules-page{
  --rules-teal:#0f6e5a;
  --rules-teal-2:#63ddc3;
  --rules-panel-1:rgba(7,38,31,.95);
  --rules-panel-2:rgba(3,22,18,.98);
}
.poker-rules-page .rules-shell,
.tysiac-rules-page .rules-shell,
.warcaby-rules-page .rules-shell,
.gomoku-rules-page .rules-shell{
  width:min(1360px,calc(100% - 48px))!important;
}
.poker-rules-page .rules-header__inner,
.tysiac-rules-page .rules-header__inner,
.warcaby-rules-page .rules-header__inner,
.gomoku-rules-page .rules-header__inner{
  width:min(1510px,calc(100% - 48px))!important;
}

/* Consistent right-side architecture for the simpler Poker/Warcaby layouts. */
.poker-rules-page .rules-layout,
.warcaby-rules-page .rules-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 250px!important;
  gap:20px!important;
  align-items:start!important;
}
.poker-rules-page .rules-content,
.warcaby-rules-page .rules-content{
  grid-column:1!important;
  grid-row:1!important;
}
.poker-rules-page .rules-toc,
.warcaby-rules-page .rules-toc{
  grid-column:2!important;
  grid-row:1!important;
  position:sticky!important;
  top:92px!important;
  border:0!important;
  border-left:1px solid rgba(95,218,185,.17)!important;
  background:linear-gradient(90deg,rgba(7,48,39,.32),rgba(4,27,22,.06) 76%,transparent)!important;
  box-shadow:none!important;
}

/* Remove leftover gold framing and convert separators to subtle teal. */
.poker-rules-page .quick-card,
.tysiac-rules-page .quick-card,
.warcaby-rules-page .quick-card,
.gomoku-rules-page .quick-card,
.poker-rules-page .rule-section,
.tysiac-rules-page .rule-section,
.warcaby-rules-page .rule-section,
.gomoku-rules-page .rule-section,
.poker-rules-page .rules-side-card,
.tysiac-rules-page .rules-side-card,
.warcaby-rules-page .rules-side-card,
.gomoku-rules-page .rules-side-card,
.poker-rules-page .mini-rule,
.tysiac-rules-page .mini-rule,
.warcaby-rules-page .mini-rule,
.gomoku-rules-page .mini-rule,
.poker-rules-page .rule-table-wrap,
.tysiac-rules-page .rule-table-wrap,
.warcaby-rules-page .rule-table-wrap,
.gomoku-rules-page .rule-table-wrap,
.poker-rules-page .faq details,
.tysiac-rules-page .faq details,
.warcaby-rules-page .faq details,
.gomoku-rules-page .faq details{
  border:0!important;
}
.poker-rules-page .rule-number,
.tysiac-rules-page .rule-number,
.warcaby-rules-page .rule-number,
.gomoku-rules-page .rule-number{
  border:0!important;
  background:rgba(83,209,175,.10)!important;
  box-shadow:inset 0 0 0 1px rgba(83,209,175,.12)!important;
  color:#80e5cb!important;
}
.poker-rules-page .rule-table th,
.tysiac-rules-page .rule-table th,
.warcaby-rules-page .rule-table th,
.gomoku-rules-page .rule-table th{
  background:rgba(31,108,87,.18)!important;
}
.poker-rules-page .rule-table th,
.poker-rules-page .rule-table td,
.tysiac-rules-page .rule-table th,
.tysiac-rules-page .rule-table td,
.warcaby-rules-page .rule-table th,
.warcaby-rules-page .rule-table td,
.gomoku-rules-page .rule-table th,
.gomoku-rules-page .rule-table td{
  border-color:rgba(97,213,183,.075)!important;
}

/* Active section state in either navigation architecture. */
.rules-toc a,
.rules-side-nav a{
  transition:color .16s ease,background .16s ease,transform .16s ease;
}
.rules-toc a.is-current{
  color:#8cebd3!important;
  font-weight:800;
}
.rules-toc li:has(a.is-current){
  color:#62d9bd!important;
}
.rules-side-nav a.is-current{
  border-radius:10px;
  background:linear-gradient(90deg,rgba(99,221,195,.09),transparent);
  transform:translateX(2px);
}
.rules-side-nav a.is-current strong{color:#ffe3a0!important}
.rules-side-nav a.is-current span{
  background:rgba(99,221,195,.15)!important;
  color:#9aefdc!important;
}

/* Keyboard and touch QA. */
.rules-head-search:focus-visible,
.rules-head-btn:focus-visible,
.rules-toc a:focus-visible,
.rules-side-nav a:focus-visible,
.rules-side-related a:focus-visible,
.rules-primary-action:focus-visible,
.rules-secondary-action:focus-visible,
.rules-bottom a:focus-visible,
.footer-col a:focus-visible,
.footer-col button:focus-visible,
.footer-links button:focus-visible,
.footer-news input:focus-visible,
.footer-news button:focus-visible,
.rules-modal button:focus-visible{
  outline:2px solid #78e4ca!important;
  outline-offset:3px!important;
}
.rules-side-nav a,
.rules-toc a,
.rules-bottom a{
  -webkit-tap-highlight-color:transparent;
}

/* Shared dialog for header/footer actions. */
.rules-modal{
  width:min(520px,calc(100% - 28px));
  padding:0;
  border:0;
  border-radius:20px;
  background:transparent;
  color:#fff;
}
.rules-modal::backdrop{
  background:rgba(0,0,0,.72);
  backdrop-filter:blur(5px);
}
.rules-modal__box{
  position:relative;
  padding:30px;
  border:0;
  border-radius:20px;
  background:
    radial-gradient(circle at 0 0,rgba(36,161,129,.13),transparent 38%),
    linear-gradient(145deg,#082d25,#041813);
  box-shadow:0 28px 80px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.035);
}
.rules-modal__x{
  position:absolute;
  right:14px;
  top:12px;
  width:38px;
  height:38px;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.05);
  color:#c9d6d1;
  font-size:24px;
  cursor:pointer;
}
.rules-modal__logo{
  display:block;
  color:#fff;
  font:800 26px/1 var(--display);
  letter-spacing:-.04em;
}
.rules-modal__logo span{color:#f21a34}
.rules-modal h2{
  margin:22px 0 9px;
  color:#f4dda0;
  font:800 25px/1.15 var(--display);
}
.rules-modal p{margin:0;color:#c7d5cf;line-height:1.65}
.rules-modal__ok{
  min-height:44px;
  margin-top:22px;
  padding:0 20px;
  border:0;
  border-radius:999px;
  background:linear-gradient(135deg,#0e6c59,#128871);
  color:#fff;
  font-weight:800;
  cursor:pointer;
}
body.rules-modal-open{overflow:hidden}

/* Header/footer parity. */
.poker-rules-page .rules-header,
.tysiac-rules-page .rules-header,
.warcaby-rules-page .rules-header,
.gomoku-rules-page .rules-header,
.poker-rules-page .site-footer,
.tysiac-rules-page .site-footer,
.warcaby-rules-page .site-footer,
.gomoku-rules-page .site-footer{
  border:0!important;
}
.rules-nav a[aria-current="page"]{color:#f4d98e;font-weight:800}

/* Responsive QA. */
@media(max-width:1180px){
  .poker-rules-page .rules-shell,
  .tysiac-rules-page .rules-shell,
  .warcaby-rules-page .rules-shell,
  .gomoku-rules-page .rules-shell{
    width:min(1120px,calc(100% - 32px))!important;
  }
}
@media(max-width:900px){
  .poker-rules-page .rules-layout,
  .warcaby-rules-page .rules-layout{
    grid-template-columns:1fr!important;
  }
  .poker-rules-page .rules-content,
  .warcaby-rules-page .rules-content{
    grid-column:1!important;
    grid-row:1!important;
  }
  .poker-rules-page .rules-toc,
  .warcaby-rules-page .rules-toc{
    grid-column:1!important;
    grid-row:2!important;
    position:static!important;
    border-left:0!important;
    border-radius:16px!important;
    background:linear-gradient(145deg,rgba(7,42,34,.78),rgba(4,24,20,.78))!important;
  }
}
@media(max-width:620px){
  .poker-rules-page .rules-shell,
  .tysiac-rules-page .rules-shell,
  .warcaby-rules-page .rules-shell,
  .gomoku-rules-page .rules-shell{
    width:calc(100% - 20px)!important;
  }
  .rules-modal__box{padding:26px 20px}
}
@media(prefers-reduced-motion:reduce){
  .rules-toc a,.rules-side-nav a{transition:none!important}
}

/* ==========================================================================
   R20 — rules pages: shared 1360px rhythm + compact, non-pinned phone header
   (final override layer; earlier R-layers above are left untouched)
   ========================================================================== */
@media(min-width:1181px){
  .poker-rules-page .rules-header__inner,
  .tysiac-rules-page .rules-header__inner,
  .warcaby-rules-page .rules-header__inner,
  .gomoku-rules-page .rules-header__inner,
  .poker-rules-page .rules-shell,
  .tysiac-rules-page .rules-shell,
  .warcaby-rules-page .rules-shell,
  .gomoku-rules-page .rules-shell,
  .poker-rules-page .rules-footer__inner,
  .tysiac-rules-page .rules-footer__inner,
  .warcaby-rules-page .rules-footer__inner,
  .gomoku-rules-page .rules-footer__inner{
    width:min(1360px,calc(100% - 64px))!important;
  }
}
@media(min-width:1181px) and (max-width:1360px){
  .rules-header__inner{gap:20px!important}
  .rules-nav ul{gap:18px!important}
  .rules-header-actions{gap:12px!important;margin-left:12px!important}
}

@media(max-width:640px){
  /* Reading pages must not lose ~26% of a phone screen to a pinned header, and #tresc must never land under it. */
  .rules-header{position:static!important}
  .rules-header__inner{
    display:grid!important;
    grid-template-columns:1fr 1fr;
    gap:4px 8px!important;
    align-items:center;
    min-height:0!important;
    padding:6px 0 4px!important;
  }
  /* page-class selectors: earlier layers set min(1510px,…)!important with the same specificity class */
  .poker-rules-page .rules-header__inner,
  .tysiac-rules-page .rules-header__inner,
  .warcaby-rules-page .rules-header__inner,
  .gomoku-rules-page .rules-header__inner{
    width:calc(100% - 20px)!important;
  }
  .rules-logo{grid-column:1;grid-row:1;font-size:26px!important;line-height:1.1}
  .rules-header-actions{display:contents!important}
  .rules-head-search{grid-column:2;grid-row:1;justify-self:end;width:40px!important;height:40px!important}
  .rules-head-btn--outline{grid-column:1;grid-row:2}
  .rules-head-btn--gold{grid-column:2;grid-row:2}
  .rules-head-btn{width:100%!important;height:40px!important;padding:0 10px!important;font-size:13px!important}
  .rules-nav{
    grid-column:1/-1;
    grid-row:3;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }
  .rules-nav ul{
    display:flex!important;
    justify-content:space-between;
    gap:0!important;
    font-size:13px!important;
  }
  .rules-nav a{display:block;padding:7px 2px;font-size:13px!important;line-height:1.2}
  .rule-section{scroll-margin-top:14px!important}
}

/* R20 — .rules-content kept the rounded-corner clip via overflow:hidden, which made it a scroll container and
   swallowed the scroll-margin of its FIRST section (anchor jump landed under the sticky header).
   overflow:clip paints identically but is not a scroll container. */
.rules-content{overflow:clip!important}
