:root{
  color-scheme:dark;
  --bg:#050505;
  --paper:#f2f0e8;
  --paper-2:#e7e3d7;
  --ink:#101010;
  --muted:#5b5a55;
  --line:#2f2f2f;
  --soft-line:#b8b4a8;
  --panel:#0c0c0c;
  --text:#f4f4f4;
  --accent:#ffd43b;
  --cyan:#58d9ff;
  --red:#ff5d5d;
  --green:#67db91;
  --atk:#f0f0e8;
  --def:#191919;
  --mono:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;
  --sans:Inter,Arial,Helvetica,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:14px/1.52 var(--mono)}
a,button{font:inherit}
a{color:inherit}
button{cursor:pointer}
.screen-shell{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100vh}
.screen-nav{position:sticky;top:0;height:100vh;border-right:1px solid #242424;background:#080808;padding:24px 18px;display:flex;flex-direction:column;overflow:auto}
.rule-brand{display:flex;align-items:baseline;gap:9px;text-decoration:none;letter-spacing:.08em}.rule-brand strong{font-size:26px}.rule-brand span{font-size:12px;color:var(--accent)}
.private-flag{margin:10px 0 18px;color:var(--muted);font-size:10px;letter-spacing:.13em}
.screen-nav nav{display:grid;border-top:1px solid #222}.screen-nav nav a{padding:8px 9px;border-bottom:1px solid #1c1c1c;text-decoration:none;color:#a8a8a8;font-size:11px}.screen-nav nav a:hover,.screen-nav nav a.current{color:#fff;background:#111;border-left:2px solid var(--accent);padding-left:7px}
.screen-nav-actions{margin-top:auto;padding-top:18px;display:grid;grid-template-columns:1fr 1fr;gap:7px}.screen-nav-actions a,.screen-nav-actions button{display:flex;align-items:center;justify-content:center;min-height:38px;border:1px solid #343434;background:#101010;color:#d4d4d4;text-decoration:none;padding:8px;text-align:center;font-size:10px;letter-spacing:.04em}.screen-nav-actions a.active{border-color:var(--accent);color:var(--accent)}.screen-nav-actions button{grid-column:1/-1;background:var(--accent);border-color:var(--accent);color:#080808;font-weight:900}.screen-nav-actions a:last-child{grid-column:1/-1}
.rulebook-document{padding:30px 24px 70px;display:grid;gap:28px;justify-content:center;min-width:0}
.print-page{page:rulebook-page;width:min(210mm,100%);min-height:297mm;background:var(--paper);color:var(--ink);box-shadow:0 20px 55px #0008;position:relative;padding:15mm 14mm 16mm;overflow:hidden}
.paper-letter .print-page{width:min(216mm,100%);min-height:279mm}
.page-header{position:absolute;top:7mm;left:14mm;right:14mm;display:flex;justify-content:space-between;border-bottom:1px solid #a9a498;padding-bottom:2.5mm;color:#55524b;font-size:9px;letter-spacing:.08em}
.page-footer{position:absolute;left:14mm;right:14mm;bottom:6mm;border-top:1px solid #bbb6aa;padding-top:2.2mm;color:#666159;font-size:8.5px}
.page-content{padding-top:9mm}
h1,h2,h3,h4,p{margin-top:0}h2{font:900 27px/1.1 var(--sans);letter-spacing:-.02em;margin-bottom:7mm}h3{font:800 15px/1.25 var(--sans);margin:5mm 0 2mm}h4{font:800 12px/1.25 var(--sans);margin:0 0 2mm}p{margin-bottom:3mm}.eyebrow{color:#735f00;font-size:9px;font-weight:900;letter-spacing:.15em;margin-bottom:2mm;text-transform:uppercase}.small-note{font-size:10px;color:var(--muted)}
.lead-box{border:2px solid #191919;padding:6mm;margin-bottom:7mm;background:#f8f6ee}.lead-box strong{display:block;font:900 19px/1.25 var(--sans)}.lead-box p{margin:2mm 0 0;color:#49463f}
.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:8mm}.compact-gap{gap:5mm}.three-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:3mm;margin:6mm 0}.three-cards article{border:1px solid #8d897f;padding:4mm;background:#faf8f1}.three-cards h3{margin:0 0 1.5mm}.three-cards p{margin:0;font-size:10px}
.tight-list{margin:0;padding-left:5mm}.tight-list li{margin:0 0 1.7mm}.columns-list{columns:2;column-gap:9mm}.columns-list li{break-inside:avoid}
.definitions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.8mm 5mm;margin:0}.definitions-grid>div{display:grid;grid-template-columns:32mm 1fr;border-bottom:1px solid #cac5b8;padding:2mm 0}.definitions-grid dt{font-weight:900}.definitions-grid dd{margin:0;color:#4f4b44}
.callout{border-left:4px solid #a98700;background:#fff8d4;padding:4mm 5mm;margin:5mm 0}.callout.warning{border-left-color:#a53838;background:#fde9e5}.callout strong{display:block;font-family:var(--sans);font-weight:900}.callout p{margin:1mm 0 0}
.cover-page{page:cover-page;padding:0;background:#060606;color:#fff;display:flex;align-items:center;justify-content:center}.cover-grid{position:absolute;inset:0;display:grid;grid-template-columns:repeat(9,1fr);grid-template-rows:repeat(7,1fr);opacity:.52}.cover-grid span{background:#020202;border:1px solid #111}.cover-grid span.striped{background:repeating-linear-gradient(135deg,#1c1c1c 0 4px,#0a0a0a 4px 9px)}.cover-content{position:relative;text-align:center;width:78%;border:1px solid #3b3b3b;background:#070707e8;padding:18mm 12mm}.cover-kicker{color:var(--accent);font-size:9px;letter-spacing:.17em}.cover-content h1{font:900 clamp(68px,12vw,122px)/.85 var(--sans);letter-spacing:-.07em;margin:12mm 0 4mm}.cover-subtitle{font:700 22px/1.1 var(--sans);letter-spacing:.08em;text-transform:uppercase}.cover-rule{height:3px;background:var(--accent);margin:9mm auto 5mm;width:65%}.cover-version{color:#c8c8c8}.cover-promise{font-weight:900;letter-spacing:.1em}.cover-note{position:absolute;left:14mm;right:14mm;bottom:13mm;border-top:1px solid #4a4a4a;padding-top:4mm;display:flex;justify-content:space-between;gap:10mm;color:#bfbfbf;font-size:9px}.cover-note strong{color:#fff}
.setup-board{display:grid;grid-template-columns:7mm repeat(13,8mm);grid-template-rows:6mm repeat(17,8mm);width:111mm;height:142mm;max-width:100%;border:2px solid #161616;background:#101010;margin:3mm auto 2mm}.board-corner,.board-col-label,.board-row-label{display:flex;align-items:center;justify-content:center;background:#0b0b0b;color:#d3d3d3;font-size:7px;min-width:0;min-height:0}.setup-cell{position:relative;border:.25px solid #353535;width:8mm;height:8mm;min-width:8mm;min-height:8mm;overflow:visible}.setup-cell.is-playable{background:repeating-linear-gradient(135deg,#dbd7ca 0 3px,#bcb7aa 3px 6px)}.setup-cell.is-closed{background:#090909}.setup-cell.is-end-zone.is-playable{box-shadow:inset 0 0 0 2px #b88f00}.setup-cell::after{content:attr(data-coord);position:absolute;left:1px;bottom:0;font-size:4.2px;color:#0008}.setup-cell.is-closed::after{color:#fff3}.setup-token{position:absolute;left:50%;top:50%;width:72%;height:72%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;display:flex;align-items:center;justify-content:center;flex:none;border:1.5px solid #111;font-size:6px;line-height:1;z-index:2}.setup-token b{line-height:1}.setup-token.atk{background:#f5f2e8;color:#111}.setup-token.def{background:#171717;color:#fff;border-color:#eee}.setup-ball{position:absolute;width:28%;height:28%;aspect-ratio:1;border-radius:50%;background:#ffd43b;border:1px solid #111;right:-9%;top:-9%}.setup-legend{display:flex;justify-content:center;gap:6mm;flex-wrap:wrap;font-size:8px}.setup-legend span{display:flex;align-items:center;gap:1.5mm}.legend-token{width:5mm;height:5mm;aspect-ratio:1;border-radius:50%;display:inline-block;flex:none;border:1px solid #111}.legend-token.atk{background:#f5f2e8}.legend-token.def{background:#171717;border-color:#eee}.legend-ball{width:4mm;height:4mm;aspect-ratio:1;flex:none;background:#ffd43b;border-radius:50%;border:1px solid #111}.legend-cell{width:6mm;height:4mm;background:repeating-linear-gradient(135deg,#dbd7ca 0 2px,#aaa597 2px 4px);border:1px solid #444}
.turn-flow{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:3mm}.turn-flow li{display:grid;grid-template-columns:10mm 1fr;border:1px solid #9d988c;background:#faf8f0;min-height:25mm}.turn-flow>li>span{display:flex;align-items:center;justify-content:center;background:#111;color:var(--accent);font:900 18px var(--sans)}.turn-flow div{padding:3mm}.turn-flow strong{font-family:var(--sans)}.turn-flow p{font-size:9.7px;margin:1mm 0 0;color:#4b4841}
.state-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:3mm;margin-top:8mm}.state-strip>div{border:1px solid #9e998d;padding:4mm;text-align:center;background:#faf8f0}.state-strip b,.state-strip small{display:block}.state-strip small{font-size:8px;color:#5c5850}.state-token{width:15mm;height:15mm;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 2mm;border:2px solid #111;background:#f7f4e9;font-weight:900}.state-token.down{transform:rotate(90deg);border-color:#b52828;box-shadow:inset 0 0 0 2px #f7f4e9}.stack-symbol{height:18mm;position:relative;display:block}.stack-symbol i{position:absolute;width:14mm;height:14mm;border-radius:50%;display:flex;align-items:center;justify-content:center;font-style:normal;font-weight:900;border:2px solid #111}.stack-symbol i:first-child{background:#fff;left:38%;top:3mm}.stack-symbol i:last-child{background:#151515;color:#fff;left:46%;top:0}.ball-symbol{display:block;width:10mm;height:10mm;line-height:9mm;margin:2.5mm auto 5mm;background:#ffd43b;border:2px solid #111;border-radius:50%;font-size:0}
.movement-grid{display:grid;grid-template-columns:61mm 1fr;gap:4mm 8mm;align-items:center}.movement-copy h3{margin-top:0}.mini-diagram{margin:0}.mini-diagram figcaption{font-size:8px;font-weight:900;margin-bottom:1mm}.mini-board{display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(7,1fr);width:61mm;height:61mm;aspect-ratio:1;border:1px solid #111;background:#111}.mini-cell{position:relative;border:.2px solid #4b4b4b;min-width:0;min-height:0;display:flex;align-items:center;justify-content:center}.mini-cell.is-playable{background:repeating-linear-gradient(135deg,#e4e0d4 0 3px,#b8b3a6 3px 6px)}.mini-cell.is-closed{background:#090909}.mini-cell.mark-target{box-shadow:inset 0 0 0 2px #18904d}.mini-cell.mark-route{box-shadow:inset 0 0 0 1px #177d9f}.mini-cell.mark-landing{box-shadow:inset 0 0 0 2px #c89100}.mini-cell.mark-push{box-shadow:inset 0 0 0 2px #b52e2e}.mini-token{width:72%;height:72%;aspect-ratio:1;border-radius:50%;display:flex;align-items:center;justify-content:center;flex:none;font-size:7px;line-height:1;font-weight:900;border:1px solid #111}.mini-token.actor{background:#f4f1e8;color:#111}.mini-token.enemy{background:#161616;color:#fff;border-color:#fff}.mini-dot{width:26%;height:26%;aspect-ratio:1;flex:none;border-radius:50%;background:#158546}.mini-route-dot{width:18%;height:18%;aspect-ratio:1;flex:none;border-radius:50%;background:#147795}.mini-symbol{font-size:7px;font-weight:900;color:#6d5100}.mini-symbol.push{color:#a91f1f}.route-rules table,.visual-table,.action-table,.x-extended-layout table{width:100%;border-collapse:collapse;font-size:9px}.route-rules th,.route-rules td,.visual-table th,.visual-table td,.action-table th,.action-table td,.x-extended-layout th,.x-extended-layout td{border:1px solid #989388;padding:2.2mm;text-align:left}.route-rules th,.visual-table th,.action-table th,.x-extended-layout th{background:#171717;color:#fff;font-family:var(--sans)}
.action-split{display:grid;grid-template-columns:1fr 1fr;gap:6mm}.action-split article{border:1px solid #9b968a;padding:4mm;background:#faf8f1}.action-split .mini-diagram{max-width:48mm;float:right;margin:0 0 3mm 3mm}.cost-line{display:flex;gap:3mm;align-items:center}.cost-line b,.cost-line span{border:1px solid #777;padding:1.3mm 2mm}.cost-line span{background:#fff4bb}
.compare-table{display:grid;grid-template-columns:1fr 1fr;gap:5mm}.compare-table article{border:2px solid #111;padding:5mm}.stack-visual{display:grid;grid-template-columns:45mm 1fr;gap:6mm;align-items:center;border:1px solid #99948a;padding:5mm;margin-top:8mm}.stack-demo{height:38mm;position:relative}.stack-demo span{position:absolute;width:27mm;height:27mm;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:900;border:3px solid #111}.stack-demo .bottom{left:4mm;top:8mm;background:#f5f1e6}.stack-demo .top{left:14mm;top:1mm;background:#171717;color:#fff;border-color:#fff}
.action-table-wrap{margin:3mm 0 7mm}.action-table td:first-child{white-space:nowrap}.handoff-chain{display:flex;align-items:center;justify-content:center;gap:2mm;border:1px solid #938f84;padding:4mm;margin:4mm 0}.handoff-chain span{border:2px solid #111;border-radius:50%;width:13mm;height:13mm;display:flex;align-items:center;justify-content:center;font-size:8px;font-weight:900}.handoff-chain i{font-style:normal;color:#8a6d00}
.unlock-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:3mm;margin:5mm 0}.unlock-flow article{border:1px solid #989388;padding:4mm;background:#faf8f1;position:relative}.unlock-number{position:absolute;right:3mm;top:2mm;font:900 24px var(--sans);color:#c4a000}.unlock-flow h3{margin-top:0}.unlock-flow p{font-size:9.5px;margin:0}
.card-basics{display:grid;grid-template-columns:repeat(3,1fr);gap:3mm}.card-basics>div{border:1px solid #928e83;padding:4mm;background:#faf8f1}.card-basics strong,.card-basics span{display:block}.card-basics span{font-size:9px;color:#555149;margin-top:1mm}.card-rule-grid{display:grid;grid-template-columns:1fr 1fr;gap:3mm}.card-rule{border:2px solid #1a1a1a;padding:4mm;background:#faf8f1}.card-rule header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #aaa59a;padding-bottom:2mm}.card-rule header b{width:11mm;height:11mm;border-radius:50%;background:#111;color:#fff;display:flex;align-items:center;justify-content:center;font:900 16px var(--sans)}.card-rule.o-card header b{background:#e7e3d8;color:#111;border:2px solid #111}.card-rule.square-card header b{border-radius:0;background:#ffd43b;color:#111}.card-rule header span{font-size:8px}.card-rule h3{margin:3mm 0 2mm}.card-rule p{font-size:9px;margin-bottom:1.5mm}.card-rule.wide{grid-column:1/-1}.numbered-panels{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:3mm;counter-reset:cardsteps}.numbered-panels li{counter-increment:cardsteps;border:1px solid #99948a;padding:4mm 4mm 4mm 13mm;position:relative}.numbered-panels li::before{content:counter(cardsteps);position:absolute;left:3mm;top:3mm;width:7mm;height:7mm;background:#111;color:var(--accent);display:flex;align-items:center;justify-content:center;font-weight:900}.numbered-panels b,.numbered-panels span{display:block}.numbered-panels span{font-size:9px;color:#555149;margin-top:1mm}.x-extended-layout{display:grid;grid-template-columns:1fr 1fr;gap:6mm}
.online-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:3mm}.online-grid article{border:1px solid #989388;padding:4mm;background:#faf8f1}.online-grid h3{margin-top:0}.online-grid p{font-size:9.5px;margin:0}.visual-table{margin-top:3mm}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:3mm}.faq-grid article{border-bottom:1px solid #aaa59a;padding:2.5mm 0}.faq-grid h3{font-size:11px;margin:0 0 1mm}.faq-grid p{font-size:9px;margin:0;color:#4d4942}
.cheat-sheet{page:cheat-page;width:min(297mm,100%);min-height:210mm;padding:7mm 8mm;background:#eeeade}.paper-letter .cheat-sheet{width:min(279mm,100%);min-height:216mm}.cheat-header{display:flex;justify-content:space-between;align-items:end;border-bottom:2px solid #111;padding-bottom:3mm;margin-bottom:3mm}.cheat-header h2{font-size:23px;margin:0}.cheat-header .eyebrow{margin:0 0 1mm}.cheat-goal{display:flex;gap:3mm;align-items:center;border:2px solid #111;padding:2mm 3mm}.cheat-goal b{background:#111;color:var(--accent);padding:1.2mm 2mm}.cheat-goal span{font-size:9px;font-weight:900}.cheat-grid{display:grid;grid-template-columns:1.05fr 1.05fr 1fr 1fr;grid-template-rows:auto auto;gap:2.5mm;height:171mm}.cheat-grid>section{border:1px solid #77736a;background:#f9f7ef;padding:3mm;overflow:hidden}.cheat-grid h3{font-size:10px;letter-spacing:.06em;margin:0 0 2mm;border-bottom:1px solid #aaa59a;padding-bottom:1mm}.cheat-steps{padding-left:4.5mm;margin:0;font-size:8.4px}.cheat-steps li{margin-bottom:1mm}.cheat-note{font-size:7.5px;background:#fff0a8;padding:1.5mm;margin-top:2mm}.cheat-table{width:100%;border-collapse:collapse;font-size:7.8px}.cheat-table th,.cheat-table td{border-bottom:1px solid #c1bcae;padding:.8mm;text-align:left}.cheat-table td:nth-child(n+2){text-align:center}.cheat-moves{display:grid;grid-template-columns:1fr 1fr;gap:1mm}.cheat-moves>div{border:1px solid #aaa59a;padding:1.5mm}.cheat-moves b,.cheat-moves span{display:block}.cheat-moves span{font-size:7.5px}.micro-list{margin:1.5mm 0 0;padding-left:4mm;font-size:7.8px}.micro-list li{margin-bottom:.9mm}.cheat-cards{grid-column:1/3}.cheat-final{grid-column:3/5}.cheat-card-row{display:grid;grid-template-columns:25mm 1fr;border-bottom:1px solid #c0bbaf;padding:1mm 0;font-size:8px}.cheat-card-row b{color:#5d4b00}.checklist{display:grid;grid-template-columns:1fr 1fr;gap:1mm;font-size:8px}.cheat-final p{font-size:8.4px;background:#fff0a8;padding:2mm;margin-top:2mm}
@media(max-width:1100px){.screen-shell{grid-template-columns:1fr}.screen-nav{position:relative;height:auto;border-right:0;border-bottom:1px solid #252525}.screen-nav nav{grid-template-columns:repeat(3,1fr)}.screen-nav-actions{grid-template-columns:repeat(4,1fr);margin-top:16px}.screen-nav-actions button,.screen-nav-actions a:last-child{grid-column:auto}.rulebook-document{padding:16px}.print-page{min-height:auto;width:100%;padding:55px 36px 65px}.paper-letter .print-page{min-height:auto}.page-header{top:25px;left:36px;right:36px}.page-footer{left:36px;right:36px;bottom:25px}.cheat-sheet{min-height:auto;width:100%}.cheat-grid{height:auto}.setup-board{max-height:none}}
@media(max-width:760px){.screen-nav nav{grid-template-columns:1fr 1fr}.print-page{padding:48px 22px 62px}.page-header{left:22px;right:22px}.page-footer{left:22px;right:22px}.two-cols,.three-cards,.turn-flow,.action-split,.compare-table,.card-basics,.card-rule-grid,.online-grid,.faq-grid,.x-extended-layout,.unlock-flow{grid-template-columns:1fr}.movement-grid{grid-template-columns:1fr}.mini-diagram{max-width:210px}.columns-list{columns:1}.cheat-grid{grid-template-columns:1fr}.cheat-cards,.cheat-final{grid-column:auto}.setup-board{font-size:5px}}
@media print{
  :root{color-scheme:light}
  html,body{margin:0!important;padding:0!important;background:#fff!important;color:#000!important}
  body{font-size:10pt;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .screen-shell{display:block;margin:0!important;padding:0!important}
  .screen-nav{display:none!important}
  .rulebook-document{display:block;margin:0!important;padding:0!important}
  .print-page{box-shadow:none;margin:0!important;break-after:page;page-break-after:always;overflow:visible;background:#fff!important;color:#000!important;padding:11mm 12mm!important}
  .print-page:last-child{break-after:auto;page-break-after:auto}
  .paper-a4 .print-page{width:210mm!important;height:auto!important;min-width:210mm!important;min-height:297mm!important;max-width:210mm!important;max-height:none!important}
  .paper-letter .print-page{width:216mm!important;height:auto!important;min-width:216mm!important;min-height:279mm!important;max-width:216mm!important;max-height:none!important}
  .page-header,.page-footer{display:none!important}
  .page-content{padding-top:0!important}
  .cover-page{padding:0!important;background:#060606!important;color:#fff!important;overflow:hidden!important}
  .paper-a4 .cover-page{width:210mm!important;height:297mm!important;min-height:297mm!important;max-height:297mm!important}
  .paper-letter .cover-page{width:216mm!important;height:279mm!important;min-height:279mm!important;max-height:279mm!important}
  .paper-a4 .cheat-sheet{width:297mm!important;height:210mm!important;min-width:297mm!important;min-height:210mm!important;max-width:297mm!important;max-height:210mm!important}
  .paper-letter .cheat-sheet{width:279mm!important;height:216mm!important;min-width:279mm!important;min-height:216mm!important;max-width:279mm!important;max-height:216mm!important}
  .cheat-sheet{padding:5mm 6mm!important;background:#fff!important}
  a{text-decoration:none}
}

/* Ajustes de paginación robustos para motores PDF y navegadores. */
.card-rule-grid{display:flex;flex-wrap:wrap;gap:3mm}
.card-rule{flex:0 0 calc(50% - 1.5mm);min-height:0;break-inside:avoid;page-break-inside:avoid}
.card-rule.wide{flex-basis:100%}
.cheat-sheet{padding:5mm 6mm}
.cheat-header{padding-bottom:2mm;margin-bottom:2mm}
.cheat-grid{height:157mm;grid-template-rows:minmax(0,1.18fr) minmax(0,.82fr);gap:2mm}
.cheat-grid>section{padding:2.4mm}
.cheat-grid h3{margin-bottom:1.4mm}
.cheat-note{margin-top:1.3mm}
.cheat-steps li{margin-bottom:.7mm}
.cheat-card-row{padding:.7mm 0}
@media print{
  .card-rule-grid{display:flex!important;flex-wrap:wrap!important}
  .card-rule{flex:0 0 calc(50% - 1.5mm)!important}
  .card-rule.wide{flex-basis:100%!important}
}
.card-mode-table{width:100%;border-collapse:collapse;margin-top:4mm;font-size:8.8px}.card-mode-table th,.card-mode-table td{border:1px solid #938e82;padding:2.2mm;text-align:left;vertical-align:top}.card-mode-table th{background:#151515;color:#fff;font-family:var(--sans)}.card-mode-table td:first-child{font:900 16px var(--sans);text-align:center;width:10mm}.card-mode-table td:nth-child(3){white-space:nowrap;font-weight:900}

/* Carta/Letter: la altura útil es menor que A4. Se compactan solo las páginas
   que concentran más contenido, sin alterar la composición A4. */
@media print{
  .paper-letter .intro-page,
  .paper-letter .card-detail-page{
    padding-top:10mm!important;
    padding-right:11mm!important;
    padding-bottom:10mm!important;
    padding-left:11mm!important;
    font-size:9.2pt;
    line-height:1.42;
  }
  .paper-letter .intro-page h2,
  .paper-letter .card-detail-page h2{font-size:23px;margin-bottom:4.5mm}
  .paper-letter .intro-page h3,
  .paper-letter .card-detail-page h3{margin-top:3mm;margin-bottom:1.5mm}
  .paper-letter .intro-page p,
  .paper-letter .card-detail-page p{margin-bottom:2mm}
  .paper-letter .intro-page .lead-box{padding:4mm;margin-bottom:4mm}
  .paper-letter .intro-page .lead-box strong{font-size:17px}
  .paper-letter .intro-page .two-cols{gap:5mm}
  .paper-letter .intro-page .definitions-grid{gap:1mm 4mm}
  .paper-letter .intro-page .definitions-grid>div{padding:1.25mm 0;grid-template-columns:28mm 1fr}
  .paper-letter .card-detail-page .numbered-panels{gap:2mm}
  .paper-letter .card-detail-page .numbered-panels li{padding:2.7mm 3mm 2.7mm 12mm}
  .paper-letter .card-detail-page .numbered-panels li::before{top:2.4mm}
  .paper-letter .card-detail-page .small-note{font-size:8.8px}
  .paper-letter .card-detail-page .x-extended-layout{gap:4mm}
  .paper-letter .card-detail-page .tight-list li{margin-bottom:1.1mm}
  .paper-letter .card-detail-page table{font-size:8.3px}
  .paper-letter .card-detail-page .callout{padding:3mm 4mm;margin:3mm 0}
}


/* Geometría estable en pantalla y al imprimir. */
.setup-token,.mini-token,.legend-token,.legend-ball,.state-token,.stack-symbol i,.ball-symbol,.handoff-chain span,.card-rule header b{box-sizing:border-box;flex:0 0 auto}
.setup-token,.mini-token,.legend-token,.legend-ball,.state-token,.stack-symbol i,.ball-symbol,.handoff-chain span{aspect-ratio:1}
.card-rule.square-card header b{aspect-ratio:1;border-radius:0}
@media print{
  .setup-board{grid-template-columns:7mm repeat(13,8mm)!important;grid-template-rows:6mm repeat(17,8mm)!important;width:111mm!important;height:142mm!important;max-width:none!important;max-height:none!important}
  .setup-cell{width:8mm!important;height:8mm!important;min-width:8mm!important;min-height:8mm!important}
  .mini-board{grid-template-columns:repeat(7,1fr)!important;grid-template-rows:repeat(7,1fr)!important;width:61mm!important;height:61mm!important}
}

/* ==================================================================
   EDICIÓN LITERARIA MONOCROMA V3
   Solo afecta al documento y a su salida impresa. La navegación
   administrativa conserva íntegramente su diseño original.
   ================================================================== */
.rulebook-document{
  --book-serif:"Baskerville","Iowan Old Style","Palatino Linotype","Book Antiqua",Palatino,"Times New Roman",serif;
  --book-ink:#111;
  --book-muted:#555;
  gap:30px;
}
.rulebook-document .print-page,
.rulebook-document .cheat-sheet{
  background:#fff;
  color:var(--book-ink);
  border:1px solid #d0d0d0;
  box-shadow:0 18px 48px rgba(0,0,0,.48);
  font-family:var(--book-serif);
}
.rulebook-document .page-content,
.rulebook-document .page-content p,
.rulebook-document .page-content li,
.rulebook-document .page-content dd,
.rulebook-document .page-content td,
.rulebook-document .page-content th,
.rulebook-document .cheat-sheet,
.rulebook-document .cheat-sheet p,
.rulebook-document .cheat-sheet li,
.rulebook-document .cheat-sheet td,
.rulebook-document .cheat-sheet th{
  font-family:var(--book-serif);
  color:#171717;
}
.rulebook-document .page-content p{
  text-align:justify;
  text-wrap:pretty;
  hyphens:auto;
}
.rulebook-document .page-header,
.rulebook-document .page-footer{
  font-family:var(--book-serif);
  color:#4e4e4e;
  border-color:#888;
  letter-spacing:.12em;
  font-variant:small-caps;
}
.rulebook-document .page-header{justify-content:center}
.rulebook-document .page-header span:last-child{position:absolute;right:0}
.rulebook-document .eyebrow{
  color:#444;
  text-align:center;
  font-size:8px;
  letter-spacing:.2em;
  margin-bottom:2mm;
}
.rulebook-document h2{
  font:700 25px/1.15 var(--book-serif);
  text-align:center;
  letter-spacing:.065em;
  font-variant:small-caps;
  margin:0 auto 5.5mm;
  max-width:94%;
}
.rulebook-document h2::after{
  content:"";
  display:block;
  width:18mm;
  height:2px;
  margin:3mm auto 0;
  border-top:1px solid #222;
  border-bottom:1px solid #222;
}
.rulebook-document h3{
  font:700 14.5px/1.25 var(--book-serif);
  color:#171717;
  letter-spacing:.025em;
  font-variant:small-caps;
}
.rulebook-document h4{
  font:700 12px/1.3 var(--book-serif);
  color:#171717;
  font-variant:small-caps;
}
.rulebook-document .lead-box{
  border:0;
  border-top:3px double #333;
  border-bottom:3px double #333;
  background:#fff;
  padding:4.5mm 4mm;
  margin:0 0 6mm;
  text-align:center;
}
.rulebook-document .lead-box strong{
  display:block;
  font:700 18px/1.32 var(--book-serif);
}
.rulebook-document .lead-box p{
  color:#333;
  text-align:center;
  margin:2mm 0 0;
}
.rulebook-document .two-cols{gap:8mm}
.rulebook-document .two-cols>div+div{
  border-left:1px solid #aaa;
  padding-left:7mm;
}
.rulebook-document .definitions-grid>div{border-bottom-color:#bbb}
.rulebook-document .definitions-grid dt{
  font-family:var(--book-serif);
  font-variant:small-caps;
  letter-spacing:.02em;
}
.rulebook-document .definitions-grid dd{color:#333}
.rulebook-document .callout,
.rulebook-document .callout.warning{
  border:0;
  border-top:1px solid #555;
  border-bottom:1px solid #555;
  background:#fff;
  padding:3mm 5mm;
}
.rulebook-document .callout strong{
  display:block;
  font-family:var(--book-serif);
  font-variant:small-caps;
  letter-spacing:.04em;
  text-align:center;
}
.rulebook-document .callout p{text-align:center;margin:1mm 0 0}
.rulebook-document .three-cards article,
.rulebook-document .turn-flow li,
.rulebook-document .state-strip>div,
.rulebook-document .online-grid article,
.rulebook-document .appendix-columns article,
.rulebook-document .faq-grid article,
.rulebook-document .card-rule,
.rulebook-document .numbered-panels li,
.rulebook-document .cheat-grid>section,
.rulebook-document .action-split article,
.rulebook-document .compare-table article,
.rulebook-document .unlock-flow article,
.rulebook-document .card-basics>div{
  background:#fff;
  border-color:#888;
  box-shadow:none;
}
.rulebook-document .three-cards h3,
.rulebook-document .turn-flow strong,
.rulebook-document .state-strip b,
.rulebook-document .card-rule h3,
.rulebook-document .numbered-panels b,
.rulebook-document .cheat-header h2,
.rulebook-document .cheat-grid h3{
  font-family:var(--book-serif);
}
.rulebook-document .small-note,
.rulebook-document .three-cards p,
.rulebook-document .turn-flow p,
.rulebook-document .online-grid p,
.rulebook-document .appendix-columns p,
.rulebook-document .faq-grid p,
.rulebook-document .numbered-panels span{color:#333}

/* Portadilla: composición tipográfica decimonónica, sin masa de tinta. */
.rulebook-document .cover-page{
  background:#fff;
  color:#111;
  align-items:stretch;
  justify-content:center;
  padding:23mm 16mm 18mm;
}
.rulebook-document .cover-grid{display:none}
.rulebook-document .cover-content{
  width:100%;
  border:0;
  background:#fff;
  padding:16mm 8mm 8mm;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  box-shadow:none;
}
.rulebook-document .cover-kicker{
  color:#333;
  font-family:var(--book-serif);
  font-size:9px;
  letter-spacing:.21em;
  line-height:1.8;
  max-width:130mm;
}
.rulebook-document .cover-content h1{
  font:400 69px/1.04 var(--book-serif);
  color:#111;
  letter-spacing:.17em;
  margin:25mm 0 10mm;
  padding-left:.17em;
}
.rulebook-document .cover-subtitle{
  font:400 22px/1.35 var(--book-serif);
  color:#111;
  letter-spacing:.18em;
  text-transform:uppercase;
  max-width:135mm;
}
.rulebook-document .cover-rule{
  width:18mm;
  height:0;
  margin:14mm auto 11mm;
  border-top:3px double #111;
  background:none;
}
.rulebook-document .cover-version{
  color:#333;
  font-family:var(--book-serif);
  font-variant:small-caps;
  letter-spacing:.12em;
}
.rulebook-document .cover-promise{
  margin-top:15mm;
  color:#111;
  font-family:var(--book-serif);
  font-weight:400;
  letter-spacing:.17em;
  font-variant:small-caps;
}
.rulebook-document .cover-note{
  color:#333;
  border-top:1px solid #777;
  font-family:var(--book-serif);
  text-align:left;
}
.rulebook-document .cover-note strong{color:#111;font-variant:small-caps;letter-spacing:.08em}

/* Página legal / colofón. */
.rulebook-document .copyright-page{
  display:flex;
  align-items:center;
  justify-content:center;
}
.rulebook-document .copyright-content{
  width:74%;
  max-width:135mm;
  text-align:center;
}
.rulebook-document .copyright-mark{
  font:400 34px/1 var(--book-serif);
  letter-spacing:.18em;
  padding-left:.18em;
  margin-bottom:11mm;
}
.rulebook-document .copyright-content h2{font-size:20px;margin-bottom:10mm}
.rulebook-document .copyright-owner{
  font-variant:small-caps;
  letter-spacing:.05em;
  text-align:center!important;
  margin-bottom:9mm;
}
.rulebook-document .copyright-content>p:not(.copyright-mark):not(.copyright-owner){
  text-align:justify;
  line-height:1.7;
  margin-bottom:6mm;
}
.rulebook-document .copyright-colophon{
  margin-top:12mm;
  padding-top:5mm;
  border-top:1px solid #777;
  display:grid;
  gap:2mm;
  font-size:9px;
  color:#444;
  font-variant:small-caps;
  letter-spacing:.06em;
}

/* Preparación y tablero en página independiente. */
.rulebook-document .preparation-note{margin-top:9mm}
.rulebook-document .preparation-note strong{font-size:16px}
.rulebook-document .preparation-list{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:3mm 8mm;
  counter-reset:prep;
  list-style:none;
  padding:0;
  margin:0;
}
.rulebook-document .preparation-list li{
  counter-increment:prep;
  position:relative;
  padding-left:9mm;
  break-inside:avoid;
}
.rulebook-document .preparation-list li::before{
  content:counter(prep);
  position:absolute;
  left:0;
  top:.1em;
  width:6mm;
  height:6mm;
  border:1px solid #555;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:9px;
}
.rulebook-document .setup-page-content{
  min-height:252mm;
  display:flex;
  flex-direction:column;
  align-items:center;
}
.rulebook-document .setup-page-content h2{margin-bottom:2mm}
.rulebook-document .setup-intro{
  text-align:center!important;
  margin:0 0 2.5mm;
  font-style:italic;
}
.rulebook-document .setup-stage{
  flex:1;
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-height:0;
}
.rulebook-document .end-zone-label{
  width:124mm;
  max-width:100%;
  padding:1mm 0;
  border-top:1px solid #555;
  border-bottom:1px solid #555;
  text-align:center;
  font:700 8px/1.3 var(--book-serif);
  letter-spacing:.18em;
  font-variant:small-caps;
}
.rulebook-document .end-zone-top{margin-bottom:1.5mm}
.rulebook-document .end-zone-bottom{margin-top:1.5mm}
.rulebook-document .setup-board{
  grid-template-columns:7mm repeat(13,9mm);
  grid-template-rows:6mm repeat(17,9mm);
  width:124mm;
  height:159mm;
  max-width:100%;
  margin:0 auto;
  background:#fff;
  border:1.5px solid #111;
}
.rulebook-document .board-corner,
.rulebook-document .board-col-label,
.rulebook-document .board-row-label{
  background:#fff;
  color:#111;
  border-color:#777;
  font-family:var(--book-serif);
  font-size:8px;
}
.rulebook-document .setup-cell{
  width:9mm;
  height:9mm;
  min-width:9mm;
  min-height:9mm;
  border:.25px solid #777;
  overflow:visible;
  background:#fff;
}
.rulebook-document .setup-cell.is-playable,
.rulebook-document .mini-cell.is-playable,
.rulebook-document .legend-cell{
  background:repeating-linear-gradient(135deg,#fff 0 3px,#c6c6c6 3px 4px);
}
.rulebook-document .setup-cell.is-closed,
.rulebook-document .mini-cell.is-closed{background:#fff}
.rulebook-document .setup-cell.is-end-zone.is-playable{
  box-shadow:inset 0 0 0 1.5px #111;
}
.rulebook-document .setup-cell::after{
  color:#555;
  font-family:var(--book-serif);
  font-size:4.5px;
}
.rulebook-document .setup-token{
  width:78%;
  height:78%;
  background:#fff;
  color:#111;
  border:1.4px solid #111;
  font:700 8px/1 var(--book-serif);
}
.rulebook-document .setup-token.def{
  background:#fff;
  color:#111;
  border:3px double #111;
}
.rulebook-document .setup-token b{font:700 8px/1 var(--book-serif)}
.rulebook-document .setup-legend{
  margin-top:3mm;
  color:#222;
  font-family:var(--book-serif);
  font-size:8.5px;
}
.rulebook-document .legend-token{
  background:#fff;
  border:1px solid #111;
}
.rulebook-document .legend-token.def{border:3px double #111;background:#fff}
.rulebook-document .legend-cell{border:1px solid #555}

/* Balón: óvalo reconocible con costura, sin relleno de color. */
.rulebook-document .setup-ball,
.rulebook-document .legend-ball,
.rulebook-document .ball-symbol{
  position:relative;
  display:inline-block;
  width:8mm;
  height:5mm;
  aspect-ratio:auto;
  border:1.5px solid #111;
  border-radius:55% 45% 55% 45%;
  background:#fff;
  transform:rotate(-22deg);
  overflow:hidden;
}
.rulebook-document .setup-ball{
  position:absolute;
  width:46%;
  height:29%;
  right:-13%;
  top:-10%;
  z-index:3;
}
.rulebook-document .legend-ball{width:6mm;height:3.8mm;flex:none}
.rulebook-document .ball-symbol{width:15mm;height:9mm;margin:3mm auto 6mm;transform:rotate(-15deg)}
.rulebook-document .setup-ball::before,
.rulebook-document .legend-ball::before,
.rulebook-document .ball-symbol::before{
  content:"";
  position:absolute;
  left:15%;
  right:15%;
  top:50%;
  border-top:1px solid #111;
  transform:translateY(-50%);
}
.rulebook-document .setup-ball::after,
.rulebook-document .legend-ball::after,
.rulebook-document .ball-symbol::after{
  content:"≡";
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-54%) rotate(90deg);
  font:700 5px/1 var(--book-serif);
  color:#111;
}

/* Diagramas: casilla rayada = legal; casilla blanca = no jugable. */
.rulebook-document .mini-board{
  width:46mm;
  height:46mm;
  max-width:100%;
  background:#fff;
  border:1px solid #111;
}
.rulebook-document .mini-cell{border:.25px solid #777;background:#fff}
.rulebook-document .mini-cell.mark-target,
.rulebook-document .mini-cell.mark-route,
.rulebook-document .mini-cell.mark-landing,
.rulebook-document .mini-cell.mark-push{box-shadow:inset 0 0 0 1.2px #111}
.rulebook-document .mini-token{
  width:78%;
  height:78%;
  background:#fff;
  color:#111;
  border:1.2px solid #111;
  font:700 5.5px/1 var(--book-serif);
}
.rulebook-document .mini-token.enemy{background:#fff;color:#111;border:3px double #111}
.rulebook-document .mini-dot,
.rulebook-document .mini-route-dot{
  background:#fff;
  border:1px solid #111;
}
.rulebook-document .mini-symbol,
.rulebook-document .mini-symbol.push{color:#111;font-family:var(--book-serif)}
.rulebook-document .mini-diagram{
  width:46mm;
  max-width:100%;
  margin:0;
  overflow:hidden;
}
.rulebook-document .mini-diagram figcaption{
  min-height:2.2em;
  font-family:var(--book-serif);
  font-size:7.5px;
  font-weight:700;
  line-height:1.2;
}
.rulebook-document .diagram-key{
  display:block;
  margin-top:1mm;
  font:400 6.8px/1.25 var(--book-serif);
  color:#333;
}
.rulebook-document .movement-list{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:3mm 5mm;
}
.rulebook-document .movement-pair{
  display:grid;
  grid-template-columns:46mm minmax(0,1fr);
  gap:4mm;
  align-items:center;
  border-top:1px solid #999;
  padding-top:2mm;
  min-width:0;
  break-inside:avoid;
}
.rulebook-document .movement-copy{min-width:0}
.rulebook-document .movement-copy h3{margin:0 0 1.5mm;font-size:12px}
.rulebook-document .movement-copy p{margin:0;font-size:9.4px;line-height:1.42}
.rulebook-document .route-rules{margin-top:3mm;break-inside:avoid}
.rulebook-document .route-rules h3{margin:0 0 1.5mm;font-size:11px}
.rulebook-document .route-rules table{font-size:8px}
.rulebook-document .route-rules th,
.rulebook-document .route-rules td{
  background:#fff;
  color:#111;
  border-color:#888;
  padding:1.4mm;
}

/* Esquivas: cada regla contiene su esquema; nada puede desbordar. */
.rulebook-document .dodge-layout{
  display:grid;
  grid-template-columns:1fr;
  gap:4mm;
}
.rulebook-document .dodge-layout article{padding:3.5mm;min-width:0;break-inside:avoid}
.rulebook-document .dodge-layout article>h3{margin:0 0 1mm}
.rulebook-document .action-rule-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 50mm;
  gap:5mm;
  align-items:center;
  min-width:0;
}
.rulebook-document .action-rule-layout .mini-diagram,
.rulebook-document .action-rule-layout .mini-board{width:50mm;height:50mm}
.rulebook-document .action-rule-layout .tight-list{font-size:9.3px;line-height:1.38}
.rulebook-document .action-rule-layout .tight-list li{margin-bottom:1mm}
.rulebook-document .cost-line{margin:0 0 2mm}
.rulebook-document .cost-line b,
.rulebook-document .cost-line span{background:#fff;border-color:#777;font-family:var(--book-serif)}

/* Turno, desbloqueo y bloques: composición compacta y estable. */
.rulebook-document .turn-flow{
  grid-template-columns:1fr 1fr;
  gap:2.5mm;
}
.rulebook-document .turn-flow li{
  grid-template-columns:8mm 1fr;
  min-height:0;
  break-inside:avoid;
}
.rulebook-document .turn-flow>li>span{
  background:#fff;
  color:#111;
  border-right:1px solid #777;
  font:700 15px var(--book-serif);
}
.rulebook-document .turn-flow div{padding:2.5mm}
.rulebook-document .turn-flow p{font-size:8.8px;line-height:1.32}
.rulebook-document .three-cards{gap:2.5mm;margin:4mm 0}
.rulebook-document .three-cards article{padding:3mm}
.rulebook-document .three-cards h3{font-size:12px}
.rulebook-document .three-cards p{font-size:8.5px;line-height:1.35}
.rulebook-document .unlock-flow{gap:2.5mm;margin:4mm 0}
.rulebook-document .unlock-flow article{padding:3mm 9mm 3mm 3mm;min-height:0}
.rulebook-document .unlock-number{
  right:3mm;
  top:50%;
  transform:translateY(-50%);
  color:#111;
  font:700 19px/1 var(--book-serif);
}
.rulebook-document .unlock-flow h3{font-size:11.5px;margin-bottom:1mm}
.rulebook-document .unlock-flow p{font-size:8.6px;line-height:1.3}

/* Uniformidad tipográfica y control de particiones. */
.rulebook-document .numbered-panels li::before,
.rulebook-document .turn-flow>li>span{
  background:#fff;
  color:#111;
  font-family:var(--book-serif);
}
.rulebook-document .numbered-panels li::before{border:1px solid #777}
.rulebook-document .route-rules th,
.rulebook-document .visual-table th,
.rulebook-document .action-table th,
.rulebook-document .x-extended-layout th,
.rulebook-document .card-mode-table th{
  background:#fff;
  color:#111;
  border-color:#666;
  font-family:var(--book-serif);
  font-variant:small-caps;
}
.rulebook-document .card-rule header b,
.rulebook-document .card-rule.o-card header b,
.rulebook-document .card-rule.square-card header b{
  background:#fff;
  color:#111;
  border:1px solid #111;
  font-family:var(--book-serif);
}
.rulebook-document .stack-demo .bottom,
.rulebook-document .stack-demo .top,
.rulebook-document .state-token,
.rulebook-document .stack-symbol i{
  background:#fff;
  color:#111;
  border-color:#111;
}
.rulebook-document .state-token.down{border-color:#111;box-shadow:none}
.rulebook-document .state-strip{margin-top:5mm}
.rulebook-document .state-strip>div{padding:3mm}
.rulebook-document .state-strip small{color:#333}
.rulebook-document .action-table-wrap,
.rulebook-document table{max-width:100%;overflow-wrap:anywhere}
.rulebook-document .print-page article,
.rulebook-document .print-page figure,
.rulebook-document .print-page table,
.rulebook-document .print-page .lead-box,
.rulebook-document .print-page .callout,
.rulebook-document .print-page .state-strip,
.rulebook-document .print-page .stack-visual,
.rulebook-document .print-page .card-basics,
.rulebook-document .print-page .numbered-panels,
.rulebook-document .print-page .x-extended-layout,
.rulebook-document .print-page .route-rules{
  break-inside:avoid;
  page-break-inside:avoid;
}

/* Apéndice digital explícitamente complementario. */
.rulebook-document .appendix-lead{
  max-width:138mm;
  margin:0 auto 8mm;
  text-align:center!important;
  font-style:italic;
  line-height:1.65;
}
.rulebook-document .appendix-columns{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7mm;
  margin:8mm 0;
}
.rulebook-document .appendix-columns article{padding:5mm;border:1px solid #888}
.rulebook-document .appendix-columns h3{margin-top:0;text-align:center}

/* Cheat sheet en orientación vertical, legible y ajustada a una sola hoja. */
.rulebook-document .cheat-sheet{
  page:cheat-page;
  width:min(210mm,100%);
  min-height:297mm;
  padding:13mm 12mm 12mm;
  background:#fff;
}
.paper-letter .rulebook-document .cheat-sheet{
  width:min(216mm,100%);
  min-height:279mm;
}
.rulebook-document .cheat-header{
  align-items:center;
  border-bottom:3px double #222;
  padding-bottom:2mm;
  margin-bottom:3mm;
}
.rulebook-document .cheat-header h2{
  text-align:left;
  font-size:18px;
  letter-spacing:.06em;
  max-width:none;
}
.rulebook-document .cheat-header h2::after{display:none}
.rulebook-document .cheat-goal{
  border:1px solid #333;
  background:#fff;
  padding:1.5mm 2mm;
}
.rulebook-document .cheat-goal b{
  background:#fff;
  color:#111;
  border-right:1px solid #333;
  font-family:var(--book-serif);
  padding:.8mm 1.5mm;
}
.rulebook-document .cheat-goal span{font-size:8px}
.rulebook-document .cheat-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  grid-auto-flow:row;
  grid-template-rows:none;
  gap:2.5mm 4mm;
  height:auto;
}
.rulebook-document .cheat-grid>section{
  padding:2.5mm 3mm;
  overflow:visible;
  border:1px solid #888;
  break-inside:avoid;
}
.rulebook-document .cheat-grid h3{font-size:9px;margin:0 0 1.4mm;padding-bottom:.8mm}
.rulebook-document .cheat-steps{font-size:7.5px;line-height:1.25}
.rulebook-document .cheat-steps li{margin-bottom:.6mm}
.rulebook-document .cheat-note,
.rulebook-document .cheat-final p{
  background:repeating-linear-gradient(135deg,#fff 0 4px,#ddd 4px 5px);
  color:#111;
  font-size:7px;
  padding:1.2mm;
  margin-top:1mm;
}
.rulebook-document .cheat-table{font-size:7px}
.rulebook-document .cheat-table th,
.rulebook-document .cheat-table td{padding:.55mm}
.rulebook-document .cheat-moves>div{padding:1mm}
.rulebook-document .cheat-moves span,
.rulebook-document .micro-list,
.rulebook-document .cheat-card-row,
.rulebook-document .checklist{font-size:7px;line-height:1.25}
.rulebook-document .micro-list{margin-top:1mm}
.rulebook-document .micro-list li{margin-bottom:.55mm}
.rulebook-document .cheat-cards,
.rulebook-document .cheat-final{grid-column:auto}
.rulebook-document .cheat-card-row{grid-template-columns:20mm 1fr;padding:.55mm 0}
.rulebook-document .checklist{grid-template-columns:1fr;gap:.5mm}

@media(max-width:1100px){
  .rulebook-document{padding:16px;gap:20px}
  .rulebook-document .print-page{background:#fff}
  .rulebook-document .setup-page-content{min-height:auto}
}
@media(max-width:760px){
  .rulebook-document h2{font-size:22px;max-width:100%}
  .rulebook-document .two-cols>div+div{border-left:0;padding-left:0;border-top:1px solid #aaa;padding-top:5mm}
  .rulebook-document .cover-content h1{font-size:52px}
  .rulebook-document .cover-subtitle{font-size:17px}
  .rulebook-document .copyright-content{width:90%}
  .rulebook-document .preparation-list,
  .rulebook-document .movement-list,
  .rulebook-document .appendix-columns,
  .rulebook-document .cheat-grid{grid-template-columns:1fr}
  .rulebook-document .movement-pair{grid-template-columns:42mm minmax(0,1fr)}
  .rulebook-document .movement-pair .mini-board,
  .rulebook-document .movement-pair .mini-diagram{width:42mm;height:42mm}
  .rulebook-document .action-rule-layout{grid-template-columns:1fr}
  .rulebook-document .action-rule-layout .mini-diagram{margin:0 auto}
  .rulebook-document .setup-stage{overflow-x:auto;align-items:flex-start}
  .rulebook-document .end-zone-label{min-width:124mm}
  .rulebook-document .setup-board{min-width:124mm}
  .rulebook-document .cheat-sheet{width:100%;min-height:auto}
}

@media print{
  :root{color-scheme:light}
  html,body{background:#fff!important;color:#000!important}
  body{-webkit-print-color-adjust:economy!important;print-color-adjust:economy!important}
  .rulebook-document{
    display:block!important;
    margin:0!important;
    padding:0!important;
  }
  .rulebook-document .print-page,
  .rulebook-document .cheat-sheet{
    box-sizing:border-box!important;
    margin:0!important;
    border:0!important;
    box-shadow:none!important;
    background:#fff!important;
    color:#000!important;
    overflow:hidden!important;
    break-inside:avoid-page!important;
    page-break-inside:avoid!important;
    break-after:page!important;
    page-break-after:always!important;
  }
  .paper-a4 .rulebook-document .print-page,
  .paper-a4 .rulebook-document .cheat-sheet{
    width:210mm!important;
    height:297mm!important;
    min-width:210mm!important;
    min-height:297mm!important;
    max-width:210mm!important;
    max-height:297mm!important;
  }
  .paper-letter .rulebook-document .print-page,
  .paper-letter .rulebook-document .cheat-sheet{
    width:216mm!important;
    height:279mm!important;
    min-width:216mm!important;
    min-height:279mm!important;
    max-width:216mm!important;
    max-height:279mm!important;
  }
  .rulebook-document .print-page:last-child,
  .rulebook-document .cheat-sheet:last-child{break-after:auto!important;page-break-after:auto!important}
  .rulebook-document .page-header,.rulebook-document .page-footer{display:none!important}
  .rulebook-document .page-content{padding-top:0!important}
  .rulebook-document .cover-page{padding:22mm 16mm 18mm!important}
  .rulebook-document .cover-content{background:#fff!important;color:#000!important}
  .rulebook-document .print-page *,
  .rulebook-document .print-page *::before,
  .rulebook-document .print-page *::after,
  .rulebook-document .cheat-sheet *,
  .rulebook-document .cheat-sheet *::before,
  .rulebook-document .cheat-sheet *::after{
    color:#000!important;
    text-shadow:none!important;
    box-shadow:none!important;
  }
  .rulebook-document .lead-box,
  .rulebook-document .callout,
  .rulebook-document .callout.warning,
  .rulebook-document article,
  .rulebook-document .state-strip>div,
  .rulebook-document .card-rule,
  .rulebook-document .cheat-grid>section,
  .rulebook-document th,
  .rulebook-document td,
  .rulebook-document .cost-line b,
  .rulebook-document .cost-line span{
    background-color:#fff!important;
  }
  .rulebook-document .setup-board{
    grid-template-columns:7mm repeat(13,9mm)!important;
    grid-template-rows:6mm repeat(17,9mm)!important;
    width:124mm!important;
    height:159mm!important;
    max-width:124mm!important;
    max-height:159mm!important;
  }
  .rulebook-document .setup-cell{
    width:9mm!important;
    height:9mm!important;
    min-width:9mm!important;
    min-height:9mm!important;
  }
  .rulebook-document .setup-cell.is-playable,
  .rulebook-document .mini-cell.is-playable,
  .rulebook-document .legend-cell{
    background-image:repeating-linear-gradient(135deg,#fff 0 3px,#c9c9c9 3px 4px)!important;
  }
  .rulebook-document .setup-cell.is-closed,
  .rulebook-document .mini-cell.is-closed{
    background-image:none!important;
    background-color:#fff!important;
  }
  .rulebook-document .setup-ball,
  .rulebook-document .legend-ball,
  .rulebook-document .ball-symbol,
  .rulebook-document .setup-token,
  .rulebook-document .mini-token,
  .rulebook-document .state-token,
  .rulebook-document .stack-symbol i,
  .rulebook-document .legend-token{
    background:#fff!important;
  }
  .rulebook-document .cheat-note,
  .rulebook-document .cheat-final p{
    background-image:repeating-linear-gradient(135deg,#fff 0 4px,#ddd 4px 5px)!important;
  }
  .rulebook-document .turn-flow{grid-template-columns:1fr 1fr!important}
  .rulebook-document .turn-flow li{min-height:0!important}
  .rulebook-document .movement-list{grid-template-columns:1fr 1fr!important}
  .rulebook-document .movement-pair{grid-template-columns:43mm minmax(0,1fr)!important;gap:3mm!important}
  .rulebook-document .movement-pair .mini-board,
  .rulebook-document .movement-pair .mini-diagram{width:43mm!important;height:43mm!important}
  .rulebook-document .action-rule-layout{grid-template-columns:minmax(0,1fr) 48mm!important}
  .rulebook-document .action-rule-layout .mini-board,
  .rulebook-document .action-rule-layout .mini-diagram{width:48mm!important;height:48mm!important}
  .rulebook-document .cheat-sheet{padding:12mm 11mm!important}
  .rulebook-document .cheat-grid{grid-template-columns:1fr 1fr!important;height:auto!important}
  .rulebook-document .cheat-cards,.rulebook-document .cheat-final{grid-column:auto!important}
  a{text-decoration:none!important}
}

/* Corrección de altura: el pie explicativo forma parte de la figura y no se recorta. */
.rulebook-document .movement-pair .mini-diagram,
.rulebook-document .action-rule-layout .mini-diagram{height:auto}
@media print{
  .rulebook-document .movement-pair .mini-diagram,
  .rulebook-document .action-rule-layout .mini-diagram{height:auto!important}
}

/* ==================================================================
   EDICIÓN LITERARIA MONOCROMA V4
   Ajustes de composición clásica y de impresión doméstica.
   No modifica la navegación administrativa.
   ================================================================== */
.rulebook-document{
  gap:34px;
}
.rulebook-document .print-page:not(.cover-page):not(.copyright-page):not(.cheat-sheet){
  padding:20mm 19mm 18mm;
}
.rulebook-document .page-header{
  top:8mm;
  left:19mm;
  right:19mm;
  padding-bottom:1.8mm;
  border-bottom:1px solid #aaa;
  font-size:8px;
  letter-spacing:.13em;
}
.rulebook-document .page-footer{
  left:19mm;
  right:19mm;
  bottom:7mm;
  padding-top:1.8mm;
  border-top:1px solid #aaa;
  font-size:7.7px;
  text-align:center;
}
.rulebook-document .page-content{padding-top:6mm}
.rulebook-document h2{
  font-size:22px;
  line-height:1.18;
  letter-spacing:.055em;
  margin-bottom:4.2mm;
}
.rulebook-document h2::after{
  width:12mm;
  height:0;
  margin-top:2.2mm;
  border-top:1px solid #333;
  border-bottom:0;
}
.rulebook-document h3{
  font-size:13.2px;
  letter-spacing:.018em;
  margin-top:4mm;
}
.rulebook-document h4{font-size:11.5px}
.rulebook-document .page-content p,
.rulebook-document .page-content li,
.rulebook-document .page-content dd{
  font-size:10.2px;
  line-height:1.48;
}
.rulebook-document .eyebrow{
  font-size:7.4px;
  letter-spacing:.18em;
  margin-bottom:1.5mm;
}
.rulebook-document .lead-box{
  border-top:1px solid #555;
  border-bottom:1px solid #555;
  padding:3.2mm 5mm;
  margin-bottom:4.5mm;
}
.rulebook-document .lead-box strong{
  font-size:15.5px;
  line-height:1.32;
}
.rulebook-document .lead-box p{font-size:9.5px}
.rulebook-document .two-cols{gap:7mm}
.rulebook-document .two-cols>div+div{padding-left:6mm}
.rulebook-document .definitions-grid>div{
  grid-template-columns:27mm 1fr;
  padding:1.4mm 0;
}
.rulebook-document .definitions-grid dt{font-size:9.5px}
.rulebook-document .definitions-grid dd{font-size:9.4px;line-height:1.36}

/* Portada: portadilla clásica, sin reclamos modernos ni ornamentos pesados. */
.rulebook-document .cover-page{
  padding:0;
  display:block;
  background:#fff;
}
.rulebook-document .cover-content{
  width:auto;
  height:100%;
  padding:35mm 24mm 24mm;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  text-align:center;
}
.rulebook-document .cover-kicker{
  max-width:125mm;
  margin:0;
  font-size:8px;
  letter-spacing:.17em;
  line-height:1.55;
}
.rulebook-document .cover-content h1{
  margin:29mm 0 7mm;
  font-size:61px;
  line-height:1;
  letter-spacing:.2em;
  padding-left:.2em;
}
.rulebook-document .cover-subtitle{
  max-width:120mm;
  margin:0;
  font-size:19px;
  line-height:1.35;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.rulebook-document .cover-byline{
  margin:16mm 0 1.5mm;
  font-style:italic;
  font-size:11px;
}
.rulebook-document .cover-author{
  margin:0;
  font-size:16px;
  letter-spacing:.08em;
  font-variant:small-caps;
}
.rulebook-document .cover-ornament{
  margin:16mm 0 12mm;
  font-size:10px;
  letter-spacing:.65em;
  padding-left:.65em;
}
.rulebook-document .cover-version{
  margin:0;
  font-size:10px;
  letter-spacing:.1em;
}
.rulebook-document .cover-imprint{
  margin-top:auto;
  padding-top:6mm;
  width:72mm;
  border-top:1px solid #555;
  font-size:8px;
  letter-spacing:.13em;
  font-variant:small-caps;
}

/* Tablero: trama de bajo consumo y end zones inequívocas. */
.rulebook-document .setup-page-content{
  min-height:247mm;
}
.rulebook-document .setup-intro{margin-bottom:1.5mm}
.rulebook-document .end-zone-label{
  width:124mm;
  padding:.8mm 0;
  border-top:1px solid #777;
  border-bottom:1px solid #777;
  font-size:7px;
  letter-spacing:.12em;
}
.rulebook-document .setup-cell.is-playable,
.rulebook-document .mini-cell.is-playable,
.rulebook-document .legend-cell{
  background-color:#fff;
  background-image:repeating-linear-gradient(135deg,transparent 0 4px,#777 4px 4.45px);
  -webkit-print-color-adjust:exact;
  print-color-adjust:exact;
}
.rulebook-document .setup-cell.is-closed,
.rulebook-document .mini-cell.is-closed{
  background:#fff;
}
.rulebook-document .setup-cell.is-end-zone.is-playable{
  outline:1.4px solid #111;
  outline-offset:-2px;
  box-shadow:none;
}
.rulebook-document .setup-legend{
  margin-top:2mm;
  gap:4mm;
  font-size:7px;
}

/* Secuencia y recursos: seis pasos en tres columnas y notas sin cajas pesadas. */
.rulebook-document .turn-flow{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:2mm 3mm;
}
.rulebook-document .turn-flow li{
  display:grid;
  grid-template-columns:7mm 1fr;
  border:0;
  border-top:1px solid #777;
  padding-top:1.2mm;
}
.rulebook-document .turn-flow>li>span{
  border:0;
  align-items:flex-start;
  padding-top:.2mm;
  font-size:13px;
}
.rulebook-document .turn-flow div{padding:0 0 0 1mm}
.rulebook-document .turn-flow strong{font-size:10px}
.rulebook-document .turn-flow p{font-size:7.8px;line-height:1.28;margin-top:.5mm}
.rulebook-document .three-cards{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:4mm;
  margin:4mm 0 3mm;
}
.rulebook-document .three-cards article{
  border:0;
  border-top:1px solid #777;
  padding:2mm 0 0;
}
.rulebook-document .three-cards h3{margin:0 0 .8mm;font-size:10.5px}
.rulebook-document .three-cards p{font-size:7.8px;line-height:1.3}

/* Movimiento: leyenda explícita y diagramas más claros. */
.rulebook-document .movement-list{gap:3mm 6mm}
.rulebook-document .movement-pair{
  grid-template-columns:48mm minmax(0,1fr);
  gap:3mm;
  padding-top:1.7mm;
}
.rulebook-document .movement-pair .mini-diagram,
.rulebook-document .movement-pair .mini-board{width:48mm;height:48mm}
.rulebook-document .mini-diagram figcaption{
  min-height:0;
  margin-bottom:.8mm;
  font-size:7px;
}
.rulebook-document .diagram-key{
  margin-top:.7mm;
  font-size:6.5px;
  text-align:center;
}
.rulebook-document .key-target,
.rulebook-document .key-route,
.rulebook-document .legend-destination,
.rulebook-document .legend-route{
  display:inline-block;
  vertical-align:middle;
  border:1px solid #111;
  border-radius:50%;
  background:#fff;
}
.rulebook-document .key-target,
.rulebook-document .legend-destination{width:3mm;height:3mm}
.rulebook-document .key-route,
.rulebook-document .legend-route{width:1.6mm;height:1.6mm;background:#111}
.rulebook-document .movement-legend{
  margin:3mm 0 2.5mm;
  padding:1.8mm 0;
  border-top:1px solid #999;
  border-bottom:1px solid #999;
  display:flex;
  justify-content:center;
  gap:6mm;
  flex-wrap:wrap;
  font-size:7.2px;
}
.rulebook-document .movement-legend span{
  display:flex;
  align-items:center;
  gap:1.4mm;
}
.rulebook-document .movement-legend .legend-cell{width:5mm;height:3.5mm;border:1px solid #777}
.rulebook-document .mini-dot{width:31%;height:31%;background:#fff;border:1.2px solid #111}
.rulebook-document .mini-route-dot{width:17%;height:17%;background:#111;border:0}
.rulebook-document .movement-copy p{font-size:8.7px;line-height:1.38}

/* Esquivas: diagramas mayores, reglas compactas y sin altura artificial. */
.rulebook-document .dodge-layout{gap:3mm}
.rulebook-document .dodge-layout article{
  padding:2.7mm 3mm;
  border:1px solid #999;
}
.rulebook-document .action-rule-layout{
  grid-template-columns:minmax(0,1fr) 56mm;
  gap:4mm;
  align-items:center;
}
.rulebook-document .action-rule-layout .mini-diagram,
.rulebook-document .action-rule-layout .mini-board{width:56mm;height:56mm}
.rulebook-document .action-rule-layout .tight-list{font-size:8.5px;line-height:1.33}
.rulebook-document .action-rule-layout .tight-list li{margin-bottom:.65mm}
.rulebook-document .cost-line b,
.rulebook-document .cost-line span{padding:.8mm 1.4mm;font-size:8px}

/* Desbloqueo y cartas: composiciones horizontales en papel. */
.rulebook-document .unlock-flow{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:4mm;
}
.rulebook-document .unlock-flow article{
  border:0;
  border-top:1px solid #777;
  padding:2mm 8mm 0 0;
}
.rulebook-document .unlock-number{
  right:0;
  top:1.8mm;
  transform:none;
  font-size:15px;
}
.rulebook-document .unlock-flow h3{font-size:10px;margin:0 0 .8mm}
.rulebook-document .unlock-flow p{font-size:7.7px;line-height:1.3}
.rulebook-document #desbloqueo .action-split{
  grid-template-columns:1fr 1fr;
  gap:6mm;
}
.rulebook-document #desbloqueo .action-split article{
  border:0;
  border-top:1px solid #777;
  padding:2.5mm 0 0;
}
.rulebook-document .card-basics{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:5mm;
}
.rulebook-document .card-basics>div{
  border:0;
  border-top:1px solid #777;
  padding:2.2mm 0 0;
}
.rulebook-document .card-basics strong{font-size:10px}
.rulebook-document .card-basics span{font-size:7.7px;line-height:1.3}

/* Cheat sheet: se aprovecha la zona inferior con leyenda y estados. */
.rulebook-document .cheat-sheet{padding:15mm 15mm 14mm}
.rulebook-document .cheat-grid{
  grid-template-columns:1fr 1fr;
  gap:3mm 5mm;
}
.rulebook-document .cheat-grid>section{padding:2.5mm 3mm}
.rulebook-document .cheat-symbols,
.rulebook-document .cheat-states{min-height:28mm}
.rulebook-document .cheat-symbol-row{
  display:grid;
  grid-template-columns:6mm 1fr 7mm 1fr;
  align-items:center;
  gap:1mm;
  margin-bottom:1mm;
  font-size:7px;
}
.rulebook-document .cheat-symbol-row .legend-cell{width:5mm;height:3.5mm;border:1px solid #777}
.rulebook-document .cheat-symbol-row b{font-size:7px;text-align:center}

@media(max-width:760px){
  .rulebook-document .turn-flow,
  .rulebook-document .three-cards,
  .rulebook-document .unlock-flow,
  .rulebook-document #desbloqueo .action-split,
  .rulebook-document .card-basics{grid-template-columns:1fr}
  .rulebook-document .movement-legend{justify-content:flex-start}
}

@media print{
  body{-webkit-print-color-adjust:economy!important;print-color-adjust:economy!important}
  .rulebook-document .print-page:not(.cover-page):not(.copyright-page):not(.cheat-sheet){
    padding:18mm 18mm 17mm!important;
  }
  .rulebook-document .page-header,
  .rulebook-document .page-footer{
    display:flex!important;
  }
  .rulebook-document .page-header{top:7mm!important;left:18mm!important;right:18mm!important}
  .rulebook-document .page-footer{bottom:6mm!important;left:18mm!important;right:18mm!important}
  .rulebook-document .page-content{padding-top:5mm!important}
  .rulebook-document .cover-page{padding:0!important}
  .rulebook-document .cover-content{padding:35mm 24mm 24mm!important}
  .rulebook-document .copyright-page{padding:22mm 24mm!important}
  .rulebook-document .setup-page{padding:16mm 18mm 15mm!important}
  .rulebook-document .setup-page .page-content{padding-top:4mm!important}
  .rulebook-document .setup-page-content{min-height:258mm!important}
  .rulebook-document .setup-cell.is-playable,
  .rulebook-document .mini-cell.is-playable,
  .rulebook-document .legend-cell{
    background-color:#fff!important;
    background-image:repeating-linear-gradient(135deg,transparent 0 4px,#777 4px 4.45px)!important;
    -webkit-print-color-adjust:exact!important;
    print-color-adjust:exact!important;
  }
  .rulebook-document .setup-cell.is-end-zone.is-playable{
    outline:1.4px solid #111!important;
    outline-offset:-2px!important;
  }
  .rulebook-document .mini-route-dot{
    background:#111!important;
    -webkit-print-color-adjust:exact!important;
    print-color-adjust:exact!important;
  }
  .rulebook-document .turn-flow{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .rulebook-document .three-cards{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .rulebook-document .unlock-flow{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .rulebook-document #desbloqueo .action-split{grid-template-columns:1fr 1fr!important}
  .rulebook-document .card-basics{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .rulebook-document .movement-pair{grid-template-columns:48mm minmax(0,1fr)!important}
  .rulebook-document .movement-pair .mini-diagram,
  .rulebook-document .movement-pair .mini-board{width:48mm!important;height:48mm!important}
  .rulebook-document .action-rule-layout{grid-template-columns:minmax(0,1fr) 56mm!important}
  .rulebook-document .action-rule-layout .mini-diagram,
  .rulebook-document .action-rule-layout .mini-board{width:56mm!important;height:56mm!important}
  .rulebook-document .cheat-sheet{padding:15mm 15mm 14mm!important}
  .rulebook-document .cheat-grid{grid-template-columns:1fr 1fr!important}
}

/* V4.1: tramas impresas como caracteres, no dependientes de "imprimir fondos". */
.rulebook-document .setup-cell.is-playable::before,
.rulebook-document .mini-cell.is-playable::before,
.rulebook-document .legend-cell::before{
  content:"////";
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  white-space:nowrap;
  color:#aaa;
  font:400 6px/1 var(--book-serif);
  letter-spacing:-1px;
  z-index:0;
  pointer-events:none;
}
.rulebook-document .mini-cell.is-playable::before{font-size:5px}
.rulebook-document .legend-cell{position:relative;overflow:hidden}
.rulebook-document .legend-cell::before{font-size:4px}
.rulebook-document .setup-cell::after{z-index:1}
.rulebook-document .setup-cell>* ,
.rulebook-document .mini-cell>*{position:relative;z-index:2}
.rulebook-document .mini-dot,
.rulebook-document .mini-route-dot,
.rulebook-document .mini-token,
.rulebook-document .mini-symbol{z-index:3}
.rulebook-document .setup-legend{
  display:grid;
  grid-template-columns:repeat(4,max-content);
  justify-content:center;
  align-items:center;
  gap:2mm 5mm;
  font-size:7.3px;
}
.rulebook-document .setup-token,
.rulebook-document .setup-token b{font-size:8.5px}
.rulebook-document .cheat-note,
.rulebook-document .cheat-final p{
  background:#fff!important;
  background-image:none!important;
  border-top:1px solid #999;
  border-bottom:1px solid #999;
}
@media print{
  .rulebook-document .setup-cell.is-playable::before,
  .rulebook-document .mini-cell.is-playable::before,
  .rulebook-document .legend-cell::before{
    color:#999!important;
  }
  .rulebook-document .cheat-note,
  .rulebook-document .cheat-final p{
    background:#fff!important;
    background-image:none!important;
  }
}

/* V4.2: símbolos tipográficos robustos para impresión. */
.rulebook-document .mini-target-symbol,
.rulebook-document .mini-route-symbol{
  position:relative;
  z-index:3;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:100%;
  color:#111;
  font-family:"Times New Roman",serif;
  line-height:1;
}
.rulebook-document .mini-target-symbol{font-size:14px}
.rulebook-document .mini-route-symbol{font-size:9px}
.rulebook-document .key-target,
.rulebook-document .key-route,
.rulebook-document .legend-destination,
.rulebook-document .legend-route{
  width:auto;
  height:auto;
  border:0;
  border-radius:0;
  background:transparent;
  font-style:normal;
  font-family:"Times New Roman",serif;
  line-height:1;
}
.rulebook-document .key-target,
.rulebook-document .legend-destination{font-size:14px}
.rulebook-document .key-route,
.rulebook-document .legend-route{font-size:10px}
.rulebook-document .legend-cell{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#777;
  font:400 6px/1 var(--book-serif);
  letter-spacing:-1px;
}
.rulebook-document .legend-cell::before{display:none}

/* Letter tiene 18 mm menos de alto: se reduce solo el tablero dedicado. */
@media print{
  .paper-letter .rulebook-document .setup-board{
    grid-template-columns:7mm repeat(13,8.4mm)!important;
    grid-template-rows:6mm repeat(17,8.4mm)!important;
    width:116.2mm!important;
    height:148.8mm!important;
    max-width:116.2mm!important;
    max-height:148.8mm!important;
  }
  .paper-letter .rulebook-document .setup-cell{
    width:8.4mm!important;
    height:8.4mm!important;
    min-width:8.4mm!important;
    min-height:8.4mm!important;
  }
  .paper-letter .rulebook-document .end-zone-label{width:116.2mm!important}
  .paper-letter .rulebook-document .setup-page-content{min-height:239mm!important}
  .paper-letter .rulebook-document .setup-legend{margin-top:1.5mm!important}
}


/* ==================================================================
   CORRECCIONES EDITORIALES V5
   Ajustes dirigidos a impresión: contención de diagramas, equilibrio
   de columnas y mejor aprovechamiento de la página.
   ================================================================== */

/* El epígrafe superior de cada capítulo forma parte del título. */
.rulebook-document .page-content > .eyebrow{
  text-align:center;
  width:100%;
}

/* Las figuras no deben heredar una altura idéntica a la del tablero:
   el pie de figura necesita altura propia para no recortar la última fila. */
.rulebook-document .movement-pair .mini-diagram,
.rulebook-document .action-rule-layout .mini-diagram{
  width:auto;
  height:auto!important;
  min-height:0!important;
  overflow:visible!important;
}
.rulebook-document .movement-pair .mini-board,
.rulebook-document .action-rule-layout .mini-board{
  flex:none;
  overflow:visible;
}

/* Bloqueo y Protección son conceptos paralelos y se leen en paralelo. */
.rulebook-document #apilados .compare-table{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:6mm;
  align-items:stretch;
}
.rulebook-document #apilados .compare-table article{
  padding:3.5mm 4mm;
  border-width:1px;
}
.rulebook-document #apilados .compare-table article .eyebrow{
  text-align:left;
}

/* Las aclaraciones rápidas funcionan como repertorio breve, no como
   una lista vertical de gran longitud. */
.rulebook-document #faq .faq-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:7mm;
  row-gap:0;
  align-items:start;
}
.rulebook-document #faq .faq-grid article{
  padding:1.6mm 0 1.8mm;
  break-inside:avoid;
  page-break-inside:avoid;
}
.rulebook-document #faq .faq-grid h3{
  font-size:9.3px;
  line-height:1.22;
  margin:0 0 .65mm;
}
.rulebook-document #faq .faq-grid p{
  font-size:7.8px;
  line-height:1.32;
}

@media print{
  /* El tablero dedicado se reduce apenas en impresión y sus dimensiones
     incluyen holgura para el borde. Esto evita cortar la fila inferior. */
  .paper-a4 .rulebook-document .setup-page{
    padding:15mm 18mm 14mm!important;
  }
  .paper-a4 .rulebook-document .setup-page-content{
    min-height:0!important;
  }
  .paper-a4 .rulebook-document .setup-board{
    grid-template-columns:7mm repeat(13,8.4mm)!important;
    grid-template-rows:6mm repeat(17,8.4mm)!important;
    width:117mm!important;
    height:149.7mm!important;
    min-width:117mm!important;
    min-height:149.7mm!important;
    max-width:117mm!important;
    max-height:149.7mm!important;
    overflow:visible!important;
  }
  .paper-a4 .rulebook-document .setup-cell{
    width:8.4mm!important;
    height:8.4mm!important;
    min-width:8.4mm!important;
    min-height:8.4mm!important;
  }
  .paper-a4 .rulebook-document .end-zone-label{
    width:117mm!important;
  }

  .paper-letter .rulebook-document .setup-page{
    padding:14mm 18mm 13mm!important;
  }
  .paper-letter .rulebook-document .setup-page-content{
    min-height:0!important;
  }
  .paper-letter .rulebook-document .setup-board{
    grid-template-columns:7mm repeat(13,8mm)!important;
    grid-template-rows:6mm repeat(17,8mm)!important;
    width:111.8mm!important;
    height:142.8mm!important;
    min-width:111.8mm!important;
    min-height:142.8mm!important;
    max-width:111.8mm!important;
    max-height:142.8mm!important;
    overflow:visible!important;
  }
  .paper-letter .rulebook-document .setup-cell{
    width:8mm!important;
    height:8mm!important;
    min-width:8mm!important;
    min-height:8mm!important;
  }
  .paper-letter .rulebook-document .end-zone-label{
    width:111.8mm!important;
  }

  /* Se corrige la altura de las figuras sin reducir el tablero interior. */
  .rulebook-document .movement-pair .mini-diagram,
  .rulebook-document .action-rule-layout .mini-diagram{
    width:auto!important;
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
  }
  .rulebook-document .movement-pair .mini-board{
    width:46mm!important;
    height:46mm!important;
  }
  .rulebook-document .movement-pair{
    grid-template-columns:46mm minmax(0,1fr)!important;
    align-items:start!important;
  }
  .rulebook-document .action-rule-layout .mini-board{
    width:53mm!important;
    height:53mm!important;
  }
  .rulebook-document .action-rule-layout{
    grid-template-columns:minmax(0,1fr) 53mm!important;
    align-items:center!important;
  }

  /* Las reglas responsivas no deben apilar estos bloques al imprimir. */
  .rulebook-document #apilados .compare-table{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:6mm!important;
  }
  .rulebook-document #faq .faq-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    column-gap:7mm!important;
    row-gap:0!important;
  }
  .rulebook-document #faq .faq-grid article{
    padding:1.35mm 0 1.55mm!important;
  }
  .rulebook-document #faq .faq-grid h3{
    font-size:8.8px!important;
  }
  .rulebook-document #faq .faq-grid p{
    font-size:7.45px!important;
    line-height:1.28!important;
  }
}

/* V5.1: composición estable del despliegue y lectura más cómoda del FAQ. */
@media print{
  .rulebook-document .setup-page-content{
    display:block!important;
    min-height:0!important;
    height:auto!important;
  }
  .rulebook-document .setup-stage{
    display:flex!important;
    flex:none!important;
    width:100%!important;
    margin:3mm auto 0!important;
    align-items:center!important;
    justify-content:flex-start!important;
    overflow:visible!important;
  }
  .rulebook-document .setup-legend{
    margin-top:3mm!important;
  }
  .rulebook-document #faq .faq-grid article{
    padding:2.2mm 0 2.35mm!important;
  }
  .rulebook-document #faq .faq-grid h3{
    font-size:10px!important;
    line-height:1.25!important;
  }
  .rulebook-document #faq .faq-grid p{
    font-size:8.45px!important;
    line-height:1.36!important;
  }
}

/* V5.2: el despliegue dedicado queda centrado dentro del área útil. */
@media print{
  .paper-a4 .rulebook-document .setup-page-content{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    height:250mm!important;
    min-height:250mm!important;
  }
  .paper-letter .rulebook-document .setup-page-content{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    height:232mm!important;
    min-height:232mm!important;
  }
}


/* ==================================================================
   CORRECCIONES EDITORIALES Y DE TABLAS V6
   Evita cortes de palabras en encabezados y estabiliza el ancho de
   las tablas más densas del reglamento.
   ================================================================== */
.rulebook-document .action-table,
.rulebook-document .card-mode-table{
  width:100%;
  table-layout:fixed;
}
.rulebook-document .action-table col.col-action{width:18mm}
.rulebook-document .action-table col.col-cost{width:12mm}
.rulebook-document .action-table col.col-pe{width:9mm}
.rulebook-document .action-table col.col-resolution{width:auto}
.rulebook-document .card-mode-table col.col-piece{width:12mm}
.rulebook-document .card-mode-table col.col-mode{width:31mm}
.rulebook-document .card-mode-table col.col-base-cost{width:18mm}
.rulebook-document .card-mode-table col.col-effect{width:auto}
.rulebook-document .card-mode-table col.col-scaling{width:36mm}
.rulebook-document .action-table th,
.rulebook-document .action-table td,
.rulebook-document .card-mode-table th,
.rulebook-document .card-mode-table td{
  word-break:normal;
  overflow-wrap:normal;
  hyphens:none;
  vertical-align:top;
}
.rulebook-document .action-table th,
.rulebook-document .card-mode-table th{
  white-space:normal;
  line-height:1.2;
}
.rulebook-document .action-table th:nth-child(1),
.rulebook-document .action-table td:nth-child(1),
.rulebook-document .action-table th:nth-child(2),
.rulebook-document .action-table td:nth-child(2),
.rulebook-document .action-table th:nth-child(3),
.rulebook-document .action-table td:nth-child(3),
.rulebook-document .card-mode-table th:nth-child(1),
.rulebook-document .card-mode-table td:nth-child(1),
.rulebook-document .card-mode-table th:nth-child(3),
.rulebook-document .card-mode-table td:nth-child(3){
  text-align:center;
}
.rulebook-document .action-table td:nth-child(1),
.rulebook-document .action-table td:nth-child(2),
.rulebook-document .action-table td:nth-child(3),
.rulebook-document .card-mode-table td:nth-child(1),
.rulebook-document .card-mode-table td:nth-child(3){
  white-space:nowrap;
}
.rulebook-document .card-mode-table td:first-child,
.rulebook-document .card-mode-table th:first-child{padding-left:1.5mm;padding-right:1.5mm}
.rulebook-document .action-table th:nth-child(4),
.rulebook-document .action-table td:nth-child(4),
.rulebook-document .card-mode-table th:nth-child(2),
.rulebook-document .card-mode-table td:nth-child(2),
.rulebook-document .card-mode-table th:nth-child(4),
.rulebook-document .card-mode-table td:nth-child(4),
.rulebook-document .card-mode-table th:nth-child(5),
.rulebook-document .card-mode-table td:nth-child(5){
  overflow-wrap:break-word;
}
@media print{
  .rulebook-document .action-table th,
  .rulebook-document .action-table td,
  .rulebook-document .card-mode-table th,
  .rulebook-document .card-mode-table td{
    font-size:8.5px;
  }
}

/* Auto-discovered language selector. */
.rule-language-select{display:grid;gap:6px;margin-top:2px}
.rule-language-select label{font-size:9px;color:#888;letter-spacing:.12em;text-transform:uppercase}
.rule-language-select select{
  width:100%;
  min-height:36px;
  border:1px solid #3a3a3a;
  border-radius:0;
  background:#101010;
  color:#e8dcc7;
  padding:7px 32px 7px 10px;
  font:700 11px/1.2 var(--mono);
  cursor:pointer;
}
.rule-language-select select:focus{outline:2px solid #d8c09a;outline-offset:2px}
.rule-language-select noscript button{width:100%;min-height:34px;border:1px solid #3a3a3a;background:#181818;color:#fff}
@media print{.rule-language-select{display:none!important}}

/* Future CJK/RTL locale readiness. */
html[lang^="ja"] .rulebook-document,
html[lang^="ja"] .rulebook-document *{
  font-family:"Noto Serif CJK JP","Yu Mincho","Hiragino Mincho ProN",serif;
  line-break:strict;
}
html[dir="rtl"] .screen-nav,
html[dir="rtl"] .rulebook-document{direction:rtl}
