/* EPCC Phase 2.2 — rollout stabilization */
html,body,#app{max-width:100%;overflow-x:hidden}
*{overflow-wrap:break-word}
.member-wrap,.member-content,.member-grid,.member-panel,.member-app-head,.member-app-actions{min-width:0}
.member-nav{overflow:hidden;padding:6px}
.member-nav-track{display:flex;gap:7px;overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.member-nav-track::-webkit-scrollbar{display:none}
.member-nav a{position:relative;min-height:44px;flex:0 0 auto}
.member-nav-badge{min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#a6382b;color:#fff;display:inline-grid;place-items:center;font-size:.65rem;font-weight:900;line-height:1;margin-left:1px}
.section-count{display:inline-flex;align-items:center;margin-left:6px;padding:3px 7px;border-radius:999px;background:#eceae4;color:#575a54;font-size:.66rem;font-weight:850;vertical-align:middle;white-space:nowrap}
.alert-card.unread{box-shadow:inset 3px 0 0 #1b1d1a;background:#fff}
.unread-dot{display:inline-block;width:7px;height:7px;background:#a6382b;border-radius:50%;margin-right:5px;vertical-align:1px}
.alert-actions{display:flex;align-items:center;gap:10px;margin-top:9px;flex-wrap:wrap}
.link-btn.compact{padding:0;font-size:.8rem;font-weight:800;text-decoration:none}
.notification-center-head{align-items:flex-start}
.notification-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:start}
.notification-main{min-width:0}.notification-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.notification-item{margin-bottom:10px}.notification-item:last-child{margin-bottom:0}
.my-prayer-history{margin-top:18px}.my-prayer-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start;padding:15px 0;border-bottom:1px solid #ecebe6}.my-prayer-row:last-child{border-bottom:0}.my-prayer-row p{margin:5px 0 7px}
.privacy-note{margin-top:16px;padding:14px;background:#f4f2ec;border-radius:13px}.privacy-note p{margin:5px 0 0;color:var(--muted);font-size:.86rem;line-height:1.45}
.profile-photo-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.profile-photo-actions .small{flex-basis:100%}
.directory-privacy-card{padding:15px;border:1px solid var(--line);border-radius:14px;background:#faf9f6}.directory-privacy-card small{color:var(--muted);line-height:1.45;display:inline-block;margin-top:3px}
.people-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) 220px;gap:10px;margin-bottom:14px}.people-toolbar input,.people-toolbar select{border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:#fff}
.inline-toggle{display:flex;gap:7px;align-items:center;font-size:.8rem;font-weight:750;white-space:nowrap}.inline-toggle input{width:18px;height:18px}
.rollout-stats{margin-bottom:0}.rollout-summary .stat-grid{grid-template-columns:repeat(4,1fr)}
.btn,.member-global-signout,.mobile-menu-btn,.member-nav a,.directory-actions a{min-height:44px}
.btn.btn-sm{min-height:38px}

@media(max-width:900px){
  .notification-row{grid-template-columns:1fr}.notification-actions{justify-content:flex-start}
  .rollout-summary .stat-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
  .container{width:min(100% - 24px,var(--max))}
  .site-header .header-inner{gap:8px;min-width:0}.brand{min-width:0;flex:1}.brand img{max-width:150px;width:100%;height:auto}.nav-actions{flex:0 0 auto}
  .member-app{padding-top:22px}.member-app-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;width:100%}.member-app-head>div:first-child{min-width:0}.member-app-head h1{font-size:clamp(1.95rem,10vw,2.8rem);max-width:100%}.member-app-actions{justify-self:end}.member-global-signout{font-size:.75rem;padding:8px 10px}
  .member-nav{margin-left:0;margin-right:0;border-radius:14px}.member-nav-track{padding-bottom:1px}.member-nav a{padding:9px 10px;font-size:.78rem}
  .member-hero-card{padding:23px}.member-panel{padding:16px;border-radius:18px}.quick-grid{gap:9px}.quick-grid a{padding:15px}
  .notification-center-head{display:block}.notification-center-head .btn{margin-top:10px;width:100%}.notification-actions .btn{flex:1;text-align:center}
  .my-prayer-row{grid-template-columns:1fr}.my-prayer-row .status{width:max-content}
  .profile-photo-row{align-items:flex-start}.profile-photo-actions{flex:1}.profile-photo-actions .btn{flex:1;text-align:center}
  .people-toolbar{grid-template-columns:1fr}.people-toolbar select{width:100%}
  .rollout-summary .stat-grid{grid-template-columns:1fr 1fr}
  .table td,.table th{white-space:normal;min-width:120px}.table td:first-child,.table th:first-child{min-width:200px}
}
@media(max-width:390px){
  .container{width:min(100% - 18px,var(--max))}.brand img{max-width:132px}.mobile-menu-btn{width:44px;height:44px}
  .member-app-head{grid-template-columns:1fr}.member-app-actions{justify-self:start}.member-global-signout{margin-top:2px}.quick-grid{grid-template-columns:1fr}.rollout-summary .stat-grid{grid-template-columns:1fr}
}
@supports (padding: max(0px)){
  @media(display-mode:standalone){
    body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
    .site-header{margin-left:calc(-1 * env(safe-area-inset-left));margin-right:calc(-1 * env(safe-area-inset-right));padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
    .member-app{padding-bottom:calc(96px + env(safe-area-inset-bottom))}
  }
}
