body.ftaps-app .ftag-page { display:flex; flex-direction:column; gap:18px; min-width:0; }
body.ftaps-app .ftag-calendar-head,body.ftaps-app .ftag-list-heading { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; }
body.ftaps-app .ftag-calendar-head h2 { margin:0; text-transform:capitalize; font-size:20px; }
body.ftaps-app .ftag-page .ftag-calendar-head { display:grid!important; grid-template-columns:44px minmax(0,1fr) 44px!important; gap:8px!important; }
body.ftaps-app .ftag-page .ftag-calendar-head h2 { text-align:center; min-width:0; overflow-wrap:anywhere; }
body.ftaps-app .ftag-page .ftag-calendar-head>.btn { display:flex!important; align-items:center!important; justify-content:center!important; width:44px!important; min-width:0!important; max-width:44px!important; height:44px!important; padding:0!important; margin:0!important; font-size:24px!important; }
body.ftaps-app .ftag-live-status[hidden] { display:none!important; }
body.ftaps-app .ft421-event-context { min-width:0; margin:0 0 20px; padding:16px; background:#fff; border:1px solid var(--line); border-radius:12px; }
body.ftaps-app .ft421-event-tabs { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:16px; }
body.ftaps-app .ft421-event-tabs>a { display:flex; flex:1 1 190px; min-width:0; align-items:center; justify-content:center; padding:10px 14px; min-height:44px; border:1px solid #dce4ee; border-radius:8px; background:#f6f8fb; color:#35506f; text-align:center; text-decoration:none; font-size:14px; font-weight:600; overflow-wrap:anywhere; }
body.ftaps-app .ft421-event-tabs>a[aria-current="page"] { background:#175ca7; border-color:#175ca7; color:#fff; }
body.ftaps-app .ft421-event-tabs>a:focus-visible { outline:3px solid #e8af39; outline-offset:3px; }
body.ftaps-app .ft421-event-context h2 { margin:0 0 6px; font-size:18px; }
body.ftaps-app .ft421-event-context p { margin:0; color:#52647a; font-size:14px; line-height:1.6; }
body.ftaps-app .ftag-calendar { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:6px; margin-top:18px; }
body.ftaps-app .ftag-weekday { text-align:center; color:var(--muted); font-size:12px; padding:6px; }
body.ftaps-app .ftag-day { display:flex; flex-direction:column; gap:6px; min-width:0; min-height:80px; padding:10px; background:#f8fafc; border:1px solid var(--line); border-radius:9px; color:var(--ink); text-decoration:none; }
body.ftaps-app .ftag-day>span { background:#e6f0fc; color:#175ca7; font-size:12px; border-radius:5px; padding:4px; }
body.ftaps-app .ftag-today { border-color:#175ca7; }
body.ftaps-app .ftag-selected { background:#175ca7; color:#fff; }
body.ftaps-app .ftag-events { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr)); gap:16px; }
body.ftaps-app .ftag-events>article { min-width:0; }
body.ftaps-app .ftag-people { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr)); gap:8px; max-height:320px; overflow:auto; padding:4px; }
body.ftaps-app .ftag-people label.ftag-person { display:flex!important; align-items:flex-start; gap:9px; border:1px solid var(--line); border-radius:8px; padding:10px; margin:0!important; }
body.ftaps-app .ftag-person input { flex:none; }
body.ftaps-app .ftag-person small { display:block; color:#8a5800; font-weight:400; margin-top:4px; }
body.ftaps-app .ftag-instructions { white-space:normal; overflow-wrap:anywhere; padding:12px; background:#f5f8fc; border-radius:8px; }
body.ftaps-app .ftag-notice { border-top:1px solid var(--line); padding:16px 0; }
body.ftaps-app .ftag-unread { border-left:3px solid #175ca7; padding-left:12px; }
body.ftaps-app .ftag-notice h3 { font-size:16px; }
body.ftaps-app .ftag-notification-link { display:block; margin-bottom:10px; padding:10px; background:#f2f7fd; border-radius:8px; font-size:13px; }
body.ftaps-app .ftag-notification-link small { display:block; margin-top:5px; color:var(--muted); }
@media(max-width:600px) {
 body.ftaps-app .ftag-calendar { gap:3px; }
 body.ftaps-app .ftag-day { padding:5px 2px; min-height:58px; text-align:center; border-radius:6px; }
 body.ftaps-app .ftag-day>span { font-size:11px; padding:2px; }
 body.ftaps-app .ftag-event-word { display:none; }
 body.ftaps-app .ftag-weekday { padding:4px 0; font-size:11px; }
 body.ftaps-app .ftag-calendar-head h2 { font-size:17px; }
}
