:root{color-scheme:light;--teal:#002E3B;--cream:#F7F2E7;--navy:#0B1D3A;--muted:#54666a;--line:#d4d2c5;--category:#2DAAE1;font-family:Arial,Helvetica,sans-serif;color:var(--navy);background:var(--teal);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;min-width:280px}button{font:inherit;cursor:pointer;color:inherit}button:disabled{cursor:default;opacity:.45}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid #F28B3C;outline-offset:4px}button{touch-action:manipulation}p,h1,h2{margin:0}button[hidden],[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:16px;z-index:5;background:var(--cream);padding:12px;color:var(--teal)}.skip-link:focus{top:12px}
main{min-height:100vh;min-height:100svh}.welcome{max-width:550px;margin:auto;padding:35px 24px 24px;text-align:center}.edition{color:#e4e4d6;text-transform:uppercase;font-size:.75rem;letter-spacing:.23em;margin-bottom:30px}.welcome-stack{position:relative;isolation:isolate}.welcome-stack:before,.welcome-stack:after{content:"";position:absolute;inset:5px -5px -5px;background:#e4dfd3;border:1px solid #88908b;border-radius:12px;transform:rotate(-2deg);z-index:-1}.welcome-stack:after{inset:3px -3px -3px;transform:rotate(1deg)}.welcome-card{position:relative;background:var(--cream);border-radius:10px;padding:42px 32px 34px;outline:1px solid #a7afa1;outline-offset:-10px;box-shadow:0 16px 35px #001d2640}.eyebrow{font-size:.7rem;font-weight:bold;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}.welcome h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(3.6rem,13vw,5.2rem);font-weight:normal;line-height:.99;letter-spacing:-.05em;margin:28px 0 21px;color:var(--teal)}.welcome h1 em,.wordmark em{font-weight:normal}.ornament{display:flex;align-items:center;justify-content:center;gap:12px;color:#8c9c90;font-size:12px}.ornament span{width:50px;height:1px;background:#a9b2a5}.tagline{font:1.28rem/1.45 Georgia,'Times New Roman',serif;margin:18px 0 22px}.category-colours{display:flex;justify-content:center;gap:9px;margin:0 0 23px}.category-colours i{display:grid;place-items:center;width:35px;height:23px;border-radius:50%;font:700 .7rem Arial;color:var(--navy)}.category-colours i:nth-child(1){background:#2DAAE1}.category-colours i:nth-child(2){background:#EA5B8E}.category-colours i:nth-child(3){background:#F2C94C}.category-colours i:nth-child(4){background:#A978D1}.category-colours i:nth-child(5){background:#62BE82}.category-colours i:nth-child(6){background:#F28B3C}.intro{font-size:.9rem;line-height:1.65;color:var(--muted);margin-bottom:25px}.button{min-height:50px;border-radius:6px;border:1px solid transparent;padding:13px 18px;font-size:.95rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:12px}.primary{background:var(--teal);color:var(--cream);width:100%}.primary:hover{background:#104653}.load-status{color:var(--muted);font-size:.75rem;line-height:1.5;margin-top:12px;min-height:18px}.load-status:empty{display:none}.corner{position:absolute;font:28px Georgia;color:#8b9b8e}.corner-top{top:12px;left:19px}.corner-bottom{bottom:12px;right:19px;transform:rotate(180deg)}.review-notice{text-align:center;color:#becdcd;font-size:.72rem;line-height:1.5;margin:24px 0 0}.text-button{min-height:44px;border:0;background:none;text-decoration:underline;text-underline-offset:4px;font-size:.9rem;padding:12px 8px}.welcome .text-button{color:var(--teal)}
.reader{width:min(100%,650px);margin:auto;padding:0 24px 24px}.reader-header{display:flex;align-items:center;justify-content:space-between;min-height:88px;border-bottom:1px solid #ffffff25;margin-bottom:22px;gap:10px}.wordmark{font:1.75rem Georgia,'Times New Roman',serif;color:var(--cream);letter-spacing:-.04em}.menu-button{border:1px solid #ffffff40;border-radius:50%;width:44px;height:44px;background:transparent;color:var(--cream);font-size:1rem;letter-spacing:2px}.menu-button:hover{background:#ffffff15}.deck-meta{display:flex;justify-content:space-between;align-items:center;color:var(--cream);margin-bottom:18px;font-size:.85rem;gap:10px}.deck-meta p:first-child{font-family:Georgia,'Times New Roman',serif;font-size:1.3rem}.deck-meta p:last-child{color:#becdcd;font-size:.78rem}.categories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:17px}.category-button{min-height:72px;border:1px solid #ffffff30;border-radius:6px;background:transparent;color:#dce5e3;padding:9px 7px;display:flex;align-items:center;gap:8px;text-align:left;font-size:.78rem;line-height:1.25}.category-button:hover{background:#ffffff0c}.category-button[aria-pressed=true]{background:var(--cream);color:var(--navy);border-color:var(--cream);box-shadow:inset 0 -3px 0 var(--category)}.oval{display:inline-grid;place-items:center;flex-shrink:0;width:40px;height:25px;border-radius:50%;background:var(--category);color:var(--navy);font-family:Arial,Helvetica,sans-serif;font-weight:bold;font-size:.8rem;letter-spacing:0}.category-button .oval{width:33px;height:23px;font-size:.72rem}.question-card{background:var(--cream);border-radius:9px;border:1px solid #e5dfcc;box-shadow:0 5px 0 -1px #d2d3c9,0 9px 0 -2px #9baaa5,0 18px 24px #001d2620;overflow-wrap:anywhere}.card-inner{padding:28px;min-height:280px;display:flex;flex-direction:column}.question-heading{display:flex;align-items:center;gap:12px;padding-bottom:20px;border-bottom:1px solid var(--line);margin-bottom:22px}.question-heading h1{font-size:.87rem;font-weight:normal;line-height:1.35;color:#3d545b}.question{font:1.65rem/1.36 Georgia,'Times New Roman',serif;letter-spacing:-.015em;margin:0 0 28px;white-space:pre-wrap}.reveal{background:none;color:var(--teal);border:1px solid #91a2a0;justify-content:space-between;width:100%;margin-top:auto}.reveal:hover{background:#002e3b08}.reveal span{font-size:1.2rem;font-weight:normal}.answer{border-left:3px solid var(--category);padding:3px 0 4px 15px;margin:0 0 24px;animation:appear .14s ease-out}.answer-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;font-weight:bold;margin:0 0 8px;color:var(--muted)}.answer-text{font:1.4rem/1.4 Georgia,'Times New Roman',serif;white-space:pre-wrap}.card-navigation{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}.previous{background:none;border-color:#ffffff45;color:var(--cream);padding-inline:10px;font-size:.86rem}.next{background:var(--cream);color:var(--teal);padding-inline:10px;font-size:.9rem}.next:hover{background:#fffaf0}.previous:hover:not(:disabled){background:#ffffff0b}.table-hint{color:#becdcd;font:italic .84rem/1.6 Georgia,'Times New Roman',serif;text-align:center;margin:20px 12px 0}.reader .review-notice{margin-top:19px}.storage-notice{font-size:.8rem;line-height:1.5;color:var(--cream);text-align:center;margin-top:12px}.complete{text-align:center;padding:48px 30px}.complete h1{font:2.8rem/1.12 Georgia,serif;margin:25px 0}.complete>p:not(.eyebrow){margin-bottom:24px}.complete .text-button{margin-top:12px;color:var(--teal)}
dialog{width:calc(100% - 40px);max-width:420px;border:1px solid #b6bba9;border-radius:10px;background:var(--cream);color:var(--navy);padding:30px;box-shadow:0 20px 60px #00151f66}dialog::backdrop{background:#001d26bc}dialog h2{font:1.9rem/1.1 Georgia,serif;margin:18px 0}dialog p:not(.eyebrow){font-size:.95rem;line-height:1.65;margin-bottom:22px}dialog .menu-note{font-size:.78rem!important;margin:20px 0 0!important;color:var(--muted)}.close-button{float:right;border:0;background:none;font-size:1.7rem;min-width:44px;min-height:44px;margin:-15px -15px 0 0}.dialog-actions{display:flex;gap:10px}.dialog-actions .button{flex:1}.secondary{background:transparent;border-color:#91a2a0}.noscript{position:fixed;bottom:0;background:var(--cream);padding:15px;width:100%;text-align:center}
@keyframes appear{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:800px){.welcome{padding-top:46px}.reader{padding-top:20px}.reader-header{margin-bottom:27px}.card-inner{padding:36px;min-height:300px}.question{font-size:1.85rem}.categories{gap:9px}.category-button{font-size:.82rem;padding:12px}}
@media(max-width:380px){.welcome{padding:24px 19px 20px}.edition{margin-bottom:23px}.welcome-card{padding:37px 24px 28px}.welcome h1{margin-top:24px}.category-colours{gap:7px}.category-colours i{width:30px;height:21px}.intro{font-size:.84rem}.reader{padding:0 14px 20px}.reader-header{min-height:72px;margin-bottom:17px}.wordmark{font-size:1.5rem}.category-button{flex-direction:column;gap:5px;text-align:center;min-height:82px;padding:7px 3px;font-size:.75rem}.categories{gap:5px;margin-bottom:14px}.deck-meta{margin-bottom:14px}.card-inner{padding:21px;min-height:270px}.question{font-size:1.43rem;margin-bottom:23px}.question-heading{padding-bottom:16px;margin-bottom:19px;gap:10px}.question-heading h1{font-size:.8rem}.question-heading .oval{width:35px;height:24px}.table-hint{margin-top:15px}.card-navigation{gap:7px}.previous,.next{font-size:.8rem;gap:7px}.review-notice{font-size:.68rem}dialog{padding:24px}.dialog-actions{flex-direction:column}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;scroll-behavior:auto!important}}
.corner{width:18px;height:18px;border-top:1px solid #83958a;border-left:1px solid #83958a;border-top-left-radius:15px;font-size:0}.corner:after{content:"";position:absolute;inset:4px 0 0 4px;border-top:1px solid #83958a;border-left:1px solid #83958a;border-top-left-radius:12px}.corner-top{top:17px;left:17px}.corner-bottom{bottom:17px;right:17px}
.wordmark{min-width:0}.menu-button{flex-shrink:0}.deck-meta{flex-wrap:wrap}.category-button>span:last-child{min-width:0;overflow-wrap:anywhere}.card-navigation .button{min-width:0;flex-wrap:wrap}.welcome h1{overflow-wrap:anywhere}
@media(max-width:599px){.category-button{flex-direction:column;gap:5px;text-align:center;min-height:82px;padding:7px 3px}.reader-header{min-height:72px;margin-bottom:17px}.deck-meta{margin-bottom:14px}.card-inner{padding:24px}.question{font-size:1.5rem}.card-navigation{margin-top:22px}}
@media(max-width:380px){.card-inner{padding:21px}.question{font-size:1.43rem}}
.skip-link:not(:focus){width:1px;height:1px;padding:0;clip-path:inset(50%);overflow:hidden;white-space:nowrap}
.categories{--category-gap:7px;display:flex;flex-wrap:wrap;gap:var(--category-gap)}.category-button{flex:1 1 calc((100% - 2 * var(--category-gap))/3);min-width:min(100%,4.4rem)}
.oval,.category-button .oval,.question-heading .oval{width:2.9em;height:1.8em;white-space:nowrap;overflow-wrap:normal}
@media(min-width:800px){.categories{--category-gap:9px}}
@media(max-width:380px){.categories{--category-gap:5px}}

/* Screen-friendly Georgia and clean supporting labels balance the classic
   Times-style category letters retained from the printed card identity. */
.welcome h1,.wordmark,.tagline,.question,.answer-text,.deck-meta p:first-child,.complete h1,dialog h2{font-family:Georgia,'Times New Roman',serif}
.welcome h1{font-weight:normal;letter-spacing:-.04em}.welcome h1 em{font-weight:normal}.wordmark{font-weight:normal;letter-spacing:-.025em}
.category-button{font-size:.875rem;line-height:1.2;gap:8px}.category-button>span:last-child{font-family:Arial,Helvetica,sans-serif}
.oval,.category-button .oval,.question-heading .oval{font-family:'Times New Roman',Times,serif;font-size:1.125rem;font-weight:700;width:2.7em;height:1.6em;line-height:1;border:1px solid var(--navy)}
.question-heading h1{font-family:Arial,Helvetica,sans-serif;font-size:1.05rem;color:var(--navy)}
.question{font-size:1.75rem;line-height:1.25;letter-spacing:0}.answer-text{font-size:1.6rem;line-height:1.3}.category-colours i{font-family:'Times New Roman',Times,serif;font-size:.875rem;border:1px solid var(--navy)}
@media(max-width:599px){.category-button{min-height:90px;gap:6px}.question{font-size:1.625rem}}
@media(max-width:380px){.question{font-size:1.5rem}.question-heading{gap:10px}.question-heading h1{font-size:1rem}.category-button{font-size:.8125rem}}

/* Tabletop design refinement: paper first, quieter controls, a clear reveal. */
.welcome{max-width:500px;padding-top:30px}
.edition{color:#cbd8d5;letter-spacing:.16em;font-size:.72rem;margin-bottom:26px}
.welcome-card{padding:38px 30px 30px;box-shadow:0 15px 32px #001d2640}
.welcome-stack:before{inset:5px -3px -5px;transform:rotate(-1.4deg)}
.welcome-stack:after{inset:3px -2px -3px;transform:rotate(.7deg)}
.welcome h1{font-size:clamp(3.6rem,13vw,4.9rem);line-height:1.02;margin:24px 0 22px}
.tagline{font-size:1.25rem;line-height:1.4;margin:0 0 23px}
.category-colours{flex-wrap:wrap;gap:8px;margin-bottom:24px}
.category-colours i{width:38px;height:25px;font-size:1rem;line-height:1}
.intro{margin-bottom:24px}.load-status{margin-top:14px}
.reader{padding:0 18px 24px}
.reader-header{min-height:68px;border-bottom-color:#ffffff20;margin-bottom:16px}
.wordmark{font-size:1.65rem}.menu-button{border-color:#ffffff30}
.deck-meta{margin-bottom:13px}.deck-meta p:first-child{font-size:1.15rem}.deck-meta p:last-child{font-size:.75rem}
.categories{--category-gap:6px;margin-bottom:18px}
.category-button{min-height:74px;flex-direction:column;align-items:center;justify-content:flex-start;gap:4px;padding:4px;border-color:transparent;border-radius:7px;background:transparent;color:#e0e8e4;text-align:center;font-size:.8125rem;line-height:1.2}
.category-button>span:last-child{min-height:2.4em}
.category-button:hover{background:#ffffff0c}
.category-button[aria-pressed=true]{background:var(--cream);color:var(--navy);border-color:var(--cream)}
.oval,.category-button .oval,.question-heading .oval{width:2.5em;height:1.45em}
.category-button .oval{width:2.8em;height:1.6em}
@media(min-width:600px){.category-button{min-height:64px;justify-content:center;gap:5px;padding:6px 4px}.category-button>span:last-child{min-height:1.2em}}
.question-card{position:relative;isolation:isolate;border-radius:10px;border-color:#dedbcf;box-shadow:0 4px 0 -1px #e2ded1,0 8px 0 -3px #b0b9ac,0 14px 24px #001d2626}
.question-card:before{content:'';position:absolute;inset:9px;border:1px solid #b8c0b244;border-radius:4px;pointer-events:none;z-index:-1}
.card-inner{padding:26px;height:27rem;min-height:0}
.card-body{flex:1;min-height:0;overflow-y:auto;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:#99aaa3 transparent;overscroll-behavior-y:contain}
.card-body:focus-visible{outline:2px solid var(--teal);outline-offset:3px}
.card-inner>.question-heading,.card-inner>.reveal{flex-shrink:0}
.card-inner>.reveal{margin-top:16px}
.card-body .answer{margin-bottom:0}
.question-heading{gap:10px;padding-bottom:17px;margin-bottom:20px}
.question-heading h1{font-size:.95rem;line-height:1.35;color:var(--teal)}
.question{font-size:1.625rem;line-height:1.34;margin-bottom:26px}
.reveal{background:var(--teal);color:var(--cream);border-color:var(--teal);text-align:left;line-height:1.3}
.reveal span{line-height:1}
.reveal:hover{background:#104653}
.reveal[aria-expanded=true]{background:transparent;color:var(--teal);border-color:#99aaa3}
.reveal[aria-expanded=true]:hover{background:#002e3b08}
.answer{background:#002e3b06;padding:15px 16px;margin-bottom:20px}
.answer-label{font-size:.68rem;margin-bottom:7px}
.answer-text{font-size:1.45rem;line-height:1.38}
.card-navigation{grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:12px;margin-top:23px}
.previous{border-color:transparent;color:#d6e1dc;padding-inline:4px;font-size:.83rem;gap:7px}
.previous:hover:not(:disabled){background:transparent;text-decoration:underline;text-underline-offset:4px}
.reader .review-notice{margin-top:18px}
@media(min-width:800px){.welcome{padding-top:44px}.reader{padding-top:14px}.reader-header{margin-bottom:22px}.categories{--category-gap:9px;margin-bottom:22px}.card-inner{padding:34px;min-height:0}.question{font-size:1.85rem}}
@media(max-width:380px){.welcome{padding-top:23px}.welcome-card{padding:34px 23px 27px}.edition{margin-bottom:23px}.category-colours{gap:5px}.category-colours i{width:31px;height:22px;font-size:.9rem}.intro{font-size:.85rem}.reader{padding-inline:14px}.wordmark{font-size:1.5rem}.categories{--category-gap:5px}.category-button{font-size:.78rem}.card-inner{padding:23px}.question{font-size:1.5rem}.question-heading h1{font-size:.9rem}.answer{padding:12px}.answer-text{font-size:1.35rem}.card-navigation{gap:7px}.previous{font-size:.78rem}.next{font-size:.85rem}}

/* A viewport-sized hand of cards. Content scrolls inside the paper; its size
   depends on the screen, never on the selected question or answer. Intrinsic
   minimums allow the document to grow when the reader enlarges their text. */
.launch-status{max-width:420px;margin:auto;padding:3rem 1.5rem;color:var(--cream);text-align:center}
.launch-status p{font-size:1rem;line-height:1.5;margin:1.5rem 0}
.launch-status .button{width:100%}
.reader{height:100vh;height:100svh;min-height:0;padding:max(.5rem,env(safe-area-inset-top)) max(.875rem,env(safe-area-inset-right)) max(.75rem,env(safe-area-inset-bottom)) max(.875rem,env(safe-area-inset-left));display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:.625rem}
.reader-header{min-height:44px;margin:0;border:0;gap:.75rem}
.reader-brand{min-width:0;flex:1;max-width:26rem}
.wordmark{font-size:1.5rem;line-height:1.1}
.deck-meta{margin:.25rem 0 0;gap:.75rem;line-height:1.2;flex-wrap:nowrap}
.deck-meta p:first-child{font:normal .875rem/1.2 Georgia,'Times New Roman',serif}
.deck-meta p:last-child{font-size:.75rem;line-height:1.2}
#game-content{display:grid;grid-template-rows:auto minmax(14rem,1fr) auto;gap:.625rem;min-height:0;align-content:start}
.categories{--category-gap:5px;margin:0;align-content:start}
.category-button{min-height:64px;justify-content:center;padding:2px;gap:3px;font-size:.8125rem;line-height:1.2}
.category-button>span:last-child{min-height:2.4em}
.category-button .oval{height:1.35em;width:2.6em}
.question-card{min-height:0}
.card-inner{height:100%;min-height:0;padding:.875rem;display:grid;grid-template-rows:minmax(8rem,1fr) 1rem auto;gap:0}
.card-body{min-height:0;min-width:0;scroll-behavior:auto}
.question-heading{padding-bottom:.5rem;margin:0 0 .625rem;gap:.5rem}
.question-heading h1{font-size:.875rem;line-height:1.25}
.question-heading .oval{width:2.2em;height:1.35em;font-size:1rem}
.question{font-size:1.5rem;line-height:1.34;margin-bottom:1.125rem}
.answer{padding:.75rem;margin-bottom:0}
.answer-text{font-size:1.35rem;line-height:1.38}
.overflow-cue{min-height:1rem;line-height:1rem;font-size:.6875rem;color:#465d61;text-align:right;padding-right:.125rem}
.card-inner>.reveal{margin:0;min-height:44px;padding:.625rem .75rem;font-size:.875rem;line-height:1.3}
.card-navigation{margin:0;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,8rem),1fr))}
.card-navigation .button{min-height:44px;padding:.625rem .25rem;line-height:1.3;font-size:.8125rem;gap:.375rem;flex-wrap:nowrap}
.storage-notice{margin:0;font-size:.75rem;line-height:1.4}
@media(min-width:375px){.reader{padding-inline:1rem}.card-inner{padding:1rem}.question{font-size:1.625rem}}
@media(min-width:600px){.reader{padding:1rem 1.5rem;height:min(100svh,48rem);gap:.875rem}.reader-header{min-height:54px}.wordmark{font-size:1.75rem}.deck-meta p:first-child{font-size:1rem}#game-content{gap:.875rem}.categories{--category-gap:8px}.category-button{min-height:64px;gap:5px;padding:5px}.category-button>span:last-child{min-height:1.2em}.category-button .oval{height:1.6em;width:2.8em}.card-inner{padding:1.75rem;grid-template-rows:minmax(8rem,1fr) 1.25rem auto}.question{font-size:1.85rem}.question-heading{padding-bottom:.875rem;margin-bottom:1rem}.question-heading h1{font-size:.95rem}.question-heading .oval{width:2.5em;height:1.45em;font-size:1.125rem}.answer-text{font-size:1.45rem}.overflow-cue{font-size:.75rem;min-height:1.25rem;line-height:1.25rem}.card-inner>.reveal,.card-navigation .button{min-height:50px;font-size:.9rem}.card-navigation{gap:.75rem}}
@media(max-width:599px) and (max-height:620px){.reader{gap:.375rem;padding-top:.375rem;padding-bottom:.625rem}#game-content{gap:.5rem}.card-inner{padding:.75rem}.question-heading{padding-bottom:.375rem;margin-bottom:.5rem}.wordmark{font-size:1.4rem}}
@media(min-width:381px){.answer-text{font-size:1.45rem}}
#announcer{position:fixed;top:0;left:0}
