@font-face{font-family:Philosopher UI;src:url(/play/shahmaty/fonts/ui-title.woff2) format("woff2");font-weight:700;font-display:swap}@font-face{font-family:PT Sans UI;src:url(/play/shahmaty/fonts/ui-text.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:PT Sans UI;src:url(/play/shahmaty/fonts/ui-text-bold.woff2) format("woff2");font-weight:700;font-display:swap}:root{--game-h: calc(var(--tg-viewport-stable-height, 100dvh) - var(--rsya-banner-h, 0px) - var(--demo-banner, 0px));--indigo: #1b2340;--indigo-deep: #0e1228;--saffron: #e3a33a;--saffron-hi: #ffd36e;--cinnabar: #b23a2e;--cinnabar-hi: #f0735f;--silk: #f2e8d0;--turq: #2c9a8e;--turq-deep: #0b5b52;--ink: #1a1a1a;--bg: #0e1228;--fg: #f2e8d0;--panel: #171e40;--accent: #e3a33a;--font-title: "Philosopher UI", Philosopher, Georgia, "Times New Roman", serif;--font-text: "PT Sans UI", "PT Sans", "Helvetica Neue", Arial, system-ui, sans-serif;--tile: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Crect width='48' height='48' fill='%231f7f75'/%3E%3Cg fill='none' stroke='%23f2e8d0' stroke-opacity='.55' stroke-width='1.2'%3E%3Crect x='10' y='10' width='28' height='28'/%3E%3Crect x='10' y='10' width='28' height='28' transform='rotate%2845 24 24%29'/%3E%3Ccircle cx='24' cy='24' r='5' fill='%23e3a33a' fill-opacity='.8' stroke='none'/%3E%3C/g%3E%3Cg fill='%23145a52'%3E%3Ccircle cx='0' cy='0' r='6'/%3E%3Ccircle cx='48' cy='0' r='6'/%3E%3Ccircle cx='0' cy='48' r='6'/%3E%3Ccircle cx='48' cy='48' r='6'/%3E%3C/g%3E%3Cg stroke='%23e3a33a' stroke-opacity='.7' stroke-width='1' fill='none'%3E%3Ccircle cx='0' cy='0' r='6'/%3E%3Ccircle cx='48' cy='0' r='6'/%3E%3Ccircle cx='0' cy='48' r='6'/%3E%3Ccircle cx='48' cy='48' r='6'/%3E%3C/g%3E%3C/svg%3E");--grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 1  0 0 0 0 .9  0 0 0 0 .7  0 0 0 .5 0'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url%28%23n%29'/%3E%3C/svg%3E");--rim: 0 0 0 .14rem var(--saffron), 0 0 0 .3rem rgba(26, 26, 26, .75);--rim-turq: 0 0 0 .16rem var(--saffron), 0 0 0 .32rem var(--turq-deep);--lift: 0 .5rem 1rem rgba(0, 0, 0, .55)}html{font-size:clamp(15px,calc(13.6px + .45vw),18px)}html,body{margin:0;height:100%;background:var(--bg);color:var(--fg);font-family:var(--font-text);-webkit-text-size-adjust:100%}body{overflow-x:hidden}body:before{content:"";position:fixed;inset:0;z-index:-2;background:var(--tile)}body:after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 40%,transparent 25%,rgba(8,12,30,.78) 85%),linear-gradient(180deg,#0e122899,#0e122840 50%,#0e1228b8)}.grain{position:relative}.grain:after{content:"";position:absolute;inset:0;pointer-events:none;background:var(--grain);opacity:.16;mix-blend-mode:overlay;border-radius:inherit}html:has(.bublik-domoj):not([data-bublik-igra]) .portal.menu{height:calc(var(--game-h) - 64px - env(safe-area-inset-bottom))}html:has(.dialog-back) .bublik-domoj{display:none}#app{height:var(--game-h);min-height:0}.startup-status{position:fixed;z-index:40;top:max(8px,env(safe-area-inset-top));left:50%;transform:translate(-50%);width:max-content;max-width:calc(100% - 120px);box-sizing:border-box;padding:5px 8px;border-radius:8px;background:var(--indigo-deep);color:var(--silk);font-size:12px;line-height:1.3;text-align:center;pointer-events:none}h1,h2,h3{font-family:var(--font-title);font-weight:700;margin:0}.screen{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem 1rem;box-sizing:border-box}.screen h1{font-size:1.75rem;text-align:center;color:var(--saffron)}.screen .stub-note{opacity:.75;margin:0;text-align:center}.modes{display:grid;grid-template-columns:repeat(2,minmax(8rem,1fr));gap:.6rem;width:min(26rem,100%)}button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:.2rem solid var(--saffron-hi);outline-offset:.15rem}.btn{min-height:max(2.75rem,44px);min-width:max(2.75rem,44px);padding:.6rem 1.2rem;border:0;border-radius:1.4rem;font-family:var(--font-title);font-weight:700;font-size:1.05rem;color:var(--silk);text-shadow:0 .1rem .15rem rgba(0,0,0,.6);box-sizing:border-box;background:radial-gradient(ellipse at 50% 0%,rgba(44,154,142,.35),transparent 70%),linear-gradient(180deg,#232d58,#121836);box-shadow:var(--rim),inset 0 .15rem .3rem #ffffff38,inset 0 -.25rem .4rem #0006,var(--lift);transition:transform .12s,box-shadow .12s}.btn:hover{box-shadow:0 0 0 .14rem var(--saffron-hi),0 0 0 .3rem #1a1a1abf,0 0 1.2rem #e3a33a80,inset 0 .15rem .3rem #ffffff38,var(--lift)}.btn:active{transform:translateY(.12rem) scale(.97)}.btn:disabled{opacity:.45;cursor:default;transform:none}.btn-primary{background:radial-gradient(circle at 34% 20%,#b93a2e 0,#b53a2e 30%,var(--cinnabar) 58%,#7d241c 100%);box-shadow:0 0 0 .18rem var(--saffron),0 0 0 .36rem #5c1710,0 0 1.6rem #e2604f8c,inset 0 .2rem .4rem #ffffff59,inset 0 -.4rem .6rem #00000073,var(--lift)}.btn-ghost{background:#0e12288c;box-shadow:0 0 0 .1rem #e3a33a99,inset 0 0 .6rem #0006}.btn-danger{background:linear-gradient(180deg,#7d241c,#4a130d)}#toast{position:fixed;left:50%;bottom:1.5rem;transform:translate(-50%);background:var(--panel);color:var(--silk);box-shadow:var(--rim);padding:.6rem 1rem;border-radius:.7rem;opacity:0;pointer-events:none;transition:opacity .2s;z-index:80}#toast.show{opacity:1}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.dialog-back{position:fixed;inset:0 0 calc(var(--rsya-banner-h, 0px) + var(--demo-banner, 0px)) 0;display:flex;align-items:center;justify-content:center;background:#080c1eb8;z-index:50}.dialog-back{padding:1rem}.dialog{width:min(22.5rem,100%);max-height:calc(var(--game-h) - 2rem);display:flex;flex-direction:column;padding:1.25rem 1.1rem 1rem;border-radius:.4rem .4rem 1.4rem 1.4rem;color:#1a1a1a;background:linear-gradient(180deg,#f6edd6,#f2e8d0);box-shadow:0 .6rem 2.5rem #000000a6,inset 0 0 0 1px #8a6f3a99,inset 0 .35rem 0 -.1rem #b23a2e}.dialog-title{margin:.35rem 0 .5rem;font:400 1.4rem/1.15 var(--font-title);text-align:center;color:#1a1a1a}.dialog-scroll{min-height:0;overflow-y:auto}.dialog-scroll p,.dialog-text{margin:0 0 .8rem;text-align:center;line-height:1.35}.dialog-actions{display:flex;gap:.6rem;justify-content:center;flex-wrap:wrap;margin-top:.3rem}.dialog.noads-offer{background:linear-gradient(180deg,#fbf3df,#f2e8d0 55%,#e6d6b0);box-shadow:0 0 0 .14rem var(--saffron),0 0 0 .3rem #1a1a1abf,0 .6rem 2.5rem #000000a6,inset 0 0 0 1px #8a6f3a99,inset 0 .35rem 0 -.1rem #b23a2e}.noads-offer .dialog-actions{display:grid;grid-template-columns:1fr;gap:.55rem;margin-top:.5rem}.noads-offer-site .dialog-actions{grid-template-columns:1fr 1fr}.noads-offer .dialog-actions .btn{width:100%;padding-inline:.5rem}.noads-offer .dialog-actions .btn-plain{color:#1a1a1a;background:linear-gradient(180deg,#fbf3df,#e6d6b0);box-shadow:0 0 0 .1rem var(--saffron),inset 0 0 .4rem #8a6f3a59}.noads-offer .dialog-actions [data-testid=noads-later]{grid-column:1 / -1;min-height:44px;width:auto;justify-self:center;padding:.2rem 1rem;background:none;box-shadow:none;font:600 .95rem var(--font-text);color:#5a4a2c;text-decoration:underline;text-underline-offset:.2em}@media (max-width: 21rem){.noads-offer-site .dialog-actions{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}html[data-theme=persia]{--indigo: #0f4c5c;--indigo-deep: #07303b;--bg: #07303b;--panel: #0c3d4b;--accent: #e8c25a;--saffron: #e8c25a;--saffron-hi: #f7de93;--turq: #1fb5a6;--turq-deep: #08605a;--cinnabar: #b23a2e;--silk: #f4ecd6;--fg: #f4ecd6;--tile: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Crect width='48' height='48' fill='%230f6f86'/%3E%3Cg fill='none' stroke='%23e8c25a' stroke-opacity='.6' stroke-width='1.2'%3E%3Cpath d='M24 6L42 24 24 42 6 24Z'/%3E%3Ccircle cx='24' cy='24' r='8'/%3E%3C/g%3E%3Ccircle cx='24' cy='24' r='3' fill='%23f4d98a'/%3E%3Ccircle cx='0' cy='0' r='6' fill='%230a4a5c'/%3E%3Ccircle cx='48' cy='48' r='6' fill='%230a4a5c'/%3E%3C/svg%3E")}html[data-theme=europe]{--indigo: #3a2415;--indigo-deep: #22140a;--bg: #22140a;--panel: #2e1c10;--accent: #d4b36a;--saffron: #d4b36a;--saffron-hi: #efd596;--turq: #7a1f2b;--turq-deep: #4f1019;--cinnabar: #8a2433;--silk: #f3ead4;--fg: #f3ead4;--tile: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Crect width='48' height='48' fill='%233b2616'/%3E%3Cg fill='none' stroke='%23d8c9a0' stroke-opacity='.35' stroke-width='1.2'%3E%3Crect x='6' y='6' width='36' height='36'/%3E%3Cpath d='M6 24H42M24 6V42'/%3E%3C/g%3E%3Ccircle cx='24' cy='24' r='4' fill='%237a1f2b' stroke='%23d8c9a0' stroke-opacity='.6'/%3E%3C/svg%3E")}html[data-theme=china]{--indigo: #7a1414;--indigo-deep: #3d0808;--bg: #3d0808;--panel: #5e0f0f;--accent: #e6b84a;--saffron: #e6b84a;--saffron-hi: #ffd978;--turq: #1a1a1a;--turq-deep: #000000;--cinnabar: #d6342c;--silk: #f7ebd0;--fg: #f7ebd0;--tile: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Crect width='48' height='48' fill='%239c1b1b'/%3E%3Cg fill='none' stroke='%23e6b84a' stroke-opacity='.7' stroke-width='1.4'%3E%3Cpath d='M8 8H40V40H8Z'/%3E%3Cpath d='M14 14H34V34H14Z'/%3E%3Cpath d='M24 14V34M14 24H34'/%3E%3C/g%3E%3Ccircle cx='24' cy='24' r='3' fill='%23e6b84a'/%3E%3C/svg%3E")}html[data-theme=japan]{--indigo: #2b2520;--indigo-deep: #16120f;--bg: #16120f;--panel: #221d19;--accent: #d9bf8c;--saffron: #d9bf8c;--saffron-hi: #f0dcae;--turq: #6f7f62;--turq-deep: #3f4a37;--cinnabar: #b0554a;--silk: #f1e8d6;--fg: #f1e8d6;--tile: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Crect width='48' height='48' fill='%2326211c'/%3E%3Cg fill='none' stroke='%23d9c093' stroke-opacity='.45' stroke-width='1.2'%3E%3Ccircle cx='24' cy='24' r='20'/%3E%3Ccircle cx='24' cy='24' r='13'/%3E%3Ccircle cx='0' cy='0' r='20'/%3E%3Ccircle cx='48' cy='48' r='20'/%3E%3C/g%3E%3Ccircle cx='24' cy='24' r='3' fill='%23a8493f'/%3E%3C/svg%3E")}html[data-theme=night]{--indigo: #14224d;--indigo-deep: #080e26;--bg: #080e26;--panel: #101a3e;--accent: #c4cde6;--saffron: #c4cde6;--saffron-hi: #eef2ff;--turq: #4a6bb8;--turq-deep: #1f3370;--cinnabar: #8d9bd0;--silk: #e8edfb;--fg: #e8edfb;--tile: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Crect width='48' height='48' fill='%23101d44'/%3E%3Cg fill='%23dfe6f5'%3E%3Ccircle cx='10' cy='12' r='1.2'/%3E%3Ccircle cx='34' cy='8' r='.9' fill-opacity='.7'/%3E%3Ccircle cx='40' cy='34' r='1.4'/%3E%3Ccircle cx='16' cy='38' r='.9' fill-opacity='.7'/%3E%3C/g%3E%3Cpath d='M26 16a9 9 0 1 0 6 14a7 7 0 1 1-6-14Z' fill='%23cfd8ee' fill-opacity='.55'/%3E%3C/svg%3E")}html[data-theme=night] body:after,html[data-theme=china] body:after{background:radial-gradient(ellipse at 50% 40%,transparent 25%,rgba(0,0,0,.7) 85%),linear-gradient(180deg,#00000073,#00000026 50%,#0009)}.noads-art{display:flex;justify-content:center;margin:0 0 .6rem}.noads-img{width:100%;max-height:7rem;object-fit:cover;border-radius:.5rem}.noads-offer .noads-keep{font-size:.85rem;margin-bottom:.3rem}@media (max-height: 640px){.noads-art{display:none}.dialog.noads-offer{padding:.9rem .9rem .7rem}.noads-offer .dialog-title{font-size:1.2rem;margin-top:.1rem}.noads-offer .dialog-scroll p{margin-bottom:.45rem;font-size:.95rem}}.ico{display:inline-grid;place-items:center;width:1.4rem;height:1.4rem;flex:none}.ico svg{width:100%;height:100%}.stars{display:inline-flex;gap:.15rem}.stars .st{display:inline-grid;width:1rem;height:1rem;color:#f2e8d047}.stars .st svg{width:100%;height:100%}.stars .st.on{color:var(--saffron);filter:drop-shadow(0 0 .3rem rgba(227,163,58,.85))}.stars.sm .st{width:.8rem;height:.8rem}.stars.lg .st{width:1.6rem;height:1.6rem}.portal{position:relative;height:var(--game-h);width:min(100%,64rem);margin:0 auto;padding:max(.7rem,env(safe-area-inset-top)) .7rem 0;box-sizing:border-box}.arch{position:relative;height:100%;box-sizing:border-box;border-radius:50% 50% 0 0/20% 20% 0 0;padding:.9rem .9rem 0;background:var(--tile);box-shadow:0 0 0 .18rem var(--saffron),0 0 0 .4rem #0a3f39,0 0 4rem #e3a33a59,0 0 3rem #000c,inset 0 .3rem .6rem #ffffff4d}.arch:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.18),transparent 30%,rgba(0,0,0,.4));pointer-events:none}.gem{position:absolute;left:50%;top:-.9rem;width:1.8rem;height:1.8rem;transform:translate(-50%) rotate(45deg);border-radius:.25rem;z-index:5;background:radial-gradient(circle at 30% 30%,#ff9a85,#b23a2e 60%,#5c1710);box-shadow:0 0 0 .14rem var(--saffron),0 0 1.2rem #e2604fcc}.inner{position:relative;height:100%;display:grid;grid-template-rows:minmax(0,1fr) auto;border-radius:50% 50% 0 0/20% 20% 0 0;overflow:hidden;background:var(--indigo-deep);box-shadow:var(--rim)}.stage{position:relative;min-height:0;display:grid;grid-template-columns:minmax(0,1fr);container-type:size}.near{display:none}.win{position:relative;min-height:0;overflow:hidden;background:#c9a56a;box-shadow:inset 0 0 3rem #000000b3}.win:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(180deg,#1b2340eb,#1b23408c 24%,#1b234000 48%),radial-gradient(ellipse at 50% 55%,transparent 55%,rgba(14,18,40,.6))}.win:after{z-index:6}.map-scroll{position:absolute;inset:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-x}.map-scroll::-webkit-scrollbar{display:none}.map-scroll{-webkit-mask-image:linear-gradient(90deg,transparent,#000 1.2rem,#000 calc(100% - 1.2rem),transparent);mask-image:linear-gradient(90deg,transparent,#000 1.2rem,#000 calc(100% - 1.2rem),transparent)}.map-world{position:relative;height:100%;aspect-ratio:2400 / 1025;min-width:190%}.ml{position:absolute;background-repeat:no-repeat;pointer-events:none}.ml-silk{inset:0;background-size:cover;background-position:50% 100%}.ml-clouds{left:-4%;right:-4%;top:14%;aspect-ratio:2400 / 588;opacity:.7;transform:translate(calc((var(--p, .5) - .5) * -4%));-webkit-mask-image:linear-gradient(180deg,transparent,#000 30%,#000 70%,transparent);mask-image:linear-gradient(180deg,transparent,#000 30%,#000 70%,transparent)}.ml-ridge{left:-3%;right:-3%;top:0;aspect-ratio:2400 / 609;opacity:.8;transform:translate(calc((var(--p, .5) - .5) * -2.5%));-webkit-mask-image:linear-gradient(180deg,#000 60%,transparent);mask-image:linear-gradient(180deg,#000 60%,transparent)}.ml-dunes{left:-4%;right:-4%;bottom:0;aspect-ratio:2400 / 518;opacity:.9;transform:translate(calc((var(--p, .5) - .5) * 3%));-webkit-mask-image:linear-gradient(180deg,transparent,#000 35%);mask-image:linear-gradient(180deg,transparent,#000 35%)}.trail{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}.trail path{fill:none;stroke:#1a1a1a66;stroke-width:2.2;stroke-dasharray:2 5;stroke-linecap:round;vector-effect:non-scaling-stroke}.trail path.lit{stroke:var(--cinnabar);stroke-width:3;opacity:.9}.pin{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-1.3rem);z-index:3;min-width:max(2.75rem,44px);min-height:max(2.75rem,44px);padding:0;border:0;background:none;display:flex;flex-direction:column;align-items:center;gap:.2rem;color:var(--silk)}.pin-dot{display:grid;place-items:center;width:2.4rem;height:2.4rem;border-radius:50%;background:radial-gradient(circle at 35% 28%,#3fb0a3,#2c9a8e 45%,#12544d);box-shadow:0 0 0 .14rem var(--saffron),0 0 0 .3rem #1a1a1ab3,inset 0 .15rem .3rem #ffffff59,inset 0 -.25rem .4rem #0006,0 .4rem .8rem #00000080;transition:transform .12s}.pin-dot .ico{width:1.15rem;height:1.15rem;filter:drop-shadow(0 .1rem .1rem rgba(0,0,0,.5))}.pin.locked .pin-dot{background:radial-gradient(circle at 35% 28%,#5b6283,#343b5d 55%,#1b2340);box-shadow:0 0 0 .12rem #e3a33a73,0 0 0 .28rem #1a1a1a99,0 .4rem .8rem #00000080}.pin.done .pin-dot{background:radial-gradient(circle at 35% 28%,#ffcf7a,#e3a33a 50%,#8a5a12);color:var(--ink)}.pin.sel .pin-dot{box-shadow:0 0 0 .16rem var(--saffron-hi),0 0 1.4rem #ffd36ee6,0 0 0 .34rem #1a1a1ab3}.pin:active .pin-dot{transform:scale(.92)}.pin-label{padding:.1rem .55rem .15rem;border-radius:.7rem;font-family:var(--font-title);font-weight:700;font-size:1rem;line-height:1.2;white-space:nowrap;background:#141a34db;box-shadow:0 0 0 .08rem #e3a33ab3,0 .2rem .5rem #00000080;text-shadow:0 .1rem .1rem #000}.pin.locked .pin-label{color:#f2e8d0;background:#141838e0;box-shadow:0 0 0 .08rem #f2e8d08c,0 .2rem .5rem #00000080}.pin.ew .pin-label{transform:translate(38%)}.pin.ee .pin-label{transform:translate(-38%)}.pin.edge .pin-label{transform:translate(var(--shift, 0))}.pin.next{visibility:hidden}.caravan{position:absolute;left:var(--x);top:calc(var(--y) + 1.6rem);width:clamp(10rem,46vmin,20rem);transform:translate(-50%,-30%);z-index:3;pointer-events:none;user-select:none;filter:drop-shadow(0 .4rem .5rem rgba(0,0,0,.55))}.seal{position:absolute;left:var(--x);top:var(--y);z-index:4;width:clamp(5.2rem,17vmin,8.4rem);aspect-ratio:1;border-radius:50%;border:0;transform:translate(-50%,-50%);color:var(--silk);font-family:var(--font-title);display:grid;place-items:center;align-content:center;text-align:center;padding:0;background:radial-gradient(circle at 34% 26%,#b93a2e 0,#b53a2e 28%,#b23a2e 55%,#7d241c);box-shadow:0 0 0 .22rem var(--saffron),0 0 0 .42rem #5c1710,0 0 2.4rem #e2604fcc,0 .9rem 1.4rem #0009,inset 0 .25rem .5rem #ffffff59,inset 0 -.5rem .8rem #00000073;animation:pulse 3.2s ease-in-out infinite}.seal:before{content:"";position:absolute;inset:.45rem;border-radius:50%;border:.14rem solid rgba(242,232,208,.65);box-shadow:inset 0 0 .6rem #00000059}.seal:after{content:"";position:absolute;inset:.85rem;border-radius:50%;border:1px dashed rgba(242,232,208,.4)}.seal b{position:relative;font-size:clamp(1.15rem,4.2vmin,1.85rem);line-height:1.1;text-shadow:0 .1rem .15rem rgba(0,0,0,.6)}.seal small{position:absolute;left:50%;top:calc(100% + .7rem);transform:translate(-50%);padding:.1rem .6rem .15rem;border-radius:.7rem;font-family:var(--font-text);font-size:max(.78rem,12px);font-weight:700;letter-spacing:.04em;white-space:nowrap;color:var(--saffron-hi, #ffd36e);background:#1b2340eb;box-shadow:0 0 0 .08rem #e3a33ab3;text-shadow:none}.seal:active{transform:translate(-50%,-50%) scale(.9)}.seal.first{animation-duration:1.6s}@keyframes pulse{50%{box-shadow:0 0 0 .22rem var(--saffron),0 0 0 .42rem #5c1710,0 0 4.2rem #ff8c6e,0 .9rem 1.4rem #0009,inset 0 .25rem .5rem #ffffff59,inset 0 -.5rem .8rem #00000073}}.first-run .pin,.first-run .gate,.first-run .medal{opacity:.7}.first-run .title .tally{display:none}.title{position:absolute;left:0;right:0;top:clamp(.7rem,2.5vh,1.1rem);text-align:center;z-index:3;pointer-events:none;padding:0 3.8rem}.title h1{font-size:clamp(1.2rem,8cqh,2rem);letter-spacing:.04em;line-height:1.05;color:var(--saffron);text-shadow:0 0 1.2rem rgba(227,163,58,.7),0 .12rem 0 #7a4a10,0 .3rem .7rem rgba(0,0,0,.8)}.title p{display:inline-block;margin:.4rem 0 0;padding:.25rem .6rem;border-radius:1rem;font-size:.8rem;line-height:1.15;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#fff7e2;background:#0e1228b8;box-shadow:0 0 0 .08rem #e3a33a8c;text-shadow:0 .1rem .2rem #000}.title .tally{display:inline-flex;align-items:center;gap:.2rem;margin-top:.45rem;padding:.1rem .7rem;letter-spacing:.08em;font-weight:700;border-radius:1rem;background:#0e122899;box-shadow:0 0 0 .08rem #e3a33a99;color:var(--saffron-hi)}.tally .ico{width:1rem;height:1rem}.medal{position:absolute;top:max(.7rem,env(safe-area-inset-top));width:3rem;height:3rem;border-radius:50%;border:0;color:var(--silk);display:grid;place-items:center;z-index:7;padding:0;background:radial-gradient(circle at 35% 28%,#3fb0a3,#2c9a8e 45%,#12544d);box-shadow:0 0 0 .14rem var(--saffron),0 0 0 .3rem #1a1a1ab3,inset 0 .15rem .3rem #ffffff59,inset 0 -.25rem .4rem #0006,var(--lift);transition:transform .15s}.medal:active{transform:scale(.92)}.medal .ico{width:1.5rem;height:1.5rem;filter:drop-shadow(0 .1rem .1rem rgba(0,0,0,.5))}.medal.l{left:.7rem}.medal.r{right:.7rem}.pager{position:absolute;bottom:1rem;z-index:5;width:2.9rem;height:2.9rem;border-radius:50%;border:0;color:var(--silk);display:grid;place-items:center;padding:0;background:radial-gradient(circle at 35% 28%,#3c4678f2,#141a34f2);box-shadow:var(--rim),var(--lift)}.pager .ico{width:1.4rem;height:1.4rem}.pager.w{left:.6rem}.pager.e{right:.6rem}.pager:disabled{opacity:.3}.plinth{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.4rem,2vw,1rem);padding:.8rem clamp(.5rem,3vw,1.6rem);background:linear-gradient(180deg,#0d1128,#171e40 40%,#0d1128);box-shadow:0 -.2rem 0 var(--saffron),0 -1rem 1.5rem #00000080}.plinth:before{content:"";position:absolute;left:0;right:0;top:0;height:.5rem;background:var(--tile);opacity:.9}.gate{position:relative;min-height:4.6rem;margin-top:.5rem;border:0;color:var(--silk);font-family:var(--font-title);font-weight:700;font-size:clamp(.85rem,3.4vw,1.1rem);line-height:1.15;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:.3rem;padding:.5rem .3rem;border-radius:50% 50% .3rem .3rem/42% 42% .3rem .3rem;background:radial-gradient(ellipse at 50% 30%,#e3a33a59 0,#2c9a8e40 40%,#0b0f22);box-shadow:var(--rim-turq),inset 0 .4rem 1rem #0009,0 .4rem 1rem #00000080;transition:transform .12s}.gate .ico{width:1.7rem;height:1.7rem;color:var(--saffron);filter:drop-shadow(0 0 .5rem rgba(227,163,58,.9))}.gate span{text-align:center;text-shadow:0 .1rem .2rem #000}.gate:active{transform:translateY(.15rem) scale(.97)}.gate:hover{box-shadow:0 0 0 .16rem var(--saffron-hi),0 0 0 .32rem var(--turq-deep),0 0 1.2rem #e3a33a99,inset 0 .4rem 1rem #0009}@media (min-width: 900px) and (min-aspect-ratio: 3/2){.portal{width:min(100%,78rem)}.arch,.inner{border-radius:50% 50% 0 0/38% 38% 0 0}.stage{grid-template-columns:minmax(0,1fr) min(32%,19rem)}.map-world{min-width:230%}.near{display:flex;flex-direction:column;align-items:center;gap:.55rem;padding:max(1rem,20cqh) 1.1rem 1rem;text-align:center;min-height:0;overflow:hidden;background:linear-gradient(180deg,#151c3d,#0d1128);box-shadow:inset .15rem 0 0 var(--saffron),inset 1rem 0 1.4rem #00000059}.near-body{display:flex;flex:1;min-height:0;width:100%;flex-direction:column;align-items:center;gap:.55rem;overflow-y:auto;overscroll-behavior:contain}.near-body>*{flex-shrink:0}.near-cap{display:none}.near-face{width:auto;height:min(12rem,26vh);max-width:100%;aspect-ratio:341 / 512;object-fit:cover;border-radius:50% 50% .6rem .6rem/28% 28% .6rem .6rem;box-shadow:var(--rim-turq),var(--lift)}.near h2{font-size:1.6rem;color:var(--saffron)}.near-rival{margin:0;font-size:.95rem;opacity:.9}.near-hi{margin:0;font-size:.92rem;font-style:italic;line-height:1.35;opacity:.9}.near .btn{margin-top:auto;align-self:stretch;flex-shrink:0}.title{padding:0 2rem}.gate{min-height:3.6rem;flex-direction:row;justify-content:center;align-items:center;border-radius:1.8rem}.plinth{padding:.6rem 3rem}}@container (max-height: 400px){.title p{display:none}}@media (min-width: 900px) and (max-width: 1199px){.stage{grid-template-columns:minmax(0,1fr)}.near{display:none}.gate{flex-direction:column}}@media (min-width: 900px) and (max-height: 480px){.stage{grid-template-columns:minmax(0,1fr)}.near{display:none}}@media (max-width: 400px){.pin-label{font-size:.8rem;padding:.1rem .4rem .12rem}}@media (max-height: 480px){.portal{padding-top:.4rem}.arch{padding:.5rem .5rem 0;border-radius:50% 50% 0 0/45% 45% 0 0}.inner{border-radius:50% 50% 0 0/45% 45% 0 0}.title{top:1.1rem}.title h1{font-size:1.3rem}.title p{display:none}.medal{top:.5rem}.map-world{min-width:300%}.pin-label{font-size:.8rem;padding:.05rem .4rem .1rem}.pin-dot{width:2.2rem;height:2.2rem}.plinth{padding:.4rem 1rem}.gate{min-height:max(2.75rem,44px);margin-top:.3rem;flex-direction:row;justify-content:center;align-items:center;font-size:.9rem;border-radius:1.4rem;padding:.3rem .6rem}.gate .ico{width:1.3rem;height:1.3rem}.seal{width:4.9rem;margin-top:1.7rem}.seal small{top:calc(100% + .55rem)}.gem{top:-.7rem;width:1.3rem;height:1.3rem}}.screen.city,.screen.free{width:min(100%,64rem);margin:0 auto;min-height:var(--game-h);padding:max(.8rem,env(safe-area-inset-top)) 1rem 1rem;gap:.9rem;align-items:stretch;box-sizing:border-box}.screen.city,.screen.free{height:var(--game-h);min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.bar{display:flex;align-items:center;gap:.8rem}.bar h1{flex:1;text-align:left;font-size:1.6rem}.btn.back{min-height:44px;min-width:44px;padding:.4rem 1rem .4rem .6rem;font-size:.95rem;gap:.2rem;display:inline-flex;align-items:center}.city-body{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;flex:1;align-content:start}.face{position:relative;justify-self:center;width:min(15rem,52vw);aspect-ratio:341 / 512;border-radius:50% 50% .8rem .8rem/24% 24% .8rem .8rem;overflow:hidden;background:#0d1128;box-shadow:0 0 0 .2rem var(--saffron),0 0 0 .42rem #0a3f39,0 0 2.4rem #e3a33a4d,var(--lift)}.face img{width:100%;height:100%;object-fit:cover;display:block}.info{display:flex;flex-direction:column;gap:.6rem;padding:1rem 1.1rem;border-radius:1.1rem;position:relative;background:linear-gradient(180deg,#171e40f0,#0d1128f0);box-shadow:var(--rim),var(--lift)}.info h1{font-size:2rem;color:var(--saffron);text-align:center;text-shadow:0 0 1rem rgba(227,163,58,.5),0 .15rem .3rem #000}.info p{margin:0;line-height:1.35}.cap{font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:var(--saffron)}.rival{text-align:center}.rival b{font-family:var(--font-title);font-size:1.15rem}.hi{margin:0;padding:.6rem .9rem;font-size:1.02rem;line-height:1.4;text-align:center;border-radius:.8rem;background:#f2e8d017;box-shadow:inset 0 0 0 .06rem #f2e8d033}.goals ul{list-style:none;margin:.3rem 0 0;padding:0;display:grid;gap:.3rem}.cond{display:flex;align-items:center;gap:.5rem;opacity:.6}.cond .ico{width:1.2rem;height:1.2rem;color:#f2e8d04d}.cond.on{opacity:1}.cond.on .ico{color:var(--saffron);filter:drop-shadow(0 0 .3rem rgba(227,163,58,.8))}.info .stars.lg{align-self:center}.info .play,.dock .play{align-self:stretch;min-height:3.2rem;font-size:1.25rem}.is-locked .face img{filter:grayscale(.8) brightness(.6)}.free-body{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;flex:1;align-content:start}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(6.2rem,100%),1fr));gap:.55rem;align-content:start}.tile{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.6rem .3rem .55rem;min-height:6.6rem;min-width:0;border:0;border-radius:1rem;color:var(--silk);text-align:center;background:radial-gradient(ellipse at 50% 0%,rgba(44,154,142,.3),transparent 70%),linear-gradient(180deg,#1c2550,#0f1530);box-shadow:0 0 0 .1rem #e3a33a8c,inset 0 .15rem .3rem #ffffff26,var(--lift);transition:transform .12s,box-shadow .12s}.tile .board{display:grid;width:3.2rem;height:3.2rem;border-radius:.4rem;overflow:hidden;box-shadow:0 0 0 .1rem #0a3f39,0 .25rem .5rem #00000080}.tile .art{width:100%;height:100%}.tile b{font-family:var(--font-title);font-size:.98rem;line-height:1.1}.tile small{font-size:max(.78rem,12px);line-height:1.2;opacity:.9}.tile.on{box-shadow:0 0 0 .18rem var(--saffron-hi),0 0 1.4rem #e3a33aa6,inset 0 .15rem .3rem #fff3,var(--lift);background:radial-gradient(ellipse at 50% 0%,rgba(227,163,58,.35),transparent 70%),linear-gradient(180deg,#25306a,#121a3c)}.tile:active{transform:translateY(.1rem) scale(.97)}button:focus:not(:focus-visible),[tabindex="-1"]:focus,[data-autofocus]:focus:not(:focus-visible){outline:none}.seal:focus-visible,.pin:focus-visible,.tile:focus-visible,.chip:focus-visible,.gate:focus-visible,.medal:focus-visible{outline:.18rem solid var(--saffron);outline-offset:.2rem}.free-opts{display:flex;flex-direction:column;gap:.8rem;padding:.9rem 1rem;border-radius:1.1rem;background:linear-gradient(180deg,#171e40f0,#0d1128f0);box-shadow:var(--rim),var(--lift);align-content:start}.opt h3{font-size:.8rem;letter-spacing:.16em;text-transform:uppercase;color:var(--saffron);margin:0 0 .4rem;font-family:var(--font-text)}.chips{display:flex;flex-wrap:wrap;gap:.4rem}.chip{min-height:44px;min-width:44px;padding:.3rem .8rem;border:0;border-radius:1.4rem;color:var(--silk);font-weight:700;box-sizing:border-box;background:linear-gradient(180deg,#232d58,#121836);box-shadow:0 0 0 .08rem #e3a33a73,inset 0 .1rem .2rem #ffffff26}.chip.num{padding:.3rem 0}.opt.lv .chips{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}.chip.on{color:var(--ink);background:linear-gradient(180deg,#ffd36e,#e3a33a);box-shadow:0 0 0 .14rem #5c3a0a,0 0 1rem #e3a33a99,inset 0 .1rem .2rem #ffffff80}.num-in{min-height:max(2.75rem,44px);width:7.5rem;box-sizing:border-box;padding:0 .8rem;border:0;border-radius:1.4rem;font:inherit;font-weight:700;color:var(--silk);background:#00000059;box-shadow:0 0 0 .08rem #e3a33a8c,inset 0 .15rem .3rem #00000080}.switch{display:flex;align-items:center;gap:.7rem;min-height:44px;padding:0;border:0;background:none;color:var(--silk);font-weight:700;text-align:left}.switch .knob{position:relative;flex:none;width:3rem;height:1.7rem;border-radius:1rem;background:#00000073;box-shadow:0 0 0 .08rem #e3a33a8c,inset 0 .15rem .3rem #0009;transition:background .15s}.switch .knob:after{content:"";position:absolute;top:.2rem;left:.2rem;width:1.3rem;height:1.3rem;border-radius:50%;background:radial-gradient(circle at 35% 30%,#f2e8d0,#b79a5a);transition:transform .15s}.switch.on .knob{background:var(--turq)}.switch.on .knob:after{transform:translate(1.3rem)}.dock{position:sticky;bottom:0;padding:.6rem 0 max(.2rem,env(safe-area-inset-bottom));background:linear-gradient(180deg,transparent,rgba(14,18,40,.9) 40%);display:flex}.dock .play{flex:1}@media (min-width: 700px){.dock{justify-content:flex-end;position:static;background:none;padding-top:0}.free-body{flex:none}.dock .play{flex:0 1 420px}.free-body{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}.city-body{grid-template-columns:auto minmax(0,1fr);align-items:start}.face{width:17rem}}@media (orientation: landscape) and (max-height: 480px){.free-body{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}.city-body{grid-template-columns:auto minmax(0,1fr)}.face{width:auto;height:62dvh}.tile{min-height:5.2rem;padding:.35rem .2rem}.tile small{display:none}.info{gap:.35rem;padding:.7rem .9rem}.info h1{font-size:1.5rem}.hi{padding:.3rem .6rem;font-size:.9rem}.info .stars.lg{display:none}.screen.city{height:var(--game-h);min-height:0;padding-top:.5rem;padding-bottom:.5rem;gap:.5rem;overflow:hidden}.city-body{min-height:0;align-content:stretch}.face{height:calc(var(--game-h) - 44px - 1.5rem);max-height:none}.city .info{box-sizing:border-box;max-height:calc(var(--game-h) - 44px - 1.5rem);overflow-y:auto;gap:.3rem;padding:.6rem .9rem 0}.city .info .rival,.city .info .lvl{font-size:.85rem}.city .goals .cap{display:none}.city .goals ul{grid-template-columns:repeat(2,auto);gap:.15rem .8rem;margin:0;justify-content:start;font-size:.85rem}.city .info .play{position:sticky;bottom:0;min-height:44px;margin:.2rem -.9rem 0;border-radius:0 0 1.1rem 1.1rem}.screen.free{padding-top:.4rem;gap:.4rem;padding-bottom:0}.free-opts{padding:.6rem .8rem;gap:.5rem}.dock{position:sticky;bottom:0;padding:.3rem 0 .4rem;background:linear-gradient(180deg,transparent,rgba(14,18,40,.92) 35%)}.dock .play{min-height:44px;flex-basis:360px}}@media (orientation: landscape) and (max-height: 480px){:root.with-demo-banner .screen.city{height:var(--game-h);padding-bottom:.5rem}}.free-body{padding-bottom:1rem}.screen.free .dock{margin-top:.2rem}@media (max-height: 200px){.pager{display:none}.screen.city{overflow-y:auto}.city .info{max-height:none;overflow:visible}.face{height:56px}}.g-screen{--g-indigo: #1b2340;--g-indigo2: #263059;--g-saffron: #e3a33a;--g-cinnabar: #b23a2e;--g-silk: #f2e8d0;--g-turq: #2c9a8e;--g-ink: #1a1a1a;--g-head: Philosopher, "PT Serif", Georgia, "Times New Roman", serif;--g-text: "PT Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;box-sizing:border-box;width:100%;height:100vh;height:var(--game-h);min-height:0;overflow:hidden;display:grid;gap:6px;padding:6px 8px calc(6px + env(safe-area-inset-bottom));padding-top:calc(6px + env(safe-area-inset-top));color:var(--g-silk);font-family:var(--g-text);font-size:15px;background:linear-gradient(0deg,#e3a33a18,transparent 28%),radial-gradient(ellipse at 50% 0%,#2c3360,#171c38 58%,#0d1122);-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none}.g-screen *,.g-screen *:before,.g-screen *:after{box-sizing:border-box}.g-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.g-screen:not(.g-result):not(.g-settings){grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto auto minmax(0,1fr) auto;grid-template-areas:"bar" "opp" "stage" "me" "tape" "acts";align-content:start}.g-bar{grid-area:bar;display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px}.g-opp{grid-area:opp}.g-me{grid-area:me}.g-stage{grid-area:stage}.g-acts{grid-area:acts}.g-title{margin:0;flex:1;min-width:0;text-align:center;font:400 22px/1.1 var(--g-head);letter-spacing:.02em;color:var(--g-silk);outline:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (max-width: 359px){.g-title{font-size:18px;letter-spacing:0}}.g-count{flex:none;font:700 12px/1 var(--g-text);letter-spacing:.04em;color:var(--g-ink);background:var(--g-saffron);padding:4px 9px;border-radius:3px 10px}.g-count:empty{display:none}@media (orientation: landscape) and (min-width: 640px){.g-screen:not(.g-result):not(.g-settings){grid-template-columns:minmax(0,1fr) clamp(280px,34vw,420px);grid-template-rows:auto auto minmax(0,1fr) auto auto;grid-template-areas:"stage bar" "stage opp" "stage tape" "stage acts" "stage me";column-gap:14px}.g-me{align-self:end}.g-acts{align-self:start;padding-bottom:4px}.g-title{font-size:20px;text-align:left;padding-left:4px}}@media (orientation: landscape) and (min-width: 640px) and (max-height: 520px){.g-screen{gap:4px;padding-top:4px;padding-bottom:4px}.g-title{font-size:16px;line-height:1.05;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;text-overflow:clip}.g-plaque{padding:3px 8px!important}.g-face{width:34px!important;height:34px!important}.g-acts{padding-bottom:18px!important}}.g-plaque{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:2px 10px;min-width:0;padding:6px 14px 5px 8px;border-radius:8px 22px;color:var(--g-silk);background:linear-gradient(180deg,#0f1428d9,#171d3ad9);border:2px solid var(--g-turq);box-shadow:inset 0 0 0 2px #0b0f22,inset 0 0 0 3px #2c9a8e66,0 2px 8px #0006;transition:border-color .25s,background .25s,box-shadow .25s}.g-plaque.is-turn{border-color:var(--g-saffron);box-shadow:inset 0 0 0 2px #0b0f22,inset 0 0 0 3px #e3a33a88,0 0 14px #e3a33a44}.g-face{flex:none;width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid var(--g-cinnabar);box-shadow:0 0 0 2px #0b0f22,0 0 0 3px #2c9a8e88;background:var(--g-indigo2)}.g-glyph{display:grid;place-items:center;font-size:25px;line-height:1;color:var(--g-silk);transform:rotate(-4deg);border-radius:9px;border:2px solid #7e241c;box-shadow:inset 0 0 0 2px #b83d30,0 0 0 2px #0b0f22,0 0 0 3px #2c9a8e88;background:radial-gradient(circle at 35% 30%,#b83d30,var(--g-cinnabar) 62%,#7e241c);font-family:BoardJP,"Noto Serif JP",Hiragino Mincho ProN,serif}.g-glyph[data-red="0"]{background:radial-gradient(circle at 35% 30%,#3c4166,#1a1a1a 70%);border-color:#000;box-shadow:inset 0 0 0 2px #5b6590,0 0 0 2px #0b0f22,0 0 0 3px #2c9a8e88}.g-who{display:flex;flex-direction:column;min-width:0;flex:1;line-height:1.15}.g-name{font:400 16px/1.15 var(--g-head);color:var(--g-saffron);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.g-sub{font-size:12px;opacity:.78;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.g-caps-host{flex:1 1 100%;min-width:0;display:flex;justify-content:flex-start;overflow:hidden;order:5;min-height:24px;align-items:center}.g-caps-host:empty{display:none}.g-caps-l{flex:none;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--g-turq);margin-right:8px}.g-caps{display:flex;align-items:center;gap:4px;flex-wrap:nowrap;min-height:24px}.g-cap{display:inline-flex;align-items:center;font-size:11px}.g-cap svg{flex:none}.g-cap i{font-style:normal;opacity:.8;margin-left:2px}.g-diff{font:700 12px var(--g-text);color:var(--g-saffron);margin-left:4px}.g-think{display:none;gap:3px;align-items:center}.g-think.is-on{display:inline-flex}.g-think i{width:6px;height:6px;border-radius:50%;background:var(--g-saffron);animation:g-dot 1s infinite ease-in-out}.g-think i:nth-child(2){animation-delay:.15s}.g-think i:nth-child(3){animation-delay:.3s}@keyframes g-dot{0%,80%,to{opacity:.25;transform:scale(.7)}40%{opacity:1;transform:scale(1)}}@media (orientation: landscape) and (max-height: 520px){.g-caps-host{flex-basis:auto;order:0;min-height:0}.g-caps-none{display:inline}.g-caps-l{font-size:10px;margin-right:4px}.g-who{flex:1 1 60px}.g-name{font-size:15px}}.g-stage{position:relative;min-height:0;min-width:0;display:flex;align-items:center;justify-content:center;--ar: 1}.g-screen[data-mode=xiangqi] .g-stage{--ar: .909}.g-screen[data-mode=shogi] .g-stage{--ar: .8}@media (orientation: landscape) and (min-width: 640px){.g-screen[data-mode=shogi] .g-stage{--ar: 1.36}.g-stage{container-type:size}.g-carpet{width:min(100cqw,calc(100cqh * var(--ar)))!important}}.g-carpet{position:relative;flex:none;width:min(100%,calc((var(--game-h) - 400px) * var(--ar)));aspect-ratio:var(--ar);display:flex;padding:3px;border-radius:12px;overflow:hidden;box-shadow:inset 0 0 0 2px #0005,inset 0 0 22px #0006,0 4px 18px #0006;background:repeating-linear-gradient(45deg,#ffffff0d 0 6px,transparent 6px 12px),repeating-linear-gradient(-45deg,#00000026 0 6px,transparent 6px 12px),radial-gradient(ellipse at 50% 50%,#8c2b27,#5a1a1e 80%);border:2px solid #e3a33a99}.g-screen:not([data-mode=shogi],[data-mode=xiangqi]) .g-carpet{padding:0;background:none;border:0;border-radius:8px;box-shadow:0 4px 16px #0006}.g-screen[data-mode=shogi] .g-carpet{background:repeating-linear-gradient(90deg,#00000010 0 1px,transparent 1px 7px),repeating-linear-gradient(88deg,#6b4a1f12 0 2px,transparent 2px 19px),linear-gradient(135deg,#e2c58a,#d3ae6a 55%,#dcbb7c);border:2px solid #1a1a1acc}.g-screen[data-mode=xiangqi] .g-carpet{background:repeating-linear-gradient(60deg,#8a6f3a0d 0 2px,transparent 2px 9px),radial-gradient(ellipse at 50% 40%,#f3e7c6,#e3d3a8);border:2px solid #1a1a1acc}.g-board{flex:1;min-height:0;min-width:0;position:relative}.g-carpet.is-check{animation:g-check .9s ease-out}@keyframes g-check{0%{box-shadow:inset 0 0 0 2px #0005,0 0 #b23a2e}35%{box-shadow:inset 0 0 0 3px #b23a2e,0 0 26px 4px #b23a2eaa}to{box-shadow:inset 0 0 0 2px #0005,0 4px 18px #0006}}.g-carpet.is-mate:after{content:"";position:absolute;inset:0;background:#fff6;pointer-events:none;animation:g-flash .75s ease-out forwards}@keyframes g-flash{0%{opacity:.95}to{opacity:0}}.g-chip{position:absolute;left:50%;top:8px;transform:translate(-50%,-8px);opacity:0;pointer-events:none;padding:4px 16px;border-radius:999px;background:var(--g-cinnabar);color:var(--g-silk);font:400 17px var(--g-head);box-shadow:0 2px 8px #0008}.g-chip.is-on{animation:g-chip 1.1s ease-out forwards}@keyframes g-chip{0%{opacity:0;transform:translate(-50%,-8px) scale(.8)}15%{opacity:1;transform:translate(-50%) scale(1.05)}80%{opacity:1}to{opacity:0;transform:translate(-50%)}}.g-tape{position:relative;display:flex;flex-wrap:wrap;align-content:flex-start;align-items:baseline;gap:0 14px;min-height:36px;padding:6px 18px;overflow-y:auto;overflow-x:hidden;color:var(--g-ink);font:14px/1.4 var(--g-text);scrollbar-width:none;border-radius:4px/10px;background:linear-gradient(90deg,#7a5a2a,#c9a35a 1.2%,transparent 2.6%,transparent 97.4%,#c9a35a 98.8%,#7a5a2a),repeating-linear-gradient(180deg,transparent 0 calc(1.4em - 1px),#8a6f3a22 calc(1.4em - 1px) 1.4em),linear-gradient(180deg,#f6edd6,var(--g-silk) 40%,#e6d9b8);background-origin:padding-box;background-position:0 0,0 6px,0 0;box-shadow:inset 0 3px 4px -2px #0004,inset 0 -3px 4px -2px #0004,0 0 0 1px #8a6f3a66}.g-tape::-webkit-scrollbar{display:none}.g-pair{display:inline-flex;gap:6px;align-items:baseline}.g-pair b{font:700 12px var(--g-text);color:var(--g-cinnabar)}.g-san.is-last{background:#e3a33a66;border-radius:4px;padding:0 3px;font-weight:700}.g-tape-empty{opacity:.6;font-style:italic}@media (orientation: landscape) and (min-width: 640px){.g-tape{max-height:min(13em,100%);min-height:44px;padding:8px 20px;font-size:15px;align-self:stretch;max-height:none}.g-pair{min-width:6.4em}}@media (orientation: landscape) and (min-width: 640px) and (min-height: 600px){.g-tape{max-height:none;font-size:16px}}.g-acts{display:flex;justify-content:space-around;align-items:flex-start;gap:6px;padding:2px 0 18px}.g-seal{position:relative;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;width:50px;height:50px;min-width:44px;min-height:44px;padding:0;border-radius:11px 15px 12px 14px;border:0;cursor:pointer;background:radial-gradient(circle at 35% 30%,#b83d30,var(--g-cinnabar) 62%,#7e241c);color:var(--g-silk);box-shadow:inset 0 0 0 2px #7e241c,inset 0 0 0 4px #f2e8d0aa,0 3px #4a120d,0 5px 9px #0006;font:11px/1 var(--g-text);transition:transform .08s,box-shadow .08s,opacity .2s}.g-seal:nth-child(odd){transform:rotate(-2deg)}.g-seal:nth-child(2n){transform:rotate(1.5deg)}.g-seal:active:not(:disabled){transform:translateY(2px) scale(.94);box-shadow:inset 0 0 0 2px #7e241c,inset 0 0 0 4px #f2e8d0aa,0 1px #4a120d,0 2px 4px #0006}.g-seal:disabled{opacity:.38;cursor:default;filter:grayscale(.4)}.g-seal:focus-visible,.g-seg-b:focus-visible,.g-sw:focus-visible,.btn:focus-visible{outline:3px solid var(--g-turq);outline-offset:2px}.g-seal.is-danger{background:radial-gradient(circle at 35% 30%,#3c4166,#1a1a1a 70%);box-shadow:inset 0 0 0 2px #000,inset 0 0 0 4px #2c9a8eaa,0 3px #000,0 5px 9px #0006}.g-seal-sm{width:44px;height:44px;flex:none;border-radius:22px 22px 8px 8px;background:radial-gradient(circle at 35% 30%,#3fb5a7,var(--g-turq) 62%,#1c6e65);box-shadow:inset 0 0 0 2px #1c6e65,inset 0 0 0 4px #f2e8d0aa,0 3px #0f3f3a,0 5px 9px #0006;transform:none!important}.g-seal-sm.is-off{opacity:.55}.g-ico{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.g-seal-sm .g-ico{width:22px;height:22px}.g-seal-l{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:5px;font-size:12px;letter-spacing:.02em;color:var(--g-silk);opacity:1;white-space:nowrap}.g-badge{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:var(--g-saffron);color:var(--g-ink);font:700 11px/18px var(--g-text);font-style:normal;text-align:center}.g-film{position:absolute;bottom:-4px;right:0;width:20px;height:20px;border-radius:10px;background:var(--g-saffron);color:var(--g-ink);display:grid;place-items:center}.g-film .g-ico{width:13px;height:13px}.g-seal-sm .g-seal-l{display:none}@media (orientation: landscape) and (min-width: 640px){.g-acts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));justify-items:center;gap:4px}.g-seal:not(.g-seal-sm){width:46px;height:46px}.g-seal-l{font-size:12px}}.g-lot{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;cursor:pointer;padding:12px;background:radial-gradient(ellipse at 50% 40%,#2b3566f2,#121830f6);border-radius:12px}.g-lot-title{margin:0;font:400 24px var(--g-head);color:var(--g-saffron);text-align:center}.g-lot-row{display:flex;gap:4px}.g-lot-cell{width:clamp(30px,9vw,54px);height:clamp(30px,9vw,54px);border-radius:8px;display:grid;place-items:center;background:#f2e8d01c;border:1px solid #e3a33a55}.g-lot-cell svg{width:86%;height:86%}.g-lot-cell.is-shuffle{opacity:.55;transform:translateY(-3px)}.g-lot-cell.is-set{animation:g-land .22s ease-out;background:#e3a33a33;border-color:var(--g-saffron)}@keyframes g-land{0%{transform:translateY(-14px) scale(1.15)}to{transform:none}}.g-lot-num{margin:0;min-height:1.3em;font:400 18px var(--g-head);color:var(--g-silk)}.g-lot-skip{margin:0;font-size:12px;opacity:.6}.g-screen .dialog-back{position:absolute;inset:0;z-index:20;display:grid;place-items:center;padding:16px;background:#0a0f24cc}.g-screen .dialog{width:min(360px,100%);padding:20px 18px 16px;border-radius:6px 6px 22px 22px;color:var(--g-ink);background:linear-gradient(180deg,#f6edd6,var(--g-silk));box-shadow:0 10px 40px #000a,inset 0 0 0 1px #8a6f3a99,inset 0 6px 0 -2px #b23a2e}.g-screen .dialog-title{margin:6px 0 8px;font:400 22px var(--g-head);text-align:center}.g-screen .dialog-text{margin:0 0 14px;text-align:center;line-height:1.35}.g-screen .dialog-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.g-screen .btn{min-height:44px;padding:8px 20px;border-radius:999px;border:2px solid #8a6f3a99;background:#fff8;color:var(--g-ink);font:16px var(--g-text);cursor:pointer}.g-screen .btn-primary{background:var(--g-cinnabar);border-color:#7e241c;color:var(--g-silk)}.g-screen .btn-danger{background:var(--g-indigo);border-color:#0b0f24;color:var(--g-silk)}.g-result,.g-settings{grid-template-columns:minmax(0,1fr);overflow:auto;position:relative}.g-result{grid-template-rows:minmax(0,1fr)}.g-result>.g-scroll{margin:auto;position:relative;z-index:1;width:min(440px,calc(100% - 28px))}.g-result{background:linear-gradient(180deg,#1b234099,#1b2340cc),url(/play/shahmaty/art/map/silk.webp) center / cover no-repeat,var(--g-indigo)}.g-result.is-loss{background:linear-gradient(180deg,#1b2340cc,#1b2340ee),url(/play/shahmaty/art/map/dunes.webp) center / cover no-repeat,var(--g-indigo)}.g-result .btn{text-shadow:none;box-shadow:none}.g-result .btn:hover{box-shadow:none}@media (min-width: 900px){.g-result>.g-scroll{width:min(640px,60vw);padding:44px 36px 34px}}.g-settings{grid-template-rows:auto auto;align-content:start;justify-items:center}.g-scroll{position:relative;width:min(440px,100%);padding:34px 22px 26px;text-align:center;color:var(--g-ink);background:linear-gradient(90deg,#e2d4b0,#f6edd6 8%,var(--g-silk) 50%,#f6edd6 92%,#e2d4b0);border-radius:4px;box-shadow:0 12px 40px #000a,inset 0 0 0 1px #8a6f3a77}.g-scroll:before,.g-scroll:after{content:"";position:absolute;left:-10px;right:-10px;height:16px;border-radius:8px;background:linear-gradient(180deg,#9a6b2e,#5d3a15 60%,#7a5220);box-shadow:0 3px 6px #0006}.g-scroll:before{top:-8px}.g-scroll:after{bottom:-8px}.g-seal-big{position:absolute;top:-26px;right:22px;width:62px;height:62px;display:grid;place-items:center;border-radius:12px;transform:rotate(-6deg);background:var(--g-cinnabar);color:var(--g-silk);font:700 34px/1 BoardJP,"Noto Serif JP",Hiragino Mincho ProN,serif;box-shadow:0 3px 8px #0008,inset 0 0 0 3px #f2e8d055;animation:g-stamp .5s cubic-bezier(.3,1.6,.5,1) .15s}@keyframes g-stamp{0%{transform:scale(1.8) rotate(-14deg)}to{transform:rotate(-6deg)}}.g-res-title{margin:8px 0 4px;font:400 40px/1.05 var(--g-head);color:var(--g-indigo);outline:none}.is-loss .g-res-title{color:#5a1a1e}.is-draw .g-res-title{color:#3b4a5a}.g-res-reason{margin:0 0 4px;font-size:17px;line-height:1.3}.g-res-sub{margin:0 0 14px;font-size:13px;opacity:.65}.g-stars{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:6px;text-align:left}.g-star-row{width:100%;box-sizing:border-box;display:flex;align-items:center;gap:10px;padding:4px 8px;border-radius:999px;background:#1b23400d;opacity:.55}.g-star-row.is-on{opacity:1;background:#e3a33a33;animation:g-pop .45s cubic-bezier(.3,1.5,.5,1) calc(var(--i) * .4s + .6s) both}@keyframes g-pop{0%{box-shadow:0 0 #e3a33a00}40%{box-shadow:0 0 0 5px #e3a33a77}to{box-shadow:0 0 #e3a33a00}}.g-star{width:28px;height:28px;fill:#1b234030;stroke:#1b234066;stroke-width:1}.g-star.is-on{fill:var(--g-saffron);stroke:#8a5a10}.g-new{margin:0 0 10px;font:400 17px var(--g-head);color:var(--g-cinnabar)}.g-res-acts{display:flex;flex-direction:column;align-items:center;gap:8px}.g-result .btn{min-height:46px;border-radius:999px;font:17px var(--g-text);cursor:pointer;padding:8px 26px}.g-result .g-big{min-width:220px;background:radial-gradient(circle at 35% 30%,#b83d30,var(--g-cinnabar) 70%);color:var(--g-silk);border:2px solid #7e241c;box-shadow:0 3px #4a120d!important;font-family:var(--g-head);font-size:20px}.g-result .g-big:active{transform:translateY(2px);box-shadow:0 1px #4a120d}.g-result .g-ghost{background:transparent;border:2px solid #8a6f3a88;color:var(--g-ink)}@media (orientation: landscape) and (max-height: 520px){.g-result{padding-top:18px;padding-bottom:18px}.g-result .g-scroll{width:min(560px,100%);padding:14px 20px}.g-result .g-seal-big{top:6px;right:12px;width:50px;height:50px;font-size:28px}.g-result .g-res-title{font-size:30px;margin:0 56px 2px}.g-result .g-res-reason{font-size:15px;margin:0}.g-result .g-res-sub{margin:0 0 6px;font-size:12px}.g-result .g-stars{grid-template-columns:repeat(3,1fr);gap:4px;margin-bottom:6px;justify-content:stretch}.g-result .g-star-row{padding:2px 8px 2px 4px;font-size:13px}.g-result .g-star{width:22px;height:22px}.g-result .g-new{margin:0 0 4px;font-size:15px}.g-result .g-res-acts{flex-direction:row;justify-content:center;gap:10px}.g-result .btn{min-height:44px;padding:6px 20px}.g-result .g-big{min-width:0;font-size:18px}}.g-fx{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}.g-fx i{position:absolute;top:-24px;left:var(--x);width:var(--s);height:calc(var(--s) * 1.6);border-radius:80% 0;background:var(--c);opacity:0;animation:g-petal var(--d) ease-in var(--w) 1 both}@keyframes g-petal{0%{opacity:0;transform:translate(0) rotate(0)}12%{opacity:.95}to{opacity:0;transform:translate(var(--dx),calc(var(--game-h) + 30px)) rotate(var(--r))}}.g-settings .g-bar{grid-area:auto;grid-row:1;width:min(560px,calc(100% - 28px))}.g-set-card{grid-row:2;margin-top:14px;text-align:left;display:grid;gap:2px;width:min(560px,calc(100% - 28px))}.g-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;padding:8px 2px;min-width:0;border-bottom:1px dashed #8a6f3a66}.g-row:last-child{border-bottom:0}.g-row-l{font:400 17px var(--g-head);flex:1 1 8em;min-width:0;overflow-wrap:anywhere}.g-row>.g-seg,.g-row>.g-sw{margin-left:auto}.g-seg{display:inline-flex;border-radius:999px;overflow:hidden;border:2px solid #8a6f3a99;flex:none;max-width:100%}.g-seg-b{min-width:52px;min-height:44px;padding:7px 14px;border:0;background:#fff6;color:var(--g-ink);font:15px var(--g-text);cursor:pointer}.g-seg-b.is-on{background:var(--g-indigo);color:var(--g-silk)}.g-sw{display:inline-flex;align-items:center;gap:8px;min-width:96px;min-height:48px;box-sizing:border-box;padding:4px 12px 4px 6px;border-radius:999px;border:2px solid #8a6f3a99;background:#fff6;color:var(--g-ink);font:14px var(--g-text);cursor:pointer;flex:none}.g-sw i{width:24px;height:24px;border-radius:50%;background:#8a6f3a88;transition:transform .15s,background .15s}.g-sw.is-on{background:#2c9a8e44}.g-sw.is-on i{background:var(--g-turq);transform:translate(0)}@media (prefers-reduced-motion: reduce){.g-screen *,.g-screen *:before,.g-screen *:after{animation-duration:.01ms!important;animation-delay:0s!important;transition-duration:.01ms!important}}.g-caps-none{font:700 12px var(--g-text);color:var(--g-silk);opacity:.5}@media (orientation: landscape) and (max-height: 520px){.g-settings{padding-top:4px;padding-bottom:8px;gap:4px}.g-settings .g-bar{width:min(760px,100%);min-height:40px}.g-set-card{width:min(760px,calc(100% - 28px));margin-top:10px;grid-template-columns:1fr 1fr;column-gap:28px;padding-top:14px;padding-bottom:14px}.g-row{padding:4px 2px}.g-row:nth-last-child(2){border-bottom:0}}.g-say{position:absolute;left:14px;top:calc(100% + 6px);z-index:5;max-width:min(260px,80vw);padding:6px 12px;border-radius:12px 12px 12px 3px;background:var(--g-silk);color:var(--g-ink);font-size:13px;line-height:1.3;box-shadow:0 3px 10px #0008;border:1px solid #8a6f3a;opacity:0;transform:translateY(-4px);pointer-events:none;transition:opacity .25s,transform .25s}.g-say.is-on{opacity:1;transform:none}@media (orientation: portrait) and (max-height: 640px){.g-carpet{width:min(100%,calc((var(--game-h) - 290px) * var(--ar)))}.g-tape{display:none}.g-screen:not(.g-result):not(.g-settings){grid-template-rows:auto auto auto auto auto;grid-template-areas:"bar" "opp" "stage" "me" "acts"}.g-screen[data-mode]:not(.g-result,[data-mode=shogi],[data-mode=xiangqi]){grid-template-rows:auto auto minmax(0,1fr) auto auto}.g-screen:not([data-mode=shogi],[data-mode=xiangqi]) .g-stage{container-type:size}.g-screen:not([data-mode=shogi],[data-mode=xiangqi]) .g-carpet{width:min(100cqw,100cqh)}}.lrn{--indigo: #1b2340;--indigo2: #263059;--saffron: #e3a33a;--cinnabar: #b23a2e;--silk: #f2e8d0;--turq: #2c9a8e;--ink: #1a1a1a;box-sizing:border-box;height:100%;min-height:var(--game-h);display:flex;flex-direction:column;gap:10px;padding:max(10px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));color:var(--silk);font:16px/1.4 var(--font-text);overflow:hidden;background:radial-gradient(ellipse at 50% -10%,#3a4680 0%,transparent 60%),repeating-linear-gradient(45deg,#ffffff06 0 2px,transparent 2px 22px),linear-gradient(180deg,var(--indigo2),var(--indigo) 70%)}.lrn *,.lrn *:before,.lrn *:after{box-sizing:border-box}.lrn h1,.lrn h2{font-family:var(--font-title);font-weight:700;margin:0}.lrn button{font:inherit}.lrn [tabindex="-1"]:focus,.lrn [data-autofocus]:focus:not(:focus-visible){outline:none}.lrn button:focus-visible{outline:3px solid var(--saffron);outline-offset:2px}.lrn-head{display:flex;align-items:center;gap:10px;flex:none;min-height:48px}.lrn-head h1{font-size:clamp(19px,4.6vw,28px);letter-spacing:.02em;line-height:1.1;flex:1;min-width:0}.lrn-star{width:44px;height:44px;padding:8px;box-sizing:content-box;margin:-8px;color:var(--turq);flex:none;order:2}.lrn-head .lrn-go{font-family:var(--font-title);background:radial-gradient(circle at 35% 30%,#b83d30,var(--cinnabar) 62%,#7e241c);color:var(--silk);border:0;border-radius:12px 16px 12px 15px;padding:9px 18px;font-weight:700;cursor:pointer;min-height:44px;box-shadow:inset 0 0 0 2px #7e241c,inset 0 0 0 4px #f2e8d0aa,0 3px #4a120d}.lrn-go-done{color:var(--turq);display:grid;place-items:center}.lrn-shelves{flex:1;min-height:0;display:flex;flex-direction:column;gap:10px}.lrn-rail{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;flex:none}.lrn-scroll{position:relative;display:grid;gap:2px;text-align:left;padding:8px 12px;cursor:pointer;color:var(--ink);background:linear-gradient(180deg,#f8f0dc,var(--silk) 55%,#e6d8b6);border:0;border-radius:6px;box-shadow:inset 7px 0 0 -2px #c98a24,inset -7px 0 0 -2px #c98a24,0 3px 8px #0006;opacity:.82;transition:transform .15s,opacity .15s}.lrn-scroll.on{opacity:1;transform:translateY(-2px);outline:2px solid var(--saffron);outline-offset:1px}.lrn-scroll-n{position:absolute;right:14px;top:4px;font:700 26px/1 var(--font-title);color:var(--cinnabar);opacity:.85}.lrn-scroll-t{font:700 15px/1.15 var(--font-title);white-space:nowrap}.lrn-scroll-p{font-size:12px;opacity:1}.lrn-bar{height:5px;border-radius:3px;background:#1a1a1a22;overflow:hidden}.lrn-bar i{display:block;height:100%;background:var(--cinnabar)}.lrn-grid{flex:1;min-height:0;overflow-y:auto;display:grid;gap:8px;align-content:start;padding:4px 2px 10px;grid-template-columns:repeat(auto-fill,minmax(58px,1fr));-webkit-overflow-scrolling:touch}.lrn-tile{position:relative;aspect-ratio:1;display:grid;place-items:center;cursor:pointer;padding:0;color:var(--silk);background:linear-gradient(145deg,#1a7369,#176d64 45%,#12504a);border:2px solid #f2e8d0aa;border-radius:10px;box-shadow:inset 0 0 0 3px #1b234033,0 2px #0e3a36}.lrn-tile:before{content:"";position:absolute;inset:5px;border:1px solid #f2e8d055;border-radius:6px;transform:rotate(0);pointer-events:none}.lrn-tile b{font:700 19px/1 var(--font-title)}.lrn-tile:not(:disabled):active{transform:translateY(2px)}.lrn-tile.done{background:linear-gradient(145deg,#fbf3df,var(--silk));color:var(--ink);border-color:var(--saffron)}.lrn-tile.lock{background:#2a335c;border-color:#f2e8d033;color:#f2e8d0e6;box-shadow:none;cursor:default}.lrn-tile.lock:before{border-color:#f2e8d022}.lrn-stamp{position:absolute;right:-5px;top:-5px;width:22px;height:22px;display:grid;place-items:center;color:var(--silk);background:var(--cinnabar);border-radius:50%;box-shadow:0 1px 3px #0008}.lrn-lock{position:absolute;right:7px;bottom:6px;opacity:.8}.lrn-lock svg{width:12px;height:12px}.lrn-tile.lock b{opacity:1;margin-top:-4px}.lrn-aside{flex:none;display:flex;flex-direction:column;gap:10px}.lrn-sum{display:none}.lrn-sum-n{margin:0;font:700 22px/1.2 var(--font-title);color:var(--saffron)}.lrn-puz.lrn-puz .lrn-sum .lrn-btn{align-self:stretch}.lrn-play{flex:1;min-height:0;display:flex;flex-direction:column;gap:10px}.lrn-board{flex:1 1 0;min-height:0;min-width:0;position:relative;border-radius:14px;overflow:hidden}.lrn-board>svg{position:absolute!important;inset:0;width:100%!important;height:100%!important}.lrn-side{flex:none;display:grid;gap:6px;align-content:start;padding:10px 14px;color:var(--ink);background:linear-gradient(180deg,#f8f0dc,var(--silk) 60%,#e9dcbc);border-radius:8px;box-shadow:inset 0 7px 0 -2px #c98a24,inset 0 -7px 0 -2px #c98a24,0 4px 12px #0007}.lrn-side p{margin:0}.lrn-mate{font:700 22px/1 var(--font-title);color:var(--cinnabar)}.lrn-who{font-weight:700}.lrn-left,.lrn-tries,.lrn-hintline{font-size:14px;opacity:.85}.lrn-text{font-size:16px;line-height:1.45}.lrn-end{font-weight:700;color:var(--cinnabar)}.lrn-note{min-height:20px;font-size:14px;font-weight:700;opacity:0;transition:opacity .2s}.lrn-note.show{opacity:1}.lrn-note.bad{color:var(--cinnabar)}.lrn-note.good{color:#1f6f68}.lrn-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}.lrn-actions .lrn-btn{min-height:44px;min-width:88px}.lrn-prog{display:grid;gap:4px}.lrn-prog-t{font-size:13px;font-weight:700}.lrn-hist-box,.lrn-tip{display:grid;gap:4px;font-size:13px}.lrn-hist{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px}.lrn-hist li{padding:2px 8px;border-radius:8px;background:#1f6f6822;color:#1f6f68;font:700 13px/1.4 var(--font-title)}.lrn-hist li.bad{background:#b0301f22;color:var(--cinnabar)}.lrn-hist li.none{background:none;color:inherit;opacity:.7;font-weight:400;padding:0}.lrn-tip{padding:8px 10px;border-radius:8px;background:#c98a2422}.lrn-tip b{color:#7a5220}.lrn-steps{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.lrn-steps li{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:44px;min-width:44px;box-sizing:border-box;padding:3px 12px 3px 6px;border-radius:14px;font-size:13px;background:#1a1a1a14;color:inherit}.lrn-steps li.past{background:#1f6f6822;color:#1f6f68}.lrn-steps li.now{background:var(--cinnabar);color:var(--silk);font-weight:700}.lrn-steps li.now .lrn-steps-m{background:#0000004d}.lrn-steps-m{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;background:#fff6}.lrn-steps-m svg{fill:none;stroke:currentColor}.lrn-rule{display:flex;align-items:center;gap:12px;padding:8px 10px;border-radius:8px;background:#c98a2422;font-size:14px}.lrn-rule-g{font:700 44px/1 var(--font-title);color:var(--cinnabar);min-width:48px;text-align:center}.lrn-rule b{font-size:13px;color:#7a5220}.lrn-btn{min-height:44px;padding:8px 18px;cursor:pointer;color:var(--ink);font-family:var(--font-title);font-size:16px;font-weight:700;background:linear-gradient(180deg,#f8f0dc,var(--silk) 55%,#e6d8b6);border:0;border-radius:12px 16px 12px 15px;box-shadow:inset 0 0 0 2px #c98a24,0 3px #7a5220;transition:transform .12s}.lrn-btn:active:not(:disabled){transform:translateY(2px)}.lrn-btn.primary{color:var(--silk);background:radial-gradient(circle at 35% 30%,#b83d30,var(--cinnabar) 62%,#7e241c);box-shadow:inset 0 0 0 2px #7e241c,inset 0 0 0 4px #f2e8d0aa,0 3px #4a120d}.lrn-btn:disabled{opacity:.5;cursor:default}.lrn-btn.primary:disabled{opacity:1;color:#3a1a14;background:#e3a99e;box-shadow:inset 0 0 0 2px #b9786c,0 2px #7a4a42}.lrn-btn[hidden]{display:none}.lrn-dots{display:flex;gap:6px;list-style:none;margin:0;padding:0}.lrn-dots li{width:22px;height:6px;border-radius:3px;background:#1a1a1a2a}.lrn-dots li.past{background:var(--turq)}.lrn-dots li.now{background:var(--cinnabar)}.lrn-puz.solved .lrn-mate{color:#1f6f68}.lrn-lead{margin:0;flex:none;opacity:.8;font-size:14px}.lrn-gates{flex:1;min-height:0;overflow-y:auto;display:grid;gap:12px;align-content:start;padding:2px 2px 12px;grid-template-columns:1fr;-webkit-overflow-scrolling:touch}.lrn-gate{position:relative;padding:12px 12px 14px;border:2px solid #2c9a8e99;border-radius:34px 34px 10px 10px;background:#ffffff0c;box-shadow:inset 0 0 0 4px #1b234066}.lrn-gate h2{display:flex;align-items:center;gap:10px;font-size:20px;padding:0 6px 8px;color:var(--saffron)}.lrn-glyph{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--turq);color:var(--silk);font-size:18px;line-height:1}.lrn-cards{display:grid;gap:8px;grid-template-columns:1fr}.lrn-card{position:relative;display:grid;gap:2px;text-align:left;padding:10px 14px;cursor:pointer;color:var(--ink);background:linear-gradient(180deg,#f8f0dc,var(--silk) 55%,#e6d8b6);border:0;border-radius:6px;box-shadow:inset 7px 0 0 -2px #c98a24,inset -7px 0 0 -2px #c98a24,0 3px 8px #0006}.lrn-card:active{transform:translateY(2px)}.lrn-card-t{font:700 17px/1.15 var(--font-title);padding-right:22px}.lrn-card-s{font-size:13px;opacity:.8}.lrn-card-n{font-size:12px;color:#98291f;font-weight:700}.lrn-card.done .lrn-stamp{right:8px;top:8px}.lrn-fin{flex:1;display:grid;place-content:center;justify-items:center;gap:12px;text-align:center}.lrn-bigstamp{width:96px;height:96px;display:grid;place-items:center;border-radius:50%;color:var(--silk);background:radial-gradient(circle at 35% 30%,#d4574a,var(--cinnabar) 62%,#8c2a21);box-shadow:0 4px #5d1a14,inset 0 0 0 6px #ffffff1f;transform:rotate(-8deg);animation:lrn-press .45s cubic-bezier(.3,1.6,.5,1) both}.lrn-fin .lrn-actions{justify-content:center}@keyframes lrn-press{0%{transform:scale(1.8) rotate(-8deg);opacity:0}}@media (max-aspect-ratio: 1/1){.lrn-play{gap:8px}.lrn-board{flex:none;width:100%;aspect-ratio:1 / 1;min-height:0}.lrn-side{flex:1 1 auto;min-height:0;overflow-y:auto;align-content:start}.lrn-puz .lrn-play{justify-content:flex-start;gap:8px}.lrn-puz .lrn-side{gap:4px;padding:12px 14px 14px}.lrn-puz .lrn-tries:empty{display:none}.lrn-puz .lrn-actions{margin-top:6px;gap:10px}.lrn-puz .lrn-actions .lrn-btn{flex:1 1 0}}@media (min-aspect-ratio: 1/1){.lrn.lrn-fit{height:var(--game-h);min-height:0;max-height:var(--game-h)}.lrn-play{flex-direction:row;min-height:0;overflow:hidden}.lrn-side{align-self:stretch;overflow-y:auto;min-height:0}.lrn-side{width:clamp(240px,32vw,380px);align-content:start;box-shadow:inset 7px 0 0 -2px #c98a24,inset -7px 0 0 -2px #c98a24,0 4px 12px #0007}.lrn-shelves{flex-direction:row}.lrn-head .lrn-go{display:none}.lrn-aside{width:clamp(190px,26vw,300px)}.lrn-sum{display:grid;gap:10px;padding:14px;border-radius:10px;background:#ffffff0c;box-shadow:inset 0 0 0 2px #2c9a8e66}.lrn-rail{grid-template-columns:1fr;align-content:start}.lrn-gates{grid-template-columns:repeat(2,1fr)}.lrn-cards{grid-template-columns:1fr}}@media (min-aspect-ratio: 1/1) and (max-height: 520px){.lrn{gap:6px;padding-top:6px;padding-bottom:6px}.lrn-head{min-height:40px}.lrn-head .g-seal{width:40px;height:40px}.lrn-side{padding:8px 12px;gap:4px}.lrn-text{font-size:14px;line-height:1.35}.lrn-scroll{padding:5px 10px}.lrn-scroll-n{font-size:20px}.lrn-gates{grid-template-columns:repeat(3,1fr);gap:8px}.lrn-gate{padding:8px}.lrn-gate h2{font-size:16px;padding-bottom:4px}.lrn-lead{display:none}.lrn-steps{gap:4px}.lrn-steps li{flex:1 1 30%;padding:2px 4px;gap:4px}.lrn-tip{padding:6px 8px}.lrn-rule-g{font-size:34px;min-width:38px}.lrn-btn{min-height:44px;min-width:88px;padding:4px 14px}}@media (min-width: 900px) and (min-height: 600px){.lrn{padding:18px 28px 22px;gap:14px}.lrn-head h1{font-size:32px}.lrn-gates{grid-template-columns:repeat(3,1fr);gap:16px}.lrn-grid{grid-template-columns:repeat(10,1fr);gap:10px}.lrn-shelves{max-width:1280px;width:100%;margin:0 auto}.lrn-text{font-size:18px}.lrn-play{justify-content:center;gap:24px}.lrn-side{align-self:flex-start}}@media (prefers-reduced-motion: reduce){.lrn *{animation:none!important;transition:none!important}}.shp{--shp-ink: #1a1a1a;--shp-turq: #0b5b52}.shp .shp-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:1rem;padding:.2rem .2rem 1.2rem}.shp-purse{margin:0;align-self:flex-start;padding:.3rem .95rem;border-radius:999px;font-weight:700;color:var(--silk);background:#0e122899;box-shadow:0 0 0 .1rem var(--saffron)}.shp-note{margin:0;padding:.65rem .95rem;border-radius:.8rem;color:var(--silk);background:#f2e8d01f;box-shadow:inset 0 0 0 .08rem #e3a33a8c}.shp-group{display:flex;flex-direction:column;gap:.6rem}.shp .shp-h{font-family:var(--font-title);font-size:clamp(1.05rem,3.4vw,1.35rem);letter-spacing:.06em;text-transform:uppercase;color:var(--saffron);text-shadow:0 .1rem .2rem #000;margin:0}.shp-grid{list-style:none;margin:0;padding:.45rem .35rem .35rem;display:grid;gap:1.1rem 1rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr))}.shp-card{position:relative;display:flex;flex-direction:column;gap:.4rem;min-width:0;padding:1rem 1rem .9rem;border-radius:.9rem 1.3rem .9rem 1.1rem;color:var(--shp-ink);background:linear-gradient(180deg,#fbf3df,var(--silk) 50%,#e6d6b0);box-shadow:0 0 0 .14rem var(--saffron),0 0 0 .3rem #1a1a1abf,0 .5rem 1rem #00000073}.shp-card:before{content:"";position:absolute;top:-.45rem;left:1.1rem;width:2.4rem;height:.7rem;border-radius:.35rem;background:linear-gradient(180deg,#b83d30,var(--cinnabar) 60%,#7e241c);box-shadow:0 .1rem .2rem #00000080}.shp-card.own{background:linear-gradient(180deg,#eef3e4,#e1ead3 55%,#cddcbd)}.shp .shp-name{margin:.2rem 0 0;font-family:var(--font-title);font-size:1.2rem;line-height:1.15;overflow-wrap:anywhere}.shp-desc{margin:0;flex:1;font-size:.95rem;line-height:1.35;overflow-wrap:anywhere}.shp-foot{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .7rem;margin-top:.3rem}.shp-price{display:inline-flex;align-items:center;gap:.25rem;margin-right:auto;font-weight:800;font-size:1.15rem;color:#8f2c22}.shp-price .currency-icon{height:1.1em;width:auto}.shp .shp-buy,.shp .shp-apply{min-height:max(2.75rem,44px);padding:.55rem 1.2rem;border:0;border-radius:.8rem 1.1rem .8rem 1rem;font-family:var(--font-title);font-weight:700;font-size:1rem;cursor:pointer}.shp .shp-buy{color:var(--silk);background:radial-gradient(circle at 35% 30%,#b93a2e,var(--cinnabar) 62%,#7e241c);box-shadow:0 0 0 .1rem var(--saffron),0 .25rem .5rem #0006}.shp .shp-buy:active{transform:translateY(.1rem)}.shp .shp-buy[disabled]{opacity:.55;cursor:default}.shp-own{display:inline-flex;align-items:center;gap:.35rem;margin-right:auto;font-weight:700;color:var(--shp-turq)}.shp-own svg{color:var(--shp-turq)}.shp .shp-apply{color:var(--shp-turq);background:transparent;box-shadow:inset 0 0 0 .14rem var(--shp-turq)}.shp .shp-apply.on{color:var(--silk);background:var(--shp-turq)}@media (prefers-reduced-motion: no-preference){.shp .shp-buy{transition:transform .12s}}.shp-swatch{position:relative;display:grid;grid-template-columns:1fr 1fr;width:3.6rem;height:3.6rem;padding:.3rem;border-radius:.5rem;background:var(--sw-f);box-shadow:inset 0 0 0 .12rem var(--sw-a)}.shp-swatch i:nth-child(1),.shp-swatch i:nth-child(4){background:var(--sw-l)}.shp-swatch i:nth-child(2),.shp-swatch i:nth-child(3){background:var(--sw-d)}.shp-swatch b{position:absolute;right:-.3rem;bottom:-.3rem;width:1.1rem;height:1.1rem;border-radius:50%;background:var(--sw-a);box-shadow:0 0 0 .14rem #1a1a1abf}:root.with-demo-banner .shp{min-height:0;height:var(--game-h)}:root.with-demo-banner .shp .shp-body{padding-bottom:calc(1.2rem + var(--demo-banner, 0px) * .25)}.onl .onl-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:1rem;width:min(100%,36rem);margin:0 auto;padding:.2rem .2rem 1.2rem}.onl fieldset.onl-modes{margin:0;padding:0;border:0;min-width:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(12rem,100%),1fr));gap:.6rem}.onl-modes[hidden]{display:none}.onl-modes legend{grid-column:1 / -1;padding:0 0 .1rem;font-family:var(--font-title);font-weight:700;color:var(--saffron)}.onl-mode{position:relative;display:block;min-width:0}.onl-mode input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.onl-card{display:flex;align-items:center;gap:.6rem;min-height:3.2rem;padding:.45rem .7rem;border-radius:.9rem;color:var(--ink);background:linear-gradient(180deg,#fbf3df,#e6d6b0);box-shadow:0 0 0 .1rem #8a6f3ab3,inset 0 0 .4rem #8a6f3a59}.onl-card b{min-width:0;font-family:var(--font-title);font-size:1rem;line-height:1.15;overflow-wrap:anywhere}.onl-glyph{flex:none;display:grid;place-items:center;min-width:2.2rem;height:2.2rem;padding:0 .25rem;border-radius:50%;font-style:normal;font-weight:700;font-size:1rem;color:var(--silk);background:var(--indigo);box-shadow:0 0 0 .12rem var(--saffron)}.onl-mode input:checked+.onl-card{background:linear-gradient(180deg,#fff6df,#f2d99a);box-shadow:0 0 0 .16rem var(--saffron),0 0 0 .3rem var(--cinnabar),inset 0 0 .5rem #e3a33a80}.onl-mode input:focus-visible+.onl-card{outline:.2rem solid var(--saffron-hi);outline-offset:.15rem}.onl-modes:disabled .onl-card{opacity:.55}.onl-panel{display:flex;flex-direction:column;gap:.9rem;padding:1rem;border-radius:1.1rem;background:#0e12288c;box-shadow:0 0 0 .1rem #e3a33a99,inset 0 0 1rem #00000059}.onl-panel p,.onl-panel h2{margin:0}.onl-actions{display:flex;flex-direction:column;gap:.6rem}.onl-actions .btn,.onl-panel>.btn{width:100%;min-height:max(2.75rem,44px)}.onl-muted{color:#f2e8d0bf;font-size:.9rem}.onl-note{color:#f2e8d0e6;font-size:.95rem}.onl-label{font-family:var(--font-title);font-weight:700;color:var(--saffron)}.onl-error{padding:.6rem .8rem;border-radius:.8rem;color:#fff3ec;background:#7d241cd9;box-shadow:0 0 0 .1rem var(--cinnabar-hi)}.onl-wait{display:flex;align-items:center;gap:.6rem;font-family:var(--font-title);font-weight:700;font-size:1.1rem}.onl-spin{flex:none;width:1.1rem;height:1.1rem;border-radius:50%;border:.18rem solid rgba(227,163,58,.35);border-top-color:var(--saffron);animation:onl-turn 1s linear infinite}@keyframes onl-turn{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.onl-spin{animation:none}}.onl-join{display:flex;flex-direction:column;gap:.5rem;padding-top:.8rem;border-top:.1rem solid rgba(227,163,58,.35)}.onl-join h2{font-size:1.1rem;color:var(--saffron)}.onl-row{display:flex;gap:.5rem;align-items:stretch}.onl-row .btn{flex:none}.onl-input{flex:1;min-width:0;min-height:max(2.75rem,44px);padding:.3rem .8rem;border:0;border-radius:.8rem;font:700 1.25rem/1 var(--font-text);letter-spacing:.18em;text-transform:uppercase;color:var(--ink);background:var(--silk);box-shadow:0 0 0 .1rem var(--saffron)}.onl-input::placeholder{color:#1a1a1a59}.onl-input:focus-visible{outline:.2rem solid var(--saffron-hi);outline-offset:.1rem}.onl-invite{display:flex;flex-direction:column;align-items:center;gap:.6rem;text-align:center}.onl-code{font-family:var(--font-title);font-weight:700;font-size:clamp(2rem,11vw,2.8rem);letter-spacing:.14em;padding-left:.14em;color:var(--silk);text-shadow:0 0 .8rem rgba(227,163,58,.6)}.onl-qr-box{display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:.6rem;border-radius:.9rem;background:#fff;box-shadow:0 0 0 .14rem var(--saffron)}.onl-qr{display:block;image-rendering:pixelated;max-width:100%}.onl-qr-hint{color:var(--ink);font-size:.85rem}.onl-invite .onl-actions{width:100%}.onl-invite .inv-wait{justify-content:center}.onl-link{width:100%;min-height:max(2.75rem,44px);padding:.3rem .6rem;border:0;border-radius:.6rem;font:.85rem var(--font-text);color:var(--ink);background:var(--silk)}.onl-link[hidden]{display:none}.onl-invite .inv-cancel{width:100%}@media (orientation: landscape) and (max-height: 520px){.onl .onl-body{width:min(100%,52rem);gap:.6rem}.onl fieldset.onl-modes{grid-template-columns:repeat(4,minmax(0,1fr))}.onl-card{flex-direction:column;justify-content:center;gap:.2rem;text-align:center;min-height:max(2.75rem,44px)}.onl-invite.has-qr{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label qr" "code qr" "rules qr" "wait qr" "note qr" "actions qr" "link qr" "cancel qr";column-gap:1.2rem;row-gap:.4rem;text-align:left;align-items:start}.inv-label{grid-area:label}.inv-code{grid-area:code}.inv-rules{grid-area:rules}.inv-qr{grid-area:qr;align-self:center}.inv-wait{grid-area:wait;justify-content:flex-start!important}.inv-note{grid-area:note}.inv-actions{grid-area:actions}.inv-link{grid-area:link}.inv-cancel{grid-area:cancel}.onl-code{font-size:2rem}}@media (max-width: 340px){.onl-card{padding:.4rem .5rem;gap:.4rem}.onl-card b{font-size:.9rem}.onl-panel{padding:.8rem}}.g-count.is-low{color:var(--cinnabar-hi);font-weight:700}.dock{flex-wrap:wrap;gap:.4rem}.dock .play-online{flex:1 1 100%;min-height:max(2.75rem,44px)}@media (min-width: 700px){.dock .play-online{flex:0 1 420px}}@media (orientation: landscape) and (max-height: 520px){.dock .play-online{flex:1 1 0}}
