:root{--cream-1:#fffaf0;--cream-2:#fdf1d9;--cream-3:#f6e3c2;--wood-1:#c48a4d;--wood-2:#a4672f;--wood-3:#7d4a1d;--wood-4:#57310f;--felt-1:#3faa63;--felt-2:#2f8b4e;--felt-3:#1f6b39;--felt-line:#16512b;--disc-black-1:#5b5f6b;--disc-black-2:#24262e;--disc-black-3:#0c0d12;--disc-white-1:#fff;--disc-white-2:#f2eee4;--disc-white-3:#cfc7b4;--sun-1:#ffc247;--sun-2:#f79a1b;--sun-3:#cf6f06;--grass-1:#6ed07f;--grass-2:#35a95c;--grass-3:#1f7d40;--berry-1:#ff9aa8;--berry-2:#e75d76;--ink:#3d2a15;--ink-soft:#6b5236;--radius-lg:24px;--radius-md:16px;--radius-sm:10px;--board-size:min(92vw, 62vh, 560px);--board-pad:clamp(8px, 2.2vw, 18px)}@supports (height:1dvh){:root{--board-size:min(92vw, 62dvh, 560px)}}*{box-sizing:border-box;margin:0}html,body{overflow-x:hidden}body{color:var(--ink);background-color:var(--cream-2);background-image:radial-gradient(ellipse 70% 50% at 50% -5%, #fffffff2, #fff0 70%), radial-gradient(ellipse 60% 45% at 12% 105%, #6ed07f47, #6ed07f00 70%), radial-gradient(ellipse 60% 45% at 92% 92%, #ffc2474d, #ffc24700 70%), linear-gradient(170deg, var(--cream-1), var(--cream-2) 45%, var(--cream-3));-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;background-attachment:fixed;font-family:Hiragino Maru Gothic ProN,ヒラギノ丸ゴ ProN W4,BIZ UDPGothic,Hiragino Kaku Gothic ProN,Yu Gothic Medium,Meiryo,system-ui,-apple-system,Segoe UI,sans-serif}.screen{flex-direction:column;justify-content:center;align-items:center;gap:clamp(10px,2vw,16px);max-width:640px;min-height:100dvh;margin:0 auto;padding:clamp(10px,2.4vw,20px);display:flex;position:relative}h1{letter-spacing:.04em;text-align:center;color:#2f7d45;text-shadow:0 1px #fff,0 2px #ffffffb3,0 3px #a0783c47,0 6px 14px #78501e38;font-size:clamp(1.9rem,7vw,3rem);line-height:1.25}h2{color:var(--ink-soft);letter-spacing:.06em;text-align:center;align-items:center;gap:10px;font-size:clamp(1.05rem,3.4vw,1.35rem);font-weight:700;display:flex}h2:before,h2:after{content:"";background:linear-gradient(90deg,#b48c5a00,#b48c5a80);border-radius:3px;width:clamp(18px,6vw,44px);height:3px}h2:after{background:linear-gradient(90deg,#b48c5a80,#b48c5a00)}.title-wrap{flex-direction:column;align-items:center;gap:8px;display:flex}.title-deco{filter:drop-shadow(0 4px 8px #78501e40);width:clamp(150px,46vw,230px);height:auto;display:block}.title-sub{letter-spacing:.3em;color:var(--ink-soft);opacity:.75;font-size:clamp(.8rem,2.6vw,.95rem)}.btn,.big-btn{color:var(--ink);cursor:pointer;touch-action:manipulation;background-repeat:no-repeat;border-style:solid;font-family:inherit;font-weight:700;transition:transform .14s,box-shadow .14s,background-color .14s;position:relative}.big-btn{letter-spacing:.05em;border-radius:var(--radius-lg);background-image:linear-gradient(#fff,#fdf3e0 60%,#f6e6cb);border-width:3px;border-color:#b98f57;min-width:260px;min-height:68px;padding:12px 28px;font-size:clamp(1.25rem,4.4vw,1.55rem);box-shadow:inset 0 2px #ffffffe6,inset 0 -6px 10px #b48c5a1f,0 6px #cba470,0 10px 18px #78501e3d}.btn{border-radius:var(--radius-md);background-image:linear-gradient(#fff,#fbf4e6 60%,#f3e8d3);border-width:3px;border-color:#c6a97f;min-width:104px;min-height:52px;padding:8px 18px;font-size:clamp(1rem,3.2vw,1.15rem);box-shadow:inset 0 2px #ffffffe6,0 4px #d6bb95,0 7px 12px #78501e2e}.big-btn.primary{color:#fffdf7;background-image:linear-gradient(180deg, #7fdc95, var(--grass-2) 45%, #1f8a45);text-shadow:0 2px 3px #0c3c1c73;border-color:#176b37;box-shadow:inset 0 2px #ffffff80,inset 0 -7px 12px #0a3c1a40,0 6px #145c30,0 12px 20px #145a2d52}.big-btn.action{color:#fffaf0;background-image:linear-gradient(180deg, #ffd06a, var(--sun-2) 45%, #e07a09);text-shadow:0 2px 3px #6e370073;border-color:#b45c05;box-shadow:inset 0 2px #ffffff8c,inset 0 -7px 12px #783c0038,0 6px #b4600a,0 12px 20px #96550a52}.big-btn.caution{color:#fff7f8;background-image:linear-gradient(180deg, #ffa8b6, var(--berry-2) 48%, #cf465f);text-shadow:0 2px 3px #6e142366;border-color:#b1354b;box-shadow:inset 0 2px #ffffff80,inset 0 -7px 12px #6e142333,0 6px #a83249,0 12px 20px #9632464d}.big-btn:active:not(:disabled){transform:translateY(5px);box-shadow:inset 0 2px #ffffffb3,inset 0 -4px 8px #0000001f,0 1px #0000002e,0 3px 8px #78501e38}.btn:active:not(:disabled){transform:translateY(3px);box-shadow:inset 0 2px #ffffffb3,0 1px #00000026,0 2px 6px #78501e2e}.btn:disabled,.big-btn:disabled{color:#6a6156;text-shadow:none;cursor:default;background-image:linear-gradient(#f4f0e8,#e9e3d7);border-color:#cfc6b6;box-shadow:inset 0 2px #ffffffb3,0 4px #dcd5c7}.btn.selected{color:#4a2d05;background-image:linear-gradient(#ffeaa8,#ffd05f 55%,#f7b32b);border-color:#c98b12;box-shadow:inset 0 2px #ffffffd9,inset 0 -5px 10px #be820a33,0 4px #d59a12,0 8px 14px #be8c144d,0 0 0 4px #ffd05f59}.btn.selected:after{content:"";background-color:#2b9c52;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='%23ffffff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"),linear-gradient(#6fdc8c,#2b9c52);background-repeat:no-repeat;background-size:100% 100%,100% 100%;border:2px solid #fff;border-radius:50%;width:24px;height:24px;position:absolute;top:-10px;right:-10px;box-shadow:0 2px 5px #1e5a2d66}.btn.ghost:not(:disabled){color:var(--ink-soft);box-shadow:none;background-color:#0000;background-image:none;border-color:#b8a075}.btn.ghost:not(:disabled):active{background-color:#b4966424}.controls{flex-wrap:wrap;justify-content:center;gap:clamp(8px,2.2vw,14px);display:flex}.btn.color-pick{align-items:center;gap:10px;display:inline-flex}.disc{width:82%;height:82%;transform-style:preserve-3d;border-radius:50%;margin:9%;transition:transform .54s cubic-bezier(.35,.86,.35,1.08);display:block;position:relative}.disc.flipping{transition-delay:var(--flip-delay,0s);animation:disc-flip-lift .54s ease-out var(--flip-delay,0s) both}@keyframes disc-flip-lift{0%{scale:1}45%{scale:1.14}to{scale:1}}.disc.black{transform:rotateY(0)}.disc.white{transform:rotateY(180deg)}.disc-face{backface-visibility:hidden;border-radius:50%;animation:.44s cubic-bezier(.3,1.45,.5,1) both disc-pop;position:absolute;inset:0}.disc-face.face-black{background:radial-gradient(circle at 32% 26%, #ffffff8c, #fff0 42%), radial-gradient(circle at 50% 115%, #ffffff29, #fff0 55%), radial-gradient(circle at 38% 32%, var(--disc-black-1), var(--disc-black-2) 55%, var(--disc-black-3));box-shadow:inset 0 -3px 6px #0009,inset 0 2px 3px #ffffff38,0 3px 5px #00000073}.disc-face.face-white{background:radial-gradient(circle at 32% 26%, #fff, #fff0 45%), radial-gradient(circle at 38% 32%, var(--disc-white-1), var(--disc-white-2) 58%, var(--disc-white-3));transform:rotateY(180deg);box-shadow:inset 0 -3px 6px #78644666,inset 0 2px 3px #fffffff2,0 3px 5px #00000059}.disc-face:after{content:"";filter:blur(.5px);pointer-events:none;background:linear-gradient(#ffffffbf,#fff0);border-radius:50%;width:40%;height:26%;position:absolute;top:12%;left:18%}.disc-face.face-black:after{background:linear-gradient(#ffffff6b,#fff0)}@keyframes disc-pop{0%{opacity:0;scale:.35}60%{opacity:1;scale:1.12}to{opacity:1;scale:1}}.disc-icon{vertical-align:-.18em;border-radius:50%;flex:none;width:1.15em;height:1.15em;display:inline-block}.disc-icon.black{background:radial-gradient(circle at 34% 28%, #ffffff80, #fff0 45%), radial-gradient(circle at 38% 32%, var(--disc-black-1), var(--disc-black-2) 55%, var(--disc-black-3));box-shadow:inset 0 -2px 3px #0000008c,0 1px 2px #00000059}.disc-icon.white{background:radial-gradient(circle at 34% 28%, #fff, #fff0 48%), radial-gradient(circle at 38% 32%, var(--disc-white-1), var(--disc-white-2) 58%, var(--disc-white-3));box-shadow:inset 0 -2px 3px #78644659,inset 0 0 0 1px #8c785a59,0 1px 2px #00000040}.board-frame{width:var(--board-size);padding:var(--board-pad);border-radius:var(--radius-lg);background-image:repeating-linear-gradient(92deg, #ffffff0f 0 3px, #0000000d 3px 7px, #fff0 7px 13px), linear-gradient(160deg, var(--wood-1), var(--wood-2) 45%, var(--wood-3));box-shadow:inset 0 2px 0 #ffe2be99, inset 0 -3px 0 #3c1e0573, 0 10px 0 var(--wood-4), 0 18px 30px #502d0a61, 0 2px 4px #0003}.othello-board{aspect-ratio:1;background:var(--felt-line);border-radius:8px;grid-template-columns:repeat(8,1fr);gap:2px;width:100%;padding:3px;display:grid;position:relative;box-shadow:inset 0 0 0 2px #143c22e6,inset 0 4px 12px #0000008c,0 1px #ffe6c859}.othello-board:after{content:"";pointer-events:none;background-image:radial-gradient(circle at 25% 25%,#062814d9 0 3px,#0000 3.5px),radial-gradient(circle at 75% 25%,#062814d9 0 3px,#0000 3.5px),radial-gradient(circle at 25% 75%,#062814d9 0 3px,#0000 3.5px),radial-gradient(circle at 75% 75%,#062814d9 0 3px,#0000 3.5px);border-radius:6px;position:absolute;inset:3px}.othello-cell{perspective:500px;touch-action:manipulation;background-color:var(--felt-2);background-image:radial-gradient(ellipse 120% 90% at 50% 0%, #ffffff24, #fff0 65%), linear-gradient(180deg, var(--felt-1), var(--felt-2) 55%, var(--felt-3));border:none;border-radius:3px;padding:0;transition:background-color .16s;position:relative;box-shadow:inset 0 1px #fff3,inset 0 -2px 4px #00000047}.othello-cell.hint{background-image:radial-gradient(circle at 50% 50%, #fffce22e, #fffce200 58%), linear-gradient(180deg, var(--felt-1), var(--felt-2) 55%, var(--felt-3))}.othello-cell.hint:before{content:"";pointer-events:none;z-index:1;background:radial-gradient(circle at 38% 32%,#ffd682b3 0%,#d694228c 60%,#a35c0080 100%);border-radius:50%;width:34%;height:34%;margin:-17% 0 0 -17%;animation:2.2s ease-in-out infinite hint-pulse;position:absolute;top:50%;left:50%;box-shadow:0 0 0 2px #ffffff40}@keyframes hint-pulse{0%,to{opacity:.55;scale:.9}50%{opacity:.8;scale:1}}.othello-cell.hint:active:before{animation:none;scale:1.25}.status-bar{width:var(--board-size);justify-content:center;align-items:stretch;gap:clamp(6px,1.6vw,12px);font-size:clamp(.95rem,3vw,1.2rem);display:flex}.score{min-height:52px;color:var(--ink);background-image:linear-gradient(#fffdf8,#f6ead4);border:3px solid #d9bd92;border-radius:999px;align-items:center;gap:8px;padding:8px clamp(10px,2.2vw,16px);font-weight:700;transition:transform .16s,box-shadow .16s,border-color .16s;display:flex;box-shadow:inset 0 2px #ffffffe6,0 3px #dcc49e,0 6px 12px #78501e29}.score.active{background-image:linear-gradient(#fff7dd,#ffe6ac);border-color:#f0a824;transform:translateY(-2px);box-shadow:inset 0 2px #fffffff2,0 3px #e0a831,0 6px 14px #dc961452,0 0 0 4px #ffcd5a66}.score-label{letter-spacing:.02em;white-space:nowrap;font-size:.82em}.score-you{color:#fffaf0;white-space:nowrap;background-image:linear-gradient(#ff9fb0,#e2566f);border-radius:999px;padding:2px 7px;font-size:.72em;box-shadow:0 1px 2px #8c283c59}.score-num{text-align:center;color:#2f7d45;font-variant-numeric:tabular-nums;min-width:1.3em;font-size:1.35em;font-weight:800}.turn-pill{text-align:center;color:#fffdf7;text-shadow:0 1px 2px #0a371980;background-image:linear-gradient(#6bd089,#2f9a55 55%,#1f7d40);border:3px solid #17703a;border-radius:999px;justify-content:center;align-items:center;min-height:52px;padding:8px clamp(8px,2vw,14px);font-size:.95em;font-weight:700;line-height:1.15;display:flex;box-shadow:inset 0 2px #fff6,0 3px #175f31,0 6px 12px #195f324d}.turn-pill.waiting{color:#4a3a22;text-shadow:none;background-image:linear-gradient(#fdf6e6,#ece0c8);border-color:#cbb086;box-shadow:inset 0 2px #ffffffe6,0 3px #d6c3a1,0 6px 12px #78501e24}.overlay{z-index:20;-webkit-backdrop-filter:blur(6px)saturate(1.05);backdrop-filter:blur(6px)saturate(1.05);background:radial-gradient(#1c10046b,#140a02ad);justify-content:center;align-items:center;padding:16px;animation:.22s both overlay-in;display:flex;position:fixed;inset:0}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}.dialog{text-align:center;background-image:radial-gradient(90% 60% at 50% 0,#fffdf6,#fffdf600 70%),linear-gradient(175deg,#fffaf0,#fdf2dd 60%,#f8e8cd);border:4px solid #fff;border-radius:30px;flex-direction:column;align-items:center;gap:clamp(12px,2.6vw,18px);max-width:min(92vw,440px);padding:clamp(20px,4vw,30px);animation:.26s cubic-bezier(.25,1.35,.5,1) both dialog-in;display:flex;position:relative;box-shadow:inset 0 3px #ffffffe6,0 10px #be9b6e8c,0 22px 46px #28160573}@keyframes dialog-in{0%{opacity:0;transform:translateY(16px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}.dialog p{color:var(--ink-soft);font-size:clamp(1rem,3.2vw,1.15rem);line-height:1.6}.dialog h2{color:var(--ink)}.dialog label{text-align:left;border-radius:var(--radius-md);touch-action:manipulation;background:#ffffffb3;border:2px solid #e3d2b2;align-items:center;gap:12px;width:100%;min-height:44px;padding:6px 14px;font-size:clamp(1.02rem,3.2vw,1.2rem);font-weight:700;display:flex}.dialog input[type=checkbox]{accent-color:#2f9a55;touch-action:manipulation;flex:none;width:28px;height:28px}.dialog label.row-disabled{color:#6a6156}.dialog input[type=checkbox]:disabled{opacity:.55;accent-color:#9c9284}.dialog p.resign-note{color:var(--ink-soft);opacity:.85;font-size:clamp(.82rem,2.5vw,.92rem);line-height:1.4}.result{letter-spacing:.06em;font-size:clamp(2.2rem,9vw,3.2rem);font-weight:800;line-height:1.2}.result:before,.result:after{display:none}.result.win{color:#e5720a;text-shadow:0 2px #fff,0 4px #be781459,0 8px 18px #dc8c1466;animation:.36s cubic-bezier(.25,1.5,.45,1) both result-pop}.result.lose{color:#5b7fa8;text-shadow:0 2px #fff,0 4px 10px #46648c47}.result.draw{color:#6b8f4e;text-shadow:0 2px #fff,0 4px 10px #5a783c40}@keyframes result-pop{0%{opacity:0;transform:scale(.5)rotate(-6deg)}to{opacity:1;transform:scale(1)rotate(0)}}.starburst{opacity:.85;pointer-events:none;z-index:-1;background:repeating-conic-gradient(#ffcd5a8c 0deg 9deg,#ffcd5a00 9deg 24deg);border-radius:50%;width:260px;height:260px;margin:-130px 0 0 -130px;animation:.38s ease-out both burst-in;position:absolute;top:clamp(56px,12vw,78px);left:50%;-webkit-mask-image:radial-gradient(circle,#000 12%,#0009 45%,#0000 70%);mask-image:radial-gradient(circle,#000 12%,#0009 45%,#0000 70%)}@keyframes burst-in{0%{opacity:0;transform:scale(.3)rotate(-25deg)}to{opacity:1;transform:scale(1)rotate(0)}}.confetti{pointer-events:none;height:0;position:absolute;inset:-60px -20px auto;overflow:visible}.confetti i{opacity:0;border-radius:3px;width:12px;height:16px;animation:.4s ease-in forwards confetti-drop;position:absolute;top:0}@keyframes confetti-drop{0%{opacity:0;transform:translateY(0)rotate(0)scale(.6)}25%{opacity:1}80%{opacity:1}to{opacity:0;transform:translateY(230px)rotate(240deg)scale(1)}}.confetti i:first-child{background:#ff8fa3;animation-delay:20ms;left:4%}.confetti i:nth-child(2){background:#ffd05f;animation-delay:.12s;left:14%}.confetti i:nth-child(3){background:#6ed07f;animation-delay:60ms;left:24%}.confetti i:nth-child(4){background:#7cc6ff;animation-delay:.18s;left:34%}.confetti i:nth-child(5){background:#ffb066;animation-delay:0s;left:44%}.confetti i:nth-child(6){background:#c79bff;animation-delay:.14s;left:54%}.confetti i:nth-child(7){background:#ff8fa3;animation-delay:80ms;left:64%}.confetti i:nth-child(8){background:#6ed07f;animation-delay:.2s;left:74%}.confetti i:nth-child(9){background:#ffd05f;animation-delay:40ms;left:84%}.confetti i:nth-child(10){background:#7cc6ff;animation-delay:.16s;left:94%}.confetti i:nth-child(11){background:#ffd05f;animation-delay:.24s;left:30%}.confetti i:nth-child(12){background:#ff8fa3;animation-delay:.26s;left:70%}.final-score{color:var(--ink);background:#ffffffbf;border:3px solid #e6d3b2;border-radius:999px;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;padding:10px 16px;font-size:clamp(1rem,3.2vw,1.15rem);font-weight:700;display:flex}.final-score .score-num{font-size:1.25em}.final-dash{color:var(--ink-soft);opacity:.7}.game-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:clamp(12px,2.4vw,20px);width:min(94vw,760px);display:grid}.game-card{cursor:pointer;touch-action:manipulation;border-radius:var(--radius-lg);background-image:linear-gradient(#fff,#fdf3e0 60%,#f6e6cb);border:3px solid #c6a97f;flex-direction:column;align-items:center;gap:6px;padding:12px 12px 14px;font-family:inherit;transition:transform .14s,box-shadow .14s;display:flex;box-shadow:inset 0 2px #ffffffe6,0 6px #cba470,0 10px 18px #78501e38}.game-card:active{transform:translateY(4px);box-shadow:inset 0 2px #ffffffb3,0 2px #cba470,0 4px 8px #78501e33}.game-card-visual{border-radius:var(--radius-md);justify-content:center;align-items:center;width:100%;height:clamp(96px,15vh,128px);display:flex;position:relative;overflow:hidden;box-shadow:inset 0 2px 6px #3c1e0540}.visual-othello{background:radial-gradient(120% 120% at 30% 20%,#4db571,#1f6b39)}.visual-shogi{background:repeating-linear-gradient(92deg,#92602214 0 2px,#fff4d60f 2px 5px,#92602200 5px 12px),linear-gradient(170deg,#f3dca4,#dfc084)}.visual-runner{background:linear-gradient(#1b2450,#453a6e 55%,#b56a56 88%,#efa06e)}.thumb-svg{width:82%;height:88%}.thumb-runner{justify-content:center;align-items:flex-end;width:100%;height:100%;padding-bottom:10px;display:flex;position:relative}.thumb-runner .pixel-art{animation:2.4s ease-in-out infinite hero-bob}.thumb-moon{background:#ffe9a8;border-radius:50%;width:18px;height:18px;position:absolute;top:10px;right:16px;box-shadow:inset -4px -2px 0 2px #453a6e,0 0 10px #ffe9a8cc}.thumb-ground{background:linear-gradient(#7fae56,#5c4132 45%);height:10px;position:absolute;bottom:0;left:0;right:0}.game-card-title{color:var(--ink);letter-spacing:.03em;word-break:keep-all;text-align:center;font-size:clamp(1.05rem,3.4vw,1.3rem);font-weight:800}.game-card-lede{color:var(--ink-soft);font-size:clamp(.8rem,2.4vw,.9rem)}.setup-card{background-image:linear-gradient(175deg,#ffffffeb,#fff9ecc7);border:3px solid #ffffffe6;border-radius:28px;flex-direction:column;align-items:center;gap:clamp(10px,2.2vw,16px);width:min(96vw,480px);padding:clamp(16px,3.4vw,26px);display:flex;box-shadow:inset 0 2px #ffffffe6,0 8px #c8a87a59,0 16px 30px #78501e33}@media (orientation:landscape) and (height<=560px){.screen{gap:8px}.big-btn{min-height:56px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.othello-cell.hint:before{opacity:.7;scale:1}}.online-section{background:#ffffff8c;border-radius:16px;flex-direction:column;align-items:center;gap:12px;width:min(92vw,420px);padding:16px;display:flex;box-shadow:0 1px 4px #00000014}.online-row{gap:10px;width:100%;display:flex}.online-input{background:#fffdf7;border:2px solid #cdbfa5;border-radius:12px;flex:1;min-width:0;min-height:52px;padding:0 14px;font-size:1.2rem}.online-error{color:#b3402a;text-align:center;max-width:min(92vw,420px);font-size:1.05rem}.online-wait{color:#6a6156;font-size:1.05rem}.room-code{letter-spacing:.15em;color:var(--felt-3);background:#fffdf7;border:3px dashed #cdbfa5;border-radius:16px;padding:12px 28px;font-size:3rem;font-weight:700}.thinking-dots{vertical-align:baseline;gap:4px;margin-left:6px;display:inline-flex}.thinking-dots i{opacity:.85;background:currentColor;border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite thinking-bounce}.thinking-dots i:nth-child(2){animation-delay:.2s}.thinking-dots i:nth-child(3){animation-delay:.4s}@keyframes thinking-bounce{0%,60%,to{opacity:.45;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.othello-cell.last{box-shadow:inset 0 0 0 3px #ffde8299,inset 0 1px #fff3}:root{--shogi-board-1:#f6dfa8;--shogi-board-2:#efd193;--shogi-board-3:#e0bb75;--shogi-line:#482c10e6;--koma-edge-1:#dcae66;--koma-edge-2:#b98b45;--koma-face-1:#fdf2cf;--koma-face-2:#f8e4ab;--koma-face-3:#edd08a;--shogi-ink:#241505;--shogi-red:#a81d16;--lastmove-face-1:#ffe4a0;--lastmove-face-2:#ffc468;--lastmove-face-3:#f0a941;--lastmove-edge-1:#d68f2c;--lastmove-edge-2:#a76512;--koma-shape:polygon(50% 0%, 82% 14%, 97% 100%, 3% 100%, 18% 14%)}.shogi-wrap{flex-direction:column;align-items:center;gap:clamp(6px,1.6vw,12px);width:100%;display:flex}.shogi-board{--cell:calc((var(--board-size) - 2 * var(--board-pad)) / 9);aspect-ratio:1;background-color:var(--shogi-board-2);background-image: repeating-linear-gradient(91.5deg, #9260220d 0 1px, #fff4d60d 1px 3px, #92602200 3px 9px), radial-gradient(120% 80% at 25% 15%, #fff8de80, #fff8de00 60%), linear-gradient(177deg, var(--shogi-board-1), var(--shogi-board-2) 55%, var(--shogi-board-3));width:100%;box-shadow:inset 0 0 0 1.5px var(--shogi-line), inset 0 3px 14px #603a1040, inset 0 -2px 8px #603a102e, 0 1px 0 #ffeecd80;border-radius:3px;grid-template-rows:repeat(9,1fr);grid-template-columns:repeat(9,1fr);gap:0;display:grid;position:relative}.shogi-board:before{content:"";pointer-events:none;background-image:radial-gradient(circle 2.6px at center, var(--shogi-line) 94%, transparent), radial-gradient(circle 2.6px at center, var(--shogi-line) 94%, transparent), radial-gradient(circle 2.6px at center, var(--shogi-line) 94%, transparent), radial-gradient(circle 2.6px at center, var(--shogi-line) 94%, transparent), linear-gradient(to right, var(--shogi-line) 0 1px, transparent 1px), linear-gradient(to bottom, var(--shogi-line) 0 1px, transparent 1px);background-position:33.333% 33.333%,66.667% 33.333%,33.333% 66.667%,66.667% 66.667%,0 0,0 0;background-repeat:no-repeat,no-repeat,no-repeat,no-repeat,repeat,repeat;background-size:7px 7px,7px 7px,7px 7px,7px 7px,11.1111% 11.1111%,11.1111% 11.1111%;position:absolute;inset:0}.shogi-cell{touch-action:manipulation;background:0 0;border:none;justify-content:center;align-items:center;margin:0;padding:0;transition:box-shadow .16s;display:flex;position:relative}.shogi-cell.hint:before{content:"";pointer-events:none;z-index:1;background:radial-gradient(circle at 38% 32%,#78d2dcd9 0%,#1e8296a6 60%,#0a5a6e8c 100%);border-radius:50%;width:32%;height:32%;margin:-16% 0 0 -16%;animation:2.2s ease-in-out infinite hint-pulse;position:absolute;top:50%;left:50%;box-shadow:0 0 0 2px #ffffff59}.shogi-cell.hint:active:before{animation:none;scale:1.25}.shogi-cell.selected{box-shadow:inset 0 0 0 3px #f0a824d9,inset 0 1px #ffffff4d}.shogi-cell.last-to .koma{background-image:linear-gradient(172deg, var(--lastmove-edge-1), var(--lastmove-edge-2))}.shogi-cell.last-to .koma-face{background-color:var(--lastmove-face-2);background-image:repeating-linear-gradient(93deg, #9664280e 0 1px, #fff0 1px 4px), linear-gradient(172deg, var(--lastmove-face-1), var(--lastmove-face-2) 52%, var(--lastmove-face-3))}.koma-ghost{filter:grayscale(.35);pointer-events:none;animation:1.2s ease-out 5s both koma-ghost-fade}@keyframes koma-ghost-fade{0%{opacity:.3}to{opacity:0}}.koma-ghost .koma-face{box-shadow:inset 0 0 0 1.5px #462d0f80}.koma{width:80%;height:86%;clip-path:var(--koma-shape);background-image:linear-gradient(172deg, var(--koma-edge-1), var(--koma-edge-2));filter:drop-shadow(0 1.5px 1.5px #4a280873);-webkit-user-select:none;user-select:none;pointer-events:none;position:relative}.koma-face{clip-path:var(--koma-shape);font-family:Hiragino Mincho ProN,Hiragino Mincho Pro,Yu Mincho,YuMincho,Noto Serif CJK JP,Noto Serif JP,Source Han Serif JP,serif;font-weight:600;font-size:calc(var(--cell,3rem) * .5);color:var(--shogi-ink);background-color:var(--koma-face-2);background-image:repeating-linear-gradient(93deg, #9664280e 0 1px, #fff0 1px 4px), linear-gradient(172deg, var(--koma-face-1), var(--koma-face-2) 52%, var(--koma-face-3));justify-content:center;align-items:center;padding-top:5%;line-height:1;display:flex;position:absolute;inset:6%}.koma-king{width:88%;height:93%}.koma-rook,.koma-bishop{width:84%;height:90%}.koma-pawn{width:75%;height:81%}.koma.rotated{transform:rotate(180deg)}.koma.promoted .koma-face{color:var(--shogi-red)}.koma-sliding{animation:.44s cubic-bezier(.32,.86,.3,1) both koma-slide}@keyframes koma-slide{0%{translate:calc(var(--dx) * var(--cell)) calc(var(--dy) * var(--cell))}to{translate:0}}.koma-dropping{animation:.48s cubic-bezier(.3,1.35,.5,1) both koma-drop}@keyframes koma-drop{0%{translate:0 calc(var(--cell) * -.5);opacity:0;scale:1.25}60%{opacity:1}to{opacity:1;translate:0;scale:1}}.shogi-cell.captured:after{content:"";pointer-events:none;border-radius:2px;animation:.95s ease-out both koma-capture;position:absolute;inset:0}@keyframes koma-capture{0%{background:radial-gradient(circle,#ffd678f2,#ff963c80 70%,#0000);scale:1.18;box-shadow:inset 0 0 0 3px #ffb03cf2}to{background:radial-gradient(circle,#ffd67800,#ff963c00 70%,#0000);scale:1;box-shadow:inset 0 0 0 3px #ffb03c00}}@media (prefers-reduced-motion:reduce){.koma-sliding,.koma-dropping,.shogi-cell.captured:after{animation:none}}.hand-tray{min-height:52px;width:var(--board-size);background-color:#e9cb9c;background-image:repeating-linear-gradient(92deg,#9260220d 0 1px,#fff4d60f 1px 3px,#92602200 3px 10px),linear-gradient(176deg,#f1d6ab,#e6c493 55%,#d8b177);border-radius:10px;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;padding:6px clamp(8px,2vw,14px);display:flex;box-shadow:inset 0 1px #fff6e0d9,inset 0 -2px 5px #603a1033,0 2px 5px #603a102e}.hand-empty{color:var(--ink-soft);opacity:.75;font-size:.9rem}.hand-slot{border-radius:var(--radius-sm);touch-action:manipulation;cursor:default;background:0 0;border:2px solid #0000;align-items:center;gap:4px;min-width:44px;min-height:44px;padding:4px 10px;font-family:inherit;display:inline-flex}.hand-slot.hand-slot-static{opacity:.92}button.hand-slot{cursor:pointer;border-color:#b48c5a4d}button.hand-slot:active{background:#f0a82429}button.hand-slot.selected{background:#ffd05f59;border-color:#d59a12;box-shadow:0 0 0 3px #ffd05f59}.hand-slot .koma{flex:none;width:29px;height:33px;position:relative}.hand-slot .koma-face{padding-top:4%;font-size:.95rem}.hand-count{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:700}.promotion-preview{justify-content:center;align-items:center;gap:clamp(10px,3vw,18px);display:flex}.promo-glyph{color:var(--shogi-ink);font-size:clamp(1.8rem,8vw,2.6rem);font-weight:800;line-height:1}.promo-glyph.promoted{color:var(--shogi-red)}.promo-arrow{color:var(--ink-soft);font-size:clamp(1.3rem,5vw,1.8rem)}.pill.check-pill{color:#fff7f8;background-image:linear-gradient(180deg, #ffa8b6, var(--berry-2) 55%, #cf465f);text-shadow:0 1px 2px #6e142366;border:2px solid #b1354b;border-radius:999px;justify-content:center;align-items:center;min-height:36px;padding:4px 20px;font-size:1rem;font-weight:800;animation:.26s cubic-bezier(.25,1.5,.45,1) both check-pop;display:inline-flex;box-shadow:0 3px #a83249,0 6px 12px #9632464d}@keyframes check-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.shogi-cell.hint:before{opacity:.7;scale:1}}.board-stage{width:var(--board-size);flex-direction:column;align-items:center;display:flex;position:relative}.board-stage.thinking:after{content:"";pointer-events:none;border-radius:var(--radius-lg);animation:2s ease-in-out infinite thinking-frame;position:absolute;inset:0}@keyframes thinking-frame{0%,to{box-shadow:inset 0 0 0 3px #f0a82447,inset 0 0 22px #f0a8241a}50%{box-shadow:inset 0 0 0 3px #f0a824a8,inset 0 0 34px #f0a8243d}}.turn-bar{width:var(--board-size);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;min-height:60px;padding:4px 8px;display:flex}.turn-pill{text-align:center;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:8px clamp(12px,3vw,20px);font-size:clamp(1rem,3.2vw,1.2rem);font-weight:700;line-height:1.15;display:inline-flex}.turn-pill.mine{color:#fffdf7;text-shadow:0 1px 2px #0a371980;background-image:linear-gradient(#6bd089,#2f9a55 55%,#1f7d40);border:3px solid #17703a;box-shadow:inset 0 2px #fff6,0 3px #175f31,0 6px 12px #195f324d}.turn-pill.busy,.turn-pill.done{color:var(--ink);background-image:linear-gradient(#fffdf6,#f5e8cf);border:3px solid #ddc39b;box-shadow:inset 0 2px #ffffffe6,0 3px #d9bd92,0 5px 10px #78501e29}.thinking-spinner{border:4px solid #78552340;border-top-color:#e0932a;border-radius:50%;flex:none;width:20px;height:20px;animation:.9s linear infinite thinking-spin}@keyframes thinking-spin{to{rotate:360deg}}.notice-chip{border-radius:999px;align-items:center;min-height:40px;padding:4px 16px;font-size:clamp(.9rem,2.8vw,1.05rem);font-weight:700;animation:.22s cubic-bezier(.3,1.4,.5,1) both notice-in;display:inline-flex}.notice-chip.check{color:#fff7f8;background-image:linear-gradient(180deg, #ffa8b6, var(--berry-2) 55%, #cf465f);text-shadow:0 1px 2px #6e142366;border:2px solid #b1354b}.notice-chip.warn{color:#4a3410;background-image:linear-gradient(#fff2cd,#ffe3a0);border:2px solid #dfae4c}@keyframes notice-in{0%{opacity:0;scale:.9}to{opacity:1;scale:1}}@media (prefers-reduced-motion:reduce){.thinking-spinner,.notice-chip,.board-stage.thinking:after,.disc.flipping{animation:none}.board-stage.thinking:after{box-shadow:inset 0 0 0 3px #f0a82499}}.btn.action{color:#fffaf0;background-image:linear-gradient(180deg, #ffd06a, var(--sun-2) 45%, #e07a09);text-shadow:0 1px 2px #6e370073;border-color:#b45c05;box-shadow:inset 0 2px #ffffff80,0 4px #b4600a,0 7px 12px #96550a47}.shogi-cell.movable .koma{filter:drop-shadow(0 1.5px 1.5px #4a280873)drop-shadow(0 0 4px #28aa5af2)}.runner-screen{gap:clamp(8px,1.6vw,14px)}.runner-title{color:#b05a2a;line-height:1.3}.pixel-art{image-rendering:pixelated}.runner-hero{filter:drop-shadow(0 6px 12px #3c1e0a59);animation:2.4s ease-in-out infinite hero-bob}@keyframes hero-bob{0%,to{translate:0;rotate:-2deg}50%{translate:0 -6px;rotate:2deg}}@media (prefers-reduced-motion:reduce){.runner-hero{animation:none}}.runner-cast{justify-content:center;align-items:flex-end;gap:12px;display:flex}.runner-cast canvas{filter:drop-shadow(0 4px 8px #3c1e0a4d)}.runner-lede{text-align:center;color:var(--ink);font-weight:700;line-height:1.8}.runner-help{text-align:center;color:var(--ink-soft);border-radius:var(--radius-md);background:#ffffff8c;padding:10px 18px;font-size:.95rem;line-height:1.9}.runner-canvas{aspect-ratio:16/9;width:min(96vw,720px);image-rendering:pixelated;background:#1b2450;border-radius:10px;box-shadow:0 0 0 4px #57310f,0 10px 24px #28140566}.runner-controls{justify-content:space-between;align-items:center;gap:8px;width:min(96vw,720px);display:flex}.runner-dpad,.runner-actions{gap:10px;display:flex}.runner-btn{min-width:72px;min-height:64px;color:var(--ink);border-radius:var(--radius-md);touch-action:none;-webkit-user-select:none;user-select:none;cursor:pointer;background-image:linear-gradient(#fff,#fbf4e6 60%,#f3e8d3);border:3px solid #c6a97f;padding:8px 16px;font-family:inherit;font-size:1.15rem;font-weight:800;box-shadow:inset 0 2px #ffffffe6,0 4px #d6bb95,0 7px 12px #78501e2e}.runner-btn:active{transform:translateY(3px);box-shadow:inset 0 2px #ffffffb3,0 1px #00000026}.runner-btn.jump{color:#fffdf7;text-shadow:0 1px 2px #0a371980;background-image:linear-gradient(#6bd089,#2f9a55 55%,#1f7d40);border-color:#17703a;box-shadow:inset 0 2px #fff6,0 4px #175f31,0 7px 12px #195f324d}.runner-btn.attack{color:#fffaf0;text-shadow:0 1px 2px #6e370073;background-image:linear-gradient(#ffd06a,#f79a1b 55%,#e07a09);border-color:#b45c05;box-shadow:inset 0 2px #ffffff80,0 4px #b4600a,0 7px 12px #96550a47}.runner-pause{min-width:84px}.d10-screen{gap:clamp(8px,1.6vh,14px)}.d10-title{margin:0}.d10-demo{align-items:center;gap:10px;display:flex}.d10-demo .d10-block{width:54px;height:62px;font-size:1.7rem}.d10-demo-op{color:var(--ink-soft);font-size:1.5rem;font-weight:800}.d10-demo-ten{color:#c8860a;text-shadow:0 2px #fffc;font-size:2rem;font-weight:900;transform:rotate(-6deg)}.d10-block{color:#33243a;-webkit-user-select:none;user-select:none;background-clip:padding-box;border:2px solid #0000;border-radius:10px;justify-content:center;align-items:center;font-weight:900;display:inline-flex;position:relative}.d10-v1{background-color:#ffd2d6;background-image:linear-gradient(#ffffff8c,#fff0 55%)}.d10-v9{background-color:#f9909c;background-image:linear-gradient(#ffffff73,#fff0 55%)}.d10-v2{background-color:#ffe0b8;background-image:linear-gradient(#ffffff8c,#fff0 55%)}.d10-v8{background-color:#f7b24e;background-image:linear-gradient(#ffffff73,#fff0 55%)}.d10-v3{background-color:#d3edb6;background-image:linear-gradient(#ffffff8c,#fff0 55%)}.d10-v7{background-color:#8ecf6c;background-image:linear-gradient(#ffffff73,#fff0 55%)}.d10-v4{background-color:#cfe4ff;background-image:linear-gradient(#ffffff8c,#fff0 55%)}.d10-v6{background-color:#7fb7f0;background-image:linear-gradient(#ffffff73,#fff0 55%)}.d10-v5{background-color:#ddd0f5;background-image:linear-gradient(#ffffff8c,#fff0 55%)}.d10-hud{justify-content:space-between;align-items:center;gap:10px;width:min(92vw,40vh,380px);display:flex}.d10-hud-label{color:var(--ink-soft);font-size:.72rem;font-weight:700;display:block}.d10-score strong,.d10-best strong{color:var(--ink);font-size:1.25rem}.d10-next-block{width:34px;height:40px;font-size:1.1rem}.d10-pause-btn{min-height:44px}.d10-board{aspect-ratio:.58;border-radius:var(--radius-md);touch-action:none;cursor:pointer;background:repeating-linear-gradient(90deg,#8c64320d 0 16.6667%,#8c64321a 16.6667% 33.3333%),linear-gradient(#fffdf4,#f6ecd6);border:3px solid #c6a97f;width:min(88vw,30vh,320px);position:relative;overflow:hidden;box-shadow:inset 0 3px 10px #5a370f2e}.d10-cell{font-size:clamp(16px,3.4vh,26px);animation:.17s ease-out d10-pop;position:absolute}@keyframes d10-pop{0%{transform:scale(.6)}to{transform:scale(1)}}.d10-falling{z-index:2;filter:drop-shadow(0 4px 5px #50320a4d);flex-direction:column}.d10-hi{z-index:2;animation:.42s ease-in-out infinite alternate d10-hi-pulse}@keyframes d10-hi-pulse{0%{filter:brightness(1.08);transform:scale(1.02);box-shadow:inset 0 0 0 3px #ffbe28a6}to{filter:brightness(1.25);transform:scale(1.08);box-shadow:inset 0 0 0 4px #ffaa14}}.d10-fx{z-index:3;pointer-events:none;justify-content:center;align-items:center;font-weight:900;animation:.9s ease-out both d10-float;display:flex;position:absolute}.d10-fx-ten{color:#c8860a;text-shadow:0 0 6px #ffffffe6,0 2px #fffc;font-size:clamp(20px,4vh,30px)}.d10-fx-points{color:#1c7c3c;text-shadow:0 0 6px #ffffffe6;font-size:clamp(14px,2.6vh,20px)}@keyframes d10-float{0%{opacity:0;transform:translateY(6px)scale(.7)}25%{opacity:1;transform:translateY(0)scale(1.12)}to{opacity:0;transform:translateY(-26px)scale(1)}}.d10-notice{border-radius:var(--radius-md);background:#fffdf4bf;border:2px solid #c6a97f73;flex-direction:column;justify-content:center;align-items:center;gap:2px;width:min(92vw,40vh,380px);min-height:56px;display:flex}.d10-notice-eq{color:var(--ink);font-size:1.35rem;font-weight:900}.d10-notice-sub{color:var(--ink-soft);font-size:.85rem;font-weight:700}.d10-notice.is-ten{background:#eaf9e6;border-color:#74c464}.d10-notice.is-ten .d10-notice-eq,.d10-notice.is-ten .d10-notice-sub{color:#1c7c3c}.d10-notice.is-over{background:#fdf1e2;border-color:#e0a35c}.d10-notice.is-over .d10-notice-eq,.d10-notice.is-over .d10-notice-sub{color:#a25f16}.d10-controls{align-items:center;gap:14px;display:flex}.d10-move{min-width:84px}.d10-drop{color:#fffdf7;text-shadow:0 1px 2px #0a371980;background-image:linear-gradient(#6bd089,#2f9a55 55%,#1f7d40);border-color:#17703a;min-width:128px;box-shadow:inset 0 2px #fff6,0 4px #175f31,0 7px 12px #195f324d}.d10-result-score strong{font-size:1.5rem}.d10-newbest{color:#c8860a;font-weight:900}.visual-drop10{background:linear-gradient(165deg,#fff3c9,#ffd98a)}.thumb-drop10{align-items:center;gap:7px;display:flex}.thumb-d10-block{width:36px;height:42px;font-size:1.25rem}.thumb-d10-op{color:#8a6a2a;font-size:1.1rem;font-weight:800}.thumb-d10-ten{color:#b3720a;text-shadow:0 1px #ffffffd9;font-size:1.5rem;font-weight:900;transform:rotate(-8deg)}.eval-meter{flex-direction:column;align-items:center;gap:3px;width:20px;display:flex;position:absolute;top:0;bottom:0;left:2px}.board-stage.has-meter{width:calc(var(--board-size) + 28px);padding-left:28px}.eval-bar{border:2px solid #a8845a;border-radius:999px;flex:1;width:15px;position:relative;overflow:hidden;box-shadow:inset 0 2px 5px #3c230a4d,0 2px 4px #78501e33}.eval-first{background:linear-gradient(90deg,#ffd27a,#f0a11c 60%,#d8890c)}.eval-second{background:linear-gradient(90deg,#8fb9ec,#4a7cc4 60%,#3a66a8)}.eval-black{background:linear-gradient(90deg,#565b68,#24262e 60%,#14151b)}.eval-white{background:linear-gradient(90deg,#fff,#e7e9f2 60%,#c3c8d8)}.eval-fill{transition:height .7s;position:absolute;bottom:0;left:0;right:0}.eval-mid{background:#28190873;height:2px;margin-top:-1px;position:absolute;top:50%;left:0;right:0}.eval-cap{font-size:.72rem;font-weight:800;line-height:1}.eval-cap-first{color:#c07908}.eval-cap-second{color:#33619e}.eval-cap-black{color:#24262e}.eval-cap-white{color:#8a8fa3}.eval-caption-line{min-height:1.25em;color:var(--ink);margin:0;font-size:clamp(.74rem,2vw,.84rem);font-weight:700;line-height:1.25}.tk-pan{border-radius:var(--radius-lg,22px);background:radial-gradient(120% 100% at 30% 20%,#ffffff14,#fff0 55%),linear-gradient(#4a4f57,#33373e 70%,#24272d);border:3px solid #1d1f24;padding:clamp(12px,2.6vw,20px);box-shadow:inset 0 2px 2px #ffffff24,0 6px #17181c,0 12px 22px #14141966}.tk-grid{aspect-ratio:1;touch-action:none;cursor:pointer;gap:clamp(6px,1.4vw,10px);width:min(84vw,52vh,430px);display:grid;position:relative}.tk-cell{background:radial-gradient(circle at 50% 42%,#17191d 58%,#3a3e46 78%,#2b2e35 100%);border-radius:50%;justify-content:center;align-items:center;display:flex;position:relative;box-shadow:inset 0 3px 6px #0000008c}.tk-ball{background:radial-gradient(circle at 36% 30%,#ffe1a4,#f0b45a 52%,#c67d26 88%,#a9631a);border-radius:50%;width:84%;height:84%;transition:transform .25s,opacity .25s,filter .25s;position:relative;box-shadow:0 3px 5px #00000073,inset 0 -3px 6px #8c4b0f8c}.tk-ball:before{content:"";background:radial-gradient(circle at 35% 30%,#ffffff47,#fff0 45%),linear-gradient(#8a4517,#6b3410);border-radius:48% 52% 55% 45%/60% 55% 45% 40%;height:46%;position:absolute;top:8%;left:12%;right:12%}.tk-ball:after{content:"";background:radial-gradient(circle at 30% 24%,#4d7c2e 0 5%,#0000 6%),radial-gradient(circle at 52% 32%,#57893a 0 4%,#0000 5%),radial-gradient(circle at 66% 20%,#e78fa0 0 4.5%,#0000 5.5%),radial-gradient(circle at 40% 40%,#4d7c2e 0 3.5%,#0000 4.5%);border-radius:50%;position:absolute;inset:0}.tk-cell.eaten .tk-ball{opacity:0;transform:scale(.45)}.tk-cell.preview .tk-ball{filter:brightness(1.15);transform:scale(1.08)}.tk-strokes{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.tk-stroke{stroke-width:22px;stroke-linecap:round;fill:none;opacity:.82}.tk-stroke-first{stroke:#e0432d}.tk-stroke-second{stroke:#2f6fd0}.tk-stroke-preview{stroke:#ffd23e;opacity:.6;stroke-width:30px}.board-stage.tk-stage{width:auto}.tk-rule-note{color:var(--ink-soft);margin:0;font-size:clamp(.8rem,2.2vw,.9rem);font-weight:700}.tk-pen{border:2px solid #ffffffb3;border-radius:50%;width:16px;height:16px;display:inline-block;box-shadow:0 1px 2px #00000040}.tk-pen.red{background:#e0432d}.tk-pen.blue{background:#2f6fd0}.visual-takoyaki{background:linear-gradient(170deg,#4a4f57,#26292f)}.thumb-takoyaki{aspect-ratio:1;grid-template-columns:repeat(3,1fr);gap:7px;width:64%;max-height:88%;display:grid;position:relative}.thumb-tk-ball{background:radial-gradient(circle at 36% 30%,#ffe1a4,#f0b45a 52%,#c67d26 88%,#a9631a);border-radius:50%;box-shadow:0 2px 3px #00000073}.thumb-tk-lines{width:100%;height:100%;position:absolute;inset:0}.thumb-tk-lines .tk-stroke{stroke-width:7px}.db-paper{border-radius:var(--radius-lg,22px);background:repeating-linear-gradient(0deg,#7896be0f 0 1px,#7896be00 1px 26px),linear-gradient(#fff,#f7f4ec);border:3px solid #d8cbb2;padding:clamp(10px,2.2vw,16px);box-shadow:inset 0 2px #ffffffe6,0 6px #cbbd9f,0 12px 22px #785f2833}.db-svg{aspect-ratio:1;touch-action:none;width:min(84vw,52vh,430px);display:block}.db-dot{fill:#33302b}.db-slot{stroke:#ddd3bf;stroke-width:8px;stroke-linecap:round;stroke-dasharray:2 14}.db-hit{stroke:#0000;stroke-width:44px;stroke-linecap:butt;cursor:pointer}.db-line{stroke-width:11px;stroke-linecap:round;pointer-events:none}.db-line-first{stroke:#e0432d}.db-line-second{stroke:#2f6fd0}.db-last{animation:.9s ease-out db-last-pulse}@keyframes db-last-pulse{0%{stroke-width:18px;opacity:.5}to{stroke-width:11px;opacity:1}}.db-box{opacity:.85;animation:.35s ease-out db-box-in}@keyframes db-box-in{0%{opacity:0;transform-origin:50%;transform-box:fill-box;transform:scale(.7)}to{opacity:.85;transform-origin:50%;transform-box:fill-box;transform:scale(1)}}.visual-dotsboxes{background:linear-gradient(170deg,#fff,#ece5d4)}.sq-screen{--sq-cell:min(11vw, 6.2vh, 54px);--sq-wcell:min(11.5vw, 6.6vh, 58px);--sq-band-h:min(66vw, 37vh, 296px);--sq-ink:#f7e9cb;--sq-ink-soft:#c6b291;--sq-gold:#ffc94d;--sq-gold-deep:#b9821f;--sq-stone-1:#2b2340;--sq-stone-2:#201a32;--sq-stone-edge:#4a3d66;--sq-emerald:#6fe4a3;--sq-ember:#ff8a5c;color:var(--sq-ink)}.sq-screen:before{content:"";z-index:-1;background-color:#0e1a3c;background-image: radial-gradient(circle at 14% 12%, #ffffffd9 0 1.5px, transparent 2px), radial-gradient(circle at 72% 8%, #ffffffb3 0 1.5px, transparent 2px), radial-gradient(circle at 33% 20%, #fff9 0 1px, transparent 1.5px), radial-gradient(circle at 88% 18%, #ffffffbf 0 1.5px, transparent 2px),  conic-gradient(from 135deg at 22% 62%, transparent 0 25%, #1b2c55 0 50%, transparent 0), conic-gradient(from 135deg at 58% 60%, transparent 0 25%, #16264a 0 50%, transparent 0), conic-gradient(from 135deg at 86% 63%, transparent 0 25%, #1b2c55 0 50%, transparent 0),  linear-gradient(180deg, transparent 0 66%, #1d3a2a 66%, #16301f 100%),  linear-gradient(180deg, #0b1533 0%, #16255089 45%, #1d3557 66%);position:fixed;inset:0}@supports (height:1dvh){.sq-screen{--sq-cell:min(11vw, 6.2dvh, 54px);--sq-wcell:min(11.5vw, 6.6dvh, 58px);--sq-band-h:min(66vw, 37dvh, 296px)}}.sq-screen button{touch-action:manipulation}.sq-battle-screen{justify-content:flex-start}.sq-title{color:var(--sq-gold);letter-spacing:.04em;text-shadow:0 2px #6b3d10,0 0 18px #ffaa3c80}.sq-subtitle{color:var(--sq-ink-soft);letter-spacing:.1em;font-weight:700}.sq-title-heroes{align-items:flex-end;gap:10px;display:flex}.sq-head{justify-content:space-between;align-items:center;gap:10px;width:100%;display:flex}.sq-head-title{color:var(--sq-ink-soft);font-weight:700}.sq-dots{gap:10px;padding:6px 2px;display:flex}.sq-dot{background:#0a061480;border:3px solid #8a6a3a;border-radius:50%;width:16px;height:16px}.sq-dot.is-done{background:var(--grass-2);border-color:#176b37}.sq-dot.is-now{background:var(--sun-1);border-color:#c98b12;box-shadow:0 0 0 4px #ffd05f80}.sq-battle{flex-direction:column;flex:1;align-items:center;gap:clamp(6px,1.6vw,12px);width:100%;display:flex}.sq-stage{flex-direction:column;gap:6px;width:100%;display:flex}.sq-stage-row{align-items:stretch;gap:clamp(4px,1.4vw,10px);width:100%;display:flex}.sq-heroes{flex-direction:column;justify-content:flex-end;gap:4px;display:flex;position:relative}.sq-heroes.is-hit{animation:.38s sq-shake}.sq-heroes.is-hit:after{content:"";border-radius:var(--radius-md);pointer-events:none;background:radial-gradient(circle,#e75d7666,#e75d7600 70%);animation:.38s both sq-flash;position:absolute;inset:-6px}@keyframes sq-shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(5px)}60%{transform:translate(-4px)}80%{transform:translate(3px)}}@keyframes sq-flash{0%{opacity:1}to{opacity:0}}.sq-heroes-art{align-items:flex-end;gap:2px;display:flex}.sq-buddy-art.is-attack{animation:.4s ease-in-out sq-buddy-fly}@keyframes sq-buddy-fly{0%{transform:translate(0)}55%{transform:translate(min(38vw,300px),-12px)}to{transform:translate(0)}}.sq-hearts{gap:2px;font-size:1.35rem;line-height:1;display:flex}.sq-heart.is-on{color:#e75d76;text-shadow:0 1px #fff}.sq-heart.is-off{color:#a3968a}.sq-band{min-height:var(--sq-band-h);border-radius:var(--radius-md);background-image:radial-gradient(circle at 12% 26%,#ffbe5abf 0 4px,#0000 5px),radial-gradient(circle at 30% 74%,#ff824699 0 3px,#0000 4px),radial-gradient(circle at 52% 20%,#ffd28299 0 5px,#0000 6px),radial-gradient(circle at 70% 80%,#ff96508c 0 4px,#0000 5px),radial-gradient(circle at 88% 34%,#ffbe5ab3 0 3px,#0000 4px),linear-gradient(255deg,#ff78326b,#783c824d 60%,#281c3e80);border:3px solid #ffa04666;flex:1;box-shadow:inset 0 0 24px #ff8c3c40,0 0 16px #00000059}.sq-band-host{width:100%;height:100%;min-height:inherit;justify-content:center;align-items:center;padding:6px;display:flex}.sq-band-solo{flex:none;width:100%;min-height:min(30vw,16vh,120px)}.sq-enemy-side{flex-direction:column;justify-content:flex-end;align-items:center;gap:4px;display:flex;position:relative}.sq-enemy-name{color:var(--sq-ink);font-size:clamp(.85rem,2.6vw,1rem);font-weight:700}.sq-hpbar{background:#0a06148c;border:2px solid #a58a5e;border-radius:999px;width:min(30vw,20vh,140px);height:12px;overflow:hidden}.sq-hpbar i{background:linear-gradient(180deg, #7fdc95, var(--grass-2));height:100%;transition:width .3s;display:block}.sq-enemy{border-radius:var(--radius-md);background:0 0;border:none;min-width:44px;min-height:44px;padding:4px;transition:opacity .4s,transform .4s}.sq-enemy:disabled{opacity:1}.sq-enemy-art{display:block}.sq-enemy.is-glow{filter:drop-shadow(0 0 12px #ffd93b)drop-shadow(0 0 4px #ffd93b);cursor:pointer;animation:1.1s ease-in-out infinite sq-glow}@keyframes sq-glow{0%,to{filter:drop-shadow(0 0 12px #ffd93b)drop-shadow(0 0 4px #ffd93b)}50%{filter:drop-shadow(0 0 18px #ffd93b)drop-shadow(0 0 8px #fff3d6)}}.sq-enemy.is-hit{animation:.38s sq-enemy-hit}@keyframes sq-enemy-hit{0%,to{transform:translate(0)}25%{filter:brightness(1.6);transform:translate(7px)}60%{transform:translate(-5px)}}.sq-enemy.is-gone{opacity:0;transform:translateY(14px)}.sq-damage{z-index:5;color:#fffdf6;text-shadow:0 0 4px #b1354b,0 2px #8f1f33,0 4px 10px #5a0a1980;pointer-events:none;font-size:clamp(1.6rem,6vw,2.2rem);font-weight:700;animation:.4s both sq-damage-pop;position:absolute;top:8%;right:24%}@keyframes sq-damage-pop{0%{opacity:0;transform:translateY(8px)scale(.6)}to{opacity:1;transform:translateY(0)scale(1)}}.sq-meters{flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(10px,3vw,24px);width:100%;display:flex}.sq-meter{align-items:center;gap:6px;display:flex}.sq-meter-label{color:var(--sq-ink-soft);font-size:.85rem;font-weight:700}.sq-energy{gap:4px;display:flex}.sq-energy i{background:#0a06148c;border:2px solid #3f8f63;border-radius:6px;width:28px;height:16px}.sq-energy i.is-on{background:linear-gradient(180deg, #7fdc95, var(--grass-2));box-shadow:0 0 6px #6ed07fcc}.sq-funbari{background:#0a06148c;border:2px solid #d1873a;border-radius:999px;width:min(38vw,200px);height:14px;overflow:hidden}.sq-funbari i{background:linear-gradient(180deg, #ffd06a, var(--sun-2));height:100%;transition:width .2s linear;display:block}.sq-notice{text-align:center;justify-content:center;align-items:center;width:100%;min-height:2.3em;font-size:clamp(1rem,3.4vw,1.2rem);font-weight:700;display:flex}.sq-notice.is-ok{color:var(--sq-emerald)}.sq-notice.is-warn{color:var(--sq-ember)}.sq-area{flex:1;justify-content:center;align-items:flex-start;width:100%;display:flex}.sq-area-empty{color:var(--sq-ink);align-self:center;font-size:clamp(1.1rem,4vw,1.4rem);font-weight:700}.is-off,.sq-anzan.is-off,.sq-hissan-wrap.is-off,.sq-wari-wrap.is-off,.sq-tray.is-off{pointer-events:none}.sq-tray{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;width:100%;display:flex}.sq-block{color:#3a2a12;border-radius:var(--radius-sm);cursor:grab;background-image:linear-gradient(#fff,#fdf3e0 60%,#f6e6cb);border:3px solid #b98f57;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:2px 8px;font-size:clamp(1.15rem,4vw,1.4rem);font-weight:700;display:inline-flex;box-shadow:inset 0 2px #ffffffe6,0 3px #cba470,0 5px 8px #78501e38}.sq-block.is-picked{color:#4a2d05;background-image:linear-gradient(#ffeaa8,#ffd05f 55%,#f7b32b);border-color:#c98b12;box-shadow:inset 0 2px #ffffffd9,0 3px #d59a12,0 0 0 4px #ffd05f73}.sq-block.in-slot{box-shadow:inset 0 2px #ffffffe6}.sq-anzan{flex-direction:column;align-items:center;width:100%;display:flex}.sq-anzan-eqs{flex-direction:column;gap:clamp(6px,2vw,14px);display:flex}.sq-anzan-eq{color:var(--sq-ink);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;font-size:clamp(1.3rem,5vw,1.8rem);font-weight:700;display:flex}.sq-num{text-align:center;min-width:1.4em}.sq-op{color:var(--sq-ink-soft)}.sq-amari{font-size:.7em}.sq-slot{border-radius:var(--radius-sm);background:#0a061473;border:3px dashed #a58a5e;justify-content:center;align-items:center;min-width:54px;min-height:50px;display:inline-flex;box-shadow:inset 0 3px 8px #00000073}.sq-slot.is-open{border-color:var(--sq-emerald);box-shadow:inset 0 3px 8px #00000073,0 0 0 4px #6fe4a34d}.sq-slot.is-hover{border-style:solid;border-color:var(--sq-emerald);background:#6fe4a338;box-shadow:0 0 0 5px #6fe4a373}.sq-slot.is-wrong{animation:.38s sq-wrong-flash}.is-rescue .sq-slot{box-shadow:0 0 0 4px #ffd05f8c}@keyframes sq-wrong-flash{0%,to{background:#ffffffbf}40%{background:#ffd6dd;border-color:#e75d76}}.sq-hissan-wrap{border-radius:var(--radius-md);background-image:linear-gradient(#f6ead0,#eadcbd 70%,#e0cfab);justify-content:center;width:100%;padding:clamp(10px,2.5vw,18px) clamp(8px,3vw,22px);display:flex;box-shadow:inset 0 0 0 2px #ffffff80,0 0 0 3px #8a6a3a,0 10px 22px #00000073}.sq-hissan-wrap .sq-cell,.sq-hissan-wrap .sq-num{color:#3a2a12}.sq-hissan-wrap .sq-cell-op{color:#6b5236}.sq-hissan{place-content:start center;gap:4px 6px;display:grid}.sq-pos{min-height:var(--sq-cell);justify-content:center;align-items:center;display:flex;position:relative}.sq-hline{background:#3a2a12;border-radius:2px;align-self:center;width:100%;height:4px}.sq-cell{width:var(--sq-cell);height:var(--sq-cell);font-weight:700;font-size:calc(var(--sq-cell) * .52);color:var(--sq-ink);border-radius:var(--radius-sm);justify-content:center;align-items:center;display:inline-flex}.sq-cell-given{background:0 0}.sq-cell-given.is-slashed{background-image:linear-gradient(to top right,#0000 44%,#b1354b 44% 56%,#0000 56%)}.sq-cell-op{color:var(--sq-ink-soft)}.sq-cell.sq-hi{background:#ffd05f8c;box-shadow:0 0 0 3px #f79a1b66}.is-rescue .sq-cell.sq-hi{background:#ffd05fd9;box-shadow:0 0 0 4px #f79a1ba6,0 0 12px #f79a1bb3}.sq-cell-ans{background:#fffdf6;border:3px dashed #b09263}.sq-cell-ans.is-filled{border-style:solid;border-color:#b98f57}.sq-cell-ans.is-done{background:#fdf7ea;border-style:solid;border-color:#d8c9ae}.sq-cell-ans.is-future{color:#857254;background:#ffffff80;border-color:#ddd0b8}.sq-cell-ans.is-current{border-color:var(--sun-2);box-shadow:0 0 0 4px #f79a1b59}.is-rescue .sq-cell-ans.is-current{box-shadow:0 0 0 5px #f79a1b99,0 0 14px #f79a1ba6}.sq-cell-ans.is-open{border-color:var(--grass-2);box-shadow:0 0 0 4px #6ed07f59}.sq-cell-ans.is-hover{border-style:solid;border-color:var(--grass-3);background:#eaffe9;box-shadow:0 0 0 5px #6ed07f80}.sq-cell-ans.is-wrong{animation:.38s sq-wrong-flash}.sq-op-hint{font-size:calc(var(--sq-cell) * .34);color:var(--sq-ink-soft);pointer-events:none;z-index:3;background:#fffdf6;border:2px solid #ddd0b8;border-radius:50%;justify-content:center;align-items:center;width:1.6em;height:1.6em;display:flex;position:absolute;top:-.55em;left:-.55em}.sq-cell-small{width:calc(var(--sq-cell) * .62);height:calc(var(--sq-cell) * .62);font-size:calc(var(--sq-cell) * .34);background:#fffdf6;border:2px dashed #b09263;position:relative}.sq-cell-small:before{content:"";inset:calc((44px - var(--sq-cell) * .62) / -2);position:absolute}.sq-cell-small.is-filled{border-style:solid;border-color:#b98f57}.sq-cell-small.is-done{background:#fdf7ea;border-style:solid;border-color:#d8c9ae}.sq-cell-small.is-future{color:#857254;border-color:#ddd0b8}.sq-cell-small.is-current{border-color:var(--sun-2);box-shadow:0 0 0 3px #f79a1b59}.sq-cell-small.is-open{border-color:var(--grass-2);box-shadow:0 0 0 3px #6ed07f59}.sq-cell-small.is-hover{border-style:solid;border-color:var(--grass-3);background:#eaffe9}.sq-cell-small.is-wrong{animation:.38s sq-wrong-flash}.sq-cell-carry{z-index:2;position:absolute;top:-30%;right:-12%}.sq-cell-borrow{position:relative}.sq-wari-wrap{border-radius:var(--radius-md);background-image:linear-gradient(#f6ead0,#eadcbd 70%,#e0cfab);flex-direction:column;align-items:center;gap:8px;width:100%;padding:clamp(10px,2.5vw,18px) clamp(8px,3vw,22px);display:flex;box-shadow:inset 0 0 0 2px #ffffff80,0 0 0 3px #8a6a3a,0 10px 22px #00000073}.sq-wari-wrap .sq-cell,.sq-wari-wrap .sq-wari-qcell{color:#3a2a12}.sq-wari-wrap .sq-cell-op,.sq-wari-wrap .sq-wari-hint{color:#6b5236}.sq-wari{flex-direction:column;gap:4px;display:flex}.sq-wari-row{justify-content:center;gap:0 6px;display:grid;position:relative}.sq-wari-row .sq-cell{width:var(--sq-wcell);height:var(--sq-wcell);font-size:calc(var(--sq-wcell) * .52)}.sq-wari-qcell{justify-content:center;align-items:center;display:flex}.sq-cell-wdone{background:0 0}.sq-wari-paren{border-right:4px solid #3a2a12;border-radius:0 0 100%;justify-self:end;width:55%;height:100%}.sq-wari-dividend{border-top:4px solid #3a2a12;border-radius:0}.sq-wari-quotient{min-height:var(--sq-wcell)}.sq-wari-line{background:var(--sq-ink);pointer-events:none;z-index:1;border-radius:2px;align-self:end;height:4px;transform:translateY(3px)}.sq-q-tentative{color:#6a4f9e}.sq-orosu-src{cursor:grab;background:#fff8e3;padding:0;box-shadow:0 0 0 3px #f79a1b80}.sq-orosu-src.is-picked{background:#ffeaa8;box-shadow:0 0 0 4px #ffd05fcc}.sq-orosu-src{position:relative}.sq-orosu-arrow{font-size:calc(var(--sq-wcell) * .4);color:var(--sun-3);pointer-events:none;font-weight:700;animation:1s ease-in-out infinite sq-bob;position:absolute;bottom:-1.1em;left:50%;transform:translate(-50%)}@keyframes sq-bob{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,5px)}}.sq-orosu-slot.is-open{border-color:var(--sun-2);box-shadow:0 0 0 4px #f79a1b66}.sq-wari-hint{color:var(--sq-ink-soft);text-align:center;font-weight:700}.sq-tatenaosu{margin-top:2px}.sq-fade{animation:.38s forwards sq-fade-out}@keyframes sq-fade-out{0%{opacity:1}to{opacity:0}}.sq-sabaku{min-width:min(80vw,300px)}.sq-cutin{z-index:30;color:#fffdf6;background-image:linear-gradient(180deg, #7fdc95, var(--grass-2) 55%, #1f8a45);text-shadow:0 2px 3px #0c3c1c73;pointer-events:none;white-space:nowrap;border:4px solid #fff;border-radius:999px;padding:14px 26px;font-size:clamp(1.4rem,5.5vw,2.1rem);font-weight:700;animation:.26s cubic-bezier(.25,1.35,.5,1) both sq-cutin-pop;position:fixed;top:42%;left:50%;transform:translate(-50%,-50%);box-shadow:0 10px 26px #28160559}.sq-cutin.is-critical{background-image:linear-gradient(180deg, #ffd06a, var(--sun-2) 50%, #e07a09);text-shadow:0 2px 3px #6e370080;box-shadow:0 0 0 6px #ffd05f80,0 10px 26px #28160559}@keyframes sq-cutin-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.55)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.sq-gameover-title{color:var(--sq-ink-soft);text-shadow:0 1px #fff}.sq-gameover-stage{align-items:flex-end;gap:2px;padding:10px 0;display:flex}.sq-hero-down{transform:rotate(-78deg)translateY(8px)}.sq-buddy-guard{margin-left:-8px}.sq-gameover-text{color:var(--sq-ink-soft);font-size:clamp(1.1rem,4vw,1.35rem);font-weight:700}.sq-clear-text,.sq-roomclear-title{color:var(--sq-ink);text-align:center;font-weight:700}.sq-roomclear-title{color:#2f7d45;text-shadow:0 1px #fff;font-size:clamp(1.4rem,5.5vw,1.9rem)}@media (orientation:landscape){.sq-screen{--sq-cell:min(6vh, 8vw, 48px);--sq-wcell:min(6.5vh, 8.5vw, 52px);--sq-band-h:min(16vh, 110px)}.sq-battle{gap:4px}.sq-notice{min-height:1.8em}}@supports (height:1dvh){@media (orientation:landscape){.sq-screen{--sq-cell:min(6dvh, 8vw, 48px);--sq-wcell:min(6.5dvh, 8.5vw, 52px);--sq-band-h:min(16dvh, 110px)}}}@media (prefers-reduced-motion:reduce){.sq-heroes.is-hit,.sq-heroes.is-hit:after,.sq-buddy-art.is-attack,.sq-enemy.is-glow,.sq-enemy.is-hit,.sq-damage,.sq-slot.is-wrong,.sq-cell-ans.is-wrong,.sq-cell-small.is-wrong,.sq-orosu-arrow,.sq-cutin{animation:none}.sq-enemy,.sq-hpbar i,.sq-funbari i{transition:none}.sq-fade{opacity:0;animation:none}.sq-heroes.is-hit:after{opacity:0}}.visual-sansu{background:linear-gradient(170deg,#3d2f55,#6b4a7a)}.thumb-sansu{justify-content:center;align-items:flex-end;gap:10px;display:flex}.sq-screen .btn{color:var(--sq-ink);background-image:linear-gradient(#3a3054,#2a2340);border-color:#6b5a92;box-shadow:inset 0 2px #ffffff24,0 3px #191430,0 6px 12px #00000073}.sq-screen .btn:disabled{color:#9b8f7a;background-image:linear-gradient(#2b2540,#241f38);box-shadow:inset 0 2px 6px #00000080}.sq-screen .big-btn{color:#2a1c05;background-image:linear-gradient(#ffd985,#f6b93b 55%,#e09a1c);border-color:#8a5f14;box-shadow:inset 0 2px #fff9,0 4px #a3700f,0 8px 16px #00000080}.sq-screen .big-btn:disabled{color:#9b8f7a;background-image:linear-gradient(#2b2540,#241f38);border-color:#4a3f68;box-shadow:inset 0 2px 6px #00000080}.sq-screen .big-btn.primary{color:#06240f;background-image:linear-gradient(#86e9a9,#46c47a 55%,#2ba05d);border-color:#1c6b3c;box-shadow:inset 0 2px #ffffff80,0 4px #1a7442,0 8px 16px #00000080}.sq-screen .btn.ghost:not(:disabled){color:var(--sq-ink-soft);box-shadow:none;background-color:#0a061459;background-image:none;border-color:#6b5a92}.sq-lede{text-align:center;max-width:22em;color:var(--sq-ink-soft);line-height:1.7}.sq-area{background-color:#0e1a44e6;border-radius:10px;flex:0 auto;align-items:center;min-height:5.5em;padding:clamp(6px,1.6vw,12px);box-shadow:inset 0 0 0 2px #f0c66a,inset 0 0 0 5px #123,0 0 0 2px #8a6a1e,0 6px 14px #00000080}.sq-enemy-side,.sq-meters{justify-content:center}.sq-block{color:#fff;text-shadow:0 2px #000000bf,0 0 3px #000000e6;background-image:linear-gradient(#4a63b8,#2a3f86 55%,#1d2f6b);border-color:#f0c66a;box-shadow:inset 0 2px #ffffff59,inset 0 -3px #00000059,0 3px #1a1436,0 5px 10px #00000080}.sq-block[data-v="0"]{background-image:linear-gradient(#d9575c,#b8353b 55%,#8f2329)}.sq-block[data-v="1"]{background-image:linear-gradient(#d99a3a,#b8760f 55%,#8f5a06)}.sq-block[data-v="2"]{background-image:linear-gradient(#4a8fd9,#2a5fb0 55%,#1c4488)}.sq-block[data-v="3"]{background-image:linear-gradient(#52b073,#2f8f4f 55%,#1f6e39)}.sq-block[data-v="4"]{background-image:linear-gradient(#9b6fd0,#6b3fa0 55%,#522f7d)}.sq-block[data-v="5"]{background-image:linear-gradient(#46b3b3,#1f8a8a 55%,#146a6a)}.sq-block.is-picked{color:#2a1c05;text-shadow:none;background-image:linear-gradient(#ffe9a8,#ffd05f 55%,#f7b32b);border-color:#fff0c0;box-shadow:inset 0 2px #ffffffd9,0 3px #d59a12,0 0 0 4px #ffd05f80,0 0 18px #ffbe5acc}.sq-band{background-color:#0000;background-image:radial-gradient(62% 48%,#ffaa3c80,#ff5a1e38 60%,#0000 78%),linear-gradient(270deg,#ff782873,#ff461924 65%,#0000);border:none;border-radius:999px;box-shadow:0 0 30px #ff822873}.sq-hero-art{image-rendering:pixelated;background-repeat:no-repeat;display:inline-block}.sq-enemy-art,.sq-buddy-art{image-rendering:pixelated;flex:none;max-width:none;display:block}.sq-buddy-art.is-ally{width:96px;height:96px;transform:scaleX(-1)}.sq-stage-row{image-rendering:pixelated;border-radius:var(--radius-md);background-position:50% 40%;background-size:cover;padding:clamp(6px,1.8vw,14px);box-shadow:inset 0 0 0 3px #8a6a1e,inset 0 0 40px #00000080,0 6px 16px #00000080}.sq-hero-art{image-rendering:auto;flex:none;width:auto;height:74px;display:block}.sq-enemy-name{text-shadow:0 2px #000000d9,0 0 6px #000000e6}.sq-enemy-side{box-shadow:none;background:0 0;align-self:flex-start}.sq-heroes{align-self:flex-end}.sq-screen:before{background-color:#14101c;background-image:radial-gradient(90% 70% at 50% 28%,#60462a59,#0000 70%),linear-gradient(#17121f 0%,#1d1724 60%,#241a20 100%)}.sq-band{box-shadow:none;background-color:#0000;background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border:none;border-radius:0;padding:0}.sq-screen{max-width:min(96vw,900px)}.sq-stage-row{align-items:center;gap:0;position:relative}.sq-heroes,.sq-enemy-side{z-index:2;flex:none;position:relative}.sq-band{aspect-ratio:3.2;z-index:1;flex:auto;align-self:center;height:auto;min-height:0;margin:0 clamp(-40px,-4vw,-16px)}.sq-band-host{padding:0 6%}.sq-hero-art{height:68px}.sq-buddy-art.is-ally{align-self:flex-end;width:96px;height:96px;margin-left:-18px}@media (orientation:landscape){.sq-band{aspect-ratio:4.2}}.sq-heroes{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.sq-heroes-art{align-items:flex-end;display:flex}.sq-hero-art{z-index:2;position:relative}.sq-buddy-art.is-ally{z-index:1;width:80px;height:80px;margin-left:-12px;position:relative}.sq-hearts{z-index:3;position:relative}.sq-enemy-side{flex-direction:column;align-items:center;gap:2px;max-width:46%;padding:0;display:flex}.sq-enemy-name{white-space:nowrap;font-size:clamp(.8rem,2.6vw,1rem)}.sq-enemy{padding:0}.sq-band{margin-left:0;margin-right:clamp(-16px,-1.6vw,-6px)}.sq-buddy-art.is-ally{margin-left:0}.sq-stage-row{min-height:var(--sq-band-h);display:block;position:relative}.sq-enemy-side{align-items:flex-end;max-width:52%;position:absolute;top:0;right:0}.sq-heroes{align-items:flex-start;position:absolute;bottom:0;left:0}.sq-band{aspect-ratio:auto;width:auto;height:clamp(52px,34%,104px);margin:0;position:absolute;top:50%;left:1%;right:15%;transform:translateY(-50%)}.sq-enemy-side,.sq-heroes{z-index:3}.sq-band{left:4%;right:20%}.sq-hero-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:clamp(8px,2vw,14px);width:100%;max-width:620px;display:grid}.sq-hero-card{min-height:150px;color:var(--sq-ink);border-radius:var(--radius-md);touch-action:manipulation;cursor:pointer;background-image:linear-gradient(#3a3054,#241d3a);border:3px solid #6b5a92;flex-direction:column;justify-content:flex-end;align-items:center;gap:6px;padding:8px 6px 10px;display:flex;box-shadow:inset 0 2px #ffffff24,0 4px #191430,0 8px 16px #00000073}.sq-hero-card:active{transform:translateY(3px);box-shadow:inset 0 2px #ffffff24,0 1px #191430}.sq-hero-card.is-current{border-color:var(--sq-gold);box-shadow:inset 0 2px #fff3,0 4px #191430,0 0 0 4px #ffc94d59}.sq-hero-card.is-current .sq-hero-card-name:before{content:"✓ ";color:var(--sq-gold)}.sq-hero-card-art{flex:1;align-items:flex-end;display:flex}.sq-hero-card-art img{width:auto;height:96px}.sq-hero-card-name{text-align:center;font-size:clamp(.78rem,2.4vw,.95rem);font-weight:700;line-height:1.3}.sq-title-hero{width:auto;height:110px}.sq-title-buddy{width:auto;height:84px;image-rendering:pixelated;transform:scaleX(-1)}.sq-hero-down{width:auto;height:96px;transform:rotate(-14deg)}.sq-buddy-guard{width:auto;height:84px;image-rendering:pixelated;transform:scaleX(-1)}.sq-hero-grid{margin:4px 0 8px}.sq-hero-card-name{white-space:nowrap}.sq-lede{max-width:26em}.sq-heroes{bottom:clamp(6px,1.6vw,12px);left:clamp(8px,2vw,16px)}.sq-enemy-side{top:clamp(6px,1.6vw,12px);right:clamp(8px,2vw,16px)}.sq-band{top:44%}.sq-hearts{margin-bottom:0}.sq-heroes-art{gap:14px}.sq-band{right:25%}.sq-band.is-hidden{box-shadow:none;background-image:none!important}.sq-counter{z-index:4;pointer-events:none;background-position:50%;background-repeat:no-repeat;background-size:100% 100%;height:clamp(44px,28%,88px);animation:.42s ease-out sq-counter-in;position:absolute;top:46%;left:12%;right:8%;transform:translateY(-50%)scaleX(-1)}@keyframes sq-counter-in{0%{opacity:0;transform:translateY(-50%)scaleX(-1)translate(30%)}to{opacity:1;transform:translateY(-50%)scaleX(-1)translate(0)}}@media (prefers-reduced-motion:reduce){.sq-counter{animation:none}}.sq-band.is-blocks-hidden .sq-band-host{opacity:0;pointer-events:none;transition:opacity .2s}.sq-buddy-art.is-ally.is-attack{animation:.42s ease-out sq-buddy-brace}@keyframes sq-buddy-brace{0%{transform:scaleX(-1)scale(1)}35%{transform:scaleX(-1)scale(1.12)}to{transform:scaleX(-1)scale(1)}}.sq-counter{transform-origin:0;height:clamp(30px,19%,58px);animation:.42s ease-out sq-counter-in2;top:58%;left:15%;right:12%;transform:translateY(-50%)rotate(-13deg)}@keyframes sq-counter-in2{0%{opacity:0;transform:translateY(-50%)scaleX(.25)}to{opacity:1;transform:translateY(-50%)scaleX(1)}}@media (prefers-reduced-motion:reduce){.sq-counter,.sq-buddy-art.is-ally.is-attack{animation:none}}.sq-counter{height:clamp(26px,16%,48px);top:78%;left:26.5%;right:17%;transform:translateY(-50%)}.sq-band{left:26.5%}.sq-band-host{flex-wrap:nowrap;gap:4px;padding:0 9%}.sq-band-host .sq-block{flex:0 auto;min-width:40px;padding:2px 4px}.sq-cutin.is-critical{top:auto;bottom:26%;transform:translate(-50%)}@keyframes sq-cutin-pop-low{0%{opacity:0;transform:translate(-50%)scale(.7)}to{opacity:1;transform:translate(-50%)scale(1)}}.sq-cutin.is-critical{animation-name:sq-cutin-pop-low;top:13%;bottom:auto;transform:translate(-50%)}.sq-cutin{color:#fff6d8;text-shadow:0 2px #000c;letter-spacing:.04em;background-image:linear-gradient(#1d2f6b,#131f49);border:none;border-radius:6px;padding:12px 30px;box-shadow:inset 0 0 0 2px #f0c66a,inset 0 0 0 5px #0d1633,0 0 0 2px #8a6a1e,0 8px 18px #0000008c}.sq-cutin.is-critical{color:#fff0bf;background-image:linear-gradient(#6b2f14,#3d1608);box-shadow:inset 0 0 0 2px #ffd66a,inset 0 0 0 5px #2a0f04,0 0 0 2px #b9821f,0 0 22px #ffb43c8c,0 8px 18px #0000008c}.sq-notice.is-ok,.sq-notice.is-warn{text-shadow:0 2px #000000b3;background-image:linear-gradient(#1d2f6beb,#131f49eb);border-radius:5px;align-self:center;width:auto;padding:4px 18px;box-shadow:inset 0 0 0 2px #f0c66a,inset 0 0 0 4px #0d1633}.sq-notice{z-index:20;pointer-events:none;width:auto;min-height:0;position:absolute;top:13%;left:50%;transform:translate(-50%)}.sq-enemy-side{top:clamp(30px,7vw,52px)}.sq-cutin,.sq-notice.is-ok,.sq-notice.is-warn,.sq-enemy-name,.sq-meter-label,.sq-damage{letter-spacing:.08em;-webkit-font-smoothing:none;font-smooth:never;font-family:BIZ UDPGothic,MS Gothic,Osaka-Mono,monospace}.sq-battle{position:relative}.sq-notice{z-index:20;position:fixed;top:13%;left:50%;transform:translate(-50%)}.sq-enemy-plate{background-color:#0a0e1ea8;border-radius:6px;flex-direction:column;align-items:center;gap:3px;padding:4px 10px 6px;display:flex;box-shadow:inset 0 0 0 2px #f0c66a80}.sq-band-host{flex-wrap:wrap;align-content:center;gap:5px 6px;padding:0 7%}.sq-band-host .sq-block{flex:none;min-width:44px;min-height:44px;padding:2px 6px}@media (orientation:landscape) and (height<=560px){.sq-screen{--sq-band-h:min(52vw, 46dvh, 240px)}.sq-hero-art{height:58px}.sq-buddy-art.is-ally{width:68px;height:68px}}@media (width<=520px){.sq-band{left:22%;right:14%}.sq-hero-art{height:54px}.sq-buddy-art.is-ally{width:62px;height:62px}.sq-enemy-plate{padding:3px 7px 5px}}.sq-band-host{min-height:inherit;box-sizing:border-box;padding:10px 7%}.sq-band{z-index:6;top:44%;transform:translateY(-50%)}.sq-band-host{z-index:7;position:relative}.sq-heroes,.sq-enemy-side{z-index:2}.sq-band-host .sq-block{z-index:8;position:relative}.sq-enemy:disabled{pointer-events:none}.sq-screen{--sq-block:44px;--sq-block-gap:5px;--sq-band-pad:10px;--sq-band-h1:64px;--sq-band-h2:113px;--sq-band-h3:162px;--sq-band-h4:211px}.sq-band{height:auto;min-height:var(--sq-band-h1);max-height:var(--sq-band-h4)}.sq-band-host{gap:var(--sq-block-gap) 6px;padding:var(--sq-band-pad) 7%}.sq-band-host .sq-block{min-width:var(--sq-block);min-height:var(--sq-block)}.sq-stage-row{min-height:max(var(--sq-band-h), calc(var(--sq-band-h3) + 34px))}.sq-band-host .sq-tray{grid-template-columns:repeat(var(--sq-per-row,4), var(--sq-block,44px));place-content:center;gap:5px 6px;width:100%;display:grid}.sq-band-solo{width:100%;margin:0;position:static;top:auto;left:auto;right:auto;transform:none}
