.sq-game{min-height:100%;padding:6px 4px max(16px, env(safe-area-inset-bottom));color:#e7efff;background:radial-gradient(at 40% 0,#263651,#0a1426 70%)}.sq-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;padding:0 8px;display:flex}.sq-heading a{color:#c7dbed;align-items:center;min-height:44px;font-size:14px;display:flex}.sq-heading h1{text-align:right;font-size:22px;font-weight:850;line-height:1.2}.sq-heading small{letter-spacing:.12em;color:#dfc58e;margin-bottom:3px;font-size:10px;display:block}.sq-layout{grid-template-columns:minmax(0,1fr) minmax(250px,320px);align-items:start;gap:22px;max-width:1500px;margin:auto;display:grid}.sq-play{justify-self:center;width:100%;min-width:0;max-width:calc(100dvh - 195px)}.sq-controls{min-width:0;padding:8px}.sq-hud{color:#dce7f5;justify-content:space-between;align-items:center;gap:8px;margin:0 4px 8px;font-size:14px;display:flex}.sq-hud strong{letter-spacing:2px;color:#f7b9cd;white-space:nowrap;font-size:23px}.sq-board{aspect-ratio:1;touch-action:manipulation;isolation:isolate;background:#0b1429;border:3px solid #617293;border-radius:14px;width:100%;position:relative;overflow:hidden;box-shadow:0 0 0 1px #a8b9df55,0 10px 40px #0006}.sq-grid{grid-template:repeat(8,minmax(0,1fr))/repeat(8,minmax(0,1fr));display:grid;position:absolute;inset:0}.sq-square{touch-action:manipulation;background:#20314b;border:1px solid #8199bc1c;place-items:center;min-width:0;min-height:0;padding:2px;display:grid;position:relative}.sq-square.is-dark{background:#14223a}.sq-square:disabled{opacity:1}.sq-square.is-legal:after{content:"";background:#9cffe0;border-radius:2px;width:12%;height:12%;position:absolute;bottom:4px;left:44%;box-shadow:0 0 8px #75f1d4}.sq-square.is-invalid{animation:.35s lg-nudge;box-shadow:inset 0 0 0 2px #ffc393}.sq-square.is-shot{background:#4b4c4c;transition:background .1s;box-shadow:inset 0 0 15px #ffe2a744}.sq-square>svg{width:70%;height:70%}.sq-square:focus-visible,.sq-buttons button:focus-visible{outline-offset:-3px;outline:3px solid #ffe3a5}.sq-enemy{filter:drop-shadow(0 3px #080e1c);place-items:center;width:80%;height:80%;animation:1.6s ease-in-out infinite alternate sq-hover;display:grid}.sq-enemy svg{width:100%;height:100%}.sq-enemy.is-courier{filter:drop-shadow(0 0 7px #ffe17c);animation:1s ease-in-out infinite alternate sq-courier}.sq-moving-ship{z-index:3;pointer-events:none;filter:drop-shadow(0 2px 3px #000b);width:12.5%;height:12.5%;padding:0;transition:left .22s steps(6,end),top .22s steps(6,end);position:absolute}.sq-moving-ship svg{width:100%;height:100%}.sq-thrust{transform-origin:50%;animation:.16s steps(2,end) infinite alternate sq-thrust}.sq-lasers{pointer-events:none;z-index:2;width:100%;height:100%;position:absolute;inset:0}.sq-lasers line{stroke:#ffe5a2;stroke-width:.75px;filter:drop-shadow(0 0 1px #fff1b3);stroke-dasharray:3 1;animation:.6s steps(3,end) forwards sq-laser}.sq-explosion{color:#fff2b3;z-index:4;pointer-events:none;font-size:clamp(25px,4vw,55px);animation:.6s steps(4,end) forwards sq-explode;position:absolute}.sq-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:5;background:#071020d4;place-items:center;padding:12px;display:grid;position:absolute;inset:0}.sq-panel{text-align:center;background:linear-gradient(145deg,#293b58,#111d31);border:1px solid #d6b67c;border-radius:15px;width:100%;max-width:390px;max-height:100%;padding:20px 16px;overflow:auto;box-shadow:0 8px 24px #0008}.sq-panel h2{color:#ffe4a8;margin-bottom:10px;font-size:clamp(20px,2.5vw,28px);font-weight:850;line-height:1.2}.sq-panel p{color:#e4ecf8;margin:10px 0;font-size:16px;line-height:1.45}.sq-panel button{border:1px solid #a2b6cf;border-radius:10px;width:100%;min-height:48px;margin-top:10px;padding:10px 12px;font-size:17px}.sq-game .sq-primary{color:#172338;background:linear-gradient(110deg,#edd598,#b9924e);border:1px solid #ffe4aa;font-weight:850}.sq-objective{color:#f0dcae;margin-bottom:12px;font-size:22px;font-weight:800;line-height:1.3}.sq-module{letter-spacing:.05em;color:#9de5ef;margin:8px 0 16px;font-size:14px}.sq-stats{color:#bed0e7;justify-content:space-between;gap:10px;margin:12px 0;font-size:14px;display:flex}.sq-message{color:#e1eafa;min-height:70px;margin:12px 0;font-size:16px;line-height:1.5}.sq-buttons{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.sq-buttons button{color:#eaf2ff;background:#263a55;border:1px solid #8aa0bd88;border-radius:10px;min-height:48px;padding:10px 8px;font-size:15px}.sq-buttons button:first-child{grid-column:1/-1;font-size:17px}.sq-buttons button:disabled,.sq-panel button:disabled{opacity:.55}.sq-buttons button[aria-pressed=true]{color:#ffe4ab;border-color:#e6c47f}.sq-courier,.sq-reward{color:#ffe4a3;margin:12px 0;font-size:15px;font-weight:800;line-height:1.5}.sq-note{color:#b6c9df;margin-top:12px;font-size:13px;line-height:1.5}.sq-error{border:1px solid #e2b37d;border-radius:9px;padding:10px;font-size:14px}.sq-error button{background:#293956;border-radius:9px;min-height:44px;margin-top:8px;padding:8px 12px}@keyframes sq-hover{to{transform:translateY(-3px)}}@keyframes sq-courier{to{filter:drop-shadow(0 0 11px #ffd258)brightness(1.25)}}@keyframes sq-thrust{to{transform:scaleY(.6)}}@keyframes sq-laser{0%,40%{opacity:1}to{opacity:0}}@keyframes sq-explode{0%{transform:scale(.5)}50%{transform:scale(1.3)}to{opacity:0;transform:scale(1.5)}}@media (width<=699px) and (orientation:portrait){.sq-game{padding:2px 2px 16px}.sq-heading{margin:0;padding:0 6px}.sq-heading h1{font-size:18px}.sq-heading small{display:none}.sq-layout{grid-template-columns:minmax(0,1fr);gap:10px}.sq-play{max-width:none}.sq-hud{margin-bottom:5px;font-size:12px}.sq-hud strong{letter-spacing:0;font-size:19px}.sq-controls{padding:0 8px}.sq-objective{margin-bottom:8px;font-size:17px}.sq-module{margin:4px 0 10px}.sq-message{min-height:0;margin:8px 0}.sq-game .chess-coordinate-frame{grid-template-rows:auto 16px;grid-template-columns:16px minmax(0,1fr);gap:1px}.sq-panel{padding:14px 12px}.sq-panel p{font-size:14px}.sq-panel h2{font-size:20px}}@media (orientation:landscape) and (height<=650px){.sq-layout{grid-template-columns:minmax(0,min(60vw,max(280px,100dvh - 185px))) minmax(220px,310px);gap:14px}.sq-play{max-width:none}.sq-heading small{display:none}.sq-panel{padding:10px}.sq-panel h2{font-size:18px}.sq-panel p{margin:6px 0;font-size:13px}.sq-message{min-height:0}.sq-objective{font-size:18px}}@media (prefers-reduced-motion:reduce){.sq-enemy,.sq-thrust,.sq-enemy.is-courier,.sq-lasers line,.sq-explosion{animation:none}.sq-moving-ship{transition:none}}.sq-enemy-layer{pointer-events:none;z-index:1;position:absolute;inset:0}.sq-enemy-position{place-items:center;width:12.5%;height:12.5%;transition:left .3s ease-out,top .3s ease-out;display:grid;position:absolute}.sq-enemy-position.is-hit{animation:.8s linear forwards sq-target-hit}.sq-lasers line{stroke:#b8ffff;stroke-width:1.1px;stroke-linecap:round;stroke-dasharray:.14 .86;filter:drop-shadow(0 0 1.3px #64eaff);animation:.8s linear forwards sq-projectile}.sq-explosion{opacity:0;animation:.8s steps(5,end) forwards sq-impact}@keyframes sq-projectile{0%{stroke-dashoffset:.14px;opacity:1}48%{stroke-dashoffset:-.86px;opacity:1}55%,to{stroke-dashoffset:-.86px;opacity:0}}@keyframes sq-target-hit{0%,48%{opacity:1;filter:none}55%{opacity:1;filter:brightness(4)}75%,to{opacity:0;filter:brightness(4)}}@keyframes sq-impact{0%,48%{opacity:0;transform:scale(.3)}55%{opacity:1;transform:scale(.6)}72%{opacity:1;transform:scale(1.8)}to{opacity:0;transform:scale(2.3)}}
