/* GTAUP V312 – coherent blue UI. Scoped to avoid touching game math or API. */
:root,html,body{--bg:#16395e;--surface:#28557d;--surface2:#33648e;--surface3:#3d7099;--line:rgba(159,210,247,.14);--line2:rgba(174,215,246,.23)}
html body .main,html body .content{background:linear-gradient(145deg,#153657 5%,#1b4065 75%,#1a4068)!important}
/* Retire the obsolete advertising strip and redundant large upgrade heading. */
html body #virtsSaleV153,html body .virts-sale-v153,html body #page-upgrader.v302-upgrader>.v302-head,html body #page-upgrader.v302-upgrader>.v302-topbar{display:none!important}
html body #page-upgrader.v302-upgrader{padding-top:12px!important}
/* Topbar: same colour as content, no black dock */
html body .topbar.topbar-v5,html body .topbar.topbar-v5::before,html body .topbar.topbar-v5::after,html body .topbar.topbar-v5 .header-actions-v18,html body .topbar.topbar-v5 .top-actions-v18,html body .header-dock-v24,html body .header-dock-v24::before,html body .header-dock-v24::after{background:#245079!important;background-image:none!important;border:0!important;box-shadow:none!important}
html body .topbar.topbar-v5{border-bottom:1px solid rgba(165,213,249,.12)!important}
html body .topbar button,html body .topbar .account-pill,html body .topbar .wallet-pill,html body .topbar [class*="dock"],html body .topbar [class*="actions"]{background-color:#2d5c85!important;background-image:none!important;border-color:transparent!important;box-shadow:none!important}
html body .topbar .wallet-pill .wallet-value,html body .topbar #headerBalance{color:#d5f9e9!important}
/* Side navigation: consistent vector line symbols, not dated game PNGs */
html body .sidebar .nav-btn .nav-ic{width:38px!important;height:38px!important;display:grid!important;place-items:center!important;background:rgba(76,143,198,.24)!important;border:1px solid rgba(141,203,250,.12)!important;border-radius:12px!important;box-shadow:none!important;color:#a7d9ff!important}
html body .sidebar .nav-btn.active .nav-ic{background:#326a99!important;color:#ecf8ff!important}
html body .sidebar .nav-ic .v312-nav-icon{height:23px;width:23px;display:block}
html body .sidebar .nav-ic img{display:none!important}
/* Stable three-column upgrade layout. The button remains within its column. */
html body #page-upgrader.v302-upgrader .v302-stage{grid-template-columns:minmax(0,1fr) minmax(250px,345px) minmax(0,1fr)!important;gap:16px!important;min-height:390px!important;align-items:stretch!important;background:#285780!important;padding:16px!important;border-radius:21px!important;box-shadow:none!important;border:0!important}
html body #page-upgrader.v302-upgrader .v302-stage>.v302-slot{min-height:350px!important;padding:18px!important;border:1px solid rgba(157,212,250,.12)!important;border-top:1px solid rgba(157,212,250,.12)!important;background:#31628a!important;border-radius:16px!important;box-shadow:none!important}
html body #page-upgrader.v302-upgrader .v302-slot #fromSlot,html body #page-upgrader.v302-upgrader .v302-slot #toSlot{min-height:216px!important;background:#28577e!important;border:0!important;box-shadow:none!important;border-radius:12px!important;margin:10px 0 12px!important}
html body #page-upgrader.v302-upgrader .v302-wheel-card{justify-content:center!important;min-height:350px!important;padding:0 3px!important;overflow:visible!important}
html body #page-upgrader.v302-upgrader .v302-wheel-card .wheel{width:min(100%,310px)!important;max-width:310px!important;aspect-ratio:1!important;margin:0 auto!important}
html body #page-upgrader.v302-upgrader #upgradeBtn{position:relative!important;transform:none!important;inset:auto!important;align-self:center!important;margin:12px auto 0!important;width:min(100%,300px)!important;max-width:300px!important;min-height:46px!important;z-index:2!important}
html body #page-upgrader.v302-upgrader .v302-scroll-pick{position:relative!important;inset:auto!important;transform:none!important;min-height:38px!important;margin:0 auto!important;align-self:center!important;background:#4076a2!important;border:0!important;box-shadow:none!important;border-radius:10px!important;color:#f0f9ff!important;padding:8px 15px!important}
html body #page-upgrader.v302-upgrader .v302-slot .slot-label{color:#fff!important;text-align:left!important;font-size:14px!important}
html body #page-upgrader.v302-upgrader .v302-slot .slot-sub{text-align:left!important;color:#c0d9eb!important}
html body #page-upgrader.v302-upgrader .v302-control-area{display:flex!important;flex-direction:column!important;gap:12px!important;margin-top:12px!important;padding:0!important;background:transparent!important}
html body #page-upgrader.v302-upgrader .v302-toolbar,html body #page-upgrader.v302-upgrader .v302-extra,html body #page-upgrader.v302-upgrader .upgrade-toolbar,html body #page-upgrader.v302-upgrader #presetBar,html body #page-upgrader.v302-upgrader .tools{background:#2c5b83!important;border:0!important;border-radius:15px!important;box-shadow:none!important;margin:0!important}
html body #page-upgrader.v302-upgrader .v302-toolbar{width:100%!important;max-width:none!important;padding:10px!important}
html body #page-upgrader.v302-upgrader .v302-extra{width:100%!important;max-width:none!important;padding:12px!important}
html body #page-upgrader.v302-upgrader .v302-toolbar input,html body #page-upgrader.v302-upgrader .v302-extra input,html body #page-upgrader.v302-upgrader .preset{background:#3c719b!important;border:0!important;border-radius:9px!important;box-shadow:none!important;color:#f7fcff!important}
html body #page-upgrader.v302-upgrader .v302-toolbar [class*="box"],html body #page-upgrader.v302-upgrader .v302-extra [class*="box"]{background:#30628d!important;border:0!important;box-shadow:none!important}
html body #page-upgrader.v302-upgrader .v302-section-heading{margin-top:22px!important}
html body #page-upgrader.v302-upgrader .v302-panels .panel,html body #page-upgrader.v302-upgrader .v302-panels .panel-head{background:#2a557f!important;border:0!important;box-shadow:none!important}
/* Source catalogue and shop: blue glass cards, no game rarity outlines or black image plates */
html body #catalogGrid .car,html body #garageGrid .car,html body #shopGrid .shop-item,html body #page-shop .shop-item,html body #page-upgrader .quality-card-v190{background:#2b5b86!important;border:1px solid rgba(184,220,247,.10)!important;border-left:1px solid rgba(184,220,247,.10)!important;border-top:1px solid rgba(184,220,247,.10)!important;outline:0!important;box-shadow:none!important;border-radius:13px!important;color:#fff!important;opacity:1}
html body #catalogGrid .car .car-img,html body #shopGrid .shop-item .car-img,html body #page-shop .shop-item img{background:transparent!important;border:0!important;box-shadow:none!important}
html body #catalogGrid .car-price,html body #shopGrid .car-price,html body #page-shop .shop-price{display:block!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;color:#b2f3d5!important;padding:0!important;font-size:13px!important;letter-spacing:0!important}
html body #catalogGrid .car.disabled{opacity:.42!important;filter:none!important}
/* Wide modal constrained to viewport, no huge empty offset. */
html body #profileModal .profile-modal-v31{max-width:min(1250px,96vw)!important;width:min(1250px,96vw)!important;max-height:90dvh!important;overflow:auto!important}
html body .modal-layer.open{align-items:center!important;justify-content:center!important}
/* Cases: no magenta rectangular frame */
html body #caseCatalogHomeV215 .case-preview-v214{background:rgba(68,127,170,.24)!important;border:1px solid rgba(184,219,245,.10)!important;border-top:1px solid rgba(184,219,245,.10)!important;border-radius:18px!important;outline:0!important;box-shadow:none!important}
html body #caseCatalogHomeV215 .case-preview-bottom-v214 strong{background:transparent!important;border:0!important;color:#a7f4d4!important;box-shadow:none!important}
@media(max-width:1200px){html body #page-upgrader.v302-upgrader .v302-stage{grid-template-columns:minmax(0,1fr) minmax(240px,300px) minmax(0,1fr)!important;gap:9px!important;padding:10px!important}html body #page-upgrader.v302-upgrader .v302-stage>.v302-slot{padding:12px!important}html body #page-upgrader.v302-upgrader .v302-wheel-card .wheel{width:min(100%,288px)!important}}
@media(max-width:880px){html body #page-upgrader.v302-upgrader .v302-stage{display:grid!important;grid-template-columns:1fr 1fr!important}html body #page-upgrader.v302-upgrader .v302-wheel-card{grid-column:1/-1!important;grid-row:1!important;min-height:320px!important}html body #page-upgrader.v302-upgrader .v302-wheel-card .wheel{max-width:270px!important}html body #page-upgrader.v302-upgrader .v302-stage>.v302-slot{min-height:230px!important}html body #profileModal .profile-modal-v31{width:98vw!important}}
@media(max-width:540px){html body #page-upgrader.v302-upgrader .v302-stage{grid-template-columns:1fr!important;gap:9px!important}html body #page-upgrader.v302-upgrader .v302-stage>.v302-slot{min-height:190px!important}html body #page-upgrader.v302-upgrader .v302-stage>.v302-slot:last-child{grid-row:3!important}html body #page-upgrader.v302-upgrader .v302-wheel-card{grid-row:2!important;min-height:280px!important}html body #page-upgrader.v302-upgrader .v302-toolbar,html body #page-upgrader.v302-upgrader .v302-extra{overflow:auto!important}}
