:root { --brand:#1A8781; --bg:#f6f7f9; --text:#1b1f23; --muted:#6b7280; --header-h:56px; --subtabs-h:44px; --bottomnav-h:56px; }
* { box-sizing:border-box; }
.apaba-app { min-height:100vh; display:flex; flex-direction:column; background:var(--bg); color:var(--text); }
.app-header { position:sticky; top:0; z-index:50; background:var(--brand); color:white; padding:12px 16px; display:flex; align-items:center; gap:8px; min-height:var(--header-h); }
.app-title { font-weight:700; letter-spacing:.5px; font-size:18px; flex:1; }
.install-btn { border:0; background:white; color:var(--brand); border-radius:999px; padding:6px 12px; font-weight:600; }
.app-main { flex:1; padding:0px; padding-bottom: calc(var(--bottomnav-h) + 16px + env(safe-area-inset-bottom)); }
.card { background:white; border-radius:16px; padding:16px; box-shadow:0 2px 12px rgba(0,0,0,.06); }
.card.no-padding { padding:0; overflow:hidden; }
.app-nav { position:fixed; left:0; right:0; bottom:0; z-index:60; background:white; display:flex; border-top:1px solid #e8e8e8; min-height:var(--bottomnav-h); padding-bottom: env(safe-area-inset-bottom); }
.nav-btn { flex:1; padding:12px 6px; background:transparent; border:0; font:inherit; }
.nav-btn[aria-pressed="true"] { color:var(--brand); font-weight:600; }
.view[hidden] { display:none !important; }
.visually-hidden { position:absolute !important; height:1px; width:1px; overflow:hidden; clip:rect(1px, 1px, 1px, 1px); white-space:nowrap; }
.subtabs-bar { position:sticky; top: calc(var(--header-h) + env(safe-area-inset-top)); z-index:45; background: var(--bg); padding-top: 8px; margin: -8px -16px 8px; padding-left: 16px; padding-right: 16px; border-bottom: 1px solid #e8e8e8; }
.subtabs { display:flex; gap:8px; margin-bottom:8px; }
.subtab { border:1px solid #e5e7eb; background:white; border-radius:999px; padding:8px 12px; }
.subtab[aria-selected="true"] { background:var(--brand); color:white; border-color:var(--brand); }

/* iframe sizing */
#tools-frame { width:100%; border:0; display:block; height:60vh; }
@media (min-height:700px){ #tools-frame { height:70vh; } }
@media (min-height:900px){ #tools-frame { height:75vh; } }

/* Remote content styles (unchanged) */
.loader { color: var(--muted); font-size:14px; }
.remote-content { font-size:15px; line-height:1.5; }
.remote-content img, .remote-content video { max-width:100%; height:auto; border-radius:8px; }
.remote-content h1, .remote-content h2, .remote-content h3 { margin-top:1em; color: var(--brand); }
.remote-content a { color: var(--brand); text-decoration: underline; }

@supports(padding: constant(safe-area-inset-bottom)) { .app-header { padding-top: calc(12px + env(safe-area-inset-top)); } }

/* Event Manager CSS */
.wpem-event-listings.wpem-event-listing-list-view .wpem-event-banner-img, .wpem-event-listing-list-view .wpem-event-thumbnail, .event_listings_class .wpem-event-banner-img { display:none !important; }
.wpem-event-listings .wpem-event-layout-wrapper .wpem-event-infomation .wpem-event-details .wpem-event-title .wpem-heading-text { font-size:14px !important; line-height:20px !important; font-weight:600 !important; }



/* === App patch: hide Google reCAPTCHA UI globally inside the app (web & installed) ===
   If your site uses reCAPTCHA, ensure you add the proper privacy/terms notice elsewhere.
*/
.grecaptcha-badge,
.grecaptcha-badge *,
.rc-anchor-invisible-text,
.rc-anchor-alert {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
