/* StreetRacing shared UI modernization v2.2.0
 * Mobile-first, theme-neutral: preserves the selected color theme and improves spacing, sizing and readability.
 */
body:not(.sr-fullscreen){box-sizing:border-box;padding-bottom:2px;}
body:not(.sr-fullscreen) *{box-sizing:border-box;}
body:not(.sr-fullscreen) img{height:auto;}
body:not(.sr-fullscreen) .title,
body:not(.sr-fullscreen) .title2{line-height:1.25;}
body:not(.sr-fullscreen) .div1,
body:not(.sr-fullscreen) .div11{overflow:hidden;}
body:not(.sr-fullscreen) .menu a,
body:not(.sr-fullscreen) .menu2 .lin{min-height:34px;line-height:22px;padding-top:6px;padding-bottom:6px;}
body:not(.sr-fullscreen) .but{min-height:31px;line-height:20px;border-radius:4px;}
body:not(.sr-fullscreen) input[type="text"],
body:not(.sr-fullscreen) input[type="password"],
body:not(.sr-fullscreen) input[type="number"],
body:not(.sr-fullscreen) select,
body:not(.sr-fullscreen) textarea{max-width:100%;border-radius:4px;padding:6px;}
body:not(.sr-fullscreen) textarea{resize:vertical;}
body:not(.sr-fullscreen) .personage,
body:not(.sr-fullscreen) .err{overflow-wrap:anywhere;word-wrap:break-word;}

/* Core mobile navigation stays exactly the same logically, just gets clearer touch targets. */
body:not(.sr-fullscreen) .pr.div1.hidden.brd1:first-of-type a,
body:not(.sr-fullscreen) .pr.div1.hidden.brd1:first-of-type>div{min-height:30px;line-height:20px;}

/* City keeps its familiar list of locations, now easier to scan. */
body:not(.sr-fullscreen).sr-route-city .sr-city-status{margin-bottom:2px;}
body:not(.sr-fullscreen).sr-route-city .sr-city-points a{position:relative;min-height:38px;padding:8px 7px;}
body:not(.sr-fullscreen).sr-route-city .sr-city-points .icns{margin-top:1px;}

/* Bar */
body:not(.sr-fullscreen).sr-route-bar .sr-bar-tabs{overflow:hidden;}
body:not(.sr-fullscreen).sr-route-bar .sr-bar-tabs a,
body:not(.sr-fullscreen).sr-route-bar .sr-bar-tabs>div{min-height:31px;padding-top:6px;}
body:not(.sr-fullscreen).sr-route-bar textarea.text{min-height:76px;padding:8px!important;}
body:not(.sr-fullscreen).sr-route-bar .sr-bar-message-actions{padding-top:5px;margin-top:4px;border-top:1px solid rgba(127,127,127,.22);}
body:not(.sr-fullscreen).sr-route-bar .sr-bar-reaction-pill{padding:1px 3px;border-radius:10px;}
body:not(.sr-fullscreen).sr-route-bar .sr-bar-moderation-actions{opacity:.78;}

/* Personal messages */
body:not(.sr-fullscreen).sr-route-comm .sr-dialog{padding:8px!important;}
body:not(.sr-fullscreen).sr-route-comm .sr-dialog-main{margin-left:33px!important;}
body:not(.sr-fullscreen).sr-route-comm .sr-dialog-title{line-height:19px;}
body:not(.sr-fullscreen).sr-route-comm .sr-dialog-preview{line-height:18px;}
body:not(.sr-fullscreen).sr-route-comm .sr-chat-bubble{max-width:84%!important;padding:8px 9px!important;border-radius:9px!important;}
body:not(.sr-fullscreen).sr-route-comm .sr-chat-compose textarea,
body:not(.sr-fullscreen).sr-route-comm .sr-chat-edit textarea{min-height:82px!important;padding:8px!important;border-radius:5px!important;}
body:not(.sr-fullscreen).sr-route-comm .sr-chat-btn,
body:not(.sr-fullscreen).sr-route-comm .sr-chat-mini{border-radius:4px!important;}

/* Auto salon: do not upscale legacy bitmaps. */
body:not(.sr-fullscreen).sr-route-auto .sr-auto-tabs{overflow:hidden;}
body:not(.sr-fullscreen).sr-route-auto img[alt="car"]{width:auto!important;max-width:95%!important;height:auto!important;max-height:150px!important;object-fit:contain;}
body:not(.sr-fullscreen).sr-route-auto .dt.w90{min-height:118px;}

/* Race and night city: give action areas more breathing room without changing mechanics. */
body:not(.sr-fullscreen).sr-route-race .but.btn2{margin-top:4px;margin-bottom:4px;}
body:not(.sr-fullscreen).sr-route-race .sr-race-track{overflow:hidden;border-top:1px solid rgba(127,127,127,.18);}
body:not(.sr-fullscreen).sr-route-streetwar details summary{padding-top:6px;padding-bottom:6px;cursor:pointer;}
body:not(.sr-fullscreen).sr-route-streetwar .sw-plate-card{max-width:100%;}

/* Jobs / teams / rankings benefit from compact card separation. */
body:not(.sr-fullscreen).sr-route-jobs .div1,
body:not(.sr-fullscreen).sr-route-teams .div1,
body:not(.sr-fullscreen).sr-route-battle .div1,
body:not(.sr-fullscreen).sr-route-rate .div1{overflow:hidden;}

@media (min-width:380px){
    body:not(.sr-fullscreen){max-width:380px;}
}

/* Mobile header/resources: same data, denser card-like grouping. */
body:not(.sr-fullscreen) .sr-mobile-stats{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    align-items:center;
    gap:3px 6px;
    padding:6px!important;
    line-height:18px;
}
body:not(.sr-fullscreen) .sr-mobile-stats>span,
body:not(.sr-fullscreen) .sr-mobile-stats>a{
    display:inline-flex;
    align-items:center;
    min-height:22px;
    margin:0!important;
    padding:1px 3px;
    white-space:nowrap;
}
body:not(.sr-fullscreen) .sr-mobile-stats img{max-width:17px;max-height:17px;width:auto;height:auto;vertical-align:middle;}
body:not(.sr-fullscreen) .sr-mobile-exp{height:4px!important;overflow:hidden;}
body:not(.sr-fullscreen) .sr-mobile-primary{height:34px!important;min-height:34px!important;overflow:visible!important;}
body:not(.sr-fullscreen) .sr-mobile-primary>a,
body:not(.sr-fullscreen) .sr-mobile-primary>div{min-height:34px!important;height:34px!important;padding-top:7px!important;padding-bottom:5px!important;line-height:20px!important;}
body:not(.sr-fullscreen) .sr-mobile-primary>img{opacity:.45;}
