@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--paper:#f5f3ed;--ink:#233d33;--muted:#72786e;--line:#d9dcd1;--green:#2f5b47;--blue:#85b7db;--yellow:#eed27b;--red:#d98d82;--black:#353936;--violet:#b4a0d5;--cell:#e8ebdf;--white:#fffef9}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',system-ui,sans-serif;font-size:14px}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.38}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #ad782b;outline-offset:4px}button{color:inherit}a{color:inherit;text-decoration:none}.site-header{max-width:1280px;margin:auto;height:100px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 42px}.brand{display:flex;align-items:center;font-family:'Libre Caslon Display',Georgia,serif;font-size:39px;letter-spacing:-1px;gap:12px}.brand-sub{font-family:'DM Sans',sans-serif;font-size:11px;letter-spacing:.02em;border-left:1px solid #bbc2b4;margin-left:10px;padding-left:20px;color:var(--muted)}.brand-mark{width:25px;height:25px;display:grid;grid-template-columns:1fr 1fr;gap:3px;transform:rotate(-7deg)}.brand-mark i{background:var(--green);border-radius:2px}.brand-mark i:nth-child(2),.brand-mark i:nth-child(3){background:#afbc9c}nav{display:flex;gap:25px;align-items:center}.text-button{border:0;background:none;padding:8px 0;font-size:12px;font-weight:600}.text-button span{margin-left:9px}.outline-button{background:transparent;border:1px solid #b4bdb0;border-radius:5px;padding:10px 17px;font-size:12px}.outline-button:hover{background:#e8ebdf}main{max-width:1160px;padding:0 28px;margin:auto}.intro{display:flex;justify-content:space-between;align-items:flex-end;padding:44px 0 35px}.eyebrow{font-size:9px;letter-spacing:.19em;font-weight:700;margin:0 0 18px;color:var(--muted)}h1{font:58px/.98 'Libre Caslon Display',Georgia,serif;font-weight:400;margin:0;letter-spacing:-1.8px}h1 em{font-style:normal;color:#788768}#intro-text{margin:16px 0 0;font-size:12px;color:var(--muted)}.phase-track{display:flex;align-items:center;gap:16px;padding-bottom:8px;font-size:10px}.phase{display:flex;align-items:center;gap:8px;color:#8c9186}.phase span{border:1px solid #c8cebf;border-radius:50%;width:24px;height:24px;display:grid;place-items:center;font-size:9px}.phase.active{color:var(--green);font-weight:700}.phase.active span{color:white;background:var(--green);border-color:var(--green)}.phase-line{width:25px;height:1px;background:var(--line)}.play-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:58px;align-items:start}.board-column{min-width:0}.board-topline{font-size:9px;font-weight:600;letter-spacing:.12em;display:flex;justify-content:space-between;margin:3px 0 18px 22px;color:#6d7767}.dot{padding:0 8px}.board-frame{position:relative;padding:22px 0 0 22px}.board{display:grid;grid-template-columns:repeat(var(--columns,5),minmax(0,1fr));gap:7px;aspect-ratio:var(--columns,5)/var(--rows,5);background:#d6dccb;padding:9px;border-radius:9px;box-shadow:0 7px 0 #c3cbb9,0 14px 24px #31412a0b}.column-labels{position:absolute;top:0;left:31px;right:9px;display:grid;grid-template-columns:repeat(var(--columns,5),1fr);gap:7px;text-align:center;font-size:9px;color:#8b9281}.row-labels{position:absolute;left:0;top:31px;bottom:9px;width:13px;display:grid;grid-template-rows:repeat(var(--rows,5),1fr);gap:7px;align-items:center;text-align:center;font-size:9px;color:#8b9281}.cell{position:relative;display:flex;align-items:center;justify-content:center;border:1px solid #dbe0d1;border-radius:4px;background:var(--cell);color:#273b2d;font-family:'Libre Caslon Display',Georgia,serif;font-size:40px;line-height:1;padding:0;transition:background .15s,box-shadow .15s,transform .15s;min-width:0;min-height:0;opacity:1!important}.cell.empty::after{content:'+';font-family:system-ui;font-size:19px;font-weight:300;color:#acb79e}.cell:hover:not(:disabled){background:#f2f3e9;transform:translateY(-1px)}.cell.assigned{background:#f5f3e9}.cell.selected{background:#dce7d1;box-shadow:inset 0 0 0 2px #426947;border-color:#426947}.cell.selected.empty::after{content:'•';color:var(--green);font-size:36px}.cell.partner{box-shadow:inset 0 0 0 2px #6e8060}.cell.country-active{box-shadow:inset 0 0 0 3px #997035}.cell.conflict{outline:3px solid #b43e34;outline-offset:-3px}.cell.conflict::before{content:'!';position:absolute;top:5px;right:5px;font:700 12px system-ui;background:#fff7e6;color:#a12820;width:17px;height:17px;border-radius:50%;display:grid;place-items:center}.cell small{position:absolute;right:6px;bottom:5px;font:8px system-ui;opacity:.65}.cell .pencil{position:absolute;left:6px;top:6px;width:12px;height:12px;border-radius:50%;border:1px solid #ffffff80}.board-bottom{display:flex;align-items:center;justify-content:space-between;margin:19px 0 0 22px;gap:10px;min-height:34px}.board-bottom p{font-size:11px;color:var(--muted);margin:0;line-height:1.5}.pencil-panel{margin:15px 0 0 22px;border-top:1px solid var(--line);padding-top:14px;font-size:10px;color:var(--muted);display:flex;align-items:center;gap:12px;flex-wrap:wrap}.pencil-panel label{display:flex;align-items:center;gap:5px;color:#53644c}.pencil-panel input{accent-color:var(--green)}.sidebar{display:flex;flex-direction:column;gap:20px}.scorecard{border:1px solid var(--line);border-radius:7px;padding:20px 21px 0}.card-heading{display:flex;justify-content:space-between;align-items:center}.card-heading h2{font-size:12px;font-weight:600;margin:0}.card-heading>span{font-size:10px;color:var(--muted)}.player{display:flex;align-items:center;justify-content:space-between;margin-top:23px}.player-info{display:flex;align-items:center;gap:11px}.player strong{font-size:12px;font-weight:600}.player small{display:block;font-size:10px;color:var(--muted);margin-top:5px}.role-disc{width:23px;height:23px;border-radius:50%;flex-shrink:0}.role-disc.white{background:#fffef8;border:1px solid #c9cebe;box-shadow:0 2px 2px #0000000a}.role-disc.black{background:#303b31;border:1px solid #27342a;box-shadow:inset 0 0 0 3px #444f42}.score{font-family:'Libre Caslon Display',Georgia,serif;font-size:35px;line-height:1}.card-foot{font-size:10px;line-height:1.6;color:var(--muted);background:#eeeee5;border-top:1px solid var(--line);padding:12px 21px;margin:21px -21px 0;border-radius:0 0 7px 7px}.turn-card{background:#e8eddf;border:1px solid #d8e0cd;border-radius:7px;padding:22px 21px}.turn-eyebrow{display:flex;align-items:center;gap:6px;font-size:9px;letter-spacing:.12em;font-weight:600;color:#547044}.status-light{width:5px;height:5px;background:#577c42;border-radius:50%}.turn-card h2{font-family:'Libre Caslon Display',Georgia,serif;font-size:31px;line-height:1.1;font-weight:400;margin:15px 0 9px}.turn-card>p{font-size:11px;line-height:1.65;color:#6b7661;margin:0 0 17px}.primary-button{border:0;border-radius:4px;padding:13px 15px;background:var(--green);color:#fffdf4;font-size:11px;font-weight:500;width:100%;text-align:left;display:flex;justify-content:space-between;gap:10px;align-items:center;min-height:43px}.primary-button:hover:not(:disabled){background:#254c3a}.assist-actions{display:flex;justify-content:space-between;margin-top:7px;gap:12px}.assist-actions button{font-size:10px;color:#536747}.analysis-note:empty{display:none}.turn-card .analysis-note{font-size:10px;line-height:1.55;border-top:1px solid #d1dbc5;padding-top:12px;margin:12px 0 0}.legend{padding:2px 2px 0}.legend .card-heading{margin-bottom:13px}.legend-row{display:flex;align-items:center;justify-content:space-between;margin:10px 0;font-size:10px}.legend-row>span{display:flex;align-items:center;gap:6px}.legend-row strong{font-weight:500}.swatch{display:inline-block;flex-shrink:0;width:13px;height:13px;border-radius:3px;border:1px solid #0000000a}.blue{background:var(--blue)}.green{background:#a4c39b}.yellow{background:var(--yellow)}.red{background:var(--red)}.black{background:var(--black)}.legend-note{font-size:10px;color:var(--muted);line-height:1.6;margin:12px 0}details{border-top:1px solid var(--line);margin-top:15px;padding-top:13px}summary{font-size:10px;cursor:pointer;color:#697761}.setting{display:flex;flex-direction:column;gap:8px;font-size:11px;margin:18px 0}.setting select,.setting input{width:100%;background:#fffdf7;border:1px solid #cfd4c5;border-radius:4px;padding:10px;color:var(--ink)}.principles{border-top:1px solid var(--line);margin:42px 0 30px;padding-top:22px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.principles span{font-size:9px;letter-spacing:.13em;color:#7c866f}.principles p{font-size:11px;line-height:1.65;color:#64715c;margin:9px 0 0}footer{max-width:1220px;margin:auto;padding:23px 30px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:9px;color:#8a9080}footer strong{font-weight:500;color:#626f57}dialog{color:var(--ink);background:var(--paper);border:1px solid #cbd1c1;border-radius:12px;padding:36px;max-width:520px;width:calc(100% - 32px);max-height:88vh;box-shadow:0 20px 100px #1b2c2140}dialog::backdrop{background:#1b2c2160;backdrop-filter:blur(3px)}dialog h2{font:46px/1 'Libre Caslon Display',Georgia,serif;margin:0 0 17px}dialog h3{font-size:13px;margin:23px 0 7px}dialog p{font-size:12px;line-height:1.7;color:#6d7665}dialog .primary-button{margin-top:25px}.dialog-close{position:absolute;right:17px;top:12px;background:none;border:0;font-size:26px;font-weight:300}.palette{display:flex;flex-wrap:wrap;gap:8px;margin:19px 0 0 22px}.colour-button{background:#fffdf7;border:1px solid #cfd4c4;border-radius:5px;padding:9px 10px;display:flex;align-items:center;gap:6px;font-size:10px}.colour-button.active{box-shadow:0 0 0 2px var(--green);border-color:var(--green)}.colour-button small{color:#7f8776;font-size:9px}.thinking-line{height:3px;overflow:hidden;background:#d1dcc6;border-radius:10px;margin:12px 0}.thinking-line::after{content:'';display:block;background:#708b58;height:100%;width:30%;animation:thinking 1.4s infinite ease-in-out}#search-progress{font-size:10px;color:#69795c}#penalty-summary{font:36px 'Libre Caslon Display',Georgia,serif;margin:15px 0}#penalty-summary small{font:10px 'DM Sans',sans-serif;margin-left:8px;color:#69745f}.cell[data-colour="4"]{color:#fffef7}.hinted{animation:hint 1s 2}#pencil-palette{display:flex;flex-wrap:wrap;gap:5px;width:100%}#pencil-palette button{padding:6px}.match-result{font-weight:600;color:var(--green)}[hidden]{display:none!important}@keyframes thinking{0%{transform:translateX(-100%)}100%{transform:translateX(440%)}}@keyframes hint{50%{box-shadow:inset 0 0 0 4px #a17b33}}@media(min-width:1500px){main{max-width:1210px}.intro{padding-top:55px}.play-layout{gap:75px}}@media(max-width:850px){.site-header{padding:0 25px;height:85px}.brand-sub{display:none}.intro{padding:33px 0 28px}.phase-track{flex-direction:column;align-items:flex-start;gap:10px}.phase-line{display:none}.play-layout{gap:25px;grid-template-columns:minmax(0,1.35fr) minmax(240px,1fr)}.cell{font-size:29px}.board{gap:4px;padding:6px}.column-labels{left:28px;right:6px;gap:4px}.row-labels{top:28px;bottom:6px;gap:4px}.turn-card,.scorecard{padding:18px 16px}.scorecard{padding-bottom:0}.card-foot{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}h1{font-size:49px}}@media(max-width:640px){.site-header{padding:0 20px;height:76px}.brand{font-size:32px;gap:9px}.brand-mark{width:21px;height:21px}nav{gap:15px}.text-button,.outline-button{font-size:10px}.outline-button{padding:9px 10px}main{padding:0 17px}.intro{padding:30px 4px 24px;display:block}h1{font-size:48px}.eyebrow{font-size:8px;margin-bottom:15px}.phase-track{flex-direction:row;gap:20px;margin-top:25px;padding:0}.phase{font-size:9px}.phase-line{display:block;width:18px}.play-layout{display:flex;flex-direction:column;gap:28px}.board-column,.sidebar{width:100%}.board-topline{margin-left:22px;margin-bottom:12px}.board{gap:5px;padding:7px}.cell{font-size:35px}.board-bottom{margin-top:17px}.pencil-panel>span{font-size:9px}.sidebar{gap:18px}.scorecard{order:1}.turn-card{order:0}.legend{order:2;padding:4px}.player{margin-top:18px}.principles{margin-top:28px;gap:10px}.principles p{font-size:10px}.principles br{display:none}footer{font-size:8px;padding:18px;gap:20px;line-height:1.5}footer>span:last-child{text-align:right}.cell small{font-size:7px}.assist-actions .text-button{padding:10px 0;font-size:11px}.palette{margin-left:22px}.colour-button{padding:10px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
/* Keep the playable board prominent on laptops, with comfortable control text. */
@media(min-width:851px){.site-header{height:84px}.intro{padding:28px 0 24px}.intro .eyebrow{margin-bottom:13px}h1{font-size:52px}#intro-text{margin-top:12px}.play-layout{gap:42px;grid-template-columns:minmax(0,1.45fr) minmax(300px,1fr)}main{max-width:1100px}.turn-card>p{font-size:12px}.primary-button{font-size:12px}.player strong{font-size:13px}.player small,.card-foot{font-size:11px}.legend-row{font-size:11px}}
@media(max-width:640px){.board-bottom{flex-wrap:wrap}.board-bottom p{flex:1;min-width:210px}.turn-card .primary-button{min-height:46px;font-size:12px}.turn-card>p{font-size:12px}.setting select,.setting input{font-size:16px}}
.mobile-confirm{display:none}@media(max-width:640px){.mobile-confirm:not([hidden]){display:flex;position:fixed;bottom:16px;left:20px;width:calc(100% - 40px);z-index:5;min-height:46px;box-shadow:0 5px 25px #233d3340;border:1px solid #f5f3ed;font-size:13px}}
.watch-controls{padding:18px;border:1px solid #becab7;border-radius:7px;background:#edf0e7}.watch-controls h2{font-size:15px;margin:0 0 10px}.watch-controls p{font-size:13px;line-height:1.55}.watch-controls table{font-size:12px;width:100%;border-collapse:collapse;margin-top:12px}td,th{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line)}.learning-lab{margin:32px 0;padding:30px;border:1px solid #b8c7b0;border-radius:10px;background:#fbfcf6;scroll-margin-top:20px}.lab-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.lab-heading h2{font:42px 'Libre Caslon Display',Georgia,serif;margin:0}.lab-heading p{margin:7px 0 18px;font-size:16px}.lab-heading .eyebrow{font-size:12px;margin-bottom:8px}.lab-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(230px,1fr);gap:36px}.learning-lab p{font-size:16px;line-height:1.6}.learning-lab .lab-note{font-size:13px;color:#6a7562}.learning-lab .setting,.learning-lab button,.learning-lab summary,.learning-lab a,.import-label{font-size:14px}.learning-lab .setting{margin-top:0}.learning-lab .setting select{font-size:14px}.engine-badges{display:flex;gap:8px;flex-wrap:wrap}.engine-badges span{font-size:12px;border:1px solid #c9d4c0;padding:6px 9px;border-radius:30px}.engine-badges span:last-child{border-color:#9baecd;background:#edf1fa;color:#435473}.learning-cycle{display:flex;align-items:center;gap:11px;font-size:14px;flex-wrap:wrap;padding:15px 0}.learning-cycle b{font-weight:400;color:#809174}.lab-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.lab-stats strong{display:block;font:32px 'Libre Caslon Display',Georgia,serif}.lab-stats span{font-size:12px;color:#6c7962}.lab-actions button{margin-bottom:12px}.lab-actions .outline-button{width:100%;text-align:left}.checkpoint-actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.import-label{cursor:pointer;position:relative}.import-label input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.import-label:focus-within{outline:2px solid #577344}#learn-progress{width:100%;height:10px;accent-color:var(--green)}#learn-progress-text,#learn-model-status{font-size:13px;color:#536548}#learning-chart{width:100%;max-height:140px;background:#f4f6ee;border-radius:5px;margin-top:10px}.arena{border-top:1px solid var(--line);margin-top:22px;padding-top:13px;overflow:auto}.arena h3{font-size:17px}.arena table{border-collapse:collapse;width:100%;font-size:13px}.engine-choices{display:grid;grid-template-columns:1fr 1fr;gap:12px}#setup-error{color:#a2372f}.learning-lab details p{font-size:14px}.learning-lab details a{text-decoration:underline}.learning-lab details summary{font-size:14px}nav{gap:18px}@media(max-width:850px){.brand-sub{display:none}nav{gap:12px}.site-header{height:auto;min-height:84px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px;gap:12px}.lab-grid{grid-template-columns:1fr}.learning-lab{padding:21px}.lab-actions{display:grid;gap:8px}.lab-heading h2{font-size:36px}.engine-choices{grid-template-columns:1fr}.lab-stats strong{font-size:29px}}@media(max-width:640px){.site-header nav{width:100%;justify-content:space-between}.learning-lab{padding:18px}.lab-heading{flex-wrap:wrap}.learning-lab p{font-size:15px}.learning-cycle{gap:7px;font-size:13px}}

.search-settings{padding:18px 20px;border:1px solid var(--line);border-radius:7px;background:#f9faf3}.search-settings h2{font-size:14px;margin:0 0 12px}.search-settings .setting{font-size:12px;margin:0 0 10px}.search-settings .legend-note{font-size:11px;line-height:1.65}.search-settings #search-depth{border-top:1px solid var(--line);padding-top:12px}.role-objectives{padding:16px;border:1px solid #cfdbc7;border-radius:6px;background:#f2f5eb}.role-objectives>strong{font-size:15px}.learning-lab .role-objectives p{font-size:14px;margin:8px 0}.role-objectives details{margin-top:10px;padding-top:10px}

.book-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,1fr);gap:36px;margin:24px 0}.book-navigation{display:flex;gap:8px;flex-wrap:wrap}.book-board{display:grid;grid-template-columns:repeat(var(--columns,5),1fr);gap:5px;max-width:330px;padding:8px;background:#ccd5c2;border-radius:7px}.book-board span{display:grid;place-items:center;aspect-ratio:1;background:#e7eddc;border-radius:3px;font:28px Georgia,serif}.book-board span.empty{background:#f9fbf3;color:#a5afa0}.book-evidence{font-weight:700}.book-grid .primary-button,.book-grid>.outline-button{margin:12px 0}.book-table{max-height:430px;overflow:auto}.book-table table{width:100%;border-collapse:collapse;font-size:14px}.book-table th{background:#edf1e5;position:sticky;top:0}.book-table .text-button{text-decoration:underline}.book-lab #book-status{font-size:14px}.book-grid h3{font-size:17px}.book-grid .setting{margin-top:20px}.site-header nav{gap:12px}@media(max-width:850px){.book-grid{grid-template-columns:1fr;gap:20px}}@media(max-width:640px){.site-header nav{flex-wrap:wrap;justify-content:flex-start;gap:8px 16px}.book-table th,.book-table td{padding:8px 6px}.book-table table{font-size:13px}}

/* Independent player budgets extend the existing game controls. */
.violet{background:#b4a0d5}.engine-choice{min-width:0;margin:8px 0;padding:14px;border:1px solid var(--line);border-radius:6px}.engine-choice legend{font-size:16px;padding:0 5px}.engine-choice .setting{margin:8px 0 16px}.engine-choice select{min-width:0;font-size:14px}.search-settings .setting,.search-settings h2{font-size:14px}.search-settings select{font-size:14px}.search-settings .legend-note{font-size:13px}#new-dialog .setting{font-size:14px}#new-dialog .legend-note{font-size:13px}#new-dialog .engine-choices{grid-template-columns:1fr}#watch-budgets{overflow-wrap:anywhere}

/* History: a readable account beside a compact inventor profile. */
.site-header{height:auto;min-height:84px;gap:18px;flex-wrap:wrap;padding-top:16px;padding-bottom:16px}.site-header nav{flex-wrap:wrap;row-gap:12px}.history-link{white-space:nowrap}
.history-section{border-top:1px solid #bcc7b8;margin:36px 0 48px;padding-top:36px;scroll-margin-top:24px}.history-heading{max-width:760px;margin-bottom:30px}.history-heading .eyebrow,.history-person>.eyebrow,.rating-example>.eyebrow{font-size:.75rem;line-height:1.5;letter-spacing:.12em;margin:0 0 12px}.history-heading h2{font:normal clamp(2.5rem,5vw,3.6rem)/1.08 'Libre Caslon Display',Georgia,serif;margin:0 0 16px}.history-section p{font-size:1rem;line-height:1.75;margin:0 0 18px}.history-section .history-source{color:#56664f;font-size:.875rem;line-height:1.65}.history-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:42px;align-items:start}.history-section h3{font:normal 1.8rem/1.2 'Libre Caslon Display',Georgia,serif;margin:0 0 15px}.history-story h3:not(:first-child){margin-top:30px}.history-person{padding:26px;background:#eaf0e4;border:1px solid #cad5c2;border-radius:8px}.history-person h3{font-size:2.25rem}.history-section h4{font-size:1rem;line-height:1.5;margin:24px 0 12px}.history-dates{margin:18px 0 24px;border-top:1px solid #cbd5c3;border-bottom:1px solid #cbd5c3;padding:8px 0}.history-dates>div{display:grid;grid-template-columns:48px 1fr;gap:16px;padding:7px 0;font-size:.875rem;line-height:1.5}.history-dates dt{font-weight:600}.history-dates dd{margin:0;color:#53634e}.history-section .history-note,.history-section .history-postscript{font-size:.875rem;line-height:1.7;color:#596752}.history-section .history-note a{text-decoration:underline;text-underline-offset:3px}.history-ratings{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:42px;border-top:1px solid var(--line);margin:32px 0 24px;padding-top:30px}.rating-formula{border-left:3px solid #79916b;padding:4px 0 4px 16px;margin:22px 0}.rating-formula p{font-size:.9375rem;margin:0 0 10px}.rating-formula p:last-child{margin:0}.rating-example{padding:24px;border:1px solid var(--line);border-radius:8px;background:#fafbf5}.rating-example h4{font:normal 1.75rem/1.2 'Libre Caslon Display',Georgia,serif;margin:0 0 15px}.rating-example table{border-collapse:collapse;width:100%;font-size:.875rem;font-variant-numeric:tabular-nums}.rating-example caption{text-align:left;font-size:.875rem;font-weight:600;margin-bottom:8px}.rating-example td,.rating-example th{padding:10px 6px;line-height:1.4}.rating-example tbody th{font-weight:400}.rating-example td:last-child{color:#2f5b47}.history-return{display:inline-block;font-size:.875rem;padding:8px 0;text-decoration:underline;text-underline-offset:4px}#play{scroll-margin-top:20px}
@media(max-width:850px){.history-grid,.history-ratings{grid-template-columns:1fr;gap:26px}.history-heading{margin-bottom:24px}.history-section{padding-top:28px}.history-person,.rating-example{padding:22px}.site-header nav{justify-content:flex-start}}
@media(max-width:420px){.site-header nav{gap:10px 14px;justify-content:flex-start}.history-person,.rating-example{padding:18px}.history-section h3{font-size:1.7rem}.rating-example th,.rating-example td{padding:9px 4px}.history-section{overflow-wrap:break-word}}

/* Larger boards retain square cells and all labels on a phone. */
.board{grid-template-rows:repeat(var(--rows,5),minmax(0,1fr))}
@media(max-width:640px){.board{gap:4px;padding:6px}.column-labels,.row-labels{gap:4px}.column-labels{left:28px;right:6px}.row-labels{top:28px;bottom:6px}.cell{font-size:clamp(22px,6vw,32px)}.cell small{font-size:6px;right:3px;bottom:3px}.cell .pencil{width:8px;height:8px;top:3px;left:3px}.board-topline{letter-spacing:.02em;font-size:10px}.brand-sub{font-size:10px}}

@media(max-width:640px){.brand-sub{display:block;margin-left:0;padding-left:12px;font-size:12px}}
