/* Function and identity presentation; game rules and hit areas are unchanged. */
.pr-menu-avatar { position:relative;display:inline-block;flex:0 0 auto;width:76px;height:76px;background:#f7f4ea;border:1px solid #b8cdd966;border-radius:6px; }
.pr-menu-avatar > img { width:100%;height:100%;object-fit:cover;object-position:center top;border-radius:5px; }
.pr-menu-avatar > .pr-element-badge { position:absolute;top:2px;left:2px;width:25px;height:25px; }
.pr-ready-character { display:flex;align-items:center;gap:16px;margin-bottom:16px; }
.pr-ready-character h2 { margin:4px 0;letter-spacing:.02em; }
.pr-ready-character small { color:#b8cdd9;font-size:11px;letter-spacing:.08em; }
.pr-ready-character span { font-size:13px; }
.pr-goal-steps { list-style:none;padding:0;margin:0;display:grid;gap:20px; }
.pr-goal-steps li { display:flex;align-items:flex-start;gap:14px; }
.pr-goal-step { flex:0 0 36px;padding:7px 0;text-align:center;background:#243d53;color:#99e7ef;border:1px solid #74ceda66;border-radius:4px;font-size:16px; }
.pr-goal-steps h3 { margin:0;font-size:18px;line-height:1.3; }
.pr-goal-steps li p { margin:5px 0 0; }
.pr-domain-card .pr-rule-detail { color:#b8cdd9;font-size:12px; }
.pr-kit-rows { display:grid;gap:0;border-top:1px solid #b8cdd933; }
.pr-kit-row { display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #b8cdd933; }
.pr-kit-row i { display:block;flex:0 0 28px;width:28px;height:28px;color:#8fe1eb; }
.pr-kit-row i svg { width:100%;height:100%; }
.pr-kit-row > div { min-width:0;flex:1; }
.pr-kit-row b { font-size:15px; }
.pr-kit-row small { display:block;font-size:11px;line-height:1.45;color:#b8cdd9;margin-top:4px; }
.pr-kit-row > span { font-size:10px;flex:0 0 auto;color:#b8cdd9; }
.pr-ready-card .pr-domain-actions { justify-content:space-between; }
.pr-domain-setup .pr-domain-body { grid-template-rows:minmax(0,1fr); }
.pr-domain-setup .pr-domain-card { overflow-y:auto;min-height:0; }
.pr-domain-setup .pr-ready-card { display:flex;flex-direction:column; }
.pr-ready-card .pr-ready-character,.pr-ready-card .pr-domain-actions { flex-shrink:0; }
.pr-ready-card .pr-kit-rows { min-height:0;overflow-y:auto;flex:1 1 auto; }
.pr-ready-card .pr-domain-actions { position:sticky;bottom:0;background:#17263b;padding-top:8px; }
.pr-domain-actions .iw-btn:disabled { opacity:.5;cursor:not-allowed;filter:grayscale(1); }
.pr-room-player { flex-direction:row;align-items:center;gap:10px; }
.pr-room-player .pr-menu-avatar,.pr-room-bot { width:44px;height:44px; }
.pr-room-player .pr-element-badge { width:20px;height:20px; }
.pr-room-player > div { display:flex;flex-direction:column;gap:5px;min-width:0;overflow-wrap:anywhere; }
.pr-room-bot { flex:0 0 44px;display:grid;place-items:center;border:1px dashed #b8cdd94d;border-radius:5px;color:#b8cdd9; }
.pr-room-bot svg { width:22px;height:22px; }
/* In-match portraits retain the existing team border, self marker and respawn overlays. */
.iw-sq.has-character .iw-sq__w { inset:5%;border:2px solid var(--tc);border-radius:6px; }
.iw-sq.has-character .iw-sq__w > img { width:100%;height:100%;object-fit:cover;border-radius:4px; }
.iw-sq.has-character .iw-sq__shape { display:none; }
.iw-sq.has-character .pr-element-badge { position:absolute;left:-4px;top:-4px;width:clamp(17px,1.6vw,23px);height:clamp(17px,1.6vw,23px); }
.iw-squad--b .iw-sq .pr-element-badge svg { transform:none;filter:none; }
.iw-sq.is-dead.has-character .iw-sq__w { filter:grayscale(1); }
body.pr-touch-active .iw-ui:not(.is-active) .pr-dev-label { display:none; }
@media(orientation:portrait) {
 body.pr-domain-match.pr-touch-active .iw-feed { top:244px;right:max(12px,env(safe-area-inset-right,0px));max-width:calc(100% - 24px); }
 body.pr-domain-match.pr-touch-active .iw-feed__item { max-width:100%;box-sizing:border-box;font-size:11px;white-space:normal;line-height:1.25; }
 .pr-touch.is-domain .pr-touch-rotate { top:220px;width:auto;white-space:nowrap;font-size:9px;padding:2px 5px; }
 .pr-touch.is-domain .pr-touch-look > span { display:none; }
}
@media(max-width:650px) and (orientation:portrait) {
 .pr-domain-body { grid-template-columns:minmax(0,1fr);inset:130px 16px 64px;gap:16px; }
 .pr-domain-card { padding:18px; }
 .pr-goal-steps { gap:14px; }
 .pr-domain-actions .iw-btn { flex:1; }
 .pr-domain-roster { gap:12px; }
 .pr-domain-setup .pr-domain-body { grid-template-rows:auto auto; }
 .pr-domain-setup .pr-domain-card,.pr-ready-card .pr-kit-rows { overflow:visible; }
}
@media(max-height:500px) {
 .pr-goal-steps { gap:10px; }
 .pr-goal-steps h3 { font-size:14px; }
 .pr-goal-step { flex-basis:28px;font-size:12px; }
 .pr-ready-character { gap:10px;margin-bottom:10px; }
 .pr-ready-character .pr-menu-avatar { width:52px;height:52px; }
 .pr-kit-row { padding:7px 0;gap:7px; }
 .pr-kit-row b { font-size:12px; }
 .pr-kit-row small { font-size:10px; }
 .pr-kit-row i { flex-basis:22px;width:22px;height:22px; }
 .pr-ready-card > .pr-rule-detail { display:none; }
 .pr-ready-card .pr-domain-actions { margin-top:8px;gap:8px; }
}
@media(max-height:500px) and (min-width:651px) {
 .pr-ready-card .pr-kit-rows { grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px; }
 .pr-ready-card .pr-kit-row { display:grid;grid-template-columns:22px minmax(0,1fr);column-gap:7px;row-gap:2px;align-content:center;padding:5px 0; }
 .pr-ready-card .pr-kit-row i { grid-column:1;grid-row:1 / span 2;align-self:center; }
 .pr-ready-card .pr-kit-row > span { grid-column:2;grid-row:1;font-size:9px; }
 .pr-ready-card .pr-kit-row > div { grid-column:2;grid-row:2; }
 .pr-ready-card .pr-kit-row small { margin-top:2px;line-height:1.2; }
}
/* Leave the actual Garden and roster readable on the title's right side. */
.iw-title__scrim{background:linear-gradient(90deg,#f7f4eaf5 0%,#f7f4eae6 30%,#f7f4ea52 49%,#f7f4ea05 68%);}
.iw-title__press{padding:12px 24px;background:#f7f4eae8;border-radius:6px;}
@media(orientation:portrait){.iw-title__scrim{background:linear-gradient(180deg,#f7f4eae8 0%,#f7f4ea90 36%,#f7f4ea08 65%);}}
.pr-ready-card .pr-control-guide{flex-shrink:0;}
@media(max-height:450px){
 .pr-ready-card .pr-ready-character{margin-bottom:6px;}
 .pr-ready-card .pr-ready-character h2{margin:2px 0;font-size:17px;}
 /* A nested shrinking scroller cut off the second pair of abilities. Let the
    card own scrolling; all four names stay in its natural content flow. */
 .pr-ready-card .pr-kit-rows{flex:0 0 auto;min-height:0;overflow:visible;}
 .pr-ready-card .pr-domain-actions{margin-top:4px;padding-top:4px;}
 .pr-controls-touch > b,.pr-controls-touch > small{display:none;}
 .pr-ready-card .pr-control-guide p{font-size:11px;line-height:1.3;margin:5px 0 0;}
}
