/* Life Forge v46 — simulated tester ad banner and pre-activity interstitial.
   AdMock: no external network call, ad-tracking SDK, or advertiser click destination. */
#lf46-test-banner{
 position:fixed;z-index:27;left:50%;transform:translateX(-50%);
 bottom:calc(84px + env(safe-area-inset-bottom,0px));
 width:min(calc(100% - 24px),688px);height:57px;
 box-sizing:border-box;display:flex;align-items:center;gap:10px;
 padding:7px 13px;border:1px solid var(--lf38-outline,#6381a0);
 background:linear-gradient(115deg,var(--lf38-card,#182939),var(--lf38-card2,#273c50));
 border-radius:15px;box-shadow:0 7px 24px #050c193c;
 color:var(--lf38-ink,#fff);
}
#lf46-test-banner[hidden]{display:none!important}
#lf46-test-banner .lf46-tag{display:grid;place-items:center;flex:0 0 49px;min-height:31px;border:1px solid var(--lf38-main,#cc9de6);
 background:color-mix(in srgb,var(--lf38-main,#cc9de6),transparent 84%);
 border-radius:7px;color:var(--lf38-main,#cc9de6);font:900 9px 'Outfit',sans-serif;letter-spacing:.5px}
.lf46-banner-text{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0;overflow:hidden}
.lf46-banner-text strong{font:800 11px 'Outfit',sans-serif;color:var(--lf38-ink,#fff);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.lf46-banner-text small{font:600 9px 'DM Sans',sans-serif;color:var(--lf38-muted,#aeb9c9);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.lf46-test-size{font:850 9px 'DM Sans';color:var(--lf38-muted,#aeb9c9);white-space:nowrap}
body.lf46-banner-enabled #app .view{padding-bottom:max(170px,calc(170px + env(safe-area-inset-bottom,0px)))!important}
body.lf46-banner-enabled #lf36-panel .lf36-panel-body{padding-bottom:170px!important}
#lf46-tester-interstitial[hidden]{display:none!important}
#lf46-tester-interstitial{position:fixed;inset:0;z-index:999992;
 background:#0b1422cc;backdrop-filter:blur(16px);
 display:flex;align-items:center;justify-content:center;padding:18px;
 overflow:auto;color:#fff;
}
body.lf46-test-modal-open{overflow:hidden!important}
.lf46-ad-card{position:relative;max-width:465px;width:100%;max-height:100%;overflow:auto;
 border:1px solid #d3dff18b;border-radius:27px;
 background:linear-gradient(155deg,#1f2c4a,#17253c 58%,#27344f);
 box-shadow:0 20px 65px #010613b5,0 2px 8px #ffffff1e;
 padding:16px 16px 12px;box-sizing:border-box
}
.lf46-ad-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.lf46-big-label{color:#ebf2ff;border:1px solid #d9e8f09c;letter-spacing:1.4px;font:900 10px 'Outfit';padding:7px 10px;border-radius:10px}
.lf46-ad-head button{border:1px solid #eff5ff5e;background:#ffffff12;color:white;border-radius:50%;font-size:17px;width:34px;height:34px;cursor:pointer}
.lf46-ad-illustration{height:clamp(140px,28vh,220px);position:relative;overflow:hidden;margin-top:12px;border-radius:20px;
 background:radial-gradient(circle at 66% 38%,#f8dcb9 0,#a9c8e6 18%,#a4a0d2 46%,#5e81a1 76%,#345978 100%)}
.lf46-ad-lotus{position:absolute;z-index:5;left:17%;top:19%;font-size:clamp(52px,13vw,90px);line-height:1;color:#eee3fa;text-shadow:0 0 20px #ffffffb0}
.lf46-sun{position:absolute;width:85px;height:85px;border-radius:50%;background:#f8e9cc;right:19%;top:23%;filter:blur(2px);box-shadow:0 0 47px #fff2ccab}
.lf46-hill{position:absolute;width:180%;height:83%;left:-23%;border-radius:50% 50% 0 0;bottom:-54%;transform:rotate(-11deg)}
.lf46-hill-back{background:#688ba9;bottom:-38%;left:3%;transform:rotate(11deg)}
.lf46-hill-front{background:linear-gradient(140deg,#497c7d,#24576a);bottom:-58%;left:-41%}
.lf46-ad-copy{text-align:center;padding:17px 9px 0}
.lf46-ad-copy>small{color:#d3b0f6;letter-spacing:1.6px;font:900 9px 'Outfit'}
.lf46-ad-copy h2{font:900 clamp(23px,6vw,32px)/1.13 'Outfit',sans-serif;color:#fff!important;margin:9px 0 10px}
.lf46-ad-copy p{font:600 12px/1.55 'DM Sans',sans-serif;color:#e0e7f0;margin:0 0 13px}
.lf46-activity-copy{background:#ffffff0f;border:1px solid #ffffff26;border-radius:12px;color:#f6ebff;font:800 12px 'Outfit';padding:9px;margin-bottom:12px}
.lf46-continue{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;border:0;border-radius:14px;padding:14px;
 background:linear-gradient(110deg,#e4a9f0,#a7c4f5);color:#25324e;font:900 13px 'Outfit';cursor:pointer;min-height:49px}
.lf46-continue span{font-size:21px}
.lf46-not-now{padding:10px;border:0;background:none;color:#e2d8ef;font:800 11px 'Outfit';cursor:pointer;margin-top:5px}
.lf46-disclosure{text-align:center;color:#b7c3d4!important;font:700 10px/1.4 'DM Sans'!important;margin:10px 0 2px!important}
@media(max-width:365px){#lf46-test-banner{gap:6px;padding:6px 7px;height:50px;bottom:calc(80px + env(safe-area-inset-bottom,0px))}#lf46-test-banner .lf46-tag{flex-basis:39px;font-size:8px}.lf46-test-size{display:none}.lf46-banner-text small{font-size:8px}.lf46-ad-card{padding:11px}}
@media(prefers-reduced-motion:reduce){#lf46-tester-interstitial *{animation:none!important;transition:none!important}}

/* Google served TEST banners only in the Android Capacitor app. Hide web placeholder while real banner is loaded. */
body.lf46-native-ads #lf46-test-banner{display:none!important}
body.lf46-native-ads #app .view{padding-bottom:180px!important}

/* v47: no ads of any kind during first-run setup or profile-edit questionnaire. */
body.lf35-modal-open #lf46-test-banner,
body.lf35-modal-open #lf46-tester-interstitial{display:none!important}
/* A Google native banner goes at the physical screen bottom. Keep five-tab navigation directly above it. */
body.lf47-native-banner-visible .lf-bottom-nav{
 bottom:var(--lf47-banner-height,60px)!important;
}
body.lf47-native-banner-visible #app .view{
 padding-bottom:calc(110px + var(--lf47-banner-height,60px))!important;
}
body.lf47-native-banner-visible #app{
 padding-bottom:var(--lf47-banner-height,60px)!important;
}
