.app-announcement-pending { overflow: hidden; }
.app-announcement-pending > :not(#app-announcement-root):not(script):not(.svg-sprite) { visibility: hidden !important; }
#app-announcement-root[hidden] { display: none; }
#app-announcement-root { position: fixed; z-index: 2000; inset: 0; display: grid; place-items: center; box-sizing: border-box; min-height: 100dvh; padding: max(18px,env(safe-area-inset-top)) 18px max(18px,env(safe-area-inset-bottom)); overflow: auto; background: #f6f1e8; color: #20332d; }
.app-announcement-splash { display: grid; justify-items: center; gap: 14px; text-align: center; }
.app-announcement-splash .brand-mark { width: 54px; height: 54px; display: grid; place-items: center; border-radius: 17px; background: #245d4f; color: #fff; }
.app-announcement-splash svg { width: 29px; height: 29px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.app-announcement-splash p { margin: 0; color: #63736d; font-size: 13px; font-weight: 700; }
.app-announcement-card { width: min(520px,100%); min-height: min(620px,calc(100dvh - 36px)); box-sizing: border-box; display: flex; flex-direction: column; padding: clamp(28px,6vw,52px); border: 1px solid #d6ddd6; border-radius: 28px; background: #fffdf8; box-shadow: 0 24px 70px rgb(20 48 39 / 18%); text-align: left; }
.app-announcement-art { width: 82px; height: 82px; margin-bottom: 30px; border-radius: 24px; overflow: hidden; box-shadow: 0 8px 22px rgb(20 48 39 / 16%); }
.app-announcement-art img { display: block; width: 100%; height: 100%; object-fit: cover; }
.app-announcement-card small { color: #a45335; font-size: 11px; font-weight: 800; letter-spacing: 1.2px; text-transform: uppercase; }
.app-announcement-card h1 { margin: 10px 0 14px; font: 700 clamp(32px,7vw,48px)/1.04 Fraunces,Georgia,serif; letter-spacing: -.8px; }
.app-announcement-card p { margin: 0; color: #566862; font-size: clamp(15px,3.5vw,18px); line-height: 1.65; white-space: pre-line; }
.app-announcement-actions { margin-top: auto; padding-top: 34px; }
.app-announcement-actions .button { width: 100%; min-height: 54px; font-size: 15px; }
.app-announcement-status { min-height: 20px; margin: 10px 0 0 !important; color: #a33c2f !important; font-size: 12px !important; text-align: center; }
@media(max-width:600px){#app-announcement-root{padding:0}.app-announcement-card{width:100%;min-height:100dvh;border:0;border-radius:0;padding:calc(34px + env(safe-area-inset-top)) 24px calc(24px + env(safe-area-inset-bottom))}.app-announcement-art{margin-top:5vh}}
