/* HARUNA V5.49 / TUNE SHOP — real CSS, not flattened image. White × gunmetal. */
#harunaTuneShopV549{position:fixed;inset:0;z-index:2147482300;display:none;align-items:center;justify-content:center;padding:8px;box-sizing:border-box;background:rgba(2,6,13,.95);font-family:Arial,"Noto Sans JP","Yu Gothic",Meiryo,sans-serif;color:#1d2c35}
#harunaTuneShopV549.show{display:flex}
#harunaTuneShopV549 *{box-sizing:border-box}
#harunaTuneShopV549 .tsPanel{width:min(96vw,calc((96vh - 57px) * 16 / 9));max-height:98vh;display:flex;flex-direction:column;min-width:0;background:#f9fbfc;border:1px solid #a0b0bc;box-shadow:0 20px 80px #000c;overflow:hidden}
#harunaTuneShopV549 .tsScreen{position:relative;aspect-ratio:16/9;width:100%;flex-shrink:0;container-type:inline-size;overflow:hidden;background:linear-gradient(128deg,#edf0f2 0%,#ffffff 37%,#dce2e5 78%,#f5f6f7 100%)}
#harunaTuneShopV549 .tsBackground{position:absolute;inset:0;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 10% 10%,#ffffffa0,transparent 55%),linear-gradient(130deg,#f3f6f7,#ffffff 48%,#d9dfe2)}
#harunaTuneShopV549 .tsBackground:before{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 45%,#697b8433 58%,transparent 65%),repeating-linear-gradient(120deg,transparent 0 5cqw,#cad3d840 5.1cqw 5.2cqw,transparent 5.3cqw 8cqw)}
#harunaTuneShopV549 .tsWall{position:absolute;inset:-14% -22%;display:flex;flex-direction:column;justify-content:space-around;white-space:nowrap;transform:rotate(-8deg) skewX(-8deg);opacity:.88}
#harunaTuneShopV549 .tsWallLine{color:transparent;-webkit-text-stroke:.14cqw #4a535b;font-family:Impact,"Arial Black",sans-serif;font-weight:900;font-style:italic;letter-spacing:.015em;font-size:7.3cqw;line-height:1.08;text-shadow:none;white-space:nowrap;word-spacing:.16em}
#harunaTuneShopV549 .tsWallLine:nth-child(even){transform:translateX(-15cqw)}
#harunaTuneShopV549 .tsWallLine:nth-child(3n){transform:translateX(-30cqw)}
#harunaTuneShopV549 .tsWallLine:nth-child(5n){transform:translateX(3cqw)}
#harunaTuneShopV549 .tsForeground{position:absolute;inset:0;padding:1.7% 2.3% 1.9%;display:flex;flex-direction:column;gap:1.25cqw}
#harunaTuneShopV549 .tsHead{display:flex;align-items:flex-end;justify-content:space-between;gap:2cqw;min-height:16.5%;flex-shrink:0;position:relative}
#harunaTuneShopV549 .tsHead:after{content:"";height:.21cqw;position:absolute;left:0;right:0;bottom:0;background:linear-gradient(90deg,#17252d,#84939c,#bac7cb)}
#harunaTuneShopV549 .tsMicro{display:flex;align-items:center;gap:1cqw;font:900 1.1cqw/1.2 Arial,sans-serif;letter-spacing:.13em;color:#1c292f}
#harunaTuneShopV549 .tsMicro span{font-weight:500;letter-spacing:.1em;color:#4c626c}
#harunaTuneShopV549 .tsTitleArea h2{font-family:Impact,"Arial Black",sans-serif;font-size:7.5cqw;line-height:.95;font-style:italic;letter-spacing:.015em;margin:.45cqw 0 0;background:linear-gradient(95deg,#121e24,#6e7d85);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:.18cqw .24cqw 0 #7a89951f}
#harunaTuneShopV549 .tsTitleArea p{font-size:1.21cqw;font-weight:900;letter-spacing:.03em;margin:.28cqw 0 .65cqw;color:#283e47}
#harunaTuneShopV549 .tsWallet{min-width:25%;background:linear-gradient(135deg,#202c33,#414e56 75%,#182229);border-radius:1cqw 1cqw 0 0;padding:1.3cqw 2cqw .9cqw;text-align:right;color:#fff;box-shadow:0 .3cqw .7cqw #0a151944;border:1px solid #6d7f88;border-bottom:0}
#harunaTuneShopV549 .tsWallet>span{display:block;font-size:1.08cqw;letter-spacing:.07em;color:#c6d8e1;font-weight:800}
#harunaTuneShopV549 .tsWallet strong{font:bold 4.25cqw/1.03 Arial,sans-serif;color:#a8ecfc;letter-spacing:-.05em;font-variant-numeric:tabular-nums}
#harunaTuneShopV549 .tsWallet>small{font-size:1.35cqw;font-weight:900;color:#ddf6ff;margin-left:.7cqw}
#harunaTuneShopV549 .tsLayout{flex:1;min-height:0;display:grid;grid-template-columns:42% 1fr;gap:1.45cqw}
#harunaTuneShopV549 .tsCarCard,#harunaTuneShopV549 .tsTuningCard{position:relative;min-width:0;overflow:hidden;border:1px solid #a7b7be;border-top:.34cqw solid #2b3c46;border-radius:.45cqw;background:linear-gradient(145deg,#fffffff0,#eef2f3f1);box-shadow:0 .5cqw 1.3cqw #57646d33;display:flex;flex-direction:column;padding:1.1cqw 1.25cqw;gap:.75cqw}
#harunaTuneShopV549 .tsSectionHead{font-family:Impact,"Arial Black",Arial,sans-serif;font-style:italic;font-weight:900;font-size:2cqw;color:#263942;letter-spacing:.03em;padding-bottom:.55cqw;border-bottom:1px solid #9baab1;display:flex;align-items:baseline;gap:.8cqw;white-space:nowrap}
#harunaTuneShopV549 .tsSectionHead>b{font:900 1.5cqw Arial,sans-serif;color:#8b9da5}
#harunaTuneShopV549 .tsSectionHead>small{font-style:normal;font-size:1.05cqw;color:#596973;font-family:Arial,"Yu Gothic",sans-serif;letter-spacing:0;margin-left:auto;overflow:hidden;text-overflow:ellipsis}
#harunaTuneShopV549 #tsCarSelect{appearance:auto;width:100%;height:3.7cqw;flex-shrink:0;font:900 1.6cqw Arial,"Yu Gothic",sans-serif;border:1px solid #879da8;border-radius:.3cqw;color:#162931;background:linear-gradient(#fff,#eff4f7);padding:0 .8cqw;cursor:pointer}
#harunaTuneShopV549 .tsVehicleHero{position:relative;margin:0;flex:1;min-height:0;display:flex;align-items:center;justify-content:center;background:#190b0be0;border:1px solid #a9b2b9;overflow:hidden}
#harunaTuneShopV549 .tsVehicleHero img{width:100%;height:100%;object-fit:contain;object-position:center;display:block}
#harunaTuneShopV549 .tsVehicleHero figcaption{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;align-items:center;gap:.5cqw;background:linear-gradient(90deg,#18242ff0,#18242fbb);color:#fff;padding:.55cqw 1cqw;font-size:1.5cqw;font-weight:900}
#harunaTuneShopV549 .tsVehicleHero figcaption span{font-size:1.1cqw;letter-spacing:.08em;color:#bfe5f5}
#harunaTuneShopV549 .tsShopPartner{flex-shrink:0;min-height:12.7cqw;background:linear-gradient(145deg,#1a262f,#495761);border-left:.55cqw solid #bcd5dc;color:#f7faff;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;padding:1cqw 1.35cqw;gap:.7cqw}
#harunaTuneShopV549 .tsPartnerTop>span{display:block;font-size:.91cqw;letter-spacing:.08em;color:#c6d6df;font-weight:900;margin-bottom:.5cqw}
#harunaTuneShopV549 .tsPartnerTop>strong{display:block;font-size:2.3cqw;font-style:italic;letter-spacing:-.06em;white-space:nowrap}
#harunaTuneShopV549 .tsPartnerTop strong>span{color:#9bd9f5}
#harunaTuneShopV549 .tsShopPartner address{font-style:normal;font-size:1.02cqw;line-height:1.55;font-weight:700;color:#e6f1f5;white-space:nowrap}
#harunaTuneShopV549 .tsShopPartner address a{color:#b4edff;text-underline-offset:.2cqw}
#harunaTuneShopV549 .tsTuningCard{gap:0;padding:1.1cqw 1.45cqw}
#harunaTuneShopV549 .tsTuneLegend{height:4.15cqw;display:flex;align-items:center;gap:1.6cqw;border-bottom:1px solid #c1cbd0;flex-shrink:0}
#harunaTuneShopV549 .tsTuneLegend span{display:flex;align-items:center;font-size:1.2cqw;font-weight:800;color:#3e5058;gap:.5cqw}
#harunaTuneShopV549 .tsTuneLegend span i{width:1.5cqw;height:1cqw;border-radius:.15cqw;display:block;background:linear-gradient(#c9faff,#40bff4);border:1px solid #1397ce}
#harunaTuneShopV549 .tsTuneLegend span:nth-child(2) i{background:linear-gradient(#ff8994,#de3549);border-color:#ab1527}
#harunaTuneShopV549 .tsTuneLegend>small{margin-left:auto;font-size:1.05cqw;font-weight:900;color:#73818a;white-space:nowrap}
#harunaTuneShopV549 .tsTuneRows{display:flex;flex:1;min-height:0;flex-direction:column}
#harunaTuneShopV549 .tsTuneRow{flex:1;min-height:0;display:grid;grid-template-columns:21% minmax(0,1fr) 10% 26%;gap:.85cqw;align-items:center;border-bottom:1px solid #b9c7cf}
#harunaTuneShopV549 .tsTuneRow:last-child{border-bottom:0}
#harunaTuneShopV549 .tsStatLabel{font:900 1.2cqw/1.3 Arial,sans-serif;color:#253742;min-width:0;white-space:nowrap;letter-spacing:-.04em}
#harunaTuneShopV549 .tsStatLabel small{display:block;font-family:"Yu Gothic",Arial,sans-serif;font-size:1.09cqw;color:#667881;margin-top:.32cqw;letter-spacing:0}
#harunaTuneShopV549 .tsGauge{display:flex;gap:.24cqw;align-items:center;min-width:0}
#harunaTuneShopV549 .tsGauge i{flex:1;min-width:0;height:2.1cqw;display:block;transform:skewX(-12deg);border-radius:.1cqw;background:#c4cfd5;border:1px solid #8b9da6}
#harunaTuneShopV549 .tsGauge i.active.low{background:linear-gradient(135deg,#aff3ff,#1cb0e8);border-color:#1098d0}
#harunaTuneShopV549 .tsGauge i.active.high{background:linear-gradient(135deg,#ff9d9d,#d82d49);border-color:#bc1e3a}
#harunaTuneShopV549 .tsTuneRow>strong{white-space:nowrap;text-align:center;font-size:1.55cqw;letter-spacing:-.04em}
#harunaTuneShopV549 .tsTuneRow>button{border:1px solid #647881;border-radius:.45cqw;color:#fff;background:linear-gradient(#4c6069,#1a2a35);font-weight:900;font-size:1.28cqw;white-space:nowrap;min-height:4.4cqw;cursor:pointer;box-shadow:0 .16cqw .3cqw #73869077}
#harunaTuneShopV549 .tsTuneRow>button:disabled{cursor:not-allowed;background:linear-gradient(#ced6da,#8a989f);border-color:#bcc7cc;color:#43515a;box-shadow:none}
#harunaTuneShopV549 .tsFinePrint{min-height:9.3cqw;padding:1.05cqw 1.2cqw;border-top:.2cqw solid #98a9b2;background:#e5eceff0;display:flex;flex-direction:column;justify-content:center;gap:.65cqw;font-size:1.15cqw;line-height:1.43;color:#51636e;flex-shrink:0}
#harunaTuneShopV549 .tsFinePrint b{font-size:1.35cqw;color:#213640}
#harunaTuneShopV549 .tsFooter{flex-shrink:0;min-height:52px;display:flex;align-items:center;gap:15px;justify-content:space-between;padding:7px 13px 7px 18px;background:linear-gradient(90deg,#1c2a34,#364953 60%,#121b24);color:#d7edf5;border-top:2px solid #728b96}
#harunaTuneShopV549 .tsFooter>span{font-size:12px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
#harunaTuneShopV549 #tsClose{width:min(27%,270px);min-width:108px;padding:9px 12px;border-radius:4px;border:1px solid #c9e3e9;background:linear-gradient(#eef7fa,#bccdd5);color:#142832;font-weight:900;font-size:14px;cursor:pointer}
#harunaTuneShopV549 button:focus-visible,#harunaTuneShopV549 select:focus-visible{outline:3px solid #1597e8;outline-offset:2px}
#harunaTuneShopV549 .tsConfirm{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#132028c9;z-index:10;padding:12px}
#harunaTuneShopV549 .tsConfirm[hidden]{display:none}
#harunaTuneShopV549 .tsConfirmCard{background:linear-gradient(140deg,#f9fcfe,#dde7ec);border:3px solid #273e49;color:#1c2d36;max-width:min(92vw,540px);width:100%;padding:25px;box-shadow:0 20px 60px #07131fc9}
#harunaTuneShopV549 .tsConfirmHead{font:900 24px Impact,Arial,sans-serif;letter-spacing:.04em;border-bottom:2px solid #8299a4;padding-bottom:11px}
#harunaTuneShopV549 .tsConfirmHead small{display:block;font:700 13px Arial,"Yu Gothic",sans-serif;margin-top:2px;color:#637781}
#harunaTuneShopV549 .tsConfirmCard h3{font:900 22px Arial,sans-serif;margin:18px 0 3px}
#harunaTuneShopV549 .tsConfirmCard>p{color:#57707b;font-weight:700;margin:0 0 15px}
#harunaTuneShopV549 .tsCostLine{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #b2c3cb;padding:11px 0;font-size:14px}
#harunaTuneShopV549 .tsCostLine strong{font-size:33px;color:#194c60;font-variant-numeric:tabular-nums}
#harunaTuneShopV549 .tsCostLine b{font-size:20px}
#harunaTuneShopV549 .tsConfirmButtons{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
#harunaTuneShopV549 .tsConfirmButtons button{padding:12px 10px;font:900 16px Arial,sans-serif;border:1px solid #617580;border-radius:4px;cursor:pointer;background:#dae5e9;color:#20313a}
#harunaTuneShopV549 .tsConfirmButtons button:last-child{background:linear-gradient(#3f697c,#182f40);border-color:#0c3347;color:#fff}
#harunaTuneShopV549 .tsConfirmButtons button:disabled{opacity:.45;cursor:wait}
#harunaTuneShopV549 .tsConfirmMessage{font-size:13px;color:#a13839!important;line-height:1.4;min-height:18px;margin:12px 0 0!important}
/* mobile: preserve playability without relying on canvas or screenshot layers */
@media(max-width:720px){
 #harunaTuneShopV549{padding:2px}
 #harunaTuneShopV549 .tsPanel{width:100%;max-height:100vh}
 #harunaTuneShopV549 .tsFooter{min-height:39px;padding:4px 8px;gap:6px}
 #harunaTuneShopV549 .tsFooter>span{font-size:9px}
 #harunaTuneShopV549 #tsClose{padding:6px;min-width:68px;font-size:10px}
 #harunaTuneShopV549 .tsShopPartner{min-height:12.7cqw}
}
@media(orientation:portrait){
 #harunaTuneShopV549 .tsPanel{max-width:700px;width:99vw;height:min(98vh,1100px);max-height:98vh}
 #harunaTuneShopV549 .tsScreen{aspect-ratio:auto;flex:1 1 auto;height:auto;min-height:0}
 #harunaTuneShopV549 .tsForeground{overflow-y:auto;display:block;padding:4.2% 4.2% 2.7%}
 #harunaTuneShopV549 .tsHead{height:auto;min-height:0;padding-bottom:14px;gap:5px}
 #harunaTuneShopV549 .tsTitleArea h2{font-size:12cqw}
 #harunaTuneShopV549 .tsTitleArea p{font-size:2.6cqw}
 #harunaTuneShopV549 .tsMicro{font-size:1.7cqw}
 #harunaTuneShopV549 .tsWallet{min-width:28%;padding:2.5cqw}
 #harunaTuneShopV549 .tsWallet>span{font-size:1.75cqw}
 #harunaTuneShopV549 .tsWallet strong{font-size:6.5cqw}
 #harunaTuneShopV549 .tsWallet small{font-size:2.3cqw}
 #harunaTuneShopV549 .tsLayout{display:flex;flex-direction:column;gap:2.6cqw;margin-top:3cqw}
 #harunaTuneShopV549 .tsCarCard,#harunaTuneShopV549 .tsTuningCard{padding:2.5cqw 3cqw;gap:1.3cqw}
 #harunaTuneShopV549 .tsSectionHead{font-size:4cqw}
 #harunaTuneShopV549 .tsSectionHead b{font-size:2.7cqw}
 #harunaTuneShopV549 .tsSectionHead small{font-size:2cqw}
 #harunaTuneShopV549 #tsCarSelect{height:9cqw;font-size:3.3cqw}
 #harunaTuneShopV549 .tsVehicleHero{height:44cqw;flex:auto}
 #harunaTuneShopV549 .tsVehicleHero figcaption{font-size:3cqw}
 #harunaTuneShopV549 .tsVehicleHero figcaption span{font-size:2.4cqw}
 #harunaTuneShopV549 .tsShopPartner{min-height:20cqw;padding:2cqw}
 #harunaTuneShopV549 .tsPartnerTop>span{font-size:1.8cqw}
 #harunaTuneShopV549 .tsPartnerTop>strong{font-size:4.1cqw}
 #harunaTuneShopV549 .tsShopPartner address{font-size:1.75cqw}
 #harunaTuneShopV549 .tsTuneLegend{height:8cqw}
 #harunaTuneShopV549 .tsTuneLegend span{font-size:2.2cqw}
 #harunaTuneShopV549 .tsTuneLegend span i{width:3cqw;height:2cqw}
 #harunaTuneShopV549 .tsTuneLegend>small{font-size:1.6cqw}
 #harunaTuneShopV549 .tsTuneRow{height:14cqw;flex:auto;grid-template-columns:23% minmax(0,1fr) 12% 27%;gap:1cqw}
 #harunaTuneShopV549 .tsStatLabel{font-size:2cqw}
 #harunaTuneShopV549 .tsStatLabel small{font-size:1.8cqw}
 #harunaTuneShopV549 .tsGauge i{height:3.2cqw}
 #harunaTuneShopV549 .tsTuneRow>strong{font-size:2.5cqw}
 #harunaTuneShopV549 .tsTuneRow>button{min-height:8.5cqw;font-size:2.2cqw}
 #harunaTuneShopV549 .tsFinePrint{padding:2cqw;min-height:18cqw;font-size:2cqw}
 #harunaTuneShopV549 .tsFinePrint b{font-size:2.3cqw}
}

