/* Driving takes priority. Secondary actions live in one reachable menu. */
.city-menu{position:absolute;right:14px;top:12px;z-index:6;max-width:300px}
.city-menu summary,.city-objective button{min-height:44px;padding:12px 15px;border:1px solid #ffffff50;border-radius:12px;background:#172624f2;color:#f3faf5;font:600 12px 'DM Sans',Arial;cursor:pointer}
.city-menu summary{list-style:none;text-align:center}.city-menu summary::-webkit-details-marker{display:none}.city-menu summary::after{content:' +';margin-left:10px}.city-menu[open] summary::after{content:' −'}
.city-menu .city-drive-actions{position:static;display:grid;grid-template-columns:1fr 1fr;max-width:none;margin-top:5px;padding:10px;gap:6px;background:#182624;border:1px solid #ffffff40;border-radius:12px;max-height:calc(100dvh - 210px);overflow:auto;touch-action:pan-y}
.city-menu .city-drive-actions button{font-size:12px;padding:7px 9px;text-align:left;min-height:44px;background:#24332f}
.city-menu label{align-self:center;font-size:12px}.city-menu select{min-width:0;min-height:44px;background:#24332f;color:#f3faf5;border:1px solid #ffffff50;border-radius:8px;padding:6px;font:inherit;font-size:12px}
.city-hud{max-width:calc(100% - 205px)}.city-hud>div{padding:8px 12px}.city-hud>div:nth-child(4){display:none}
.city-life-hud{position:absolute;top:104px;left:14px;display:flex;gap:15px;z-index:2;background:#172624ed;padding:8px 12px;border-radius:10px;font-size:12px;font-variant-numeric:tabular-nums;pointer-events:none}
.city-life-hud [data-low=true]{color:#ffd791}.city-police{top:145px}.city-message{top:auto;bottom:76px;left:50%;max-width:65%;font-size:12px}
.city-objective{position:absolute;right:14px;bottom:18px;z-index:3;max-width:calc(100% - 210px);display:flex;align-items:center;gap:10px;background:#172624ed;border-radius:12px;padding:5px 5px 5px 12px;font-size:12px}
.city-objective span{max-width:280px}.city-objective button{background:#c4e5d2;color:#173026;flex-shrink:0}.city-navigation{width:150px}
#cityChat{max-height:190px;overflow:auto;overflow-wrap:anywhere}#cityChat p{margin:8px 0}#chatForm{display:grid;grid-template-columns:1fr 80px;gap:7px}#chatForm label{grid-column:1/-1;font-size:12px}#chatInput{width:100%;min-width:0;min-height:44px;border-radius:8px;border:1px solid #ffffff50;background:#172624;color:white;padding:10px;font:inherit}
#cityChatPanel #cityChat{display:block;margin:10px 0;min-height:70px;font-size:13px;line-height:1.5}#cityChatPanel #chatForm button{border:1px solid #8ea598;background:#c4e5d2;color:#173026;border-radius:8px;font:600 12px 'DM Sans',Arial}#closeChat{margin-top:16px}
@media(max-width:700px){
 .city-hud{top:8px;left:8px;right:8px;max-width:none;width:auto;display:flex;justify-content:space-between}.city-hud>div{padding:7px 8px}.city-hud>div:nth-child(n+3){display:block;border-top:0}.city-hud>div:nth-child(4){display:none}.city-hud small{font-size:11px}.city-hud strong{font-size:21px}.city-hud #scoreBreakdown{max-width:145px;font-size:11px}.city-hud #driftStatus{max-width:105px;line-height:1.3}.city-hud>div:nth-child(3) strong{font-size:18px}
 .city-life-hud{top:107px;left:8px;right:8px;justify-content:space-between;gap:5px;padding:8px;font-size:11px}.city-menu{top:146px;right:8px;max-width:calc(100% - 16px)}.city-menu summary{width:max-content;margin-left:auto;padding:10px 12px}.city-menu .city-drive-actions{max-height:calc(100dvh - 330px)}
 .city-police{top:146px;left:8px;max-width:calc(100% - 156px);font-size:11px;padding:9px 8px}.city-page.in-game .city-view{min-height:510px;height:calc(100dvh - 90px)}
 .city-navigation{width:100px;bottom:151px;left:8px}.city-objective{bottom:151px;right:8px;max-width:calc(100% - 124px);flex-direction:column;align-items:stretch;gap:6px;padding:8px;font-size:11px}.city-objective button{font-size:12px}.city-message{bottom:282px;max-width:94%;padding:6px 9px;font-size:11px;top:auto}.city-game:fullscreen .city-view{height:calc(100dvh - 70px);min-height:0}
 .city-toolbar-actions a{display:none}.city-toolbar-actions{max-width:75%}
}
@media(pointer:coarse){.city-objective{bottom:145px}.city-message{bottom:240px}.city-touch .city-steering{gap:6px}.city-touch{z-index:4}}
@media(pointer:coarse) and (max-height:500px){
 .city-hud{left:8px;right:auto;max-width:55%;top:6px;display:flex}.city-hud>div{padding:5px 8px}.city-hud strong{font-size:18px}.city-hud #scoreBreakdown{display:none}.city-hud #driftStatus{font-size:11px}.city-hud>div:nth-child(3){display:none}
 .city-life-hud{top:6px;left:auto;right:145px;padding:7px;display:grid;gap:2px}.city-menu{top:6px;right:8px}.city-menu .city-drive-actions{max-height:calc(100dvh - 135px);max-width:340px}.city-menu summary{font-size:11px;padding:10px}.city-police{top:72px;max-width:45%;font-size:11px}.city-message{bottom:auto;top:115px;max-width:55%;left:50%;font-size:11px}
 .city-navigation{width:72px;top:64px;right:8px;left:auto;bottom:auto}.city-navigation>div{display:none}.city-objective{left:150px;right:200px;bottom:10px;max-width:none;font-size:11px;display:flex;flex-direction:column;padding:5px;gap:4px}.city-objective button{padding:8px;min-height:44px}
 .city-page.in-game .city-view{min-height:255px;height:calc(100dvh - 68px)}.city-game:fullscreen .city-view{height:calc(100dvh - 65px)}
}
@media(pointer:coarse) and (max-width:360px){
 .city-touch{left:6px;right:6px;display:grid;grid-template-columns:96px 160px;justify-content:space-between;gap:5px}
 .city-touch>div:last-child{display:grid;grid-template-columns:44px 44px 64px;gap:4px}
 .city-touch button{min-width:44px;padding:4px;font-size:12px;height:52px}
 .city-touch button[data-control=accelerate]{width:64px;font-size:10px;height:66px}
 .city-touch button[data-control=brake],.city-touch button[data-control=reverse]{font-size:10px}
 .city-hud #scoreBreakdown{display:none}.city-hud #driftStatus{max-width:85px}.city-hud>div{padding:7px}
 .city-objective{max-width:calc(100% - 119px);font-size:11px}
}
