@import url('https://use.typekit.net/zoc1rfo.css');
:root{--heading-font:'neue-haas-grotesk-display';--body-font:'neue-haas-grotesk-text'}

*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--page);color:var(--ink);font-family:var(--body-font),Arial,sans-serif;font-size:18px;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:4px}button{font-family:var(--body-font),Arial,sans-serif;font-weight:700;font-size:17px;min-height:48px;line-height:1.2;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);padding:12px 18px}button:hover:not(:disabled){filter:brightness(1.08)}[hidden]{display:none!important}.site{max-width:1320px;margin:0 auto;padding:0 40px}.site>header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 0}.brand{display:flex;align-items:center;gap:14px;font:700 34px/1 var(--heading-font),serif;letter-spacing:-.035em}.brand small{display:block;font:700 11px/1.4 var(--body-font),sans-serif;letter-spacing:.2em;margin-top:8px}.brand-logo{width:52px;height:52px;object-fit:contain}nav{display:flex;align-items:center;gap:24px;font-weight:600;font-size:16px}.edition{font-size:12px;letter-spacing:.1em}.game-menu{position:relative;z-index:20}.game-menu summary{list-style:none;cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px}.game-menu summary::-webkit-details-marker{display:none}.game-menu summary:after{content:'⌄'}.game-menu>div{position:absolute;top:100%;right:0;min-width:190px;background:var(--surface);border:1px solid var(--line);padding:8px;box-shadow:0 10px 30px #0003;border-radius:var(--radius)}.game-menu a{display:block;padding:12px;font-size:17px}.game-menu a:hover{background:var(--soft)}h1,h2{font-family:var(--heading-font),serif;color:var(--ink);margin:0;line-height:1.06}h1{font-size:64px;font-weight:700;letter-spacing:-.035em}h2{font-size:34px;font-weight:700}p{margin:0}.headline{display:flex;align-items:end;justify-content:space-between;gap:30px;margin:28px 0 36px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.16em;color:var(--muted);margin-bottom:20px}.intro{font-size:18px;line-height:1.65;color:var(--muted);max-width:480px;margin-top:20px}.availability{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;padding:12px 16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);white-space:nowrap}.availability i{height:7px;width:7px;background:var(--accent);border-radius:50%}.layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px;align-items:start}.game-column{min-width:0}.game-card{min-width:0;overflow:hidden;border:1px solid var(--line);background:var(--surface);border-radius:var(--card-radius);box-shadow:var(--shadow)}.game-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:18px;border-bottom:1px solid var(--line)}.mode-tabs{display:flex;gap:4px;background:var(--soft);padding:4px;border-radius:var(--radius)}.mode-tabs button{border-color:transparent;background:transparent;color:var(--muted);padding:10px 15px}.mode-tabs button.active{background:var(--accent);color:var(--on-accent)}.view-tools{display:flex;gap:4px;align-items:center;flex-wrap:wrap}.view-tools button{background:transparent;border-color:transparent;padding:10px;font-size:17px}.view-tools span{font-size:14px}.player-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 22px;min-height:76px}.player-id{display:flex;align-items:center;gap:13px}.player-id b{display:block;font-size:17px;font-weight:700;line-height:1.2}.player-id small{display:block;color:var(--muted);font-size:13px;margin-top:5px}.avatar{height:34px;width:34px;flex-shrink:0;border-radius:50%;border:1px solid var(--line);box-shadow:inset 0 2px 5px #ffffff55}.avatar.white{background:radial-gradient(circle at 30% 20%,#fff4d9,#c9b28b)}.avatar.black{background:radial-gradient(circle at 30% 20%,#6b6260,#171515)}.turn-label{font-size:13px;font-weight:600;color:var(--muted)}.board-frame{position:relative;height:530px;isolation:isolate;background:var(--stage)}#canvas-container{position:absolute;inset:0}#canvas-container canvas{display:block;width:100%;height:100%;outline-offset:-4px}.board-caption{position:absolute;bottom:12px;left:0;right:0;pointer-events:none;text-align:center;font-size:12px;color:var(--stage-ink);z-index:1}.game-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding:22px;border-top:1px solid var(--line)}.game-bottom strong{font-size:21px;font-weight:700}.game-bottom strong.check{color:var(--accent)}.game-bottom p{font-size:15px;line-height:1.5;color:var(--muted);max-width:430px;margin-top:5px}.game-controls{display:flex;gap:10px}.game-controls button:last-child{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}aside{display:flex;flex-direction:column;gap:24px;min-width:0}.side-card{border:1px solid var(--line);padding:24px;background:var(--surface);border-radius:var(--card-radius);height:auto;min-width:0}.card-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:12px;font-weight:700;letter-spacing:.12em;color:var(--muted)}.card-heading small{font-size:12px;font-weight:400;letter-spacing:0}.tiny-dot{display:none}.move-summary{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:24px 0}.move-summary small{font-size:11px;font-weight:600;color:var(--muted);letter-spacing:.08em}.move-summary b{font:700 58px/1 var(--heading-font),serif;display:block;margin-top:9px}.status-pill{border:1px solid var(--line);font-size:12px;font-weight:600;border-radius:var(--radius);padding:9px;line-height:1.5;max-width:120px}.capture-row{display:flex;justify-content:space-between;gap:14px;border-top:1px solid var(--line);margin-top:14px;padding-top:12px;font-size:15px;color:var(--muted)}.capture-row b{font-size:22px;font-weight:700;color:var(--ink);max-width:160px;overflow-wrap:anywhere}.history-head,.move-row{display:grid;grid-template-columns:28px 1fr 1fr;gap:10px}.history-head{font-size:11px;font-weight:700;color:var(--muted);border-bottom:1px solid var(--line);padding:22px 0 12px}.move-row{font-size:16px;padding:12px 0;border-bottom:1px solid var(--line)}.move-row span:first-child{color:var(--muted);font-size:13px}#move-list{height:200px;overflow:auto;scrollbar-width:thin}.empty-history{padding:34px 0;text-align:center;font-size:15px;line-height:1.7;color:var(--muted)}.empty-history>span{font-size:28px;display:block;margin-bottom:12px}.board-move{display:grid;grid-template-columns:28px 62px minmax(0,1fr);gap:8px;padding:13px 0;border-bottom:1px solid var(--line);font-size:15px}.board-move b{font-size:14px}.board-move>span:last-child{overflow-wrap:anywhere}.online-teaser{text-align:left;padding:26px;min-height:210px;background:var(--online);color:var(--online-ink);border:0;border-radius:var(--card-radius)}.online-teaser .card-heading{color:inherit;font-size:11px}.online-teaser b{display:block;font:700 30px/1.15 var(--heading-font),serif;margin:24px 0}.online-teaser>span:last-child{font-size:15px;font-weight:400}.rules-card{display:grid;grid-template-columns:1fr 1.5fr;gap:35px;margin-top:42px;padding-top:30px;border-top:1px solid var(--line)}.rule-copy p{font-size:17px;line-height:1.7;color:var(--muted);margin-bottom:18px}.rule-copy span{font-size:13px;color:var(--muted)}.ad-slot{display:flex;flex-direction:column;justify-content:center;align-items:center;border:1px dashed var(--line);background:var(--ad);color:var(--muted);border-radius:var(--radius)}.ad-slot span{font-size:11px;letter-spacing:.16em}.ad-slot small{font-size:12px;margin-top:8px}.banner-slot{height:100px;margin-top:160px}.rectangle-slot{height:250px;min-height:250px;margin-top:160px;flex-shrink:0}.site>footer{display:flex;justify-content:space-between;gap:20px;padding:28px 0;margin-top:70px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}dialog{max-width:calc(100vw - 32px);width:490px;padding:34px;border:1px solid var(--line);border-radius:var(--card-radius);background:var(--surface);color:var(--ink);box-shadow:0 30px 100px #0005;font-family:var(--body-font),sans-serif}dialog::backdrop{background:#10101099;backdrop-filter:blur(5px)}dialog h2{font-size:36px;margin-bottom:16px}.dialog-close{position:absolute;top:8px;right:8px;background:transparent;border:0;font-size:26px;width:42px;padding:5px}.dialog-copy{font-size:17px;line-height:1.7;color:var(--muted);margin-bottom:24px}dialog label{display:block;font-size:16px;font-weight:600;margin:20px 0 8px}dialog input,dialog select{width:100%;padding:14px;font-size:17px;background:var(--page);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius)}.primary-button{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.full-button{width:100%;margin-top:24px}.match-options{display:flex;flex-direction:column;gap:12px}.match-options>span{font-size:12px;color:var(--muted);text-align:center;margin:18px 0 0}.private-actions,.dialog-actions{display:flex;gap:10px;margin-top:16px}.private-actions button{flex:1}.dialog-actions{justify-content:flex-end}.notice{margin-top:20px;padding:16px;background:var(--soft);font-size:15px;color:var(--muted);border-radius:var(--radius)}.promotion-options{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:24px}.promotion-options button{font-size:13px;padding:12px 3px}.promotion-options b{display:block;font-size:40px;margin-bottom:8px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}#render-note{display:block;font-size:13px;color:var(--accent)}.board-frame:has(#fallback-board:not([hidden])){height:auto;min-height:0;padding:20px 0 38px}#fallback-board:not([hidden]){display:grid}#fallback-board{width:92%;max-width:650px;aspect-ratio:1;grid-template-columns:repeat(var(--size,8),minmax(0,1fr));grid-template-rows:repeat(var(--size,8),minmax(0,1fr));margin:auto;border:10px solid #765434}.fallback-square{min-height:0;padding:0;border:0;border-radius:0;position:relative;font-size:clamp(22px,4vw,44px);background:#d8bb86;color:#242124}.fallback-square.dark{background:#805e43}.fallback-square.white-piece{color:#fff1d5;text-shadow:0 2px 3px #443322}.fallback-square small{position:absolute;left:3px;bottom:1px;font-size:9px;color:#2b2019}.fallback-square.selected{box-shadow:inset 0 0 0 3px var(--accent)}.fallback-square.legal:after{content:'';position:absolute;height:12px;width:12px;background:#af87d5aa;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.game-gomoku .fallback-square{background-color:#c49c6c;background-image:linear-gradient(transparent calc(50% - 1px),#5c4029 50%,transparent calc(50% + 1px)),linear-gradient(90deg,transparent calc(50% - 1px),#5c4029 50%,transparent calc(50% + 1px));font-size:20px}.game-reversi .fallback-square{background:#272727;border:1px solid #8f784e}.asset-page{max-width:1200px;margin:auto;padding:44px 32px}.asset-page h1{font-size:54px;margin:24px 0}.asset-page p{font-size:18px;line-height:1.7;color:var(--muted);max-width:800px;margin:20px 0}.asset-sheet{display:block;width:100%;border:1px solid var(--line);margin-top:30px}.asset-logo{width:80px;height:80px;object-fit:contain}.asset-download{display:inline-flex;padding:13px 22px;background:var(--accent);color:var(--on-accent);border-radius:var(--radius);font-weight:700;margin:22px 0}.dice-toolbar{display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding:22px;border-top:1px solid var(--line)}.roll-button{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.dice-area{flex:1;min-width:170px}#dice-list{display:flex;gap:10px}.die-chip{display:flex;align-items:center;gap:8px;padding:7px 13px;min-height:50px}.die-chip span{font-size:34px;line-height:1}.die-chip small{font-size:12px}.die-chip.available{border-color:var(--accent)}.die-chip.chosen{background:var(--accent);color:var(--on-accent)}.dice-area p{font-size:14px;color:var(--muted);margin-top:9px}.tray-controls{display:flex;gap:8px}.bg-history-row{display:grid;grid-template-columns:25px minmax(0,1fr);gap:10px;border-bottom:1px solid var(--line);padding:14px 0;font-size:15px}.bg-history-row p{margin-top:5px;color:var(--muted);font-size:14px;overflow-wrap:anywhere}.game-backgammon #fallback-board{aspect-ratio:auto;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:none;gap:3px;max-width:1000px;background:#3c2e25;padding:6px}.bg-point{min-height:85px;padding:5px 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:#5c4230;color:#f2dfbb;font-size:16px;border:1px solid #b89465;border-radius:3px}.bg-point .point-number{font-size:12px}.bg-point .point-disc{font-size:23px}.bg-point.black-piece .point-disc{color:#171311}.bg-point.selected{outline:2px solid var(--accent);outline-offset:-3px}.bg-point.legal{border:2px solid #af87d5}.game-backgammon .history-head{display:none}.table-facts{display:flex;align-items:center;gap:28px;font-size:13px;font-weight:600}.table-facts b{display:block;font:700 40px/1 var(--heading-font),serif}.table-facts span{display:block;color:var(--muted);margin-top:7px}.session-note{font-size:13px;line-height:1.65;color:var(--muted);border-top:1px solid var(--line);padding-top:18px;margin-top:24px}
@media(max-width:1050px){.site{padding:0 24px}.layout{grid-template-columns:minmax(0,1fr) 260px;gap:22px}.game-toolbar{padding:12px}.view-tools span{display:none}.view-tools #ai-settings span{display:inline}.board-frame{height:480px}.side-card{padding:20px}.brand{font-size:28px}.brand-logo{height:44px;width:44px}nav{gap:18px}}
@media(max-width:760px){.site{padding:0 18px}.site>header{padding:20px 0;gap:15px}.brand{font-size:28px}.brand small{font-size:9px}.brand-logo{width:38px;height:38px}.craft-link,.edition{display:none}nav{font-size:14px;gap:14px}.headline{margin:28px 0;gap:20px;align-items:start;flex-direction:column}h1{font-size:46px}.intro{font-size:17px}.availability{font-size:13px}.layout{grid-template-columns:1fr}.board-frame{height:78vw;min-height:300px;max-height:560px}.player-bar{padding:14px 17px;min-height:68px}.player-id b{font-size:16px}.player-id small,.turn-label{font-size:12px}.board-caption{font-size:11px}.game-toolbar{gap:8px}.mode-tabs{flex:1}.mode-tabs button{flex:1;white-space:nowrap;font-size:16px}.view-tools{width:100%;justify-content:space-between}.view-tools span{display:none}.game-bottom{padding:18px}.game-bottom strong{font-size:19px}.game-bottom p{font-size:15px}.game-controls{width:100%;justify-content:flex-end}.rules-card{grid-template-columns:1fr;gap:22px;margin-top:35px}.rule-copy p{font-size:17px}h2,.rules-card h2{font-size:32px}aside{display:flex;gap:22px}.side-card{padding:22px}.online-teaser{min-height:190px}.banner-slot{margin-top:160px}.site>footer{flex-direction:column;margin-top:45px;gap:12px}.dice-toolbar{padding:17px;gap:16px}.tray-controls{width:100%}.tray-controls button{flex:1}.game-backgammon #fallback-board{grid-template-columns:repeat(6,minmax(0,1fr))}.game-backgammon .board-frame{height:85vw}.asset-page{padding:30px 20px}.asset-page h1{font-size:42px}dialog{padding:30px 24px}dialog h2{font-size:32px}}
:root{--page:#eef1f7;--surface:#ffffff;--soft:#e4e9f3;--ink:#202c43;--muted:#66748d;--line:#cdd6e5;--accent:#395ae8;--on-accent:#ffffff;--radius:7px;--card-radius:12px;--shadow:0 6px 18px #28385c05;--online:#26334d;--online-ink:#f1f4ff;--ad:#e6ebf4;--stage:#c9d1df;--stage-ink:#3f4a5e}.site{max-width:1540px;padding:0 30px 0 0;display:grid;grid-template-columns:165px minmax(0,1fr);column-gap:40px}.site>header{grid-column:1;grid-row:1/3;display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;background:#1d2940;color:#e6edff;padding:37px 20px;min-height:100vh}.brand-logo{display:none}.brand{font:700 28px/1 'neue-haas-grotesk-display',sans-serif;letter-spacing:-.06em}.brand small{font:400 8px/1.5 'input-mono',monospace;letter-spacing:.03em;margin-top:12px}.site>header nav{display:flex;flex-direction:column;align-items:flex-start;gap:25px;font-size:14px;margin-top:65px;width:100%}.game-menu{width:100%}.game-menu>div{left:0;right:auto;top:100%;color:#202c43;min-width:170px}.site>main{grid-column:2;min-width:0}.site>footer{grid-column:2}.headline{align-items:center;margin:34px 0 24px}.headline h1{font:700 63px/1 'neue-haas-grotesk-display',sans-serif;letter-spacing:-.06em}.headline .eyebrow{font:400 11px 'input-mono',monospace;letter-spacing:0;color:#395ae8;margin-bottom:10px}.headline .intro{font-size:17px;margin-top:13px;max-width:600px}.availability{border:0;background:#dfe6fb;color:#324dba;font-family:'input-mono',monospace;font-size:12px;gap:8px}.reversi-dashboard>.position-card{padding:18px 24px;margin-bottom:22px;display:grid;grid-template-columns:1.15fr 1.25fr 1fr 1fr;gap:22px;align-items:center;border:0;border-radius:12px;box-shadow:var(--shadow)}.reversi-dashboard>.position-card .card-heading{font-family:'input-mono',monospace;font-size:11px;letter-spacing:0;line-height:1.6}.reversi-dashboard>.position-card .move-summary{margin:0;gap:12px}.move-summary small{font:400 10px 'input-mono',monospace;letter-spacing:0}.move-summary b{font:700 35px 'neue-haas-grotesk-display',sans-serif;margin:2px 0 0}.status-pill{background:#e8edfa;border:0;max-width:112px;font-size:11px}.reversi-dashboard>.position-card .capture-row{margin:0;border:0;border-left:1px solid var(--line);padding:0 0 0 20px;display:flex;flex-direction:column;gap:3px;font-size:13px}.capture-row b{font:700 35px 'neue-haas-grotesk-display',sans-serif}.reversi-console{display:grid;grid-template-columns:minmax(0,1fr) 255px;gap:22px;align-items:start}.game-card{border:0}.game-toolbar{background:#ffffff;padding:14px}.mode-tabs{background:#e8edf7;gap:0;padding:3px}.mode-tabs button{font-size:15px;padding:10px 14px}.view-tools button{font-size:16px;padding:10px 7px}.view-tools span{font-size:13px}.player-bar{padding:15px 20px}.player-id b{font-size:16px;font-weight:700}.player-id small{font-size:12px}.avatar{height:28px;width:28px}.turn-label{font-family:'input-mono',monospace;font-size:11px}.board-frame{height:530px}.board-caption{font-family:'input-mono',monospace;font-size:10px}.game-bottom{padding:19px;gap:14px}.game-bottom strong{font-size:19px}.game-controls button{font-size:15px;padding:12px 15px}.history-card{border:0;padding:24px 19px}.card-heading{font-family:'input-mono',monospace;letter-spacing:0}.history-head{font-family:'input-mono',monospace;font-size:10px;padding-top:17px}.board-move{font-family:'input-mono',monospace;font-size:12px;grid-template-columns:23px 50px minmax(0,1fr);gap:6px}.board-move b{font-size:11px}#move-list{height:340px}.empty-history{font-family:'input-mono',monospace;font-size:12px;padding:40px 0}.empty-history>span{font-size:24px}.online-teaser{min-height:195px;padding:23px}.online-teaser b{font:700 27px/1.1 'neue-haas-grotesk-display',sans-serif;letter-spacing:-.03em}.online-teaser>span:last-child{font-size:14px}.online-teaser .card-heading{font-size:10px}.rules-card{background:#e3e9f5;border:0;padding:28px;border-radius:12px;grid-template-columns:1fr 1.6fr;margin-top:26px}.rules-card h2{font:700 29px/1.13 'neue-haas-grotesk-display',sans-serif;letter-spacing:-.035em}.rules-card .eyebrow{font:400 11px 'input-mono',monospace;letter-spacing:0}.rule-copy p{font-size:16px;line-height:1.7}.rule-copy span{font-family:'input-mono',monospace;font-size:10px}.ad-slot{font-family:'input-mono',monospace;border-radius:7px}.ad-slot span,.ad-slot small{font-size:10px}.site>footer{font-family:'input-mono',monospace;font-size:11px}.reversi-console aside{gap:20px}.dialog-copy{font-size:17px}dialog .eyebrow{font-family:'input-mono',monospace;letter-spacing:0}dialog h2{font-family:'neue-haas-grotesk-display',sans-serif;font-size:34px;font-weight:700}.brand:hover{color:#ffffff}@media(max-width:1150px){.site{grid-template-columns:140px minmax(0,1fr);column-gap:25px;padding-right:20px}.site>header{padding:32px 17px}.reversi-console{grid-template-columns:minmax(0,1fr) 225px;gap:18px}.reversi-dashboard>.position-card{grid-template-columns:1fr 1.3fr 1fr 1fr;gap:12px;padding:17px}.board-frame{height:480px}.headline h1{font-size:55px}.reversi-dashboard>.position-card .card-heading{font-size:10px}}@media(max-width:900px){.site{display:block;padding:0 20px}.site>header{min-height:0;flex-direction:row;align-items:center;justify-content:space-between;padding:20px;margin:0 -20px}.site>header nav{margin:0;flex-direction:row;align-items:center;width:auto;gap:18px}.brand small{font-size:7px}.reversi-console{grid-template-columns:minmax(0,1fr) 230px}.reversi-dashboard>.position-card .card-heading{display:none}.reversi-dashboard>.position-card{grid-template-columns:1.4fr 1fr 1fr}.headline h1{font-size:54px}.headline .intro{font-size:16px}}@media(max-width:760px){.site{padding:0 16px}.site>header{margin:0 -16px;padding:19px 16px}.brand{font-size:26px}.site>header nav{gap:14px;font-size:13px}.headline{margin:27px 0 22px;gap:18px;flex-direction:row;flex-wrap:wrap}.headline h1{font-size:49px}.headline .intro{max-width:290px}.availability{font-size:10px;padding:10px 13px}.reversi-dashboard>.position-card{grid-template-columns:1.3fr 1fr 1fr;padding:16px 14px;gap:12px}.reversi-dashboard>.position-card .capture-row{padding-left:13px;font-size:11px}.reversi-dashboard>.position-card .move-summary{display:block}.move-summary b{font-size:31px}.status-pill{display:inline-block;font-size:10px;padding:4px 8px;margin-top:7px}.reversi-console{display:flex;flex-direction:column;gap:25px}.game-column,.reversi-console aside{width:100%}.board-frame{height:83vw;min-height:300px}.rules-card{padding:24px;grid-template-columns:1fr}.history-card{padding:24px}#move-list{height:230px}.board-move{font-size:14px;grid-template-columns:25px 65px minmax(0,1fr)}.board-move b{font-size:13px}.game-controls button{font-size:16px}.site>footer{font-size:11px}}
.game-reversi .mode-tabs button,.game-reversi .game-controls button{font-size:16px}.game-reversi .board-move{font-size:15px;grid-template-columns:23px 60px minmax(0,1fr)}.game-reversi .board-move b{font-size:13px}.game-reversi .empty-history{font-size:14px}.game-reversi .rule-copy p{font-size:17px}.game-reversi .fallback-square{background:#26344e;border-color:#9dabcf}.game-reversi .history-head{font-size:11px}

@media(max-width:900px){.game-reversi .site>header .game-menu{width:auto;flex-shrink:0}.game-reversi .site>header nav>a{white-space:nowrap}}

/* AI scoreboards and public invitations retain each game's own type and palette. */
[hidden]{display:none!important}
.ai-scoreboard{margin-bottom:20px}.score-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:18px 0 10px}.score-grid>div{min-width:0}.score-grid span{font-size:15px;font-weight:700;display:block}.score-grid strong{font-family:var(--heading-font);font-size:38px;line-height:1.2;font-weight:800;display:block;margin-top:8px;color:var(--accent)}.score-note{font-size:14px;line-height:1.5;margin:14px 0 0;color:var(--muted)}.score-points{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:16px;border-top:1px solid var(--line);padding-top:12px}
#online-dialog{max-height:calc(100dvh - 32px);overflow-y:auto;width:540px}.invitation-card{border:1px solid var(--line);border-radius:var(--card-radius);padding:24px;margin-top:26px;background:var(--soft)}.invitation-card h3{font-family:var(--heading-font);font-weight:800;font-size:26px;line-height:1.2;margin:10px 0}.invitation-card p{line-height:1.5}.invitation-card label{font-size:15px}.invitation-card input{font-size:16px;width:100%;box-sizing:border-box;min-width:0}.invitation-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.invitation-actions button{flex:1;min-width:145px;font-size:16px;font-weight:700}.match-options button{font-weight:700}.match-options #cancel-match{margin-top:10px}
.game-chess .ai-scoreboard{border-top:3px solid var(--accent)}.game-gomoku .ai-scoreboard{box-shadow:none;border-width:0;border-top:1px solid var(--line);background:transparent;padding:24px 0}.game-checkers .score-grid strong{font-size:46px}.game-checkers .ai-scoreboard{border-left:4px solid var(--accent)}.game-reversi .ai-scoreboard{display:grid;grid-template-columns:190px 1fr;align-items:center;gap:16px}.game-reversi .ai-scoreboard .score-grid{margin:0}.game-reversi .ai-scoreboard .score-note{grid-column:1/-1;margin:0}.game-backgammon .ai-scoreboard{max-width:1050px;margin:28px auto}.game-backgammon .score-grid{gap:24px}.game-backgammon .score-grid>div{text-align:center}.game-backgammon .score-grid strong{font-size:48px}.game-backgammon .invitation-card{border-style:dashed}
@media(max-width:600px){.game-reversi .ai-scoreboard{display:block}.game-reversi .ai-scoreboard .score-grid{margin:18px 0}.game-reversi .ai-scoreboard .score-note{margin-top:14px}.invitation-card{padding:18px}#online-dialog{padding:28px 22px}.score-grid strong{font-size:34px}.game-checkers .score-grid strong,.game-backgammon .score-grid strong{font-size:40px}}
