.raid-shell{--raid-ink:#e6f8ee;--raid-gold:#efce80;--raid-mint:#75e5bf;color:var(--raid-ink);background:#102a32;border:1px solid #40606a;border-radius:22px;max-width:1500px;margin:18px auto;padding:clamp(16px,2vw,28px);font-family:inherit;position:relative}.raid-shell *{box-sizing:border-box;min-width:0}.raid-shell h2,.raid-shell h3,.raid-shell p{color:inherit;margin:0}.raid-shell button,.raid-shell input,.raid-shell select{font:inherit}.raid-shell button,.raid-shell select{cursor:pointer}.raid-shell button{color:#e6f8ee;background:#203f47;border:1px solid #587278;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:10px 14px;display:inline-flex}.raid-shell button:hover:not(:disabled){background:#2c535b;border-color:#99d4be}.raid-shell button:disabled{opacity:.48;cursor:default}:is(.raid-shell button:focus-visible,.raid-shell input:focus-visible,.raid-shell select:focus-visible){outline-offset:3px;outline:3px solid #ffe399}.raid-top{justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px;display:flex}.raid-top h2{letter-spacing:-.04em;font-size:clamp(24px,3vw,38px)}.raid-top h2 span{letter-spacing:.04em;color:#abc4bf;margin-top:4px;font-size:13px;font-weight:500;display:block}.raid-eyebrow{letter-spacing:.16em;color:var(--raid-gold);font-size:10px;font-weight:800}.raid-tools{gap:8px;display:flex}.raid-tools button{padding:9px}.raid-primary{background:var(--raid-gold)!important;color:#183c38!important;border-color:#f2d995!important;font-weight:800!important}.raid-primary:hover:not(:disabled){background:#ffe7a9!important}.raid-setup{grid-template-columns:.85fr 1fr;gap:34px;display:grid}.raid-intro{text-align:center;background:radial-gradient(at 50% 30%,#53857455,#0000 60%),linear-gradient(#133135dd,#16373be8),url(/raids/heartstone-arena.png) 50%/cover;border:1px solid #405e5c;border-radius:16px;flex-direction:column;align-items:center;padding:24px;display:flex}.raid-intro>img{object-fit:contain;width:min(100%,330px);height:280px;image-rendering:pixelated;filter:drop-shadow(0 18px 20px #0005)}.raid-intro h3{margin:15px 0 12px;font-size:32px}.raid-intro p{color:#bfd6d0;max-width:300px;line-height:1.6}.raid-facts{text-align:left;gap:14px;margin-top:24px;display:grid}.raid-facts span{align-items:center;gap:12px;font-size:13px;display:flex}.raid-facts svg{color:var(--raid-gold)}.raid-setup-body>h3,.raid-lobby h3{margin-bottom:18px;font-size:22px}.raid-shell label{gap:7px;margin:14px 0;font-size:13px;font-weight:650;display:grid}.raid-shell input:not([type=checkbox]),.raid-shell select{color:#f7fff8;background:#102d35;border:1px solid #5e7f82;border-radius:9px;width:100%;min-height:44px;padding:9px 11px}.raid-options{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.raid-shell input[type=checkbox]{accent-color:#8df0c1;flex-shrink:0;width:18px;height:18px}.raid-shell .raid-select-all{align-items:center;gap:10px;display:flex}.raid-select-all>span{color:#adcac7;margin-left:auto;font-size:12px}.raid-roster{grid-template-columns:1fr 1fr;gap:5px;max-height:250px;margin-bottom:18px;display:grid;overflow:auto}.raid-roster label{border:1px solid #33575c;border-radius:9px;align-items:start;gap:10px;margin:0;padding:9px;display:flex}.raid-roster small{color:#dbba9b;margin-top:3px;font-size:10px;line-height:1.4;display:block}.raid-history{gap:7px;margin-top:25px;display:grid}.raid-history button{justify-content:space-between}.raid-history small{text-transform:capitalize;color:#b8e3d1}.raid-message{background:#69572850;border:1px solid #edc17680;border-radius:10px;margin-bottom:16px;padding:13px 16px;font-size:13px}.raid-loading{text-align:center;padding:80px 20px}.raid-statusline{color:#b5cbc8;justify-content:space-between;align-items:center;gap:15px;margin-bottom:13px;font-size:12px;display:flex}.raid-statusline .connected{color:#8de9b8}.raid-statusline button{min-height:32px;padding:5px 10px;font-size:12px}.raid-lobby{grid-template-columns:1fr 1fr;gap:30px;display:grid}.raid-lobby-art{text-align:center;background:radial-gradient(#5ea58444,#0000 65%);padding:20px}.raid-lobby-art img{object-fit:contain;width:min(100%,340px);height:280px;image-rendering:pixelated}.raid-lobby-art p{margin:14px}.raid-lobby-art small{color:#b7ccbf;max-width:320px;margin:auto;line-height:1.5;display:block}.raid-lobby-roster{gap:8px;max-height:350px;display:grid;overflow:auto}.raid-lobby-roster>div{background:#1c3c42;border:1px solid #396164;border-radius:10px;align-items:center;gap:12px;padding:9px;display:flex}.raid-lobby-roster img{object-fit:contain;width:42px;height:42px}.raid-lobby-roster span{color:#98eac2;margin-left:auto;font-size:12px}.raid-lobby-roster button{min-height:30px;padding:4px 8px;font-size:11px}.raid-controls{flex-wrap:wrap;gap:10px;margin:16px 0;display:flex}.raid-hud{grid-template-columns:1fr 1.3fr auto;align-items:center;gap:24px;padding:12px 2px 16px;display:grid}.raid-hud h3{margin-top:5px;font-size:16px}.raid-hud>div>span{letter-spacing:.12em;color:var(--raid-gold);font-size:9px}.raid-boss-health{position:relative}.raid-shell progress{-webkit-appearance:none;appearance:none;background:#10282b;border:0;border-radius:20px;width:100%;height:9px;display:block;overflow:hidden}.raid-shell progress::-webkit-progress-bar{background:#142d30;border-radius:20px}.raid-shell progress::-webkit-progress-value{background:linear-gradient(90deg,#389c87,#8df4c7);border-radius:20px;transition:width .18s}.raid-shell progress::-moz-progress-bar{background:#8df4c7}.raid-boss-health progress{border:1px solid #a5c6a4;height:18px}.raid-boss-health span{text-align:center;margin-top:5px;display:block;font-size:10px!important}.raid-clock{font-variant-numeric:tabular-nums;color:#ffe2a0;font-size:26px}.raid-arena{aspect-ratio:16/7;isolation:isolate;background-size:100% 100%;border:2px solid #738174;border-radius:14px;max-height:56vh;position:relative;overflow:hidden;container-type:size}.raid-boss{z-index:2;filter:drop-shadow(0 9px 5px #12252280);width:36%;height:63%;position:absolute;top:4%;left:57%}.raid-boss img{object-fit:contain;width:100%;height:100%;image-rendering:pixelated}.phase-1 .raid-boss{filter:drop-shadow(0 0 8px #9edbbc)}.phase-2 .raid-boss{filter:drop-shadow(0 0 14px #7dffda)saturate(1.2)}.raid-exposed{animation:.7s ease-in-out infinite alternate raid-core}.raid-befriended{filter:drop-shadow(0 0 18px #ffc)}.raid-team{pointer-events:none;z-index:3;position:absolute;inset:0}.raid-team>div{width:min(var(--raid-pet-width), var(--raid-pet-height));height:min(var(--raid-pet-width), var(--raid-pet-height));pointer-events:auto;flex-direction:column;justify-content:end;align-items:center;display:flex;position:absolute;translate:-50%}.raid-team img{object-fit:contain;width:100%;height:calc(100% - 18px);min-height:0;image-rendering:pixelated;filter:drop-shadow(0 5px 3px #10242a99)}.raid-team progress{flex-shrink:0;width:75%;height:4px}.raid-team small{color:#fff;text-shadow:0 1px 3px #000;text-overflow:ellipsis;white-space:nowrap;background:#142e37b3;border-radius:4px;max-width:100%;padding:0 4px;font-size:clamp(7px,.85vw,11px);line-height:14px;overflow:hidden}.raid-ko img{filter:grayscale()brightness(.65);opacity:.55;transform:rotate(-15deg)}.raid-ko>span{color:#ffd6b6;background:#20323be8;border-radius:3px;padding:3px;font-size:8px;position:absolute;bottom:14px}@container (width<=600px){.raid-team img{height:calc(100% - 4px)}.raid-team small{clip-path:inset(50%);width:1px;height:1px;padding:0;position:absolute}.raid-ko>span{text-align:center;width:12px;height:12px;padding:0;font-size:0;bottom:0}.raid-ko>span:after{content:"×";font-size:11px;line-height:12px}}.raid-marked:before{content:"";border:2px dashed #ffd472;border-radius:50%;animation:.65s infinite alternate raid-core;position:absolute;inset:5px}.raid-rescued{color:#b6ffb4;font-size:11px;animation:1s ease-out both raid-rise;position:absolute;top:5px}.raid-warning{color:#fff6d7;z-index:4;background:#173232e8;border:1px solid #e6cc8d80;border-radius:9px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;width:32%;padding:10px;font-size:12px;display:flex;position:absolute;bottom:5%;right:2%}.raid-warning span{font-variant-numeric:tabular-nums;font-size:20px}.raid-warning small{font-size:10px}.raid-warning.committed{background:#68302ce8;border-color:#ffa07a}.raid-warning.accelerating{animation:.3s 3 raid-alert}.raid-arena-overlay{z-index:8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);text-align:center;background:#0a2535bd;flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;inset:0}.raid-arena-overlay svg{color:#ffe094}.raid-arena-overlay h3{margin:12px 0;font-size:clamp(20px,3vw,40px)}.raid-arena-overlay p{max-width:430px;font-size:13px;line-height:1.5}.raid-live-feed{color:#f4d998;text-align:center;min-height:31px;padding:8px 0;font-size:12px}.raid-player-console{grid-template-columns:160px 1fr;gap:20px;display:grid}.raid-player-card{background:#1a3940;border:1px solid #3a6165;border-radius:12px;flex-direction:column;align-items:center;padding:12px;display:flex}.raid-player-card img{object-fit:contain;width:110px;height:105px;image-rendering:pixelated}.raid-player-card div{gap:6px;width:100%;font-size:12px;display:grid}.raid-player-card small{color:#ecd18e;font-size:10px}.raid-moves{grid-template-columns:repeat(6,1fr);gap:6px;display:grid}.raid-moves button{flex-direction:column;gap:3px;padding:8px 5px;font-size:11px}.raid-moves button[aria-pressed=true]{color:#fff4c3;background:#56633e;border-color:#d9d68b}.raid-moves small{opacity:.75;font-size:9px}.raid-question{color:#1b3c42;background:#f5f2e3;border-radius:12px;margin-top:14px;padding:17px}.raid-question h3{margin-bottom:12px;font-size:clamp(16px,1.7vw,22px);line-height:1.4}.raid-question form{gap:8px;display:flex}.raid-question input{color:#173e43!important;background:#fff!important;border-color:#9eaea2!important}.raid-question p{min-height:18px;margin-top:8px;font-size:12px}.raid-question .raid-hint{color:#376259;background:0 0;border:0;min-height:28px;padding:4px 0;font-size:11px}.raid-question>strong{color:#95521d;margin-bottom:8px;font-size:12px;display:block}.raid-answers{grid-template-columns:1fr 1fr;gap:8px;display:grid}.raid-answers button{color:#254b3a;text-align:left;background:#e1e9d9;border-color:#b2c2a5;justify-content:start}.raid-victory{text-align:center;flex-direction:column;align-items:center;gap:15px;padding:25px;display:flex}.raid-victory svg{color:var(--raid-gold)}.raid-victory img{object-fit:contain;width:150px;height:150px}.raid-victory small{color:#bcd4c8;font-size:12px}.raid-project-link{text-align:right;color:#beded3;margin-top:20px;font-size:12px;display:block}.raid-results{margin:20px 0;font-size:12px;overflow:auto}.raid-results summary{cursor:pointer;padding:8px}.raid-results table{border-collapse:collapse;width:100%}.raid-results th,.raid-results td{text-align:left;border-bottom:1px solid #416168;padding:10px}.raid-confirm{z-index:10000;background:#081b2bd9;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.raid-confirm>div{background:#173b43;border:1px solid #74938b;border-radius:16px;max-width:420px;padding:28px}.raid-confirm p{margin:15px 0 25px;line-height:1.6}.raid-confirm button{margin:3px}.raid-projector{border-radius:0;max-width:none;min-height:100vh;margin:0}.raid-projector .raid-arena{aspect-ratio:16/8;max-height:70vh}.raid-attack-effects,.raid-shot{pointer-events:none;position:absolute;inset:0}.raid-attack-effects{z-index:6}.raid-shot{--raid-spell-color:#fff0b0}.raid-spell{left:var(--raid-from-x);top:var(--raid-from-y);background:var(--raid-spell-color);width:clamp(9px,1.8cqw,24px);height:clamp(9px,1.8cqw,24px);box-shadow:0 0 12px 4px var(--raid-spell-color);border-radius:40%;animation:.42s ease-in both raid-projectile;position:absolute;translate:-50% -50%}.raid-spell-Ember{--raid-spell-color:#ff9c55}.raid-spell-Water{--raid-spell-color:#77dfff}.raid-spell-Leaf{--raid-spell-color:#99ef8a}.raid-spell-Electric{--raid-spell-color:#fff780}.raid-spell-Bug{--raid-spell-color:#c5ed71}.raid-spell-Rock{--raid-spell-color:#d6bea0}.raid-spell-Rock .raid-spell{border-radius:3px}.raid-cast-origin,.raid-spell-impact{left:var(--raid-from-x);top:var(--raid-from-y);border:3px solid var(--raid-spell-color);width:clamp(16px,3cqw,42px);height:clamp(16px,3cqw,42px);box-shadow:0 0 12px var(--raid-spell-color);border-radius:50%;animation:.42s ease-out both raid-cast-ring;position:absolute;translate:-50% -50%}.raid-spell-impact{left:var(--raid-to-x);top:var(--raid-to-y);animation:.22s ease-out .4s both raid-cast-ring}.raid-shot-name{left:var(--raid-from-x);top:var(--raid-from-y);white-space:nowrap;text-overflow:ellipsis;border:1px solid var(--raid-spell-color);color:#fff;background:#102a32eb;border-radius:5px;max-width:130px;padding:3px 6px;font-size:clamp(8px,1cqw,12px);animation:.75s ease-out both raid-caster-label;position:absolute;overflow:hidden;translate:-50% calc(-100% - 18px)}.raid-boss-shot{--raid-spell-color:#ffbf80}.raid-boss-shot .raid-spell{clip-path:polygon(22% 0,78% 9%,100% 45%,72% 100%,16% 82%,0 35%);filter:drop-shadow(5px 0 3px #ffbe78);background:linear-gradient(135deg,#ffe7ab 0 25%,#b58255 26% 63%,#594838 64%);width:clamp(12px,2.2cqw,30px);height:clamp(12px,2.2cqw,30px)}.raid-boss-shot .raid-spell-impact{background:#ffb36b55;border-color:#ffe5a6;box-shadow:0 0 14px #ff9561,inset 0 0 8px #ffe5a6}.raid-dodge-label{left:var(--raid-to-x);top:var(--raid-to-y);color:#bafaff;border-color:#bafaff;animation:.45s ease-out .4s both raid-caster-label}.raid-shot-dodged .raid-spell{animation-name:raid-projectile-miss}@keyframes raid-projectile-miss{0%{opacity:1}to{left:calc(var(--raid-to-x) - 2%);top:calc(var(--raid-to-y) + 4%);opacity:0;transform:scale(.5)rotate(150deg)}}.raid-recoil{animation:.2s ease-out raid-recoil}.raid-casting{animation:.25s ease-out raid-cast}@keyframes raid-projectile{0%{opacity:1}85%{opacity:1}to{left:var(--raid-to-x);top:var(--raid-to-y);opacity:0;transform:scale(.7)rotate(150deg)}}@keyframes raid-cast-ring{0%{opacity:0;transform:scale(.45)}20%{opacity:1}to{opacity:0;transform:scale(1.5)}}@keyframes raid-caster-label{0%,65%{opacity:1}to{opacity:0}}@keyframes raid-cast{50%{filter:brightness(1.35);transform:translateY(-5px)scale(1.06)}}@keyframes raid-recoil{40%{filter:brightness(1.6);transform:translate(5px)}}@keyframes raid-core{to{filter:drop-shadow(0 0 20px #b7ffdf)brightness(1.2)}}@keyframes raid-alert{50%{background:#85442b;transform:scale(1.04)}}@keyframes raid-rise{to{opacity:0;transform:translateY(-18px)}}@media (max-width:1000px){.raid-moves{grid-template-columns:repeat(3,1fr)}.raid-shell{padding:16px}.raid-hud{gap:12px}.raid-player-console{grid-template-columns:120px 1fr;gap:12px}.raid-player-card img{width:90px;height:85px}.raid-arena{max-height:38vh}.raid-warning{padding:7px;font-size:10px}.raid-warning span{font-size:15px}.raid-intro>img{height:220px}}@media (max-width:650px){.raid-shell{border-radius:0;margin:0;padding:12px}.raid-top{gap:8px}.raid-setup,.raid-lobby{grid-template-columns:1fr}.raid-intro{padding:18px}.raid-intro>img{height:180px}.raid-lobby-art img{height:160px}.raid-hud{grid-template-columns:1fr auto}.raid-boss-health{grid-area:2/1/auto/-1}.raid-hud h3{font-size:14px}.raid-top .raid-eyebrow{font-size:8px}.raid-tools{gap:4px}.raid-tools button{min-height:35px;padding:7px}.raid-arena{aspect-ratio:4/3;background-size:cover;max-height:36vh}.raid-player-console{grid-template-columns:1fr}.raid-player-card{flex-direction:row;gap:10px;padding:7px}.raid-player-card img{width:50px;height:46px}.raid-player-card div{grid-template-columns:1fr 1fr;display:grid}.raid-warning{width:38%}.raid-question{padding:12px}.raid-question form{gap:5px}.raid-answers{grid-template-columns:1fr}.raid-roster{grid-template-columns:1fr 1fr}.raid-statusline>span:nth-child(2){display:none}.raid-projector .raid-arena{max-height:65vh}}@media (prefers-reduced-motion:reduce){.raid-shell *{transition:none!important;animation:none!important}.raid-spell{display:none}.raid-cast-origin,.raid-spell-impact,.raid-shot-name{opacity:1}.raid-marked:before{border-style:solid}.raid-exposed{filter:drop-shadow(0 0 12px #b9ffdf)}}:where(html[data-motion=reduced]) .raid-shell *{transition:none!important;animation:none!important}:where(html[data-motion=reduced]) .raid-spell{display:none}:where(html[data-motion=reduced]) .raid-cast-origin,:where(html[data-motion=reduced]) .raid-spell-impact,:where(html[data-motion=reduced]) .raid-shot-name{opacity:1}:where(html[data-motion=reduced]) .raid-marked:before{border-style:solid}:where(html[data-motion=reduced]) .raid-exposed{filter:drop-shadow(0 0 12px #b9ffdf)}.raid-arena{aspect-ratio:auto;width:100%;height:clamp(230px,45vh,540px);max-height:none}.raid-team img{transform:scaleX(-1)}.raid-ko img{transform:rotate(-15deg)scaleX(-1)}.raid-fractures{fill:none;stroke:#d2ffe4;stroke-width:.8px;filter:drop-shadow(0 0 2px #68ffd3);width:100%;height:100%;position:absolute;inset:0}.phase-2 .raid-fractures{stroke-width:1.6px}.raid-core-flare{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);background:#85ffce80;width:15%;height:19%;animation:.7s infinite alternate raid-core;position:absolute;top:42%;left:23%;box-shadow:0 0 20px #60fcda}.raid-struck{animation:.24s ease-out .4s raid-recoil}.raid-damage{color:#fff3c9;text-shadow:1px 2px #4c201b;font-size:17px;animation:1.2s .4s both raid-rise;position:absolute;top:0;left:35%}.raid-shielded:after{content:"";pointer-events:none;background:#90ecff25;border:2px solid #bafaff;border-radius:50%;position:absolute;inset:5px;box-shadow:0 0 9px #81ddf9}.raid-student{min-height:100dvh;margin:0 auto;padding:14px 20px}.raid-student .raid-top{margin-bottom:10px}.raid-student .raid-top h2{font-size:25px}.raid-student .raid-top h2 span{margin-top:2px;font-size:11px}.raid-student .raid-statusline{margin-bottom:4px}.raid-student .raid-hud{padding:5px 0 10px}.raid-student .raid-arena{height:clamp(170px,30vh,320px)}.raid-student .raid-live-feed{min-height:25px;padding:5px}.raid-student .raid-question{margin-top:9px;padding:12px}.raid-student .raid-question h3{margin-bottom:9px;font-size:18px}.raid-student .raid-player-card img{height:95px}.raid-projector .raid-arena{aspect-ratio:auto;height:67vh;max-height:none}@media (max-width:650px){.raid-student{padding:10px}.raid-student .raid-top .raid-eyebrow,.raid-student .raid-top h2 span{display:none}.raid-student .raid-top h2{font-size:22px}.raid-student .raid-hud{gap:4px}.raid-student .raid-clock{font-size:20px}.raid-student .raid-arena{height:clamp(130px,24vh,220px)}.raid-student .raid-player-card img{height:40px}.raid-student .raid-player-console{gap:6px}.raid-student .raid-moves button{min-height:35px;padding:4px}.raid-student .raid-live-feed{min-height:20px;font-size:10px}.raid-student .raid-question{z-index:9;position:sticky;bottom:0}.raid-student .raid-question h3{font-size:16px}}@media (prefers-reduced-motion:reduce){.raid-core-flare,.raid-struck,.raid-damage{animation:none}.raid-damage{opacity:1}}:where(html[data-motion=reduced]) .raid-core-flare,:where(html[data-motion=reduced]) .raid-struck,:where(html[data-motion=reduced]) .raid-damage{animation:none}:where(html[data-motion=reduced]) .raid-damage{opacity:1}.raid-projector{padding:14px 22px}.raid-projector .raid-top{margin-bottom:10px}.raid-projector .raid-top h2{font-size:28px}.raid-projector .raid-top h2 span{font-size:11px}.raid-projector .raid-statusline{margin-bottom:5px}.raid-projector .raid-hud{padding:5px 0 10px}.raid-projector .raid-arena{height:calc(100dvh - 280px);min-height:240px}
