/* v0.25: character dossiers within the existing Progress destination. */
#progress-dialog{width:840px;max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);padding:0;overflow:hidden;border-radius:18px;background:#11151e;text-align:left}
#progress-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto}
#progress-dialog .progress-head{padding:16px 20px 12px;border-bottom:1px solid #343b48;background:#191d27;position:relative}
#progress-dialog .progress-head>div{display:flex;align-items:center;gap:15px;padding-right:45px;margin-bottom:12px}
#progress-dialog .progress-head h2{font:900 22px/1.15 Arial,sans-serif;letter-spacing:-.7px;margin:0}
#progress-dialog .dialog-build{position:static;display:inline-block;font-size:10px;margin:0;white-space:nowrap}
#progress-dialog .dialog-close{top:7px;right:9px}
.progress-segments{display:flex;gap:6px;min-width:0}.progress-segments button{flex:1;border:1px solid #3b4353;background:#171e29;color:#bfc8d7;border-radius:9px;min-height:40px;padding:7px 12px;font-size:12px;line-height:1.3}
.progress-segments button[aria-pressed=true]{background:#40341d;border-color:#c29e50;color:#ffe0a1}
.progress-scroll{min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding:16px 20px;scrollbar-width:thin}
.mastery-roster{display:flex;gap:8px;overflow-x:auto;margin-bottom:10px;padding:1px 1px 4px}
.mastery-fighter{display:flex;align-items:center;gap:9px;min-width:128px;flex:1;min-height:48px;border:1px solid #465163;background:#1b2230;border-radius:10px;padding:0 12px 0 0;text-align:left}
.mastery-fighter img{height:46px;width:37px;object-fit:cover;object-position:center 18%;border-radius:9px 0 0 9px}.mastery-fighter span{font-weight:700;font-size:14px}.mastery-fighter small{margin-left:auto;color:#aab5c7;font-size:11px}.mastery-fighter[aria-pressed=true]{border-color:#d8b166;background:#342b1d}.mastery-fighter[aria-pressed=true] small{color:#f4d99f}
.character-sections{margin-bottom:16px}.character-overview{display:grid;grid-template-columns:1.3fr 1fr;gap:14px}
.character-identity{display:grid;grid-template-columns:78px 1fr;gap:12px;padding:14px;border:1px solid #545044;background:linear-gradient(120deg,#2b2621,#191e29);border-radius:12px;min-width:0}
.character-identity>img{width:78px;height:96px;object-fit:cover;object-position:50% 14%;border-radius:8px}
#progress-dialog .character-identity .eyebrow{font:600 8px/1.4 Arial,sans-serif;color:#c6ad7b;letter-spacing:.7px;padding:0;margin:0 0 6px}
.character-identity h3{font:900 30px/1 Arial,sans-serif;margin:0}.character-identity .character-nameplate{font-size:12px;line-height:1.4;color:#e9cd92;margin:8px 0}.character-identity small{font-size:10px;color:#c0c7d2}
.character-level{grid-column:1/-1}.character-level progress{width:100%;height:7px;accent-color:#f1c976;display:block;margin-bottom:5px}.character-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px}.character-stats>div{border:1px solid #374050;background:#19202c;border-radius:10px;padding:13px;display:flex;flex-direction:column;justify-content:center;gap:6px}.character-stats strong{font:800 25px/1 Arial,sans-serif}.character-stats small{font-size:8px;letter-spacing:.6px;color:#aab6c9}
.character-next{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0;padding:6px 12px;border:1px solid #685638;background:#2d261b;border-radius:10px;font-size:12px;line-height:1.5;color:#f2d291}.character-next button{min-height:40px;font-size:11px;padding:5px;white-space:nowrap}
.character-mode-records{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}.character-mode-records article{border:1px solid #363d4c;border-radius:9px;padding:12px}.character-mode-records strong{font-size:13px}.character-mode-records p{font-size:12px;color:#c2c9d5;margin:8px 0}.character-mode-records small{font-size:10px;color:#a8b2c4;line-height:1.5;display:block}
.character-title-reset{display:grid;grid-template-columns:1fr 1fr;gap:8px}.character-title-reset .title-equip{font-size:11px;border-radius:9px}
.character-challenges,.character-routes{display:grid;grid-template-columns:1fr 1fr;gap:10px}.character-challenge,.character-route{border:1px solid #3d4656;border-radius:12px;padding:14px;background:#181f2b;min-width:0}.character-challenge.complete,.character-route.landed{border-color:#8e7648;background:linear-gradient(125deg,#302a20,#191f2a)}
.character-challenge h3,.character-route h3{font:700 14px/1.3 Arial,sans-serif;margin:0}.character-challenge p,.character-route p{font-size:12px;line-height:1.5;color:#c1c8d4;margin:10px 0}.character-challenge p{min-height:36px}.character-challenge progress{width:100%;accent-color:#edc671;height:6px}.character-challenge small,.character-route small{display:block;color:#bcc5d4;font-size:10px;line-height:1.5;margin:6px 0 10px}.character-challenge .title-equip{font-size:11px;border-radius:8px}.character-route .combo-practice{margin:0;font-size:11px;min-height:40px;padding:8px 12px;width:100%;text-align:left}.route-modes{margin-bottom:10px}
#progress-dialog .mastery-explain{font-size:11px;line-height:1.6;margin:10px 0}.legacy-progress-note{font-size:12px;line-height:1.6;padding:12px;border:1px solid #72613d;border-radius:10px;background:#30281b;color:#e4cf9e}
#progress-dialog .progress-foot{display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px 12px;padding:10px 20px;background:#191d27;border-top:1px solid #343b48}
#progress-dialog #mastery-note{margin:0;padding:0;border:0;font:10px/1.5 Arial,sans-serif;color:#a8b5ca}#progress-dialog #mastery-status{grid-column:1/-1;min-height:0;margin:0;font-size:11px;line-height:1.4}#progress-dialog #mastery-status:empty{display:none}#progress-done{min-height:40px;font-size:11px;padding:8px 14px;margin:0}
#player-progress .mastery-summary{margin:18px 0}#player-progress .mastery-badge strong{font-size:40px}#player-progress .mastery-record{padding-bottom:12px}#player-progress .mode-records{margin:14px 0}#player-progress .milestone-heading{margin-top:16px}
@media(max-width:560px){#progress-dialog .progress-head{padding:12px}#progress-dialog .progress-head>div{gap:10px}#progress-dialog .progress-head h2{font-size:17px}.progress-scroll{padding:12px}.character-overview{grid-template-columns:1fr;gap:8px}.character-identity{grid-template-columns:60px 1fr;padding:12px;gap:8px 12px}.character-identity>img{width:60px;height:80px}.character-identity h3{font-size:26px}.character-stats{grid-template-columns:repeat(4,1fr);gap:5px}.character-stats>div{padding:10px 6px}.character-stats strong{font-size:20px}.character-stats small{font-size:7px}.character-challenges,.character-routes{grid-template-columns:1fr}.character-title-reset{grid-template-columns:1fr}.character-next{padding:6px 10px;gap:7px;font-size:11px}.character-next button{font-size:10px}.character-sections{margin-bottom:12px}#progress-dialog .progress-foot{padding:8px 12px;gap:6px}#progress-dialog #mastery-note{font-size:9px}#progress-done{font-size:10px;padding:6px 10px}.character-challenge p{min-height:0}}
@media(orientation:landscape) and (max-height:420px){#progress-dialog .progress-head{padding:7px 14px}#progress-dialog .progress-head>div{margin-bottom:7px}#progress-dialog .progress-head h2{font-size:18px}.progress-segments button{min-height:36px}.progress-scroll{padding:10px 14px}#progress-dialog .progress-foot{padding:6px 14px}#progress-dialog .dialog-close{top:2px}.mastery-roster{margin-bottom:7px}.character-sections{margin-bottom:10px}}

@media(orientation:landscape) and (max-height:420px) and (min-width:600px){
 #progress-dialog .progress-head{display:flex;align-items:center;gap:12px;padding:8px 56px 8px 14px}#progress-dialog .progress-head>div{padding:0;margin:0;gap:9px;flex:1}#progress-dialog .progress-head h2{font-size:16px;white-space:nowrap}#progress-dialog .progress-head>.progress-segments{width:230px}#progress-dialog .dialog-close{top:4px}
 #character-progress:not([hidden]){display:grid;grid-template-columns:1fr 1fr;gap:10px}.mastery-roster,.character-sections{margin:0}.mastery-fighter{min-width:0;padding-right:8px;gap:5px;min-height:40px}.mastery-fighter img{height:38px;width:29px}.mastery-fighter span{font-size:12px}.mastery-fighter small{font-size:9px}.character-sections{align-items:center}.character-sections button{padding:7px 5px;font-size:10px;min-height:40px}#character-content{grid-column:1/-1}.character-identity{grid-template-columns:50px 1fr;padding:10px;gap:6px 10px}.character-identity>img{width:50px;height:69px}.character-identity h3{font-size:24px}.character-identity .character-nameplate{margin:5px 0}.character-stats>div{padding:9px}.character-stats strong{font-size:22px}
}
