body.customer-ui-v5{height:auto;padding-bottom:calc(78px + env(safe-area-inset-bottom,0px));overflow-y:auto!important}
body.customer-ui-v5{--l-bg:var(--page);--l-card:#fff;--l-border:var(--border);--l-text:var(--ink);--l-muted:var(--muted);--l-gold:var(--primary);--l-red:#ad243b}
body.customer-ui-v5 .container{padding:28px 36px;margin:0!important}
body.customer-ui-v5 .home-body{display:grid;grid-template-columns:minmax(230px,.7fr) minmax(0,1.5fr);gap:24px 40px;align-content:start;align-items:start;justify-content:stretch;position:relative;width:100%;max-width:none;padding:36px;min-height:calc(100dvh - 100px);background:var(--page);overflow:visible}
body.customer-ui-v5 .home-eyebrow{grid-column:1/-1;font-size:12px;color:var(--muted);font-weight:600;letter-spacing:.05em;border-bottom:1px solid var(--border);padding-bottom:18px}
body.customer-ui-v5 .home-header-card{display:flex;flex-direction:column;align-items:flex-start;max-width:none;width:100%;background:none;border:0;border-radius:0;padding:0;margin:0;text-align:left;box-shadow:none}
body.customer-ui-v5 .home-logo-img{width:120px;height:120px;margin:0 0 18px;background:var(--ink);border-radius:22px;padding:8px;filter:none}
body.customer-ui-v5 .home-subtitle{font-size:15px;color:var(--muted);margin:0 0 8px}
body.customer-ui-v5 .home-welcome{font-size:25px;font-weight:700;color:var(--ink);line-height:1.7}
body.customer-ui-v5 .home-welcome .cust-id{display:block;font-size:15px;font-weight:500;color:var(--muted)}
body.customer-ui-v5 .game-entry{display:flex;align-items:center;gap:20px;min-height:158px;padding:28px;border-radius:22px;background:var(--ink);color:#fff;text-decoration:none;margin-bottom:16px;position:relative;overflow:hidden}
body.customer-ui-v5 .game-symbol{display:grid;place-items:center;width:64px;height:64px;border:1px solid #ffffff35;border-radius:18px;color:var(--secondary)}
body.customer-ui-v5 .game-symbol svg{width:32px;height:32px}
body.customer-ui-v5 .game-entry small{display:block;font-size:12px;color:#ffffffa6;margin-bottom:6px;letter-spacing:.05em}
body.customer-ui-v5 .game-entry strong{display:block;font-size:28px;font-weight:600;color:#fff}
body.customer-ui-v5 .entry-arrow{display:grid;place-items:center;width:46px;height:46px;margin-left:auto;background:var(--primary);color:var(--on-primary);border-radius:50%;font-size:28px}
body.customer-ui-v5 .home-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;max-width:none;position:relative}
body.customer-ui-v5 .circle-item{display:flex;align-items:center;gap:15px;min-height:114px;padding:20px;border-radius:16px;background:#fff;border:1px solid var(--border);text-decoration:none;position:relative;transition:border-color .15s,transform .15s;min-width:0}
body.customer-ui-v5 .circle-item:first-child{grid-column:1/-1;min-height:84px}
body.customer-ui-v5 .circle-item:nth-last-child(-n+2){min-height:78px}
body.customer-ui-v5 .circle-item:hover{border-color:var(--primary);transform:translateY(-2px)}
body.customer-ui-v5 .circle-btn{width:48px;height:48px;flex:0 0 48px;border-radius:14px;background:var(--soft);color:var(--primary);display:grid;place-items:center;position:relative;font-size:26px;border:0;box-shadow:none;transform:none}
body.customer-ui-v5 .circle-btn img{width:32px;height:32px;object-fit:contain;border-radius:0}
body.customer-ui-v5 .circle-label{font-size:17px;font-weight:600;color:var(--ink);line-height:1.5;max-width:none;text-align:left}
body.customer-ui-v5 .item-arrow{margin-left:auto;color:#89868f;font-size:20px}
body.customer-ui-v5 .badge-dot{position:absolute;right:-7px;top:-7px;background:var(--ink)!important;color:#fff!important;font-size:11px;min-width:22px;height:22px;padding:0 5px;border-radius:11px;display:grid;place-items:center;border:2px solid #fff;box-shadow:none!important}
body.customer-ui-v5 .home-footer{grid-column:1/-1;text-align:right;padding:8px 0;margin:0}
body.customer-ui-v5 .home-footer a{color:var(--muted);font-size:13px;padding:10px 0;text-decoration:none}
body.customer-ui-v5 .bottom-nav{background:#fff!important;border-top:1px solid var(--border)!important;box-shadow:0 -4px 20px #20152505!important;max-width:none!important;width:100%;padding:8px 12px max(8px,env(safe-area-inset-bottom));height:auto!important;min-height:74px;z-index:1000}
body.customer-ui-v5 .bottom-nav a{color:var(--muted)!important;min-height:48px;font-size:11px!important;flex:1}
body.customer-ui-v5 .bottom-nav a.active{color:var(--primary)!important}
body.customer-ui-v5 .nav-game-btn{background:var(--primary)!important;color:var(--on-primary)!important;border:0!important;width:50px;height:50px;box-shadow:none!important}
body.customer-ui-v5 :is(.login-wrap,.rg-login){display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:calc(100dvh - 80px);padding:48px 24px;background:var(--page)!important;width:100%;max-width:none!important}
body.customer-ui-v5 :is(.login-card,.rg-card){width:100%;max-width:520px!important;padding:36px!important;background:#fff!important;color:var(--ink)!important;border:1px solid var(--border)!important;border-radius:24px;box-shadow:0 12px 48px #20152507!important}
body.customer-ui-v5 :is(.rg-title,.brand,.tagline,.rg-tag,.login-foot,.rg-label){color:var(--ink)!important;background:none!important;-webkit-text-fill-color:currentColor;text-shadow:none!important}
body.customer-ui-v5 :is(.logo-box img,.rg-logo){width:112px;height:112px;object-fit:contain;background:var(--ink);border-radius:24px;padding:8px;filter:none!important}
body.customer-ui-v5 :is(.login-btn,.rg-btn,.dl-install-btn,.guess-btn,.redeem-btn,.pw-btn){background:var(--primary)!important;color:var(--on-primary)!important;border:0!important;border-radius:12px;box-shadow:none!important;min-height:48px}
body.customer-ui-v5 .rg-input-box{background:#fff!important;border-color:var(--border)!important}
body.customer-ui-v5 :is(.rg-card:before,.rg-card:after,.home-body:before,.home-body:after,.home-header-card:before,.particles-bg,.orb,.wheel-outer-glow,.dl-hero:before,.pts-hero:before){display:none!important}
/* Fixed conversation viewport: message area scrolls; composer stays reachable. */
body.customer-ui-v5 .chat-header-row{background:#fff!important;border-bottom:1px solid var(--border);min-height:56px;padding:6px 20px;align-items:center}
body.customer-ui-v5 .chat-wrap{top:56px!important;width:100%;max-width:none!important;margin:0!important;background:var(--page)!important;min-width:0}
body.customer-ui-v5 .credit-card{display:flex;align-items:center;gap:24px;background:#fff!important;color:var(--ink)!important;border:1px solid var(--border)!important;border-radius:16px;box-shadow:none!important;padding:12px 20px;margin:16px 24px}
body.customer-ui-v5 :is(.credit-card:before,.credit-card:after){display:none!important}
body.customer-ui-v5 :is(.cc-label,.cc-balance,.cc-unit){color:var(--ink)!important;text-shadow:none!important}
body.customer-ui-v5 .cc-actions{flex-wrap:wrap;gap:8px;margin-left:auto}
body.customer-ui-v5 .cc-btn{min-height:44px;border-radius:10px;font-size:13px;background:var(--soft)!important;color:var(--ink)!important;border:1px solid var(--border);box-shadow:none!important}
body.customer-ui-v5 .chat-body{background:var(--page)!important;padding:24px!important;min-height:0}
body.customer-ui-v5 .chat-msg{font-size:15px;line-height:1.75;box-shadow:none;overflow-wrap:anywhere;padding:12px 16px;max-width:min(75%,600px)}
body.customer-ui-v5 .chat-msg.user{background:var(--primary)!important;color:var(--on-primary)!important;border:0}
body.customer-ui-v5 .chat-msg.admin{background:#fff!important;color:var(--ink)!important;border:1px solid var(--border)!important}
body.customer-ui-v5 .msg{font-size:15px;line-height:1.75;padding:12px 16px;max-width:min(85%,600px)}
body.customer-ui-v5 .msg.user{background:var(--primary)!important;color:var(--on-primary)!important;border:0}
body.customer-ui-v5 .msg.admin{background:#fff!important;color:var(--ink)!important;border:1px solid var(--border)!important}
body.customer-ui-v5 .chat-input-bar{background:#fff!important;border-top:1px solid var(--border);padding:12px 20px!important;gap:8px;align-items:center}
body.customer-ui-v5 .chat-input-bar input{min-width:0;flex:1}
body.customer-ui-v5 :is(.btn-send,.btn-voice,.btn-attach){min-height:44px;min-width:44px;border-radius:12px;background:var(--soft)!important;color:var(--ink)!important;box-shadow:none!important}
body.customer-ui-v5 .btn-send{background:var(--primary)!important;color:var(--on-primary)!important}
/* Activity pages keep the actual canvas/box meshes and their result state machine. */
body.customer-ui-v5 :is(.wheel-body,.box-body,.pts-body,.dl-wrap){background:var(--page)!important;color:var(--ink)!important;max-width:none!important;width:100%;margin:0!important;min-height:100dvh;padding:28px 36px 100px!important}
body.customer-ui-v5 :is(.wheel-title,.box-title,.pts-big,.pts-label,.dl-title){color:var(--ink)!important;background:none!important;-webkit-text-fill-color:currentColor;text-shadow:none!important}
body.customer-ui-v5 :is(.wheel-subtitle,.box-subtitle,.pts-sub,.dl-sub){color:var(--muted)!important}
body.customer-ui-v5 :is(.exchange-card,.prizes-section,.pts-hero,.reward-card,.history-section,.dl-card,.dl-hero,.ticket-info,.result-item,.ticket-item){background:#fff!important;color:var(--ink)!important;border:1px solid var(--border)!important;border-radius:18px;box-shadow:none!important;padding:24px}
body.customer-ui-v5 :is(.reward-grid,.pkg-grid){grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px}
body.customer-ui-v5 :is(.wheel-info,.wheel-topbar,.box-topbar,.prizes-section,.exchange-card,.pts-hero,.history-section,.dl-card,.dl-hero){max-width:none!important;width:100%}
body.customer-ui-v5 :is(.lottery-title,.num-input,.ticket-type-btn,.ticket-list,.result-grid){color:var(--ink)!important}
body.customer-ui-v5 .card h3{color:var(--ink)!important}
body.customer-ui-v5 :is(.modal-box,.pkg-grid){max-width:100%}
body.customer-ui-v5 :is(.spin-btn,.exchange-btn,.box-open-btn,.result-btn,.result-card button){background:var(--primary)!important;color:var(--on-primary)!important;border:0!important;border-radius:12px;box-shadow:none!important;text-shadow:none!important;min-height:48px}
body.customer-ui-v5 :is(.result-card,.wheel-badge,.box-badge,.mult-btn){background:#fff!important;color:var(--ink)!important;border:1px solid var(--border)!important;box-shadow:none!important}
body.customer-ui-v5 :is(.mult-btn.active,.ticket-type-btn.active,.dl-platform-toggle button.active){background:var(--primary)!important;color:var(--on-primary)!important;box-shadow:none!important;border-color:var(--primary)!important}
body.customer-ui-v5 :is(.pts-section-title,.pts-next-label,.dl-platform-toggle button){color:var(--ink)!important;text-shadow:none!important}
body.customer-ui-v5 .dl-platform-toggle button{background:#fff;border:1px solid var(--border);min-height:44px}
body.customer-ui-v5 .num-input::placeholder{color:var(--muted)!important;text-shadow:none!important}
body.customer-ui-v5 :is(.numpad-btn,.ticket-type-btn){background:#fff;color:var(--ink);border:1px solid var(--border);min-height:48px;box-shadow:none}
body.customer-ui-v5 .result-item{padding:18px 10px;min-width:0}
body.customer-ui-v5 .result-item .num{font-size:24px;white-space:nowrap;color:var(--ink)!important;text-shadow:none!important}
body.customer-ui-v5 .pts-body{display:grid;grid-template-columns:300px minmax(0,1fr);gap:20px 32px;align-content:start;align-items:start}
body.customer-ui-v5 .pts-hero{grid-column:1;grid-row:1/4;margin:0!important;min-height:240px;display:flex;flex-direction:column;justify-content:center}
body.customer-ui-v5 :is(.pts-progress-wrap,.pts-section-title,.reward-grid){max-width:none!important;width:100%;grid-column:2}
body.customer-ui-v5 .history-section{grid-column:1/-1}
body.customer-ui-v5 .empty-state{padding:36px 24px!important;background:#fff;border:1px dashed var(--border);border-radius:16px;color:var(--muted)!important;grid-column:1/-1;width:100%}
body.customer-ui-v5 .pts-section-title .line{background:var(--border)!important}
body.customer-ui-v5 .reward-inner{background:#fff!important;border:0!important;box-shadow:none!important;border-radius:12px}
body.customer-ui-v5 .reward-thumb-wrap{background:var(--soft)!important;border-radius:12px}
body.customer-ui-v5 .reward-thumb-fallback{color:var(--primary)!important;text-shadow:none!important;font-size:48px}
body.customer-ui-v5 .reward-info{background:#fff!important;padding:18px 0 0}
body.customer-ui-v5 .reward-name{color:var(--ink)!important;font-size:17px}
body.customer-ui-v5 :is(.reward-desc,.reward-stock){color:var(--muted)!important;font-size:12px}
body.customer-ui-v5 .reward-cost{color:var(--ink)!important;background:var(--soft)!important;border-color:var(--border)!important}
body.customer-ui-v5 .reward-badge{background:var(--primary)!important;color:var(--on-primary)!important}
body.customer-ui-v5 .pts-progress{background:var(--border)!important;border:0!important}
body.customer-ui-v5 .pts-progress-bar{background:var(--primary)!important}
body.customer-ui-v5 .pw-page .logo-box{background:var(--ink);border-radius:20px;padding:12px;max-width:140px;margin:0 auto 24px}
body.customer-ui-v5 .pw-page .logo-box img{filter:none!important;width:112px;height:96px;padding:0;border-radius:0}
body.customer-ui-v5 :is(.gm-body,.hist-body,.pw-page){max-width:none!important;background:var(--page)!important;width:100%;padding:28px 36px 100px!important}
body.customer-ui-v5 :is(.gm-item,.hist-item,.pw-card){background:#fff!important;color:var(--ink)!important;border:1px solid var(--border)!important;border-radius:16px;box-shadow:none!important}
body.customer-ui-v5 :is(.gm-title,.gm-name,.hist-title,.hist-label,.pw-desc){color:var(--ink)!important;text-shadow:none!important}
body.customer-ui-v5 :is(.gm-list,.hist-list){display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:14px}
body.customer-ui-v5 .pw-container{max-width:600px!important;width:100%}
@media(max-width:700px){
 body.customer-ui-v5 .container{padding:18px 16px}
 body.customer-ui-v5 .home-body{display:block;padding:20px 16px;min-height:0}
 body.customer-ui-v5 .home-eyebrow{font-size:10px;padding-bottom:12px;margin-bottom:18px}
 body.customer-ui-v5 .home-header-card{display:grid;grid-template-columns:76px minmax(0,1fr);gap:0 16px;margin-bottom:20px}
 body.customer-ui-v5 .home-logo-img{width:76px;height:76px;padding:4px;border-radius:18px;grid-row:1/3;margin:0}
 body.customer-ui-v5 .home-subtitle{font-size:12px;align-self:end;margin-bottom:3px}
 body.customer-ui-v5 .home-welcome{font-size:20px;line-height:1.6}
 body.customer-ui-v5 .home-welcome .cust-id{font-size:12px}
 body.customer-ui-v5 .game-entry{min-height:132px;padding:20px;gap:14px;border-radius:20px;margin-bottom:14px}
 body.customer-ui-v5 .game-symbol{width:46px;height:46px;border-radius:12px}
 body.customer-ui-v5 .game-symbol svg{width:26px;height:26px}
 body.customer-ui-v5 .game-entry strong{font-size:25px}
 body.customer-ui-v5 .entry-arrow{width:38px;height:38px;font-size:24px}
 body.customer-ui-v5 .game-entry small{font-size:10px}
 body.customer-ui-v5 .home-grid{gap:10px}
 body.customer-ui-v5 .circle-item{min-height:124px;display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:16px}
 body.customer-ui-v5 .circle-item:first-child,body.customer-ui-v5 .circle-item:nth-last-child(-n+2){flex-direction:row;align-items:center;min-height:72px}
 body.customer-ui-v5 .circle-item:nth-last-child(-n+2){grid-column:1/-1}
 body.customer-ui-v5 .circle-btn{width:38px;height:38px;flex:0 0 38px;border-radius:10px}
 body.customer-ui-v5 .circle-label{font-size:15px}
 body.customer-ui-v5 .item-arrow{position:absolute;right:16px;top:18px;font-size:18px}
 body.customer-ui-v5 .home-footer{padding:20px 0 4px}
 body.customer-ui-v5 .credit-card{margin:10px 12px;padding:10px 12px;gap:8px;flex-wrap:wrap}
 body.customer-ui-v5 .cc-actions{margin-left:0}
 body.customer-ui-v5 .chat-input-bar{padding:10px 8px!important;gap:5px;flex-wrap:wrap}
 body.customer-ui-v5 #msgInput{flex:1 1 120px;order:0;max-width:100%}
 body.customer-ui-v5 .chat-body{padding:16px!important}
 body.customer-ui-v5 .chat-msg{max-width:88%}
 body.customer-ui-v5 :is(.wheel-body,.box-body,.pts-body,.dl-wrap,.gm-body,.hist-body,.pw-page){padding:18px 16px 100px!important}
 body.customer-ui-v5 .pts-body{display:flex;flex-direction:column;gap:16px}
 body.customer-ui-v5 .pts-hero{min-height:180px}
 body.customer-ui-v5 :is(.exchange-card,.pts-hero,.dl-hero,.dl-card){padding:20px}
 body.customer-ui-v5 :is(.login-card,.rg-card){padding:26px!important}
 body.customer-ui-v5 :is(.num-input-wrap,.ticket-type-btns,.dl-platform-toggle){max-width:100%}
}
