.pm-canonical-menu{color:#fff3dc;width:100%;max-width:100%;box-sizing:border-box;padding:10px 0 20px;font-family:Segoe UI,system-ui,sans-serif;isolation:isolate}
.pm-canonical-menu-title{margin:0 0 10px;font-size:clamp(1.35rem,3vw,1.8rem);font-weight:750;letter-spacing:-.035em;color:#ffe4ac;text-shadow:0 2px 16px #0005}
.pm-canonical-menu-controls{display:flex;gap:7px;align-items:center;margin:0 0 10px;min-height:44px}
.pm-canonical-menu-side-label{font-size:.8rem;color:#d9cde7;margin-right:4px}
.pm-canonical-menu-side{min-width:44px;min-height:44px;border:1px solid #cba766;border-radius:14px;background:linear-gradient(#42314e,#2c2139);color:#ffe8bd;font:inherit;font-weight:750;cursor:pointer;box-shadow:0 3px 8px #0003}
.pm-canonical-menu-side[aria-pressed=true]{background:linear-gradient(#f6dfa9,#c99e58);color:#33223e}
.pm-canonical-menu-pages{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 10px}
.pm-canonical-menu-pages[hidden]{display:none}
.pm-canonical-menu-page{display:flex;align-items:center;gap:8px;flex:1 1 160px;min-height:44px;min-width:44px;border:1px solid #8e739c;border-radius:12px;padding:7px 10px;text-align:left;background:#241c32;color:#e5d6ec;font:inherit;cursor:pointer}
.pm-canonical-menu-page[aria-pressed=true]{border-color:#e4c183;background:linear-gradient(130deg,#5b3e68,#33203f);color:#ffe2ac;box-shadow:inset 0 0 0 1px #d8b36a44}
.pm-canonical-menu-page-number{display:grid;place-items:center;min-width:25px;height:25px;border:1px solid #b89966;border-radius:8px;color:#f5d496;font-weight:750;font-size:.8rem}
.pm-canonical-menu-page-label{font-size:.76rem;line-height:1.25;overflow-wrap:anywhere}
.pm-canonical-menu-sets{max-width:100%}
.pm-canonical-menu-set{max-width:100%;min-width:0}.pm-canonical-menu-set[hidden]{display:none}
.pm-canonical-menu-scroll{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;padding:6px 0 10px;scrollbar-width:thin;scrollbar-color:#ba9b63 transparent}
.pm-canonical-menu-canvas{position:relative;flex:none;margin-inline:auto;min-width:352px;min-height:352px;max-width:none;filter:drop-shadow(0 12px 20px #0005);animation:pm-menu-arrive 180ms ease-out both}
.pm-canonical-menu-card{position:absolute;box-sizing:border-box;border:2px solid #ceac67;border-radius:16px;background:linear-gradient(165deg,#4b3456,#251d33 70%);color:#fff1da;overflow:hidden;padding:14px;display:flex;flex-direction:column;align-items:flex-start;text-align:left;font:inherit;box-shadow:inset 0 0 0 3px #e7c6801a,inset 0 1px 0 #fff6;cursor:pointer;transition:box-shadow 120ms ease-out,filter 120ms ease-out}
.pm-canonical-menu-card:not(:disabled):hover{box-shadow:inset 0 0 0 3px #e7c78270,0 0 20px #f0c16c35;filter:brightness(1.07)}
.pm-canonical-menu-role{position:absolute;top:10px;right:11px;display:grid;place-items:center;width:27px;height:27px;border:1px solid #ebcc8b88;border-radius:9px;background:#231a35cc;font-weight:800;font-size:.9rem;color:#ffe3a1;z-index:2}
.pm-canonical-menu-artwork{position:relative;display:flex;align-items:center;justify-content:center;width:100%;flex:1;min-height:70px;margin:0 0 12px;border-radius:10px;border:1px solid #eac98b55;background:radial-gradient(ellipse at 50% 40%,#8970a766,transparent 70%),linear-gradient(160deg,#4d3d57,#302440);overflow:hidden;box-shadow:inset 0 0 26px #0004}
.pm-canonical-menu-illustration{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;filter:saturate(.95)}
.pm-canonical-menu-artwork-habitat .pm-canonical-menu-illustration{object-fit:cover;object-position:center;transform:scale(1.06)}
.pm-canonical-menu-artwork-pack .pm-canonical-menu-illustration{object-fit:contain;padding:5px;background:radial-gradient(ellipse at center,#8f658a44,transparent 72%)}
.pm-canonical-menu-artwork-logo .pm-canonical-menu-illustration{object-fit:contain;padding:24px}
.pm-canonical-menu-character{display:block;width:62%;max-width:170px;aspect-ratio:4/5;flex:none;background-size:800% 1400%;background-position:0% 7.6923076923%;background-repeat:no-repeat;filter:drop-shadow(0 6px 8px #0005)}
.pm-canonical-menu-label{display:block;font-size:clamp(1.12rem,2vw,1.55rem);font-weight:750;line-height:1.12;overflow-wrap:anywhere;margin-bottom:7px;letter-spacing:-.02em}
.pm-canonical-menu-description{display:block;font-size:clamp(.86rem,1.2vw,1rem);line-height:1.35;overflow-wrap:anywhere;color:#ded0e5}
.pm-canonical-menu-status{display:block;font-size:.78rem;line-height:1.3;margin-top:7px;color:#f0d29a;font-weight:650}
.pm-canonical-menu-action-cue{display:block;margin-top:12px;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:#f8d998;font-weight:750}
.pm-canonical-menu-pq{align-items:center;justify-content:center;padding:2px 6px;font-weight:750;text-align:center;white-space:nowrap;overflow:hidden;font-size:.9rem;background:linear-gradient(#f8e4b5,#c8a264);color:#302238;border-color:#dfc18a;border-radius:11px;min-width:44px;min-height:44px;box-shadow:inset 0 1px 0 #fff9}
.pm-canonical-menu-pq-vertical{writing-mode:vertical-rl;text-orientation:mixed;padding:6px 2px}
.pm-canonical-menu-card:disabled{cursor:default;filter:saturate(.4);color:#ded5e1;background:#372f3d}.pm-canonical-menu-card:disabled .pm-canonical-menu-artwork{opacity:.55}
.pm-canonical-menu-empty{cursor:default;align-items:center;justify-content:center;background:repeating-linear-gradient(35deg,#2c2338 0 15px,#33273f 16px 17px)}
.pm-canonical-menu-empty-mark{font-size:4rem;color:#cdb58344}
.pm-canonical-menu-card:focus-visible,.pm-canonical-menu-side:focus-visible,.pm-canonical-menu-page:focus-visible,.pm-canonical-menu-recovery:focus-visible{outline:4px solid #fff;outline-offset:-6px;box-shadow:inset 0 0 0 7px #7654a5;z-index:3}
.pm-canonical-menu-context{color:#d5c7df;font-size:.88rem;line-height:1.4;margin:8px 0 0;min-height:1.4em}
.pm-canonical-menu-error{padding:12px;border:1px solid #d7b675;border-radius:8px}
.pm-canonical-menu-recovery{display:block;width:100%;min-height:44px;padding:12px;background:#3a2b4b;color:#fff;border:1px solid #c6ab70;border-radius:8px;text-align:left;font:inherit;cursor:pointer}
@keyframes pm-menu-arrive{from{opacity:.65;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.pm-canonical-menu-canvas{animation:none}.pm-canonical-menu-card{transition:none}}
@media(max-width:430px){.pm-canonical-menu-title{font-size:1.3rem}.pm-canonical-menu-card{padding:12px}.pm-canonical-menu-pages{gap:6px}.pm-canonical-menu-page{flex-basis:130px}.pm-canonical-menu-pq{padding:2px;font-size:.86rem}.pm-canonical-menu-pq-vertical{padding:4px 2px}}

/* R54 keeps shared set geometry; illustrations are decorative, never player identity. */
.pm-canonical-menu-card{background:linear-gradient(150deg,#513664,#2a213e 78%);border-color:#e6c683;box-shadow:inset 0 0 0 4px #f8e2b321,inset 0 1px 0 #fff8,0 6px 16px #09041540}
.pm-canonical-menu-artwork{background:radial-gradient(ellipse at 50% 58%,#a68cc278,transparent 70%),linear-gradient(160deg,#6d5078,#322643);border-color:#dfbd8155}
.pm-canonical-menu-artwork-portrait{background:radial-gradient(ellipse at 50% 75%,#d6a68155,transparent 58%),linear-gradient(#443969aa,#342541cc)}
.pm-canonical-menu-artwork-portrait::before{content:'';position:absolute;inset:8%;border:1px solid #f5d58b42;border-radius:50%;box-shadow:0 0 32px #dda85a22}
.pm-canonical-menu-artwork-portrait .pm-canonical-menu-illustration{object-fit:contain;object-position:center bottom;padding:8px 6px 0;box-sizing:border-box;filter:drop-shadow(0 8px 6px #0e081945);animation:pm-character-welcome 350ms ease-out both}
.pm-canonical-menu-card:not(:disabled):hover .pm-canonical-menu-illustration{filter:drop-shadow(0 10px 8px #0e08195c) saturate(1.08)}
.pm-canonical-menu-label{color:#fff0cc;text-shadow:0 1px 2px #10061755}.pm-canonical-menu-description{color:#eee0f4}.pm-canonical-menu-action-cue{color:#ffdf96}
@keyframes pm-character-welcome{from{opacity:.55;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.pm-canonical-menu-artwork-portrait .pm-canonical-menu-illustration{animation:none}}

/* R56: fit canonical geometry into the available width; do not force a wider canvas. */
.pm-canonical-menu-canvas{min-width:0;min-height:0}
.pm-canonical-menu-card.pm-canonical-menu-pq{min-width:0;min-height:0;background:linear-gradient(#f8e4b5,#c8a264);color:#302238;white-space:normal;overflow-wrap:anywhere;line-height:1.15;font-size:.82rem}