/* V5.50 — YELLOW × BLACK. Background, title typography and cards are pure CSS. */
#harunaTuneShopV549{background:#070707;color:#111}
#harunaTuneShopV549 .tsPanel{background:#ffdb00;border:2px solid #080808;box-shadow:0 20px 80px #000e}
#harunaTuneShopV549 .tsScreen{background:#ffdc00}
#harunaTuneShopV549 .tsBackground{background:#ffdc00}
#harunaTuneShopV549 .tsBackground:before{background:none}
#harunaTuneShopV549 .tsWall{opacity:.25}
#harunaTuneShopV549 .tsWallLine{-webkit-text-stroke:.17cqw #060606;color:transparent}
#harunaTuneShopV549 .tsHead:after{background:#090909;height:.28cqw}
#harunaTuneShopV549 .tsMicro,#harunaTuneShopV549 .tsMicro span,#harunaTuneShopV549 .tsTitleArea p{color:#101010}
#harunaTuneShopV549 .tsTitleArea h2{background:none;color:#080808;-webkit-background-clip:initial;background-clip:initial;text-shadow:.15cqw .22cqw 0 #fff2a0b8}
#harunaTuneShopV549 .tsWallet{background:#0d0d0d;border-color:#222;box-shadow:.25cqw .3cqw 0 #09090933;color:#ffdb00}
#harunaTuneShopV549 .tsWallet>span{color:#f7e9a1}
#harunaTuneShopV549 .tsWallet strong{color:#ffdb00}
#harunaTuneShopV549 .tsWallet>small{color:#ffdb00}
#harunaTuneShopV549 .tsCarCard,#harunaTuneShopV549 .tsTuningCard{background:linear-gradient(160deg,#fffbeaef,#fff7d9f2);border:2px solid #101010;border-top:.45cqw solid #101010;box-shadow:.5cqw .55cqw 0 #08080866}
#harunaTuneShopV549 .tsSectionHead{color:#0b0b0b;border-bottom:2px solid #151515}
#harunaTuneShopV549 .tsSectionHead b{color:#131313}
#harunaTuneShopV549 .tsSectionHead small{color:#42412e}
#harunaTuneShopV549 #tsCarSelect{background:#101010;color:#ffe000;border:1px solid #111}
#harunaTuneShopV549 .tsVehicleHero{border:2px solid #101010}
#harunaTuneShopV549 .tsVehicleHero figcaption{background:#0c0c0ceb;color:#ffe000}
#harunaTuneShopV549 .tsVehicleHero figcaption span{color:#fff4a0}
/* Partner photo and legal/contact details, kept separate from the game car photo. */
#harunaTuneShopV549 .tsShopPartner{flex-shrink:0;height:13.2cqw;min-height:0;display:grid;grid-template-columns:51% minmax(0,1fr);padding:0;gap:0;background:#0b0b0b;border:2px solid #101010;color:#fff;overflow:hidden}
#harunaTuneShopV549 .tsPartnerMedia{min-width:0;min-height:0;overflow:hidden;border-right:2px solid #ffdb00;background:#262626}
#harunaTuneShopV549 .tsPartnerMedia img{display:block;width:100%;height:100%;object-fit:cover;object-position:51% 62%}
#harunaTuneShopV549 .tsPartnerInfo{min-width:0;padding:.9cqw .8cqw;display:flex;flex-direction:column;justify-content:space-between;gap:.35cqw}
#harunaTuneShopV549 .tsPartnerTop>span{font-size:.84cqw;color:#f5d500;margin-bottom:.2cqw;letter-spacing:.035em}
#harunaTuneShopV549 .tsPartnerTop>strong{font-size:2.1cqw;color:#fff;line-height:1}
#harunaTuneShopV549 .tsPartnerTop strong>span{color:#ffdc00}
#harunaTuneShopV549 .tsShopPartner address{font-size:.99cqw;line-height:1.4;color:#f2f2f2;letter-spacing:-.02em}
#harunaTuneShopV549 .tsShopPartner address a{color:#ffe000;text-decoration-thickness:1px}
#harunaTuneShopV549 .tsTuneLegend{border-color:#323232}
#harunaTuneShopV549 .tsTuneLegend span{color:#252525}
#harunaTuneShopV549 .tsTuneLegend>small{color:#333}
#harunaTuneShopV549 .tsTuneRow{border-color:#777665}
#harunaTuneShopV549 .tsStatLabel{color:#131313}
#harunaTuneShopV549 .tsStatLabel small{color:#3d3d3d}
#harunaTuneShopV549 .tsGauge i{background:#9fa1a0;border-color:#747474}
#harunaTuneShopV549 .tsTuneRow>button{color:#ffdf00;border-color:#0b0b0b;background:#111;box-shadow:0 .2cqw .2cqw #a18d2288}
#harunaTuneShopV549 .tsTuneRow>button:disabled{background:#b1b1ac;border-color:#8e8e8a;color:#42423c;box-shadow:none}
#harunaTuneShopV549 .tsFinePrint{background:#fff0a9;border-top:2px solid #151515;color:#333}
#harunaTuneShopV549 .tsFinePrint b{color:#131313}
#harunaTuneShopV549 .tsFooter{background:#0b0b0b;border-top:3px solid #ffd800;color:#ffe781}
#harunaTuneShopV549 #tsClose{background:#ffdb00;border:1px solid #fcdf2a;color:#0b0b0b}
#harunaTuneShopV549 button:focus-visible,#harunaTuneShopV549 select:focus-visible{outline:3px solid #ffb000}
#harunaTuneShopV549 .tsConfirm{background:#090909da}
#harunaTuneShopV549 .tsConfirmCard{background:#fff6c2;border:3px solid #151515;color:#101010}
#harunaTuneShopV549 .tsConfirmHead{border-color:#090909}
#harunaTuneShopV549 .tsCostLine{border-color:#88805a}
#harunaTuneShopV549 .tsCostLine strong{color:#111}
#harunaTuneShopV549 .tsConfirmButtons button{border-color:#0f0f0f;background:#e2deb9;color:#131313}
#harunaTuneShopV549 .tsConfirmButtons button:last-child{background:#101010;border-color:#101010;color:#ffe000}
@media(orientation:portrait){
 #harunaTuneShopV549 .tsTitleArea h2{font-size:8.7cqw;white-space:nowrap}
 #harunaTuneShopV549 .tsShopPartner{height:auto;min-height:26cqw;grid-template-columns:47% 1fr}
 #harunaTuneShopV549 .tsPartnerInfo{padding:1.4cqw 1.5cqw;gap:1.5cqw}
 #harunaTuneShopV549 .tsPartnerTop>span{font-size:1.65cqw}
 #harunaTuneShopV549 .tsPartnerTop>strong{font-size:3.9cqw}
 #harunaTuneShopV549 .tsShopPartner address{font-size:1.85cqw;line-height:1.55}
}

