@font-face { font-family:"GCV Janggi Brush"; src:url("./assets/janggi-brush.woff2") format("woff2"); font-style:normal; font-weight:400; font-display:swap; }
@font-face { font-family:"GCV Janggi Cursive"; src:url("./assets/janggi-cursive.woff2") format("woff2"); font-style:normal; font-weight:400; font-display:swap; }
/* Full-screen table, measured independently of the surrounding account UI. */
body.gcv-janggi-open { overflow:hidden; overscroll-behavior:none; }
.game-experience .jg-shell {
  --jg-ink:#dedede; --jg-muted:#a5a5a5; --jg-line:#444; --jg-gold:#e7a453;
  --jg-cho:#172d83; --jg-han:#b12920;
  --jg-octagon:polygon(29% 0,71% 0,100% 29%,100% 71%,71% 100%,29% 100%,0 71%,0 29%);
  position:fixed; z-index:1000; inset:0; width:100%; height:100vh; height:100dvh; min-width:0;
  display:grid; grid-template-rows:auto auto minmax(0,1fr) auto; overflow:hidden; isolation:isolate;
  padding-top:env(safe-area-inset-top,0px); color:var(--jg-ink); color-scheme:dark; background:#292929;
  font-family:"Pretendard","Noto Sans KR","Malgun Gothic",sans-serif;
}
.game-experience .jg-shell[data-focus="false"] { display:none; }
.game-experience .jg-shell button { -webkit-tap-highlight-color:transparent; }
.game-experience .jg-shell :is(button,select,summary):focus-visible { outline:3px solid #a9c8f9; outline-offset:2px; }
.game-experience .jg-heading {
  display:grid; grid-template-columns:44px minmax(0,1fr) 52px 44px; align-items:center; gap:7px; min-height:56px;
  padding:5px max(10px,env(safe-area-inset-right,0px)) 5px max(10px,env(safe-area-inset-left,0px));
  width:100%; background:#393939; border-bottom:1px solid #242424;
}
.game-experience .jg-heading > div { min-width:0; text-align:center; }
.game-experience .jg-heading p { display:none; }
.game-experience .jg-heading h2 { margin:0; color:#d4d4d4; font-size:21px; line-height:1.35; font-weight:800; letter-spacing:-.7px; }
.game-experience .jg-back { display:grid; place-items:center; width:44px; height:44px; padding:0; border:0; border-radius:10px; background:transparent; color:#d5d5d5; font-family:Arial,sans-serif; font-size:37px; line-height:1; }
.game-experience .jg-back:hover { background:#ffffff0c; }
.game-experience .jg-rotate { display:grid; align-content:center; justify-items:center; gap:1px; width:44px; min-height:44px; padding:3px; border:1px solid #626262; border-radius:8px; color:#d5d5d5; background:transparent; box-shadow:none; font-family:inherit; }
.game-experience .jg-rotate > span { font-family:Arial,sans-serif; font-size:24px; line-height:1; }
.game-experience .jg-rotate > small { font-size:10px; line-height:1.2; }
.game-experience .jg-rotate[aria-pressed="true"] { border-color:var(--jg-gold); color:#f0bd7b; }
.game-experience .jg-rotate:hover { background:#ffffff0c; }
.game-experience :is(.jg-difficulty-badge,.jg-difficulty,.jg-heading-badge,.jg-heading-emblem) { justify-self:end; display:inline-flex; align-items:center; justify-content:center; min-width:52px; min-height:28px; padding:4px 8px; border:1px solid #666; border-radius:7px; color:#c7c7c7; background:#303030; font-size:12px; line-height:1.35; font-weight:750; white-space:nowrap; }
.game-experience .jg-status { display:flex; align-items:center; justify-content:center; gap:7px; min-height:31px; margin:4px 10px; padding:4px 9px; border:1px solid #232323; border-radius:22px; background:#272727; color:var(--jg-ink); box-shadow:none; }
.game-experience .jg-status-dot { flex:0 0 5px; width:5px; height:5px; border-radius:50%; background:#bbb; }
.game-experience .jg-status strong { color:#bbb; font-size:11px; line-height:1.5; font-weight:550; }
.game-experience .jg-status small { color:#999; font-size:10px; line-height:1.5; white-space:nowrap; }
.game-experience .jg-thinking .jg-status-dot { background:#ed973e; animation:jg-think 1.1s ease-in-out infinite alternate; }
.game-experience .jg-arena { display:grid; grid-template-rows:minmax(0,1fr); min-height:0; min-width:0; width:100%; padding:0; }
.game-experience .jg-board-space { container-type:size; display:grid; place-items:center; width:100%; min-width:0; min-height:0; padding:0; }
/* The photographed board is square; pieces keep their own 1:1 aspect ratio. */
.game-experience .jg-board-wrap { width:min(100%,62vh,660px); width:min(100cqw,100cqh,660px); aspect-ratio:1; padding:1px; margin:0; min-width:0; max-height:100%; border:0; border-radius:0; background:#a38f4e; box-shadow:none; }
.game-experience .jg-board { position:relative; width:100%; height:100%; border-radius:0; overflow:hidden; background:repeating-linear-gradient(90deg,#765c1712 0 .6px,#fff0 .6px 2px,#fff6ca1c 2px 2.7px,#fff0 2.7px 4.3px),repeating-linear-gradient(89.6deg,#fff0 0 9px,#8a67181c 9.4px 10px,#fff0 10px 23px),repeating-linear-gradient(90.4deg,#fff0 0 34px,#eee19b2b 35px 42px,#fff0 43px 59px),linear-gradient(90deg,#d0b869,#ddc77c 43%,#d2bb6e); box-shadow:none; }
.game-experience .jg-board-lines { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; stroke:#413822; stroke-width:2; opacity:.93; }
.game-experience .jg-palace { stroke-width:2; }
.game-experience .jg-board { --jg-piece-angle:0deg; }
.game-experience .jg-board[data-pieces-rotated="true"] { --jg-piece-angle:180deg; }
.game-experience .jg-piece { transform:rotate(var(--jg-piece-angle,0deg)); }
.game-experience .jg-board-dots { fill:#413822; stroke:none; opacity:.7; }
.game-experience .jg-board-cells { position:absolute; inset:0; display:grid; grid-template-columns:repeat(9,minmax(0,1fr)); grid-template-rows:repeat(10,minmax(0,1fr)); }
.game-experience .jg-cell { position:relative; z-index:1; display:grid; place-items:center; width:100%; height:100%; min-width:0; min-height:0; padding:0; border:0; border-radius:0; background:transparent; color:#312415; }
.game-experience .jg-cell:focus-visible { outline:2px solid #163d87; outline-offset:-2px; z-index:4; }
.game-experience .jg-cell:has(.jg-piece) { filter:none; }
.game-experience .jg-cell.jg-last { background:transparent; }
.game-experience .jg-cell.jg-last::after { content:""; position:absolute; inset:10%; border:1px solid #71622991; pointer-events:none; }
.game-experience .jg-piece { position:relative; z-index:1; isolation:isolate; display:grid; place-items:center; width:74%; aspect-ratio:1; padding-bottom:1%; clip-path:var(--jg-octagon); background:linear-gradient(135deg,#fff 0,#dbddd8 27%,#a9aaa6 68%,#eeefeb 100%); color:var(--jg-cho); font-family:"GCV Janggi Brush","Noto Serif CJK KR",SimSun,Batang,serif; font-size:clamp(10px,min(6cqw,6cqh),40px); font-weight:400; line-height:1; text-shadow:none; user-select:none; pointer-events:none; }
.game-experience .jg-piece::before { content:""; position:absolute; z-index:-1; inset:1.3px; clip-path:var(--jg-octagon); background:linear-gradient(145deg,#fff 3%,#f5f5f0 60%,#d8dad3 100%); box-shadow:none; }
.game-experience .jg-cho { color:var(--jg-cho); font-family:"GCV Janggi Cursive","GCV Janggi Brush",serif; }
.game-experience .jg-han { color:var(--jg-han); }
.game-experience .jg-general { width:86%; font-size:clamp(13px,min(7.2cqw,7.2cqh),48px); }
.game-experience :is(.jg-kind-2,.jg-kind-7) { width:55%; font-size:clamp(9px,min(4.7cqw,4.7cqh),32px); }
.game-experience .jg-selected { z-index:5; }
.game-experience .jg-selected .jg-piece { transform:translateY(-2px) rotate(var(--jg-piece-angle,0deg)); background:#ffb951; }
.game-experience .jg-selected .jg-piece::before { inset:2.5px; background:#fff6d7; }
.game-experience .jg-in-check .jg-piece { background:#c22c20; }
.game-experience .jg-in-check .jg-piece::before { inset:2.5px; background:#fff2e1; }
.game-experience .jg-legal-dot { position:absolute; z-index:6; width:17%; aspect-ratio:1; border-radius:50%; background:#214d8dbf; box-shadow:none; pointer-events:none; }
.game-experience .jg-legal:has(.jg-piece) .jg-legal-dot { width:86%; height:86%; border:2px solid #204b86; background:transparent; border-radius:25%; box-shadow:none; }
/* Reset global footer flex styles so opening options never resizes the board. */
.game-experience .jg-dock { position:relative; z-index:10; display:block; width:100%; min-height:0; max-height:48dvh; margin:0; gap:0; padding:0 max(7px,env(safe-area-inset-right,0px)) max(5px,env(safe-area-inset-bottom,0px)) max(7px,env(safe-area-inset-left,0px)); background:#393939; border-top:1px solid #1f1f1f; box-shadow:none; }
.game-experience .jg-dock > :is(.jg-settings,.jg-controls,.jg-options,.jg-last-move,.jg-notice,.jg-match-info) { width:100%; max-width:660px; margin-left:auto; margin-right:auto; }
.game-experience .jg-match-info { display:grid; grid-template-columns:minmax(0,1fr) 48px minmax(0,1fr); align-items:center; min-height:71px; padding:5px 2px; margin-bottom:5px; border-bottom:1px solid #505050; }
.game-experience .jg-seat { position:relative; display:flex; align-items:center; gap:8px; min-width:0; padding:5px 2px; border:0; border-radius:0; }
.game-experience .jg-seat > div { flex:1; min-width:0; display:flex; flex-direction:column; gap:3px; }
.game-experience .jg-seat strong { color:#e6e6e6; display:block; font-size:12px; font-weight:750; line-height:1.4; white-space:nowrap; }
.game-experience .jg-seat strong > span { color:#b7b7b7; font-weight:550; }
.game-experience .jg-seat small { display:block; color:#acacac; font-size:9px; line-height:1.45; }
.game-experience .jg-seat-avatar { display:grid; place-items:center; flex:0 0 38px; width:38px; height:38px; font:400 29px "GCV Janggi Brush",serif; color:var(--jg-han); border:2px solid #959595; border-radius:50%; background:#ededdf; box-shadow:none; }
.game-experience .jg-seat-cho .jg-seat-avatar { color:var(--jg-cho); font-family:"GCV Janggi Cursive","GCV Janggi Brush",serif; }
.game-experience .jg-seat-turn .jg-seat-avatar { border-color:#f39434; box-shadow:none; }
.game-experience .jg-seat-badge { display:none; }
.game-experience .jg-match-info > .jg-seat:last-child { flex-direction:row-reverse; text-align:right; }
.game-experience .jg-match-center { display:flex; align-items:center; justify-content:center; flex-direction:column; gap:3px; color:#b9b9b9; }
.game-experience .jg-match-center strong { display:grid; place-items:center; width:35px; height:35px; border:2px solid #aaa; border-radius:50%; background:#e0e0d9; color:#565656; font-size:14px; font-weight:800; line-height:1; }
.game-experience .jg-match-center small { font-size:8px; line-height:1.25; white-space:nowrap; }
.game-experience .jg-last-move { min-height:16px; padding:0 3px; margin:0 0 3px; color:#a8a8a8; font-size:9px; line-height:1.6; text-align:center; }
.game-experience .jg-notice { padding:5px 9px; margin:0 0 5px; border:1px solid #8f744b; border-radius:7px; color:#ebca95; background:#453a2c; font-size:10px; line-height:1.5; }
.game-experience .jg-settings { margin:0; padding:4px 4px 0; min-height:0; }
.game-experience .jg-setting-row { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.game-experience .jg-setting-row label { min-width:0; color:#bbb; font-size:10px; font-weight:650; line-height:1.35; }
.game-experience .jg-setting-row select { display:block; width:100%; max-width:100%; min-height:39px; padding:7px 8px; margin-top:4px; border:1px solid #626262; border-radius:8px; color:#e3e3e3; background:#303030; font-family:inherit; font-size:12px; font-weight:650; }
.game-experience .jg-setting-note { color:#acacac; font-size:9px; line-height:1.5; margin:5px 0 0; }
.game-experience .jg-formations { min-width:0; padding:0; margin:8px 0; border:0; }
.game-experience .jg-formations legend { padding:0; margin-bottom:4px; color:#bbb; font-size:10px; font-weight:650; }
.game-experience .jg-formations > div { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; }
.game-experience .jg-formation { position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; min-height:46px; min-width:0; padding:5px 2px; border:1px solid #585858; border-radius:7px; background:#303030; cursor:pointer; }
.game-experience .jg-formation input { position:absolute; width:1px; height:1px; opacity:0; }
.game-experience .jg-formation:has(input:focus-visible) { outline:3px solid #a9c8f9; outline-offset:2px; }
.game-experience .jg-formation > span:last-child { color:#b4b4b4; font-size:8px; line-height:1.4; text-align:center; }
.game-experience .jg-formation-pieces { color:#e3e3db; font-family:"GCV Janggi Brush",serif; font-size:15px; font-weight:400; line-height:1.4; word-spacing:0; letter-spacing:-.8px; white-space:nowrap; }
.game-experience .jg-formation-selected { border-color:#dda056; background:#4b3c2c; box-shadow:none; }
.game-experience .jg-formation-selected > span:last-child { color:#f0bd7b; }
.game-experience .jg-primary { width:100%; min-height:44px; padding:9px 12px; border:1px solid #e8ba6e; border-radius:9px; color:#332009; background:linear-gradient(110deg,#edc384,#d9a25c); box-shadow:none; font-family:inherit; font-size:13px; line-height:1.5; font-weight:800; }
.game-experience .jg-primary:hover { filter:brightness(1.05); }
.game-experience .jg-primary > span { margin-right:5px; font-size:18px; vertical-align:middle; }
.game-experience .jg-controls { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px 8px; }
.game-experience .jg-controls button { display:flex; align-items:center; justify-content:center; gap:6px; min-height:44px; min-width:0; padding:7px 5px; border:1px solid #454545; border-radius:28px; color:#c7c7c7; background:linear-gradient(180deg,#424242,#363636); box-shadow:none; font-size:15px; line-height:1.4; font-weight:750; }
.game-experience .jg-controls button > span { color:#bababa; font-size:18px; }
.game-experience .jg-controls button:disabled { opacity:.45; }
.game-experience .jg-controls button:not(:disabled):hover { border-color:#777; background:#4b4b4b; }
.game-experience .jg-options { position:relative; display:block; width:100%; margin-top:1px; color:#b6b6b6; }
.game-experience .jg-options > summary { min-height:32px; display:flex; align-items:center; justify-content:center; gap:7px; padding:5px; color:#b6b6b6; font-size:11px; line-height:1.5; font-weight:650; cursor:pointer; list-style:none; }
.game-experience .jg-options > summary::-webkit-details-marker { display:none; }
.game-experience .jg-options > summary > span { display:none; }
.game-experience .jg-options > summary::after { content:"⌃"; font-size:16px; line-height:1; }
.game-experience .jg-options[open] > summary::after { content:"⌄"; }
.game-experience .jg-options > div { position:absolute; z-index:15; bottom:calc(100% + 8px); left:50%; right:auto; width:min(360px,calc(100vw - 24px)); max-width:calc(100vw - 24px); max-height:min(48dvh,330px); transform:translateX(-50%); overflow:auto; overscroll-behavior:contain; padding:10px 14px 4px; border:1px solid #656565; border-radius:14px; background:#333; box-shadow:none; scrollbar-width:thin; scrollbar-color:#888 #333; }
.game-experience .jg-bottom-actions { display:flex; align-items:center; justify-content:space-around; gap:8px; }
.game-experience .jg-text-button { min-height:44px; padding:9px 12px; border:0; background:transparent; color:#b6b6b6; font-size:11px; line-height:1.5; font-weight:600; }
.game-experience .jg-text-button:hover { color:#eee; }
.game-experience .jg-help { margin:2px 0 0; color:#bbb; border-top:1px solid #575757; }
.game-experience .jg-help summary { min-height:44px; padding:13px 2px; font-size:11px; line-height:1.5; font-weight:650; cursor:pointer; }
.game-experience .jg-help > div { padding:0 2px 7px; }
.game-experience .jg-help p { margin:0 0 10px; color:#bbb; font-size:11px; line-height:1.85; word-break:keep-all; }
.game-experience :is(.jg-pause,.jg-result) { position:fixed; z-index:25; left:50%; top:50%; transform:translate(-50%,-50%); width:min(340px,calc(100vw - 36px)); max-height:calc(100dvh - 90px); overflow:auto; padding:24px 20px 16px; border:1px solid #777; border-radius:17px; background:#363636fa; box-shadow:none; text-align:center; }
.game-experience :is(.jg-pause,.jg-result) h3 { color:#eee; font-size:20px; line-height:1.5; margin:0 0 10px; }
.game-experience :is(.jg-pause,.jg-result) p { color:#bcbcbc; font-size:12px; line-height:1.85; margin:0 0 18px; }
.game-experience .jg-result > small { display:block; color:#e7b979; font-size:11px; line-height:1.5; margin-bottom:19px; }
.game-experience .jg-result-emblem { display:block; color:#e7b979; font-size:34px; line-height:1.3; margin-bottom:10px; }
.game-experience .jg-confirm-overlay { position:fixed; z-index:40; inset:0; display:grid; place-items:center; padding:18px; background:#171717df; backdrop-filter:blur(3px); }
.game-experience .jg-confirm { width:min(100%,350px); max-height:calc(100dvh - 36px); overflow:auto; padding:25px 20px 15px; border:1px solid #777; border-radius:17px; background:#393939; box-shadow:none; text-align:center; }
.game-experience .jg-confirm h3 { color:#eee; font-size:19px; line-height:1.5; margin:0; }
.game-experience .jg-confirm p { margin:12px 0 22px; color:#bcbcbc; font-size:12px; line-height:1.85; }
.game-experience .jg-confirm .jg-text-button { margin-top:7px; }
.game-experience .jg-shell[data-mode="setup"] .jg-dock { max-height:min(350px,48dvh); overflow:auto; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:#888 #333; }
.game-experience .jg-shell[data-mode="setup"] .jg-last-move { display:none; }
.game-experience .jg-shell[data-mode="setup"] .jg-options { display:none; }
@keyframes jg-think { from { opacity:1; } to { opacity:.35; } }
@media (max-width:350px) {
  .game-experience .jg-heading { min-height:50px; padding-top:2px; padding-bottom:2px; }
  .game-experience .jg-heading h2 { font-size:18px; }
  .game-experience .jg-status { min-height:26px; margin-top:3px; margin-bottom:3px; padding:3px 8px; }
  .game-experience .jg-status strong { font-size:10px; }
  .game-experience .jg-dock { padding-left:5px; padding-right:5px; }
  .game-experience .jg-match-info { grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr); min-height:60px; padding-top:3px; padding-bottom:3px; }
  .game-experience .jg-seat { gap:5px; }
  .game-experience .jg-seat-avatar { width:30px; height:30px; flex-basis:30px; font-size:24px; }
  .game-experience .jg-seat strong { font-size:10px; }
  .game-experience .jg-seat small { font-size:8px; }
  .game-experience .jg-match-center strong { width:29px; height:29px; font-size:12px; }
  .game-experience .jg-match-center small { font-size:7px; }
  .game-experience .jg-setting-row { gap:7px; }
  .game-experience .jg-setting-row select { font-size:11px; }
  .game-experience .jg-formations > div { gap:4px; }
  .game-experience .jg-formation-pieces { font-size:13px; }
  .game-experience .jg-controls button { font-size:14px; }
}
@media (max-height:700px) and (orientation:portrait) {
  .game-experience .jg-shell[data-mode="setup"] .jg-match-info { display:none; }
  .game-experience .jg-formations { margin:6px 0; }
  .game-experience .jg-setting-note { margin-top:3px; }
  .game-experience .jg-shell[data-mode="setup"] .jg-dock { max-height:260px; }
}
@media (orientation:landscape) and (max-height:540px) {
  .game-experience .jg-heading { min-height:44px; padding-top:0; padding-bottom:0; }
  .game-experience .jg-heading h2 { font-size:17px; }
  .game-experience .jg-status { min-height:22px; margin:2px 10px; padding:2px 7px; }
  .game-experience .jg-status strong { font-size:10px; }
  .game-experience .jg-match-info { display:none; }
  .game-experience .jg-dock { display:grid; grid-template-columns:minmax(0,1fr) 85px; align-items:end; gap:6px; min-height:55px; max-height:42dvh; padding:4px max(8px,calc((100vw - 700px)/2)) max(6px,env(safe-area-inset-bottom,0px)); }
  .game-experience .jg-last-move { display:none; }
  .game-experience .jg-notice { position:absolute; bottom:calc(100% + 3px); left:50%; transform:translateX(-50%); width:min(100% - 20px,500px); }
  .game-experience .jg-settings { grid-column:1 / -1; display:grid; grid-template-columns:1fr 1.1fr .9fr; gap:5px 10px; align-items:end; width:100%; }
  .game-experience .jg-setting-row { grid-column:1; grid-row:1; gap:7px; }
  .game-experience .jg-setting-note { grid-column:1 / -1; grid-row:2; margin:0; }
  .game-experience .jg-formations { grid-column:2; grid-row:1; margin:0; }
  .game-experience .jg-settings > .jg-primary { grid-column:3; grid-row:1; }
  .game-experience .jg-shell[data-mode="setup"] .jg-dock { max-height:42dvh; }
  .game-experience .jg-setting-row select { min-height:35px; padding:5px; font-size:11px; }
  .game-experience .jg-formations > div { gap:4px; }
  .game-experience .jg-formation { min-height:42px; padding:3px 0; }
  .game-experience .jg-formation-pieces { font-size:12px; }
  .game-experience .jg-formation > span:last-child { font-size:7px; }
  .game-experience .jg-controls { grid-column:1; grid-row:1; grid-template-columns:repeat(4,minmax(0,1fr)); width:100%; gap:6px; }
  .game-experience .jg-controls button { font-size:12px; }
  .game-experience .jg-options { grid-column:2; grid-row:1; width:100%; margin-top:0; }
  .game-experience .jg-options > summary { min-height:44px; }
  .game-experience .jg-options > div { left:auto; right:0; transform:none; width:min(360px,calc(100vw - 24px)); max-height:calc(100dvh - 116px); }
}
@media (prefers-reduced-motion:reduce) { .game-experience .jg-thinking .jg-status-dot { animation:none; } }


/* Preference panels are explicit device settings, separate from paid/game actions. */
.game-experience .jg-preferences { display:grid; gap:10px; min-width:0; width:100%; padding:2px 0 10px; }
.game-experience .jg-preferences > label { display:grid; grid-template-columns:minmax(0,1fr) minmax(105px,1fr); align-items:center; gap:10px; min-width:0; margin:0; color:#e0e0e0; font-size:12px; line-height:1.6; font-weight:600; }
.game-experience .jg-preferences select { display:block; width:100%; min-width:0; max-width:100%; min-height:44px; padding:8px; margin:0; border:1px solid #757575; border-radius:8px; color:#ededed; background:#262626; font-family:inherit; font-size:12px; line-height:1.5; font-weight:600; }
.game-experience .jg-preferences > .jg-text-button { width:100%; min-height:44px; padding:8px 10px; border:1px solid #656565; border-radius:8px; color:#e2e2e2; background:#3b3b3b; text-align:center; font-size:12px; }
.game-experience :is(.jg-preference-note,.jg-rank-summary) { margin:0; color:#c2c2c2; font-size:11px; line-height:1.7; overflow-wrap:anywhere; word-break:keep-all; }
.game-experience .jg-rank-summary { padding:8px 10px; border:1px solid #575757; border-radius:7px; color:#dedede; background:#2c2c2c; }
.game-experience .jg-series { display:grid; gap:9px; min-width:0; padding:11px; border:1px solid #746342; border-radius:9px; background:#302e29; }
.game-experience .jg-series-heading { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:4px 8px; color:#f0d6a5; font-size:11px; line-height:1.6; }
.game-experience .jg-series-heading > span { color:#d2c6af; white-space:nowrap; }
.game-experience .jg-series-games { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:5px; list-style:none; margin:0; padding:0; }
.game-experience .jg-series-games li { display:grid; justify-items:center; gap:3px; padding:5px 2px; border:1px solid #666053; border-radius:6px; color:#b9b6ae; background:#393730; }
.game-experience .jg-series-games small { font-size:9px; line-height:1.5; }
.game-experience .jg-series-games b { font-size:16px; line-height:1.4; }
.game-experience .jg-series-games .jg-series-win { color:#b4deff; border-color:#6595b8; background:#304854; }
.game-experience .jg-series-games .jg-series-draw { color:#ece3c3; border-color:#aca17c; background:#4c4939; }
.game-experience .jg-series-games .jg-series-loss { color:#f4c7bd; border-color:#a07c74; background:#533f3a; }
.game-experience .jg-series .jg-protection { margin:0; padding:5px 7px; border:1px solid #798a61; border-radius:5px; background:#3b4530; color:#deebc4; font-size:11px; line-height:1.65; }
.game-experience .jg-series .jg-candidate { margin:0; padding:6px 7px; border:1px solid #a28a5b; border-radius:5px; background:#4b422f; color:#f4dfb4; font-size:11px; line-height:1.65; }
.game-experience .jg-setup-options { width:100%; min-width:0; margin:4px 0; border-top:1px solid #626262; color:#d2d2d2; }
.game-experience .jg-setup-options > summary { display:flex; align-items:center; justify-content:space-between; gap:8px; min-height:40px; padding:7px 2px; font-size:12px; line-height:1.5; font-weight:650; cursor:pointer; list-style:none; }
.game-experience .jg-setup-options > summary::-webkit-details-marker { display:none; }
.game-experience .jg-setup-options > summary::after { content:"⌄"; font-size:17px; line-height:1; }
.game-experience .jg-setup-options[open] > summary::after { content:"⌃"; }
.game-experience .jg-setup-options .jg-preferences { padding:4px 2px 10px; }
.game-experience .jg-result .jg-rank-result { padding:10px; margin:0 0 16px; border:1px solid #73634b; border-radius:8px; color:#efd1a1; background:#403a30; font-size:12px; line-height:1.75; overflow-wrap:anywhere; }
/* Keep modal dimming without a shadow painted around the board or its pieces. */
.game-experience .jg-dock:has(:is(.jg-pause,.jg-result))::before { content:""; position:fixed; z-index:20; inset:0; background:#1414149c; }
.game-experience .jg-piece, .game-experience .jg-piece::before, .game-experience .jg-piece::after { box-shadow:none; text-shadow:none; filter:none; }
@media (max-width:350px) {
  .game-experience .jg-preferences { gap:8px; }
  .game-experience .jg-preferences > label { grid-template-columns:minmax(0,1fr) minmax(100px,1fr); gap:7px; }
  .game-experience .jg-options > div { padding-left:11px; padding-right:11px; }
}
@media (orientation:landscape) and (max-height:540px) {
  .game-experience .jg-settings > .jg-setup-options { grid-column:1 / -1; grid-row:3; margin:0; }
  .game-experience .jg-setup-options > summary { min-height:36px; padding-top:5px; padding-bottom:5px; }
}
