/* Woodland paper, moss and restrained amber for long, peripheral sessions. */
:root{--app-bg:#e4e7d5;--surface:#f1ecd9;--surface-raised:#f8f3e5;--surface-muted:#e5dfcb;--text:#293e34;--text-soft:#506252;--wood:#886647;--wood-light:#a3845e;--wood-shadow:#594632;--lantern:#dec28a;--lantern-end:#d4ad6c;--screen-accent:#7b603a;--game-paper:#f1ecd9;--game-soft:#e5dfcb;--game-ink:#293e34}
:root[data-theme=dark]{--app-bg:#14231e;--surface:#21372e;--surface-raised:#2b4439;--surface-muted:#192d24;--text:#f1ecd9;--text-soft:#c0cdbd;--screen-accent:#dfc28b;--game-paper:#21372e;--game-soft:#2b4439;--game-ink:#f1ecd9}
body{background-image:none}.nav button.active{background:var(--lantern)!important}.button{background:var(--lantern)!important}.page-heading h1{background:var(--wood)}.page-heading h1:before,.page-heading h1:after{background:#efe2c5}.home-worker-name{color:color-mix(in srgb,var(--worker-rarity) 35%,#201f1b)}:root[data-theme=dark] .home-worker-name{color:color-mix(in srgb,var(--worker-rarity) 70%,#fff5df)}
.journey-type-filter{margin:10px 0}.journey-chapters{display:grid;gap:12px}.journey-chapter{border:2px solid var(--wood);border-radius:var(--kz-r-md);background:var(--surface-raised);overflow:hidden}.journey-chapter>summary{list-style:none;display:flex;gap:12px;align-items:center;min-height:60px;padding:9px 12px;cursor:pointer}.journey-chapter>summary>b{width:34px;height:34px;display:grid;place-items:center;background:var(--surface-muted);border-radius:50%;font-size:var(--kz-fs-md)}.journey-chapter>summary>span:nth-child(2){flex:1;font-size:var(--kz-fs-md);font-weight:800}.journey-chapter>summary small{display:block;font-size:var(--kz-fs-xs);color:var(--text-soft);font-weight:400}.journey-route-list{display:grid;gap:9px;padding:0 12px 14px;position:relative}.journey-node{display:flex;align-items:center;gap:12px;width:100%;min-height:76px;text-align:left;border:1px solid color-mix(in srgb,var(--wood) 45%,transparent);border-radius:var(--kz-r-md);background:var(--surface);color:var(--text);padding:9px;box-shadow:0 2px #0001}.journey-node>span:nth-child(2){flex:1;min-width:0}.journey-node strong{display:block;font-size:var(--kz-fs-sm)}.journey-node small{display:block;margin-top:3px;font-size:var(--kz-fs-xs);color:var(--text-soft)}.journey-node-art{width:48px;height:48px;display:grid;place-items:center;flex-shrink:0}.journey-node-art img{width:44px;height:44px;object-fit:contain;image-rendering:auto;border:2px solid var(--wood);border-radius:var(--kz-r-sm)}.journey-node:disabled{opacity:.65;filter:none;box-shadow:none}.journey-node.is-gym{border-width:2px;border-color:var(--wood);background:var(--surface-muted)}.journey-node.is-cleared i{color:#528061}.journey-node i{display:flex;font-style:normal}.journey-node .gba-gym-building{transform:scale(.83)}
.journey-run-preview{display:flex;gap:12px;align-items:center;background:var(--surface-muted);padding:12px;border-radius:var(--kz-r-md);margin:12px 0}.journey-run-preview img{width:48px;height:48px;object-fit:contain}.journey-run-preview small{display:block;font-size:var(--kz-fs-xs);color:var(--text-soft)}.journey-drop-details,.journey-settings{margin:12px 0;border:1px solid var(--wood);border-radius:var(--kz-r-md);padding:9px 12px}.journey-drop-details summary,.journey-settings summary{min-height:44px;display:flex;gap:7px;align-items:center;cursor:pointer}.journey-drop-details p{font-size:var(--kz-fs-xs)}.journey-drop-odds{display:grid;gap:9px}.journey-drop-odds>span{display:grid;grid-template-columns:32px 1fr;column-gap:8px;align-items:center}.journey-drop-odds img{grid-row:span 2;width:32px;height:32px;object-fit:contain}.journey-drop-odds small{font-size:var(--kz-fs-xs);color:var(--text-soft)}
.journey-battle-title{display:flex;gap:8px;align-items:center;justify-content:space-between!important}.journey-battle-title h1{font-size:var(--kz-fs-lg);padding:8px 12px;max-width:calc(100% - 52px)}.journey-focus-toggle{width:44px;height:44px;display:grid;place-items:center}.journey-focus-toggle[aria-pressed=true]{background:var(--lantern);color:#493b28}.journey-progress{display:grid;grid-template-columns:auto 1fr;gap:5px 12px;align-items:center;margin:10px 0}.journey-progress>span{font-size:var(--kz-fs-xs);font-weight:800}.journey-progress progress{width:100%;height:9px;accent-color:#789469}.journey-progress small{grid-column:1/-1;font-size:var(--kz-fs-xs);color:var(--text-soft)}.journey-stage{position:relative;border:3px solid var(--wood);border-radius:var(--kz-r-md);overflow:hidden;box-shadow:0 3px var(--wood-shadow);margin:12px -5px 10px;background:#a6bea0}.journey-stage canvas{display:block;width:100%;height:auto;aspect-ratio:800/380;image-rendering:auto}.journey-stage-name{position:absolute;top:8px;left:8px;padding:4px 7px;border-radius:var(--kz-r-sm);font-size:var(--kz-fs-xs);display:flex;gap:6px;align-items:center;background:#f0ebd6ec;color:#293e34;pointer-events:none}.journey-stage-name .ui-icon{width:14px;height:14px}.journey-stage #journey-result{position:absolute;bottom:12px;left:12px;right:12px;text-align:center;font-weight:800;font-size:var(--kz-fs-xs);color:#293e34;background:#f1ecd9e8;border-radius:var(--kz-r-sm);pointer-events:none;padding:8px}.journey-stage #journey-result:empty{display:none}.journey-stage #journey-result.is-win{border:2px solid #759773}.journey-stage #journey-result.is-loss{border:2px solid #a57861}.journey-battle-tools{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:var(--kz-fs-xs)}.journey-battle-tools button{min-width:44px;height:44px;display:grid;place-items:center}.journey-team-health{margin:10px 0}.journey-team-health .hud-member{display:flex;align-items:center;gap:10px;padding:10px;background:var(--surface-raised);border:1px solid var(--wood);border-radius:var(--kz-r-md);color:var(--text);width:100%;box-sizing:border-box}.journey-team-health .hud-heal{position:static;min-width:48px;width:48px;height:48px;border:0;background:none;opacity:1;filter:none}.journey-team-health .hud-vitals{flex:1}.journey-team-health .hud-level{font-size:var(--kz-fs-sm);color:var(--text);display:block}.journey-team-health .hud-bar{height:7px;margin:5px 0;background:var(--surface-muted);border:1px solid var(--wood);border-radius:var(--kz-r-sm);overflow:hidden}.journey-team-health .hud-bar i{height:100%;display:block;transition:width 400ms linear}.journey-team-health .hud-hp i{background:#749973}.journey-team-health .hud-xp i{background:#789fa9}.journey-team-health small{font-size:var(--kz-fs-xs);color:var(--text-soft)}.journey-last-event:empty{display:none}.journey-last-event{font-size:var(--kz-fs-xs)}.journey-loot{border:1px solid var(--wood);border-radius:var(--kz-r-md);background:var(--surface-raised);padding:10px;margin:12px 0}.journey-loot header{display:flex;align-items:center;justify-content:space-between}.journey-loot h2{font-size:var(--kz-fs-sm);display:flex;align-items:center;gap:6px;margin:0 0 6px}.journey-loot header small{font-size:var(--kz-fs-xs);color:var(--text-soft)}#hunt-loot{display:flex;flex-wrap:wrap;gap:9px}#hunt-loot>span{display:grid;grid-template-columns:32px auto;align-items:center;gap:2px 5px;max-width:140px}#hunt-loot img{width:32px;height:32px;object-fit:contain;grid-row:span 2}#hunt-loot small{font-size:var(--kz-fs-xs);color:var(--text-soft)}.session-comfort{padding-top:15px}.session-comfort label{display:flex;gap:9px;align-items:center;min-height:44px;font-weight:800}.session-comfort input{width:22px;height:22px}.session-comfort small{display:block;color:var(--text-soft);font-size:var(--kz-fs-xs)}
:root[data-session-mode=quiet] *, :root[data-session-mode=quiet] *:before,:root[data-session-mode=quiet] *:after{animation:none!important;scroll-behavior:auto!important}:root[data-session-mode=quiet] .reward-flight{display:none}:root[data-session-mode=quiet] .journey-stage-name{display:none}
@media(max-width:380px){.journey-battle-title h1{font-size:var(--kz-fs-md)}.journey-node{gap:8px}.journey-loot{padding:8px}}@media(prefers-reduced-motion:reduce){.journey-team-health .hud-bar i{transition:none}}

[data-screen=hunt]:has(#adventure-canvas) .goals-open{display:none}.journey-enemy-label{position:absolute;top:9px;right:9px;font-size:var(--kz-fs-xs);line-height:1.2;padding:4px 6px;background:#f0ebd6e8;color:#293e34;border-radius:var(--kz-r-sm);max-width:55%;text-align:right;pointer-events:none}.journey-enemy-label:empty{display:none}.journey-last-event{height:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.journey-team-health .hud-member{padding:8px 10px}

.loot-new,.goal-badge,.gathering-egg-dot{animation:none!important}

.journey-route-list{background-image:none!important;border:0!important;box-shadow:none!important}.journey-battle-tools [data-do=adventure-stop]{border-color:var(--wood)}

/* Journey owns its layout: legacy map/HUD rules must not position these cards. */
[data-screen=hunt] .journey-chapters,[data-screen=hunt] .journey-route-list{width:100%;height:auto;min-height:0;box-sizing:border-box;position:static;display:grid;grid-template-columns:minmax(0,1fr);transform:none;margin:0}
[data-screen=hunt] .journey-node{position:static;transform:none;box-sizing:border-box;min-width:0;max-width:100%;height:auto}
[data-screen=hunt] .journey-chapter{min-width:0;box-sizing:border-box}
[data-screen=hunt] .route-companion{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0}
[data-screen=hunt] .route-companion button{position:static;display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 3px;min-width:0;border:2px solid var(--wood);border-radius:var(--kz-r-md);background:var(--surface-raised);color:var(--text)}
[data-screen=hunt] .route-companion strong{font-size:var(--kz-fs-xs);line-height:1.3;text-align:center}
[data-screen=hunt] .storage{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
[data-screen=hunt] .storage .mon-card{position:static;min-width:0;display:flex;flex-direction:column;align-items:center;padding:8px 3px}
[data-screen=hunt] .mon-card.is-selected{outline:2px solid #638365;background:var(--surface-muted)}
[data-screen=hunt] .journey-stage{margin:12px 0;aspect-ratio:auto}
[data-screen=hunt] .journey-team-health{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;position:static}
[data-screen=hunt] .journey-team-health .hud-member{position:static;display:flex;flex-direction:column;padding:7px 4px;gap:4px;min-width:0;width:100%;height:auto;transform:none}
[data-screen=hunt] .journey-team-health .hud-vitals{width:100%;min-width:0}
[data-screen=hunt] .journey-team-health .hud-level{font-size:var(--kz-fs-xs);text-align:center;white-space:normal}
[data-screen=hunt] .journey-team-health small{font-size:var(--kz-fs-xs);display:block;text-align:center}
[data-screen=hunt] .journey-progress,[data-screen=hunt] .journey-battle-tools,[data-screen=hunt] .journey-loot{position:static;width:100%;box-sizing:border-box;transform:none}

[data-screen=hunt] .journey-team-health .hud-heal{height:36px;min-height:36px;width:36px;min-width:36px;flex:0 0 36px;padding:0}
[data-screen=hunt] .journey-team-health .hud-vitals{gap:1px;flex:0 0 auto;display:grid}
[data-screen=hunt] .journey-team-health .hud-bar{margin:3px 0}

/* Collection portraits retain original artwork colours in either theme. */
#storage-grid .mon-card,#storage-grid .rarity-portrait,#storage-grid .rarity-portrait img{filter:none!important;opacity:1!important;mix-blend-mode:normal}
#storage-grid .mon-card .name{color:var(--text);opacity:1;font-weight:700}
.collection-search-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,.8fr);align-items:start;gap:8px;margin:14px 0}
.collection-search-row input,.collection-search-row .kozy-choice{width:100%;min-width:0;min-height:46px;box-sizing:border-box;font-size:var(--kz-fs-xs)}
.collection-search-row input{padding:10px;border:2px solid var(--wood);border-radius:var(--kz-r-md);background:var(--surface-raised);color:var(--text)}
.collection-search-row input::placeholder{color:var(--text-soft);opacity:1}
.collection-extra-filters{margin:10px 0 14px}.collection-extra-filters>summary{cursor:pointer;font-size:var(--kz-fs-xs);color:var(--text-soft);padding:8px 0}

#storage-grid .rarity-portrait{width:48px!important;height:48px!important;padding:0!important;box-sizing:content-box!important;overflow:visible!important;background:transparent!important;isolation:isolate}
#storage-grid .rarity-portrait>img{display:block!important;visibility:visible!important;position:relative!important;inset:auto!important;z-index:1;width:48px!important;height:48px!important;min-width:48px!important;max-width:none!important;object-fit:contain;opacity:1!important;filter:none!important;mask:none!important;-webkit-mask:none!important;clip-path:none!important;background:transparent!important}
#storage-grid .rarity-portrait::before,#storage-grid .rarity-portrait::after{content:none!important}
#storage-grid .rarity-portrait .tier-stars{z-index:2}

[data-screen=collection] .goals-open{display:none!important}

.collection-garden .garden-target{position:absolute!important;display:block!important;z-index:3;transform:translate(-50%,-50%)!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0!important;min-width:0!important;min-height:0!important;width:36px!important;height:42px!important;opacity:1!important;filter:none!important;cursor:pointer}
.collection-garden .garden-target:hover,.collection-garden .garden-target:active{background:transparent!important;box-shadow:none!important}
.collection-garden .garden-target:focus-visible{outline:2px solid #e5aa4b!important;outline-offset:2px}

#storage-grid.collection-portrait-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px 4px;margin:12px 0}
#storage-grid.collection-portrait-grid .mon-card{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-width:0;padding:6px 0!important;gap:5px;border:0;background:transparent;box-shadow:none}
#storage-grid.collection-portrait-grid .rarity-portrait{--portrait-size:40px;width:40px!important;height:40px!important;margin:0 auto}
#storage-grid.collection-portrait-grid .rarity-portrait>img{width:40px!important;height:40px!important;min-width:40px!important}
#storage-grid.collection-portrait-grid .name{font-size:var(--kz-fs-xs);line-height:1.25;text-align:center;overflow-wrap:anywhere;width:100%}
#storage-grid.collection-portrait-grid .empty{grid-column:1/-1}

.collection-order-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin:8px 0 14px}.collection-order-row .kozy-choice{min-width:0;width:100%;box-sizing:border-box;font-size:var(--kz-fs-xs)}

.collection-order-row{grid-template-columns:minmax(0,1fr)}
#storage-grid.collection-portrait-grid .rarity-portrait{border:3px solid var(--rarity-color,var(--rarity))!important;border-radius:var(--kz-r-sm);box-shadow:var(--kz-shadow)!important;overflow:visible!important}

#storage-grid .portrait-cp{position:absolute;z-index:4;top:-4px;left:50%;transform:translateX(-50%);color:#fff!important;font-family:var(--kz-font);font-size:var(--kz-fs-xs);font-weight:900;line-height:14px;white-space:nowrap;pointer-events:none;-webkit-text-stroke:2px #000;paint-order:stroke fill;text-shadow:1px 0 #000,-1px 0 #000,0 1px #000,0 -1px #000}

/* Explicit external rarity frame on the new five-column collection. */
#storage-grid.collection-portrait-grid .rarity-portrait{outline:3px solid var(--rarity-color)!important;outline-offset:0!important;border:0!important;box-shadow:none!important;overflow:visible!important;margin:4px auto 3px!important}
#storage-grid.collection-portrait-grid .rarity-portrait>img{width:40px!important;height:40px!important;min-width:40px!important;max-width:40px!important}

/* Compact gathering loot: icons, amounts and actions. */
#profession-room .profession-overview{grid-template-columns:minmax(0,1fr) 130px!important;gap:8px!important}
#profession-room .profession-inline-loot{padding:6px!important;align-self:start!important;min-height:0!important;height:auto!important}
#profession-room [data-prof-loot]{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:5px!important}
#profession-room .loot-common,#profession-room .loot-rare{display:flex;flex-wrap:wrap;align-content:flex-start;align-items:center;gap:4px!important;padding:0!important;min-width:0}
#profession-room .loot-rare{border-left:1px solid var(--wood);padding-left:5px!important}
#profession-room .loot-row{display:flex!important;align-items:center!important;gap:3px!important;margin:0!important;font-size:var(--kz-fs-xs) !important;line-height:1.2}
#profession-room .loot-row img{width:20px!important;height:20px!important;flex:none}
#profession-room .loot-total{font-size:var(--kz-fs-xs) !important;width:100%;margin:2px 0!important;white-space:nowrap}
#profession-room [data-prof-loot] button{width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;padding:4px!important;font-size:var(--kz-fs-xs)}
#profession-room [data-prof-loot] button .ui-icon{width:18px;height:18px}
#profession-room [data-prof-collected]{font-size:var(--kz-fs-xs) !important;line-height:1.2;width:100%}

#profession-room .profession-overview{display:block!important}
#profession-room .profession-overview>.profession-helpers{width:100%;box-sizing:border-box}
#profession-room .profession-team{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px!important;align-items:start}
#profession-room .profession-team button{display:flex!important;flex-direction:column;align-items:center!important;min-width:0;gap:4px!important}
#profession-room .profession-team button>span:not(.rarity-portrait){width:100%;text-align:center;font-size:var(--kz-fs-xs) !important}
#profession-room .profession-helper-actions{justify-content:center;margin-top:7px}
#profession-room .profession-map{position:relative}
#profession-room .profession-map>.profession-inline-loot{position:absolute;z-index:4;left:8px;right:8px;bottom:8px;max-width:260px;margin:0 auto!important;padding:6px 8px!important;border:1px solid var(--wood);border-radius:var(--kz-r-md);background:var(--surface-raised);box-shadow:var(--kz-shadow);box-sizing:border-box}
#profession-room .profession-map [data-prof-loot]{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}
#profession-room .profession-map .loot-total{width:auto;margin:0 4px!important}

/* Gathering workspace: one sidebar beside the map, without stacked panels. */
#profession-room .profession-workspace{display:grid;grid-template-columns:96px minmax(0,1fr);gap:8px;align-items:start}
#profession-room .profession-side-panel{min-width:0;display:grid;gap:8px}
#profession-room .profession-overview{margin:0!important}
#profession-room .profession-overview>.profession-helpers{padding:5px!important;border-width:1px!important}
#profession-room .profession-team{display:flex!important;flex-direction:column;gap:6px!important}
#profession-room .profession-team button{width:100%;flex-direction:row!important;gap:4px!important;align-items:center!important;padding:0!important}
#profession-room .profession-team button>span:not(.rarity-portrait){font-size:var(--kz-fs-xs) !important;text-align:left;min-width:0}
#profession-room .profession-team .helper-name{display:block;font-size:var(--kz-fs-xs) !important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#profession-room .profession-team .rarity-portrait{--portrait-size:24px!important;width:24px!important;height:24px!important;flex:none!important;margin:0!important;padding:0!important}
#profession-room .profession-team .rarity-portrait>img{width:24px!important;height:24px!important}
#profession-room .profession-helper-actions{display:flex;gap:5px;justify-content:center;flex-wrap:nowrap}
#profession-room .profession-helper-actions button{min-width:32px!important;min-height:32px!important;width:32px!important;height:32px!important;padding:4px!important}
#profession-room .profession-side-panel>.profession-inline-loot{position:static!important;width:100%;margin:0!important;padding:5px!important;border:1px solid var(--wood);border-radius:var(--kz-r-md);background:var(--surface-raised);box-sizing:border-box}
#profession-room .profession-side-panel [data-prof-loot]{grid-template-columns:1fr!important;gap:6px!important}
#profession-room .profession-side-panel .loot-rare{border-left:0;border-top:1px solid var(--wood);padding:5px 0 0!important}
#profession-room .profession-map{width:100%;min-width:0;margin:0!important;align-self:start}
#profession-room .profession-map canvas{display:block;width:100%;height:auto;aspect-ratio:400/340;max-height:calc(100dvh - 250px);object-fit:contain}
[data-screen=professions] .goals-open,[data-screen=work] .goals-open{display:none!important}
#profession-room>.page-heading{margin:8px 0!important}
#profession-room>.page-heading h1{font-size:var(--kz-fs-md) !important;padding:7px!important}
#profession-room .profession-tabs{gap:4px}
#profession-room .profession-tabs button{width:32px!important;min-width:32px!important;height:32px!important;min-height:32px!important;padding:5px!important}

#profession-room .profession-workspace{grid-template-columns:84px minmax(0,1fr)}
#profession-room>.profession-overview{margin-top:10px!important;width:100%}
#profession-room>.profession-overview .profession-team{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px!important}
#profession-room>.profession-overview .profession-team button{flex-direction:column!important;align-items:center!important;gap:5px!important}
#profession-room>.profession-overview .profession-team button>span:not(.rarity-portrait){width:100%;text-align:center}
#profession-room>.profession-overview .profession-team .helper-name{font-size:var(--kz-fs-xs) !important}
#profession-room>.profession-overview .profession-team .rarity-portrait{--portrait-size:32px!important;width:32px!important;height:32px!important}
#profession-room>.profession-overview .profession-team .rarity-portrait>img{width:32px!important;height:32px!important}
#profession-room .helper-attributes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;margin:5px 0}
#profession-room .helper-attributes>span{display:flex;align-items:center;justify-content:center;gap:3px;font-size:var(--kz-fs-xs)}
#profession-room .helper-attributes .attribute-icon{width:14px;height:14px}
#profession-room>.profession-overview .profession-helper-actions{margin-top:7px}

.main:has(#profession-room) .goals-open{display:none!important}
#profession-room>.profession-overview .profession-team button{padding:2px!important}
#profession-room>.profession-overview .profession-team .helper-attributes{grid-template-columns:repeat(4,minmax(0,1fr));gap:1px}
#profession-room>.profession-overview .helper-attributes>span{flex-direction:column;gap:0;font-size:var(--kz-fs-xs)}
@media(max-height:700px){.main:has(#profession-room){padding-bottom:85px!important}#profession-room>.profession-overview .profession-team .rarity-portrait{--portrait-size:24px!important;width:24px!important;height:24px!important}#profession-room>.profession-overview .profession-team .rarity-portrait>img{width:24px!important;height:24px!important}#profession-room>.profession-overview .profession-team button{gap:2px!important}#profession-room .profession-map canvas{max-height:170px!important}}

#profession-room>.profession-overview .profession-team button{display:flex!important;flex-direction:row!important;align-items:center!important;gap:5px!important}
#profession-room>.profession-overview .profession-team button>span:not(.rarity-portrait){flex:1;min-width:0;text-align:left;width:auto}
#profession-room>.profession-overview .profession-team .helper-attributes{grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;margin:4px 0}
#profession-room>.profession-overview .helper-attributes>span{flex-direction:row;justify-content:flex-start;gap:2px;font-size:var(--kz-fs-xs)}
#profession-room>.profession-overview .helper-name{font-size:var(--kz-fs-xs) !important}
#profession-room>.profession-overview .profession-team .rarity-portrait{--portrait-size:28px!important;width:28px!important;height:28px!important}
#profession-room>.profession-overview .profession-team .rarity-portrait>img{width:28px!important;height:28px!important}

#profession-room>.profession-overview .profession-team button.gathering-worker{display:grid!important;grid-template-columns:minmax(0,1fr);justify-items:center;padding:7px 2px!important;gap:4px!important;background:var(--surface);border:0!important;box-shadow:0 1px color-mix(in srgb,var(--wood) 25%,transparent)}
#profession-room>.profession-overview .profession-team .home-worker-top{display:flex;gap:2px;justify-content:center;align-items:center;width:100%}
#profession-room>.profession-overview .profession-team .home-worker-attributes{display:grid;grid-template-columns:1fr;gap:2px;min-width:25px}
#profession-room>.profession-overview .profession-team .home-worker-attributes>span{display:flex;gap:2px;font-size:var(--kz-fs-xs);line-height:1.1;align-items:center}
#profession-room>.profession-overview .profession-team .rarity-portrait{--portrait-size:40px!important;width:40px!important;height:40px!important;margin:0!important}
#profession-room>.profession-overview .profession-team .rarity-portrait>img{width:40px!important;height:40px!important}
#profession-room .home-worker-energy{width:100%;display:flex;gap:3px;align-items:center;font-size:var(--kz-fs-xs)}
#profession-room .home-worker-energy progress{min-width:0;width:100%;height:6px}
#profession-room .home-worker-state{font-size:var(--kz-fs-xs) !important}

#profession-room .home-worker-attributes b{display:inline!important;height:auto!important;width:auto!important;background:transparent!important;border:0!important;box-shadow:none!important;color:var(--text);line-height:1.1;font-weight:700}

button[data-prof-sell],button[data-do="sell"],button[data-do="inventory-sell"]{background:#38834e!important;color:#fff4cf!important;border:2px solid #235733!important;border-bottom-width:3px!important;box-shadow:0 2px #183b25!important;border-radius:var(--kz-r-md)!important}button[data-prof-sell] .kozy-solid svg,button[data-do="sell"] .kozy-solid svg{filter:none!important}

#profession-room .loot-total{display:inline-flex;align-items:center;gap:4px}#profession-room .loot-total .currency-art{width:16px!important;height:16px!important;flex:none}

#profession-room .loot-materials{display:flex;flex-wrap:wrap;gap:6px;width:100%}#profession-room .loot-sale-line{display:flex;align-items:center;justify-content:space-between;gap:4px;width:100%;padding-top:5px;border-top:1px solid var(--wood)}#profession-room .loot-sale-line .loot-total{width:auto!important;margin:0!important;font-size:var(--kz-fs-xs) !important}.loot-box-count{display:flex;align-items:center;gap:5px}.loot-box-count img{width:32px!important;height:32px!important;image-rendering:pixelated}.loot-box-count b{font-size:var(--kz-fs-xs)}.egg-box-dialog{display:grid;justify-items:center;gap:10px;text-align:center}.egg-box-art{width:96px;height:96px;image-rendering:pixelated}.egg-box-reel{display:grid;justify-items:center;gap:8px;min-height:80px}.egg-box-reel img{width:64px;height:64px;object-fit:contain}.egg-box-dialog p{margin:0}.egg-box-dialog small{color:var(--text-soft)}

#profession-room .profession-workspace{grid-template-columns:112px minmax(0,1fr)}
#profession-room .loot-sale-line{display:grid;grid-template-columns:minmax(0,1fr) 28px;gap:3px}#profession-room .loot-total{font-size:var(--kz-fs-xs);min-width:0}#profession-room .loot-total img{width:16px;height:16px}#profession-room [data-prof-sell]{width:28px;height:28px;min-width:28px}

/* Gathering HUD shares the wooden frame and wallet treatment of the main HUD. */
#profession-room .profession-workspace{display:block}
#profession-room .profession-map>.profession-loot-hud{position:relative;inset:auto;max-width:none;width:100%;margin:0!important;padding:6px!important;border:0;border-bottom:3px solid var(--wood-shadow);border-radius:0;background:var(--wood);box-shadow:inset 0 2px #c5a374;box-sizing:border-box;color:#fff3d8}
#profession-room .profession-loot-hud [data-prof-loot]{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px!important;align-items:center}
#profession-room .profession-loot-hud .loot-common{display:flex;flex-wrap:nowrap;align-items:center;gap:5px!important}
#profession-room .profession-loot-hud .loot-materials{display:flex;flex-wrap:wrap;gap:4px;flex:1;min-width:0}
#profession-room .profession-loot-hud .loot-sale-line{display:flex;align-items:center;gap:4px;margin:0;padding:3px;border:1px solid #cf9a54;border-radius:var(--kz-r-sm);background:#53351d;flex:none}
#profession-room .profession-loot-hud .loot-total{display:flex;align-items:center;gap:3px;width:auto;margin:0!important;color:#ffe4a3;font-weight:900}
#profession-room .profession-loot-hud .loot-total .currency-art{width:23px!important;height:23px!important}
#profession-room .profession-loot-hud .loot-rare{display:flex;flex-wrap:nowrap;align-items:center;gap:4px!important;border-left:1px solid #c5a374;padding-left:7px!important;position:relative}
#profession-room .profession-loot-hud .loot-box-count{display:flex;align-items:center;gap:2px;white-space:nowrap}
#profession-room .profession-loot-hud .loot-box-count img{width:28px;height:28px}
#profession-room .profession-loot-hud [data-prof-collected]{position:absolute;top:100%;right:0;width:auto;white-space:nowrap;background:#53351d;border-radius:var(--kz-r-sm);z-index:5}
#profession-room .profession-map canvas{max-height:calc(100dvh - 390px);width:100%;object-fit:contain}

#profession-room .profession-loot-hud .loot-sale-line button{margin:0!important}#profession-room .profession-loot-hud .loot-total{background:none!important;box-shadow:none!important;text-decoration:none!important}#profession-room .profession-map canvas{max-height:none!important;height:auto!important;aspect-ratio:400/340;object-fit:fill}

/* Centered gathering stage with a compact crew and vertical scene selector. */
#profession-room .profession-workspace{position:relative;display:block;padding:0 36px;box-sizing:border-box}
#profession-room .profession-map{margin:0 auto!important;width:100%;max-width:400px}
#profession-room .profession-workspace>.profession-tabs{position:absolute;right:0;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:7px;margin:0}
#profession-room .profession-tabs button{background:var(--surface-raised)!important;color:var(--text);border:2px solid var(--wood-shadow);box-shadow:0 2px var(--wood-shadow)}
#profession-room .profession-tabs button[aria-pressed=true]{background:#e6a242!important;color:#422911!important;border-color:#422911;box-shadow:inset 0 2px #ffe09c,0 2px #422911}
#profession-room>.profession-overview .profession-helpers{padding:5px!important;min-height:0!important;height:auto!important}
#profession-room>.profession-overview .profession-team{margin:0!important;gap:4px!important}
#profession-room>.profession-overview .profession-team button{min-height:0!important;padding:3px!important;gap:2px!important}
#profession-room>.profession-overview .home-worker-top{gap:3px!important}
#profession-room>.profession-overview .profession-team .rarity-portrait{--portrait-size:28px!important;width:28px!important;height:28px!important}
#profession-room>.profession-overview .profession-team .rarity-portrait>img{width:28px!important;height:28px!important}
#profession-room .home-worker-attributes{gap:0!important;font-size:var(--kz-fs-xs) !important;line-height:12px!important}
#profession-room .home-worker-attributes .attribute-icon{width:11px!important;height:11px!important}
#profession-room .home-worker-name{font-size:var(--kz-fs-xs) !important;margin:0!important;line-height:12px!important}
#profession-room .home-worker-level,#profession-room .home-worker-energy,#profession-room .home-worker-state{font-size:var(--kz-fs-xs) !important;line-height:11px!important;margin:0!important}
#profession-room>.profession-overview .profession-helper-actions{margin-top:4px!important}
#profession-room .profession-helper-actions button{width:28px!important;height:28px!important;min-height:28px!important;min-width:28px!important;padding:4px!important}
#profession-room .profession-loot-hud [data-prof-loot]{gap:3px!important}#profession-room .profession-loot-hud .loot-rare{gap:2px!important;padding-left:3px!important}#profession-room .profession-loot-hud .loot-box-count img{width:23px;height:23px}#profession-room .profession-loot-hud .loot-sale-line{gap:1px;padding:1px}#profession-room .profession-loot-hud [data-prof-loot] button{width:24px!important;min-width:24px!important;height:24px!important;min-height:24px!important}

/* Resource drops live in the Kozins wallet chip. */
#profession-room>.page-heading{margin:0 0 4px!important;transform:translateY(-5px)}
#profession-room>.page-heading h1{padding:4px 7px!important;font-size:var(--kz-fs-sm) !important}
#profession-room .profession-loot-hud .loot-common{display:block;min-width:0}
#profession-room .profession-loot-hud .loot-sale-line{display:flex;align-items:center;justify-content:flex-end;gap:3px;padding:2px 3px;border-radius:var(--kz-r-sm);min-width:0}
#profession-room .profession-loot-hud .loot-materials{display:flex;align-items:center;gap:3px;flex:1;margin:0}
#profession-room .profession-loot-hud .loot-row{gap:1px!important;font-size:var(--kz-fs-xs) !important}
#profession-room .profession-loot-hud .loot-row img{width:16px!important;height:16px!important}
#profession-room .profession-loot-hud .loot-total{font-size:var(--kz-fs-xs) !important;gap:1px}
#profession-room .profession-loot-hud .loot-total .currency-art{width:18px!important;height:18px!important}
#profession-room .profession-loot-hud [data-prof-sell]{width:22px!important;min-width:22px!important;height:22px!important;min-height:22px!important;padding:3px!important}
#profession-room .profession-map>.profession-loot-hud{padding:4px!important}

/* Pokémon sheets stay within the viewport; long move lists scroll inside. */
#modal:has(.inspect-hero){width:min(360px,calc(100vw - 24px))!important;max-width:calc(100vw - 24px)!important;max-height:calc(100dvh - 24px)!important;box-sizing:border-box;padding:10px!important;margin:auto;overflow:auto;overscroll-behavior:contain}
#modal:has(.inspect-hero) #modal-content{min-width:0}
#modal:has(.inspect-hero) .modal-top{position:sticky;top:-10px;z-index:8;background:var(--surface-raised);padding:4px 0;margin:0 0 6px;gap:6px}
#modal:has(.inspect-hero) .modal-top h2{font-size:var(--kz-fs-md);margin:0}
#modal:has(.inspect-hero) .modal-top button{width:28px!important;min-width:28px!important;height:28px!important;min-height:28px!important;padding:4px!important}
#modal .inspect-hero{display:grid;grid-template-columns:56px 64px minmax(0,1fr);gap:4px;align-items:center;padding:3px!important;margin:0!important}
#modal .inspect-hero>.rarity-portrait{--portrait-size:52px!important;width:52px!important;height:52px!important;grid-row:1/4}
#modal .inspect-hero>.rarity-portrait img{width:52px!important;height:52px!important}
#modal .inspect-sprite-pedestal{grid-column:2;grid-row:1/4;width:64px!important;height:58px!important;padding:0!important;min-height:0!important}
#modal .inspect-sprite-pedestal canvas{width:64px!important;height:54px!important}
#modal .inspect-hero h2{grid-column:3;font-size:var(--kz-fs-sm);margin:0!important;overflow-wrap:anywhere}
#modal .inspect-hero>span,#modal .inspect-hero>small{grid-column:3;font-size:var(--kz-fs-xs) !important}
#modal .inspect-stats{gap:4px;margin:6px 0!important}#modal .inspect-stats>div{padding:4px!important}#modal .inspect-stats strong{font-size:var(--kz-fs-md) !important}
#modal:has(.inspect-hero) .work-affinity,#modal:has(.inspect-hero) .held-item{margin:5px 0!important;padding:5px!important;font-size:var(--kz-fs-xs)}
#modal:has(.inspect-hero) p{margin:4px 0!important;font-size:var(--kz-fs-xs)}
#modal:has(.inspect-hero) h3{font-size:var(--kz-fs-xs);margin:7px 0 4px}
#modal:has(.inspect-hero) .inspect-moves{gap:4px;margin:5px 0}#modal:has(.inspect-hero) .inspect-moves>span{padding:4px!important;font-size:var(--kz-fs-xs)}
#modal:has(.inspect-hero) .level-move-list{max-height:130px;overflow:auto;overscroll-behavior:contain;gap:4px}
#modal:has(.inspect-hero) .level-move{padding:4px!important;font-size:var(--kz-fs-xs);min-height:30px!important}
#modal:has(.inspect-hero) .button,#modal:has(.inspect-hero) .outline{min-height:30px!important;padding:5px 8px!important;margin:3px 0!important;font-size:var(--kz-fs-xs) !important}
#modal:has(.inspect-hero) .nickname-field{margin:5px 0;font-size:var(--kz-fs-xs)}#modal:has(.inspect-hero) input{padding:5px!important;min-height:30px!important}
#modal:has(.inspect-hero) .stack{gap:3px!important}

.main:has(#profession-room) .hud-back-row{gap:7px;align-items:center;flex-wrap:nowrap}.hud-back-row .profession-location-banner{font-size:var(--kz-fs-sm) !important;line-height:1.2;margin:0!important;padding:7px 9px;background:var(--wood);color:#fff3d8;border:2px solid var(--wood-shadow);border-radius:var(--kz-r-sm);box-shadow:0 2px var(--wood-shadow);min-width:0}.main #profession-room>.page-heading[hidden]{display:none!important}

.main:has(#page>.home-map) #page{padding-top:0!important}.main:has(#page>.home-map) .game-header{margin-bottom:5px!important}#page>.home-map{margin-top:0!important}#page>.home-map .scene-label{display:none!important}.shell:has(#page>.home-map) .desktop-companion{display:none!important}

#modal:has(.phase-completion){width:min(330px,calc(100vw - 28px))!important;max-height:calc(100dvh - 28px)!important;padding:0!important;overflow:auto;border:3px solid #49351f!important;border-radius:var(--kz-r-lg)!important;background:#f5ebcc!important;box-shadow:0 6px 0 #2c231b,var(--kz-shadow);color:#49351f}
#modal:has(.phase-completion)::backdrop{background:#182b2699;backdrop-filter:blur(3px)}
#modal:has(.phase-completion) .modal-top{display:none}
.phase-completion{position:relative;overflow:hidden;padding:18px 16px 14px;text-align:center;background:repeating-linear-gradient(0deg,transparent 0 7px,#70532c06 7px 8px),#f5ebcc}
.phase-celebration{height:88px;position:relative;display:grid;place-items:center;background:radial-gradient(ellipse at center,#ffe39c 0%,#ffe39c00 70%)}
.phase-medallion{display:grid;place-items:center;width:66px;height:66px;background:#85b884;border:3px solid #365c3e;border-radius:50%;box-shadow:inset 0 3px #d3e7ac,0 4px #365c3e;animation:phase-pop .6s cubic-bezier(.2,1.6,.5,1)}
.phase-medallion .ui-icon{width:34px;height:34px;color:#24492f}.phase-fishing .phase-medallion{background:#80bdca;border-color:#36596c}.phase-mining .phase-medallion{background:#c2ac82;border-color:#6b5237}
.phase-spark{position:absolute;color:#ad741e;font-size:var(--kz-fs-lg);animation:phase-spark .8s ease-out both}.spark-one{left:21%;top:12px}.spark-two{right:19%;top:38px;animation-delay:.1s}.spark-three{left:25%;bottom:5px;animation-delay:.2s}
.phase-location{display:block;font-size:var(--kz-fs-xs);text-transform:uppercase;letter-spacing:2px;color:#766345;margin-top:5px}.phase-completion h2{font-family:var(--kz-font);font-weight:900;font-size:var(--kz-fs-xl);margin:4px 0;color:#36543a}.phase-subtitle{font-size:var(--kz-fs-xs);margin:0 0 13px;color:#74674d}
.phase-materials{display:grid;gap:5px;padding:9px;background:#e5dbc0;border:1px solid #b7a480;border-radius:var(--kz-r-md)}.phase-material{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:8px;text-align:left;font-size:var(--kz-fs-xs)}.phase-material img{width:26px;height:26px;object-fit:contain}.phase-material b{font-size:var(--kz-fs-xs)}
.phase-payout{margin:12px auto 10px;display:grid;justify-items:center;gap:3px}.phase-payout>small{font-size:var(--kz-fs-xs);color:#766345}.phase-payout>strong{display:flex;align-items:center;justify-content:center;gap:7px;font-size:var(--kz-fs-xl);color:#55391c;font-variant-numeric:tabular-nums}.phase-payout img{width:32px;height:32px}
.phase-eggs{display:flex;align-items:center;justify-content:center;gap:8px;padding:5px;margin-bottom:8px;background:#ead9aa;border:1px solid #b89547;border-radius:var(--kz-r-sm);font-size:var(--kz-fs-xs)}.phase-eggs img{width:32px;height:32px}
#modal .phase-confirm{display:block;width:140px;min-height:39px;margin:10px auto 6px!important;background:#548d5a!important;border:2px solid #31583a!important;color:#fff3d8!important;border-radius:var(--kz-r-md);box-shadow:0 3px #31583a;font-size:var(--kz-fs-md);font-weight:900}.phase-next{display:block;font-size:var(--kz-fs-xs);color:#766345}
@keyframes phase-pop{from{transform:scale(.55) rotate(-15deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}@keyframes phase-spark{from{transform:scale(0) translateY(12px);opacity:0}to{transform:scale(1);opacity:1}}
@media(prefers-reduced-motion:reduce){.phase-medallion,.phase-spark{animation:none}}

.phase-completion .phase-materials{background:#493b2a;border-color:#806443;color:#fff3d8}.phase-completion .phase-material,.phase-completion .phase-material span,.phase-completion .phase-material b,.phase-completion .phase-materials>small{color:#fff3d8!important;text-shadow:none!important}

#profession-room .profession-team .home-worker-name{display:flex!important;justify-content:center!important;align-items:baseline;gap:3px!important;flex-wrap:wrap}#profession-room .profession-team .home-worker-name>span{flex:0 1 auto!important;width:auto!important;font-size:inherit!important}#profession-room .profession-team .home-worker-level{flex:none;margin:0!important;padding:0!important;white-space:nowrap}#profession-room .home-worker-state{display:block;min-height:12px;font-variant-numeric:tabular-nums}

#profession-room .gathering-portrait{position:relative;display:block}:is(#profession-room,.home-gathering) .is-resting .gathering-portrait .rarity-portrait>img{filter:grayscale(1)!important;opacity:.65}:is(#profession-room,.home-gathering) .worker-recovery-clock{position:absolute;inset:0;display:flex!important;align-items:center;justify-content:center;width:100%!important;color:#fff!important;font-family:var(--kz-font);font-weight:900;font-size:var(--kz-fs-xs) !important;font-weight:900!important;line-height:1!important;letter-spacing:-.3px;-webkit-text-stroke:.6px #111;text-shadow:1px 1px #111,-1px -1px #111,1px -1px #111,-1px 1px #111;z-index:3;pointer-events:none}

.furniture-editing{cursor:grab!important;outline:2px dashed #e6a242;outline-offset:-4px}.furniture-editing:active{cursor:grabbing!important}.scene-tools button[data-do="cabin-edit"]{width:38px;height:38px;min-width:38px;min-height:38px}.scene-tools button[data-do="cabin-edit"].active{background:#e6a242!important}

/* Journey deliberately shares the Arena canvas and HUD. */
.journey-arena-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.journey-arena-tools>span{font-size:var(--kz-fs-xs)}.arena-playback:empty{display:none}#journey-arena-loot{margin-top:12px}#journey-arena-loot>div{display:flex;flex-wrap:wrap;gap:8px}#journey-shared-arena .page-heading{margin-top:0}#journey-shared-arena .arena-stage{width:100%;margin-inline:auto}
/* Postcard chapters share the warm RPG borders and remain legible at 360px. */
.region-chapters>h2,.journey-weekly>h2{font-size:var(--kz-fs-lg);margin:14px 0 12px}.region-book{display:grid;gap:28px;position:relative}.region-card{position:relative;width:100%;border:2px solid #765638;border-radius:var(--kz-r-md);background:#f5e7c8;box-shadow:0 4px #694c32;overflow:visible;color:#3b4538}.region-card:not(:last-child):after{content:'';position:absolute;left:50%;bottom:-30px;height:26px;border-left:3px dotted #a77d4c}.region-cover-action{display:block;position:relative;width:100%;padding:0;border:0;background:none;overflow:hidden;border-radius:var(--kz-r-md) var(--kz-r-md) 0 0;z-index:2}.region-cover{display:block;width:100%;height:auto;aspect-ratio:162/56;image-rendering:pixelated}.region-ribbon{position:absolute;left:0;top:10px;background:#e5a446;color:#49372d;border:1px solid #8c623a;border-left:0;padding:5px 12px;box-shadow:0 3px #684c35;font-size:var(--kz-fs-xs);font-weight:900;border-radius:0 var(--kz-r-sm) var(--kz-r-sm) 0}.region-content{position:relative;padding:14px 12px;pointer-events:none;z-index:2}.region-content button{pointer-events:auto}.region-title{display:flex;justify-content:space-between;align-items:center;gap:8px}.region-title h3{font-family:var(--kz-font);font-weight:900;font-size:var(--kz-fs-xl);line-height:1;margin:0;color:#543d2b}.region-title>span{font-size:var(--kz-fs-xs);font-weight:800;white-space:nowrap}.region-chips{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.region-chips>span{display:flex;align-items:center;gap:4px;font-size:var(--kz-fs-xs);padding:4px 6px;background:#e7d8b5;border:1px solid #c4ac83;border-radius:var(--kz-r-sm)}.region-chips svg{width:13px;height:13px}.region-route-progress{display:grid;grid-template-columns:54px minmax(0,1fr) 45px;align-items:center;gap:7px;font-size:var(--kz-fs-xs)}.region-route-progress progress{width:100%;height:10px;accent-color:#c28b42}.region-route-progress small,.region-badge-progress small{font-size:var(--kz-fs-xs) !important;text-align:right}.region-badge-progress{display:grid;grid-template-columns:54px minmax(0,1fr) 45px;align-items:center;gap:7px;margin-top:12px;font-size:var(--kz-fs-xs)}.region-badge-progress>div{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:2px;align-items:center}.region-badge-progress .kanto-badge-sprite{width:20px;height:24px;max-width:100%;margin:0}.region-badge-progress .locked{filter:brightness(0);opacity:.25}.region-next{font-size:var(--kz-fs-xs);margin:13px 0!important;line-height:1.5}.region-enter{width:100%;margin:0;background:linear-gradient(#f4c262,#df963d)!important;color:#4d3827!important}.region-hit-area{position:absolute;inset:0;width:100%;height:100%;opacity:0;z-index:1;border:0;cursor:pointer}.region-soon{display:block;padding:0;text-align:left;background:#26333b;height:126px;overflow:hidden}.region-soon>img{width:100%;height:100%;object-fit:cover;image-rendering:pixelated}.region-soon .region-ribbon{background:#45514d;color:#a8b1a0;border-color:#576457;box-shadow:0 3px #18272c}.region-coming{position:absolute;left:13px;bottom:12px;display:flex;gap:7px;align-items:center;font-size:var(--kz-fs-lg);font-weight:900;color:#d5d5bb}.region-coming svg{width:20px;height:20px}.region-stamp{position:absolute;right:10px;bottom:10px;border:2px solid #f7e5b9;padding:5px 9px;color:#f7e5b9;font-weight:900;transform:rotate(-9deg);text-transform:uppercase;font-size:var(--kz-fs-xs);background:#374f4266}.region-completed:after{border-color:#cf9a3b;animation:region-trail 1s ease-out 1}@keyframes region-trail{50%{filter:drop-shadow(0 0 6px #efc35b)}}.journey-weekly{margin-top:24px}.journey-weekly .banner-boss{width:100%;min-height:330px;padding-bottom:16px}.journey-weekly .banner-boss .boss-countdown{position:static;transform:none;display:block;margin-top:135px;line-height:20px;white-space:normal}.journey-weekly .banner-boss .banner-progress{margin-top:6px;line-height:1.5;max-width:100%;padding:5px 8px}.journey-weekly .banner-boss .boss-banner-portrait{top:45%}.welcome-dots{flex-wrap:wrap}@media(prefers-reduced-motion:reduce){.region-completed:after{animation:none}}@media(max-width:380px){.region-content{padding:12px 10px}.region-badge-progress{grid-template-columns:48px minmax(0,1fr) 39px;gap:5px}.region-badge-progress .kanto-badge-sprite{width:18px;height:22px}.region-chips>span{font-size:var(--kz-fs-xs);padding:4px}.region-chips{gap:4px}}

.region-badge-progress .kanto-badge-sprite{--badge-size:20px;width:var(--badge-size);height:var(--badge-size);background-size:calc(var(--badge-size) * 8) var(--badge-size);background-position:calc(var(--badge-index) * var(--badge-size) * -1) 0}.region-badge-progress .earned{opacity:1;filter:none}@media(max-width:380px){.region-badge-progress .kanto-badge-sprite{--badge-size:18px}}

.nav:has(.report-nav){grid-template-columns:repeat(7,minmax(0,1fr))}.nav .report-nav{min-width:0}.player-report-form{display:grid;gap:14px}.player-report-form label{display:grid;gap:6px;font-weight:700}.player-report-form select,.player-report-form textarea{width:100%;max-width:100%;border:2px solid var(--wood);border-radius:var(--kz-r-md);padding:10px;color:var(--text);background:var(--surface)}.player-report-form textarea{resize:vertical;min-height:120px}.player-report-form [data-report-notice]{font-size:var(--kz-fs-xs);margin:0}.report-success{text-align:center;padding:22px 8px}.report-success>span{display:block;font-size:44px;color:#51894f}.report-success strong{font-size:var(--kz-fs-lg)}@media(max-width:430px){.nav:has(.report-nav) button{padding-left:3px;padding-right:3px}.nav:has(.report-nav) button span{font-size:var(--kz-fs-xs)}}

.egg-hatch-stage{position:relative;isolation:isolate;width:120px;height:104px;margin:8px auto;display:grid;place-items:center}.egg-hatch-stage .original-egg{position:relative;z-index:1}.egg-hatch-burst{position:absolute;inset:0;border-radius:50%;opacity:0;background:radial-gradient(circle,#fff9dc 0 12%,#ffd27477 35%,transparent 70%);pointer-events:none}.egg-hatch-stage.is-hatching .egg-hatch-burst{animation:kozy-hatch-burst 450ms ease-out forwards}.egg-hatch-stage.is-hatching:after{content:"✦";position:absolute;left:8px;top:10px;color:#ffe09a;font-size:var(--kz-fs-lg);text-shadow:80px 12px #ffe09a,10px 62px #fff9dc,65px 58px #fff9dc;animation:kozy-hatch-sparks 450ms ease-out forwards;pointer-events:none}@keyframes kozy-hatch-burst{0%{opacity:0;transform:scale(.6)}50%{opacity:1}100%{opacity:0;transform:scale(1.5)}}@keyframes kozy-hatch-sparks{0%{opacity:0;transform:scale(.7)}50%{opacity:1}100%{opacity:0;transform:scale(1.15)}}@media(prefers-reduced-motion:reduce){.egg-hatch-stage.is-hatching .egg-hatch-burst,.egg-hatch-stage.is-hatching:after{animation:none}}

.gathering-free-slot{width:100%;min-height:70px;display:grid;justify-items:center;align-content:center;gap:5px;padding:8px 3px;background:transparent;color:var(--text-soft);border:1px dashed color-mix(in srgb,var(--wood) 55%,transparent);border-radius:var(--kz-r-md);box-shadow:none;font-size:var(--kz-fs-xs);font-weight:700}.free-slot-portrait{display:grid;place-items:center;width:34px;height:34px;border:1px dashed color-mix(in srgb,var(--wood) 65%,transparent);border-radius:var(--kz-r-sm);background:color-mix(in srgb,var(--surface-raised) 60%,transparent)}.free-slot-portrait>span{font-size:var(--kz-fs-lg);color:#6c946a;line-height:1}.gathering-free-slot:hover{border-color:#709d69;background:color-mix(in srgb,#7ca96d 10%,transparent)}.gathering-column.is-complete{background:color-mix(in srgb,#e5bc65 12%,var(--surface-raised));outline:1px solid #b8995b;outline-offset:0}.gathering-complete{position:relative;isolation:isolate;overflow:hidden;display:grid;justify-items:center;gap:4px;width:100%;margin:8px 0 2px;padding:10px 3px 8px;background:#294e3e;color:#fff0cb;border:1px solid #c7a15a;border-radius:var(--kz-r-md);box-shadow:0 2px #18392c;font-size:var(--kz-fs-xs)}.gathering-complete:before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 50% 0,#bda34e42,transparent 75%)}.gathering-complete-seal{display:grid;place-items:center;width:28px;height:28px;background:#edcb73;border:2px solid #fff0bd;color:#36543c;border-radius:50%;box-shadow:0 0 0 3px #d5af5826}.gathering-complete-seal .ui-icon{width:16px;height:16px}.gathering-complete strong{font-size:var(--kz-fs-xs);line-height:1.3;text-align:center}.gathering-complete-action{display:flex;gap:3px;align-items:center;color:#cfddbe;font-size:var(--kz-fs-xs)}.gathering-complete-action .ui-icon{width:10px;height:10px}@media(prefers-reduced-motion:no-preference){.gathering-complete-seal{animation:gathering-ready-glow 3s ease-in-out infinite}@keyframes gathering-ready-glow{50%{box-shadow:0 0 0 4px #d5af5840,0 0 10px #edcb7344}}}

/* Seven destinations share the bottom bar without clipping longer labels. */
.nav:has(.report-nav) button span:not(.ui-icon){font-size:var(--kz-fs-xs);letter-spacing:-.25px}
@media(max-width:380px){.nav:has(.report-nav) button{padding-inline:0}.nav:has(.report-nav) button span:not(.ui-icon){font-size:var(--kz-fs-xs)}}

/* Team editing and direct trio selection share the existing portrait language. */
.team-editor{display:grid;gap:14px}.team-editor>p{font-size:var(--kz-fs-xs)}.team-editor-grid,.battle-selection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.team-editor-grid{max-height:48dvh;overflow-y:auto;padding:4px;grid-auto-rows:max-content;align-content:start}.team-choice{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0;padding:10px 4px;border:2px solid var(--wood);border-radius:var(--kz-r-md);background:var(--surface-raised);color:var(--text)}.team-choice strong{font-size:var(--kz-fs-xs);max-width:100%;overflow-wrap:anywhere}.team-choice small{font-size:var(--kz-fs-xs);white-space:nowrap}.selection-mark{position:absolute;right:3px;top:1px;font-weight:bold}.team-editor-actions{display:flex;justify-content:flex-end;gap:10px}.team-choice[aria-pressed=true],.battle-selection-grid [aria-pressed=true],.arena-roster [aria-pressed=true],.world-roster [aria-pressed=true]{outline:3px solid var(--lantern);outline-offset:-3px;background:var(--surface-muted);box-shadow:inset 0 0 0 5px #ffb54730}.battle-selection-grid{margin-top:16px}.battle-selection-grid button{gap:5px}.battle-selection-grid button>span:not(.pokemon-portrait){font-size:var(--kz-fs-xs)}.battle-selection-grid small{font-size:var(--kz-fs-xs)}.nav button[aria-label=Aventura] .ui-icon{width:27px;height:27px}

/* Completed gathering is a state of the entire home card, until confirmed. */
.home-gathering .gathering-column.is-complete{background:#294e3e;border-radius:var(--kz-r-md);outline:2px solid #d5b66d;box-shadow:0 3px #18392c,inset 0 0 18px #e9c57222;color:#fff0cb}
.home-gathering .is-complete .gathering-symbol{color:#ffe6a4;background:#dfbf6220}
.home-gathering .is-complete .gathering-worker{background:#203e32;box-shadow:inset 0 0 0 1px #c9a55d55}
.home-gathering .is-complete .home-worker-state,.home-gathering .is-complete .home-worker-energy{color:#f4e5bf}
.home-gathering .is-complete .gathering-free-slot{color:#ddceac;border-color:#b99c62;background:#203e32}
.home-gathering .is-complete .gathering-complete{border:0;box-shadow:none;background:transparent;margin-top:2px}

/* Scene-specific crates: storage stays left of the gathering scene. */
#profession-room>.page-heading{display:flex;align-items:center;justify-content:center;gap:12px}
#profession-room>.page-heading h1{font-size:clamp(15px,4vw,22px);margin:0}
#profession-room .profession-next{display:grid;place-items:center;width:40px;height:40px;min-width:40px;padding:8px}
#profession-room .profession-workspace{display:grid;grid-template-columns:104px minmax(0,1fr);gap:10px;padding:0;align-items:start;max-width:540px;margin:0 auto}
#profession-room .profession-workspace>.profession-map{width:100%;max-width:400px;margin:0!important}
#profession-room .profession-crate{min-width:0;color:var(--text);text-align:center}
.crate-capacity{display:grid;gap:4px;margin-bottom:7px;font-size:var(--kz-fs-xs);font-variant-numeric:tabular-nums}
.crate-capacity strong{font-size:var(--kz-fs-xs)}.crate-capacity progress{appearance:none;display:block;width:100%;height:9px;border:1px solid var(--wood-shadow);border-radius:var(--kz-r-sm);overflow:hidden;background:#473528}
.crate-capacity progress::-webkit-progress-bar{background:#473528}.crate-capacity progress::-webkit-progress-value{background:var(--crate-fill);transition:width .3s,background .3s}.crate-capacity progress::-moz-progress-bar{background:var(--crate-fill)}
.crate-slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:7px;background:repeating-linear-gradient(0deg,#936133 0 21px,#79502e 21px 24px);border:3px solid #583b24;border-radius:var(--kz-r-sm);box-shadow:inset 0 2px #d6a464,0 3px #402d20}
.crate-slot{position:relative;aspect-ratio:1;display:grid;place-items:center;min-width:0;border:2px solid #51371f;border-radius:var(--kz-r-sm);background:#382b20a8;box-shadow:inset 0 2px 3px #0004}
.crate-slot img{width:28px;height:28px;object-fit:contain;image-rendering:pixelated}.crate-slot b{position:absolute;bottom:0;right:2px;font:700 var(--kz-fs-xs) var(--kz-font);color:#fff5d6;text-shadow:1px 1px #000,-1px -1px #000}
#profession-room .crate-sell{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;min-height:36px;padding:5px;margin-top:9px;font-size:var(--kz-fs-xs)}
.crate-sell .ui-icon{width:18px;height:18px}.crate-value{display:block;font-size:var(--kz-fs-xs);margin-top:4px}.crate-paused{display:block;font-size:var(--kz-fs-xs);color:var(--text);margin-top:6px}
@media(max-width:380px){#profession-room .profession-workspace{grid-template-columns:86px minmax(0,1fr);gap:7px}.crate-slots{gap:3px;padding:4px}.crate-slot img{width:24px;height:24px}.crate-capacity{font-size:var(--kz-fs-xs)}}

#profession-room .profession-crate [data-prof-loot]{display:block}
#profession-room .profession-crate [data-prof-loot] .crate-sell{width:100%!important;height:36px!important;min-height:36px!important;min-width:0!important;padding:5px!important;font-size:var(--kz-fs-xs)}
.hud-back-row .profession-next{display:grid;place-items:center;width:36px;height:36px;min-width:36px;min-height:36px;padding:6px;flex-shrink:0}
.hud-back-row .profession-next .ui-icon{width:20px;height:20px}

.main:has(#profession-room) .hud-back-row{justify-content:space-between;gap:8px}.profession-home-banner{display:flex;align-items:center;gap:4px;background:var(--wood);border:2px solid var(--wood-shadow);border-radius:var(--kz-r-sm);color:#fff3d8;flex-shrink:0;padding-right:8px}.profession-home-banner .screen-back{border:0!important;box-shadow:none!important;background:transparent!important;width:30px!important;min-width:30px!important;height:34px!important;min-height:34px!important}.profession-home-banner>span{font-size:var(--kz-fs-xs)}.profession-scene-banner{display:flex;align-items:center;gap:3px;margin-left:auto;min-width:0}.hud-back-row .profession-location-banner{font-size:var(--kz-fs-xs) !important;text-align:center;padding:7px 5px}.profession-scene-banner button{display:grid;place-items:center;width:28px!important;min-width:28px!important;height:34px!important;min-height:34px!important;padding:4px!important;flex-shrink:0}.profession-scene-banner button svg{width:18px;height:18px}

/* Direct assignment from the village's free work slots. */
#modal.vacancy-sheet{position:fixed;inset:auto 0 0;margin:0 auto;width:min(100%,480px);max-height:85dvh;border-radius:var(--kz-r-lg) var(--kz-r-lg) 0 0;overflow:auto}.vacancy-picker{display:grid;gap:8px}.vacancy-card{display:flex;align-items:center;gap:12px;text-align:left;padding:12px;background:var(--surface);border:1px solid var(--wood);border-radius:var(--kz-r-md)}.vacancy-card>.sprite{flex:0 0 48px}.vacancy-card>span{min-width:0;display:grid;gap:5px;flex:1}.vacancy-card strong{display:flex;gap:6px;align-items:baseline}.vacancy-card small{font-size:var(--kz-fs-xs)}.vacancy-card progress{width:100%;height:8px}.vacancy-affinity{color:#568044;font-size:var(--kz-fs-xs)}

.inventory-tabs{grid-template-columns:repeat(3,minmax(0,1fr))!important}.inventory-tabs>button{position:relative}.inventory-tab-new{position:absolute;top:8px;right:8px;width:7px;height:7px;border-radius:50%;background:#e7a731}.inventory-filter-chips{display:flex;flex-wrap:wrap;gap:5px;padding:8px}.inventory-filter-chips button{padding:5px 9px;font-size:var(--kz-fs-xs);background:var(--surface);border:1px solid var(--wood);box-shadow:none}.inventory-filter-chips button[aria-pressed=true]{background:#355442;color:#fff4dc}.garden-affinity{display:block!important;padding:0!important;max-height:56px!important}.garden-bonus-strip{display:flex;align-items:center;gap:8px;height:56px;padding:5px 8px;box-sizing:border-box;border:1px solid var(--wood);border-radius:var(--kz-r-md);background:var(--surface-raised)}.garden-element-stack{display:flex;flex-direction:column;justify-content:center;flex-shrink:0;max-height:46px;flex-wrap:wrap;gap:1px;min-width:24px}.garden-element-stack .garden-type-icon{width:22px;height:22px;min-width:22px;min-height:22px;padding:0;border:0;background:transparent;box-shadow:none}.garden-element-stack img{width:22px;height:22px}.garden-bonus-portraits{display:flex;align-items:center;gap:5px;overflow-x:auto;min-width:0;flex:1;scrollbar-width:thin}.garden-bonus-portraits>button{padding:0;background:none;border:0;box-shadow:none;flex:0 0 32px;min-width:32px;min-height:32px}.garden-bonus-portraits .rarity-portrait{width:32px!important;height:32px!important}.garden-bonus-info{flex-shrink:0;display:flex;align-items:center;gap:2px;padding:4px;font-weight:bold;font-size:var(--kz-fs-xs);background:transparent;border:0;box-shadow:none}.garden-bonus-info .ui-icon{width:12px;height:12px}.scene-type-stack{display:flex;flex-direction:column;align-items:center;gap:2px}.garden-type-icon[aria-expanded=true] .garden-type-tooltip{display:block}

/* Hatch results fit the visible viewport, including short phones. */
.egg-result-dialog{width:min(380px,calc(100% - 24px))!important;height:min(550px,calc(100dvh - 24px));max-height:calc(100dvh - 24px)!important;padding:16px!important;box-sizing:border-box;overflow:hidden!important}.egg-result-dialog .egg-close{position:absolute;right:10px;top:10px;z-index:2}.egg-result-dialog .egg-result{height:100%;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto auto auto auto;align-items:center;gap:8px;padding:0!important;text-align:center}.egg-result-title{font-size:var(--kz-fs-lg);margin:0!important;padding:4px 30px}.egg-result-stage{min-height:0;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.egg-result-stage canvas{max-width:100%;height:min(100%,180px);width:auto;aspect-ratio:1;z-index:1}.egg-result-pedestal{position:absolute;width:90px;height:16px;bottom:16%;border-radius:50%;background:color-mix(in srgb,var(--hatch-color) 35%,var(--wood));border:2px solid var(--wood);box-shadow:0 4px var(--wood)}.egg-result-identity{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0}.egg-result-identity>strong{font-size:var(--kz-fs-md);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.egg-result-identity>small{font-size:var(--kz-fs-xs);line-height:1.2}.egg-result-dialog .egg-result-photo{padding:0;flex-shrink:0;line-height:0}.egg-result-types{display:flex;gap:2px}.egg-result-power{margin:0;font-size:var(--kz-fs-xs);font-weight:bold}.egg-result-dialog .inspect-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:0}.egg-result-dialog .inspect-stats>div{padding:5px!important}.egg-result-dialog .inspect-stats small{font-size:var(--kz-fs-xs)}.egg-result-destination{margin:0;font-size:var(--kz-fs-xs);line-height:1.4}.egg-result-destination small{display:block;font-size:var(--kz-fs-xs)}.egg-result-dialog [data-egg-done]{margin:0!important;min-height:44px;padding-bottom:max(10px,env(safe-area-inset-bottom));width:100%;align-self:end}.egg-full-actions{display:flex;gap:6px;justify-content:center}.egg-full-warning{color:#a84734;font-weight:bold}

.garden-element-stack .garden-type-icon img{width:22px!important;height:22px!important}.tm-slot{border-width:2px!important}.tm-slot .type{font-size:var(--kz-fs-xs);line-height:1.2;padding:1px 4px}.inventory-filter-chips{padding:4px;gap:4px}.inventory-filter-chips button{font-size:var(--kz-fs-xs);min-height:30px;padding:4px 7px}.vacancy-card progress{accent-color:#79a25c}.vacancy-card .sprite.mini{width:48px;height:48px}

.garden-element-stack{display:grid!important;grid-template-columns:22px;grid-auto-rows:22px;gap:1px;width:22px;min-width:22px;flex:0 0 22px;max-height:46px;align-content:center}.garden-element-stack .garden-type-icon{min-height:22px!important;max-height:22px!important;height:22px!important;min-width:22px!important;max-width:22px!important;width:22px!important;padding:0!important;line-height:0;border:0!important}

/* Official element symbols replace textual type badges. */
.element-symbol{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex:0 0 24px;vertical-align:middle;cursor:help}.element-symbol img{display:block;width:24px!important;height:24px!important;object-fit:contain}.element-symbol-tooltip{position:fixed;z-index:10000;padding:5px 9px;border:1px solid #dcc8a0;border-radius:var(--kz-r-sm);background:#293c32;color:#fff;font-size:var(--kz-fs-xs);pointer-events:none}.element-symbol-tooltip[hidden]{display:none}

.bag-upgrade-confirm{text-align:center;padding:4px 8px}.bag-upgrade-symbol svg{width:42px;height:42px}.bag-upgrade-confirm>strong{display:block;font-size:var(--kz-fs-lg);margin-top:8px}.bag-upgrade-confirm>p{margin:8px 0}.bag-upgrade-price{display:flex;align-items:center;justify-content:center;gap:7px;font-size:var(--kz-fs-md);font-weight:700;margin:14px 0 6px}.bag-upgrade-price img{width:26px;height:26px}.bag-upgrade-confirm>small{display:block;opacity:.8}.bag-upgrade-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}

.hud-wallet .wallet-chip.emeralds{display:flex;align-items:center}.hud-wallet .wallet-balance{display:flex;align-items:center;gap:5px;flex:1;min-width:0;min-height:0;padding:0;border:0;background:transparent!important;box-shadow:none!important;color:inherit!important}.hud-wallet .wallet-chip.emeralds>.wallet-plus{display:flex;align-items:center;justify-content:center;padding:0;min-height:0;min-width:0;flex:none;cursor:pointer}

.main:has(#profession-room) .hud-back-row{justify-content:center}.main:has(#profession-room) .profession-scene-banner{margin-inline:auto;justify-content:center}

/* Test Journey: keep six team members readable, without a long opposing column. */
.journey-test .main{padding-top:8px!important}
.journey-test .game-header{order:-10!important;margin-top:0!important}
.journey-test #journey-shared-arena .arena-live{display:grid;grid-template-columns:1fr;gap:6px}
.journey-test #journey-shared-arena .arena-live>section:first-child{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
.journey-test #journey-shared-arena .arena-live>section>strong{grid-column:1/-1}
.journey-test #journey-shared-arena .arena-unit{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:0;padding:4px}
.journey-test #journey-shared-arena .arena-unit>div{width:100%;min-width:0}
.journey-test #journey-shared-arena .arena-unit span{font-size:var(--kz-fs-xs);text-align:center}
.journey-test #journey-shared-arena .arena-unit small{display:block;text-align:center}
.journey-test #journey-shared-arena .arena-unit.is-reserve{opacity:.65}
.journey-test #journey-shared-arena .arena-live>section:last-child .arena-unit{flex-direction:row}
.journey-test .outcome-party{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.journey-test .outcome-party>div{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:var(--kz-fs-xs)}

/* Adventure: compact controls and a readable one-column team. */
.journey-element-icons{display:flex;flex-wrap:wrap;gap:5px;margin:10px 0}.journey-element-icons button{padding:4px;width:32px;height:32px}.journey-element-icons img{width:24px;height:24px}.journey-element-icons [aria-pressed=true]{background:#e9b35d;border-color:#efca79}.journey-selected-portraits{display:flex;gap:8px;justify-content:center;margin:12px 0}.journey-empty-slot{width:40px;height:40px;display:grid;place-items:center;border:1px solid #809185;border-radius:var(--kz-r-sm);opacity:.5}.journey-pokemon-list{display:grid;grid-template-columns:1fr;gap:8px}.journey-pokemon-row{display:flex;gap:12px;padding:10px;text-align:left;width:100%;align-items:center}.journey-pokemon-row>div{flex:1;min-width:0}.journey-mon-name{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.journey-mon-name>b{margin-left:auto}.journey-mon-attributes,.journey-mon-moves{display:flex;gap:12px;margin-top:6px;flex-wrap:wrap}.journey-mon-attributes>span{display:flex;align-items:center;gap:3px}.journey-mon-moves{font-size:var(--kz-fs-xs)}.journey-pokemon-row:disabled{opacity:.4}.journey-pokemon-row.is-selected{border-color:#edbc64}.journey-arena-tools{justify-content:center;font-size:var(--kz-fs-xs);text-align:center}#journey-shared-arena .arena-stage{padding:0!important;width:100%;overflow:hidden}#journey-shared-arena #pvp-canvas{display:block;width:100%!important;height:auto!important;aspect-ratio:400/340}#journey-shared-arena .arena-match-heading[hidden]{display:none!important}

.journey-pokemon-row.is-selected{background:#c5e7bc!important;border:2px solid #50945a!important;color:#183923!important}.journey-pokemon-row.is-selected strong,.journey-pokemon-row.is-selected span,.journey-pokemon-row.is-selected small{color:inherit}.journey-affinity{font-style:normal;margin-left:5px}.journey-affinity.advantage{color:#258441!important}.journey-affinity.disadvantage{color:#d14343!important}.journey-elements-filter{margin:12px 0;border:1px solid #839780;border-radius:var(--kz-r-md);padding:8px}.journey-elements-filter summary{cursor:pointer;font-weight:bold}.journey-encounter-sprites{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;padding:6px}.journey-encounter-sprites .sprite{width:44px;height:44px;--sprite-size:44px;background-size:calc(var(--frames)*44px) 44px}.journey-start-control{text-align:center;margin:8px 0 14px}.journey-start-control button{min-width:140px}

/* Compact route controls, native encounters and wave completion. */
.journey-run-preview>img{flex:none}.journey-run-preview>span{min-width:0;flex:1}.journey-encounter-sprites{justify-content:flex-start;padding:5px 0;gap:4px}.journey-encounter-sprites .sprite{width:32px!important;height:32px!important;--sprite-size:32px;background-size:calc(var(--frames)*32px) 32px!important}.journey-start-control{display:flex;align-items:center;justify-content:center;gap:10px}.journey-drop-popover{position:relative;margin:0;padding:0;border:0}.journey-drop-popover>summary{list-style:none;display:grid;place-items:center;width:44px;height:44px;border:2px solid var(--wood);border-radius:var(--kz-r-md);background:var(--surface-muted)}.journey-drop-content{position:absolute;right:0;top:50px;width:min(280px,75vw);padding:12px;border:2px solid var(--wood);background:var(--surface);border-radius:var(--kz-r-md);z-index:20;box-shadow:var(--kz-shadow)}.journey-elements-filter{position:relative;display:inline-block;padding:0}.journey-elements-filter>summary{display:flex;gap:8px;align-items:center;min-height:40px;padding:0 12px;list-style:none}.journey-elements-filter .journey-element-icons{position:absolute;top:44px;left:0;z-index:15;width:min(300px,80vw);padding:10px;background:var(--surface);border:2px solid var(--wood);border-radius:var(--kz-r-md);box-shadow:var(--kz-shadow)}.journey-wave-success{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;z-index:15;color:#ffda65;font-size:clamp(28px,8vw,44px);font-weight:900;letter-spacing:3px;text-shadow:0 3px #684318,0 0 18px #ffd865;animation:journey-success 1s ease-out forwards}@keyframes journey-success{0%{opacity:0;transform:scale(.85)}20%,60%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.05)}}img[src*="/assets/types/"]{transform:scale(.85);transform-origin:center}@media(prefers-reduced-motion:reduce){.journey-wave-success{animation:none}}

.journey-encounter-sprites{align-items:center;flex-wrap:nowrap;gap:12px}.journey-route-sprites{display:flex;align-items:center;flex-wrap:wrap;gap:4px;min-width:0}.journey-boss-sprite{display:flex;flex-direction:column;align-items:center;flex:none;gap:2px;padding:2px 8px;border-left:1px solid #8e784e66}.journey-boss-sprite b{font-size:var(--kz-fs-xs) !important;font-weight:900;letter-spacing:1px;color:#80602a;line-height:1.2}.journey-boss-sprite .sprite{filter:drop-shadow(0 0 3px #e3b64a80)}

/* Compact battle roster: identical columns for allies and opponents. */
#journey-arena-root #journey-shared-arena .arena-live{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px;margin:8px 0}
#journey-arena-root #journey-shared-arena .arena-live>section{display:flex!important;flex-direction:column;gap:3px;padding:6px;min-width:0}
#journey-arena-root #journey-shared-arena .arena-live>section>strong{font-size:var(--kz-fs-xs);margin:0 0 3px}
#journey-arena-root #journey-shared-arena .arena-unit{display:flex;flex-direction:row!important;align-items:center;gap:5px;padding:2px 0;margin:0;min-width:0}
#journey-arena-root #journey-shared-arena .arena-unit>div{width:auto;flex:1;min-width:0}
#journey-arena-root #journey-shared-arena .arena-unit span,#journey-arena-root #journey-shared-arena .arena-unit small{font-size:var(--kz-fs-xs);text-align:left;line-height:1.3}
#journey-arena-root #journey-shared-arena .arena-unit .rarity-portrait{width:28px!important;height:28px!important;margin:0;--portrait-size:24px!important}
#journey-arena-root #journey-shared-arena .arena-hp-track{height:5px;margin:2px 0}
#journey-arena-root #journey-shared-arena .arena-recovery-track{height:2px;margin:2px 0}
#journey-arena-root .journey-crate{display:flex;align-items:center;gap:8px;padding:6px 8px;margin:4px 0 8px;border:2px solid var(--wood);border-radius:var(--kz-r-md);background:var(--surface-raised);box-sizing:border-box}
.journey-crate>strong{display:flex;align-items:center;gap:4px;font-size:var(--kz-fs-xs);flex:none}
.journey-crate>strong .ui-icon{width:20px;height:20px}
.journey-crate .crate-slots{display:flex;flex-wrap:wrap;gap:5px;margin:0;min-width:0}
.journey-crate .crate-slot{position:relative;width:36px;height:34px;border:2px solid var(--wood);border-radius:var(--kz-r-sm);background:var(--surface-muted);display:grid;place-items:center;padding:2px;box-sizing:border-box}
.journey-crate .crate-slot img{width:26px;height:26px;object-fit:contain}
.journey-crate .crate-slot b{position:absolute;bottom:0;right:2px;color:white;font-size:var(--kz-fs-xs);text-shadow:1px 1px #000,-1px -1px #000,1px -1px #000,-1px 1px #000}
.journey-crate-empty{font-size:var(--kz-fs-xs);color:var(--text-soft)}

#journey-arena-root .journey-arena-tools{display:flex;align-items:center;justify-content:center;gap:8px;margin:4px 0 8px}
.journey-session-buttons{display:flex;gap:5px;flex:none}
.journey-session-buttons button{width:32px;height:32px;min-height:32px;min-width:32px;padding:4px;border:2px solid var(--wood);border-radius:var(--kz-r-sm);display:grid;place-items:center;box-shadow:0 2px var(--wood-shadow)}
.journey-session-buttons .journey-exit{background:#a73f3c;color:white}
.journey-session-buttons .journey-exit img{width:23px;height:23px;object-fit:contain}
.journey-session-buttons .journey-snooze{background:#343b40;color:white;font-size:var(--kz-fs-xs);font-weight:900}
#journey-arena-progress{font-size:var(--kz-fs-xs);min-width:0;text-align:left}
.snooze-summary{text-align:center}.snooze-summary>strong{font-size:var(--kz-fs-lg);display:block;margin:12px 0}.snooze-pokemon{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0}.snooze-pokemon>div{display:grid;justify-items:center;gap:4px}.snooze-pokemon small{font-size:var(--kz-fs-xs)}.snooze-options{display:grid;gap:8px}.snooze-options button{width:100%}

#journey-arena-root .journey-crate-empty{background:none;border:0;box-shadow:none;padding:0;margin:0;min-height:0}

.snooze-pokemon{display:flex;flex-wrap:wrap;justify-content:center}.snooze-pokemon>div{width:calc(33.333% - 8px)}

#journey-arena-root .journey-crate{gap:9px;min-height:48px}#journey-arena-root .journey-crate .crate-slots{display:flex;flex-wrap:nowrap;overflow-x:auto;flex:1;gap:5px;padding:2px 0}#journey-arena-root .journey-crate .crate-slot{flex:0 0 34px;width:34px;height:34px}#journey-arena-root .journey-crate .crate-slot.is-empty{background:var(--surface-muted);opacity:.6}.journey-loot-pouch{width:32px;height:32px;object-fit:contain;flex:none}

/* Journey controls reuse the game button frames and established icon palette. */
#journey-arena-root .journey-session-buttons button{width:40px;height:40px;min-width:40px;min-height:40px;border-radius:var(--kz-r-md);box-shadow:inset 0 1px #fff3,0 3px var(--wood-shadow);padding:7px}
#journey-arena-root .journey-exit{background:#934b40;color:#fff0ce}
#journey-arena-root .journey-snooze{background:#454b48;color:#fff0ce;font-family:var(--kz-font)}
.journey-door-icon{display:block;width:24px;height:24px;object-fit:contain;filter:grayscale(1) sepia(.6) brightness(1.2)}
.journey-sleep-icon{font-size:var(--kz-fs-md);font-weight:900;line-height:1;letter-spacing:-1px;text-shadow:0 2px #0003}
#journey-arena-root .journey-loot-pouch{width:30px;height:30px;flex:none;display:inline-flex;align-items:center;justify-content:center}
#journey-arena-root .journey-crate{box-shadow:inset 0 1px #fff3,0 3px var(--wood-shadow);border-radius:var(--kz-r-md)}

.club-avatar-preview{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.club-avatar-preview img{width:48px;height:48px;object-fit:contain}.journey-snooze:disabled{opacity:.45;cursor:not-allowed}

.club-store-entry{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin:10px 0;min-height:44px}

.main:has(.club-panel) .goals-open{display:none}.club-panel{gap:10px!important;padding:16px!important}.club-panel h1,.club-panel p{margin:0}.club-panel .vip-features{display:grid;gap:6px;margin:4px 0;padding:0}.club-panel .vip-features li{display:flex;align-items:center;gap:10px;padding:9px 12px!important;min-height:38px;border-radius:var(--kz-r-md)}.club-panel .vip-features .ui-icon{width:22px;height:22px;flex:none}.club-panel .club-avatar-preview{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.club-panel .club-avatar-preview img{width:100%;height:42px}.club-panel>small{font-size:var(--kz-fs-xs);line-height:1.4}

.combat-banner.banner-pvp.is-unavailable{filter:grayscale(1);opacity:.5;cursor:not-allowed}.journey-weekly{margin:0 0 12px!important}.journey-weekly .combat-banner.banner-boss{min-height:112px!important;height:112px!important;padding:14px 18px!important;display:flex;align-items:center;text-align:left}.journey-weekly .banner-boss>div:first-child{position:relative;z-index:3;max-width:68%}.journey-weekly .banner-boss strong{font-size:var(--kz-fs-lg) !important;margin:0!important}.journey-weekly .banner-boss .banner-detail{font-size:var(--kz-fs-xs);margin:3px 0}.journey-weekly .banner-boss .banner-progress{font-size:var(--kz-fs-xs);margin:3px 0!important;padding:3px 6px!important}.journey-weekly .banner-boss .boss-banner-portrait{top:50%!important;left:auto!important;right:18px!important;transform:translateY(-50%)!important;width:72px!important;height:72px!important}.journey-weekly .boss-banner-portrait img{width:100%!important;height:100%!important;object-fit:contain}.region-title{margin-bottom:12px}

/* Weekly boss: a single centered identity and a compact live rotation clock. */
.combat-banner.weekly-boss-centered{justify-content:center;text-align:center;height:auto;min-height:128px}
.combat-banner.weekly-boss-centered>div:first-child{max-width:100%;width:auto;display:flex;align-items:center;justify-content:center;gap:16px}
.weekly-boss-photo{position:relative;flex:none;width:68px;height:68px;display:grid;place-items:center}
.weekly-boss-photo .world-portrait{width:64px;height:64px;object-fit:contain;border:0;border-radius:var(--kz-r-sm);filter:drop-shadow(0 0 5px #f3c75a88)}
.weekly-boss-text{display:flex;flex-direction:column;align-items:center;gap:3px}
.weekly-boss-clock{font-variant-numeric:tabular-nums;color:#ffe6a1;font-size:var(--kz-fs-xs);font-weight:700}
.weekly-boss-detail{text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}
.weekly-boss-detail h2,.weekly-boss-detail p{margin:0}
.weekly-boss-prizes .boss-prize-row{display:grid;grid-template-columns:70px minmax(0,1fr);gap:10px;padding:12px 0;border-bottom:1px solid #b59c6955}
.boss-prize-row>div{display:flex;flex-direction:column;gap:5px;min-width:0}
.boss-prize-row small{font-size:var(--kz-fs-xs);line-height:1.5}
.boss-prize-egg{width:40px;height:40px;object-fit:contain;align-self:center}
.boss-prize-gold{color:var(--text,#eee6ca)}

.journey-weekly .combat-banner.banner-boss.weekly-boss-centered{height:132px!important;min-height:132px!important;justify-content:center!important;flex-direction:row!important;text-align:center!important}
.journey-weekly .combat-banner.banner-boss.weekly-boss-centered>.weekly-boss-identity{flex-direction:row!important;width:auto!important;max-width:100%!important;align-items:center!important;justify-content:center!important}
.weekly-boss-centered .weekly-boss-photo{margin:0!important;transform:none!important}
.weekly-boss-centered .weekly-boss-text{position:static!important;text-align:center!important;align-items:center!important}
.weekly-boss-centered .weekly-boss-text>*{position:static!important;transform:none!important;margin:0!important}

/* Village account artifacts and run provisions. */
.village-attribute-bonus{color:#75c779;font-size:.8em;font-weight:800;margin-left:3px;white-space:nowrap}
.cabin-artifacts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}.cabin-artifacts button{display:grid;place-items:center;gap:3px;padding:8px 4px;min-width:0}.cabin-artifacts img{width:48px;height:60px;object-fit:contain;image-rendering:pixelated}.cabin-artifacts strong{font-size:var(--kz-fs-xs)}.cabin-artifacts small{color:#87c77b}
.artifact-confirm{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:8px}.artifact-confirm>img{width:96px;height:120px;image-rendering:pixelated}.artifact-confirm p{margin:0}.artifact-confirm span{display:flex;align-items:center;gap:6px;font-weight:bold}.artifact-confirm button{width:100%;max-width:220px}.pk-reset-points{margin:10px 0;width:100%}
.market-supplies{display:flex;align-items:center;gap:8px;padding:10px;margin-bottom:12px;border:2px solid var(--wood);border-radius:var(--kz-r-md);background:var(--surface-raised)}.market-supplies>img{width:32px;height:32px;object-fit:contain}.market-supplies>div:first-of-type{flex:1;min-width:0}.market-supplies strong,.market-supplies small{display:block;font-size:var(--kz-fs-xs)}.market-supplies small{font-size:var(--kz-fs-xs)}.market-supplies button{padding:5px;min-width:28px;min-height:32px}.supply-quantity{display:flex;gap:3px;align-items:center}.supply-quantity input{width:38px;padding:3px;text-align:center;min-width:0}.supply-buy-confirm{text-align:center}.supply-buy-confirm button{width:100%}
#journey-arena-root .journey-crate .crate-slots{flex:1}.journey-supply{display:flex;flex-direction:column;align-items:center;justify-content:center;width:40px;flex:none;padding-left:6px;border-left:2px solid var(--wood);font-size:var(--kz-fs-xs)}.journey-supply img{width:26px;height:26px;object-fit:contain}.journey-supply.is-empty{opacity:.6}.journey-supply-help{display:flex;align-items:center;justify-content:center;gap:5px;margin:6px 0}
@media(max-width:380px){.market-supplies{gap:4px;padding:7px}.market-supplies strong{font-size:var(--kz-fs-xs)}.supply-quantity input{width:30px}}

#journey-arena-root .journey-crate .crate-slot{flex:1 0 30px;width:auto;min-width:30px}.supply-quantity input{appearance:textfield}.supply-quantity input::-webkit-outer-spin-button,.supply-quantity input::-webkit-inner-spin-button{appearance:none;margin:0}.market-supplies .supply-purchase{background:#b7d09a;border-color:#526747}.cabin-artifacts img[data-art-render],.artifact-confirm img[data-art-render]{image-rendering:auto}

.boss-identity-actions{display:flex;align-items:center;justify-content:center;gap:12px}.boss-quick-actions{display:flex;flex-direction:column;gap:7px}.boss-quick-actions button{display:grid;place-items:center;width:44px;height:44px;min-width:44px;padding:4px}.boss-quick-actions img{width:32px;height:32px;object-fit:contain}.journey-weekly{position:relative}.journey-weekly>.boss-quick-actions{position:absolute;right:12px;top:50%;transform:translateY(-50%)}.journey-weekly .weekly-boss-identity{padding-right:48px}

.journey-start-control [data-world="boss"] time{display:inline;font:inherit;color:inherit}

/* Active effects stay above the health bars in map coordinates. */
.battle-status-layer{position:absolute;inset:0;pointer-events:none}.battle-status-row{position:absolute;display:flex;justify-content:center;flex-wrap:wrap;gap:2px;width:82px;transform:translate(-50%,-100%)}.battle-status-icon{box-sizing:border-box;position:relative;display:flex;align-items:center;justify-content:center;width:18px;height:18px;background:#213d32;border:1px solid #87ca83;border-radius:var(--kz-r-sm);box-shadow:var(--kz-shadow);pointer-events:auto}.battle-status-icon.debuff{background:#472d31;border-color:#e98e83}.battle-status-icon img{width:13px;height:13px;object-fit:contain}.battle-status-icon b{position:absolute;right:-1px;bottom:-3px;color:#b6f3ac;font:bold var(--kz-fs-xs) var(--kz-font);text-shadow:0 1px #16251a}.battle-status-icon.debuff b{color:#ffb0a5}

/* Reuse the same four attribute symbols as the Pokémon sheet. */
.battle-status-row{gap:2px;width:66px}.battle-status-icon,.battle-status-icon.debuff{width:14px;height:14px;background:#20362be6;border:0;border-radius:var(--kz-r-sm)}.battle-status-icon .attribute-icon{display:block;width:11px!important;height:11px!important;margin:0!important;color:var(--attribute-color)}.battle-status-icon svg{display:block;width:11px;height:11px}.battle-status-icon b{font-size:var(--kz-fs-xs);right:-2px;bottom:-3px}

.home-helper-name{display:flex;align-items:center;gap:6px}.helper-adventure-badge{display:inline-flex;align-items:center;justify-content:center;flex:none;color:var(--game-ink);width:18px;height:18px}.helper-adventure-badge svg,.helper-adventure-badge img{width:16px!important;height:16px!important}

.journey-crate .journey-exp-slot{width:58px;min-width:58px;display:flex;flex-direction:column;gap:2px;font-weight:800;font-size:var(--kz-fs-xs)}.journey-crate .journey-exp-slot b{position:static;font-size:var(--kz-fs-xs);max-width:100%;overflow:hidden;text-overflow:ellipsis}.journey-statistics{width:min(540px,calc(100vw - 20px));max-height:80vh;padding:12px;box-sizing:border-box;overflow:auto}.journey-statistics h2{font-size:var(--kz-fs-sm)}.journey-metrics-table{border-collapse:collapse;width:100%;table-layout:fixed;font-size:var(--kz-fs-xs)}.journey-metrics-table th,.journey-metrics-table td{padding:7px 2px;text-align:center;border-bottom:1px solid var(--wood)}.journey-metrics-table th:first-child{width:31%;text-align:left}.journey-metrics-table tbody th img{width:24px;height:24px;object-fit:contain;image-rendering:pixelated;vertical-align:middle;margin-right:3px}.journey-metrics-table tbody th span{overflow-wrap:anywhere}.journey-metrics-note{font-size:var(--kz-fs-xs);color:var(--text-soft);margin-bottom:0}.journey-pokemon-exp{margin:2px 0}.journey-pokemon-exp>div{height:4px;border-radius:var(--kz-r-sm);background:#26313c;overflow:hidden}.journey-pokemon-exp i{height:100%;display:block;background:#63bdd1}.journey-pokemon-exp small{font-size:var(--kz-fs-xs) !important;margin:1px 0!important;color:var(--text-soft)}
#journey-arena-root #journey-shared-arena .arena-live{grid-template-columns:1fr!important;gap:4px}
#journey-arena-root #journey-shared-arena .arena-live>section{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px}
#journey-arena-root #journey-shared-arena .arena-live>section>strong{grid-column:1/-1}
#journey-arena-root #journey-shared-arena .arena-unit{flex-direction:column!important;gap:2px}
#journey-arena-root #journey-shared-arena .arena-unit>div{width:100%}
#journey-arena-root #journey-shared-arena .arena-unit span,#journey-arena-root #journey-shared-arena .arena-unit small{text-align:center;font-size:var(--kz-fs-xs)}

/* Preserve independent Journey EXP correction (#177). */
@layer priority {#journey-arena-root .journey-crate .journey-exp-slot{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:0!important;min-height:38px!important;height:auto!important;padding:3px 2px!important;line-height:14px!important}#journey-arena-root .journey-exp-slot>span,#journey-arena-root .journey-exp-slot>b{flex:none!important;line-height:14px!important;min-height:14px!important;margin:0!important;padding:0!important;white-space:nowrap!important}#journey-arena-root .journey-exp-slot>b{position:static!important;overflow:visible!important}}
/* Compact battle cards: portraits and vertical stats, then HP and EXP. */
.arena-live .battle-roster-card,#journey-arena-root #journey-shared-arena .battle-roster-card{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:2px!important;padding:5px!important;margin:0!important;min-width:0}
.arena-live .battle-roster-card>div,#journey-arena-root #journey-shared-arena .battle-roster-card>div{width:100%!important;flex:none!important}
.battle-roster-top{display:flex!important;align-items:center!important;gap:8px!important}
.arena-live .battle-roster-card .rarity-portrait,#journey-arena-root #journey-shared-arena .battle-roster-card .rarity-portrait{width:40px!important;height:40px!important;--portrait-size:40px!important;margin:0!important;flex:none}
.battle-roster-attributes{display:grid!important;gap:1px!important;flex:1;min-width:0}
.arena-live .battle-roster-attributes span{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:5px;font-size:var(--kz-fs-xs) !important;line-height:1.1!important}
.battle-roster-attributes .attribute-icon,.battle-roster-attributes .attribute-icon img,.battle-roster-attributes .attribute-icon svg{width:12px!important;height:12px!important;min-width:12px!important}
.battle-roster-card .arena-unit-level{font-size:var(--kz-fs-xs) !important;line-height:1!important}
.battle-vitals{max-width:100%}.battle-vitals .arena-hp-track{height:5px!important;margin:2px 0!important}.battle-vitals .battle-hp-number,.battle-vitals .journey-pokemon-exp small{display:block!important;text-align:center!important;font-size:var(--kz-fs-xs) !important;line-height:1.2!important}
.battle-vitals .journey-pokemon-exp{margin:2px 0 0!important}.battle-vitals .journey-pokemon-exp>div{height:4px;background:#253a31;border-radius:var(--kz-r-sm);overflow:hidden}.battle-vitals .journey-pokemon-exp i{display:block;height:100%;background:#72b5dc;transition:width .4s}
.arena-live{grid-template-columns:repeat(2,minmax(0,1fr))!important}.arena-live>section{display:flex;flex-direction:column;gap:3px}
.experience-rewards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0}.experience-reward{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid var(--wood);border-radius:var(--kz-r-md);background:var(--surface-raised);min-width:0}.experience-reward>div{flex:1;min-width:0}.experience-reward small,.experience-reward b{display:block;font-size:var(--kz-fs-xs);line-height:1.3}.experience-reward .rarity-portrait{flex:none}.result-exp-track{height:6px;position:relative;background:#263a31;border-radius:var(--kz-r-sm);overflow:hidden;margin:4px 0}.result-exp-track i{position:absolute;top:0;height:100%}.result-exp-before{left:0;background:#6f8c9d}.result-exp-gain{background:#8fca67;animation:result-exp-reveal .6s ease-out both;transform-origin:left}@keyframes result-exp-reveal{from{transform:scaleX(0)}to{transform:scaleX(1)}}@media(prefers-reduced-motion:reduce){.result-exp-gain{animation:none}}

.arena-live{display:grid!important;align-items:start!important}.arena-live>section{min-width:0}

#journey-arena-root #journey-shared-arena .arena-live{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}#journey-arena-root #journey-shared-arena .arena-live>section{display:flex!important;flex-direction:column!important}

#journey-arena-root #journey-shared-arena .battle-roster-attributes>span{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:6px!important;line-height:12px!important;font-size:var(--kz-fs-xs) !important}.battle-roster-attributes>span>b{display:inline!important}.battle-roster-top{min-height:48px}.battle-roster-card .battle-hp-number{margin:0!important}.battle-roster-card .journey-pokemon-exp small{margin:0!important}

@layer priority {#journey-arena-root #journey-shared-arena .battle-roster-attributes>span,.arena-live .battle-roster-attributes>span{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:6px!important;line-height:12px!important;margin:0!important;padding:0!important}#journey-arena-root #journey-shared-arena .battle-roster-attributes>span>b{display:inline!important;margin:0!important}.battle-roster-attributes .attribute-icon{display:inline-flex!important;width:12px!important;min-width:12px!important;height:12px!important;flex:0 0 12px!important}.battle-roster-attributes{gap:1px!important}.battle-roster-card{min-height:0!important}}

.snooze-options .snooze-koyn-icon{display:inline-block;width:22px;height:22px;vertical-align:middle;object-fit:contain}
@layer priority {#journey-arena-root #journey-shared-arena .battle-roster-card .battle-hp-number{display:block!important;visibility:visible!important;opacity:1!important;height:auto!important;max-height:none!important;font-size:var(--kz-fs-xs) !important;line-height:12px!important;color:var(--text)!important;margin:0!important}}

/* The current route/gym selection, using the existing game fonts and colors. */
.journey-team-summary{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 12px;padding:8px 10px;margin:8px 0;border:1px solid var(--wood);border-radius:var(--kz-r-md);background:var(--surface-raised);color:var(--text);font-variant-numeric:tabular-nums}
.journey-team-summary>span{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 8px;min-width:0}
.journey-team-summary small{font-size:var(--kz-fs-xs);color:var(--text-soft)}
.journey-team-summary strong{font-size:var(--kz-fs-md);overflow-wrap:anywhere}
.journey-team-summary>b{font-size:var(--kz-fs-xs);white-space:nowrap}

/* Server-owned, conditional CP reference beside the current team's CP. */
.journey-recommended-cp{flex:0 0 100%;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:4px 8px;min-width:0;border-top:1px solid var(--wood);padding-top:6px;font-size:var(--kz-fs-xs)}
.journey-recommended-cp>strong{font-size:var(--kz-fs-md);justify-self:end;overflow-wrap:anywhere}
.journey-recommended-cp>small,.journey-recommended-cp>details{grid-column:1/-1;min-width:0;line-height:1.35}
.journey-recommended-cp>small{font-size:var(--kz-fs-xs)}
.journey-recommended-cp summary{font-size:var(--kz-fs-xs);cursor:pointer}
.journey-recommended-cp ul{margin:6px 0 0;padding-left:16px;font-size:var(--kz-fs-xs);overflow-wrap:anywhere}

/* Font color compares the server reference with the selected team's CP. */
.journey-recommended-cp[data-cp-band="red"]>strong{color:#a42323}
.journey-recommended-cp[data-cp-band="yellow"]>strong{color:#8b6100}
.journey-recommended-cp[data-cp-band="green"]>strong{color:#236b3b}
:root[data-theme="dark"] .journey-recommended-cp[data-cp-band="red"]>strong{color:#ffaaa0}
:root[data-theme="dark"] .journey-recommended-cp[data-cp-band="yellow"]>strong{color:#ffdb66}
:root[data-theme="dark"] .journey-recommended-cp[data-cp-band="green"]>strong{color:#a0e6ad}
.journey-recommended-cp>.journey-cp-comparison{font-size:var(--kz-fs-xs);color:var(--text)}
