/* Update 7.7 — the developer's TEST menu (dev-ui.mjs), loaded last. */
body:is([data-screen=TEST_HUB],[data-screen=DEV]) .alpha-panel .menu{max-width:1180px;animation:none}
.dv-intro{max-width:980px}
/* the hub */
.dv-hub{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;margin:8px 0 16px}
.alpha-panel button.dv-card{position:relative;display:grid;grid-template-columns:40px 1fr;grid-template-rows:auto 1fr auto;column-gap:10px;align-items:start;text-align:left;min-height:118px;padding:14px 14px 12px;border-radius:16px;border:1px solid #ff8f2e55;background:linear-gradient(145deg,#2a1a0ee6,#0d201ce6);color:#f4f7ec}
.alpha-panel button.dv-card:hover,.alpha-panel button.dv-card:focus-visible{border-color:#ff8f2e;background:linear-gradient(145deg,#4a2a10f0,#123029f0);transform:translateY(-1px)}
.dv-ico{grid-row:1/4;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#ff8f2e22;color:#ffb36b;font:900 20px/1 "Segoe UI Symbol",Arial,sans-serif}
.dv-card strong{font:italic 900 17px/1.1 var(--fam,Arial);letter-spacing:.02em;text-transform:uppercase}
.dv-card small{margin-top:4px;color:#c9d6c4;font-size:12px;line-height:1.35}
.dv-count{justify-self:start;margin-top:8px;padding:3px 8px;border-radius:99px;background:#ff8f2e;color:#1d1206;font:900 10px/1.2 Arial,sans-serif;letter-spacing:.06em;font-style:normal;text-transform:uppercase}
.dv-foot{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:14px 0 4px}.dv-foot .hint{flex-basis:100%;margin:2px 0 0}
.alpha-panel button.dv-danger{background:#b3122e!important;border-color:#ff5a6e!important;color:#fff!important}
/* rows: name, slider, exact number, back to the original */
.dv-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,430px),1fr));gap:12px;align-items:start}
.dv-sec{margin:0 0 12px}.dv-sec h4{margin-bottom:6px}
.dv-row{display:grid;grid-template-columns:minmax(120px,1.15fr) minmax(90px,1fr) 74px 30px;align-items:center;gap:8px;padding:5px 6px;margin:2px -6px;border-radius:9px}
.dv-row.mod{background:#ff8f2e17;box-shadow:inset 3px 0 0 #ff8f2e}
.dv-row label{display:flex;flex-direction:column;gap:1px;min-width:0;margin:0;font-weight:700;font-size:12.5px;color:#e8f0e0}
.dv-row label span{overflow:hidden;text-overflow:ellipsis}
.dv-row label small{font-weight:400;font-size:10.5px;color:#9fb4a5;line-height:1.25}
.dv-row input[type=range]{width:100%;margin:0;accent-color:#ff8f2e}
.alpha-panel .dv-row .dv-num{width:74px;min-width:0;padding:5px 6px;border-radius:7px;font:700 12px/1 ui-monospace,Consolas,monospace;text-align:right;background:#0a1714;color:#fff;border:1px solid #ffffff2a}
.alpha-panel .dv-row .dv-rst{min-width:0;width:30px;height:28px;padding:0;border-radius:8px;font-size:15px;line-height:1}
.alpha-panel .dv-row .dv-rst:disabled{opacity:.25}
.dv-adv{margin-top:6px}.dv-adv summary{cursor:pointer;font-weight:900;letter-spacing:.06em;text-transform:uppercase;font-size:12px;color:#ffd2a8;padding:4px 0}
.dv-tabs,.dv-chips{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 10px}
.alpha-panel .dv-tabs button,.alpha-panel .dv-chips button{padding:8px 12px;border-radius:99px;font-size:11.5px}
.alpha-panel .dv-tabs button.on,.alpha-panel .dv-chips button.on{background:#ff8f2e!important;color:#1d1206!important;border-color:#ff8f2e!important}
.dv-fields{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;margin:4px 0 10px}.dv-fields label{flex:1 1 180px;min-width:0;margin:0}.dv-fields select{width:100%}
.dv-flag{color:#ffb36b}
/* AI personality */
.dv-ai{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:14px;align-items:start}
.dv-ai-who{display:flex;flex-direction:column;gap:10px}.dv-ai-who .profile-face{width:100%;max-width:220px;height:auto;aspect-ratio:1;align-self:center}
/* clothes */
.dv-cloth{display:grid;grid-template-columns:minmax(260px,420px) minmax(0,1fr);gap:14px;align-items:start}
.dv-cloth-stage{position:sticky;top:0}.dv-cloth-stage #playerPreview{min-height:320px}
.dv-cloth-stage .pe-view{display:flex;justify-content:center;gap:6px;margin:8px 0}
/* arenas */
.dv-arena-pad{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:6px 0 10px}
.dv-arrows{display:grid;grid-template-columns:repeat(3,40px);grid-template-rows:repeat(3,34px);gap:4px}
.alpha-panel .dv-arrows button{min-width:0;padding:0;border-radius:9px;font-size:14px}
.dv-arrows button:nth-child(1){grid-area:1/2}.dv-arrows button:nth-child(2){grid-area:2/1}.dv-arrows button:nth-child(3){grid-area:2/3}.dv-arrows button:nth-child(4){grid-area:3/2}
.dv-arena-pad .dv-chips{flex:1 1 200px;margin:0}.dv-step{margin:0}.dv-step select{width:auto}
/* menu pictures */
.dv-img-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.dv-img{display:flex;flex-direction:column;gap:5px;padding:8px;border-radius:12px;background:#0a1714cc;border:1px solid #ffffff1c}
.dv-img.custom{border-color:#ff8f2e;box-shadow:0 0 0 1px #ff8f2e55}
.dv-thumb{display:grid;place-items:center;height:110px;border-radius:8px;background:#000 repeating-conic-gradient(#1a2522 0 25%,#131c1a 0 50%) 0 0/16px 16px;overflow:hidden}
.dv-thumb img{max-width:100%;max-height:100%;object-fit:contain}
.dv-img b{font-size:12.5px}.dv-img small{font-size:10.5px;color:#9fb4a5}.dv-img.custom small{color:#ffb36b}
.dv-img-btns{display:flex;gap:5px}.alpha-panel .dv-img-btns button{flex:1;min-width:0;padding:6px 4px;font-size:10px}
/* a menu picture replaced by the user: whole, over a soft dimmed copy that fills the card's shape */
.hm7-art img.custom-bg{position:absolute;inset:0;object-fit:cover;filter:blur(18px) brightness(.45) saturate(.9)!important;transform:scale(1.12);opacity:1!important}
.hm7-art img.custom-art{position:relative}
/* docked on the right: the match waits (or the arena / camera shows) behind the panel */
body.dev-docked .alpha-panel{inset:70px 12px 12px auto;width:min(640px,50vw);padding:0;overflow:auto;background:none;scrollbar-gutter:stable}
body.dev-docked .alpha-panel .menu{max-width:none;min-height:100%;padding:14px 16px 18px;border-radius:18px;background:#03201de8!important;backdrop-filter:blur(6px)!important;box-shadow:0 20px 60px #0009}
body.dev-docked .dv-hub{grid-template-columns:repeat(2,minmax(0,1fr))}
body.dev-docked .dv-cols,body.dev-docked .dv-ai,body.dev-docked .dv-cloth{grid-template-columns:1fr}
body.dev-docked .dv-cloth-stage{position:static}
body.dev-docked .dv-ai-who{display:grid;grid-template-columns:110px 1fr;align-items:center}body.dev-docked .dv-ai-who .profile-face{grid-row:1/4;max-width:110px}
body.dev-docked #court{filter:none!important}
.alpha-panel .dv-peek-btn{margin-left:auto;align-self:center;padding:9px 14px;border-radius:99px;font-size:10.5px}
body.dev-peek .alpha-panel{opacity:0;pointer-events:none;transition:opacity .15s}
@media(max-width:900px){.dv-ai,.dv-cloth{grid-template-columns:1fr}.dv-row{grid-template-columns:minmax(100px,1fr) minmax(70px,1fr) 64px 28px}body.dev-docked .alpha-panel{width:min(560px,70vw)}}
