.battleship-playing{background:#082848!important}.battleship-playing .game{color:#eef8ff}.battle-host,.bs-placement,.bs-target,.battle-finish,.battle-round{max-width:1250px!important;width:100%;margin:auto!important;padding:45px 24px 12px!important;position:relative}.battle-host .game-top,.bs-placement .game-top,.bs-target .game-top{padding:0!important;display:flex;justify-content:space-between;align-items:center;gap:14px}.battle-host h1,.bs-placement h1,.bs-target h1{font-size:clamp(20px,2.8vw,32px);margin:0}.battle-host p,.bs-placement>p,.bs-target>p{margin:8px 0;color:#c3dff4}.bs-host-teams{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.bs-host-teams section{min-width:0}.bs-host-teams h2{color:#5ed2ff;font-size:22px;margin:10px 0}.bs-host-teams section:last-child h2{color:#aab7ff}.bs-host-teams h2 small{font-size:12px;float:right;color:#d2e5f6}.bs-team-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(100px,.45fr);gap:14px;align-items:start}.bs-grid{display:grid;grid-template-columns:18px minmax(0,1fr);grid-template-rows:18px minmax(0,1fr);gap:3px;width:100%;max-width:420px;margin:auto}.bs-columns,.bs-rows{display:grid;color:#b6d7ef;text-align:center;font-size:11px;align-items:center}.bs-columns{grid-column:2;grid-template-columns:repeat(9,1fr)}.bs-rows{grid-row:2;grid-template-rows:repeat(9,1fr)}.bs-sea{position:relative;grid-column:2;grid-row:2;aspect-ratio:1;background:#155889;border:1px solid #4584b3;border-radius:8px;overflow:hidden}.bs-cells{display:grid;grid-template-columns:repeat(9,1fr);grid-template-rows:repeat(9,1fr);height:100%}.bs-cell{min-width:0;min-height:0;width:100%;padding:0;border:0;border-bottom:1px solid #357bab;border-right:1px solid #357bab;border-radius:0;display:grid;place-items:center;background:#175b90;color:#ff7284;line-height:1}.bs-cell:nth-child(even){background:#19568a}.bs-cell b{font-size:clamp(12px,2vw,24px)}button.bs-cell:hover:not(:disabled){background:#358fbb}button.bs-cell:disabled{opacity:1;cursor:default}.bs-cell.hit{background:#744b36}.bs-blast{width:80%;height:80%;display:block;background:#ffc55f;clip-path:polygon(50% 0,63% 28%,88% 10%,78% 40%,100% 50%,75% 62%,87% 89%,59% 77%,49% 100%,37% 75%,10% 88%,24% 60%,0 48%,27% 37%,13% 10%,40% 26%);position:relative}.bs-blast:after{content:'';position:absolute;inset:28%;border-radius:50%;background:#172535;border:2px solid #ffe3a0}.bs-ships{position:absolute;inset:0;pointer-events:none}.bs-ship{position:absolute;filter:drop-shadow(0 2px 2px #062941)}.bs-ship.unplaced{opacity:.7}.bs-ship.mine{filter:drop-shadow(0 0 4px #a5eeff)}.bs-model{position:relative;width:100%;height:100%;transform-origin:0 0}.bs-hull{position:absolute;inset:12% 4%;background:linear-gradient(#d6e6ec,#9dbece 45%,#65849c 53%,#c4dae5);clip-path:polygon(1% 27%,7% 12%,76% 8%,89% 24%,100% 50%,89% 76%,76% 92%,7% 88%,1% 73%)}.bs-deck{position:absolute;left:10%;right:20%;top:25%;bottom:25%;background:#4d6e88;clip-path:polygon(0 0,85% 0,100% 50%,85% 100%,0 100%)}.bs-bridge{position:absolute;left:42%;width:18%;top:25%;height:50%;background:#c9d9df;border:1px solid #42627b;border-radius:2px}.bs-bridge:after{content:'';position:absolute;left:20%;top:22%;width:60%;height:25%;background:#344f68}.bs-turret{position:absolute;top:33%;width:12%;height:34%;border-radius:50%;background:#ccdde6;border:1px solid #4b6880}.bs-turret:after{content:'';position:absolute;left:60%;top:27%;width:125%;height:35%;background:#d9e5ea;border-top:1px solid #57718a}.bs-turret.front{left:68%}.bs-turret.back{left:16%;transform:rotate(180deg)}.bs-leaders{min-width:0;font-size:12px}.bs-rank-label{font-size:11px;color:#b9d8ed;margin-bottom:7px}.bs-leaders>div:not(:first-child){display:flex;gap:7px;align-items:center;padding:7px 0;border-bottom:1px solid #315474}.bs-leaders span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.bs-leaders strong{color:#e7f6ff}.bs-placement-layout{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:28px;max-width:730px;margin:auto;align-items:center}.bs-placement-layout .bs-grid{max-width:min(48dvh,420px)}.bs-placement aside{padding:18px;border-radius:16px;background:#103858}.bs-sample{height:55px;margin:12px 0}.bs-placement aside p{color:#c8e0f0;font-size:13px}.bs-crew{display:grid;gap:4px;font-size:12px;max-height:110px;overflow:auto;color:#c8e0f0}.bs-countdown{font-size:32px;color:#7bddff}.bs-target{max-width:540px!important;text-align:center}.bs-target .bs-grid{max-width:min(50dvh,410px)}.bs-progress{font-size:17px;color:#a7e6ff!important}.bs-feedback{padding-top:70px;text-align:center}.bs-hit-notice{position:fixed;left:50%;top:14%;transform:translateX(-50%);padding:15px 35px;background:#0a3c62;color:#fff;border:2px solid #a4eaff;border-radius:15px;font-size:35px;z-index:95;pointer-events:none}.bs-results-teams{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;max-width:700px;margin:20px auto}.battle-finish,.battle-round{text-align:center}.bs-confetti{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:4}.battle-finish .end-actions,.battle-round button{position:relative;z-index:5}.battle-host .bs-grid{max-width:min(53dvh,400px)}.pending-shot{background:#4597bf!important}.combine-sources,.combine-questions{display:grid;gap:7px;max-height:290px;overflow:auto;margin:14px 0}.combine-questions small{display:block;color:var(--muted,#a8a0ba)}.combine-question-actions{display:flex;gap:8px}.combine-questions .check{align-items:flex-start}#combine-quizzes{white-space:nowrap}body.battleship-playing .question-screen #seconds-left,body.battleship-playing .question-screen>.timer{display:none}
@media(max-width:850px){.bs-team-content{grid-template-columns:1fr}.bs-host-teams{gap:14px}.battle-host .bs-grid{max-width:min(40dvh,330px)}.bs-leaders>div:not(:first-child){padding:3px 0;font-size:11px}.bs-host-teams h2{font-size:17px}.bs-host-teams h2 small{float:none;display:block}.bs-placement-layout{grid-template-columns:minmax(0,1fr) 165px;gap:14px}.bs-placement aside{padding:10px}.bs-crew{max-height:75px}}
@media(max-width:520px){.battle-host,.bs-placement,.bs-target{padding:48px 10px 8px!important}.bs-host-teams{gap:10px}.bs-grid{grid-template-columns:12px minmax(0,1fr);gap:2px}.bs-placement-layout{grid-template-columns:1fr}.bs-placement aside{display:grid;grid-template-columns:1fr 1fr;gap:8px}.bs-placement aside h2,.bs-sample,.bs-crew{display:none}.bs-placement aside p{margin:0;font-size:11px}.bs-placement-layout .bs-grid{max-width:min(43dvh,320px)}.bs-host-teams h2{font-size:15px}.bs-host-teams h2 small{font-size:11px}.bs-instruction{font-size:11px}.bs-setup-time{font-size:13px}.bs-leaders>div:not(:first-child){gap:4px}}
.battle-host>.bs-setup-time,.battle-host>.bs-instruction,.bs-placement>p,.bs-target>p{color:#c3dff4!important}.lobby-team.Navy{background:#20365f;border-color:#819cff}.lobby-team.Navy .lobby-name-wall li{background:#324c82;color:#fff;border-color:#819cff}.lobby-team.Navy h3{color:#c2ceff}.lobby-team.Blue .lobby-name-wall li{background:#175a87;color:#fff}
@media(orientation:landscape) and (max-height:550px){.kingdom-leaders .team-leaders>div:nth-of-type(n+2){display:grid}.kingdom-leaders .team-leaders>div{font-size:11px;line-height:1.15;padding:1px 0}.kingdom-leaders h3{margin:3px 0}}
.bs-placement .bs-sea{touch-action:none}.bs-placement .bs-ship.mine{pointer-events:auto;cursor:grab;touch-action:none}.bs-placement .bs-ship.mine .bs-model{pointer-events:none}.bs-cell{position:relative}.bs-impact{position:absolute;inset:0;z-index:9;pointer-events:none;display:grid;place-items:center;overflow:visible}.bs-impact i{font-style:normal;font-size:clamp(20px,4vw,46px);animation:bs-bomb-fall .26s ease-in both}.bs-impact b{position:absolute;color:#ffdc53;text-shadow:0 0 12px #ff5a00;font-size:clamp(40px,7vw,90px);animation:bs-explode .38s .24s ease-out both}.battleship-playing .game p{color:#d8edff}@keyframes bs-bomb-fall{from{transform:translateY(-130px) scale(.5);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes bs-explode{0%{transform:scale(.1);opacity:0}25%{transform:scale(1.5);opacity:1}100%{transform:scale(2);opacity:0}}@media(prefers-reduced-motion:reduce){.bs-impact i,.bs-impact b{animation:none}.bs-impact b{opacity:.8}}
.bs-columns{grid-template-columns:repeat(var(--bs-size,9),1fr)}.bs-rows{grid-template-rows:repeat(var(--bs-size,9),1fr)}.bs-cells{grid-template-columns:repeat(var(--bs-size,9),1fr);grid-template-rows:repeat(var(--bs-size,9),1fr)}
body.battleship-playing{background:#dff4ff!important;color:#14334e}.battleship-playing .game{color:#14334e}.bs-placement,.battle-host,.bs-target,.battle-finish,.battle-round{background:#effaff;border-radius:18px}.battle-host p,.bs-placement>p,.bs-target>p{color:#36566e}.bs-sea{background:#279cde;border-color:#187bc0}.bs-cell,.bs-cell:nth-child(even){background:#269cde;border-color:#9edaff}.bs-cell.hit{background:#6db9df}.bs-columns,.bs-rows,.bs-rank-label,.bs-leaders strong{color:#14334e}.bs-ships{pointer-events:none}.bs-ship.mine{pointer-events:auto;outline:3px solid var(--team-colour,#ff526b);outline-offset:-2px;filter:none;border-radius:12px;touch-action:none}.bs-ship{filter:none;transition:left .12s linear,top .12s linear,width .12s,height .12s}.bs-ship.unplaced{opacity:1}.bs-hull{background:#a9b8c8;border:2px solid #24394c}.bs-deck{background:#dce6ef}.bs-ship.submarine .bs-hull{clip-path:ellipse(49% 36%);background:#738a9e}.bs-ship.submarine .bs-turret,.bs-ship.carrier .bs-turret{display:none}.bs-ship.carrier .bs-deck{background:repeating-linear-gradient(0deg,#627b8e 0 44%,#fff 45% 50%,#627b8e 51%)}.bs-ship.destroyer .bs-turret.back{display:none}.bs-ship.cruiser .bs-bridge{left:30%}.bs-ship.sunk{filter:grayscale(1);opacity:.9}.bs-ship.sunk:after{content:"";position:absolute;inset:8%;background:#253746;clip-path:polygon(42% 0,58% 0,47% 36%,63% 48%,45% 65%,57% 100%,42% 100%,31% 62%,47% 45%,32% 33%);pointer-events:none}.bs-placement aside{background:#fff;border-radius:14px;padding:15px}.bs-placement aside select,.bs-placement aside button{display:block;width:100%;margin:8px 0}.bs-host-teams section:first-child h2{color:#c92b4a}.bs-host-teams section:last-child h2{color:#1778c4}.bs-leaders>div{color:#183c56}.bs-ship.sunk .bs-hull{background:#758391}.bs-placement .bs-crew span{color:#36566e}.bs-placement #bs-place-status{color:#9b264e}
.battleship-playing .bs-placement>p,.battleship-playing .battle-host>p,.battleship-playing .bs-target>p{color:#36566e!important}.battleship-playing .bs-countdown{color:#17649c!important}.bs-placement aside button{background:#167cc2;color:#fff;border:0;border-radius:10px;min-height:40px}.bs-placement aside button:disabled{background:#dce8ed;color:#526875;opacity:1}.battleship-playing .question-screen{background:#211735!important;color:#faf8ff!important}.battleship-playing .question-screen p{color:#e4dcf3!important}.bs-cell.miss{color:#db284b}
.battleship-playing .battle-finish p,.battleship-playing .battle-round p,.battleship-playing .bs-feedback p{color:#36566e!important}

.battle-loading{display:grid;place-items:center;min-height:65dvh}.bs-results-teams{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.bs-results-teams section{min-width:0}.bs-results-teams h2{margin:4px;font-size:20px}.bs-results-teams .bs-grid{max-width:min(38dvh,420px)}.bs-fleet-owners{display:flex;flex-wrap:wrap;gap:3px 10px;font-size:11px;justify-content:center;margin:7px 0}.bs-results-teams .bs-leaders{display:none}.battle-round h1,.battle-finish h1{font-size:clamp(18px,3vh,30px);margin:4px}.battle-round>h2,.battle-finish>h2{font-size:clamp(18px,3vh,28px);margin:4px}.battle-round>p,.battle-finish>p{margin:5px}.bs-results-teams .bs-cell.hit:after{content:"✹";color:#ffb32c;font-size:clamp(10px,2vw,22px);z-index:5;position:absolute;pointer-events:none}.bs-results-teams .bs-ship.mine{outline:0}@media(max-height:650px){.bs-results-teams .bs-grid{max-width:32dvh}.bs-fleet-owners{font-size:10px}}
