/* SmileDice v6.0 — live two-slide premium hero and account UI. Pure presentation.
   Keep Dice v5.9.1/98% RTP and Supabase settlement untouched. */
:root{--sd-cyan:#26f4e2;--sd-gold:#ffd46b;--sd-royal:#1764ff}
.brand .sd-logo{width:48px!important;height:48px!important;object-fit:contain;transform:none!important;filter:drop-shadow(0 0 12px #ffcc5b70) drop-shadow(0 0 12px #304dff77)!important}
.brand .sd-brand-word{font-size:clamp(18px,1.35vw,27px);color:#fff8e8;font-weight:900;letter-spacing:-.065em;text-shadow:0 0 16px #fcb5275f}
.brand .sd-brand-word .green{background:linear-gradient(90deg,#ffe39a,#ffc447,#15f0c7);-webkit-background-clip:text;background-clip:text;color:transparent}
.site-header{overflow:visible!important}
/* HERO: BOTH PANELS SHARE ONE FRAME. */
.sd-hero{display:block!important;isolation:isolate;overflow:hidden!important;position:relative!important;min-height:330px!important;height:clamp(320px,26vw,415px)!important;aspect-ratio:auto!important;border:1px solid #7956ff!important;border-radius:16px!important;background:#070d34!important;box-shadow:0 0 0 1px #9180ff29 inset,0 0 36px #3b32d828!important}
.sd-hero-slide{position:absolute;inset:0;display:block;overflow:hidden;border-radius:inherit;opacity:0;visibility:hidden;pointer-events:none;transform:scale(1.025);transition:opacity .65s ease,transform 1.15s ease,visibility .65s;z-index:1}
.sd-hero-slide.is-active{opacity:1;visibility:visible;transform:scale(1);pointer-events:auto}
.sd-hero-slide .hero-content{z-index:3;position:relative;max-width:56%;width:56%;padding:clamp(22px,2vw,32px) clamp(22px,2.4vw,38px) 60px!important}
.sd-hero-slide .hero-art{background-image:url('assets/reference-hero.webp')!important;background-repeat:no-repeat!important;background-position:center!important;background-size:cover!important;opacity:1!important;filter:saturate(1.17)}
.sd-hero-slide .hero-glow{pointer-events:none;position:absolute;inset:0;z-index:2}
.sd-hero-slide h1{font-size:clamp(36px,3.1vw,59px);line-height:1.08;margin:.38em 0 .15em!important}
.sd-hero-slide p{max-width:440px;font-size:clamp(11px,.9vw,15px);line-height:1.45;color:#e2edff}
.sd-hero-slide .eyebrow{letter-spacing:.04em}
.sd-hero-smile{background:radial-gradient(ellipse at 75% 49%,#3d197c 0%,#0c124d 52%,#080d28 100%);}
.sd-hero-smile::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 85% 10%,#9d3aff80,transparent 25%),radial-gradient(circle at 67% 72%,#006dff66,transparent 42%),repeating-radial-gradient(ellipse at 85% 80%,transparent 0 32px,#522cff24 34px 35px,transparent 36px 60px);animation:sdNebula 13s ease-in-out infinite alternate}
.sd-hero-smile::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle,#ffffffab 1px,transparent 2px),radial-gradient(circle,#38fff5ab 1px,transparent 2px);background-size:83px 77px,127px 119px;background-position:30px 42px,95px 25px;opacity:.4;animation:sdStars 22s linear infinite}
.sd-hero-smile .sd-hero-stars{position:absolute;inset:0;background:linear-gradient(95deg,#090f38ea 0%,#090b3170 58%,#170a3a16 100%);z-index:1;pointer-events:none}
.sd-hero-smile .sd-hero-mascot{position:absolute;right:1.5%;top:-13%;width:49%;height:118%;object-fit:contain;object-position:center;z-index:2;filter:drop-shadow(0 0 18px #1fc8ff9c) drop-shadow(0 0 32px #933dff8a);animation:sdFloat 5.7s ease-in-out infinite alternate}
.sd-hero-smile-copy{z-index:3!important;max-width:59%!important;width:59%!important}
.sd-gold-kicker{color:#ffe0a5!important;background:linear-gradient(90deg,#8e37ff45,#d1a53f38)!important;border-color:#b88aff85!important}
.sd-hero-smile .sd-smile-heading{font-size:clamp(38px,3.1vw,59px);line-height:1.08;letter-spacing:-.046em;margin:19px 0 14px;font-weight:900;text-shadow:0 2px 23px #0008}
.sd-hero-smile .sd-smile-heading span{background:linear-gradient(180deg,#fff4b0 0%,#ffd24b 38%,#ffac19 87%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 6px #ffc9585a)}
.sd-hero-smile p{margin:0 0 20px!important;max-width:370px!important;color:#d9e5ff}
.sd-gold-cta{color:#251600!important;background:linear-gradient(100deg,#ffe28b,#ffb619)!important;box-shadow:0 0 26px #ffbc2b62,inset 0 1px #fff9c7!important;font-weight:900!important;min-width:180px;border:1px solid #fff5a8!important}
.sd-hero .hero-benefits{position:absolute!important;z-index:5!important;bottom:0;left:0;right:0;height:42px;min-height:42px!important;display:flex;align-items:center;padding:8px 28px!important;background:linear-gradient(0deg,#050c2bdc,#06103618);pointer-events:none;gap:clamp(10px,3vw,44px)}
.sd-hero .hero-benefits span{white-space:nowrap;font-size:clamp(9px,.75vw,12px)}
/* Little neon progress dashes in bottom-right corner; actual click targets. */
.sd-slide-controls{position:absolute;bottom:46px;right:17px;z-index:10;display:flex;align-items:center;gap:7px;padding:7px 8px;background:#080e2aba;border:1px solid #526aff83;border-radius:50px;box-shadow:0 3px 17px #0006,0 0 13px #3b65f85a;backdrop-filter:blur(14px)}
.sd-slide-controls button{appearance:none;border:0;cursor:pointer;position:relative}
.sd-slide-dot{height:7px!important;width:31px!important;min-width:31px!important;border-radius:100px!important;padding:0!important;background:#7a8caf76!important;box-shadow:inset 0 0 5px #0004;transition:width .25s ease,background .25s ease,box-shadow .25s ease}
.sd-slide-dot:hover,.sd-slide-dot.is-active{width:53px!important;background:linear-gradient(90deg,#22fff0,#b76bff)!important;box-shadow:0 0 10px #26fff9b3}
.sd-slide-arrow{height:26px;width:26px;border-radius:50%;background:#172357f3;color:#effcff;font-size:23px;line-height:20px;border:1px solid #6383d57a!important;display:grid;place-items:center;padding:0 0 3px!important;transition:background .2s ease}
.sd-slide-arrow:hover{background:#3855a9;box-shadow:0 0 8px #65caff}
@keyframes sdFloat{to{transform:translateY(-12px) rotate(1deg)}}
@keyframes sdNebula{to{filter:hue-rotate(20deg);opacity:.72}}
@keyframes sdStars{to{background-position:115px 145px,-32px -145px}}
/* ACCOUNT MENU: anchored to real authenticated header control. */
.sd-account-anchor{position:relative!important;z-index:70!important}
.sd-account-trigger{display:flex!important;align-items:center;gap:6px!important;border-color:#4b78bb!important;background:#112049e8!important;min-height:40px!important;box-shadow:inset 0 1px #f1ffff16!important}
.sd-account-trigger[aria-expanded="true"]{border-color:#21dfff!important;box-shadow:0 0 0 1px #20ddff76,0 0 15px #16cfff5c!important}
.sd-account-button-avatar{width:27px;height:27px;object-fit:cover;border-radius:50%;filter:drop-shadow(0 0 6px #f6bb3a)}
.sd-account-button-name{font-weight:800;font-size:12px!important;color:#fff!important;max-width:100px;overflow:hidden;text-overflow:ellipsis}
.sd-account-chevron{color:#a6faff;font-size:18px;line-height:1;transform-origin:center;transition:transform .2s}
.sd-account-trigger[aria-expanded="true"] .sd-account-chevron{transform:rotate(180deg)}
.sd-account-menu{position:absolute!important;top:calc(100% + 17px);right:0;width:350px;max-width:calc(100vw - 28px);z-index:500!important;border-radius:18px;border:1px solid #23dafaed;background:linear-gradient(145deg,#152d59f7,#0b1635f9 50%,#0a1130f9);backdrop-filter:blur(24px);box-shadow:0 0 0 1px #386dff3b inset,0 15px 55px #000c,0 0 22px #08bfff50;animation:sdMenuAppear .2s ease-out;overflow:visible;padding:12px}
.sd-account-menu::before{content:"";position:absolute;right:24px;top:-9px;width:16px;height:16px;background:#152d59;transform:rotate(45deg);border-top:1px solid #23dafa;border-left:1px solid #23dafa}
.sd-account-head{padding:12px 8px 15px;border-bottom:1px solid #64a8ff55}
.sd-account-head-top{display:flex;align-items:center;gap:11px;margin-bottom:14px}
.sd-account-head-top>img{width:43px;height:43px;border-radius:11px;object-fit:cover;border:1px solid #a5ceffc4;background:#101d4e}
.sd-account-head-top strong{font-weight:850;font-size:21px;display:block;letter-spacing:-.04em}
.sd-account-head-top small{font-size:10px;color:#a5c4f7;font-weight:800;letter-spacing:.16em}
.sd-level-panel{border-radius:12px;padding:10px;background:linear-gradient(90deg,#253963ac,#0a1f469e);border:1px solid #577bc74f;display:grid;grid-template-columns:39px minmax(0,1fr);gap:8px;align-items:center}
.sd-level-panel>img{height:36px;width:36px;filter:drop-shadow(0 0 7px #ffcf658a)}
.sd-level-detail strong{display:block;font-size:14px;font-weight:850;color:#ffbe4c}
.sd-level-detail small{display:block;margin-top:2px;color:#a4b9dc;font-size:10px}
.sd-level-track{height:8px;background:#53658990;grid-column:1/-1;border-radius:10px;overflow:hidden}
.sd-level-track i{display:block;width:0;height:100%;background:linear-gradient(90deg,#10f7b3,#26dfce);border-radius:inherit;box-shadow:0 0 10px #17edb7;transition:width .3s}
.sd-account-links{padding:10px 0 1px;display:grid;gap:5px}
.sd-account-links button{width:100%;background:#111f46a1;display:grid;grid-template-columns:43px 1fr 16px;align-items:center;text-align:left;gap:12px;border:1px solid #35518052;border-radius:10px;color:#eef5ff;min-height:53px;padding:5px 11px;font-size:15px;font-weight:700;transition:background .16s,border-color .16s,transform .16s}
.sd-account-links button img{width:38px;height:38px;object-fit:contain;background:linear-gradient(135deg,#1a4077,#0d1838);border-radius:11px;padding:6px;border:1px solid #427ad577;filter:drop-shadow(0 0 5px #1478ff44)}
.sd-account-links button b{font-weight:500;color:#a4c0ff;font-size:25px}
.sd-account-links button:hover,.sd-account-links button:focus-visible{background:linear-gradient(105deg,#113d76,#1a2865);transform:translateX(2px);border-color:#28dff7;box-shadow:0 0 12px #17dcf044}
.sd-account-links .sd-logout-row{margin-top:8px;border-top-color:#e2619060}
.sd-account-links .sd-logout-row img{background:#44152d88;border-color:#e451986b}
@keyframes sdMenuAppear{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
/* Account dialog */
.sd-hub-layer{position:fixed;inset:0;z-index:5500;display:grid;place-items:center;padding:16px}
.sd-hub-backdrop{position:absolute;inset:0;background:#010610d9;backdrop-filter:blur(10px)}
.sd-hub{position:relative;width:min(710px,100%);max-height:min(780px,calc(100dvh - 32px));overflow:hidden;display:flex;flex-direction:column;border:1px solid #549bffb5;border-radius:22px;background:linear-gradient(150deg,#11295bec,#09182dfb 66%,#080d24);box-shadow:0 20px 70px #000e,0 0 32px #317aff5c,inset 0 1px #d1f1ff52;color:#f8faff}
.sd-hub-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:21px 24px 14px;border-bottom:1px solid #4c70b17d}
.sd-hub-title-line{display:flex;gap:15px;align-items:center}
.sd-hub-title-line img{width:56px;height:56px;border-radius:13px;border:1px solid #8dcbff9a}
.sd-hub-kicker{font-size:9px;letter-spacing:.13em;color:#66fdeb;font-weight:850}
.sd-hub-top h2{font-size:24px;margin:4px 0}
#sd-hub-close{width:36px;height:36px;background:#1a2f55;border:1px solid #6079a2;border-radius:10px;color:#effcff;font-size:17px}
.sd-hub-tabs{display:flex;gap:8px;padding:14px 23px 10px;border-bottom:1px solid #30497488}
.sd-hub-tabs button{background:#152852;border:1px solid #445fa7;border-radius:9px;color:#b9ceeb;min-height:39px;padding:0 16px;font-weight:800}
.sd-hub-tabs button.active{color:#072c31;background:linear-gradient(100deg,#39e9d8,#18d2bb);border-color:#74fff4;box-shadow:0 0 14px #28fae85a}
.sd-hub-body{padding:22px 23px 30px;overflow:auto;min-height:180px;overscroll-behavior:contain}
.sd-hub-card{background:linear-gradient(125deg,#1a3263c9,#101f42c9);border:1px solid #4c7bba74;border-radius:15px;padding:16px;margin-bottom:14px}
.sd-hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.sd-hub-card label,.sd-hub-key{color:#91add1;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;display:block;margin-bottom:7px}
.sd-hub-value{font-weight:800;font-size:18px;overflow-wrap:anywhere}
.sd-hub-action{min-height:39px;background:#1c3462;border:1px solid #5281d0;border-radius:9px;color:#fff;font-weight:750;padding:0 13px;cursor:pointer}
.sd-hub-action:hover{background:#264b85}
.sd-hub-action.mint{color:#082b34;background:#41eacf;border-color:#8efff3}
.sd-hub-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:13px}
.sd-hub-muted{color:#9cb6d4;font-size:12px;line-height:1.5}
.sd-hub-table{width:100%;border-collapse:collapse;font-size:12px}
.sd-hub-table th{text-align:left;color:#9cb8e3;font-size:10px;padding:11px 9px;border-bottom:1px solid #405b92;white-space:nowrap}
.sd-hub-table td{padding:11px 9px;border-bottom:1px solid #2e44745c;font-variant-numeric:tabular-nums}
.sd-hub-table .win{color:#1dffc6}.sd-hub-table .loss{color:#ff658c}
.sd-setting{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:15px 0;border-bottom:1px solid #32558f80}
.sd-setting strong{display:block;font-size:14px}.sd-setting small{display:block;margin-top:4px;color:#98b1d5;font-size:11px}
.sd-setting input[type=checkbox]{accent-color:#23f0ce;width:23px;height:23px;cursor:pointer}
body.sd-low-motion .sd-hero-mascot,body.sd-low-motion .sd-hero-smile::before,body.sd-low-motion .sd-hero-smile::after{animation:none!important}
@media(max-width:900px){.brand .sd-logo{width:36px!important;height:36px!important}.sd-hero{height:clamp(265px,51vw,350px)!important;min-height:265px!important}.sd-hero-slide .hero-content{padding:25px 22px 48px!important}.sd-hero-smile .sd-smile-heading{font-size:clamp(27px,4.9vw,44px)}.sd-hero-smile .sd-hero-mascot{width:49%;right:-4%}}
@media(max-width:600px){.brand .sd-logo{width:31px!important;height:31px!important}.brand .sd-brand-word{font-size:18px}.sd-hero{height:clamp(248px,64vw,290px)!important;min-height:248px!important}.sd-hero-slide .hero-content{width:67%;max-width:67%;padding:15px 12px 46px!important}.sd-hero-slide h1{font-size:clamp(27px,7.3vw,38px)!important}.sd-hero-slide p{font-size:10px!important;max-width:235px;line-height:1.28}.sd-hero-smile .sd-smile-heading{font-size:clamp(27px,7.5vw,36px)!important;margin:11px 0!important}.sd-hero-smile .sd-hero-mascot{width:57%;right:-11%;top:-2%;height:96%;opacity:.91}.sd-hero-smile .sd-hero-stars{background:linear-gradient(90deg,#08123af4 0%,#071039b0 56%,#110c3c13)}.sd-hero-slide .eyebrow{font-size:7px!important}.sd-gold-cta{min-width:120px;min-height:37px!important;font-size:11px!important}.sd-hero .hero-benefits{gap:8px;padding:8px!important;height:34px;min-height:34px!important}.sd-hero .hero-benefits span{font-size:7px!important}.sd-hero .hero-benefits span:nth-child(n+3){display:none}.sd-slide-controls{bottom:38px;right:7px;padding:5px;gap:4px}.sd-slide-dot{width:19px!important;min-width:19px!important;height:6px!important}.sd-slide-dot.is-active{width:27px!important}.sd-slide-arrow{width:23px;height:23px;font-size:17px}.sd-hub-grid{grid-template-columns:1fr}.sd-hub-tabs{padding:10px}.sd-hub-tabs button{padding:0 11px}.sd-hub-top{padding:16px}.sd-hub-body{padding:13px}.sd-hub-title-line img{width:43px;height:43px}}
@media(prefers-reduced-motion:reduce){.sd-hero-slide{transition:none!important}.sd-hero-smile::before,.sd-hero-smile::after,.sd-hero-mascot{animation:none!important}.sd-account-menu{animation:none!important}}
/* Prevent mobile slide copy/CTA from colliding with the common footer strip. */
@media(max-width:600px){
  .sd-hero-smile-copy{max-width:65%!important;width:65%!important}
  .sd-hero-smile .sd-smile-heading{font-size:clamp(22px,6.1vw,27px)!important;line-height:1.04!important;margin:8px 0 7px!important}
  .sd-hero-smile p{font-size:9px!important;line-height:1.14!important;max-width:213px!important;margin:0 0 9px!important}
  .sd-hero-smile .sd-gold-cta{min-height:34px!important;padding:0 12px!important;min-width:119px!important}
  .sd-hero-smile .eyebrow{max-width:190px;font-size:7px!important;line-height:1.2!important}
}
