:root{--x:18px;--y:18px;--width:280px;--height:280px;--gold:#edac42;--text:#f1eadf;--muted:#d5cfc4}*{box-sizing:border-box}html,body{margin:0;background:transparent;overflow:hidden;font-family:Inter,system-ui;color:var(--text)}.radar{position:absolute;left:var(--x);top:var(--y);width:var(--width);height:var(--height);border:4px solid #424649;border-radius:50%;overflow:visible;background:radial-gradient(ellipse at 20% 8%,#463b35b8,transparent 65%),radial-gradient(ellipse at 90% 5%,#30473e99,transparent 62%),#171a1d;box-shadow:inset 0 0 0 1px #ffffff19,0 8px 24px #0008;transition:border-radius .45s cubic-bezier(.2,.8,.2,1),width .45s cubic-bezier(.2,.8,.2,1),height .45s cubic-bezier(.2,.8,.2,1);isolation:isolate}.radar[hidden]{display:none}.radar.dead{border-radius:0}.radar::after{content:'';position:absolute;inset:8px;pointer-events:none;border:1px solid #ffffff0e;border-radius:inherit}.grain{position:absolute;inset:0;z-index:-1;border-radius:inherit;overflow:hidden;background:repeating-linear-gradient(0deg,transparent 0 6px,#ffffff07 6px 7px)}.inner{height:100%;width:78%;margin:auto;display:flex;flex-direction:column;justify-content:center;gap:5px;padding:22px 0}.inner header{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0}.inner header strong{font-size:15px;line-height:22px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:calc(100% - 26px);font-weight:850}.inner header img{flex:none;object-fit:contain}.mode{font-size:9px;letter-spacing:.14em;color:var(--gold);font-weight:800;text-align:center;white-space:nowrap}.match{display:flex;align-items:center;justify-content:center;gap:12px}.team{font-size:11px;font-weight:750;white-space:nowrap}.team b{font-size:21px;font-variant-numeric:tabular-nums}.ct{color:#8cb7df}.t{color:#edc27d}.versus{font-size:8px;color:#b6b8bf}.map{font-size:10px;letter-spacing:.04em;text-align:center;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.divider{height:1px;background:linear-gradient(90deg,transparent,#ffffff30,transparent);flex:none}.stats-title{font-size:10px;letter-spacing:.12em;color:var(--gold);font-weight:850;text-align:center}.stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;text-align:center;margin:0 auto;width:100%;max-width:230px}.stats dt{font-size:10px;color:var(--muted);font-weight:650}.stats dd{font-size:21px;font-weight:850;font-variant-numeric:tabular-nums;margin:1px 0 0}.inner footer{display:flex;align-items:center;justify-content:center;gap:12px;font-size:9px;color:var(--muted);white-space:nowrap}.inner footer span{display:flex;align-items:center;gap:4px}.inner footer b{color:var(--text);font-size:12px;font-variant-numeric:tabular-nums}.heart{width:5px;height:5px;display:inline-block;background:#e46f68;border-radius:50%}.radar.dead .heart{background:#9b9b9b}@media(prefers-reduced-motion:reduce){.radar{transition:none}}

.inner{position:absolute;left:50%;top:50%;width:var(--inner-width,218px);height:272px;margin:0;transform:translate(-50%,-50%) scale(var(--ui-scale,1));transform-origin:center}

.radar{color:#f1eadf;text-shadow:0 1px 3px #000}.stats dt,.map,.inner footer{color:#d5cfc4}.stats dd{letter-spacing:-.03em;line-height:1.15}.inner header strong{letter-spacing:-.02em}

.player-avatar{position:absolute;z-index:3;top:calc(6px * var(--ui-scale,1));left:50%;transform:translateX(-50%);width:calc(48px * var(--ui-scale,1));height:calc(48px * var(--ui-scale,1));border:1px solid #b4ac9e88;border-radius:50%;overflow:hidden;background:#252b30;box-shadow:0 2px 8px #0008}.player-avatar img{width:100%;height:100%;object-fit:cover;display:block}.site-logo{position:absolute;z-index:3;bottom:calc(10px * var(--ui-scale,1));left:50%;transform:translateX(-50%);width:calc(22px * var(--ui-scale,1));height:calc(22px * var(--ui-scale,1));object-fit:contain}.inner header strong{max-width:100%}.bomb-ring{position:absolute;inset:-4px;z-index:2;width:calc(100% + 8px);height:calc(100% + 8px);overflow:visible;pointer-events:none;opacity:0;transition:opacity .25s}.radar.bomb-active .bomb-ring,.radar.bomb-planted .bomb-ring{opacity:1}.bomb-ring path{fill:none;stroke-width:5;stroke-linecap:round;vector-effect:non-scaling-stroke}#bombTrack{stroke:#9b332ed9}#bombProgress{stroke:#ff5b53;filter:drop-shadow(0 0 3px #f64b4333)}.radar.bomb-urgent #bombProgress{stroke:#ffb1a6}
@media(prefers-reduced-motion:reduce){.bomb-ring{transition:none}}

/* HP left / armor right: both paths start at the bottom, so losses empty from the top. */
.vitals-ring{position:absolute;inset:0;z-index:1;width:100%;height:100%;pointer-events:none;overflow:visible}.vitals-ring path{fill:none;stroke-width:3;stroke-linecap:round;vector-effect:non-scaling-stroke}.vitals-track{stroke:#d5cfc41c}.vitals-health{stroke:#79d6ac}.vitals-armor{stroke:#8ab7e3}.vitals-health,.vitals-armor{transition:stroke-dasharray .35s ease,stroke .25s,opacity .25s}.radar.health-low .vitals-health{stroke:#f39386}@media(prefers-reduced-motion:reduce){.vitals-health,.vitals-armor{transition:none}}

body.cs2-demo .radar{left:50%;top:50%;transform:translate(-50%,-50%) scale(var(--demo-scale,1));transform-origin:center}

.radar[data-team="CT"]{background:radial-gradient(ellipse at 30% 0%,#5386aa44,transparent 75%),#152733}.radar[data-team="T"]{background:radial-gradient(ellipse at 30% 0%,#b58d4c44,transparent 75%),#2b2318}.mvp-panel{position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px;text-align:center;animation:mvpIn .28s ease-out}.mvp-panel[hidden]{display:none}.mvp-panel img{width:calc(76px * var(--ui-scale,1));height:calc(76px * var(--ui-scale,1));border-radius:50%;border:2px solid #edc577;object-fit:cover;box-shadow:0 0 20px #e7b05230}.mvp-title{font-family:Cinzel,serif;font-size:calc(30px * var(--ui-scale,1));font-weight:800;line-height:1.1;letter-spacing:.12em;color:#f8d690}.mvp-panel strong{font-size:calc(16px * var(--ui-scale,1));line-height:1.25;overflow-wrap:anywhere;color:#f1eadf}.radar.has-mvp .inner,.radar.has-mvp .player-avatar,.radar.has-mvp .site-logo,.radar.has-mvp .vitals-ring{visibility:hidden}@keyframes mvpIn{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.mvp-panel{animation:none}}

/* MVP: one existing avatar morphs from the header to the center; badge attaches below it. */
.player-avatar{transition:top .42s cubic-bezier(.2,.8,.2,1),width .42s cubic-bezier(.2,.8,.2,1),height .42s cubic-bezier(.2,.8,.2,1),transform .42s cubic-bezier(.2,.8,.2,1),border-color .25s}
.radar.has-mvp .player-avatar{visibility:visible;top:50%;width:calc(88px * var(--ui-scale,1));height:calc(88px * var(--ui-scale,1));transform:translate(-50%,-50%);border:2px solid #f8d690;box-shadow:0 0 20px #e7b05230;z-index:5}
.mvp-panel{inset:auto;top:calc(50% + 34px * var(--ui-scale,1));left:50%;width:80%;transform:translateX(-50%);padding:0;gap:5px;animation:mvpTagIn .25s ease-out .2s backwards;z-index:6}.mvp-title{font-size:calc(15px * var(--ui-scale,1));letter-spacing:.1em;border:1px solid #ddb367;background:#171818f2;border-radius:5px;padding:4px 13px;box-shadow:0 3px 8px #0007}.mvp-panel strong{font-size:calc(12px * var(--ui-scale,1));line-height:1.25}.mvp-skulls{display:flex;justify-content:center;flex-wrap:wrap;gap:3px;max-width:180px;font-size:12px;color:#f1eadf}.mvp-skulls svg{width:calc(17px * var(--ui-scale,1));height:calc(17px * var(--ui-scale,1));fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 1px 2px #000)}@keyframes mvpTagIn{from{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.player-avatar{transition:none}.mvp-panel{animation:none}}

.radar.has-mvp .player-avatar{top:40%;width:calc(176px * var(--ui-scale,1));height:calc(176px * var(--ui-scale,1))}.mvp-panel{top:calc(40% + 78px * var(--ui-scale,1))}

/* Compact match heading without redundant status row. */
.mode{display:none}.match{gap:12px;line-height:32px}.team{font-size:15px}.team b{font-size:27px}.versus{font-size:10px}.map{font-size:12px;line-height:18px;letter-spacing:.025em}

/* Own warm-gold MVP skull: shaded bone, dark sockets, strong tiny silhouette. */
.mvp-skulls{gap:4px}.mvp-skulls svg{width:calc(20px * var(--ui-scale,1));height:calc(22px * var(--ui-scale,1));fill:none;stroke:none;filter:drop-shadow(0 1px 1px #000b)}

.rank-line{text-align:center;font-size:11px;line-height:16px;font-weight:700;color:#f6d38e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rank-line[hidden]{display:none}.radar.has-rank .inner{gap:3px}

/* Values are self-explanatory; remove the redundant section caption. */
.stats-title{display:none}

/* Two stable panes: opacity-only crossfade, no DOM rebuild or layout jump. */
.stats-deck{position:relative;width:100%;height:132px;flex:none}.stats-pane{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;gap:5px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .4s ease,visibility 0s linear .4s}.stats-pane.is-active{opacity:1;visibility:visible;transition-delay:0s}.radar.has-mvp .stats-pane{visibility:hidden!important}.stats-pane [hidden]{display:none!important}.profile-rating{display:flex;flex-direction:column;align-items:center;gap:2px}.profile-rating small,.profile-results small{font-size:10px;line-height:14px;color:#d5cfc4;text-align:center}.profile-rating strong{font-size:30px;line-height:34px;color:#f6d38e;font-variant-numeric:tabular-nums}.profile-results{display:flex;flex-direction:column;align-items:center;gap:4px}.result-strip{display:flex;gap:5px;justify-content:center}.result-badge{display:inline-flex;align-items:center;justify-content:center;width:22px;height:20px;font-size:11px;font-weight:800;border:1px solid;border-radius:3px;line-height:1}.result-win{color:#5fd3a6;background:#5fd3a61a;border-color:#5fd3a655}.result-loss{color:#ff7f74;background:#ff7f741a;border-color:#ff7f7455}.result-draw{color:#d5cfc4;background:#d5cfc414;border-color:#d5cfc444}@media(prefers-reduced-motion:reduce){.stats-pane{transition:none}}

/* Keep avatar/name, score and map fixed; only the lower statistics slot fades. */
.inner,.radar.has-rank .inner{gap:4px}.stats-deck{height:70px}.profile-row{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-width:0}.profile-rating,.profile-results{flex:1;min-width:0}.profile-rating small,.profile-results small{font-size:9.5px;line-height:12px;white-space:nowrap}.profile-rating strong{font-size:25px;line-height:28px}.profile-rating{gap:0}.profile-results{gap:4px}.result-strip{gap:3px}.result-badge{width:18px;height:18px;font-size:10px;flex:none}.stats-pane{gap:4px}.stats-pane .rank-line{font-size:10px;line-height:14px;width:100%}

/* Results above equal-sized Leetify/Aim figures; rank belongs to live match pane. */
.stats-pane>.profile-results{flex:none;flex-direction:row;justify-content:center;gap:6px;width:100%;min-height:18px}.profile-row>.profile-rating{flex:1;min-width:0}.profile-row>.profile-rating strong{font-size:25px;line-height:28px}.profile-row>.profile-rating small{font-size:9.5px;line-height:12px}.profile-row{gap:10px}.profile-row .profile-rating{gap:0}

.inner header .country-flag{width:20px;height:15px;object-fit:cover;flex:none;border:1px solid #ffffff24;border-radius:1px}.country-flag[hidden]{display:none}.inner header:has(.country-flag:not([hidden])) strong{max-width:calc(100% - 26px)}
