@import "https://fonts.googleapis.com/css2?family=Luckiest+Guy&display=swap";:root{color:#ecf7ff;background:#041521;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at top,#0f2f47 0%,#041521 70%);min-height:100vh;margin:0;overflow:hidden}#root,.app-shell{width:100vw;height:100vh}canvas{display:block}.overlay{z-index:20;background:#040e189e;position:fixed;inset:0}.center{place-items:center;display:grid}.panel{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#081a2aeb;border:1px solid #75badb59;border-radius:12px;width:min(560px,92vw);padding:1.3rem 1.4rem}h1,h2{margin:0 0 .75rem}p{margin:.42rem 0}button{color:#eff9ff;cursor:pointer;background:linear-gradient(#246287,#184662);border:1px solid #c2e0f073;border-radius:10px;padding:.6rem .9rem;font-weight:600}button:hover{filter:brightness(1.08)}.hint{opacity:.8;font-size:.95rem}.tutorial-overlay{z-index:75;pointer-events:auto;background:#0209128f;place-items:center;display:grid;position:fixed;inset:0}.tutorial-panel{text-align:center;background:#081828eb;border:1px solid #7cbde273;border-radius:14px;width:min(640px,92vw);padding:1rem 1.2rem 1.1rem;box-shadow:0 10px 40px #00000059}.tutorial-progress{background:#ffffff1f;border-radius:99px;height:6px;margin-bottom:.9rem;overflow:hidden}.tutorial-progress-fill{background:linear-gradient(90deg,#49c3ff,#6dffb3);height:100%;transition:width .14s linear}.tutorial-panel h2{letter-spacing:.8px;margin:0;font-family:Luckiest Guy,system-ui,sans-serif;font-size:clamp(1.22rem,2.4vw,1.65rem)}.tutorial-panel p{color:#cce7f8;margin:.35rem 0 0;font-weight:600}.tutorial-visual{place-items:center;min-height:112px;margin:.9rem auto .7rem;display:grid;position:relative}.tutorial-ship-icon{background:radial-gradient(circle at 30% 30%,#ffeaa6 0%,#eea43a 45%,#8b4f19 100%);border:2px solid #ffe296bf;border-radius:18px;width:72px;height:72px;animation:1.4s ease-in-out infinite alternate tutorial-ship-float;transform:rotate(-14deg);box-shadow:0 0 26px #ffb64866}.tutorial-ship-icon.small{width:56px;height:56px}.tutorial-floating-number{color:#ffe16b;text-shadow:0 0 10px #ffe16b99;font-size:1.1rem;animation:1s ease-out infinite tutorial-float-number;position:absolute;top:10px;right:calc(50% - 90px)}.tutorial-arrows{grid-template-rows:repeat(2,52px);grid-template-columns:repeat(3,52px);grid-template-areas:".up.""left down right";gap:8px;display:grid}.tutorial-arrows .arrow{background:#224f7399;border:1px solid #8acdf694;border-radius:10px;place-items:center;font-weight:700;animation:.9s ease-in-out infinite tutorial-pulse-key;display:grid}.tutorial-arrows .up{grid-area:up;animation-delay:0s}.tutorial-arrows .left{grid-area:left;animation-delay:.12s}.tutorial-arrows .down{grid-area:down;animation-delay:.24s}.tutorial-arrows .right{grid-area:right;animation-delay:.36s}.tutorial-tracer{transform-origin:0;background:linear-gradient(90deg,#73d3ff00,#73d3ff);width:120px;height:2px;animation:1s linear infinite tutorial-tracer-run;position:absolute;left:calc(50% - 10px)}.tutorial-tracer.t1{top:40px}.tutorial-tracer.t2{animation-delay:.22s;top:56px}.tutorial-tracer.t3{animation-delay:.44s;top:72px}.tutorial-enemy-dot{background:#ff5d6e;border-radius:50%;width:16px;height:16px;position:absolute;top:52px;right:calc(50% - 120px);box-shadow:0 0 12px #ff5d6eb3}.tutorial-visual.abilities{justify-content:center;align-items:center;gap:12px;display:flex}.tutorial-key{background:#7250168c;border:1px solid #ffe88d99;border-radius:9px;min-width:92px;padding:.55rem .85rem;font-weight:700;animation:.9s ease-in-out infinite tutorial-pulse-key}.tutorial-coin-row{gap:10px;margin-bottom:8px;display:flex}.tutorial-coin-row .coin{background:radial-gradient(circle at 30% 30%,#fff0b0,#ffbe47 60%,#b56d0a 100%);border-radius:50%;width:16px;height:16px;animation:.9s ease-in-out infinite tutorial-float-number;box-shadow:0 0 10px #ffc35880}.tutorial-coin-row .c2{animation-delay:.13s}.tutorial-coin-row .c3{animation-delay:.26s}.tutorial-upgrade-card{background:#354e70bf;border:1px solid #ffd17673;border-radius:10px;max-width:280px;padding:.65rem .8rem}.tutorial-upgrade-card strong{color:#ffe3a4;margin-bottom:.25rem;display:block}.tutorial-upgrade-card span{color:#e7f4ff;opacity:.9;font-size:.92rem}.tutorial-ribbon{letter-spacing:3px;color:#fff2b0;background:linear-gradient(90deg,#ff678ecc,#ffad48d6);border-radius:999px;padding:.36rem 1rem;font-family:Luckiest Guy,system-ui,sans-serif;font-size:clamp(1.2rem,2.2vw,1.6rem);animation:1.1s ease-in-out infinite alternate tutorial-ribbon-sweep}.tutorial-start-run{margin-top:.35rem}.tutorial-hint{opacity:.78;margin-top:.6rem;font-size:.88rem}@keyframes tutorial-ship-float{0%{transform:rotate(-14deg)translateY(0)}to{transform:rotate(-10deg)translateY(-6px)}}@keyframes tutorial-float-number{0%{opacity:.4;transform:translateY(3px)}40%{opacity:1;transform:translateY(-6px)}to{opacity:0;transform:translateY(-11px)}}@keyframes tutorial-pulse-key{0%{filter:brightness();transform:scale(1)}50%{filter:brightness(1.2);transform:scale(1.05)}to{filter:brightness();transform:scale(1)}}@keyframes tutorial-tracer-run{0%{opacity:0;transform:scaleX(.05)}30%{opacity:1;transform:scaleX(1)}to{opacity:0;transform:translate(44px)scaleX(.35)}}@keyframes tutorial-ribbon-sweep{0%{filter:brightness();transform:skewY(-1deg)scale(1)}to{filter:brightness(1.2);transform:skewY(1deg)scale(1.03)}}.hud{z-index:10;background:#040e1ae6;border:1px solid #5a96be8c;border-radius:10px;width:min(460px,100vw - 20px);padding:.8rem .9rem;position:fixed;top:10px;left:10px}.hud-row{flex-wrap:wrap;align-items:center;gap:.65rem;margin-bottom:.42rem;display:flex}.hud-item{font-size:.92rem}.meter{background:#ffffff24;border-radius:999px;width:160px;height:9px;overflow:hidden}.meter-fill{height:100%}.meter-fill.hp{background:linear-gradient(90deg,#b83d3d,#ff7865)}.meter-fill.cannon{background:linear-gradient(90deg,#f09b22,#ffe37f)}.meter-fill.boost{background:linear-gradient(90deg,#5f9cff,#9ff2ff)}.toast{z-index:60;background:#ddaa4847;border:1px solid #facb7466;border-radius:8px;margin-top:.35rem;padding:.24rem .45rem;position:fixed;bottom:14px;left:50%;transform:translate(-50%)}.portal-tooltip{color:#d8ffe8;z-index:61;background:#0e4026cc;border:1px solid #6cffac8c;border-radius:10px;padding:.35rem .62rem;font-size:.92rem;position:fixed;bottom:54px;left:50%;transform:translate(-50%);box-shadow:0 0 16px #4eff9e38}.upgrade-grid{gap:.65rem;margin-top:.9rem;display:grid}.upgrade-choice{text-align:left;flex-direction:column;gap:.25rem;width:100%;display:flex}.pulse-meter{background:#00000059;border-radius:5px;width:100%;height:10px;position:relative;overflow:hidden}.pulse-meter-fill{border-radius:5px;height:100%;transition:width .12s ease-out,background .1s linear}.pulse-meter.ready .pulse-meter-fill{animation:.9s ease-in-out infinite alternate pulse-glow;box-shadow:0 0 10px}.pulse-meter.special{border:1px solid #b8a2ff73;box-shadow:inset 0 0 0 1px #ffffff0f,0 0 14px #8f62ff2e}.pulse-meter.special .pulse-meter-fill{background:linear-gradient(90deg,#7258ff 0%,#a679ff 45%,#e0b3ff 100%)!important}.pulse-meter.special.ready .pulse-meter-fill{animation:.9s ease-in-out infinite alternate pulse-glow}@keyframes pulse-glow{0%{filter:brightness()}to{filter:brightness(1.5)}}.pulse-meter.damage-flash{animation:.18s ease-out damage-flash}@keyframes damage-flash{0%{background:#ff5050b3}to{background:#00000059}}.boost-arc,.boost-arc-svg{width:48px;height:48px}.boost-arc.ready{animation:.9s ease-in-out infinite alternate boost-ready-pulse}@keyframes boost-ready-pulse{0%{filter:brightness()}to{filter:brightness(1.6)}}.xp-bar{z-index:30;background:#00000080;height:6px;position:fixed;top:0;left:0;right:0}.xp-bar-fill{background:linear-gradient(90deg,#ffe16b 0%,#ff9a3c 100%);height:100%;transition:width .15s ease-out;box-shadow:0 0 8px #ffd27a}.xp-bar.level-up .xp-bar-fill{animation:.48s ease-out xp-sweep}@keyframes xp-sweep{0%{filter:brightness()}40%{filter:brightness(2.5)saturate(1.5)}to{filter:brightness()}}.level-pill{color:#fff;letter-spacing:1px;z-index:31;background:linear-gradient(135deg,#ff9a3c,#f57);border-radius:24px;padding:8px 16px;font-family:Luckiest Guy,system-ui,sans-serif;font-size:22px;font-weight:800;transition:transform .16s ease-out;position:fixed;top:12px;left:12px;box-shadow:0 2px 12px #ff645066}.hud-wave-clock{z-index:31;pointer-events:none;text-shadow:1px 1px #0000008c;flex-direction:column;align-items:center;gap:2px;font-family:system-ui,sans-serif;display:flex;position:fixed;top:14px;left:50%;transform:translate(-50%)}.hud-wave-phase{letter-spacing:.18em;color:#ffe8a8;font-size:13px;font-weight:800}.hud-wave-detail{color:#c8e6f5;opacity:.95;font-size:11px;font-weight:600}.hud-wave-clock--elite .hud-wave-phase{color:#ffd45c;text-shadow:0 0 12px #ffc850bf;animation:1.1s ease-in-out infinite alternate hud-elite-pulse}.hud-wave-clock--elite .hud-wave-detail{color:#ffe8b8}.hud-wave-clock--lull .hud-wave-phase{color:#7ee0ff;letter-spacing:.14em}.hud-wave-clock--lull .hud-wave-detail{color:#b8ecff}@keyframes hud-elite-pulse{0%{filter:brightness()}to{filter:brightness(1.25)}}.controls-help-backdrop{z-index:110;background:#000a168c;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.controls-help-panel{color:#e8f4ff;background:#0c1a2cf5;border:1px solid #78c8ff40;border-radius:12px;width:100%;max-width:440px;padding:20px 22px 16px;box-shadow:0 12px 40px #00000073}.controls-help-panel h2{margin:0 0 14px;font-size:1.35rem;font-weight:800}.controls-help-table{border-collapse:collapse;width:100%;font-size:14px}.controls-help-table th{text-align:left;color:#9edfff;vertical-align:top;width:42%;padding:6px 10px 6px 0;font-weight:600}.controls-help-table td{color:#f2fbff;padding:6px 0}.controls-help-tips{color:#c5dce8;margin:14px 0 0;padding-left:18px;font-size:13px;line-height:1.45}.controls-help-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:16px;display:flex}.controls-help-secondary{color:#cfe9ff;background:0 0;border:1px solid #fff3;margin-right:auto}.level-pill.bump{animation:.36s ease-out level-bump}@keyframes level-bump{0%{transform:scale(1)}30%{transform:scale(1.3)rotate(-3deg)}to{transform:scale(1)}}.biome-badge{letter-spacing:.5px;text-transform:uppercase;background:#283c5ab3;border-radius:12px;align-items:center;gap:6px;padding:4px 10px;font-size:13px;font-weight:600;display:inline-flex}.biome-badge .dot{background:currentColor;border-radius:50%;width:8px;height:8px;box-shadow:0 0 6px}.boss-frame{text-align:center;z-index:50;background:#140a14bf;border:2px solid #ff2020;border-radius:6px;width:420px;padding:8px 12px;position:fixed;top:20px;left:50%;transform:translate(-50%);box-shadow:0 0 24px #ff202099}.boss-frame .boss-title{color:#ff6060;letter-spacing:3px;text-shadow:1px 1px 2px #000;margin-bottom:4px;font-family:Luckiest Guy,system-ui,sans-serif;font-size:20px;font-weight:800}.boss-frame .boss-bar{background:#1a0505;border-radius:3px;height:16px;overflow:hidden}.boss-frame .boss-bar-fill{background:linear-gradient(90deg,#ff2020 0%,#ff7a3a 100%);height:100%;transition:width .15s ease-out;position:relative}.boss-bar-segments{pointer-events:none;position:absolute;inset:0}.boss-bar-segment-divider{background:#00000080;width:2px;position:absolute;top:0;bottom:0;transform:translate(-50%)}.boss-hp-label{color:#ff9090;letter-spacing:1px;margin-top:3px;font-family:monospace;font-size:11px;font-weight:700}.boss-intro-overlay{z-index:200;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;animation:.4s ease-out 1.6s forwards boss-intro-fadeout;display:flex;position:fixed;inset:0}.boss-intro-overlay:before{content:"";background:#0000008c;position:absolute;inset:0}@keyframes boss-intro-fadeout{to{opacity:0;pointer-events:none}}.boss-intro-warning{color:#ff2020;text-shadow:0 0 20px #ff2020e6,0 0 40px #ff202099;align-items:center;gap:16px;font-family:Luckiest Guy,system-ui,sans-serif;font-size:48px;font-weight:900;animation:.3s ease-in-out infinite alternate boss-intro-pulse;display:flex}.boss-intro-icon{font-size:40px;line-height:1}.boss-intro-label{letter-spacing:6px}@keyframes boss-intro-pulse{0%{transform:scale(1)}to{transform:scale(1.08)}}.boss-intro-name{color:#ff9060;letter-spacing:4px;text-shadow:0 0 12px #ff9060cc;margin-top:8px;font-family:Luckiest Guy,system-ui,sans-serif;font-size:28px;font-weight:700}.hud-v2{pointer-events:none;z-index:40;padding:32px 16px 16px;position:fixed;inset:0}.hud-v2-corner{pointer-events:none;flex-direction:column;gap:6px;min-width:220px;display:flex;position:absolute}.hud-v2-corner.top-left{top:60px;left:12px}.hud-v2-corner.top-right{align-items:flex-end;top:16px;right:12px}.hud-v2-corner.bottom-left{bottom:12px;left:12px}.hud-v2-row{color:#e2ecf0;text-shadow:1px 1px #00000080;align-items:center;gap:8px;font-family:system-ui,sans-serif;font-size:14px;font-weight:600;display:flex}.hud-v2-big{letter-spacing:1px;font-family:Luckiest Guy,system-ui,sans-serif;font-size:22px}.hud-v2-hp-bar{width:180px}.hud-v2-ability-bar{width:140px}.kill-streak-hud{pointer-events:none;z-index:40;color:#e2ecf0;text-shadow:1px 1px #0000008c;flex-direction:column;gap:3px;font-family:system-ui,sans-serif;font-size:13px;font-weight:700;transition:color .1s;display:flex;position:fixed;top:108px;right:12px}.kill-streak-hud__line{align-items:center;gap:5px;display:flex}.kill-streak-hud__icon{opacity:.85;font-size:12px}.kill-streak-hud__label{opacity:.65;letter-spacing:.04em;min-width:32px;font-size:11px}.kill-streak-hud__value{text-align:right;min-width:24px}.kill-streak-hud--flash{animation:.35s ease-out forwards kill-streak-flash}@keyframes kill-streak-flash{0%{color:#f44;transform:scale(1.15)}60%{color:#f44}to{color:#e2ecf0;transform:scale(1)}}.hud-v2-row--extra-empty span:first-child{color:#ffd983;animation:.9s ease-in-out infinite alternate hud-extra-lock-pulse}@keyframes hud-extra-lock-pulse{0%{filter:brightness()}to{filter:brightness(1.35)}}.screen-flash{pointer-events:none;opacity:0;z-index:80;background:#fff;position:fixed;inset:0}.screen-flash.fire{animation:.2s ease-out flash-once}.screen-flash.elite{background:linear-gradient(135deg,#a0dcffe6,#dcf0ffd9);animation:.24s ease-out flash-once-elite}@keyframes flash-once{0%{opacity:.18}to{opacity:0}}@keyframes flash-once-elite{0%{opacity:.22}to{opacity:0}}.levelup-ribbon{color:#fff;letter-spacing:6px;text-align:center;text-shadow:0 0 16px #ff5028e6,0 0 40px #ff8c3c99,0 6px 16px #000000b3;pointer-events:none;z-index:90;opacity:0;background:linear-gradient(90deg,#0000 0%,#f25 8%,#f74 25%,#fc0 50%,#f74 75%,#f25 92%,#0000 100%);width:100%;padding:14px 0;font-family:Luckiest Guy,system-ui,sans-serif;font-size:46px;font-weight:800;position:fixed;top:42%;left:-100%;transform:skewY(-2deg);box-shadow:0 0 60px #ff502880,0 0 120px #ff782840,inset 0 0 40px #ffdc7826}.levelup-ribbon.fire{animation:.48s ease-out levelup-sweep}@keyframes levelup-sweep{0%{opacity:0;left:-100%}20%{opacity:1;filter:brightness(1.5);left:0%}35%{opacity:1;filter:brightness(1.2);left:0%}75%{opacity:1;left:0%}to{opacity:0;left:100%}}.upgrade-modal{z-index:70;background:#00000073;justify-content:center;align-items:center;animation:80ms ease-out modal-fade-in;display:flex;position:fixed;inset:0}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}.upgrade-modal-panel{color:#e2ecf0;background:#0e1828e6;border:1px solid #ffffff14;border-radius:10px;flex-direction:column;align-items:center;gap:12px;padding:20px 24px;font-family:system-ui,sans-serif;display:flex}.upgrade-modal-panel--elite{border-color:#ffd26e80;box-shadow:0 0 28px #ffbe5038}.upgrade-grid-v2{gap:12px;display:flex}.upgrade-card{color:#e2ecf0;cursor:pointer;text-align:left;opacity:0;background:#1e3250d9;border:2px solid #ffffff14;border-radius:8px;width:220px;min-height:140px;padding:14px;font-family:system-ui,sans-serif;transition:transform 90ms ease-out,border-color 90ms linear,box-shadow 90ms linear;animation:.18s ease-out forwards card-flip-in;transform:translateY(40px)rotate(-1deg)}.upgrade-card:first-child{animation-delay:0s}.upgrade-card:nth-child(2){animation-delay:60ms}.upgrade-card:nth-child(3){animation-delay:.12s}@keyframes card-flip-in{0%{opacity:0;transform:translateY(40px)rotate(-1deg)scale(.94)}to{opacity:1;transform:translateY(0)rotate(0)scale(1)}}.upgrade-card:hover{border-color:#fc6;transform:translateY(-4px)scale(1.03);box-shadow:0 6px 22px #ffc86440}.upgrade-card.picked{animation:.12s ease-out forwards card-pick!important}@keyframes card-pick{0%{filter:brightness();transform:scale(1)}60%{filter:brightness(2.5);transform:scale(1.08)}to{opacity:0;filter:brightness(2.5);transform:scale(1)}}.upgrade-rarity-pill{letter-spacing:.12em;text-transform:uppercase;color:#fff;border:1px solid #fff3;border-radius:999px;margin-bottom:8px;padding:3px 8px;font-size:10px;font-weight:800;display:inline-block}.upgrade-card--common .upgrade-rarity-pill{background:#788ca073}.upgrade-card--uncommon .upgrade-rarity-pill{background:#3caa7873}.upgrade-card--rare .upgrade-rarity-pill{background:#5078dc8c}.upgrade-card--epic .upgrade-rarity-pill{background:linear-gradient(90deg,#7a3cff,#ff3c9a)}.upgrade-card--common{border-color:#ffffff40;box-shadow:0 0 #fff0}.upgrade-card--common:hover{border-color:#ffffff80;box-shadow:0 0 14px 2px #ffffff1f}.upgrade-card--uncommon{border-color:#4cff4c66;box-shadow:0 0 #4cff4c00}.upgrade-card--uncommon:hover{border-color:#4cff4c;box-shadow:0 0 14px 3px #4cff4c47}.upgrade-card--rare{border-color:#4ca8ff80;box-shadow:0 0 #4ca8ff00}.upgrade-card--rare:hover{border-color:#4ca8ff;box-shadow:0 0 14px 3px #4ca8ff59}.upgrade-card--epic{border-color:#ffc0408c;box-shadow:0 0 #ffc04000}.upgrade-card--epic:hover{border-color:#ffc040;box-shadow:0 0 18px 4px #ffc04073}.upgrade-owned{color:#b8f5d0;margin-top:6px;font-size:12px;font-weight:600;display:block}.upgrade-prereq{opacity:.92;color:#9edfff;margin-top:6px;font-size:12px;display:block}.upgrade-tooltip-delta{color:#ffe680;pointer-events:none;white-space:nowrap;background:#000000b8;border:1px solid #ffcc668c;border-radius:5px;margin-top:10px;padding:7px 10px;font-size:13px;font-weight:600;display:block}.upgrade-card strong{color:#ffd27a;margin-bottom:6px;font-size:18px;font-weight:700;display:block}.upgrade-card span{opacity:.85;font-size:13px;line-height:1.4}.upgrade-icon{filter:drop-shadow(0 2px 4px #0006);margin-bottom:8px;font-size:28px;line-height:1;display:block}.upgrade-type-emoji{opacity:.75;margin-bottom:4px;font-size:20px;line-height:1;display:block}.gameover-actions{flex-direction:column;gap:10px;display:flex}.legendary-share-btn{background:linear-gradient(#2a7fb2,#1a5a82);border-color:#9ddfffa6;padding:12px 16px;font-size:1.08rem;font-weight:700}.vibe-report-modal-backdrop{z-index:120;background:#01080ebf;place-items:center;display:grid;position:fixed;inset:0}.vibe-report-modal{background:linear-gradient(#0c273df5,#04121ef5);border:1px solid #77c9f666;border-radius:14px;width:min(720px,92vw);max-height:86vh;padding:16px 18px;overflow:auto}.vibe-report-modal h3{margin:0 0 8px}.vibe-report-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 12px;margin-bottom:8px;display:grid}.vibe-report-grid p{margin:0}.vibe-report-section-title{color:#9edfff;margin:10px 0 4px;font-weight:700}.vibe-report-list{margin:0;padding-left:18px}.vibe-report-list li{margin:4px 0}.ocean-badge{text-align:center;letter-spacing:1px;color:#8ff5ff;margin:12px 0 10px;font-family:Luckiest Guy,system-ui,sans-serif;font-size:1.14rem}.vibe-report-image{border:1px solid #8cdbff66;border-radius:10px;width:100%;margin-top:6px}.vibe-report-actions{justify-content:flex-end;gap:10px;margin-top:12px;display:flex}.combat-log{pointer-events:none;z-index:100;flex-direction:column;align-items:center;gap:2px;display:flex;position:fixed;bottom:14px;left:50%;transform:translate(-50%)}.combat-log__entry{color:#e0e0e0;text-shadow:1px 1px #000,0 0 6px #fff3;white-space:nowrap;background:#000000b8;border:1px solid #ffffff26;border-radius:999px;padding:4px 10px;font-family:"Press Start 2P",Courier New,monospace;font-size:.72rem;line-height:1;animation:.2s ease-out combat-log-in}.combat-log__entry[data-evt*=CRIT]{color:#fff3c0;background:#ff8c00a6;border-color:#ffb43280}.combat-log__entry[data-evt*=KILL]{color:#ffe0e0;background:#dc2828b3;border-color:#ff505080}.combat-log__entry[data-evt*=BOSS]{color:#f0d0ff;background:#b400ffa6;border-color:#dc50ff80}.combat-log__entry[data-evt*=ELITE]{color:#d0f4ff;background:#00b4ff99;border-color:#50dcff80}.combat-log__entry[data-evt*=BONUS]{color:#d8ffe0;background:#50c85099;border-color:#78ff7866}.combat-log__entry[data-evt*=GOLD]{color:#fff8c0;background:#ffc80099;border-color:#ffdc5080}.combat-log__entry[data-evt*=BOOST]{color:#d8e8ff;background:#3c78ff99;border-color:#64a0ff80}@keyframes combat-log-in{0%{opacity:0;transform:translateY(6px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}.captain-meta-panel{background:#00000038;border:1px solid #ffd25059;border-radius:10px;margin:10px 0;padding:10px 14px}.captain-level-row{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.captain-title-label{color:#ffd57a;letter-spacing:.5px;font-family:Luckiest Guy,system-ui,sans-serif;font-size:1.1rem}.captain-level-badge{color:#fff;letter-spacing:.5px;background:linear-gradient(135deg,#ff9a3c,#f57);border-radius:14px;padding:3px 10px;font-family:Luckiest Guy,system-ui,sans-serif;font-size:.9rem;font-weight:800}.captain-xp-bar{background:#00000073;border-radius:4px;height:8px;overflow:hidden}.captain-xp-bar-fill{background:linear-gradient(90deg,#ffb83d 0%,#f57 100%);border-radius:4px;height:100%;transition:width .3s ease-out;box-shadow:0 0 6px #ff963280}.captain-xp-label{color:#c8e6f5;text-align:right;margin-top:4px;font-size:.75rem}.run-summary-panel{background:#0000002e;border:1px solid #78c8ff33;border-radius:8px;margin:8px 0;padding:8px 12px}.run-summary-title{color:#9edfff;letter-spacing:1px;margin-bottom:6px;font-family:Luckiest Guy,system-ui,sans-serif;font-size:.95rem}.run-summary-stats{flex-direction:column;gap:3px;display:flex}.run-stat-row{color:#c5dce8;justify-content:space-between;font-size:.85em;display:flex}.run-stat-row.xp-earned{color:#ffe066;font-weight:700}.best-run-panel{background:#ffc83c0f;border:1px solid #ffc83c33;border-radius:8px;margin:8px 0;padding:8px 12px}.best-run-title{color:#ffd57a;letter-spacing:1px;margin-bottom:5px;font-family:Luckiest Guy,system-ui,sans-serif;font-size:.85rem}.levelup-flash-overlay{pointer-events:none;z-index:200;justify-content:center;align-items:center;animation:2.2s ease-out forwards levelup-flash-fade;display:flex;position:fixed;inset:0}.levelup-flash-text{color:#fff;letter-spacing:2px;text-shadow:0 4px 16px #00000080;white-space:nowrap;background:linear-gradient(135deg,#ff9a3c 0%,#f57 60%,#ffe066 100%);border-radius:16px;padding:18px 36px;font-family:Luckiest Guy,system-ui,sans-serif;font-size:2.2rem;font-weight:800;animation:2.2s ease-out forwards levelup-flash-scale;box-shadow:0 0 40px #ff645080,0 0 80px #ff96324d}@keyframes levelup-flash-fade{0%{opacity:0}15%{opacity:1}70%{opacity:1}to{opacity:0}}@keyframes levelup-flash-scale{0%{filter:brightness(2);transform:scale(.4)}20%{filter:brightness(1.3);transform:scale(1.08)}35%{filter:brightness();transform:scale(1)}85%{transform:scale(1)translateY(0)}to{transform:scale(1.05)translateY(-8px)}}.ghost-badge{color:#c8e8ff;letter-spacing:3px;pointer-events:none;z-index:42;text-shadow:0 0 10px #c8e6ffcc;background:#b4c8ff26;border:1px solid #b4dcff8c;border-radius:20px;padding:5px 18px;font-family:Luckiest Guy,system-ui,sans-serif;font-size:1.1rem;animation:.65s ease-in-out infinite alternate ghost-pulse;position:fixed;top:68px;left:50%;transform:translate(-50%)}@keyframes ghost-pulse{0%{opacity:.75;transform:translate(-50%)scale(.97)}to{opacity:1;transform:translate(-50%)scale(1.03)}}.mini-map{box-shadow:0 0 12px #50a0ff2e}
