.partner-machine{--accent:#71f1f2;--soft:#272044;position:relative;isolation:isolate;max-width:1080px;margin:auto;padding:18px 24px 0;border:1px solid #8de9e871;border-radius:20px;color:#effdff;background:radial-gradient(ellipse at 0 0,#4d195b,transparent 50%),radial-gradient(ellipse at 100% 80%,#075c69,transparent 65%),#11112a;box-shadow:0 20px 80px #0008,inset 0 0 60px #3ddbe00c}
.partner-machine.royal{--accent:#ffd68f;--soft:#361730;border-color:#e7bc7177;background:radial-gradient(ellipse at 10% 0,#733043,transparent 60%),radial-gradient(ellipse at 100% 100%,#441c50,transparent 60%),#1d101f}
.partner-heading{text-align:center;margin-bottom:14px}.partner-heading small{font-size:8px;letter-spacing:3px;color:var(--accent)}.partner-heading h2{font:700 clamp(26px,3vw,42px)/1.1 Georgia,serif;color:#fff3d7;margin:6px 0;text-shadow:0 2px 2px #0008}.neon .partner-heading h2{color:#b7ffff}.partner-heading>span{font-size:9px;letter-spacing:3px;opacity:.8}.partner-heading i{font-style:normal;margin:0 10px;color:var(--accent)}
.partner-board-shell{position:relative;max-width:min(850px,calc((100dvh - 410px)*1.6667));min-width:300px;margin:auto;aspect-ratio:5/3;border:3px solid var(--accent);border-radius:12px;box-shadow:0 0 0 4px #0008,0 0 25px #48e4ed33;overflow:hidden;background:#100f21}.partner-board{position:absolute;inset:0;overflow:hidden}.partner-board canvas{width:100%!important;height:100%!important;display:block}.dom-reels{display:flex}.partner-reel{position:relative;width:20%;height:100%;overflow:hidden;border-right:2px solid #110f25}.partner-reel:last-child{border:0}.partner-strip{position:relative;height:100%;will-change:transform}.partner-cell{height:33.333333%;width:100%;display:grid;place-items:center;position:relative;overflow:hidden;border:1px solid #a6ebf533;background:linear-gradient(145deg,#282348,#101b2c)}.royal .partner-cell{background:linear-gradient(145deg,#3b1a37,#251123)}.partner-cell img{width:94%;height:94%;object-fit:contain;display:block;pointer-events:none}.royal-symbol{display:block;width:90%;aspect-ratio:1;background-image:url('/assets/partners/royal-atlas.png');background-size:400% 200%;background-repeat:no-repeat;pointer-events:none}.partner-cell.is-win{box-shadow:inset 0 0 20px #ffffbd88;border-color:#fff9ad}
#partner-lines{pointer-events:none;position:absolute;inset:0;width:100%;height:100%;z-index:2}#partner-lines polyline{fill:none;stroke:#fff2a0;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 3px #ffb433)}.partner-loading{position:absolute;inset:0;z-index:3;display:grid;place-items:center;padding:20px;text-align:center;background:#100f21ed;color:var(--accent);font-size:14px}
.partner-result{text-align:center;padding:12px 8px 10px}.partner-result small{display:block;letter-spacing:2px;font-size:8px;opacity:.7}.partner-result strong{display:block;font:700 30px/1.2 Georgia;color:var(--accent);font-variant-numeric:tabular-nums}.partner-result>span{display:block;font-size:11px;min-height:17px;margin-top:6px;color:#e5d9e8}.partner-controls{max-width:650px;margin:auto;display:flex;align-items:center;justify-content:space-evenly;gap:20px;padding:12px;background:#05071180;border:1px solid #ffffff16;border-radius:13px}.partner-controls label,.partner-controls small{font-size:8px;letter-spacing:1px;display:block;color:#d9cadc}.partner-controls select{display:block;padding:8px 12px;width:115px;margin-top:6px;border:1px solid #ffffff39;color:#fff;background:#221928}.partner-controls strong{display:block;font-size:20px;color:var(--accent);margin-top:7px;font-variant-numeric:tabular-nums}.partner-spin{padding:12px 24px;border-radius:50px;background:linear-gradient(145deg,#f5e9c4,#c39b50);color:#231528;box-shadow:0 0 0 4px #d7af551c,0 4px 10px #0006;font-size:16px;font-weight:900;letter-spacing:2px}.neon .partner-spin{background:linear-gradient(145deg,#c6fffa,#49c4d8);box-shadow:0 0 0 4px #63e7ee1c,0 4px 10px #0006}.partner-spin span{font-size:30px;margin-left:8px;vertical-align:middle}.partner-options{display:flex;align-items:center;justify-content:center;gap:30px;padding:11px;margin-top:8px;border-top:1px solid #ffffff15;font-size:11px}.partner-options button{background:none;color:#ece0ed;font-size:11px}.partner-options label{display:flex;gap:6px;align-items:center}.partner-below{display:flex;gap:25px;justify-content:center;align-items:center;flex-wrap:wrap;padding:18px 0;font-size:11px;color:#aeb4c7}.partner-below button{font-size:11px}
.partner-expanded{overflow:hidden}.partner-machine.expanded{position:fixed;inset:0;z-index:1000;border-radius:0;max-width:none;overflow:auto}.partner-machine.expanded .partner-board-shell{max-width:min(950px,calc((100dvh - 305px)*1.6667))}.partner-machine.expanded .partner-heading h2{font-size:30px}.partner-machine.expanded .partner-heading{margin-bottom:10px}
.partner-card.neon .card-art{background:radial-gradient(ellipse at 20% 0,#742e7d,transparent),#102d40!important}.partner-card.royal .card-art{background:radial-gradient(ellipse at 20% 0,#9b4753,transparent),#331631!important}.partner-card-art{display:flex;width:94%;gap:3%;align-items:center;justify-content:center;transform:rotate(-6deg)}.partner-card-art>img,.partner-card-art>.royal-symbol{width:29%;height:auto;aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 8px 8px #0008);border-radius:15%}.partner-card-art>:nth-child(2){transform:translateY(-8px) scale(1.12)}
@media(max-width:600px){.partner-machine{padding:14px 8px 0;margin:0 -8px;border-radius:12px}.partner-board-shell{min-width:0;max-width:100%;border-width:2px}.partner-heading h2{font-size:32px}.partner-heading small{letter-spacing:2px;font-size:7px}.partner-controls{gap:8px;padding:12px 7px}.partner-spin{padding:10px 15px;font-size:12px;letter-spacing:1px}.partner-spin span{font-size:24px;margin-left:3px}.partner-controls select{width:87px;padding:8px}.partner-controls strong{font-size:15px}.partner-controls label,.partner-controls small{font-size:7px;letter-spacing:.4px}.partner-result>span{font-size:10px;min-height:28px}.partner-options{gap:20px}.partner-below{gap:12px}.partner-machine.expanded{margin:0;display:flex;flex-direction:column;justify-content:center}.partner-machine.expanded .partner-board-shell{width:100%;max-width:min(100%,calc((100dvh - 310px)*1.6667));flex-shrink:0}.partner-heading>span{font-size:8px}}
@media(prefers-reduced-motion:reduce){.partner-strip{will-change:auto}}
.partner-machine.expanded .partner-board-shell{max-width:min(950px,calc((100dvh - 375px)*1.6667))}
@media(max-width:600px){.partner-machine.expanded .partner-board-shell{max-width:min(100%,calc((100dvh - 350px)*1.6667))}}