/* V5.50 FINAL: User-selected YELLOW × BLACK, including ALL SHOP TEXT. */
#harunaTuneShopV549 .tsWallet{background:#ffe365;border:2px solid #111;color:#080808}
#harunaTuneShopV549 .tsWallet>span,#harunaTuneShopV549 .tsWallet strong,#harunaTuneShopV549 .tsWallet>small{color:#080808}
#harunaTuneShopV549 #tsCarSelect{background:#fff0a7;color:#090909;border:2px solid #111}
#harunaTuneShopV549 .tsVehicleHero figcaption{background:#ffdb00;color:#080808}
#harunaTuneShopV549 .tsVehicleHero figcaption span{color:#080808}
#harunaTuneShopV549 .tsShopPartner{background:#ffec90;color:#080808}
#harunaTuneShopV549 .tsPartnerMedia{border-right:2px solid #111}
#harunaTuneShopV549 .tsPartnerInfo{background:#ffed9b}
#harunaTuneShopV549 .tsPartnerTop>span,#harunaTuneShopV549 .tsPartnerTop>strong,#harunaTuneShopV549 .tsPartnerTop strong>span,#harunaTuneShopV549 .tsShopPartner address,#harunaTuneShopV549 .tsShopPartner address a{color:#090909}
#harunaTuneShopV549 .tsTuneRow>button{background:#ffd500;color:#070707;border:2px solid #111}
#harunaTuneShopV549 .tsTuneRow>button:disabled{background:#ded39d;color:#4b452b}
#harunaTuneShopV549 .tsFooter{background:#ffd500;color:#080808;border-top:3px solid #111}
#harunaTuneShopV549 #tsClose{background:#fff2a6;color:#080808;border:2px solid #111}
#harunaTuneShopV549 .tsConfirmButtons button:last-child{background:#ffd500;color:#080808}

