
.ev-pips { display: inline-flex; align-items: center; gap: .22rem; flex: none; }
.ev-pips > i { display: block; width: .62rem; height: .62rem; border-radius: 50%; border: 1.5px solid color-mix(in srgb, var(--skill, var(--gold-2)) 70%, transparent); background: rgba(0, 0, 0, .25); }
.ev-pips > i.is-done { background: var(--skill, var(--gold-2)); border-color: var(--skill, var(--gold-2)); }
.ev-pips > i.is-now { background: conic-gradient(var(--skill, var(--gold-2)) var(--pip, 0%), rgba(0, 0, 0, .25) 0); }
.ev-count { font-weight: 400; color: var(--skill, var(--gold-1)); }
.ev-boss-bar { position: relative; height: 1.1rem; border-radius: .42rem; overflow: hidden; background: linear-gradient(180deg, rgba(10, 2, 2, .78), rgba(34, 8, 6, .72)); box-shadow: inset 0 0 0 1px rgba(255, 112, 84, .38), inset 0 2px 4px rgba(0, 0, 0, .6); }
.ev-boss-bar > i { position: absolute; inset: 0 auto 0 0; display: block; border-radius: inherit; background: linear-gradient(180deg, #ff7258 0%, #e2392b 48%, #a5161a 100%); box-shadow: inset 0 1px 0 rgba(255, 228, 214, .38), inset -1px 0 0 rgba(0, 0, 0, .35); }
.ev-boss-bar.is-mini { flex: 0 1 5.5rem; min-width: 3.5rem; height: .5rem; border-radius: .3rem; }
.ev-boss-bar.has-label { height: 1.35rem; }
.ev-boss-bar.has-num { height: 1.4rem; }
.ev-boss-bar > b { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; gap: .75rem; padding: 0 .6rem; color: #fff6f0; text-shadow: 0 1px 2px #000, 1px 0 2px #000, -1px 0 2px #000, 0 0 5px rgba(0, 0, 0, .85); }
.ev-boss-bar.has-label.has-num > b { justify-content: space-between; }
.ev-boss-name { min-width: 0; font: 700 .72rem var(--font-ui); letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ev-boss-num { flex: none; font: 700 .82rem var(--font-num); letter-spacing: .02em; white-space: nowrap; }
.ev-boss-mini-num { flex: none; font: 700 .8rem var(--font-num); color: #ffd8cc; white-space: nowrap; }
.ev-token { display: inline-grid; place-items: center; flex: none; }
.ev-token .ia-emblem { width: 1.15em; height: 1.15em; }
.ev-token.is-big .ia-emblem { width: 3.4rem; height: 3.4rem; }
.ev-icon { flex: none; display: grid; place-items: center; width: 2.6rem; height: 2.6rem; border-radius: .65rem; object-fit: contain; background: rgba(255, 255, 255, .04); }
.ev-icon.is-emblem .ia-emblem { width: 2rem; height: 2rem; }
.ev-icon.is-locked { color: var(--text-3); border: 1px dashed rgba(255, 255, 255, .14); }
.ev-icon.is-locked .ia-glyph { width: 1.1rem; height: 1.1rem; }
.title-tag { display: inline-block; margin-left: .35rem; font: 600 .72rem var(--font-ui); letter-spacing: .04em; color: var(--gold-2); vertical-align: baseline; white-space: nowrap; }
.chat-line .title-tag { margin: 0 0 0 .05rem; font-size: .68rem; font-weight: 600; color: var(--gold-3); }
.profile-name .title-tag { font-size: .82rem; }
.news-crest.is-board .ia-emblem { width: 1.1rem; height: 1.1rem; vertical-align: -.2rem; }
.chat-text.is-town { color: var(--gold-1); }
.world-frame.is-preload { visibility: hidden; pointer-events: none; z-index: 0; }

@media (min-width: 761px) and (min-height: 501px), (min-width: 761px) and (pointer: fine), (min-width: 761px) and (pointer: none) {
  .is-hud .ev-chip { position: absolute; right: var(--hud-pad); top: var(--ev-chip-t, calc(var(--hud-pad) + 3.6rem)); display: grid; grid-template-columns: auto minmax(0, 1fr) auto; grid-template-areas: "medal head head" "medal line btns"; align-items: center; column-gap: .65rem; row-gap: .12rem;
    width: 24rem; max-width: calc(100vw - 2 * var(--hud-pad)); padding: .55rem .6rem .55rem .55rem; border-radius: var(--hud-radius); border-color: color-mix(in srgb, var(--skill) 45%, transparent); }
  .is-hud .ev-chip-medal { grid-area: medal; cursor: pointer; }
  .is-hud .ev-chip .medal { --size: 2.7rem; }
  .is-hud .ev-chip-open { grid-area: head; min-width: 0; padding: 0; border: 0; background: none; color: var(--gold-0); font: 400 1.1rem/1.2 var(--font-display); text-align: left; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; cursor: pointer; }
  .is-hud .ev-chip-open:hover { color: #fff; }
  .is-hud .ev-chip-line { grid-area: line; display: flex; align-items: center; gap: .45rem; min-width: 0; font-size: .88rem; color: var(--text-2); white-space: nowrap; overflow: hidden; cursor: pointer; }
  .is-hud .ev-chip-line .ev-count { font-size: .98rem; }
  .is-hud .ev-chip-btns { grid-area: btns; display: flex; align-items: center; gap: .3rem; }
  .is-hud .ev-chip .btn-sm { min-height: 2rem; padding: .25rem .8rem; }
  .is-hud .ev-chip .ev-unjoin { width: 2rem; padding: 0; --tone-top: rgba(255, 255, 255, .06); --tone-mid: rgba(255, 255, 255, .04); --tone-bottom: rgba(0, 0, 0, .1); --tone-edge: rgba(255, 255, 255, .16); --tone-text: var(--text-2); box-shadow: none; }
  .is-hud .ev-chip:is(.is-finale, .is-fled, .is-cancelled) .ev-chip-line { white-space: normal; }

  .is-hud .region-top > .ev-plate { --ev-plate-w: min(24rem, var(--hud-task-width, var(--hud-task-w))); position: absolute; top: var(--ev-plate-t, 9rem); left: calc(var(--hud-task-l, calc(50% - var(--hud-task-w) / 2)) + (var(--hud-task-width, var(--hud-task-w)) - var(--ev-plate-w)) / 2); width: var(--ev-plate-w);
    display: grid; gap: .45rem; padding: .6rem .8rem .65rem; border-radius: var(--hud-radius); border-color: color-mix(in srgb, var(--skill) 45%, transparent); }
  .is-hud .region-top > .ev-plate.is-boss { --ev-plate-w: var(--hud-task-width, var(--hud-task-w)); gap: .5rem; padding: .65rem .85rem .7rem; }
  .is-hud .region-top > .ev-plate.is-boss .ev-boss-bar { height: 1.25rem; }
  .is-hud .region-top > .ev-plate.is-boss .ev-boss-bar.has-num { height: 1.55rem; }
  .is-hud .region-top > .ev-plate.is-boss .ev-boss-num { font-size: .9rem; }
  .is-hud.has-window .region-top > .ev-plate { display: none; }
}
.ev-plate-head { display: flex; align-items: center; gap: .5rem; min-width: 0; }
.ev-plate-head > .ia-emblem { flex: none; width: 1.7rem; height: 1.7rem; }
.ev-plate-head strong { flex: 1; min-width: 0; font: 400 1.05rem/1.15 var(--font-display); color: var(--gold-0); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ev-plate-count { flex: none; font-size: .9rem; color: var(--text-2); }
.ev-plate-count .ev-count { font-family: var(--font-num); }
.ev-plate-bar { height: .5rem; background: rgba(255, 255, 255, .1); box-shadow: none; }
.ev-plate-bar > i { background: var(--skill); box-shadow: none; }
.ev-plate-foot { display: flex; align-items: center; justify-content: space-between; gap: .6rem; min-width: 0; }
.ev-plate-foot small { min-width: 0; font-size: .84rem; color: var(--text-3); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ev-plate-foot .btn-sm { flex: none; min-height: 2rem; padding: .25rem .75rem; }
.ev-plate-btns { flex: none; display: flex; align-items: center; gap: .3rem; }
.ev-plate-foot .btn-sm.ev-unjoin { width: 2rem; padding: 0; }
:is(.ev-plate-foot, .ev-strip, .world-bar) .ev-unjoin { --tone-top: rgba(255, 255, 255, .06); --tone-mid: rgba(255, 255, 255, .04); --tone-bottom: rgba(0, 0, 0, .1); --tone-edge: rgba(255, 255, 255, .16); --tone-text: var(--text-2); box-shadow: none; }
.ev-plate.is-boss { border-color: rgba(226, 70, 52, .55); }
.ev-boss-head { display: flex; align-items: center; gap: .55rem; min-width: 0; }
.ev-boss-head > .ia-emblem { flex: none; width: 1.9rem; height: 1.9rem; }
.ev-boss-head strong { flex: 1; min-width: 0; font: 400 1.2rem/1.15 var(--font-display); letter-spacing: .01em; color: #ffe2d2; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ev-plate.is-boss.is-down .ev-boss-head strong { color: var(--gold-0); }
.ev-bar-plate { display: flex; align-items: center; gap: .45rem; min-width: 0; }
.ev-bar-plate .ev-plate-bar { width: 5.5rem; flex: none; }
.ev-bar-plate.is-boss .ev-boss-bar { flex: 1; }

@media (max-width: 760px), (max-height: 500px) and (pointer: coarse) {
  :root:has(#ia-top > .ev-strip) { --top: 5.8rem; }
  :root:has(#ia-top > .np-level):has(#ia-top > .ev-strip) { --top: 7.35rem; }
  .region-top:has(> .ev-strip) { display: flex; flex-direction: column; }
  .region-top:has(> .ev-strip) > .topbar { flex: 1 1 auto; height: auto; min-height: 0; }
  .ev-strip { flex: none; display: flex; align-items: center; gap: .45rem; height: 2.3rem; padding: 0 .4rem 0 .6rem; background: rgba(8, 12, 20, .97); border-bottom: 1px solid color-mix(in srgb, var(--skill) 45%, transparent); }
  .ev-strip-open { flex: 1; display: flex; align-items: center; gap: .45rem; min-width: 0; padding: 0; border: 0; background: none; color: var(--text-1); font-size: .82rem; text-align: left; }
  .ev-strip-open > .ia-emblem { flex: none; width: 1.55rem; height: 1.55rem; }
  .ev-strip-line { min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .ev-strip-line:has(> .ev-boss-bar) { display: flex; align-items: center; gap: .45rem; }
  .ev-strip .ev-boss-mini-num { font-size: .76rem; }
  .ev-strip .btn-sm { flex: none; min-height: 1.8rem; padding: .15rem .7rem; font-size: .78rem; }
  .ev-strip .btn-sm.ev-unjoin { width: 1.8rem; min-height: 1.8rem; padding: 0; }
  .world-bar .ev-bar-plate { flex: 1 1 100%; order: 5; }
  .world-bar .ev-bar-plate .ev-plate-bar { flex: 1; width: auto; }
  .ev-strip { height: 3.3rem; }
  .ev-strip-open { align-self: stretch; font-size: .95rem; }
  .ev-strip .ev-boss-mini-num { font-size: .9rem; }
  .ev-strip .btn-sm { min-height: 2.6rem; padding: .2rem .9rem; font-size: .9rem; }
  .ev-strip .btn-sm.ev-unjoin { width: 2.6rem; min-height: 2.6rem; }
  .ev-strip .btn-sm::after { content: ""; position: absolute; left: 50%; top: 50%; translate: -50% -50%; width: max(100%, 3.3rem); height: 3.3rem; }
  .world-bar :is(.ev-boss-name, .ev-boss-num, .ev-plate-count) { font-size: .9rem; }
}

.ev-join { position: relative; width: min(31rem, calc(100vw - 2rem)); display: grid; gap: .75rem; padding: 1.25rem 1.35rem 1.1rem; border-color: color-mix(in srgb, var(--skill) 50%, transparent); background: linear-gradient(180deg, rgba(22, 36, 60, .985), rgba(9, 15, 27, .99)); text-align: left; }
.ev-join-head { display: flex; align-items: center; gap: .9rem; min-width: 0; }
.ev-join-head .medal { flex: none; }
.ev-join-head small { color: var(--gold-3); font-size: .74rem; letter-spacing: .1em; }
.ev-join-head h2 { margin: .15rem 0 0; font: 400 1.6rem/1.1 var(--font-display); color: var(--gold-0); }
.ev-join p { margin: 0; font-size: .95rem; line-height: 1.45; color: var(--text-2); text-align: left; }
.ev-join h2 { text-align: left; }
.ev-join .ev-join-warn, .ev-pays .ev-join-warn { display: flex; align-items: flex-start; gap: .5rem; padding: .5rem .65rem; border-radius: .6rem; background: rgba(255, 143, 79, .1); border: 1px solid rgba(255, 143, 79, .35); color: #ffd2b5; }
.ev-join-warn .ia-glyph { flex: none; width: 1rem; height: 1rem; margin-top: .15rem; }
.ev-join-foot { display: flex; justify-content: flex-end; gap: .6rem; margin-top: .2rem; }

.events-page .win-caps { display: flex; align-items: baseline; flex-wrap: wrap; gap: .3rem .6rem; margin: 0; font: 400 .79rem var(--font-ui); letter-spacing: .12em; text-transform: uppercase; color: var(--gold-3); }
.events-page .win-caps small { font-size: .8rem; letter-spacing: .02em; text-transform: none; color: var(--text-3); }
.ev-body { display: grid; gap: 1rem; align-content: start; grid-auto-rows: max-content; }
@media (min-width: 761px) and (min-height: 501px), (min-width: 761px) and (pointer: fine), (min-width: 761px) and (pointer: none) {
  .is-hud .events-page .ev-body { flex: 1; min-height: 0; overflow-y: auto; padding: 0 .25rem .25rem 0; }
  .is-hud .stage .board-page.win-page > .ev-body { flex: 1; min-height: 0; overflow-y: auto; scrollbar-width: thin; padding: 0 .25rem .25rem 0; }
}
.ev-card { display: grid; gap: .6rem; align-content: start; padding: 1rem 1.1rem; }
.ev-closed { justify-items: center; text-align: center; padding: 2rem 1rem; color: var(--text-2); }
.ev-closed .ia-emblem { width: 3.6rem; height: 3.6rem; }
.ev-closed p { margin: 0; color: var(--text-3); }
.ev-now-body { grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); }
.ev-now-body > .ev-last { grid-column: 1 / -1; }
.ev-now-body > .ev-next { grid-column: 1 / -1; }
.ev-now { grid-template-columns: 13rem minmax(0, 1fr); gap: 1.2rem; align-items: stretch; border-color: color-mix(in srgb, var(--skill) 35%, transparent) !important; }
.ev-art { position: relative; min-height: 13rem; border-radius: .85rem; background: radial-gradient(circle at 50% 42%, color-mix(in srgb, var(--skill) 42%, #0d1522) 0%, #0a101b 62%, #070b12 100%); border: 1px solid color-mix(in srgb, var(--skill) 30%, rgba(255, 255, 255, .08)); overflow: hidden; }
.ev-art > img { display: block; width: 100%; height: 100%; object-fit: cover; }
.ev-art.is-emblem { display: grid; place-items: center; }
.ev-art.is-emblem > .ia-emblem { width: 8rem; height: 8rem; filter: drop-shadow(0 .5rem 1.2rem rgba(0, 0, 0, .55)); }
.ev-now-copy { display: grid; gap: .5rem; align-content: start; min-width: 0; }
.ev-now-copy > small.t-caps { color: var(--gold-3); font-size: .74rem; letter-spacing: .12em; }
.ev-now-copy h2 { margin: 0; font: 400 1.6rem/1.15 var(--font-display); color: var(--gold-0); }
.ev-when { margin: 0; font-size: 1rem; color: var(--text-2); }
.ev-when .ev-count { font-size: 1.9rem; font-family: var(--font-num); vertical-align: -.15rem; }
.ev-when small { margin-left: .4rem; font-size: .86rem; color: var(--text-3); }
.ev-stage { display: grid; gap: .45rem; }
.ev-stage .ev-pips > i { width: .85rem; height: .85rem; }
.ev-stage-bar { height: .55rem; background: rgba(255, 255, 255, .1); box-shadow: none; }
.ev-stage-bar > i { background: var(--skill); box-shadow: none; }
.ev-who { display: flex; align-items: flex-start; gap: .45rem; margin: 0; font-size: .9rem; line-height: 1.4; color: var(--text-2); }
.ev-who .ia-glyph { flex: none; width: 1rem; height: 1rem; margin-top: .15rem; color: var(--gold-3); }
.ev-who b { font-weight: 400; color: var(--text-1); }
.ev-who.is-none { color: var(--text-3); }
.ev-actions { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .2rem; }
.ev-note { display: flex; align-items: flex-start; gap: .45rem; margin: 0; font-size: .88rem; line-height: 1.4; color: var(--text-3); }
.ev-note .ia-glyph { flex: none; width: 1rem; height: 1rem; margin-top: .12rem; }
.ev-note.is-good { color: var(--emerald); }
.ev-pays p { margin: 0; font-size: .92rem; line-height: 1.5; color: var(--text-2); }
.ev-pays .ev-pays-boost { font-size: 1rem; color: var(--text-1); }
.ev-pays .ev-pays-note { display: flex; align-items: flex-start; gap: .45rem; font-size: .84rem; color: var(--text-3); }
.ev-pays-note .ia-glyph { flex: none; width: .95rem; height: .95rem; margin-top: .15rem; }
.ev-last { display: flex; align-items: flex-start; gap: .5rem; margin: 0; padding: .7rem .9rem; border-radius: .8rem; background: rgba(255, 255, 255, .03); border: 1px solid rgba(255, 255, 255, .06); font-size: .88rem; line-height: 1.45; color: var(--text-2); }
.ev-last .ia-glyph { flex: none; width: 1rem; height: 1rem; margin-top: .15rem; color: var(--gold-2); }
.ev-last b { font-weight: 400; color: var(--gold-1); }
.ev-rows { display: grid; gap: .35rem; }
@media (min-width: 761px) and (min-height: 501px), (min-width: 761px) and (pointer: fine), (min-width: 761px) and (pointer: none) {
  .is-hud .ev-schedule .ev-rows { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(6, auto); grid-auto-flow: column; column-gap: .7rem; }
  .is-hud .ev-rows.is-short { grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: .7rem; }
}
.ev-rows.is-short .ev-row { grid-template-columns: 4.8rem 2.2rem minmax(0, 1fr); }
.ev-row { display: grid; grid-template-columns: 5.4rem 2.4rem minmax(0, 1fr) auto; align-items: center; gap: .75rem; padding: .45rem .7rem; border-radius: .7rem; border: 1px solid rgba(255, 255, 255, .06); background: rgba(255, 255, 255, .02); }
.ev-row.is-now { border-color: color-mix(in srgb, var(--skill) 50%, transparent); background: color-mix(in srgb, var(--skill) 8%, transparent); }
.ev-row-when { display: grid; gap: .05rem; }
.ev-row-when small { font: 400 .72rem var(--font-ui); letter-spacing: .08em; text-transform: uppercase; color: var(--gold-3); }
.ev-row-when b { font: 400 1.15rem var(--font-num); color: var(--text-1); }
.ev-row .medal { --size: 2.2rem; }
.ev-row-name { display: grid; gap: .05rem; min-width: 0; }
.ev-row-name strong { font: 400 1.05rem var(--font-display); color: var(--gold-0); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ev-row-name small { font-size: .82rem; color: var(--text-3); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ev-row-state { display: inline-flex; align-items: center; gap: .35rem; font-size: .86rem; color: var(--text-2); white-space: nowrap; }
.ev-row-state b { font-weight: 400; color: var(--text-1); }
.ev-row-state.is-good { color: var(--emerald); }
.ev-row-state .ia-glyph { width: .95rem; height: .95rem; }
.ev-tokens-body { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); grid-template-areas: "purse keeps" "trader keeps" "trader titles" "trader rolls"; }
.ev-purse { grid-area: purse; display: flex; align-items: center; gap: 1rem; }
.ev-purse > div { display: grid; gap: .1rem; }
.ev-purse b { font: 400 2.2rem/1 var(--font-num); color: var(--gold-0); }
.ev-purse strong { font: 400 1rem var(--font-display); color: var(--gold-1); }
.ev-purse small { font-size: .84rem; color: var(--text-3); }
.ev-trader { grid-area: trader; }
.ev-keeps { grid-area: keeps; }
.ev-titles { grid-area: titles; }
.ev-rolls { grid-area: rolls; }
.ev-trades { display: grid; gap: .3rem; }
.ev-trade { display: grid; grid-template-columns: 2.6rem minmax(0, 1fr) auto 8.2rem; align-items: center; gap: .7rem; padding: .45rem .5rem; border-radius: .7rem; background: rgba(255, 255, 255, .02); }
.ev-trade.is-pet { background: rgba(242, 198, 106, .04); }
.ev-trade-copy { display: grid; gap: .1rem; min-width: 0; }
.ev-trade-copy strong { font: 400 1rem var(--font-display); color: var(--gold-0); }
.ev-trade-copy small { font-size: .8rem; line-height: 1.35; color: var(--text-3); }
.ev-price { display: inline-flex; align-items: center; gap: .3rem; font: 400 1.05rem var(--font-num); color: var(--gold-1); }
.ev-trade .hold-buy { width: 100%; }
.ev-owned { display: inline-flex; align-items: center; justify-content: center; gap: .3rem; font-size: .84rem; color: var(--emerald); }
.ev-owned .ia-glyph { width: .95rem; height: .95rem; }
.ev-keep-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .5rem; }
.ev-keep { display: flex; align-items: center; gap: .6rem; min-width: 0; padding: .5rem .6rem; border-radius: .7rem; border: 1px dashed rgba(255, 255, 255, .12); }
.ev-keep.is-found { border-style: solid; border-color: color-mix(in srgb, var(--skill) 45%, transparent); background: color-mix(in srgb, var(--skill) 6%, transparent); }
.ev-keep-copy { display: grid; gap: .05rem; min-width: 0; }
.ev-keep-copy strong { font: 400 .95rem var(--font-display); color: var(--text-1); }
.ev-keep.is-found .ev-keep-copy strong { color: var(--gold-0); }
.ev-keep-copy small { font-size: .78rem; line-height: 1.3; color: var(--text-3); }
.ev-title-rows { display: grid; gap: .35rem; }
.ev-title-row { display: flex; align-items: center; gap: .65rem; padding: .35rem .5rem; border-radius: .7rem; }
.ev-title-row .medal { --size: 2rem; flex: none; }
.ev-title-row:not(.is-earned) .medal { filter: grayscale(.8) brightness(.8); }
.ev-title-copy { flex: 1; display: grid; gap: .05rem; min-width: 0; }
.ev-title-copy strong { font: 400 1rem var(--font-display); color: var(--text-2); }
.ev-title-row.is-earned .ev-title-copy strong { color: var(--gold-0); }
.ev-title-copy small { font-size: .78rem; color: var(--text-3); }
.ev-title-left { font-size: .84rem; color: var(--text-3); }
.ev-roll-list { display: grid; gap: .3rem; margin: 0; padding: 0; list-style: none; }
.ev-roll-list li { display: flex; align-items: center; gap: .55rem; font-size: .88rem; color: var(--text-2); }
.ev-roll-list li .ia-emblem { flex: none; width: 1.5rem; height: 1.5rem; }
.ev-roll-list li b { font-weight: 400; color: var(--text-1); }
.ev-roll-list li.is-used { color: var(--text-3); }
.ev-roll-list li.is-used b { color: var(--text-3); }
.ev-roll-list li.is-used .ia-emblem { filter: grayscale(.7) brightness(.8); }
.ev-phone .ev-ph-head { display: flex; align-items: center; gap: .8rem; padding: .9rem 1rem; }
.ev-phone .ev-ph-head > div:not(.ev-ph-tokens) { flex: 1; display: grid; }
.ev-phone .ev-ph-head .t-caps { font-size: .72rem; letter-spacing: .12em; color: var(--gold-3); }
.ev-phone .ev-ph-head h1 { margin: 0; font: 400 1.6rem var(--font-display); color: var(--gold-0); }
.ev-ph-tokens { display: flex; align-items: center; gap: .35rem; font: 400 1.25rem var(--font-num); color: var(--gold-1); }
.ev-ph-tabs { display: flex; gap: .35rem; }
.ev-ph-tab { flex: 1; min-height: 2.4rem; border-radius: .65rem; border: 1px solid rgba(255, 255, 255, .1); background: rgba(255, 255, 255, .03); color: var(--text-2); font-size: .92rem; }
.ev-ph-tab.is-on { border-color: rgba(242, 198, 106, .5); background: rgba(242, 198, 106, .14); color: var(--gold-1); }
@media (max-width: 760px), (max-height: 500px) and (pointer: coarse) {
  .ev-now-body, .ev-tokens-body { grid-template-columns: minmax(0, 1fr); grid-template-areas: none; }
  .ev-purse, .ev-trader, .ev-keeps, .ev-titles, .ev-rolls { grid-area: auto; }
  .ev-now { grid-template-columns: minmax(0, 1fr); }
  .ev-art { min-height: 8.5rem; }
  .ev-row { grid-template-columns: 4.4rem 2rem minmax(0, 1fr); }
  .ev-row .ev-row-state, .ev-row > .btn { grid-column: 2 / -1; justify-self: start; }
  .ev-trade { grid-template-columns: 2.4rem minmax(0, 1fr) auto; }
  .ev-trade > .hold-buy, .ev-trade > .ev-owned { grid-column: 2 / -1; }
  .ev-keep-grid { grid-template-columns: minmax(0, 1fr); }
  .ev-ph-tab { min-height: 3.3rem; font-size: 1rem; }
  .ev-phone :is(.btn, .btn-sm) { min-height: 3.3rem; font-size: .95rem; }
  .ev-phone .ev-ph-head .t-caps, .ev-phone .ev-now-copy > small.t-caps, .ev-phone .win-caps, .ev-phone .win-caps small, .ev-phone .ev-row-when small, .ev-phone .ev-row-name small,
  .ev-phone .ev-row-state, .ev-phone .ev-note, .ev-phone .ev-pays .ev-pays-note, .ev-phone .ev-last, .ev-phone .ev-when small, .ev-phone .ev-purse small, .ev-phone .ev-trade-copy small,
  .ev-phone .ev-keep-copy small, .ev-phone .ev-title-copy small, .ev-phone .ev-title-left, .ev-phone .ev-roll-list li, .ev-phone .ev-owned { font-size: .9rem; }
  .ev-phone .ev-row-when small { letter-spacing: .06em; }
  .ev-join .btn { min-height: 3.3rem; font-size: .95rem; }
  .ev-join-head small { font-size: .9rem; }
}

.ev-result-layer { position: fixed; inset: 0; z-index: 70; display: grid; place-items: center; padding: 1rem; pointer-events: none; }
.ev-result { pointer-events: auto; width: min(27rem, calc(100vw - 2rem)); display: grid; justify-items: center; gap: .55rem; padding: 1.4rem 1.4rem 1.2rem; border-radius: 1.2rem; border: 1px solid color-mix(in srgb, var(--skill) 55%, transparent); background: rgba(8, 13, 22, .93); box-shadow: 0 1.4rem 3.6rem rgba(0, 0, 0, .6); text-align: center; }
.ev-result h2 { margin: .15rem 0 0; font: 400 1.75rem/1.1 var(--font-display); color: var(--gold-0); text-wrap: balance; }
.ev-result-crowd { margin: 0; font-size: .95rem; color: var(--text-2); }
.ev-result-there { margin: 0; font-size: .9rem; color: var(--text-2); }
.ev-result .btn { margin-top: .35rem; }
.ev-chest { width: min(29rem, calc(100vw - 2rem)); gap: .45rem; padding-top: .8rem; }
.ev-chest-art { position: relative; width: 7.2rem; height: 6rem; margin: 0 auto -.1rem; }
.ev-chest-svg { position: relative; display: block; width: 100%; height: 100%; overflow: visible; }
.ev-chest-glow { position: absolute; left: 50%; top: 44%; width: 10.5rem; height: 6.6rem; transform: translate(-50%, -50%); border-radius: 50%; background: radial-gradient(closest-side, color-mix(in srgb, var(--skill) 40%, #ffe7a6) 0%, color-mix(in srgb, var(--skill) 22%, transparent) 55%, transparent 100%); }
.ev-chest-lid { transform-box: fill-box; transform-origin: 6% 100%; transform: translate(-3px, -15px) rotate(-17deg); }
.ev-chest.is-undefeated .ev-chest-glow { opacity: .45; }
.ev-chest-rows { justify-self: stretch; display: grid; gap: .3rem; margin: .25rem 0 0; padding: .5rem; border-radius: .9rem; background: rgba(255, 255, 255, .03); list-style: none; text-align: left; }
.ev-chest-row { display: grid; grid-template-columns: 2.4rem minmax(0, 1fr) auto; align-items: center; gap: .65rem; padding: .26rem .5rem .26rem .28rem; border-radius: .6rem; background: rgba(255, 255, 255, .035); }
.ev-chest-well { width: 2.4rem; height: 2.4rem; }
.ev-chest-well > .ia-emblem, .ev-chest-well > .ev-icon, .ev-chest-well > .ia-glyph { width: 76%; height: 76%; }
.ev-chest-well > .ev-icon { background: none; border-radius: 0; }
.ev-chest-well > .ia-glyph { color: var(--gold-1); }
.ev-chest-portrait { width: 86%; height: 86%; object-fit: cover; border-radius: .35rem; }
.ev-chest-name { display: grid; gap: .04rem; min-width: 0; }
.ev-chest-name b { font-size: .95rem; font-weight: 600; color: var(--text-1); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ev-chest-name small { font-size: .72rem; color: var(--text-3); }
.ev-chest-n { justify-self: end; font: 700 .98rem var(--font-num); color: var(--gold-1); white-space: nowrap; }
.ev-chest-new { display: inline-block; padding: .14rem .45rem; border-radius: .4rem; font: 700 .64rem var(--font-ui); letter-spacing: .07em; text-transform: uppercase; color: #1c1206; background: linear-gradient(180deg, #ffe29a, #d9a441); }
.ev-chest-row:is(.ec-keepsake, .ec-pet, .ec-title) { background: rgba(242, 198, 106, .08); box-shadow: inset 0 0 0 1px rgba(242, 198, 106, .24); }
.ev-chest-row:is(.ec-keepsake, .ec-pet, .ec-title) .ev-chest-name b { color: var(--gold-1); }
.ev-chest-row.ec-kill { background: rgba(226, 70, 52, .1); box-shadow: inset 0 0 0 1px rgba(226, 70, 52, .28); }
.ev-chest-row.ec-kill .ev-chest-n { color: #ffa08c; }
@media (max-width: 760px), (max-height: 500px) and (pointer: coarse) {
  .ev-result-layer { place-items: end center; padding-bottom: calc(var(--nav) + 1rem); }
  .ev-chest { max-height: calc(100dvh - var(--top, 5rem) - var(--nav, 4rem) - 2rem); overflow-y: auto; overscroll-behavior: contain; padding: .7rem 1rem 1rem; }
  .ev-chest-art { width: 6rem; height: 5rem; }
  .ev-result.ev-chest h2 { font-size: 1.5rem; }
  .ev-result .btn { min-height: 3.3rem; font-size: .95rem; }
  .ev-chest-name small, .ev-chest-new { font-size: .9rem; }
}
.ev-haul { display: flex; flex-wrap: wrap; align-items: center; gap: .3rem .6rem; margin-top: .35rem; }
.ev-haul-cell { display: inline-flex; align-items: center; gap: .22rem; font: 700 .8rem var(--font-num); color: var(--text-1); }
.ev-haul-cell > img, .ev-haul-cell > .ia-emblem, .ev-haul-cell > .ev-icon, .ev-haul-cell > .ia-glyph, .ev-haul-portrait { flex: none; width: 1.45rem; height: 1.45rem; object-fit: contain; }
.ev-haul-cell > .ev-icon { background: none; border-radius: 0; }
.ev-haul-cell > .ia-glyph { color: var(--gold-1); }
.ev-haul-portrait { object-fit: cover; border-radius: .3rem; }
.ev-haul-cell.is-new { padding: .08rem .18rem; border-radius: .4rem; box-shadow: inset 0 0 0 1px rgba(242, 198, 106, .45); }
.kill-line .ev-haul { display: inline-flex; margin: 0; }

.ev-away { display: grid; gap: .45rem; }
.welcome-stop.is-event { border-color: color-mix(in srgb, var(--skill) 38%, transparent); background: color-mix(in srgb, var(--skill) 8%, rgba(10, 16, 26, .55)); }
.welcome-stop.is-event .medal { flex: none; }
.welcome-stop.is-event p { margin: 0; line-height: 1.45; text-align: left; color: var(--text-1); }
.highlight.is-event .medal { flex: none; }
.ev-title-pick { display: flex; align-items: center; flex-wrap: wrap; justify-content: center; gap: .4rem .6rem; margin-top: .45rem; }
.ev-title-pick .t-caps { font-size: .7rem; letter-spacing: .1em; color: var(--gold-3); }
.ev-title-pick .segmented button { font-size: .82rem; }

.profile-keeps { display: flex; flex-wrap: wrap; align-items: center; gap: .3rem .45rem; margin: .35rem 0 0; }
.profile-keep { display: inline-flex; align-items: center; gap: .35rem; padding: .15rem .5rem .15rem .2rem; border-radius: .45rem; border: 1px solid color-mix(in srgb, var(--skill) 38%, transparent); background: color-mix(in srgb, var(--skill) 8%, transparent); font-size: .76rem; color: var(--text-1); }
.profile-keep .ev-icon { width: 1.35rem; height: 1.35rem; }
.profile-keep small { color: var(--text-3); font-size: .7rem; }
