/* Own-brand campaign. Scoped independently from the APK installation dialog. */
.home-promo-backdrop{background:rgba(9,5,15,.78);backdrop-filter:blur(7px)}
.modal.home-reward-dialog{width:min(calc(100vw - 32px),400px);max-height:calc(100dvh - 32px);padding:0;border:1px solid #ffdcaf66;border-radius:26px;background:#fff7e9;box-shadow:0 30px 100px #0009;color:#3d2330;overflow-x:hidden;isolation:isolate;text-align:center}
.home-promo-hero{position:relative;padding:22px 24px 0;overflow:hidden;background:radial-gradient(ellipse at 72% 84%,#d65c38 0,transparent 57%),radial-gradient(ellipse at 12% 20%,#a53d58,transparent 65%),linear-gradient(145deg,#3f1635,#722234 65%,#9c382b);color:#fff0d9}
.home-promo-brand{display:flex;gap:10px;align-items:center;text-align:left;padding-right:34px}
.home-promo-brand>span:first-child{font-size:23px;font-weight:900;font-style:italic;letter-spacing:-1px;line-height:1}
.home-promo-brand-dot{font-size:15px;font-weight:600;letter-spacing:0}
.home-promo-label{font-size:10px;letter-spacing:1px;border:1px solid #ffd69e50;border-radius:5px;padding:3px 7px;color:#ffdbad;background:#ffffff09}
.home-promo-close{position:absolute;z-index:2;right:8px;top:8px;display:grid;place-items:center;width:44px;height:44px;border:0;background:transparent;color:#ffe5d2;cursor:pointer}
.home-promo-close svg{box-sizing:content-box;width:18px;height:18px;padding:7px;border:1px solid #ffffff30;border-radius:50%;background:#230d2533}
.modal.home-reward-dialog .home-promo-kicker{color:#f1c3a8;font-size:11px;letter-spacing:2px;margin:25px 0 7px}
.modal.home-reward-dialog h2{font-size:38px;line-height:1.25;letter-spacing:-1.5px;font-weight:900;margin:0;color:#fff6e6;white-space:nowrap;text-shadow:0 3px 0 #32132640}
.home-reward-dialog h2>span{margin-left:10px;color:#ffdb80}
.modal.home-reward-dialog .home-promo-subtitle{margin:9px 0 0;font-size:12px;color:#f5cfba;line-height:1.6}
.home-promo-art{height:197px;position:relative;margin:2px -24px 0;pointer-events:none}
.home-promo-orbit{position:absolute;width:300px;height:90px;left:50%;bottom:24px;transform:translateX(-50%) rotate(-12deg);border:1px solid #ffc58d60;border-radius:50%;box-shadow:0 0 30px #ffce6d18,inset 0 0 24px #ffce6d10}
.home-promo-screen{position:absolute;left:19%;top:17px;width:102px;height:161px;transform:rotate(-12deg);border:3px solid #ebae91;border-radius:17px;background:radial-gradient(ellipse at 100% 40%,#d77368,transparent 65%),linear-gradient(145deg,#4c3253,#9f4d67);box-shadow:9px 10px 20px #310b2c66;display:flex;align-items:center;flex-direction:column;gap:10px;padding:11px 7px;color:#ffe7d7}
.home-promo-screen-brand{font-weight:900;font-size:11px;font-style:italic;align-self:flex-start}
.home-promo-screen svg{width:42px;height:42px;margin-top:7px}
.home-promo-screen>span:last-of-type{font-size:9px;letter-spacing:1px}
.home-promo-screen i{height:3px;border-radius:5px;width:60%;background:linear-gradient(90deg,#ffe1a8 30%,#ffffff35 30%)}
.home-promo-gift{position:absolute;width:224px;height:224px;object-fit:contain;right:3%;top:-5px;filter:drop-shadow(0 10px 12px #4e11234d)}
.home-promo-coin{position:absolute;object-fit:contain;filter:drop-shadow(0 5px 5px #4e112355)}
.home-promo-coin-one{width:46px;height:46px;left:6%;top:39px;transform:rotate(-22deg)}
.home-promo-coin-two{width:32px;height:32px;right:10%;top:15px;transform:rotate(20deg)}
.home-promo-badge{position:absolute;left:50%;bottom:15px;transform:translateX(-50%) rotate(-4deg);white-space:nowrap;background:linear-gradient(100deg,#fff2bc,#ffd47e);color:#893d22;border:1px solid #fff0c8;border-radius:8px;padding:7px 18px;box-shadow:0 5px 12px #42132555;font-size:14px;font-weight:800;letter-spacing:1px}
.home-promo-badge>span{margin-right:5px}
.home-promo-body{padding:20px 24px 18px;background:radial-gradient(ellipse at 50% 0,#fffdf7,transparent 70%),#fff7e9}
.home-promo-steps{padding:0;margin:0 0 20px;list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.home-promo-steps li{position:relative;display:flex;flex-direction:column;gap:5px;align-items:center;color:#80594b;font-size:11px;white-space:nowrap}
.home-promo-steps li+li:before{position:absolute;content:'›';left:-6px;top:4px;color:#cda780;font-size:20px;font-weight:300}
.home-promo-steps b{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;color:#a35433;background:#f6e6d1;font-size:11px;font-weight:800;letter-spacing:.5px}
.home-promo-primary{display:flex;justify-content:center;align-items:center;gap:12px;width:100%;min-height:52px;padding:12px;border:1px solid #d94b27;border-radius:13px;color:#fff7df;background:linear-gradient(110deg,#df4e34,#ed7738);box-shadow:0 6px 16px #d9573030,inset 0 1px #ffb783;font-family:inherit;font-size:17px;font-weight:800;line-height:1.4;cursor:pointer}
.home-promo-primary span{font-size:17px;font-weight:800;letter-spacing:.5px}
.home-promo-primary svg{width:19px;height:19px}
.home-promo-primary:hover{filter:brightness(1.06)}
.home-promo-primary:active{transform:translateY(1px)}
.home-promo-skip{display:flex;align-items:center;justify-content:center;width:100%;margin:10px auto 0;min-height:48px;border:1px solid #cda67e;border-radius:12px;background:#f6e6cf;padding:10px 16px;color:#70452f;font-size:15px;font-weight:700;line-height:1.4;cursor:pointer}
.home-promo-skip:hover{background:#efd8b8}
.home-promo-skip:active{transform:translateY(1px)}
.modal.home-reward-dialog .home-promo-terms{margin:12px 0 0;font-size:10px;line-height:1.7;color:#927363}
.home-reward-dialog button:focus-visible{outline:3px solid #c89a53;outline-offset:2px}
@media(max-width:359px){.home-promo-hero{padding:20px 18px 0}.modal.home-reward-dialog h2{font-size:32px}.home-promo-art{margin-inline:-18px;height:180px}.home-promo-gift{width:200px;height:200px;right:0}.home-promo-screen{left:16%;width:94px;height:149px}.home-promo-body{padding:18px}.home-promo-steps{gap:3px}.home-promo-steps li{font-size:10px}}
@media(max-height:640px){.modal.home-reward-dialog .home-promo-kicker{margin-top:17px}.home-promo-art{height:132px}.home-promo-gift{width:165px;height:165px;top:-11px}.home-promo-screen{top:4px;width:80px;height:120px;gap:6px}.home-promo-screen svg{width:28px;height:28px}.home-promo-body{padding-top:15px;padding-bottom:12px}.home-promo-steps{margin-bottom:14px}}
@media(prefers-reduced-motion:reduce){.modal.home-reward-dialog,.home-promo-backdrop{animation:none}}

/* Multilingual copy: allow natural wrapping without clipping actions or terms. */
.modal.home-reward-dialog{overflow-y:auto;overscroll-behavior:contain}
.home-promo-brand>span:first-child{flex-shrink:0}
.home-promo-label{min-width:0;overflow-wrap:anywhere;letter-spacing:normal}
.modal.home-reward-dialog h2{white-space:normal;overflow-wrap:anywhere;letter-spacing:normal;font-size:clamp(24px,6.6vw,34px)}
.home-reward-dialog h2>span{display:inline-block;margin-inline-start:.2em}
.home-reward-dialog .home-promo-kicker,.home-reward-dialog .home-promo-subtitle{letter-spacing:normal;overflow-wrap:anywhere}
.home-reward-dialog .home-promo-screen>span:last-of-type{max-width:100%;line-height:1.35;letter-spacing:normal;overflow-wrap:anywhere}
.home-promo-badge{white-space:normal;width:max-content;max-width:85%;line-height:1.4;letter-spacing:normal}
.home-promo-steps li{white-space:normal;min-width:0;overflow-wrap:anywhere;line-height:1.5}
.home-promo-steps li>span{max-width:100%}
.home-promo-primary span{min-width:0;overflow-wrap:anywhere;letter-spacing:normal}
.home-promo-primary svg{flex-shrink:0}
.home-promo-skip,.home-promo-terms{overflow-wrap:anywhere}
.home-reward-dialog:lang(km){font-family:'Noto Sans Khmer','Khmer OS','Leelawadee UI',sans-serif}
.home-reward-dialog:lang(th){font-family:'Noto Sans Thai','Leelawadee UI',sans-serif}
.modal.home-reward-dialog:lang(km) h2,.modal.home-reward-dialog:lang(th) h2{line-height:1.5}

/* Keep the cash-out badge below the artwork so longer captions remain visible. */
.home-reward-dialog .home-promo-badge{position:relative;left:auto;bottom:auto;display:table;transform:rotate(-4deg);margin:6px auto 14px;max-width:100%}

/* Leave room for wrapped decorative captions on short viewports. */
.home-reward-dialog .home-promo-art{min-height:160px}

/* Cash message only; preserve the existing promotion layout and controls. */
.modal.home-reward-dialog .home-promo-cash-message{margin:-3px 0 14px;color:#ffe3ac;font-size:14px;font-weight:700;line-height:1.6;text-align:center;letter-spacing:normal;overflow-wrap:anywhere}

/* Compact mobile campaign: preserve copy/art/actions, spend less height on decoration. */
@media(max-width:1023px){
 .modal.home-reward-dialog{width:min(calc(100vw - 32px),360px);max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 20px);top:calc(50% + (var(--safe-top) - var(--safe-bottom))/2);border-radius:22px;-webkit-overflow-scrolling:touch}
 .home-reward-dialog .home-promo-hero{padding:14px 18px 0}
 .home-reward-dialog .home-promo-brand>span:first-child{font-size:21px}
 .home-reward-dialog .home-promo-label{font-size:9px}
 .modal.home-reward-dialog .home-promo-kicker{margin:12px 0 5px;font-size:10px}
 .modal.home-reward-dialog h2{font-size:clamp(23px,6.2vw,28px)}
 .modal.home-reward-dialog .home-promo-subtitle{margin:6px 0 0;font-size:11px;line-height:1.5}
 .home-reward-dialog .home-promo-art{height:116px;min-height:116px;margin:0 -18px}
 .home-reward-dialog .home-promo-screen{top:7px;left:20%;width:69px;height:102px;padding:7px 5px;gap:5px;border-width:2px;border-radius:12px}
 .home-reward-dialog .home-promo-screen svg{width:24px;height:24px;margin-top:2px;flex-shrink:0}
 .home-reward-dialog .home-promo-screen-brand{font-size:9px}
 .home-reward-dialog .home-promo-screen>span:last-of-type{font-size:8px}
 .home-reward-dialog .home-promo-gift{width:142px;height:142px;right:10%;top:-10px}
 .home-reward-dialog .home-promo-orbit{width:250px;height:64px;bottom:4px}
 .home-reward-dialog .home-promo-coin-one{width:33px;height:33px;left:9%;top:26px}
 .home-reward-dialog .home-promo-coin-two{width:25px;height:25px;right:12%;top:6px}
 .home-reward-dialog .home-promo-badge{margin:5px auto 8px;padding:5px 14px;font-size:13px}
 .modal.home-reward-dialog .home-promo-cash-message{margin:0 0 10px;font-size:13px;line-height:1.5}
 .home-reward-dialog .home-promo-body{padding:12px 18px 14px}
 .home-reward-dialog .home-promo-steps{margin-bottom:12px}
 .home-reward-dialog .home-promo-steps li{font-size:10px}
 .home-reward-dialog .home-promo-steps b{width:24px;height:24px}
 .home-reward-dialog .home-promo-primary{min-height:46px;padding:9px 12px}
 .home-reward-dialog .home-promo-primary span{font-size:15px}
 .home-reward-dialog .home-promo-skip{min-height:44px;padding:9px 12px;margin-top:8px;font-size:14px}
 .modal.home-reward-dialog .home-promo-terms{margin-top:8px;font-size:10px;line-height:1.5}
}
@media(max-width:1023px) and (max-height:620px){
 .home-reward-dialog .home-promo-hero{padding-top:10px}
 .modal.home-reward-dialog .home-promo-kicker{margin-top:6px}
 .home-reward-dialog .home-promo-art{height:76px;min-height:76px}
 .home-reward-dialog .home-promo-screen{transform:rotate(-12deg) scale(.7);transform-origin:top center;top:3px}
 .home-reward-dialog .home-promo-gift{width:105px;height:105px;top:-14px;right:14%}
 .home-reward-dialog .home-promo-orbit{height:45px;width:220px}
 .home-reward-dialog .home-promo-coin-one{width:26px;height:26px;top:20px}
 .home-reward-dialog .home-promo-coin-two{width:21px;height:21px}
 .home-reward-dialog .home-promo-body{padding-top:8px;padding-bottom:10px}
 .home-reward-dialog .home-promo-steps{margin-bottom:10px}
}
