.raid-strategy-panel {
  display:none;
  min-width:0;
  color:#e8eeef;
  background:#06090c;
  font-family:Inter,Segoe UI,Arial,sans-serif;
}
.raid-strategy-panel * { box-sizing:border-box; }
body.raid-strategy-active .workspace>:not(.raid-strategy-panel) { display:none!important; }
body.raid-strategy-active .raid-strategy-panel { display:block; }
body.raid-strategy-active .workspace { display:block; min-width:0; }
body.raid-strategy-active { overflow-x:hidden; }

.rs-shell {
  --gold:#e7c26f;
  --aqua:#7ce0d8;
  --line:rgba(183,208,208,.18);
  min-height:100vh;
  background:
    radial-gradient(900px 520px at 82% -12%,rgba(29,108,103,.38),transparent 66%),
    radial-gradient(640px 420px at 0 100%,rgba(109,71,20,.25),transparent 72%),
    repeating-linear-gradient(0deg,rgba(255,255,255,.014) 0 1px,transparent 1px 4px),
    #070a0d;
}
.rs-titlebar {
  min-height:92px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:15px 30px;
  border-bottom:1px solid rgba(231,194,111,.38);
  background:linear-gradient(90deg,rgba(6,9,12,.99),rgba(17,26,30,.95));
  box-shadow:0 9px 28px rgba(0,0,0,.42);
}
.rs-kicker,.rs-encounter {
  display:flex;
  align-items:center;
  gap:8px;
  color:#86d9d2;
  font-size:11px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.rs-kicker i,.rs-encounter i { width:4px; height:4px; border-radius:50%; background:var(--gold); box-shadow:0 0 8px var(--gold); }
.rs-titlebar h2 {
  margin:5px 0 0;
  color:#f5d79a;
  font:700 29px/1 Georgia,Cambria,serif;
  text-shadow:0 2px 14px #000;
}
.rs-title-meta { display:grid; gap:5px; color:#8d9da1; text-align:right; font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.rs-title-meta b { color:#dec17d; font-size:11px; }

.rs-layout { display:grid; grid-template-columns:300px minmax(0,1fr); gap:15px; max-width:100%; min-height:calc(100vh - 92px); padding:15px; overflow:hidden; }
.rs-boss-list {
  align-self:start;
  display:grid;
  gap:10px;
  padding:10px;
  border:1px solid var(--line);
  background:linear-gradient(180deg,#182127,#0a0f13);
  box-shadow:0 18px 42px rgba(0,0,0,.38),inset 0 1px rgba(255,255,255,.04);
}
.rs-boss-list-head,.rs-raid-group-title { display:flex; align-items:center; justify-content:space-between; font-size:10px; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.rs-boss-list-head { padding:4px 7px 12px; border-bottom:1px solid rgba(231,194,111,.22); color:#afbec1; }
.rs-boss-list-head b { color:#f0cc80; font:700 17px Georgia,serif; }
.rs-raid-group { display:grid; gap:3px; }
.rs-raid-group-title { padding:9px 7px 6px; border-bottom:1px solid rgba(124,224,216,.15); color:#81d5cf; }
.rs-raid-group-title b { color:#9daeb1; font-size:9px; }
.rs-boss {
  display:grid;
  grid-template-columns:43px minmax(0,1fr) 20px;
  gap:9px;
  align-items:center;
  min-height:55px;
  padding:6px 7px;
  border:1px solid transparent;
  border-left:2px solid transparent;
  background:transparent;
  color:#dce6e7;
  text-align:left;
  transition:background .16s,border .16s,transform .16s;
}
.rs-boss:hover { transform:translateX(3px); border-color:rgba(124,224,216,.3); background:rgba(48,118,113,.18); }
.rs-boss.active { border-color:rgba(231,194,111,.56); border-left-color:var(--boss-c); background:linear-gradient(90deg,rgba(231,194,111,.17),rgba(75,177,168,.12),transparent); color:#fff; }
.rs-boss-icon { position:relative; width:39px; height:39px; overflow:hidden; border:1px solid var(--boss-c); background:#050709; box-shadow:0 0 0 2px rgba(0,0,0,.55),0 0 14px color-mix(in srgb,var(--boss-c) 44%,transparent); }
.rs-boss-icon:after { position:absolute; inset:0; content:""; background:linear-gradient(135deg,rgba(255,255,255,.22),transparent 39%,rgba(0,0,0,.36)); }
.rs-boss-icon img { width:100%; height:100%; object-fit:cover; }
.rs-boss-copy { min-width:0; }
.rs-boss-copy small { display:block; color:#86989c; font-size:9px; font-weight:800; letter-spacing:.11em; text-transform:uppercase; }
.rs-boss-copy strong { display:block; overflow:hidden; margin-top:3px; font-size:13px; text-overflow:ellipsis; white-space:nowrap; }
.rs-boss>i { color:#718489; font:11px Georgia,serif; }
.rs-boss.active>i { color:var(--gold); }
.rs-rail-foot { display:grid; gap:4px; margin:3px 5px 0; padding:13px 2px 2px; border-top:1px solid rgba(255,255,255,.08); color:#839498; font-size:9px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.rs-rail-foot b { color:#c8d5d6; font-size:11px; }

.rs-book { display:grid; grid-template-rows:auto minmax(0,1fr) auto; min-width:0; min-height:calc(100vh - 122px); border:1px solid rgba(231,194,111,.36); background:linear-gradient(135deg,#172126,#090e12); box-shadow:0 22px 52px rgba(0,0,0,.42),inset 0 0 96px rgba(79,208,196,.05); }
.rs-book-head { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:17px 23px; border-bottom:1px solid rgba(231,194,111,.27); background:linear-gradient(100deg,rgba(42,62,63,.93),rgba(15,23,27,.97) 60%,rgba(53,41,22,.88)); }
.rs-encounter-identity { display:flex; align-items:center; gap:14px; min-width:0; }
.rs-crest { position:relative; flex:none; width:64px; height:64px; overflow:hidden; border:2px solid #f0ce89; border-radius:50%; background:#050708; box-shadow:0 0 0 4px rgba(0,0,0,.55),0 0 25px rgba(231,194,111,.28); }
.rs-crest:after { position:absolute; inset:0; content:""; background:linear-gradient(135deg,rgba(255,255,255,.22),transparent 42%,rgba(0,0,0,.35)); }
.rs-crest img { width:100%; height:100%; object-fit:cover; }
.rs-book-head h3 { overflow:hidden; margin:4px 0 0; color:#f9dfa8; font:700 31px/1 Georgia,Cambria,serif; text-overflow:ellipsis; white-space:nowrap; }
.rs-difficulty { display:flex; flex:none; padding:3px; border:1px solid rgba(211,226,226,.3); background:#06090b; box-shadow:inset 0 0 14px #0008; }
.rs-difficulty button { min-width:94px; border:0; background:transparent; color:#95a7aa; padding:10px 14px; font-size:11px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.rs-difficulty button.active { background:linear-gradient(135deg,#bd7e2b,#f5d57c); color:#160f05; box-shadow:0 0 19px rgba(231,194,111,.34); }

.rs-book-body { display:grid; grid-template-columns:minmax(620px,1.3fr) minmax(360px,.7fr); gap:20px; padding:18px; }
.rs-command { display:grid; align-content:start; gap:14px; }
.rs-command-heading,.rs-mechanics-head { display:flex; align-items:end; justify-content:space-between; gap:16px; padding-bottom:11px; border-bottom:1px solid rgba(124,224,216,.25); }
.rs-command-heading span,.rs-mechanics-head>div>span { color:#85ddd5; font-size:11px; font-weight:900; letter-spacing:.15em; text-transform:uppercase; }
.rs-command-heading b { color:#e7c77f; font-size:10px; letter-spacing:.1em; }
.rs-overview { margin:0; padding:2px 0 17px; border-bottom:1px solid rgba(124,224,216,.18); color:#e7eeee; font:18px/1.55 Georgia,Cambria,serif; }
.rs-directives { display:grid; gap:0; margin:0; padding:0; list-style:none; border:1px solid rgba(134,194,190,.27); background:linear-gradient(145deg,rgba(28,48,51,.9),rgba(8,14,18,.96)); }
.rs-directives li { display:grid; grid-template-columns:52px minmax(0,1fr); gap:12px; padding:14px 14px 14px 12px; border-bottom:1px solid rgba(124,224,216,.16); }
.rs-directives li:last-child { border-bottom:0; }
.rs-directives li>span { align-self:start; color:#e8c778; font:700 22px/1 Georgia,Cambria,serif; letter-spacing:-.06em; }
.rs-directives b { display:block; margin:1px 0 5px; color:#91e2da; font-size:10px; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.rs-directives p { margin:0; color:#d7e1e1; font-size:14px; line-height:1.48; }

.rs-raid-call { display:grid; gap:4px; padding:12px 14px; border-left:3px solid var(--gold); background:linear-gradient(90deg,rgba(129,83,26,.47),rgba(45,34,19,.14)); color:#e4eceb; }
.rs-raid-call span { color:#f1cd78; font-size:10px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.rs-raid-call b { font-size:13px; line-height:1.42; }
.rs-role-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.rs-role { padding:11px; border-top:2px solid; background:rgba(7,13,17,.68); }
.rs-role b { display:block; margin-bottom:5px; font-size:10px; letter-spacing:.1em; text-transform:uppercase; }
.rs-role span { color:#c3d0d1; font-size:12px; line-height:1.4; }
.rs-role-tank { border-color:#9bc3ff; }.rs-role-tank b { color:#aacaff; }
.rs-role-healer { border-color:#90e9be; }.rs-role-healer b { color:#a9f0cb; }
.rs-role-dps { border-color:#eac46b; }.rs-role-dps b { color:#f5d47d; }

.rs-execution-card { display:grid; gap:9px; padding:13px; border:1px solid rgba(231,194,111,.28); background:linear-gradient(100deg,rgba(42,35,22,.72),rgba(10,17,21,.92)); }
.rs-execution-card header { display:flex; align-items:end; justify-content:space-between; gap:12px; padding-bottom:8px; border-bottom:1px solid rgba(231,194,111,.2); }
.rs-execution-card header span { color:#e7c77f; font-size:10px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.rs-execution-card h5 { margin:3px 0 0; color:#f4dba4; font:700 17px Georgia,Cambria,serif; }
.rs-execution-card header>b { color:#98aaa9; font-size:9px; letter-spacing:.11em; text-transform:uppercase; }
.rs-execution-card .rs-role-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.rs-execution-card .rs-role { display:grid; grid-template-columns:37px minmax(0,1fr); gap:8px; padding:8px 0 0; border-top:0; background:transparent; }
.rs-execution-card .rs-role img { width:36px; height:36px; border:1px solid currentColor; object-fit:cover; }
.rs-execution-card .rs-role b { margin-bottom:3px; }
.rs-execution-card .rs-role span { font-size:11px; }

.rs-tactical { display:grid; align-content:start; gap:10px; min-width:0; }
.rs-tactical header { display:flex; align-items:end; justify-content:space-between; gap:14px; padding:0 2px 10px; border-bottom:1px solid rgba(124,224,216,.3); }
.rs-tactical header>div:first-child>span { color:#85ddd5; font-size:10px; font-weight:900; letter-spacing:.15em; text-transform:uppercase; }
.rs-tactical h4 { margin:4px 0 0; color:#f4dba4; font:700 24px Georgia,Cambria,serif; }
.rs-tactical header>a { color:#e6c16c; font-size:10px; font-weight:900; letter-spacing:.1em; text-decoration:none; text-transform:uppercase; }.rs-tactical header>a:hover { color:#fff0bd; }
.rs-room-reel { display:grid; grid-template-columns:minmax(0,1.34fr) minmax(270px,.66fr); overflow:hidden; border:1px solid rgba(232,194,111,.65); background:#090d10; box-shadow:0 17px 36px rgba(0,0,0,.42),inset 0 0 0 5px rgba(0,0,0,.23); }
.rs-room-video { position:relative; min-height:390px; overflow:hidden; background:#050809; cursor:zoom-in; }.rs-room-video video { display:block; width:100%; height:100%; min-height:390px; object-fit:cover; transition:transform .28s cubic-bezier(.2,.8,.2,1); }.rs-room-video.is-previewing video { transform:scale(1.07); }.rs-room-video>span { position:absolute; left:0; right:0; bottom:0; padding:9px 12px; border-top:1px solid rgba(232,194,111,.35); background:linear-gradient(90deg,rgba(5,9,11,.94),rgba(5,9,11,.55)); color:#f1d28a; font-size:9px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; pointer-events:none; }
.rs-room-reel aside { display:grid; align-content:start; gap:9px; padding:18px 16px; background:linear-gradient(160deg,rgba(23,40,43,.97),rgba(9,15,19,.98)); }.rs-room-reel aside>span { color:#85ddd5; font-size:9px; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }.rs-room-reel aside h5 { margin:0 0 3px; color:#f1d395; font:700 20px Georgia,Cambria,serif; text-transform:capitalize; }
.rs-room-reel aside ol { display:grid; gap:0; margin:0; padding:0; list-style:none; border-top:1px solid rgba(124,224,216,.2); }.rs-room-reel aside li { display:grid; grid-template-columns:27px minmax(0,1fr); gap:7px; padding:11px 0; border-bottom:1px solid rgba(124,224,216,.16); }.rs-room-reel aside li>b { color:#e7c56f; font:700 16px/1 Georgia,Cambria,serif; }.rs-room-reel aside li p { margin:0; color:#d6e0e0; font-size:12px; line-height:1.4; }.rs-room-reel aside footer { color:#95aaac; font-size:10px; line-height:1.4; }
.rs-room-unavailable { display:grid; justify-items:center; align-content:center; gap:10px; min-height:390px; padding:25px; color:#e3ebea; text-align:center; }.rs-room-unavailable img { width:92px; height:92px; border:1px solid #e8c26f; object-fit:cover; }.rs-room-unavailable b { color:#f1d395; font:700 20px Georgia,Cambria,serif; }.rs-room-unavailable span { max-width:300px; color:#a9bbbc; font-size:12px; line-height:1.45; }
.rs-replay-source { color:#e6c16c; font-size:10px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }.rs-position-replay { overflow:hidden; border:1px solid rgba(232,194,111,.7); background:#090d10; box-shadow:0 17px 36px rgba(0,0,0,.42),inset 0 0 0 5px rgba(0,0,0,.23); }.rs-position-map { position:relative; min-height:520px; overflow:hidden; background-color:#11171a; background-image:linear-gradient(90deg,rgba(4,10,12,.3),transparent 27%,transparent 73%,rgba(4,10,12,.35)),linear-gradient(180deg,rgba(4,9,11,.14),rgba(4,9,11,.35)),var(--room-map); background-position:50% 52%; background-repeat:no-repeat; background-size:auto,auto,245% auto; isolation:isolate; }.rs-map-grid { position:absolute; z-index:0; inset:0; opacity:.32; pointer-events:none; background-image:linear-gradient(rgba(152,222,214,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(152,222,214,.1) 1px); background-size:10% 10%; mask-image:linear-gradient(transparent,black 12%,black 88%,transparent); }.rs-replay-actors { position:absolute; z-index:2; inset:0; }.rs-replay-actor { position:absolute; left:var(--x); top:var(--y); display:grid; grid-template-columns:35px auto; gap:5px; align-items:center; min-width:max-content; padding:3px 8px 3px 3px; border:1px solid currentColor; border-radius:18px; background:rgba(3,9,12,.92); box-shadow:0 0 0 2px rgba(0,0,0,.65),0 8px 20px rgba(0,0,0,.56); color:#d9e8e5; opacity:0; pointer-events:none; transform:translate(-50%,-50%); transition:left 1.25s cubic-bezier(.22,.78,.2,1),top 1.25s cubic-bezier(.22,.78,.2,1),opacity .3s ease,box-shadow .3s ease; }.rs-replay-actor.is-visible { opacity:1; }.rs-replay-actor img { width:32px; height:32px; border:1px solid currentColor; border-radius:50%; object-fit:cover; }.rs-replay-actor b { font-size:8px; font-weight:950; letter-spacing:.09em; text-transform:uppercase; }.rs-replay-tank { color:#a7c4ff; }.rs-replay-healer { color:#93efbe; }.rs-replay-dps { color:#f4d075; }.rs-replay-boss { color:#edab72; border-radius:4px; }.rs-replay-boss img { border-radius:2px; }.rs-replay-marker { grid-template-columns:1fr; padding:8px 11px; border-color:#d985ed; color:#f0b8ff; box-shadow:0 0 0 2px rgba(0,0,0,.62),0 0 26px rgba(210,119,234,.54); }.rs-replay-hud { position:absolute; z-index:3; top:14px; right:14px; display:flex; align-items:center; gap:9px; }.rs-replay-hud>span { padding:8px 10px; background:rgba(5,11,14,.88); color:#f1d48d; font-size:10px; font-weight:950; letter-spacing:.1em; }.rs-replay-hud button { border:1px solid rgba(235,202,122,.62); background:rgba(7,15,18,.9); color:#dfe9e7; cursor:pointer; padding:8px 10px; font-size:9px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }.rs-replay-hud button:hover { color:#fff0c2; }.rs-replay-callout { display:grid; grid-template-columns:minmax(210px,.55fr) minmax(0,1.15fr) auto; align-items:center; gap:18px; padding:17px 18px; border-top:1px solid rgba(232,194,111,.48); background:linear-gradient(115deg,#17292e,#0a1115); }.rs-replay-callout span { color:#82dad3; font-size:9px; font-weight:950; letter-spacing:.14em; text-transform:uppercase; }.rs-replay-callout h5 { margin:5px 0 0; color:#f2d697; font:700 20px Georgia,Cambria,serif; }.rs-replay-callout p { margin:0; color:#d5e0df; font-size:13px; line-height:1.52; }.rs-replay-progress { display:flex; gap:6px; }.rs-replay-progress i { width:22px; height:4px; background:rgba(148,185,183,.28); }.rs-replay-progress i.active { background:#e9c76f; box-shadow:0 0 10px rgba(233,199,111,.75); }
.rs-map-key { display:flex; gap:12px; padding-bottom:3px; color:#bdc9c9; font-size:9px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.rs-map-key span { display:flex; align-items:center; gap:4px; }.rs-map-key i { width:8px; height:8px; border-radius:50%; box-shadow:0 0 0 2px rgba(0,0,0,.55); }.rs-key-tank{background:#87aefa}.rs-key-healer{background:#72daae}.rs-key-dps{background:#e6bb58}
.rs-tactical-map { position:relative; min-height:500px; margin:0; overflow:hidden; border:1px solid rgba(232,194,111,.7); background-color:#17100a; background-image:var(--room-map); background-position:50% 14%; background-repeat:no-repeat; background-size:180% auto; box-shadow:0 17px 36px rgba(0,0,0,.42),inset 0 0 0 5px rgba(0,0,0,.23); isolation:isolate; }
.rs-tactical-map:before { position:absolute; z-index:-1; inset:0; content:""; background:linear-gradient(90deg,rgba(4,10,12,.25),transparent 24%,transparent 76%,rgba(4,10,12,.3)),linear-gradient(180deg,rgba(3,7,8,.22),transparent 22%,rgba(3,7,8,.35)); }
.rs-map-scanlines { position:absolute; inset:0; pointer-events:none; background:repeating-linear-gradient(0deg,rgba(255,255,255,.045) 0 1px,transparent 1px 4px); mix-blend-mode:overlay; opacity:.38; }
.rs-map-boss-pin,.rs-map-pin,.rs-map-hazard { position:absolute; left:var(--x); top:var(--y); transform:translate(-50%,-50%); z-index:2; }
.rs-map-boss-pin { display:grid; grid-template-columns:42px auto; gap:7px; align-items:center; padding:4px 10px 4px 4px; border:1px solid var(--boss-c); border-radius:3px; background:rgba(7,12,15,.91); box-shadow:0 0 0 3px rgba(0,0,0,.43),0 0 22px color-mix(in srgb,var(--boss-c) 52%,transparent); color:#f4dfaf; font-size:10px; font-weight:900; letter-spacing:.09em; text-transform:uppercase; white-space:nowrap; }
.rs-map-boss-pin img { width:40px; height:40px; border:1px solid var(--boss-c); object-fit:cover; }
.rs-map-pin { display:grid; grid-template-columns:30px auto; gap:6px; align-items:center; padding:3px 8px 3px 3px; border:1px solid currentColor; border-radius:20px; background:rgba(6,11,14,.9); box-shadow:0 5px 15px rgba(0,0,0,.48); font-size:9px; font-weight:950; letter-spacing:.09em; text-shadow:0 1px 3px #000; white-space:nowrap; }
.rs-map-pin:after { position:absolute; left:13px; top:calc(100% + 2px); width:1px; height:24px; content:""; background:currentColor; opacity:.65; transform:rotate(23deg); transform-origin:top; }
.rs-map-pin img { width:28px; height:28px; border:1px solid currentColor; border-radius:50%; object-fit:cover; }.rs-map-pin-tank{color:#a7c4ff}.rs-map-pin-healer{color:#93efbe}.rs-map-pin-dps{color:#f4d075}
.rs-map-hazard { display:grid; justify-items:center; gap:4px; color:#f4c55e; font-size:8px; font-weight:950; letter-spacing:.1em; text-align:center; text-shadow:0 1px 3px #000; text-transform:uppercase; white-space:nowrap; }.rs-map-hazard i { width:45px; height:45px; border:2px solid #e9bf58; border-radius:50%; background:radial-gradient(circle,rgba(233,191,88,.5) 0 18%,rgba(108,25,24,.43) 20% 38%,transparent 40%); box-shadow:0 0 0 8px rgba(233,191,88,.12),0 0 23px rgba(233,191,88,.48); }
.rs-tactical-map figcaption { position:absolute; z-index:3; left:0; right:0; bottom:0; display:flex; align-items:center; justify-content:space-between; gap:14px; padding:9px 13px; border-top:1px solid rgba(229,195,109,.45); background:rgba(5,10,12,.9); color:#c9d6d5; font-size:10px; }.rs-tactical-map figcaption b { color:#f0cf86; font-size:10px; letter-spacing:.09em; text-transform:uppercase; }.rs-tactical-map figcaption span { text-align:right; }

.rs-mechanics { grid-column:1/-1; display:grid; grid-template-rows:auto auto auto; align-content:start; gap:13px; min-width:0; }
.rs-mechanics-head h4 { margin:4px 0 0; color:#f4dba4; font:700 23px Georgia,Cambria,serif; }
.rs-mechanics-head p { margin:0; color:#91a4a7; font-size:11px; text-align:right; }
.rs-mechanic-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-auto-rows:minmax(0,max-content); align-content:start; gap:11px; }
.rs-mechanic { position:relative; display:grid; grid-template-columns:188px minmax(0,1fr); gap:14px; min-width:0; min-height:205px; padding:14px; overflow:hidden; border:1px solid rgba(142,180,179,.28); border-top:2px solid #5dccbf; background:linear-gradient(145deg,#1c2d32,#0d151a); box-shadow:inset 0 1px rgba(255,255,255,.04); }
.rs-mechanic:after { position:absolute; right:-29px; top:-39px; width:124px; height:124px; content:""; border:1px solid rgba(124,224,216,.12); border-radius:50%; }
.rs-ability-icon { position:relative; z-index:1; width:70px; height:70px; border:1px solid #f1d087; object-fit:cover; box-shadow:0 0 0 3px rgba(0,0,0,.58),0 8px 20px rgba(0,0,0,.58); }
.rs-mechanic:has(.rs-ability-media.is-previewing) { z-index:30; overflow:visible; }
.rs-ability-media { position:relative; z-index:1; align-self:start; overflow:hidden; border:1px solid rgba(239,202,116,.8); background:#040708; box-shadow:0 0 0 3px rgba(0,0,0,.58),0 8px 20px rgba(0,0,0,.58); cursor:zoom-in; transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s ease; transform-origin:top left; }
.rs-ability-media video { display:block; width:100%; aspect-ratio:16/10; background:#020304; object-fit:cover; }
.rs-ability-media.is-previewing { z-index:50; transform:scale(3.25); box-shadow:0 0 0 1px #f5d88f,0 20px 60px rgba(0,0,0,.9); }
.rs-video-hint { position:absolute; right:0; bottom:0; left:0; padding:6px 8px; background:linear-gradient(90deg,rgba(5,10,12,.96),rgba(5,10,12,.55)); color:#f5d797; font-size:8px; font-weight:900; letter-spacing:.1em; pointer-events:none; text-transform:uppercase; }
.rs-ability-media.is-previewing .rs-video-hint { opacity:0; }
.rs-footer a[href*="mythictrap"],.rs-footer i { display:none; }
.rs-ability-media video { aspect-ratio:12/5; object-fit:contain; }.rs-media-dialog { width:min(936px,94vw); }.rs-mechanic-meta { display:flex; flex-wrap:wrap; align-items:center; gap:5px; margin:0 0 7px; }.rs-mechanic-meta span,.rs-mechanic-meta b { border:1px solid rgba(135,221,213,.34); border-radius:20px; padding:3px 6px; color:#9ce6dc; font-size:8px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }.rs-mechanic-meta b { border-color:rgba(234,197,111,.4); color:#eccd84; }.rs-responsibility-group { display:grid; gap:8px; min-width:0; border:1px solid rgba(125,180,177,.25); border-top:2px solid #5dccbf; background:linear-gradient(145deg,rgba(20,36,42,.8),rgba(9,15,19,.92)); }.rs-responsibility-group>header { display:grid; grid-template-columns:28px minmax(0,1fr) auto; align-items:center; gap:8px; padding:10px 11px; border-bottom:1px solid rgba(125,180,177,.2); }.rs-responsibility-group>header img { width:25px; height:25px; border:1px solid rgba(232,194,111,.62); border-radius:50%; object-fit:cover; }.rs-responsibility-group>header span { color:#f1d59a; font-size:10px; font-weight:950; letter-spacing:.1em; text-transform:uppercase; }.rs-responsibility-group>header b { display:grid; min-width:23px; height:23px; place-items:center; border:1px solid rgba(232,194,111,.48); border-radius:50%; color:#f2d997; font-size:10px; }.rs-group-everyone>header { grid-template-columns:minmax(0,1fr) auto; }.rs-group-everyone>header:before { content:"☠"; display:grid; width:25px; height:25px; place-items:center; border:1px solid rgba(235,160,134,.62); border-radius:50%; color:#ffd0bf; font-size:14px; }.rs-role-mechanics { display:grid; grid-template-columns:1fr; gap:8px; padding:0 8px 8px; }.rs-role-empty { margin:0; padding:16px 11px; color:#91a6a8; font-size:11px; font-style:italic; }.rs-mechanic-grid { grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; }.rs-mechanic-grid .rs-mechanic { min-height:0; }
.rs-media-viewer { position:fixed; z-index:10000; inset:0; display:none; align-items:center; justify-content:center; padding:clamp(16px,4vw,54px); }.rs-media-viewer.is-open { display:flex; }.rs-media-backdrop { position:absolute; inset:0; background:rgba(2,6,8,.91); backdrop-filter:blur(9px); }.rs-media-dialog { position:relative; z-index:1; width:min(1280px,94vw); padding:10px; border:1px solid rgba(244,208,125,.88); background:linear-gradient(145deg,#132127,#070d10); box-shadow:0 0 0 5px rgba(0,0,0,.52),0 30px 100px rgba(0,0,0,.92); }.rs-media-dialog video { display:block; width:100%; max-height:78vh; background:#010304; object-fit:contain; }.rs-media-dialog p { margin:8px 42px 1px 3px; color:#aababb; font-size:11px; line-height:1.35; }.rs-media-close { position:absolute; z-index:2; top:-16px; right:-16px; display:grid; width:38px; height:38px; place-items:center; border:1px solid #f6d789; border-radius:50%; background:#18262c; box-shadow:0 4px 18px rgba(0,0,0,.75); color:#fff2c9; cursor:pointer; font:400 30px/1 Arial,sans-serif; }.rs-media-close:hover,.rs-media-close:focus-visible { background:#294049; color:#fff; outline:none; } body.rs-media-viewer-open { overflow:hidden; }
.rs-mechanic-copy { position:relative; z-index:1; min-width:0; }
.rs-mechanic h5 { margin:0 0 8px; color:#f3daa3; font-size:16px; line-height:1.22; }
.rs-alert { display:inline-grid; width:22px; height:22px; place-items:center; margin:0 7px 0 0; border-radius:50%; vertical-align:-3px; font:900 14px/1 Arial,sans-serif; }.rs-alert-star { border:1px solid #ffe173; background:radial-gradient(circle,#fff3b3 0 20%,#d99b19 24% 100%); box-shadow:0 0 12px rgba(255,208,64,.6); color:#513200; }.rs-alert-skull { border:1px solid #ff9d8f; background:radial-gradient(circle,#872622,#360b0a); box-shadow:0 0 12px rgba(236,74,58,.54); color:#fff1e8; }
.rs-replay-boss { grid-template-columns:27px auto; border-color:#ed795f; border-radius:4px; color:#ffb096; }.rs-replay-boss img { display:none; }.rs-replay-boss:before { display:grid; width:26px; height:26px; place-items:center; border:1px solid #ffb096; border-radius:3px; background:linear-gradient(145deg,#5c1515,#190707); color:#fff0e5; content:"☠"; font:900 17px/1 Arial,sans-serif; }.rs-replay-boss b { color:#ffd0bf; }
.rs-position-map { background-size:100% 100%,100% 100%,245% auto; }
.rs-group-everyone>header { grid-template-columns:28px minmax(0,1fr) auto; }
.rs-position-replay[data-position-strategy="nymrissa"] .rs-position-map { background-position:50% 50%; background-size:100% 100%,100% 100%,180% auto; }
.rs-position-replay[data-position-strategy="nekzali"] .rs-position-map { background-position:50% 52%; background-size:100% 100%,100% 100%,245% auto; }
.rs-position-replay[data-position-strategy="sentinels"] .rs-position-map { background-position:54% 25%; background-size:100% 100%,100% 100%,320% auto; }
.rs-position-replay[data-position-strategy="vashnik"] .rs-position-map { background-position:42% 72%; background-size:100% 100%,100% 100%,300% auto; }
.rs-position-replay[data-position-strategy="explorers"] .rs-position-map { background-position:50% 29%; background-size:100% 100%,100% 100%,300% auto; }
.rs-position-replay[data-position-strategy="sszorak"] .rs-position-map { background-position:55% 73%; background-size:100% 100%,100% 100%,300% auto; }
.rs-position-replay[data-position-strategy="fangs"] .rs-position-map { background-position:50% 71%; background-size:100% 100%,100% 100%,280% auto; }
.rs-position-replay[data-position-strategy="altar"] .rs-position-map { background-position:50% 27%; background-size:100% 100%,100% 100%,300% auto; }
.rs-position-replay[data-position-strategy="ulatek"] .rs-position-map { background-position:50% 72%; background-size:100% 100%,100% 100%,300% auto; }
.rs-position-replay[data-position-strategy="sentinels"] .rs-position-map { background-image:linear-gradient(90deg,rgba(4,10,12,.3),transparent 27%,transparent 73%,rgba(4,10,12,.35)),linear-gradient(180deg,rgba(4,9,11,.14),rgba(4,9,11,.35)); background-position:center; background-size:100% 100%; }.rs-position-replay[data-position-strategy="sentinels"] .rs-position-map:before { position:absolute; z-index:0; inset:-45%; content:""; background-image:var(--room-map); background-position:54% 25%; background-repeat:no-repeat; background-size:185% auto; pointer-events:none; transform:rotate(-45deg); }
.rs-position-replay[data-position-strategy="explorers"] .rs-position-map,.rs-position-replay[data-position-strategy="sszorak"] .rs-position-map,.rs-position-replay[data-position-strategy="fangs"] .rs-position-map,.rs-position-replay[data-position-strategy="altar"] .rs-position-map { background-size:100% 100%,100% 100%,385% auto; }
.rs-mechanic p { margin:0; color:#d2dcdc; font-size:13px; line-height:1.48; }
.rs-mechanic em { display:grid; gap:3px; margin-top:11px; color:#91e1d9; font-size:11px; font-style:normal; font-weight:800; line-height:1.32; }
.rs-mechanic em span { color:#759a9d; font-size:9px; font-weight:900; letter-spacing:.11em; }
.rs-heroic { grid-column:1/-1; grid-template-columns:74px minmax(0,1fr); border-color:rgba(236,110,98,.48); border-top-color:#ea7065; background:linear-gradient(105deg,#552529,#26151a); }
.rs-heroic .rs-ability-icon { width:74px; height:74px; border-color:#f18f84; }
.rs-heroic h5 { color:#ffb3aa; }.rs-heroic p { color:#efd2cf; }.rs-heroic em { color:#ffc0b7; }
.rs-footer { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px 19px; border-top:1px solid rgba(231,194,111,.2); color:#899b9e; font-size:10px; }
.rs-footer>span:last-child { display:flex; gap:8px; white-space:nowrap; }
.rs-footer a { color:#89dbd4; text-decoration:none; }.rs-footer a:hover { text-decoration:underline; }.rs-footer i { color:var(--gold); font-style:normal; }

@media(max-width:1420px) {
  .rs-layout { grid-template-columns:260px minmax(0,1fr); }
  .rs-book-body { grid-template-columns:minmax(500px,1.3fr) minmax(340px,.7fr); padding:15px; gap:15px; }
  .rs-tactical-map { min-height:440px; }
  .rs-role-grid { grid-template-columns:1fr; }
  .rs-role { display:grid; grid-template-columns:64px 1fr; gap:8px; }.rs-role b { margin:0; }
  .rs-mechanic { grid-template-columns:144px minmax(0,1fr); gap:10px; padding:12px; }
  .rs-ability-icon { width:58px; height:58px; }.rs-mechanic p { font-size:12px; }
}
@media(max-width:1120px) {
  .rs-book-body { grid-template-columns:1fr; }
  .rs-command { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .rs-command-heading,.rs-overview,.rs-directives,.rs-role-grid,.rs-raid-call { grid-column:1/-1; }
  .rs-role-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }.rs-role { display:block; }.rs-role b { margin-bottom:5px; }
  .rs-mechanics { grid-column:auto; }
  .rs-room-reel { grid-template-columns:minmax(0,1.2fr) minmax(250px,.8fr); }.rs-room-video,.rs-room-video video { min-height:350px; }
}
@media(max-width:760px) {
  html.mobile-ui body.raid-strategy-active .mobile-nav-toggle,
  html.mobile-ui body.raid-strategy-active .main-nav { display:none!important; }
  html.mobile-ui.mobile-nav-open body.raid-strategy-active { overflow:auto; }
  body.raid-strategy-active .app-shell { display:block; }
  body.raid-strategy-active .sidebar { position:relative; width:100%; height:auto; padding:8px; }
  body.raid-strategy-active .sidebar .brand-block,body.raid-strategy-active .sidebar-account { display:none; }
  body.raid-strategy-active .main-nav { display:flex; min-width:0; overflow:auto; }
  body.raid-strategy-active .main-nav .nav-item:not(#raidStrategyButton) { display:none; }
  body.raid-strategy-active #raidStrategyButton { width:100%; }
  .rs-titlebar { min-height:72px; padding:12px 14px; }.rs-titlebar h2 { font-size:22px; }.rs-title-meta { display:none; }
  .rs-layout { grid-template-columns:1fr; min-height:0; padding:8px; }.rs-boss-list { grid-template-columns:repeat(3,minmax(0,1fr)); gap:4px; }
  .rs-boss-list-head,.rs-raid-group-title { grid-column:1/-1; }.rs-raid-group { display:contents; }
  .rs-boss { grid-template-columns:30px minmax(0,1fr); gap:5px; min-height:45px; padding:4px; }.rs-boss>i,.rs-rail-foot { display:none; }.rs-boss-icon { width:29px; height:29px; }.rs-boss-copy small { font-size:8px; }.rs-boss-copy strong { font-size:10px; }
  .rs-book { min-height:0; }.rs-book-head { align-items:flex-start; padding:12px; }.rs-crest { width:45px; height:45px; }.rs-book-head h3 { font-size:20px; white-space:normal; }.rs-encounter { font-size:8px; }.rs-difficulty button { min-width:58px; padding:8px 6px; font-size:9px; }
  .rs-book-body,.rs-command { display:grid; grid-template-columns:1fr; padding:10px; }.rs-command-heading,.rs-overview,.rs-directives,.rs-role-grid,.rs-raid-call { grid-column:auto; }.rs-role-grid,.rs-mechanic-grid { grid-template-columns:1fr; }.rs-mechanic { grid-template-columns:1fr; }.rs-ability-media { max-width:100%; }.rs-ability-media video { max-height:220px; }.rs-role { display:block; }.rs-role b { margin-bottom:5px; }
  .rs-directives li { grid-template-columns:42px minmax(0,1fr); padding:12px 10px; }.rs-directives li>span { font-size:19px; }.rs-directives p { font-size:13px; }
  .rs-tactical header { align-items:start; }.rs-tactical h4 { font-size:21px; }.rs-room-reel { grid-template-columns:1fr; }.rs-room-video,.rs-room-video video { min-height:250px; }.rs-room-reel aside { padding:15px; }.rs-room-reel aside li p { font-size:13px; }.rs-ability-media.is-previewing { transform:scale(2); }.rs-media-viewer { padding:18px 10px; }.rs-media-dialog { width:100%; padding:6px; }.rs-media-dialog video { max-height:75vh; }.rs-media-close { top:-11px; right:2px; }.rs-position-map { min-height:400px; }.rs-replay-hud { top:8px; right:8px; }.rs-replay-hud button { padding:7px; }.rs-replay-actor { grid-template-columns:26px auto; gap:3px; padding:2px 5px 2px 2px; }.rs-replay-actor img { width:24px; height:24px; }.rs-replay-actor b { font-size:6px; }.rs-replay-callout { grid-template-columns:1fr; gap:8px; padding:14px; }.rs-replay-callout p { font-size:12px; }.rs-replay-progress { justify-content:flex-end; }
  .rs-mechanics-head p { display:none; }.rs-footer { display:grid; gap:5px; font-size:9px; }.rs-footer>span:last-child { white-space:normal; }
}
