/* A restrained modern surround keeps the original game as the visual centre. */
:root{--ink:#342b25;--muted:#7d756d;--accent:#88623f;--line:#e8e1d7;--paper:#f5f3ee;--serif:Georgia,'Times New Roman',serif}
body{background:#f5f3ee;color:var(--ink);font-family:Arial,Helvetica,sans-serif}.shell{min-height:100vh;background:transparent}
.sidebar{background:#302820;border-right:1px solid #473b30;box-shadow:none;color:#f4e9d9;padding-left:25px;padding-right:25px}.brand{padding:5px;min-height:122px;background:transparent;border:0;border-radius:0;box-shadow:none}.brand img{width:165px;max-height:125px;filter:drop-shadow(0 2px 2px #0002)}.nav-label{color:#a99884;letter-spacing:1.8px;font-size:9px;margin-top:28px}.sidebar nav{gap:5px}.sidebar nav a{color:#cec2b2;border:0;border-radius:9px;padding:12px;font-size:12px;font-weight:400;transition:background .15s,color .15s}.sidebar nav a>span{color:#bba17d;font-size:15px}.sidebar nav a.active{background:#514334;color:#ffebc9;box-shadow:inset 3px 0 #d5b17a}.sidebar nav a:hover{background:#40362c;color:#fff0d8}.sidebar-bottom,.sidebar-bottom p{color:#b1a08a;text-shadow:none}.status-dot,.live-label i{background:#b99a68;box-shadow:none}
.topbar{background:#fcfbf8;border-bottom:1px solid #e5dfd5;color:#8d8174;box-shadow:none;height:78px}.live-label{color:#938677}#language-select{background:transparent;color:#6f5e4d;border:1px solid #e4d9c9;border-radius:7px}.menu-toggle{color:#67503a}
.button,.button.light{background:#7c5a3c;border:1px solid #7c5a3c;border-radius:9px;box-shadow:0 3px 8px #63432812;color:#fff8ed;font-weight:500;text-shadow:none;padding:13px 20px;transition:background .15s,transform .15s}.button:hover,.button.light:hover{background:#63452d;color:#fff;transform:translateY(-1px)}.button:active{transform:translateY(0)}.button.small{padding:9px 17px}.button.ghost{background:#faf7f1;color:#785b3c;border:1px solid #d9cbb7;box-shadow:none}.avatar{background:#eee4d4;border:1px solid #e2d2bb;color:#795a38;box-shadow:none}
main{padding-top:34px}.hero{background:linear-gradient(115deg,#fffcf6,#f0e4d1);border:1px solid #e7dccb;border-radius:20px;box-shadow:0 8px 30px #5c442b05;min-height:366px;position:relative;overflow:hidden}.hero-copy{padding:40px 0 40px 38px}.hero-copy h1{color:#4b3524;text-shadow:none;font-size:40px;letter-spacing:-1.2px;line-height:1.15}.hero-copy p{color:#8b7967;font-size:13px;line-height:1.85}.hero-copy .hero-note{color:#a18d77;font-size:10px}.hero-art{background:radial-gradient(ellipse,#fffaf0b0,transparent 65%)}.legacy-trophy{max-width:250px;width:78%;filter:drop-shadow(0 12px 20px #7d5a2518)}.hero-tag{background:#fffaf0c9;color:#957447;border:1px solid #e6d4b5;border-radius:20px;font-size:8px;letter-spacing:1.4px;bottom:22px}
.eyebrow{color:#a08764;letter-spacing:1.7px;font-size:9px}.page-intro h1{color:#4a3424;text-shadow:none;letter-spacing:-.5px}.page-intro p{color:#8b7e70}.section-head h2{color:#55412f;text-shadow:none;font-size:24px;letter-spacing:-.4px}.section-head>a{color:#94764d;font-size:11px}
.card,.stat-card,.level-card,.promo-card,.calendar-card,.gallery-grid figure,dialog{background:#fffdfa;border:1px solid #e6dfd4;border-radius:14px;box-shadow:0 4px 18px #4b361503}.stat-card{padding:22px;gap:15px}.stat-card strong{color:#4d3b2b;font-size:27px;font-weight:500}.stat-card small{color:#9b8a77;font-size:10px}.stat-card .suffix{color:#a28f79}.stat-icon,.level-mark,.person-icon{background:#f3eadb;color:#b18c54;border:0;box-shadow:none;border-radius:11px}.level-card:hover{background:#fdf7ec;border-color:#cdb48e;box-shadow:0 6px 20px #7950240b}.level-card strong{color:#5b432d}.level-card small{color:#9a8771}.level-card .arrow{color:#b39870}.tag{background:#f1e7d4;color:#a07e49;border:0;box-shadow:none;font-weight:500;border-radius:6px}.promo-card{background:linear-gradient(130deg,#f6ead5,#efe0c3);border-color:#e9d8b9}.promo-card p{color:#998165}.promo-card .price,.promo-card h3{color:#745333}.promo-card .price small{color:#a08b6c}.muted,.legacy-content,.rules-copy p,.rules-copy li{color:#8c7a68}.card h3,.legacy-content h2,.legacy-content h3{color:#6c5137}.subtle-link,.text-button,.legacy-content a{color:#97734c}
.table-wrap{border-radius:10px}th{color:#9c8a73;border-color:#e8dfd1;background:transparent;font-size:9px;letter-spacing:1px}td{border-color:#f0e9de;color:#6b5139}.person{color:#6e5135}.country-label,.level-wins{color:#9b7b51}.source-results-info{background:#fffdfa;padding:24px;border:1px solid #e6dfd4;border-radius:14px}.competition-calendar{border:1px solid #e5d6bf;border-radius:9px}.competition-month{background:#fcf8ef;border-color:#e8ddcb}.competition-month strong,.competition-month a,.protocol-archive a{color:#967146}.competition-month span{color:#aa8d62}.protocol-archive a span{color:#aa987f}
.gallery-grid{gap:22px}.gallery-grid figure{border-radius:13px;overflow:hidden}.gallery-grid img{background:#eee7dc;object-fit:contain}.gallery-grid figcaption{color:#947c61;padding:16px;font-size:12px}.notice,.notice.warning{background:#faf1de;color:#856540;border:1px solid #ead8b5;border-radius:10px}.loading{color:#a08c73}.form-error{color:#a43c29}input,select{background:#fffdf8;border:1px solid #ded1bd;border-radius:8px;color:#60472f}.toast{background:#62472e;border:0;border-radius:11px;color:#fff4df;box-shadow:0 8px 25px #37210e26}
.unified-game{max-width:840px;background:#4c2f1e;border:0;border-radius:14px;box-shadow:0 12px 35px #4b2b1b16;overflow:hidden}.unified-game .original-board-frame{display:block;border:0;border-radius:0;background:#4c2f1e}.original-game-explanation{background:#fff9ee;border:0;border-top:1px solid #ddc59e;padding:24px 28px;color:#8a7052}.original-game-explanation h2{font-size:23px;color:#765332}.difficulty-descriptions dt{color:#8b653a}.original-game-explanation .muted{color:#9a8468}.original-game-explanation p:last-child{font-size:11px;color:#a08b70}
footer{background:#eeebe4;border-top:1px solid #e2d9cb;color:#a49179;padding-top:24px;padding-bottom:24px}footer a{color:#9d815c}
a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #c5a16c;outline-offset:4px}
@media(max-height:800px){.brand{min-height:106px}.brand img{width:145px}.sidebar .nav-label{margin-top:18px}.sidebar nav a{padding-top:9px;padding-bottom:9px}}
@media(max-width:1100px){.hero-copy h1{font-size:34px}.hero-copy{padding-left:28px}.stat-card{padding:18px}}
@media(max-width:550px){.hero{border-radius:15px}.hero-copy{padding:28px 25px 0}.hero-copy h1{font-size:33px}.legacy-trophy{width:195px}.hero-art{height:220px}.stat-card{padding:15px 10px}.stat-card strong{font-size:22px}.original-game-explanation{padding:20px 18px}.button{padding:12px 17px}}
@media(prefers-reduced-motion:reduce){.button,.sidebar nav a,.gallery-grid img{transition:none}.button:hover{transform:none}}

.unified-game[data-screen=menu] .original-board-frame{aspect-ratio:auto;background:#fffdfa}.unified-game[data-screen=menu] .original-game-explanation{background:#faf6ee;border-top-color:#e7dccb}.unified-game{border:1px solid #e6dfd4;background:#fffdfa}
.sidebar-help{display:grid;gap:13px;padding-bottom:25px;margin-bottom:24px;border-bottom:1px solid #ffffff14}.sidebar-help a{color:#b8a68e;font-size:11px}.sidebar-help a:hover{color:#f2dbb4}.sidebar nav #admin-link{margin-top:25px;border-top:1px solid #ffffff14;border-radius:0;padding-top:20px}.registration-names{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.registration-names label:last-child{grid-column:1/-1}.register-field small{color:var(--muted);font-size:10px;font-weight:400}#auth-dialog{width:min(540px,calc(100vw - 30px));max-height:90vh;overflow-y:auto}#auth-form input{min-height:45px}.sidebar-bottom{padding-top:35px}#photo-dialog{width:min(1000px,95vw);max-width:95vw;padding:30px 50px 20px;background:#fcfaf6;overflow:visible}#photo-dialog[open]{display:flex;align-items:center;gap:12px}#photo-dialog figure{margin:0;min-width:0;width:100%;text-align:center}#photo-full{max-width:100%;max-height:75vh;object-fit:contain;display:block;margin:auto}#photo-caption{color:#8a7155;padding-top:14px;font-size:12px;line-height:1.5}.photo-arrow{background:transparent;border:0;font-size:32px;color:#8f704b;padding:10px;cursor:pointer;flex-shrink:0}#photo-dialog::backdrop{background:#21170dd9}@media(max-width:550px){#photo-dialog{padding:35px 8px 14px;gap:0!important}.photo-arrow{padding:3px;font-size:26px}.registration-names{display:block}}
.coach-panel{background:#f0e8d7;border-bottom:1px solid #dccbab;padding:18px 26px;color:#7b5935}.coach-panel strong{font:20px Georgia,serif}.coach-panel p{font-size:13px;line-height:1.7;margin:8px 0 12px}.coach-panel small{display:block;margin-top:10px;color:#9b8361;font-size:10px}.trial-note{padding:12px 24px;font-size:11px;line-height:1.6;color:#9b805c;background:#f9f4e9;border-bottom:1px solid #e9dfcc}.trial-note a{color:#8c6437;text-decoration:underline}.rules-copy details{padding:16px 0;border-top:1px solid #e6ddcf}.rules-copy summary{cursor:pointer;color:#715337;font-size:15px}.rules-copy details p,.rules-copy details table{margin-top:16px}.rules-copy>ol{padding-left:22px}.rules-copy>ol li{margin:10px 0;line-height:1.8}.audit-event{display:grid;grid-template-columns:110px 1fr;gap:5px 15px;padding:14px 0;border-bottom:1px solid #eee6db;font-size:12px}.audit-event:last-child{border:0}.audit-event time{color:#ac967b;font-size:10px}.audit-event strong{color:#775739;font-weight:500}.audit-event p{grid-column:2;margin:0;color:#9a8367;line-height:1.6}.audit-event small{grid-column:2;color:#b4a087}.payment-row{display:grid;gap:10px;padding:20px 0;border-top:1px solid #e8ddcd;font-size:12px}.payment-row>span{color:#a0896c}.payment-row form{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px}.payment-row input{margin-top:5px}.pgn-link{font-size:11px;color:#99764a}.competition-month small{font-size:10px;color:#ac9a80}@media(max-width:550px){.payment-row form{grid-template-columns:1fr}.audit-event{grid-template-columns:1fr;gap:6px}.audit-event p,.audit-event small{grid-column:1}.coach-panel{padding:16px 18px}}
.price-settings{margin-bottom:25px}.price-settings h2{font:23px Georgia,serif;margin-top:0;color:#705136}.price-settings form{display:flex;align-items:end;gap:15px;max-width:500px}.price-settings label{flex:1}.price-settings input{margin-top:8px}.price-settings .muted{font-size:11px;line-height:1.7}@media(max-width:550px){.price-settings form{display:block}.price-settings button{margin-top:12px}}
.password-input{position:relative}.password-input input{padding-right:88px!important}.password-input button{position:absolute;right:9px;top:50%;transform:translateY(-50%);background:none;border:0;color:#a08765;font-size:10px;cursor:pointer;padding:6px}#generate-password{margin-top:-5px;margin-bottom:12px;text-align:left;font-size:11px}
.captcha-image{display:flex;align-items:center;gap:10px;margin:10px 0}.captcha-image img{width:210px;max-width:80%;height:65px;border-radius:8px}.captcha-image button{background:none;border:0;font-size:25px;color:#977448;cursor:pointer}#login-challenge input{text-transform:uppercase;letter-spacing:4px;max-width:210px}#recovery-dialog{width:min(470px,calc(100vw - 30px))}#recovery-status{font-size:12px;line-height:1.8;color:#9a805e}
.progress-section{margin-top:30px}.progress-section .section-head h2{margin:0}.progress-section .section-head p{font-size:12px;margin:8px 0 0}.progress-card{padding:24px!important;overflow:hidden}.progress-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.progress-filters{display:flex;gap:5px;flex-wrap:wrap;padding:4px;border-radius:10px;background:#f4f0e9}.progress-filters button{border:0;border-radius:7px;background:transparent;color:#8b7965;padding:9px 12px;font:inherit;font-size:11px;cursor:pointer}.progress-filters button[aria-pressed=true]{background:#fffdf9;color:#684b31;box-shadow:0 2px 5px #573c2110}.progress-period{display:flex;align-items:center;gap:9px;color:#a08e78;font-size:11px}.progress-period select{margin:0;width:auto;min-width:138px;padding:9px 28px 9px 12px;font-size:11px}.progress-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:26px 0 20px;padding-bottom:24px;border-bottom:1px solid #eee6db}.progress-summary>div+div{border-left:1px solid #eee6db;padding-left:24px}.progress-summary small{display:block;font-size:11px;color:#a18b72;margin-bottom:7px}.progress-summary strong{font-size:26px;font-weight:500;color:#634a34;font-variant-numeric:tabular-nums}.progress-summary em{font-style:normal;font-size:10px;color:#a38e75}.progress-plot{width:100%;margin:0}.progress-plot svg{display:block;width:100%;height:auto;min-height:190px;overflow:visible}.progress-axis text{font-size:10px;fill:#a59481;font-family:Arial,sans-serif}.progress-grid{stroke:#eee8df;stroke-width:1;stroke-dasharray:3 5}.progress-line{fill:none;stroke:#b8aa97;stroke-width:1.8;stroke-linejoin:round}.progress-record{fill:none;stroke:#b58b45;stroke-width:2;stroke-dasharray:6 5;stroke-linejoin:round}.progress-point{stroke:#fffdf9;stroke-width:2;cursor:pointer;transition:r .12s}.progress-point:hover,.progress-point:focus{r:8;stroke:#443626;outline:none}.level-1{--level-color:#b28c50;--level-bg:#f5ecd9}.level-2{--level-color:#6a8c80;--level-bg:#eaf1ed}.level-3{--level-color:#82719b;--level-bg:#f0ecf5}.progress-point{fill:var(--level-color)}.progress-legend{display:flex;align-items:center;gap:18px;flex-wrap:wrap;font-size:10px;color:#9a8770;padding:10px 0 0}.progress-legend>span{display:flex;align-items:center;gap:7px}.progress-legend i{display:block;width:18px;height:0;border-top:2px solid #b8aa97}.progress-legend .legend-record{border-top:2px dashed #b58b45}.progress-detail{margin-left:auto;color:#80664b;min-height:15px;font-size:10px}.victory-heading{scroll-margin-top:25px}.progress-count{color:#ac9981;font-size:10px}.victory-card{padding:0!important;overflow:hidden}.victory-table-wrap{overflow-x:auto}.victory-table{width:100%;border-collapse:collapse;text-align:left;min-width:450px}.victory-table thead th{padding:18px 24px!important;background:#fcfaf6!important;color:#a18b71!important;letter-spacing:.7px;font-size:9px;font-weight:500}.victory-table td{padding:17px 24px!important;border-bottom:1px solid #f1eae0!important;background:transparent!important}.victory-table td:first-child{width:38%}.victory-table .victory-month th{padding:12px 24px!important;background:#f7f3ed!important;color:#8e7557!important;font-weight:500;font-size:11px;text-transform:capitalize;border:0}.victory-date{display:block;font-size:12px;color:#705638;font-variant-numeric:tabular-nums}.victory-label{display:block;margin-top:5px;color:#b19d84;font-size:9px}.difficulty-chip{display:inline-flex;align-items:center;gap:7px;padding:6px 9px;border-radius:6px;background:var(--level-bg);color:var(--level-color);font-size:10px;white-space:nowrap}.difficulty-chip i{width:5px;height:5px;background:currentColor;border-radius:50%}.victory-score{display:flex;align-items:center;gap:5px;white-space:nowrap}.victory-score strong{font-size:18px;font-weight:500;color:#694f35;font-variant-numeric:tabular-nums}.victory-score small{color:#ac9579;font-size:9px}.victory-best{margin-left:auto;color:#af853f;background:#faf3e4;font-size:8px;padding:4px 6px;border-radius:4px}.victory-meter{appearance:none;display:block;width:100%;height:3px;margin-top:9px;border:0;border-radius:3px;background:#f1ebe1;overflow:hidden}.victory-meter::-webkit-progress-bar{background:#f1ebe1;border-radius:3px}.victory-meter::-webkit-progress-value{background:var(--level-color);border-radius:3px}.victory-meter::-moz-progress-bar{background:var(--level-color);border-radius:3px}.victory-pagination{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;font-size:10px;color:#a28c70}.victory-pagination>div{display:flex;gap:7px}.victory-pagination button{border:1px solid #e7daca;border-radius:7px;background:#fffcf7;padding:6px 12px;font-size:15px;color:#896745;cursor:pointer}.victory-pagination button:disabled{opacity:.35;cursor:default}.progress-empty{text-align:center;padding:45px 20px;color:#a59073}.progress-empty>span{font-size:32px;color:#c5ad85}.progress-empty h3{font:22px Georgia,serif;margin:14px 0 8px;color:#82684a}.progress-empty p,.progress-no-history{font-size:12px;line-height:1.8}.progress-no-history{padding:20px 24px}
@media(max-width:650px){.progress-card{padding:17px!important}.progress-toolbar{gap:12px}.progress-filters{gap:2px;width:100%;justify-content:space-between}.progress-filters button{padding:8px 6px;font-size:9px}.progress-period{margin-left:auto}.progress-summary{gap:10px;margin:20px 0 14px;padding-bottom:18px}.progress-summary>div+div{padding-left:10px}.progress-summary small{font-size:9px;line-height:1.5}.progress-summary strong{font-size:22px}.progress-summary em{display:block;margin-top:3px}.progress-detail{width:100%;margin:0;font-size:10px}.progress-legend{gap:12px}.progress-section .section-head{gap:12px;align-items:center}.progress-section .section-head .button{font-size:10px;padding:9px 12px}.victory-table td{padding:15px 16px!important}.victory-table thead th,.victory-table .victory-month th{padding-left:16px!important}.victory-table{min-width:410px}}
@media(max-width:550px){.victory-table{min-width:0;display:block}.victory-table thead{display:none}.victory-table tbody{display:block}.victory-table tr{display:grid;grid-template-columns:1fr 115px;gap:6px 10px;padding:16px;border-bottom:1px solid #eee6db}.victory-table td{padding:0!important;border:0!important;width:auto!important;display:block}.victory-table td:nth-child(2){grid-column:1;grid-row:2}.victory-table td:nth-child(3){grid-column:2;grid-row:1 / 3;align-self:center}.victory-table .victory-month{display:block;padding:0;border:0}.victory-table .victory-month th{display:block;padding:12px 16px!important}.victory-best{font-size:7px;padding:3px}.victory-score strong{font-size:17px}.victory-score small{font-size:8px}.victory-label{font-size:8px}.victory-pagination{padding:14px 16px}.progress-summary strong{font-size:21px}}
.faq-accordion{display:grid;gap:12px;max-width:900px}.faq-accordion details{border:1px solid #e8dfd2;background:#fffdfa;border-radius:13px;overflow:hidden}.faq-accordion summary{display:flex;align-items:center;gap:18px;cursor:pointer;padding:23px 25px;list-style:none;font-size:15px;color:#705339;line-height:1.5}.faq-accordion summary::-webkit-details-marker{display:none}.faq-number{font-size:10px;color:#baa384;font-variant-numeric:tabular-nums}.faq-toggle{margin-left:auto;position:relative;flex-shrink:0;width:24px;height:24px;border:1px solid #e6dac7;border-radius:50%;background:#faf5eb}.faq-toggle:before,.faq-toggle:after{content:'';position:absolute;background:#9d7b50;left:7px;top:11px;width:8px;height:1px}.faq-toggle:after{transform:rotate(90deg);transition:transform .15s}.faq-accordion details[open] .faq-toggle:after{transform:rotate(0deg)}.faq-accordion details[open] summary{color:#6a492c;background:#faf6ee}.faq-answer{padding:0 67px 21px;color:#93806a;font-size:13px;line-height:1.9}.faq-answer p{margin:18px 0 0}.faq-answer a,.faq-footer a{color:#896541;text-decoration:underline;text-underline-offset:3px}.faq-footer{margin-top:25px;font-size:12px;color:#a28c70}.verification-card{max-width:930px;padding:32px!important}.verified-status{display:flex;align-items:center;gap:10px;font-size:12px;color:#698576}.verified-status>span{display:flex;align-items:center;justify-content:center;border-radius:50%;width:27px;height:27px;background:#edf3ed;font-size:15px}.verification-number{margin-top:28px;font-size:11px;letter-spacing:.6px;color:#ae906c}.verification-card h2{font:30px Georgia,serif;color:#64472e;margin:12px 0}.verification-card>.muted{font-size:13px;line-height:1.8;max-width:650px}.verification-facts{display:grid;grid-template-columns:repeat(3,1fr);margin:28px 0;padding:25px 0;border-top:1px solid #eee5d8;border-bottom:1px solid #eee5d8;gap:20px}.verification-facts dt{font-size:11px;color:#a58d70;margin-bottom:12px}.verification-facts dd{margin:0;font-size:20px;color:#755737}.verification-facts small{font-size:10px;color:#ab9170}.verification-total{display:flex;gap:14px 30px;flex-wrap:wrap;font-size:12px;color:#a28a6e}.verification-total strong{color:#80613f;font-weight:500}.verification-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:30px}.verification-actions .subtle-link{font-size:12px}@media(max-width:550px){.faq-accordion summary{padding:18px 16px;gap:12px;font-size:13px}.faq-answer{padding:0 20px 20px;font-size:12px}.faq-number{font-size:9px}.verification-card{padding:22px!important}.verification-card h2{font-size:26px;line-height:1.25}.verification-facts{grid-template-columns:1fr;gap:20px}.verification-facts dd{font-size:18px}.verified-status{font-size:10px}.verification-total{display:grid;gap:10px}}
main:has(.unified-game){max-width:none;padding-inline:clamp(18px,2vw,36px)}
.unified-game{width:100%;max-width:none;margin-inline:0}
main,.topbar{max-width:none;padding-left:clamp(18px,2vw,36px);padding-right:clamp(18px,2vw,36px)}.faq-accordion,.verification-card{max-width:none}.unified-game[data-screen=game] .original-board-frame{height:calc(100dvh - 110px);min-height:360px;aspect-ratio:auto}.remember-choice{display:flex;align-items:center;gap:9px;margin:16px 0;color:#8b7257;font-size:12px}.remember-choice input{width:17px;height:17px;min-height:17px;margin:0;accent-color:#825e3b;flex-shrink:0}.order-owner{display:block;margin-top:7px;color:#755334;font-size:16px;line-height:1.5}@media(max-width:650px){.unified-game[data-screen=game] .original-board-frame{height:calc(100dvh - 95px);min-height:300px}}
