/* Module MY Million : styles entièrement isolés du reste de VestiBourse. */
#millionGame{--m-ink:#f4eafe;--m-muted:#b9a6cd;--m-line:#b98ae14a;--m-panel:#231634;--m-violet:#a46dff;--m-gold:#f4c56f;color:var(--m-ink);font-family:Inter,Segoe UI,Arial,sans-serif}
#millionGame *{box-sizing:border-box}#millionGame button{font:inherit;cursor:pointer}#millionGame button:disabled{cursor:not-allowed;opacity:.48}#millionGame button:focus-visible,#millionGame summary:focus-visible{outline:3px solid #71e9ed;outline-offset:3px}
#millionGame .mm-app{position:relative;max-width:1270px;margin:0 auto;padding:8px 28px 34px;overflow:hidden;background:radial-gradient(ellipse at 0 25%,#7630bd30,transparent 32%),radial-gradient(ellipse at 98% 58%,#de368321,transparent 26%),#100a1d;border-radius:20px}
#millionGame .mm-app:before,#millionGame .mm-app:after{content:'✦';position:absolute;color:#8ff0ec;opacity:.4;font-size:27px;text-shadow:0 0 22px #7b3bff;pointer-events:none}#millionGame .mm-app:before{left:14px;top:29%}#millionGame .mm-app:after{right:17px;bottom:14%;color:#ffe5a7}
#millionGame .mm-header{height:76px;display:flex;align-items:center;justify-content:space-between;gap:16px;position:relative;z-index:1}.mm-brand{font-size:28px;font-weight:850;letter-spacing:-1px}.mm-brand>span{font-size:42px;color:#c9a5ff;vertical-align:-4px;margin-right:7px;text-shadow:0 0 25px #8a46ff}.mm-brand>b,.mm-footer>b{color:var(--m-gold)}.mm-save{border:1px solid #9f75c53e;border-radius:30px;background:#211530;padding:9px 13px;color:#ceb9e4;font-size:11px;white-space:nowrap}.mm-save i{display:inline-block;width:7px;height:7px;background:#8de9d7;border-radius:50%;margin-right:7px;box-shadow:0 0 8px #77e6d8}
#millionGame .mm-disclaimer{position:relative;z-index:1;text-align:center;border:1px solid #70548c45;border-radius:12px;padding:11px;background:#20162f;color:#d0bee5;font-size:11px}
#millionGame .mm-hero{position:relative;z-index:1;min-height:330px;margin:20px 0 24px;padding:30px 36px;border:1px solid #af73fc54;border-radius:24px;overflow:hidden;background:linear-gradient(90deg,#231044 0%,#231044 42%,#231044a6 54%,transparent 73%),url('./assets/million-violet.png') right center/auto 124% no-repeat,#1d0d3e;box-shadow:0 12px 60px #00000036,inset 0 1px #d5b1ff1a}.mm-hero-copy{position:relative;z-index:1;width:56%}.mm-hero p,.mm-section-head p,.mm-machine-heading p,.mm-wallet p{font-size:9px;letter-spacing:2px;font-weight:800;color:#cfb3fb;margin:0 0 10px}.mm-hero h1{font-size:39px;line-height:1.1;letter-spacing:-1.5px;margin:0;font-weight:750;text-shadow:0 2px 15px #1a082a}.mm-hero h1 span{color:#ffc96d}.mm-hero-copy small{display:block;margin-top:12px;color:#cbb7dd;font-size:12px}.mm-jackpot{position:absolute;z-index:1;left:36px;bottom:30px}.mm-jackpot p{color:#f3c784;margin-bottom:5px}.mm-jackpot strong{display:block;font-size:47px;letter-spacing:-2px;line-height:1;color:#ffe8aa;text-shadow:0 2px 18px #f2b12f25}.mm-jackpot small{display:block;margin-top:10px;color:#cbbbdf;font-size:11px}
#millionGame .mm-play-layout,#millionGame .mm-insights{position:relative;z-index:1;display:grid;grid-template-columns:1.04fr 1fr;gap:20px}.mm-panel{background:linear-gradient(135deg,#251a39,#1c142c);border:1px solid var(--m-line);border-radius:21px;box-shadow:0 10px 30px #03010728}.mm-ticket{overflow:hidden;padding:27px 28px 0}.mm-section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px}.mm-section-head h2,.mm-machine-heading h2{font-size:23px;letter-spacing:-.7px;margin:0;color:#f4eafe}.mm-section-head p,.mm-machine-heading p{margin-bottom:8px;font-size:8px}.mm-subtle{border:1px solid #ac81ef3d;background:#8d5cd425;color:#e6d4ff;border-radius:12px;padding:10px 14px;font-size:11px;font-weight:750}.mm-subtle:hover{background:#8d5cd444}.mm-pick-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}.mm-pick-label h3{margin:0;font-size:14px;color:#e8daf6}.mm-pick-label h3 span{font-weight:400;color:#baa5cc;margin-left:6px}.mm-pick-label>b{border-radius:7px;padding:4px 8px;background:#9d6ee82b;color:#dec4ff;font-size:11px}.mm-pick-label .mm-gold{background:#d9a6501c;color:#f6d89b}.mm-number-grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:8px}.mm-star-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:6px}.mm-stars-label{margin-top:24px}.mm-choice{aspect-ratio:1;border-radius:50%;border:1px solid #76578e6b;background:linear-gradient(145deg,#37264c,#2b1e3e);box-shadow:inset 0 1px #fff1;color:#e6d7f6;font-weight:700;font-size:12px;transition:transform .18s,background .18s,border .18s}.mm-choice:hover:not(:disabled){transform:translateY(-2px);background:#63408f;border-color:#b984fd}.mm-choice.is-selected{background:linear-gradient(145deg,#bc7cff,#7841e4);border-color:#d7b7ff;color:#fff;box-shadow:0 0 16px #a45fff55,inset 0 1px #eadbff80}.mm-choice-star{background:linear-gradient(140deg,#423349,#38283f);border-color:#ae865b61;color:#f0d1a0;font-size:11px}.mm-choice-star.is-selected{background:linear-gradient(140deg,#ffe3a0,#ecac45);border-color:#ffe3a3;color:#512b21;box-shadow:0 0 15px #e8ac4530}.mm-your-selection{margin-top:24px;padding:20px 0 19px;border-top:1px dashed #a681c343}.mm-your-selection p{font-size:8px;letter-spacing:1.4px;font-weight:800;color:#c6aedb;margin:0 0 11px}.mm-balls{display:flex;align-items:center;justify-content:center;gap:9px;min-height:39px}.mm-your-selection .mm-balls{justify-content:flex-start}.mm-ball{width:39px;height:39px;flex:0 0 39px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#5c3f81,#3e285c);border:1px solid #ac7cdf5c;color:#f3e8ff;font-weight:800;font-size:13px;position:relative}.mm-empty{background:#281c38;border-style:dashed;color:#bba1d3}.mm-star{background:linear-gradient(145deg,#634a48,#483339);border-color:#d9b47d5c;color:#f4d8a5}.mm-star:before{content:'✦';position:absolute;top:1px;font-size:8px;color:#ffd585}.mm-star+.mm-star{margin-left:4px}.mm-hit{background:linear-gradient(135deg,#ad6ff9,#7946d4);border-color:#d7b2ff;color:#fff;box-shadow:0 0 0 3px #bb73ff26,0 0 15px #b164eb6b}.mm-star.mm-hit{background:linear-gradient(135deg,#ffe18d,#e8ae4f);color:#5b3620;border-color:#ffe4a1;box-shadow:0 0 0 3px #efc15c30}.mm-ticket-footer{display:flex;justify-content:space-between;margin:0 -28px;padding:15px 28px;background:#110b1e66;color:#bca9ce;font-size:11px}.mm-ticket-footer strong{color:#dec7f0}
#millionGame .mm-draw-panel{position:relative;overflow:hidden;display:flex;flex-direction:column;padding:27px 28px 20px;border:1px solid #aa6ee753;border-radius:21px;color:#fff;background:radial-gradient(ellipse at 48% 43%,#742cd652,transparent 53%),linear-gradient(150deg,#2c1648,#130d25 80%);box-shadow:0 15px 50px #06020a35,inset 0 1px #d1a5ff16}.mm-machine-heading{display:flex;justify-content:space-between;gap:9px;align-items:flex-start;z-index:1}.mm-machine-heading p{color:#c4a8e0}.mm-audio{display:flex;flex-direction:column;gap:7px;align-items:flex-end}.mm-sound{border:1px solid #b78ed438;border-radius:20px;background:#a673cb14;color:#e6d4f4;padding:7px 10px;font-size:17px}.mm-sound span{font-size:9px;margin-left:3px}.mm-audio label{font-size:10px;color:#cbb3e0;display:flex;align-items:center;gap:7px}.mm-audio input{width:78px;accent-color:#bf8aff}.mm-mobile-selection{display:none}.mm-machine-stage{height:360px;min-height:320px;position:relative;display:flex;justify-content:center;align-items:center;margin:0 -10px}.mm-machine-stage canvas{position:relative;z-index:1;width:100%;height:100%;object-fit:contain}.mm-machine-halo{position:absolute;width:280px;height:230px;border-radius:50%;background:#ca63ff45;filter:blur(58px)}.mm-status{display:flex;justify-content:center;align-items:center;gap:7px;margin:0 0 5px;color:#d4c2e7;font-size:11px;min-height:18px}.mm-status i{width:6px;height:6px;border-radius:50%;background:#bd95ea}.mm-status i.is-active{background:#73eadf;box-shadow:0 0 9px #73eadf;animation:mm-pulse 1s infinite}.mm-drawn{padding:12px 6px;margin-bottom:17px;border:1px solid #b081e44d;border-radius:11px 11px 25px 25px;background:linear-gradient(180deg,#be8fe908,#a879e326);box-shadow:inset 0 -4px 9px #b583e715}.mm-drawn .mm-ball{background:linear-gradient(135deg,#f8e9ff,#c9a7ed);border-color:#d4adf8;color:#462763}.mm-drawn .mm-star{background:linear-gradient(135deg,#ffeeb6,#f1b450);border-color:#f3d097;color:#633e19}.mm-drawn .mm-empty{background:#bd87f008;border-color:#b899d557;color:#a987c5}.mm-drawn .mm-empty.mm-star{background:#eec46108;border-color:#ca9f614a;color:#caaa72}.mm-revealed{animation:mm-pop .45s cubic-bezier(.2,.8,.3,1.5)}.mm-primary{display:flex;width:100%;min-height:49px;align-items:center;justify-content:space-between;padding:12px 20px;border:1px solid #d2a9ff65;border-radius:11px;background:linear-gradient(105deg,#b580ff,#9355ed 70%,#be6beb);box-shadow:0 5px 22px #9d51eb38;color:#fff;font-weight:800;font-size:14px}.mm-primary:hover:not(:disabled){background:linear-gradient(105deg,#c89bff,#aa70ff 70%,#d083fc)}.mm-primary:disabled{background:#473258;border-color:#73568a55;box-shadow:none;color:#bca7ce}.mm-primary span{font-size:20px}.mm-primary.mm-stopping{background:linear-gradient(110deg,#ffc977,#f99cbd);border-color:#ffe1b186;color:#431b40}.mm-play-hint{min-height:14px;margin:10px 0 0;text-align:center;color:#baa4cc;font-size:10px}.mm-result{margin-top:13px;padding:12px;border:1px solid #ac76d52b;border-radius:10px;background:#9e64d51f;text-align:center}.mm-result span{font-size:12px;color:#dfccef}.mm-result strong{display:block;margin-top:4px;color:#f4dcff;font-size:23px}.mm-result.is-jackpot{border-color:#f8d18b;background:#e6b45420}
#millionGame .mm-wallet{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:22px;margin:20px 0 25px;padding:21px 26px;border:1px solid #bd91e642;border-radius:16px;background:linear-gradient(100deg,#352048,#211930);box-shadow:inset 3px 0 #b179ee}.mm-wallet-main{display:flex;gap:14px;align-items:center}.mm-wallet-main>span{display:grid;place-items:center;width:47px;height:47px;border:1px solid #a276c64a;border-radius:12px;background:#aa77d923;color:#cca8f2;font-size:24px}.mm-wallet-main p{font-size:8px;letter-spacing:1.3px;margin-bottom:6px}.mm-wallet-main strong{font-size:29px;letter-spacing:-1px}.mm-wallet>div:not(.mm-wallet-main){display:flex;flex-direction:column;gap:7px}.mm-wallet>div:not(.mm-wallet-main) span{font-size:10px;color:#b7a3ca}.mm-wallet>div:not(.mm-wallet-main) b{color:#e5d0f4}.mm-wallet>p{padding-left:24px;border-left:1px solid #a079b93b;color:#b39cc6;font-size:11px;line-height:1.5;letter-spacing:0;margin:0}.mm-positive{color:#75e7cc!important}.mm-negative{color:#f4b187!important}
#millionGame .mm-insights{margin-bottom:20px}.mm-history,.mm-stats{padding:25px 28px}.mm-insights .mm-section-head{margin-bottom:22px}.mm-insights .mm-section-head>span{font-size:10px;color:#b49bc8}.mm-stats .mm-section-head>i{font-size:33px;color:#c79bf0;text-shadow:0 0 22px #b770f677}.mm-empty-history{min-height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#b9a3ce}.mm-empty-history span{display:grid;place-items:center;width:50px;height:50px;margin-bottom:12px;border-radius:50%;background:#9562c51a;color:#c5a3e0;font-size:22px}.mm-empty-history strong{font-size:13px;color:#ddc9ec}.mm-empty-history p{font-size:11px;margin:8px 0}.mm-history-list{max-height:370px;overflow:auto;padding-right:4px}.mm-history-row{padding:13px 0;border-top:1px solid #9b74ba2b}.mm-history-row:first-child{padding-top:0;border-top:0}.mm-history-row summary{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;list-style:none}.mm-history-row summary::-webkit-details-marker{display:none}.mm-history-row time{display:block;margin-bottom:5px;font-size:10px;color:#b29ac8}.mm-history-row b{font-size:11px;letter-spacing:.7px}.mm-history-row i,.mm-history-detail i{color:#f2ce8b;font-style:normal}.mm-history-row summary>div:last-child{text-align:right}.mm-history-row summary>div:last-child strong{display:block;font-size:13px}.mm-history-row small{display:block;margin-top:4px;color:#b39bc8;font-size:9px}.mm-history-detail{margin-top:10px;padding:11px;border-radius:8px;background:#120c2066;color:#d0b8e3;font-size:11px;line-height:1.6}.mm-history-detail p{margin:3px 0}.mm-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px 20px;margin:8px 0 24px}.mm-stat-grid>div{display:flex;flex-direction:column;gap:6px}.mm-stat-grid span{font-size:10px;color:#bea7d0}.mm-stat-grid b{font-size:23px;letter-spacing:-.6px}.mm-stat-grid>div:nth-child(2) b{color:#dfbff7}.mm-stat-grid>div:nth-child(3) b{color:#88e3e6}.mm-stat-grid>div:nth-child(4) b{color:#f7d49e}.mm-odds{padding-top:18px;border-top:1px solid #a27cb935}.mm-odds span{font-size:10px;color:#baa3cc}.mm-odds b{display:block;margin:7px 0;font-size:20px;color:#dcbeff}.mm-odds p{margin:0;font-size:10px;color:#b7a0c9}.mm-stats details{margin-top:18px;padding-top:14px;border-top:1px solid #a27cb935;font-size:10px;color:#d1b5e8}.mm-stats summary{cursor:pointer}.mm-stats summary span{float:right;color:#e9c48f}.mm-stats details>div{margin-top:12px}.mm-stats details p{display:flex;justify-content:space-between;margin:5px 0;color:#c9b1de}
#millionGame .mm-rules{position:relative;z-index:1;padding:20px 25px}.mm-rules summary{cursor:pointer;font-weight:750;color:#dfc9f2}.mm-rules summary span{float:right;font-size:20px;font-weight:400}.mm-rules>div{display:grid;grid-template-columns:1.1fr .9fr;gap:35px;padding-top:20px}.mm-rules h3{margin:0 0 9px;color:#edddfa}.mm-rules p{color:#c4add6;font-size:11px;line-height:1.7}.mm-rules table{width:100%;border-collapse:collapse;font-size:11px}.mm-rules th,.mm-rules td{padding:7px 0;border-bottom:1px solid #916da92e;text-align:left}.mm-rules th{color:#bca1d1;font-weight:500}.mm-rules td{color:#dac1ed}.mm-rules th:last-child,.mm-rules td:last-child{text-align:right}.mm-footer{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 0 5px;font-weight:850}.mm-footer small{margin-left:12px;font-size:11px;font-weight:400;color:#b19ac8}.mm-footer button{border:0;background:transparent;color:#d3b8ec;padding:8px 0;margin-left:19px;font-size:11px}.mm-footer button:hover{text-decoration:underline}
.travel-ball{position:absolute;top:0;left:0;z-index:7;pointer-events:none;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle at 30% 20%,#fff,#e5c6ff 20%,#a866e7 65%,#643294);border:1px solid #e8c5ff;color:#32184b;font-size:14px;font-weight:800;box-shadow:inset 0 2px 5px #fff8,0 5px 16px #0b041e88}.travel-ball.star{background:radial-gradient(circle at 30% 20%,#fff,#ffe6a1 25%,#eab24e 65%,#a36621);border-color:#ffe8b4;color:#533216}.outcome-overlay{position:fixed;inset:0;z-index:1000;pointer-events:auto;cursor:pointer;display:grid;place-items:center;background:radial-gradient(ellipse at center,#160b2ca6,transparent 65%)}.outcome-overlay[hidden]{display:none!important}.confetti-canvas{position:absolute;inset:0;width:100%;height:100%}.outcome-message{position:relative;max-width:calc(100vw - 24px);padding:22px 30px;border:1px solid #c78eff77;border-radius:24px;background:#1b0c36e6;box-shadow:0 18px 90px #06001160;text-align:center;animation:mm-outcome .3s ease-out}.outcome-message strong{display:block;font-size:clamp(44px,10vw,112px);line-height:1.05;letter-spacing:1px;color:#fff1b4;text-shadow:0 0 30px #f1c25d66}.outcome-message span{display:block;margin-top:12px;color:#f5e9ff;font-size:clamp(13px,3.5vw,24px)}.outcome-loss .outcome-message{background:#280b18e8;border-color:#fd476466}.outcome-loss strong{color:#ff4564;text-shadow:0 0 34px #ff234f55}.outcome-loss span{color:#f5b6c0}.outcome-jackpot .outcome-message{border-color:#fbd18b;animation:mm-jackpot .65s ease-in-out infinite alternate}.outcome-jackpot strong{background:linear-gradient(90deg,#ff6bb0,#ffe27a,#75f4e4,#be82ff,#ff6bb0);background-size:300% auto;background-clip:text;-webkit-background-clip:text;color:transparent;animation:mm-rainbow 1s linear infinite}
@keyframes mm-pop{from{opacity:0;transform:translateY(-20px) scale(.4)}to{opacity:1;transform:none}}@keyframes mm-pulse{50%{opacity:.25}}@keyframes mm-outcome{from{opacity:0;transform:scale(.78)}to{opacity:1;transform:scale(1)}}@keyframes mm-jackpot{to{transform:scale(1.08) rotate(-1deg)}}@keyframes mm-rainbow{to{background-position:300% center}}
@media(max-width:960px){#millionGame .mm-app{padding:7px 20px 28px}.mm-hero{min-height:315px!important;padding:28px!important}.mm-hero h1{font-size:33px!important}.mm-hero-copy{width:64%!important}.mm-jackpot strong{font-size:39px!important}.mm-ticket,.mm-draw-panel{padding-left:20px!important;padding-right:20px!important}.mm-ticket-footer{margin-left:-20px!important;margin-right:-20px!important;padding-left:20px!important;padding-right:20px!important}.mm-number-grid{gap:5px}.mm-star-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}.mm-choice-star{max-width:35px;justify-self:center}.mm-balls{gap:6px}.mm-ball{width:34px;height:34px;flex-basis:34px}.mm-machine-stage{height:290px;min-height:280px}.mm-wallet>p{display:none}}
@media(max-width:700px){#millionGame .mm-app{padding:5px 12px 26px;border-radius:0}.mm-header{height:70px}.mm-brand{font-size:24px}.mm-brand>span{font-size:37px}.mm-save{font-size:9px;padding:8px 9px}.mm-disclaimer{font-size:10px;line-height:1.5}.mm-hero{min-height:405px!important;margin:17px 0 20px!important;padding:24px 22px!important;background:linear-gradient(180deg,#25104608 12%,#21103f30 45%,#24123dea 73%,#24123d 100%),linear-gradient(90deg,#241047f5 0%,#241047d6 43%,#24104738 76%,transparent 100%),url('./assets/million-violet.png') right top/auto 75% no-repeat,#24123d!important}.mm-hero-copy{width:85%!important}.mm-hero h1{font-size:32px!important}.mm-jackpot{left:22px!important;bottom:24px}.mm-jackpot strong{font-size:40px!important}.mm-play-layout,.mm-insights{grid-template-columns:1fr!important;gap:16px}.mm-ticket{padding:24px 21px 0!important}.mm-ticket-footer{margin-left:-21px!important;margin-right:-21px!important;padding-left:21px!important;padding-right:21px!important}.mm-number-grid{gap:7px}.mm-star-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:5px}.mm-choice-star{max-width:none}.mm-ball{width:38px;height:38px;flex-basis:38px}.mm-draw-panel{padding:24px 21px 19px!important}.mm-machine-heading h2{font-size:21px}.mm-mobile-selection{display:block;margin-top:18px;padding-top:14px;border-top:1px solid #9771b647}.mm-mobile-selection p{text-align:center;margin:0 0 10px;color:#c7a9e2;font-size:8px;letter-spacing:1.5px;font-weight:800}.mm-mobile-selection .mm-ball{width:31px;height:31px;flex-basis:31px;font-size:11px}.mm-machine-stage{height:315px;min-height:315px}.mm-drawn{gap:6px}.mm-drawn .mm-ball{width:37px;height:37px;flex-basis:37px}.mm-wallet{flex-wrap:wrap;padding:20px!important;gap:19px!important}.mm-wallet-main{width:100%}.mm-wallet>div:not(.mm-wallet-main){flex:1;padding-top:14px;border-top:1px solid #986db441}.mm-history,.mm-stats{padding:24px!important}.mm-rules{padding:20px 22px!important}.mm-rules>div{grid-template-columns:1fr;gap:17px}.mm-footer{align-items:flex-start;flex-direction:column}.mm-footer button{margin-left:0;margin-right:16px}.travel-ball{width:31px;height:31px;font-size:12px}}
@media(max-width:390px){.mm-number-grid{gap:5px}.mm-star-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.mm-choice-star{max-width:35px}.mm-ball,.mm-drawn .mm-ball{width:31px;height:31px;flex-basis:31px;font-size:11px}.mm-balls{gap:5px}.mm-hero h1{font-size:28px!important}.mm-jackpot strong{font-size:34px!important}.mm-audio input{width:58px}.mm-sound{padding:5px 7px}.mm-stat-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){#millionGame *,#millionGame *:before,#millionGame *:after,.outcome-overlay *{animation:none!important;transition:none!important}}