/* V5.158 MOBILE LANDSCAPE TUNE SHOP: scrollable content, permanently accessible BACK footer. */
@media (orientation:landscape) and (max-height:600px){
 #harunaTuneShopV549{padding:4px;overflow:hidden;}
 /* Previous 16:9 panel plus overflow:hidden clipped the footer on short viewports. */
 #harunaTuneShopV549 .tsPanel{
  width:min(98vw,1120px);height:calc(100dvh - 8px);max-height:calc(100dvh - 8px);
  min-height:0;display:flex;flex-direction:column;
 }
 #harunaTuneShopV549 .tsScreen{
  aspect-ratio:auto;flex:1 1 auto;min-height:0;height:auto;
 }
 /* Foreground, not the screen or whole game, owns the phone's vertical gesture. */
 #harunaTuneShopV549 .tsForeground{
  display:block;overflow-y:auto;overflow-x:hidden;min-height:0;
  -webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;
  padding:10px 12px 16px;
 }
 #harunaTuneShopV549 .tsHead{height:auto;min-height:0;flex-shrink:0;padding-bottom:10px;}
 #harunaTuneShopV549 .tsLayout{
  display:grid;grid-template-columns:minmax(0,42fr) minmax(0,58fr);
  flex:none;min-height:0;gap:9px;margin-top:8px;
 }
 #harunaTuneShopV549 .tsCarCard,#harunaTuneShopV549 .tsTuningCard{
  min-height:300px;overflow:visible;
 }
 #harunaTuneShopV549 .tsVehicleHero{flex:1 0 auto;height:clamp(108px,29vh,170px);min-height:108px;}
 #harunaTuneShopV549 .tsTuneRows{flex:0 0 auto;min-height:0;overflow:visible;}
 #harunaTuneShopV549 .tsTuneRow{height:auto;min-height:52px;flex:none;}
 #harunaTuneShopV549 .tsFinePrint{min-height:66px;}
 /* A separate, non-scrolling footer keeps BACK visible even at the bottom of the shop. */
 #harunaTuneShopV549 .tsFooter{
  position:relative;z-index:2;flex:0 0 auto;min-height:50px;
  padding:5px 10px max(5px,env(safe-area-inset-bottom));
 }
 #harunaTuneShopV549 #tsClose{
  display:block;min-width:118px;width:auto;min-height:40px;
  padding:6px 12px;font-size:13px;touch-action:manipulation;
 }
 #harunaTuneShopV549 .tsConfirm{overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;}
 #harunaTuneShopV549 .tsConfirmCard{
  max-height:calc(100dvh - 16px);overflow-y:auto;-webkit-overflow-scrolling:touch;
  padding:12px 14px;
 }
 #harunaTuneShopV549 .tsConfirmHead{font-size:18px;padding-bottom:5px;}
 #harunaTuneShopV549 .tsConfirmCard h3{font-size:17px;margin:7px 0 3px;}
 #harunaTuneShopV549 .tsConfirmCard>p{margin:0 0 8px;}
 #harunaTuneShopV549 .tsCostLine{padding:6px 0;}
 #harunaTuneShopV549 .tsCostLine strong{font-size:23px;}
 #harunaTuneShopV549 .tsConfirmButtons{margin-top:8px;}
}
