/* Mzansi Hustle Visual Overhaul 72.3 - art-led presentation. Visual only.
   Keeps the old functional markup, action handlers and gameplay/save schema untouched.
   Reference screens are DESIGN inspirations; CSS uses only decorative art crops. */
:root{--mh73-midnight:#071421;--mh73-navy:#0b1c2b;--mh73-ink:#06101b;--mh73-panel:#102534;--mh73-panel-2:#122c3d;--mh73-border:#355366;--mh73-amber:#ffbd4a;--mh73-cream:#fff4dd;--mh73-muted:#b9cdd8;--mh73-cyan:#66cfe3;--mh73-good:#6ee49b;--mh73-scene:url('assets/mh74/scenes/city.webp')}
html{background:var(--mh73-midnight)}
body{background:radial-gradient(ellipse 90% 47% at 80% 0%,#19394c 0%,#071421 70%) fixed!important;color:var(--mh73-cream)!important;font-family:'Segoe UI',Inter,'DM Sans',system-ui,sans-serif!important}
#app,.layout,.main{background:transparent!important}
.sidebar{background:linear-gradient(180deg,#061522,#0a1d2b 60%,#061019)!important;border-right:1px solid #365369!important;box-shadow:10px 0 28px #0005;z-index:8}
.sidebar .brand{color:#fff6da!important;font-family:Impact,'Arial Narrow',system-ui,sans-serif;font-weight:900;letter-spacing:.01em;text-transform:uppercase;font-size:clamp(23px,2vw,31px);filter:drop-shadow(1px 2px 0 #070e18)}
.sidebar .brand b,.sidebar .brand-mark{color:var(--mh73-amber)!important}
.sidebar .edition{color:#c7ad77!important;letter-spacing:.15em!important}
.sidebar .nav button,.sidebar .nav summary,.sidebar .nav-group>button{border-radius:8px!important;transition:background .13s ease,border-color .13s ease!important}
.sidebar .nav button.active,.sidebar .nav summary.active,.sidebar .nav-group[open]>summary{background:linear-gradient(90deg,#604619,#253b43)!important;box-shadow:inset 3px 0 var(--mh73-amber);color:#ffdd92!important}
.sidebar .nav button:hover,.sidebar .nav summary:hover{background:#2b3f51!important;color:#fff!important}
.sidebar .nav button:focus-visible,.sidebar summary:focus-visible{outline:3px solid var(--mh73-amber)!important;outline-offset:2px}
.main{min-width:0!important}
.topbar{background:linear-gradient(90deg,#0b1d2d,#132d3c)!important;border-bottom:1px solid #386171!important;color:#edf7f8!important;box-shadow:0 2px 21px #0009;gap:10px!important}
.wallet,.empire-progress-tab,.topbar .wallet{background:linear-gradient(135deg,#1b3a48,#102532)!important;border:1px solid #506d7d!important;color:#f8f4e7!important;box-shadow:inset 0 1px 0 #f9d08c18!important}
.wallet small,.topbar small,.breadcrumb{color:#bbd1d7!important}
.wallet .money,.coin,.gold .coin{color:#ffc86a!important}
.content{--mh73-accent:var(--mh73-amber);--mh73-scene:url('assets/mh74/scenes/city.webp');background:linear-gradient(180deg,#0b1b28,#0a1826 360px,#071421)!important;color:#f0f4f3!important;min-width:0!important}
.content h1,.content h2,.content h3,.content h4{color:#fff2d5!important;overflow-wrap:anywhere}
.content h1,.mh59-header h1,.mh72-chapter-title,.mh71-garage h1{font-family:Impact,'Arial Narrow','Segoe UI',sans-serif!important;text-transform:uppercase!important;letter-spacing:.035em!important;font-weight:900!important;text-shadow:0 3px 10px #0008}
.content p,.content small,.content .subtitle,.content .muted{color:#c2d3da}
.content .pageheading,.content .mh59-header,.content .mh49-hero{background-image:linear-gradient(90deg,#081622f5 0%,#071521ce 41%,#0b19258a 71%,#08131c55 100%),var(--mh73-scene)!important;background-position:center,center 48%!important;background-size:cover,cover!important;border:1px solid #6c6f65!important;border-left:4px solid var(--mh73-accent)!important;box-shadow:0 13px 32px #0008,inset 0 1px 0 #ffdca02a!important;border-radius:16px!important;padding:22px 25px!important;min-height:136px;color:#f8f4e9!important;overflow:hidden}
.content .pageheading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:19px!important}
.content .pageheading h1{font-size:clamp(28px,3vw,44px)!important}
.content .pageheading .subtitle,.content .mh59-header p{color:#d8e5e6!important;text-shadow:0 2px 6px #061421;max-width:65ch}
.content .mh59-header{min-height:156px!important;padding:25px 27px!important}
.content .mh59-header small{color:#ffd178!important}
.content .mh59-header h1{font-size:clamp(29px,3.2vw,46px)!important}
.content .mh49-hero h1{font-size:clamp(29px,3.5vw,50px)!important}
.content .mh71-garage>header,.content .mh722-gear-hub>header{background-image:linear-gradient(90deg,#071622ea,#07162293),var(--mh73-scene)!important;background-size:cover!important;border:1px solid #6d7566;border-left:4px solid var(--mh73-accent)!important;border-radius:13px!important;padding:20px!important}
.content .sectionheading,.mh59-section-head{border-bottom:1px solid #496173;padding-bottom:8px}
.content .sectionheading h2,.mh59-section-head h2{letter-spacing:.02em;font-family:Impact,'Arial Narrow',system-ui,sans-serif!important;text-transform:uppercase;font-size:clamp(19px,2vw,27px)}
.content .still-scene,.content .hero,.content .event-banner{border:1px solid #4b6174!important;box-shadow:0 12px 28px #0007!important;overflow:hidden!important}
/* Consistent strong, cinematic panels across base and extended game modules. */
.content .business,.content .stat,.content .reward-card,.content .routine-card,.content .collection-info,.content .journal-card,.content .life,.content .mh59-panel,.content .mh59-heist,.content .mh59-story-tile,.content .mh59-chapter,.content .mh722-crew-area,.content .mh722-fishing,.content .mh722-garden,.content .mh722-gear-hub,.content .mh722-gear-inline,.content .mh722-gear-tile,.content .mh71-owned-car,.content .mh64-equipment-card{background:linear-gradient(145deg,#122b3c,#0b1e2d)!important;border-color:#355368!important;color:#f2f7f3!important;box-shadow:0 5px 16px #0005,inset 0 1px 0 #ffffff10!important}
.content .business:hover,.content .reward-card:hover,.content .mh722-gear-tile:hover,.content .mh71-owned-car:hover{border-color:#bd9859!important;box-shadow:0 7px 23px #0009,0 0 0 1px #ffc66950!important}
.content .stat-icon,.content .coin{background:#1d3a42;color:var(--mh73-amber)}
.content .stat strong,.content .earning strong,.content .mh59-stats strong,.content .mh722-up{color:#ffe1a2!important}
.content .mh722-up,.content .mh722-up em,.content [class*="stat-gain"],.content .gain{color:#7ceaa6!important}
.content button.primary,.content .primary,.content .gold-button,.content .mh59-button:not(.mh59-ghost),.content .mh49-cta{background:linear-gradient(180deg,#ffcb61,#eba432)!important;color:#0a1822!important;border:1px solid #ffe4a3!important;border-radius:8px!important;font-weight:800!important;box-shadow:0 2px 0 #7e4c0b!important}
.content button.primary:hover:not(:disabled),.content .primary:hover:not(:disabled),.content .mh59-button:hover:not(:disabled){filter:brightness(1.08)!important;transform:translateY(-1px)}
.content .secondary,.content .filter,.content .mh59-button.mh59-ghost{background:#173447!important;color:#e7f2f4!important;border:1px solid #526b7d!important}
.content .filter.selected,.content .secondary.selected,.content button[aria-pressed=true]{background:#72541e!important;border-color:var(--mh73-amber)!important;color:#fff3d3!important}
.content button:focus-visible,.content a:focus-visible,.content input:focus-visible,.content select:focus-visible,.content textarea:focus-visible{outline:3px solid #ffcc62!important;outline-offset:2px!important}
.content select,.content input:not([type=range]),.content textarea{background:#102635!important;color:#edf6f5!important;border:1px solid #5a7281!important;border-radius:8px!important}
.content progress,.content meter{accent-color:#ffc263!important}
/* Distinct rarity outlines, without changing live ratings, prices or rewards. */
.content .mh722-card-bronze{--card-main:#bf855c}.content .mh722-card-silver{--card-main:#9fc3d4}.content .mh722-card-gold{--card-main:#e9b44e}.content .mh722-card-legendary{--card-main:#ffdf75}.content .mh722-card-special{--card-main:#cc6bfb}
.content .mh722-crew-card{box-shadow:0 12px 22px #0009,inset 0 0 16px #03121d!important;border-width:2px!important;background:linear-gradient(150deg,#182c3e,var(--card-tint),#091c2d)!important}
.content .mh722-crew-portrait{aspect-ratio:1;background:radial-gradient(circle at 50% 25%,#445c5e,#061a29 84%)!important;border:1px solid var(--card-main)!important}
.content .mh722-crew-portrait img{object-fit:cover!important;width:100%!important;height:100%!important;object-position:center 34%!important}
.content .mh722-crew-stats span{background:#071b27ef}
.content .mh722-crew-footer button,.content .mh722-gear-actions button{border:1px solid #dfb466!important;background:linear-gradient(180deg,#2c4d54,#173345)!important;color:#fff5dc!important}
.content .mh722-gear-tile>img{background:radial-gradient(circle,#263c4a,#071624)!important;border:1px solid #416078!important}
.content .mh59-species[class*="mh722-animal-"]{background:linear-gradient(150deg,#152f40,#081b27)!important;border-color:var(--rarity)!important}
.content .mh59-species:hover{box-shadow:0 6px 20px #000a,0 0 0 1px var(--rarity)!important}
/* No stretching on item sprites. Keep scenic hero and portrait deliberate crops. */
.content img[src*="/catalogue/"],.content img[src*="/activity-gear/"],.content img[src*="/wardrobe/"],.content .mh59-item img,.content .mh722-gear-tile img{object-fit:contain!important;object-position:center!important;max-width:100%!important}
.content img[src*="/crew/"]{object-fit:cover!important;object-position:center 32%!important}
.content img{max-width:100%}
.content img[loading="lazy"]{background-color:#071c2a}
/* Preserve keyboard, contrast and reduced-motion accessibility. */
@media(max-width:980px){.content{padding:18px 19px 35px!important}.sidebar{box-shadow:none}.content .mh59-header,.content .pageheading{padding:19px!important;min-height:120px}}
@media(max-width:620px){.content{padding:12px 10px 32px!important}.content .pageheading{min-height:115px!important;padding:16px!important;flex-wrap:wrap}.content .pageheading h1{font-size:28px!important}.content .mh59-header{min-height:120px!important;padding:17px!important}.content .mh722-crew-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.content .mh722-crew-portrait{aspect-ratio:1}.content .mh722-crew-card{padding:7px}.content .mh59-header h1{font-size:29px!important}}
@media(prefers-reduced-motion:reduce){.content button.primary:hover:not(:disabled){transform:none!important}.content .business,.content .reward-card{transition:none!important}}
/* Full-width scene banners remain decorative; functional captions and links remain live. */
.content .still-scene{background:linear-gradient(145deg,#132c3a,#071724)!important;border-color:#557285!important;border-radius:15px!important;color:#f0eee6!important}
.content .still-scene .still-caption{background:linear-gradient(125deg,#152f40,#0a1c2b)!important;color:#eef2ec!important}
.content .still-scene .still-caption h2{font-family:Impact,'Arial Narrow',system-ui,sans-serif!important;text-transform:uppercase;font-size:clamp(23px,2.5vw,34px);letter-spacing:.02em}
.content .still-scene .still-caption p,.content .still-scene .still-caption small{color:#ccdbe0!important}
.content .still-scene .still-destinations{background:#102736!important;color:#e7f3f0!important}
.content .still-scene .still-picture{background:#0b2231!important}
.content .still-scene .mh73-still-img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;display:block!important;filter:brightness(.81) contrast(1.09) saturate(1.04)}
.content .business-img{background:#0c2634!important}
.content .business-img img{transform:none!important;object-fit:contain!important;object-position:center!important;opacity:1!important}
.content .business-img img:hover{transform:none!important}
