/* The ten-region journey and the central dealer table. */
.mg-wallet-row{display:grid;grid-template-columns:230px minmax(0,1fr) 205px;gap:26px;align-items:center;margin-bottom:14px}.mg-wallet>span,.mg-room-rate>span{display:block;font-size:11px;color:var(--mute)}.mg-wallet>strong{display:block;font-size:31px;line-height:1.3;color:#cba25a;letter-spacing:-1px;margin:3px 0}.mg-wallet small,.mg-room-rate small,.mg-money-goal small{display:block;font-size:10px;line-height:1.6;color:var(--mute)}.mg-room-rate{border-left:1px solid var(--line,#ddd);padding-left:22px}.mg-room-rate>strong{display:block;font-size:21px;color:#b89a64;margin:3px 0}.mg-money-goal>div:first-child{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:12px}.mg-money-goal b{color:#bd9b5b;font-size:15px}.mg-money-goal .mg-progress-track{height:6px;margin:9px 0}.matgo-app .mg-money-adventure{padding:17px 18px}.mg-money-adventure .mg-map{display:grid;grid-template-columns:repeat(10,minmax(135px,1fr));gap:7px;overflow-x:auto;scrollbar-width:thin;padding-bottom:8px}.mg-money-adventure .mg-map button{padding:8px 7px;gap:7px}.mg-money-adventure .mg-map b{font-size:11px}.mg-money-adventure .mg-map small{font-size:9px}.mg-money-adventure .mg-stage-seal{width:24px;height:29px;flex-basis:24px;font-size:17px}.mg-roster-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:13px 0 9px}.mg-roster-heading strong{font-size:13px}.mg-roster-heading>span{font-size:10px;color:var(--mute)}.mg-opponent-roster{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.mg-opponent-roster button{display:flex;align-items:center;gap:9px;text-align:left;padding:9px 8px;background:transparent;border:1px solid var(--line,#dfe3e1);border-radius:9px;color:inherit;cursor:pointer;min-width:0}.mg-opponent-roster button>span{min-width:0}.mg-opponent-roster b{display:block;font-size:12px;line-height:1.4}.mg-opponent-roster small{display:block;font-size:10px;color:#b4955e;margin-top:3px}.mg-opponent-roster em{display:block;font-size:9px;color:var(--mute);font-style:normal;margin-top:3px}.mg-opponent-roster .mg-portrait{width:40px;height:44px;border-radius:50%;background:#b49d6e10}.mg-opponent-roster button.mg-opponent-current{border-color:#bd9d61;background:#b49d6e12}.mg-opponent-roster button:disabled{opacity:.45;cursor:default}.mg-rival-id small{font-variant-numeric:tabular-nums}.mg-payout{display:flex;align-items:center;flex-direction:column;gap:5px;padding:15px 10px;margin:14px 0;background:#9d895110;border-radius:9px;color:#7b704d}.mg-payout>strong{font-size:28px;line-height:1.3;letter-spacing:-1px;font-variant-numeric:tabular-nums}.mg-profit>strong{color:#286b43}.mg-loss>strong{color:#ae5144}.mg-payout small{font-size:11px}.mg-payout>span{font-size:12px}.mg-next-funds{font-size:12px!important;color:#876932}.mg-region-intro h2{font-size:24px}.mg-region-intro .mg-travel-story{font-size:13px;text-align:left;line-height:1.8;border-bottom:1px solid #a894642f;padding-bottom:15px}.mg-intro-rival{display:flex;align-items:center;gap:14px;text-align:left;justify-content:center;margin:14px 0}.mg-intro-rival .mg-portrait{width:67px;height:74px}.mg-intro-rival strong{display:block;font-size:16px}.mg-intro-rival span{display:block;font-size:11px;color:#927849;margin-top:5px}.mg-scene-card .mg-rival-quote{font-size:12px;margin:8px 0 15px;color:#6d6048}.mg-stop-value{font-size:13px;color:#6a6d4c;margin:12px 0}.mg-stop-value b{display:block;font-size:25px;color:#2b6b43}.mg-scene-card{max-height:calc(100vh - 170px);overflow-y:auto;scrollbar-width:thin}
/* Twelve stable month positions surround the dealer. Captures never reshuffle them. */
.matgo-app .mg-center{display:block;position:relative;min-height:242px;padding:16px 0;margin:0}.matgo-app .mg-field{position:relative;z-index:1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-rows:98px;align-content:center;align-items:center;justify-items:center;gap:16px 0;width:100%;max-width:none;min-height:210px;margin:0}.matgo-app .mg-field .mg-month-group{position:relative;display:block;width:107px;max-width:100%;height:96px;min-width:0;margin:0}.matgo-app .mg-field .mg-card{position:absolute;left:calc(var(--stack,0)*17px);top:0;width:54px;margin:0;z-index:1}.matgo-app .mg-field .mg-card+.mg-card{margin-left:0}.matgo-app .mg-field .mg-card:hover,.matgo-app .mg-field .mg-card:focus-visible{z-index:5}.mg-dealer{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;width:100px;height:184px;pointer-events:none}.mg-dealer:before{content:'';position:absolute;inset:10px 0 4px;border:1px solid #d4b97727;border-radius:50%;background:radial-gradient(ellipse,#16372466,transparent 70%);z-index:-1}.mg-dealer-label{display:flex;flex-direction:column;align-items:center;font-size:8px;letter-spacing:1.4px;color:#d5c48a99;margin-bottom:9px;line-height:1.4}.mg-dealer-label svg{width:29px;height:22px;margin-bottom:3px;transform-origin:50% 100%}.matgo-app .mg-dealer .mg-pile{align-self:auto;font-size:9px;gap:6px;color:#bed0b7}.matgo-app .mg-dealer .mg-pile>.mg-back{width:51px;height:83px;box-shadow:2px 3px 0 #6f2024,3px 4px 0 #d2bc8a,5px 6px 0 #6f2024,6px 7px 0 #c7ae7a,8px 11px 8px #0005}.matgo-app .mg-dealer .mg-pile>b{font-size:14px;color:#e1cd92;font-variant-numeric:tabular-nums;line-height:1.1;margin-top:3px}.mg-dealing .mg-dealer-label svg{animation:mg-dealer-hand .65s ease-in-out infinite}.mg-dealing:before{border-color:#e6c87966;box-shadow:0 0 18px #dfc26c12}.matgo-app .mg-pending{position:absolute;z-index:4;left:50%;top:50%;bottom:auto;transform:translate(-50%,-50%);width:101px;padding:9px 8px;background:#1a3b2bf5;border-radius:9px}.matgo-app .mg-pending .mg-card{width:49px}.mg-center:has(.mg-pending) .mg-dealer{opacity:.15}.matgo-app .mg-field .mg-month{z-index:6}.mg-board .mg-playerline strong small{font-size:11px;color:#d7c98f}.mg-economy-guide{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}.mg-economy-guide>article{background:var(--card,#fff);border:1px solid var(--line,#ddd);border-radius:13px;padding:22px;line-height:1.8;font-size:12px}.mg-economy-guide h3{font-size:17px;margin:0 0 12px}.mg-economy-guide p{color:var(--mute)}.mg-money-example{font-size:20px;font-weight:850;color:#ba9656;margin:15px 0}.mg-region-table{width:100%;border-collapse:collapse;font-size:11px}.mg-region-table th,.mg-region-table td{padding:7px 5px;border-bottom:1px solid var(--line,#ddd);text-align:left}.mg-region-table th{color:var(--mute);font-weight:500}.mg-region-table td:nth-child(2),.mg-region-table td:nth-child(3){font-variant-numeric:tabular-nums;white-space:nowrap}.mg-economy-guide strong{color:#ad8a49}.mg-travel-story:first-letter{font-size:1.15em}
@keyframes mg-dealer-hand{50%{transform:translateY(-6px) rotate(-10deg)}}
@media(max-width:1100px){.mg-wallet-row{grid-template-columns:190px minmax(0,1fr) 160px;gap:20px}.mg-wallet>strong{font-size:27px}.mg-room-rate{padding-left:15px}.mg-opponent-roster button{gap:6px}.mg-opponent-roster .mg-portrait{width:31px;height:35px}.mg-opponent-roster b{font-size:11px}.mg-opponent-roster small{font-size:9px}.matgo-app .mg-field .mg-card{width:48px;left:calc(var(--stack,0)*13px)}.matgo-app .mg-field .mg-month-group{width:87px;height:81px}.matgo-app .mg-field{grid-auto-rows:87px;gap:14px 0;min-height:188px}.matgo-app .mg-center{min-height:220px}.mg-dealer{width:90px;height:177px}.matgo-app .mg-dealer .mg-pile>.mg-back{width:45px;height:73px}}
@media(max-width:900px){.mg-wallet-row{grid-template-columns:175px minmax(0,1fr);gap:16px}.mg-room-rate{display:none}.mg-opponent-roster{overflow-x:auto;grid-template-columns:repeat(5,minmax(157px,1fr));padding-bottom:5px;scrollbar-width:thin}.mg-opponent-roster .mg-portrait{width:37px;height:42px}.mg-opponent-roster b{font-size:12px}.mg-roster-heading{flex-wrap:wrap;gap:5px}.mg-roster-heading>span{font-size:10px}.matgo-app .mg-field .mg-card{width:53px;left:calc(var(--stack,0)*17px)}.matgo-app .mg-field .mg-month-group{width:105px;height:91px}.matgo-app .mg-field{grid-auto-rows:94px;min-height:206px}.matgo-app .mg-center{min-height:238px}.matgo-app .mg-dealer .mg-pile>.mg-back{width:49px;height:80px}}
@media(max-width:520px){.matgo-app .mg-money-adventure{padding:13px 12px}.mg-wallet-row{grid-template-columns:135px minmax(0,1fr);gap:15px;margin-bottom:12px}.mg-wallet>strong{font-size:25px}.mg-wallet>span,.mg-money-goal>div:first-child{font-size:10px}.mg-wallet small,.mg-money-goal small{font-size:8px}.mg-money-goal>div:first-child{align-items:flex-start;gap:8px}.mg-money-goal>div:first-child>strong{max-width:80px}.mg-money-goal b{font-size:12px;white-space:nowrap}.mg-money-adventure .mg-map{grid-template-columns:repeat(10,133px)}.mg-roster-heading strong{font-size:12px}.mg-roster-heading>span{font-size:9px}.mg-opponent-roster{grid-template-columns:repeat(5,155px)}.mg-opponent-roster button{padding:8px 6px}.matgo-app .mg-center{min-height:187px;padding:14px 0}.matgo-app .mg-field{grid-auto-rows:68px;min-height:157px;gap:20px 0}.matgo-app .mg-field .mg-month-group{width:61px;height:67px}.matgo-app .mg-field .mg-card{width:36px;left:calc(var(--stack,0)*9px)}.matgo-app .mg-field .mg-card+.mg-card{margin-left:0}.matgo-app .mg-field .mg-month{width:14px;height:14px;font-size:9px;line-height:14px;left:-3px;top:-5px}.mg-dealer{width:69px;height:145px}.mg-dealer:before{inset:4px 0}.mg-dealer-label{font-size:6px;letter-spacing:.7px;margin-bottom:6px}.mg-dealer-label svg{width:23px;height:17px}.matgo-app .mg-dealer .mg-pile>.mg-back{width:35px;height:57px}.matgo-app .mg-dealer .mg-pile{font-size:7px;gap:4px}.matgo-app .mg-dealer .mg-pile>b{font-size:11px}.matgo-app .mg-pending{width:74px;padding:7px 5px}.matgo-app .mg-pending small{font-size:8px}.matgo-app .mg-pending .mg-card{width:36px}.mg-board .mg-playerline strong small{font-size:9px}.mg-rival-id small{font-size:8px;line-height:1.5;max-width:150px}.mg-payout>strong{font-size:26px}.mg-region-intro h2{font-size:22px}.mg-region-intro .mg-travel-story{font-size:12px}.mg-intro-rival .mg-portrait{width:54px;height:60px}.mg-intro-rival strong{font-size:14px}.mg-intro-rival span{font-size:10px}.mg-scene-card{max-height:calc(100vh - 145px)}.mg-economy-guide{grid-template-columns:1fr}.mg-economy-guide>article{padding:19px}.mg-region-table{font-size:10px}.mg-region-table th,.mg-region-table td{padding:7px 3px}}
@media(prefers-reduced-motion:reduce){.mg-dealing .mg-dealer-label svg{animation:none}}
.mg-money-adventure .mg-map,.mg-opponent-roster{scrollbar-color:#8e7c52 #17251e}
.mg-map button:focus-visible,.mg-opponent-roster button:focus-visible{outline:2px solid #dbc18a;outline-offset:2px}
.mg-stop-value,.mg-payout,.mg-wallet strong,.mg-room-rate strong{font-variant-numeric:tabular-nums}
@media(min-width:1300px){.mg-money-adventure .mg-map{grid-template-columns:repeat(10,minmax(116px,1fr))}.mg-money-adventure .mg-map b{font-size:10px}.mg-money-adventure .mg-map button{padding-left:5px;padding-right:5px;gap:5px}}
.mg-profile-dialog{max-width:430px;padding:28px;color:var(--text,inherit)}.mg-profile-dialog .mg-kicker{color:#b99a61;font-size:10px}.mg-profile-dialog h2{font-size:24px;line-height:1.4;margin:10px 0 18px}.mg-profile-dialog p{font-size:13px;line-height:1.8;color:var(--mute)}.mg-profile-dialog label{display:block;font-size:13px;font-weight:700;margin-bottom:8px}.mg-profile-dialog input{display:block;width:100%;padding:12px 13px;font:inherit;font-size:17px;border:1px solid #b99a6177;border-radius:8px;background:var(--card,#fff);color:inherit;outline-offset:3px}.mg-profile-dialog input:focus{outline:2px solid #b99a61}.mg-profile-dialog small{display:block;font-size:11px;line-height:1.6;color:var(--mute);margin-top:8px}.mg-profile-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px;flex-wrap:wrap}.mg-profile-actions button{font:inherit;font-size:13px;border:1px solid var(--line,#ccc);border-radius:8px;padding:10px 15px;background:transparent;color:inherit;cursor:pointer}.mg-profile-actions .mg-primary{background:#315d42;color:#fff2d6;border-color:#315d42}.mg-profile-actions .mg-reset-confirm{background:#a24e43;color:#fff;border-color:#a24e43}.mg-profile-dialog #mg-name-error{min-height:0;margin:8px 0;color:#ba6553;font-size:12px}.mg-controls [data-action=profile-reset]{color:#b9796b}.mg-playerline strong{overflow-wrap:anywhere}
