:root{color-scheme:light;--ink:#503d2c;--muted:#8d7559;--ease:cubic-bezier(.16,1,.3,1)}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:system-ui,-apple-system,sans-serif;background:radial-gradient(ellipse at 10% 0,#fff8e7,transparent 65%),linear-gradient(145deg,#ffe8c8,#ffd29d);min-height:100svh}.native-backdrop body{background:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #a47e43;outline-offset:5px}.desktop{max-width:1000px;margin:auto;padding:30px 48px 24px}.desk-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.desk-brand{display:flex;align-items:center;gap:13px;font-size:21px;font-weight:600}.desk-brand img{object-fit:cover;border-radius:17px;box-shadow:0 0 0 2px #fff7e7a8}.desk-brand small{display:block;font-size:10px;font-weight:400;letter-spacing:1px;color:var(--muted);margin-top:4px}.edition{display:flex;align-items:center;gap:7px;font-size:11px;color:#8d714e;border:1px solid #fff9e8b3;background:#fff5e66b;border-radius:20px;padding:9px 13px;white-space:nowrap}.edition i{width:5px;height:5px;background:#b98a41;border-radius:50%}.welcome{padding:38px 0 26px;position:relative}.eyebrow,.index{font-size:10px;letter-spacing:1.8px;color:var(--muted)}.eyebrow{margin:0}h1{font-size:clamp(32px,4.5vw,50px);font-weight:550;line-height:1.3;letter-spacing:1px;margin:15px 0}h1 span{color:#bf834b}.intro{font-size:13px;color:var(--muted);line-height:1.8;margin:0}.continue-room{display:inline-block;font-size:11px;color:#8d6c40;border-bottom:1px solid #ba9b694a;margin-top:12px;padding-bottom:3px}.continue-room[hidden]{display:none}.entry-grid{display:grid;gap:16px}.entry-card{width:100%;display:block;position:relative;text-align:left;border:1px solid #fff9ebcc;border-radius:29px;background:linear-gradient(130deg,#fff9ecdc,#edd9b997);box-shadow:inset 0 1px #fffdf1,0 8px 27px #8a583510;min-height:170px;padding:24px 29px;cursor:pointer;overflow:hidden;isolation:isolate;transition:transform .24s var(--ease),box-shadow .24s var(--ease)}.entry-card:hover{transform:translateY(-2px);box-shadow:inset 0 1px #fffdf1,0 13px 32px #8a58351a}.entry-card:active{transform:translateY(0)}.entry-copy{position:relative;z-index:2;display:block;max-width:54%;pointer-events:none}.entry-title,.entry-card h2{display:block;font-size:25px;font-weight:550;line-height:1.3;letter-spacing:1px;margin:9px 0 8px}.entry-description,.entry-card p{display:block;font-size:12px;line-height:1.7;color:var(--muted);margin:0}.entry-description br,.entry-card p br{display:none}.entry-arrow{display:block;font-size:23px;line-height:1;margin-top:15px;color:#9a7845}.entry-art{position:absolute;right:0;top:0;bottom:0;width:42%;overflow:hidden;z-index:0;background:#ff9225;mask-image:linear-gradient(90deg,transparent,#000 14%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 14%)}.entry-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 12%;pointer-events:none}.portrait-art img{transform:scale(1.18);transform-origin:50% 30%}.duo-art{background:#faf6f0}.duo-art img{object-position:50% 66%;transform:scale(1.08);transform-origin:50% 65%}.coming-soon{display:inline-block;font-size:10px;border:1px solid #b393654d;border-radius:14px;color:#927548;padding:5px 10px;margin-top:13px;background:#fff4dc8c}.desk-note{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:23px;color:#a08662;font-size:10px;letter-spacing:1px}.desk-note span{height:1px;width:42px;background:#b897633b}.desk-note p{margin:8px 0}footer{display:flex;justify-content:space-between;gap:12px;font-size:9px;letter-spacing:1.2px;color:#9d8260;padding-top:22px}
@media(prefers-reduced-motion:no-preference){.welcome{animation:desk-arrive .5s var(--ease) both}.entry-card{animation:desk-arrive .52s var(--ease) both}.entry-card:nth-child(2){animation-delay:55ms}.entry-card:nth-child(3){animation-delay:110ms}@keyframes desk-arrive{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}}
@media(max-width:620px){.desktop{padding:23px 23px 20px}.desk-brand{font-size:18px}.desk-brand img{width:42px;height:42px;border-radius:15px}.edition{font-size:10px;padding:8px 11px}.welcome{padding:28px 2px 24px}.eyebrow{font-size:8px;letter-spacing:1.3px}h1{font-size:33px;line-height:1.25;margin:13px 0}.intro{font-size:12px}.entry-grid{gap:14px}.entry-card{min-height:155px;padding:20px 23px;border-radius:26px}.entry-copy{max-width:55%}.entry-card .index{font-size:7px;letter-spacing:1px}.entry-title,.entry-card h2{font-size:23px;margin:9px 0 7px}.entry-description,.entry-card p{font-size:11px}.entry-description br,.entry-card p br{display:block}.entry-art{width:45%}.entry-arrow{font-size:21px;margin-top:11px}.portrait-art img{transform:scale(1.42);transform-origin:50% 27%}.duo-art{width:47%}.duo-art img{object-position:52% 70%;transform:scale(1.03)}.coming-soon{margin-top:9px}.desk-note{margin-top:17px;font-size:9px}footer{font-size:8px;padding-top:15px}}
@media(orientation:landscape) and (max-height:600px){.desktop{max-width:1100px;padding:17px 28px}.desk-brand{font-size:16px}.desk-brand img{width:34px;height:34px;border-radius:12px}.desk-brand small{font-size:8px}.welcome{padding:15px 0 20px}.eyebrow{font-size:8px}h1{font-size:27px;line-height:1.25;margin:7px 0}h1 br{display:none}.intro{font-size:10px;position:absolute;right:0;top:47px}.continue-room{position:absolute;right:0;top:13px;margin:0;font-size:10px}.entry-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.entry-card{padding:19px 16px;min-height:197px;border-radius:24px}.entry-copy{max-width:60%}.entry-card .index{font-size:7px;letter-spacing:.6px;display:block;max-width:100%;line-height:1.5}.entry-title,.entry-card h2{font-size:21px;margin:18px 0 9px}.entry-description,.entry-card p{font-size:10px;line-height:1.8}.entry-description br,.entry-card p br{display:block}.entry-art{width:44%}.portrait-art img{transform:scale(1.25)}.duo-art img{object-position:55% 60%;transform:scale(1.04)}.entry-arrow{margin-top:17px}.coming-soon{font-size:9px;margin-top:16px;padding:4px 8px}.desk-note{display:none}footer{font-size:8px;padding-top:17px}}
@media(orientation:landscape) and (max-height:390px){.desktop{padding-top:12px;padding-bottom:12px}.welcome{padding-bottom:16px}.entry-card{min-height:188px}footer{padding-top:12px}}
/* User correction: preserve every character's full body; letterbox rather than crop. */
.entry-art,.duo-art{width:45%;mask-image:none;-webkit-mask-image:none;display:flex;align-items:center;justify-content:center;padding:8px 12px;background:transparent}
.entry-art img,.portrait-art img,.duo-art img{width:100%;height:100%;object-fit:contain;object-position:center;transform:none;transform-origin:center;border-radius:15px}
.entry-card{min-height:210px}.entry-copy{max-width:52%}
@media(max-width:620px){.entry-card{min-height:186px}.entry-art,.duo-art{width:43%;padding:8px 10px}.entry-copy{max-width:55%}}
@media(orientation:landscape) and (max-height:600px){.entry-card{min-height:211px;padding-left:15px;padding-right:12px}.entry-art,.duo-art{width:43%;padding:8px 6px}.entry-copy{max-width:56%}.entry-title,.entry-card h2{font-size:20px}}
@media(orientation:landscape) and (max-height:390px){.entry-card{min-height:197px}}
.reduce-motion .welcome,.reduce-motion .entry-card{animation:none;transition:none}


/* Color-matched padding creates the feather outside the original, uncropped image. */
.entry-card{--entry-height:210px;--photo-ratio:.809245;height:var(--entry-height)}
.entry-art{width:46%;padding:0 0 0 4px;background:radial-gradient(ellipse at 75% 50%,#ff922559,transparent 76%)}
.picture-frame{--art-ground:#ff9225;position:relative;display:block;flex-shrink:0;box-sizing:content-box;width:min(calc(100% - 32px),calc((var(--entry-height) - 36px)*var(--photo-ratio)));aspect-ratio:var(--photo-ratio);padding:16px;background:var(--art-ground);border-radius:0;box-shadow:none;mask-image:linear-gradient(90deg,transparent,#000 16px,#000 calc(100% - 16px),transparent),linear-gradient(0deg,transparent,#000 16px,#000 calc(100% - 16px),transparent);mask-composite:intersect;-webkit-mask-image:linear-gradient(90deg,transparent,#000 16px,#000 calc(100% - 16px),transparent),linear-gradient(0deg,transparent,#000 16px,#000 calc(100% - 16px),transparent);-webkit-mask-composite:source-in}
.picture-frame img{border-radius:0;mask-image:none;-webkit-mask-image:none}
.puzzle-card{--photo-ratio:1.320722}.duo-art{background:radial-gradient(ellipse at 72% 50%,#fffdf488,transparent 80%)}.duo-art .picture-frame{--art-ground:#faf7f3}
@media(max-width:620px){.entry-card{--entry-height:186px}.entry-art{width:46%;padding:0}}
@media(orientation:landscape) and (max-height:600px){.entry-card{--entry-height:211px}.entry-art{width:44%;padding:0}.picture-frame{padding:12px;width:calc(100% - 24px);mask-image:linear-gradient(90deg,transparent,#000 12px,#000 calc(100% - 12px),transparent),linear-gradient(0deg,transparent,#000 12px,#000 calc(100% - 12px),transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 12px,#000 calc(100% - 12px),transparent),linear-gradient(0deg,transparent,#000 12px,#000 calc(100% - 12px),transparent)}}
@media(orientation:landscape) and (max-height:390px){.entry-card{--entry-height:197px}}
.edition{cursor:pointer}.versions-dialog{width:min(620px,calc(100vw - 32px))}.version-list{list-style:none;margin:24px 0 10px;padding:0 0 0 19px;border-left:1px solid #c7a57466}.version-item{position:relative;padding:0 0 28px 12px}.version-item:before{content:'';position:absolute;left:-24px;top:5px;width:8px;height:8px;border-radius:50%;background:#c5a273;box-shadow:0 0 0 4px #fff2dc}.version-item[data-current]:before{background:#986c37}.version-tag{font-size:11px;letter-spacing:.5px;color:#9b7543}.version-item h3{font-size:17px;font-weight:550;margin:8px 0 10px}.version-item ul{list-style:none;padding:0;font-size:12px;line-height:1.9;color:#92775a}.version-item ul li+li{margin-top:4px}.import-dialog .version-footnote{font-size:11px;margin:0}.version-item:last-child{padding-bottom:0}
@media(prefers-reduced-motion:no-preference){.versions-dialog[open] .version-item{animation:desk-arrive .34s var(--ease) both}.versions-dialog[open] .version-item:nth-child(2){animation-delay:35ms}.versions-dialog[open] .version-item:nth-child(3){animation-delay:70ms}.versions-dialog[open] .version-item:nth-child(4){animation-delay:105ms}}
.reduce-motion .version-item{animation:none!important}.plain-close{border:0;border-radius:0;background:transparent;box-shadow:none}.desk-segment{display:flex;position:relative;isolation:isolate;padding:4px;border-radius:24px;background:#d6bf9426;border:1px solid #d2b88c44}.desk-segment button{z-index:1;flex:1;border:0;background:transparent;border-radius:20px;color:#9b825e;padding:10px 5px;font-size:12px;cursor:pointer}.desk-segment button[aria-pressed=true]{color:#614725}.desk-segment i{position:absolute;inset:4px auto 4px 4px;width:calc(50% - 4px);border-radius:20px;background:linear-gradient(130deg,#fff9e9,#e7d1a4);box-shadow:inset 0 1px #fff9e9,0 2px 6px #80603812;transition:transform .27s var(--ease)}.desk-segment button:nth-child(2)[aria-pressed=true]~i{transform:translateX(100%)}.import-dialog .desk-section-label{font-size:12px;margin:20px 0 10px}.desk-engine{display:flex;align-items:center;gap:12px;padding:12px;border-radius:17px;background:#efce9130;margin:8px 0;font-size:13px}.desk-engine img{border-radius:12px;object-fit:contain}.desk-engine small{display:block;font-size:10px;color:#927859;line-height:1.6;margin-top:3px}.desk-engine.unavailable{opacity:.55;background:transparent;padding-top:6px;padding-bottom:6px}.import-dialog .desk-new-help{font-size:11px;margin:15px 0 0}.new-game-dialog .import-error:empty{display:none}.new-game-dialog .import-actions{margin-top:18px}
@media(orientation:landscape) and (max-height:600px){.new-game-dialog{width:min(720px,calc(100vw - 40px))}.new-game-dialog form{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.new-game-dialog .sheet-heading{grid-column:1/-1}.new-game-dialog form>.desk-segment:first-of-type{grid-column:1}.new-game-dialog #deskOpponent{grid-column:1;grid-row:3/7}.new-game-dialog form>.desk-section-label{grid-column:2;grid-row:2;margin:0 0 8px}.new-game-dialog form>.desk-segment:last-of-type{grid-column:2;grid-row:3;align-self:start}.new-game-dialog .desk-new-help{grid-column:2;grid-row:4}.new-game-dialog .import-actions{grid-column:2;grid-row:6}.desk-engine{padding:8px;font-size:11px}.desk-engine img{width:30px;height:30px}.desk-engine small{font-size:9px}.new-game-dialog .desk-section-label{margin-top:10px}}
@media(prefers-reduced-motion:reduce){.desk-segment i{transition:none}}.reduce-motion .desk-segment i{transition:none}
.new-game-dialog .plain-close{border:0;border-radius:0;background:transparent;box-shadow:none}

.archived-versions{margin:24px 0;border:1px solid #d6bb9355;border-radius:16px;padding:14px}.archived-versions summary{font-size:12px;cursor:pointer;display:flex;justify-content:space-between;color:#8d6c40}.archived-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}.archived-grid span{font-size:10px;padding:8px;background:#e4c89522;border-radius:10px;color:#977b59}
@media(orientation:landscape) and (max-height:600px){
 .import-dialog.new-game-dialog{width:min(720px,calc(100vw - 40px))}
 .new-game-dialog .desk-segment[aria-label="对弈方式"]{grid-column:1;grid-row:2;align-self:start}
 .new-game-dialog .desk-segment[aria-label="先后手"]{grid-column:2;grid-row:3;align-self:start}
}
@media(orientation:landscape) and (max-height:600px){
 .new-game-dialog #deskOpponent{display:grid;grid-template-columns:1fr 1fr;gap:5px 8px;margin-top:8px}
 .new-game-dialog #deskOpponent[hidden]{display:none}
 .new-game-dialog #deskOpponent>.desk-section-label,.new-game-dialog #deskOpponent>.desk-engine:not(.unavailable),.new-game-dialog #deskOpponent>.desk-duration{grid-column:1/-1;margin:0!important}
 .new-game-dialog .desk-engine{margin:0;padding:7px;font-size:10px;gap:6px}.new-game-dialog .desk-engine small{font-size:8px}
 .new-game-dialog .desk-engine.unavailable img{width:24px;height:24px}.new-game-dialog .desk-engine.unavailable{padding:4px 0}

 .new-game-dialog .import-actions{align-self:end;margin-top:8px}
}

.principle-link{appearance:none;font:10px system-ui;color:#866238;background:#fff7e599;border:1px solid #c8aa7855;border-radius:10px;padding:3px 7px;cursor:pointer;white-space:nowrap}.engine-card-wrap{position:relative}.engine-card-wrap>.mode{width:100%;padding-right:54px}.engine-card-wrap>.principle-link{position:absolute;right:12px;top:18px}.engine-extra-rating{display:block;font-size:10px;line-height:1.7;color:#8c704c}.engine-card-wrap .mode em{display:none}.engine-details .engine-principle{font-weight:600;color:#70502f}.engine-details p{white-space:pre-line}.desk-engine.unavailable{opacity:1}.desk-engine.unavailable img{opacity:.6}.desk-engine.unavailable>span{color:#9c876d}.desk-engine.unavailable small{color:#a28b70}.desk-engine small:has([data-engine-caption]){display:flex;align-items:center;flex-wrap:wrap;gap:4px}.principle-link:focus-visible{outline:2px solid #9a763c;outline-offset:2px}

.classics-entry{margin-top:17px}.classics-link{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid #fff8e5bb;border-radius:27px;padding:23px 29px;background:linear-gradient(120deg,#fff5e3d9,#ecd3a676);box-shadow:inset 0 1px #fffaf0,0 7px 20px #9a612912}.classics-link strong{display:block;font-size:23px;font-weight:550;letter-spacing:1px;margin:10px 0 6px}.classic-intro{font-size:12px;color:#957858}.classic-mark{position:relative;font-size:56px;color:#a27949;padding:0 15px;text-shadow:0 2px #ffeed6}.classic-mark i{font:20px system-ui;position:absolute;right:-2px;bottom:0;color:#98713d}.classics-link:active{transform:translateY(1px)}@media(orientation:landscape) and (max-height:600px){.classics-link{padding:15px 22px}.classics-link strong{font-size:20px}.classic-mark{font-size:45px}.classics-entry{margin-top:14px}}

@media(prefers-reduced-motion:no-preference){.classics-entry{animation:desk-arrive .48s var(--ease) 140ms both}}.reduce-motion .classics-entry{animation:none}

/* Opaque new-game sheet: one translated layer, static backdrop, no full-screen color tween. */
.new-game-dialog::backdrop,.new-game-dialog.sheet-closing::backdrop{animation:none;background:#49392b50}
.new-game-dialog{contain:layout style}
@media(hover:none){.entry-card:hover{transform:none;box-shadow:inset 0 1px #fffdf1,0 8px 27px #8a583510}}
.entry-card{transition:transform .24s var(--ease)}

/* Four supplied illustrations, kept whole and without generated image frames. */
.entry-art .picture-frame{padding:0!important;box-sizing:border-box;background:transparent;mask-image:none;-webkit-mask-image:none;border:0;border-radius:0;box-shadow:none;aspect-ratio:1;width:calc(100% - 12px);height:calc(100% - 20px)}
.entry-art .picture-frame img{width:100%;height:100%;object-fit:contain;border:0;border-radius:0;box-shadow:none;transform:none}
.entry-art,.duo-art{background:transparent;padding:0;width:45%}
.classics-link{position:relative;overflow:hidden;min-height:210px;padding:24px 29px;display:block}
.classics-link>span:first-child{position:relative;z-index:1;display:block;max-width:52%}.classics-link .classic-intro{display:block;line-height:1.7}
@media(max-width:620px){.classics-link{min-height:186px;padding:20px 23px}.classics-link strong{font-size:23px}.classic-intro{font-size:11px}}
@media(orientation:landscape) and (max-height:600px){.classics-link{min-height:180px}.classics-link .entry-art{width:34%}}

/* In-panel time choice: no native Android selection dialog. */
.desk-duration{min-width:0;border:0;padding:0;margin:20px 0 8px;color:#725536}
.desk-duration legend{padding:0;font-size:12px;font-weight:600;letter-spacing:.02em}
.desk-duration>p{margin:5px 0 12px!important;font-size:10px!important;color:#9b825e!important}
.duration-choices{position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;padding:5px;border-radius:19px;background:#dec39132;border:1px solid #c9a87535}
.duration-choices button{position:relative;z-index:1;min-height:46px;padding:7px 0;border:0;background:transparent;box-shadow:none;border-radius:14px;color:#9b825e;cursor:pointer;transition:color .22s,transform .18s}
.duration-choices button b{font-size:18px;font-weight:550;line-height:1.1;font-variant-numeric:tabular-nums}
.duration-choices button span{font-size:10px;margin-left:3px}
.duration-choices button[aria-checked=true]{color:#654724}
.duration-choices button:active{transform:scale(.94)}
.duration-choices button:focus-visible{outline:2px solid #98764b;outline-offset:1px}
.duration-thumb{position:absolute;z-index:0;top:5px;bottom:5px;left:5px;width:calc((100% - 26px)/5);transform:translateX(calc(var(--duration-index)*(100% + 4px)));border-radius:14px;background:linear-gradient(135deg,#fffbea,#e9d3a6);box-shadow:inset 0 1px #fffdf6,0 2px 7px #89663b16;transition:transform .28s cubic-bezier(.2,.75,.2,1)}
.reduce-motion .duration-thumb,.reduce-motion .duration-choices button{transition:none}
@media(orientation:landscape) and (max-height:600px){.desk-duration{margin-top:12px}.desk-duration>p{margin-bottom:8px!important}.duration-choices button{min-height:38px}.duration-choices button b{font-size:16px}}

.archived-versions summary #archivedCount{margin-left:auto;margin-right:12px;font-size:10px;color:#a08b6a}.archived-versions[open] .archived-grid{animation:desk-arrive .25s both}.reduce-motion .archived-versions[open] .archived-grid{animation:none}

.opening-home-link{background:radial-gradient(ellipse at 92% 56%,#c6d2aa80,transparent 62%),linear-gradient(115deg,#fff8e7dc,#e6dbb8b3)}.opening-home-link .picture-frame{background:#f4f1df;padding:10px;box-shadow:none}.opening-home-link img{object-fit:contain;object-position:center;transform:none;mask-image:none;-webkit-mask-image:none}.opening-home-arrow{display:block;font-size:23px;color:#9c8453;margin-top:15px}.opening-entry-home{margin-top:24px}

/* 1.8.15: compact desk; size the whole illustration with one square constraint. */
.desktop{max-width:920px;padding:24px 38px 20px}
.welcome{padding:28px 0 22px}h1{font-size:clamp(29px,4vw,44px)}
.entry-grid{gap:13px}.entry-card{--entry-height:186px;min-height:186px;padding:21px 25px;border-radius:25px}
.entry-title,.entry-card h2{font-size:23px}.entry-description,.entry-card p{font-size:11px}
.classics-entry,.opening-entry-home{margin-top:14px}.classics-link{--entry-height:186px;min-height:186px;padding:21px 25px;border-radius:25px}
.classics-link strong{font-size:22px}.classic-intro{font-size:11px}
.entry-art .picture-frame{width:min(calc(100% - 16px),calc(var(--entry-height) - 24px));height:auto;aspect-ratio:1;flex:none}
.opening-home-link .picture-frame{background:transparent;padding:0}
.opening-home-link .entry-art{background:radial-gradient(ellipse at center,#d5dfbd55,transparent 72%)}
.opening-home-arrow{margin-top:10px}
@media(max-width:620px){
 .desktop{padding:20px 20px 18px}.desk-brand{font-size:17px}.desk-brand img{width:38px;height:38px}
 .welcome{padding:23px 2px 20px}h1{font-size:29px}.intro{font-size:11px}
 .entry-grid{gap:12px}.entry-card,.classics-link{--entry-height:166px;min-height:166px;padding:17px 20px;border-radius:23px}
 .entry-title,.entry-card h2,.classics-link strong{font-size:21px;margin:8px 0 7px}
 .entry-description,.entry-card p,.classic-intro{font-size:10.5px;line-height:1.65}
 .entry-copy,.classics-link>span:first-child{max-width:53%}
 .index{font-size:8px;letter-spacing:1px;line-height:1.5}.entry-card .index{font-size:7px}
 .entry-arrow,.opening-home-arrow{font-size:20px;margin-top:10px}
 .classics-entry,.opening-entry-home{margin-top:12px}
}
@media(orientation:landscape) and (max-height:600px){
 .desktop{max-width:1000px;padding:14px 24px}.welcome{padding:12px 0 16px}h1{font-size:25px}
 .entry-grid{gap:12px}.entry-card{--entry-height:182px;min-height:182px;padding:16px 14px;border-radius:22px}
 .entry-title,.entry-card h2{font-size:19px;margin:15px 0 8px}.entry-description,.entry-card p{font-size:9.5px}
 .entry-card .index{font-size:7px}.entry-arrow{margin-top:13px}
 .classics-link{--entry-height:150px;min-height:150px;padding:18px 24px;border-radius:22px}
 .classics-link strong{font-size:20px}.classics-link .entry-art{width:32%}
 .classics-link .picture-frame{width:min(calc(100% - 16px),126px)}
 .classics-entry,.opening-entry-home{margin-top:12px}
}

.opening-home-arrow{font-size:20px;line-height:1}
@media(orientation:landscape) and (max-height:600px){.opening-home-link .classic-intro br{display:none}.opening-home-arrow{font-size:19px;margin-top:8px}}

.analysis-home-link{background:radial-gradient(ellipse at 92% 50%,#b8c7a970,transparent 64%),linear-gradient(115deg,#fff6dfdc,#e3d5adb3)}

/* All six desk entries share one responsive grid. */
.entry-grid>.classics-entry{display:contents}.entry-grid .classics-link{height:var(--entry-height);min-height:var(--entry-height);margin:0}
@media(orientation:landscape) and (max-height:600px){.entry-grid .classics-link{--entry-height:182px;padding:16px 14px;border-radius:22px}.entry-grid .classics-link strong{font-size:19px;margin:15px 0 8px}.entry-grid .classics-link .index{font-size:7px;letter-spacing:.6px;line-height:1.5}.entry-grid .classics-link .classic-intro{font-size:9.5px;line-height:1.8}.entry-grid .classics-link>span:first-child{max-width:56%}.entry-grid .classics-link .entry-art{width:44%}.entry-grid .classics-link .picture-frame{width:min(calc(100% - 16px),calc(var(--entry-height) - 24px))}}

/* Nominal cards are 25% shorter; short landscape fits all six entries. */
.entry-grid .entry-card,.entry-grid .classics-link{--entry-height:139.5px;height:var(--entry-height);min-height:var(--entry-height);padding:14px 20px}.entry-grid .entry-arrow,.entry-grid .opening-home-arrow{display:none}
@media(max-width:620px){.entry-grid .entry-card,.entry-grid .classics-link{--entry-height:124.5px;padding:12px 17px}.entry-grid .entry-title,.entry-grid h2,.entry-grid .classics-link strong{font-size:18px;margin:6px 0}.entry-grid .index{font-size:6px;letter-spacing:.7px}.entry-grid .entry-description,.entry-grid p,.entry-grid .classic-intro{font-size:9px;line-height:1.5}}
@media(orientation:landscape) and (max-height:600px){
 .desktop{padding:8px 24px}.desk-header{height:30px}.desk-brand{font-size:14px}.desk-brand img{width:28px;height:28px;border-radius:10px}.desk-brand small{display:none}.edition{padding:5px 9px;font-size:9px}
 .welcome{padding:5px 0 7px}.welcome .eyebrow,.welcome .intro{display:none}h1{font-size:19px;margin:0;line-height:1.4}.continue-room{top:6px;font-size:9px}
 .entry-grid{gap:10px}.entry-grid .entry-card,.entry-grid .classics-link{--entry-height:min(136.5px,calc((100svh - 94px)/2));padding:10px 13px;border-radius:20px}
 .entry-grid .entry-title,.entry-grid h2,.entry-grid .classics-link strong{font-size:17px;margin:7px 0 5px}.entry-grid .index,.entry-grid .entry-card .index,.entry-grid .classics-link .index{font-size:6px;letter-spacing:.4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.entry-grid .entry-description,.entry-grid p,.entry-grid .classic-intro,.entry-grid .classics-link .classic-intro{font-size:9px;line-height:1.5}.desk-note{display:none}
}

@media(orientation:landscape) and (max-height:600px){html,body{height:100svh;overflow:hidden;overscroll-behavior:none}}

/* 1.8.22: isolate intrinsic image height from the square artwork frame. */
@media(orientation:landscape){
 .entry-grid .entry-art .picture-frame{position:relative;flex:0 0 auto;width:min(calc(100% - 12px),calc(var(--entry-height) - 16px));height:auto;aspect-ratio:1;min-height:0}
 .entry-grid .entry-art .picture-frame img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center;transform:none}
}

/* Bound the new-game sheet; only settings scroll, so actions stay visible. */
.import-dialog.new-game-dialog{--sheet-gap:48px;--sheet-pad:22px;box-sizing:border-box;padding:var(--sheet-pad);max-height:calc(100dvh - var(--sheet-gap));overflow:hidden}
.new-game-dialog #deskNewForm{display:flex;flex-direction:column;gap:0;min-height:0;max-height:calc(100dvh - var(--sheet-gap) - 2 * var(--sheet-pad) - 2px)}
.new-game-dialog .sheet-heading,.new-game-dialog .import-actions{flex:none}
.new-game-dialog .desk-new-body{min-height:0;overflow:auto;overscroll-behavior:contain;touch-action:pan-y;padding:0 2px}
.new-game-dialog .import-actions{align-self:stretch;margin:12px 0 0;padding-top:10px;border-top:1px solid #d2b88c44}
.new-game-dialog .desk-engine>span{flex:1;min-width:0}.new-game-dialog .desk-engine-select{flex:none;border:1px solid #bda17466;border-radius:12px;background:#fff8e5;padding:7px 9px;color:#8b6d42;font:11px system-ui;cursor:pointer}.new-game-dialog .desk-engine.active{background:#efce9147;box-shadow:inset 0 0 0 1px #bda17466}.new-game-dialog .desk-engine.active .desk-engine-select{background:#dfc797;color:#644b2c}
@media(orientation:landscape) and (max-height:600px){.import-dialog.new-game-dialog{--sheet-gap:28px;--sheet-pad:16px}.new-game-dialog .desk-new-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 18px;align-items:start}.new-game-dialog #deskOpponent{grid-column:1;grid-row:1/5;margin:0;display:block}.new-game-dialog .desk-side-label{grid-column:2;grid-row:1}.new-game-dialog .desk-new-body>.desk-segment{grid-column:2;grid-row:2}.new-game-dialog .desk-new-help{grid-column:2;grid-row:3}.new-game-dialog .import-error{grid-column:2;grid-row:4}.new-game-dialog .desk-engine{margin:5px 0!important}.new-game-dialog .desk-engine-select{padding:5px 7px;font-size:10px}.new-game-dialog .sheet-heading{margin-bottom:9px}.new-game-dialog .import-actions{margin-top:9px;padding-top:7px}}

.new-game-dialog [data-engine-unavailable][hidden]{display:none!important}

[data-engine-card][hidden],.engine-card-wrap[hidden]{display:none!important}
