/* ROUTARGO v19 — shared interface rhythm and dedicated token layout */
:root{--bg:#0a1118;--panel:#111d27;--card:#172630;--line:#ffffff10;--muted:#9bafb9;--accent:#91e3cc}
button,a.primary,a.secondary{border-radius:12px;font-weight:600;letter-spacing:0;box-shadow:none;transition:background .16s,border-color .16s,color .16s,transform .16s}
button{background:#1b2c39;border-color:#ffffff12}
button:hover:not(:disabled){background:#253b49;border-color:#ffffff25;box-shadow:none}
.primary,.accent,.purchase{background:#93e4cd;border-color:transparent;color:#102f29;box-shadow:none}
.primary:hover:not(:disabled),.accent:hover:not(:disabled),.purchase:hover:not(:disabled){background:#a8efdc;border-color:transparent;box-shadow:none}
.secondary{background:#1b2e3a;border-color:#ffffff14;box-shadow:none}
.textbutton{background:transparent;border-color:transparent;box-shadow:none}
button:disabled{opacity:.48}button .icon{flex-shrink:0}a{text-underline-offset:3px}
header{height:82px;gap:20px;background:#0d1821;padding-left:24px;padding-right:24px}
.brand{gap:10px;font-size:17px;letter-spacing:1px;flex-shrink:0}.brandCaption{color:#93a7b3!important;font-size:9px!important;margin-top:6px}
.mark{width:42px!important;height:42px!important;border-radius:10px!important}
.mobileNav{gap:3px;padding:4px;background:#08121a;border-color:#ffffff09;border-radius:14px}
.mobileNav button{font-size:12px;min-height:42px;padding:10px 12px;gap:7px;border-radius:10px;color:#93aab7!important}
.mobileNav button.on{background:#1c343a;color:#b4f3de!important;border-color:#96e3cf14;box-shadow:none}
.mobileNav .navIcon,.mobileNav .navIcon .icon{width:18px;height:18px;flex:none}.mobileNav button .icon{margin:0}
.stats{gap:18px}.stats small{letter-spacing:.7px;color:#88a0ae}.stats #cash{font-size:18px;font-variant-numeric:tabular-nums}.stats strong{font-size:15px}
.guideButton{width:40px;height:40px;min-height:40px;padding:10px;flex:none;background:#162632}
.panel{border-color:#ffffff0c;background:#111e29;box-shadow:0 16px 48px #0003;border-radius:20px;padding:24px}
.panelhead h1{font-size:26px;letter-spacing:-.8px;margin:6px 0 22px}.eyebrow{font-size:10px;color:#89a4b4;letter-spacing:1.25px}
h2{font-size:29px;letter-spacing:-.8px}h3{font-size:18px;letter-spacing:-.3px}
.contract,.fleetcard,.nftCard{border-radius:16px;border-color:#ffffff0d;box-shadow:none}
.fleetActions{gap:8px}.fleetActions button{min-height:48px;font-size:12px;padding:12px}
.marketTabs{gap:6px}.marketTabs button{min-height:46px;font-size:12px;border-radius:10px;box-shadow:none}
.vehicleCategories button{border-radius:12px;min-height:52px;box-shadow:none}.nftBody{padding:22px!important}.nftTitle{gap:12px}.nftTitle h3{font-size:21px!important}.nftCard .primary{min-height:48px;font-size:12px;margin-top:16px}.nftPrice strong{font-size:23px!important;font-variant-numeric:tabular-nums}
.shopIntro h2{margin-top:10px;font-size:30px}.shopIntro p{max-width:570px;line-height:1.6}.shopIntro p+p{color:#91aab6;font-size:12px}.shopIdentity{gap:10px;margin-bottom:18px}.shopIdentity .brandEmblem{width:40px;height:40px}
.shopWallet{gap:16px;align-items:center}.shopWallet .primary{margin:0;width:auto;min-height:46px!important;font-size:12px!important;white-space:nowrap}.shopWallet strong{font-size:24px}.shopWallet small{letter-spacing:.8px}
.tokenActions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}.tokenActions .primary,.tokenActions .secondary{width:100%;margin:0;min-height:46px;padding:12px;line-height:1.4;font-size:12px;border:1px solid #ffffff12;text-decoration:none;display:flex;align-items:center;justify-content:center}.tokenActions .primary{border-color:transparent}.tokenActions .textbutton{grid-column:1/-1;justify-self:start;min-height:32px;padding:4px 0}
.paymentStatus{margin:18px 0;padding:12px 14px;border:1px solid #ffffff0b;border-radius:12px;background:#0d1922}.paymentStatus summary{min-height:24px;font-size:12px;line-height:1.5}.paymentStatus p{font-size:12px;line-height:1.7;color:#9eb2be}
.maptools button{display:grid;place-items:center;width:42px;height:42px;padding:0;border-radius:12px}.maptools button .icon{margin:0}.close{display:grid;place-items:center;font-size:25px;font-weight:400;border-radius:12px}
footer{min-height:40px;padding:6px 24px;border-top:1px solid #ffffff08;background:#0c151e;gap:16px;justify-content:space-between}footer span{font-size:9px;letter-spacing:.6px}footer #reset{min-height:28px;padding:4px 8px;background:transparent;border:0;color:#8b9eab;font-size:10px}
/* The token page has its own components: game CTA styles cannot alter link geometry. */
body[data-view="token"] .panelhead{display:none}
body[data-view="token"] .board{top:24px;bottom:24px;width:min(960px,calc(100% - 48px));padding:32px;background:#101c26;border:1px solid #ffffff0d;border-radius:22px;scrollbar-gutter:stable}
.rt-page{max-width:850px;margin:auto;color:#eaf2f6}
.rt-page h1,.rt-page h2,.rt-page h3,.rt-page p{margin:0}
.rt-hero{display:flex;align-items:center;gap:20px;padding:0 0 28px;position:relative}.rt-hero>img{width:76px;height:76px;object-fit:contain;border-radius:17px;flex:none}.rt-hero h1{display:block;font-size:38px;font-weight:650;line-height:1.15;letter-spacing:-1.4px;margin:5px 0 7px}.rt-hero p{color:#9bb1be;font-size:14px;line-height:1.5}.rt-kicker{font-size:10px;line-height:1.5;font-weight:600;color:#8fa9b8;letter-spacing:1.3px;display:block}.rt-network{margin-left:auto;align-self:flex-start;display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid #ffffff10;border-radius:30px;color:#b6cccf;font-size:11px;white-space:nowrap}.rt-network i{width:6px;height:6px;border-radius:50%;background:#9ae5d0}
.rt-icon{width:19px;height:19px;flex:0 0 19px;display:block;vertical-align:middle}
.rt-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}
.rt-page .rt-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;margin:0;padding:12px 16px;border:1px solid #ffffff15;border-radius:12px;background:#1a2c39;color:#dcebf0;font:600 13px/1.4 Geist,Arial,sans-serif;text-decoration:none;box-shadow:none;cursor:pointer;width:auto;text-align:center}
.rt-page .rt-button>.rt-icon:last-child:not(:first-child){width:16px;height:16px;flex-basis:16px;opacity:.65;margin-left:auto}
.rt-page .rt-button:hover:not(:disabled){background:#263e4a;border-color:#ffffff25;box-shadow:none}
.rt-page .rt-button-primary{background:#94e5ce;border-color:transparent;color:#0c342c}.rt-page .rt-button-primary:hover:not(:disabled){background:#adf0dd;border-color:transparent}
.rt-grid{display:grid;grid-template-columns:.9fr 1.3fr;gap:16px;margin-bottom:16px}.rt-card{background:#142531;border:1px solid #ffffff0b;border-radius:16px;padding:22px;min-width:0}
.rt-supply{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:10px}.rt-supply strong{font:600 clamp(25px,2.3vw,31px)/1.15 Geist,Arial,sans-serif;letter-spacing:-1px;white-space:nowrap;font-variant-numeric:tabular-nums}.rt-ticker{font-size:12px;color:#9fe0cf;letter-spacing:1.5px;font-weight:600}
.rt-contract code{display:block;font:11px/1.9 GeistMono,monospace;color:#bcd0dc;overflow-wrap:anywhere;user-select:all;margin:12px 0 16px}.rt-contract-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.rt-page .rt-button-small{min-height:40px;padding:9px 10px;font-size:11px;gap:7px;white-space:nowrap}.rt-button-small .rt-icon{width:16px;height:16px;flex-basis:16px}
.rt-community,.rt-wallet{margin-bottom:16px}.rt-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.rt-section-title h2{font-size:17px;letter-spacing:-.3px;font-weight:600;line-height:1.35}.rt-section-title>span{color:#829caa;font-size:11px;white-space:nowrap}
.rt-socials{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.rt-social{display:flex;align-items:center;gap:9px;min-height:50px;padding:12px;border:1px solid #ffffff10;border-radius:11px;text-decoration:none;background:#10202b;color:#d6e7ee;font-size:11px;line-height:1.4;font-weight:550;transition:background .16s,border-color .16s}.rt-social:hover{background:#1b3340;border-color:#88d4c52f}.rt-social>.rt-icon:first-child{color:#8ed6c6}.rt-social>.rt-icon:last-child{margin-left:auto;width:14px;height:14px;flex-basis:14px;opacity:.5}
.rt-wallet-row{display:flex;align-items:center;justify-content:space-between;gap:20px}.rt-wallet-row>strong{font-size:28px;line-height:1.3;font-weight:600;letter-spacing:-.5px;overflow-wrap:anywhere;min-width:0;font-variant-numeric:tabular-nums}.rt-wallet-row .rt-button{flex:none;min-width:174px}.rt-wallet-status{font-size:12px;line-height:1.6!important;color:#a0b4bf;overflow-wrap:anywhere;margin-top:14px!important}.rt-wallet-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px}.rt-wallet-foot>span{font-size:11px;color:#7e98a7}.rt-disconnect{min-height:28px;padding:2px 0;border:0;border-radius:0;background:transparent;color:#9dc7c5;font-size:11px;box-shadow:none}.rt-disconnect:hover:not(:disabled){background:transparent;color:#c1eee3}
.rt-economy{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding:10px 4px 0}.rt-currency{display:inline-block;font-size:10px;letter-spacing:1px;font-weight:700;color:#9cdec9;background:#76c8ac10;padding:3px 7px;border-radius:5px}.rt-virtual{color:#a5bdce;background:#90b3d010}.rt-economy h3{font-size:14px;line-height:1.4;letter-spacing:0;margin:9px 0 5px}.rt-economy p{font-size:12px;line-height:1.7;color:#8da5b4}
@media(min-width:761px) and (max-width:1200px){header{gap:12px;padding-left:18px;padding-right:18px}.mobileNav button{padding:9px 8px;font-size:11px;gap:5px}.stats>div:not(:first-child){display:none}.brand{font-size:15px}.brandCaption{font-size:8px!important}.stats #cash{font-size:16px}}
@media(max-width:760px){
 header{height:74px;padding:12px 16px;padding-top:calc(12px + env(safe-area-inset-top));gap:12px}.brand{font-size:15px;gap:8px}.mark{width:36px!important;height:36px!important}.brandCaption{font-size:8px!important;letter-spacing:0!important;margin-top:5px}.stats{margin-left:auto}.stats #cash{font-size:16px}.stats small{font-size:7px;letter-spacing:.3px}.guideButton{width:34px;height:34px;min-height:34px;padding:7px}
 .mobileNav{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:2px;padding:7px 6px calc(7px + env(safe-area-inset-bottom));height:calc(70px + env(safe-area-inset-bottom));border-radius:0;background:#0c1822;border-top:1px solid #ffffff10;box-shadow:none}.mobileNav button{min-height:51px;padding:5px 0;gap:5px;font-size:10px;border-radius:10px;min-width:0}.mobileNav .navIcon,.mobileNav .navIcon .icon{width:20px;height:20px}.mobileNav button.on::before{display:none}.mobileNav button>span:last-child{white-space:nowrap}.mobileNav b{padding:1px 2px;font-size:7px}
 .panel{padding:22px 18px;border-radius:0}.panelhead h1{font-size:25px}.nextGoal{padding:12px 16px}.nextGoal button{min-height:40px}.coach{padding:12px 16px}.coach button{min-height:44px}.shopIntro h2{font-size:28px}.shopWallet{gap:12px;padding:16px}.shopWallet strong{font-size:21px}.shopWallet .primary{font-size:11px!important;padding:10px 12px!important}.nftBody{padding:20px!important}.nftTitle h3{font-size:21px!important}.nftTitle .badge{font-size:9px}.nftPrice strong{font-size:22px!important}.tokenActions .primary,.tokenActions .secondary{font-size:11px}.vehicleCategories button{padding:10px 8px}.marketTabs button{font-size:11px}
 body[data-view="token"] .board{position:relative;top:auto;bottom:auto;left:auto;transform:none;width:100%;padding:24px 18px 30px;border:0;border-radius:0;scrollbar-gutter:auto}
 .rt-hero{gap:14px;padding-bottom:22px;flex-wrap:wrap}.rt-hero>img{width:60px;height:60px;border-radius:13px}.rt-hero h1{font-size:30px;letter-spacing:-1px;margin:4px 0 5px}.rt-hero p{font-size:12px}.rt-kicker{font-size:9px;letter-spacing:1.1px}.rt-network{margin-left:74px;margin-top:-5px;align-self:auto;padding:4px 8px;font-size:10px}.rt-actions{gap:10px;margin-bottom:16px}.rt-page .rt-button{min-height:48px;padding:11px 12px;font-size:12px;gap:8px}.rt-grid{grid-template-columns:1fr;gap:12px;margin-bottom:12px}.rt-card{padding:18px;border-radius:14px}.rt-supply{display:grid;grid-template-columns:1fr auto;gap:8px}.rt-supply>.rt-kicker{grid-column:1/-1}.rt-supply strong{font-size:29px}.rt-ticker{align-self:center}.rt-contract code{font-size:11px;margin:10px 0 14px}.rt-page .rt-button-small{min-height:44px;font-size:11px;padding:10px}.rt-section-title{margin-bottom:14px}.rt-section-title h2{font-size:16px}.rt-section-title>span{font-size:10px}.rt-socials{grid-template-columns:1fr;gap:8px}.rt-social{min-height:48px;padding:12px;font-size:12px}.rt-social>.rt-icon:first-child{margin-right:3px}.rt-community,.rt-wallet{margin-bottom:12px}.rt-wallet-row{flex-wrap:wrap;gap:16px}.rt-wallet-row>strong{font-size:27px}.rt-wallet-row .rt-button{width:100%;min-width:0}.rt-wallet-foot{flex-wrap:wrap}.rt-wallet-status{font-size:11px}.rt-wallet-foot>span{font-size:10px}.rt-economy{gap:20px;padding:10px 0 0}.rt-economy p{font-size:11px}.rt-economy h3{font-size:13px}
}
@media(max-width:360px){header{gap:8px;padding-left:12px;padding-right:12px}.brand{font-size:13px}.mark{width:32px!important;height:32px!important}.brandCaption{font-size:7px!important}.stats #cash{font-size:14px}.guideButton{width:30px;height:32px;min-height:32px}.mobileNav button{font-size:9px}.rt-hero h1{font-size:28px}.rt-supply strong{font-size:26px}.rt-economy{grid-template-columns:1fr;gap:16px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
