.skill-link{display:inline;border:0;border-bottom:1px dotted #9caa91;border-radius:0;padding:0;color:inherit;background:none;font-size:inherit;font-weight:400;text-align:left}.skill-link:hover{color:var(--green);background:#eef0e6}.reference-sheet>h2{font-size:32px;margin-bottom:12px}.reference-intro{color:var(--muted);font-size:12px;max-width:820px;margin:0 0 24px;line-height:1.8}.reference-subheading{margin:18px 0}.action-grid,.glossary-grid,.npc-grid,.guest-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.action-grid .panel{margin-bottom:0}.rule-attribution{font-size:9px;line-height:1.6;color:var(--muted);border-top:1px solid var(--line);padding-top:15px;margin-top:25px}.rule-link{display:inline-block;font-size:10px;margin:12px 0 0;color:#687b60;text-underline-offset:3px}.glossary-card{background:var(--white);border:1px solid var(--line);border-radius:5px;padding:19px 21px;break-inside:avoid}.glossary-card[hidden]{display:none}.glossary-card>div{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.glossary-card h3{font:21px var(--serif);letter-spacing:0;text-transform:none}.glossary-card p{font-size:12px}.skill-example{color:#68785e;font-style:italic;margin:12px 0}.skill-party{font-size:10px!important;border-top:1px solid #e0e5d7;padding-top:9px;margin-top:12px!important;color:#7c8773}.search-label{max-width:450px;margin-bottom:22px}.skill-party-list{margin:25px 0}.glossary-count{margin-top:15px}.npc-card h2{font-size:28px;margin:8px 0 14px}.npc-card h3{margin:17px 0 7px}.npc-card .card-top{align-items:flex-start}.npc-card .card-top .eyebrow{font-size:8px}.npc-description{color:#6f7b64;min-height:42px}.npc-numbers{display:flex;gap:15px;flex-wrap:wrap;border-block:1px solid var(--line);padding:11px 0;margin:15px 0;font-size:11px}.npc-numbers b{font-size:17px;font-weight:500;margin-left:4px}.npc-abilities{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;font-size:8px;letter-spacing:.5px;margin-bottom:14px}.npc-abilities b{font-weight:500;font-size:10px}.npc-personality{margin-top:16px;padding-top:13px;border-top:1px solid var(--line)}.gm-notes{border-left:2px solid #b9a476;padding-left:15px;margin-top:17px}.hide-secrets .gm-notes{display:none}.npc-controls{display:flex;align-items:end;gap:7px;margin-top:20px;flex-wrap:wrap}.npc-controls label{margin:0;font-size:9px;width:70px}.npc-controls button{font-size:10px;padding:8px 11px}.npc-controls input{padding:5px}.featured-npc{border-top:3px solid var(--gold)}.map-panel{border:1px solid var(--line);background:var(--white);padding:15px;margin-bottom:18px;border-radius:6px}.sea-chart,.deck-map{width:100%;height:auto;display:block;max-height:680px}.map-actions{display:flex;gap:8px;margin-bottom:24px}.guest-card h2{font-size:29px;margin-bottom:9px}.guest-card .tagline{min-height:0;margin-bottom:20px}.guest-card p{margin-bottom:10px}.guest-first-turn{background:#edf0e6;padding:15px;margin:20px 0}.guest-first-turn h3{margin-bottom:7px}.guest-card .actions{margin-top:22px}.guest-brief p{margin-top:15px;font-size:13px}.guest-brief h3{margin-top:25px}.reference-sheet .reference-grid{margin-bottom:16px}
@media(max-width:760px){.action-grid,.glossary-grid,.npc-grid,.guest-grid{grid-template-columns:1fr}.reference-sheet>h2{font-size:27px}.map-panel{padding:4px}.npc-card h2{font-size:25px}}
@media print{.skill-link{display:inline!important;border:0;padding:0;background:none;font-size:inherit;color:black}.reference-sheet{break-before:page}.reference-sheet:first-child{break-before:auto}.reference-sheet>h2{font-size:20pt}.reference-intro{font-size:8pt;margin-bottom:4mm}.reference-sheet .panel{break-inside:avoid}.reference-sheet .reference-grid{gap:3mm;margin-bottom:3mm}.reference-sheet .reference-grid .panel{margin-bottom:0}.action-grid,.glossary-grid{grid-template-columns:1fr 1fr;gap:2.5mm}.reference-subheading{margin:4mm 0 3mm}.glossary-card{padding:2.5mm;border-radius:0}.glossary-card h3{font-size:11pt}.glossary-card p{font-size:7.5pt;line-height:1.35}.glossary-card>div{margin-bottom:1.5mm}.skill-example{margin:1.5mm 0}.skill-party{font-size:6pt!important;margin-top:2mm!important;padding-top:1.5mm}.rule-attribution{font-size:6pt;margin-top:4mm;padding-top:2mm}.rule-link{font-size:7pt;margin-top:2mm}.glossary-count{font-size:7pt}.npc-grid{display:block}.npc-card{break-inside:avoid;margin-bottom:5mm}.npc-card h2{font-size:19pt}.npc-card h3{margin:3mm 0 2mm}.npc-description{min-height:0}.npc-numbers{padding:2mm 0;margin:2mm 0;font-size:8pt}.npc-numbers b{font-size:12pt}.npc-abilities{grid-template-columns:repeat(6,1fr);font-size:7pt;margin-bottom:2mm}.npc-abilities b{font-size:7pt}.npc-personality{margin-top:2mm;padding-top:2mm}.gm-notes{margin-top:2mm}.npc-card .eyebrow{font-size:7pt!important}.guest-grid{display:block}.guest-card{break-inside:avoid}.guest-brief p{font-size:10pt;line-height:1.6}.guest-brief h3{margin-top:5mm}.map-panel{border:0;padding:0;break-inside:avoid}.map-actions{display:none}.sea-chart,.deck-map{max-height:none;width:100%}.glossary-grid [hidden]{display:none!important}}

.rules-reminder{background:#f7e7c5;border:1px solid #d5b87f;padding:12px;margin-bottom:20px;font-size:12px}
@media print{.rules-reminder{font-size:7.5pt;padding:2mm;margin-bottom:3mm;background:white;border-color:#666;break-inside:avoid}}

@page deck-tiles{size:A4 landscape;margin:8mm}
@media print{.deck-tile{page:deck-tiles;break-after:page;width:270.933mm;height:186.267mm;margin:0;padding:0}.deck-tile:last-child{break-after:auto}.deck-tile .miniature-tile{display:block;width:270.933mm;height:186.267mm;max-width:none;max-height:none}}
/* Per-player introductions share the campaign's existing modal and card styles. */
#knowledge-dialog{width:min(880px,94vw)}#reveal-fields{border:1px solid var(--line);border-radius:6px;padding:20px;margin:18px 0}#reveal-fields>label{display:block;margin-bottom:14px}#knowledge-player,#knowledge-source{width:100%}#reveal-preview{margin:14px 0}#knowledge-dialog .guest-grid{grid-template-columns:1fr}#knowledge-dialog .panel{margin:0}#knowledge-status{margin:12px 0;color:var(--muted)}#knowledge-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}.known-contact>button{margin-top:9px}#knowledge-dialog h3{margin-block:18px 10px}@media(max-width:600px){#knowledge-cards{grid-template-columns:1fr}#reveal-fields{padding:12px}}
