:root{font-family:Arial,Helvetica,sans-serif;color:#233e38;background:#f6f7f3;font-synthesis:none;font-size:18px;line-height:1.55}*{box-sizing:border-box}body{margin:0}button,select,input{font:inherit}button,a,select,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer;min-height:48px;border:0;border-radius:10px;font-weight:600;transition:background .15s}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #c07b20;outline-offset:4px}button:disabled{opacity:.5;cursor:not-allowed}h1,h2,p{margin-top:0}h1{font-family:Georgia,serif;font-size:2.3rem;font-weight:400;line-height:1.2;letter-spacing:-1px;margin:10px 0 14px}h2{font-size:1.13rem;line-height:1.4;margin-bottom:10px}p{margin-bottom:12px}small{font-size:.76rem}header{height:104px;background:#fff;border-bottom:1px solid #e2e7df;display:flex;align-items:center;justify-content:space-between;padding:0 4%}.brand{display:flex;gap:12px;align-items:center;color:#174e45;text-decoration:none;font-family:Georgia,serif;font-size:2.15rem;line-height:1}.brand small{display:block;font:600 .55rem Arial;letter-spacing:2.8px;margin-top:9px}.brand-icon{font:1.6rem Georgia;border:1px solid #b9cbbf;border-radius:50%;width:50px;height:50px;display:grid;place-items:center}.header-actions{display:flex;align-items:center;gap:25px}.text-size{background:none;color:#294e44;font-size:1.2rem}.text-size span{font-size:.8rem;margin-left:8px}.shell{display:flex;max-width:1600px;margin:auto}aside{width:264px;flex-shrink:0;padding:38px 24px;border-right:1px solid #e1e6dd;display:flex;flex-direction:column;min-height:calc(100vh - 142px);background:#fafbf8}.parish{padding:0 10px 32px;display:flex;flex-direction:column;gap:6px}.eyebrow{font-size:.64rem;letter-spacing:1.8px;color:#65766a;font-weight:700}.parish strong{font-size:.92rem}.parish>span:last-child{font-size:.73rem;color:#65766a}nav button{display:flex;align-items:center;gap:16px;width:100%;background:transparent;text-align:left;color:#61716a;padding:12px 17px;margin-bottom:8px;font-size:.88rem}nav button span{font-size:1.3rem;min-width:24px}.active{background:#e6eee5!important;color:#194e40!important}.selected{background:#fff!important;box-shadow:0 2px 6px #263d3510;color:#174e45!important}main{padding:42px 4%;width:100%;min-width:0;max-width:1250px}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:30px}.page-heading p{font-size:.88rem;color:#627269;max-width:580px}.month{white-space:nowrap;font-size:.64rem;letter-spacing:1px;border:1px solid #dce2d6;border-radius:7px;padding:10px 12px;color:#677260;margin-top:8px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:25px 0}.stats>div{border:1px solid #dfe5da;background:#fff;border-radius:12px;padding:22px}.stats>div>span{font:1.9rem Georgia,serif;color:#295b49}.stats p{font-size:.82rem;margin:6px 0}.stats small{color:#788176;font-size:.69rem}.card{background:#fff;border:1px solid #dfe5da;border-radius:14px;padding:25px;margin-bottom:22px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px}.section-title h2{margin:0}.section-title p{font-size:.8rem;color:#627269;margin:6px 0 0}.muted{color:#68756a;font-size:.82rem}.primary{background:#195547;color:#fff;padding:12px 22px;font-size:.85rem}.primary:hover{background:#113f34}.full{width:100%;display:flex;justify-content:space-between;align-items:center;margin-top:22px}.tag{font-size:.58rem;letter-spacing:.8px;background:#edf2e8;color:#4b6741;padding:6px 9px;border-radius:5px;display:inline-block;white-space:nowrap}.pair{display:inline-block;font-size:.62rem;background:#f3eedf;color:#7b6030;padding:4px 7px;border-radius:5px;line-height:1.4}.link-button{background:none;color:#285f4c;font-size:.8rem;padding:8px 0}footer{display:flex;justify-content:space-between;border-top:1px solid #dfe5da;margin-top:24px;padding-top:22px;font-size:.66rem;color:#7d887b}select{display:block;border:1px solid #c9d4c4;border-radius:8px;padding:12px 35px 12px 14px;background:#fff;color:#294e40;font-size:.9rem;margin-top:7px;max-width:100%;min-height:48px}.info-box{background:#eaf0e5;border-left:3px solid #829875;padding:16px 18px;font-size:.83rem;border-radius:4px;margin-bottom:24px;color:#435d45}.choice{display:flex;gap:8px}.choice button{border:1px solid #d4ddce;background:#fff;color:#54674f;padding:10px 14px;font-size:.8rem}.choice .no{background:#f7eae3;border-color:#a16d55;color:#7a4932}.notice{padding:16px 20px;background:#e3f0df;border:1px solid #c5d6b8;border-radius:8px;margin-bottom:22px;font-size:.85rem}.outline{background:#fff;border:1px solid #bacbb2;color:#355d2c;padding:9px 15px;font-size:.78rem}.actions{display:flex;gap:10px}.replacement{border-color:#b99a62}.checkbox{display:flex;align-items:flex-start;gap:12px;font-size:.85rem;margin-bottom:24px}.checkbox input{min-width:24px;min-height:24px;accent-color:#195547}.bottom-nav{display:none}.large{font-size:1.16rem}.large h1{font-size:2.5rem}.large p,.large button{font-size:1rem}@media(min-width:1450px){main{padding:48px 60px}}@media(max-width:1100px){aside{width:225px;padding:30px 16px}main{padding:30px 25px}.page-heading{display:block}.month{display:inline-block;margin:0}.stats{gap:12px}.stats>div{padding:18px 14px}.choice{flex-direction:column}}@media(max-width:700px){:root{font-size:18px}header{height:83px;padding:0 20px}.brand{font-size:1.9rem}.brand-icon{width:42px;height:42px}.header-actions{gap:12px}.text-size span{display:none}aside{display:none}main{padding:28px 18px 165px}.page-heading{margin-bottom:24px}h1{font-size:1.9rem;letter-spacing:-.6px}.page-heading p{font-size:.91rem}.eyebrow{font-size:.61rem}.month{font-size:.6rem;padding:8px 10px}.stats{grid-template-columns:1fr;gap:0;border:1px solid #dfe5da;border-radius:12px;overflow:hidden}.stats>div{border:0;border-radius:0;display:grid;grid-template-columns:66px 1fr;column-gap:12px;padding:17px 20px}.stats>div+div{border-top:1px solid #e5eadd}.stats>div>span{grid-row:span 2;align-self:center;font-size:1.6rem}.stats p{margin:0;font-size:.88rem}.stats small{font-size:.73rem}.card{padding:22px 18px}.section-title{flex-wrap:wrap;gap:10px}h2{font-size:1.05rem}.muted{font-size:.86rem}.full{min-height:54px}select{width:100%}.choice{flex-direction:row;margin-top:16px}.choice button{flex:1;padding:12px 8px;min-height:52px;font-size:.82rem}.actions{flex-direction:column}.outline{padding:10px 12px}.checkbox{font-size:.9rem}.replacement>.primary{width:100%}footer{display:block;font-size:.72rem}footer>span{display:block;margin:6px 0}.bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;height:80px;background:#fff;border-top:1px solid #d6dfcf;z-index:5;padding:4px 5px env(safe-area-inset-bottom)}.bottom-nav button{flex:1;display:flex;flex-direction:column;justify-content:center;gap:1px;padding:6px 2px;margin:0;font-size:.63rem;text-align:center;border-radius:9px}.bottom-nav button span{font-size:1.3rem}.large h1{font-size:2.1rem}.large .choice{flex-direction:column}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}.brand{font-family:Arial,Helvetica,sans-serif;font-size:1.15rem;font-weight:700;letter-spacing:.03em}.brand-icon{font-family:Arial,Helvetica,sans-serif;background:#174f49;border:0;color:#fff;border-radius:9px;width:38px;height:38px;font-size:1.25rem}.brand small{font-size:.55rem;letter-spacing:1.4px}.schedule-skip{position:fixed;top:10px;left:10px;transform:translateY(-180%);background:#fff;padding:12px 18px;z-index:20;color:#174f49}.schedule-skip:focus{transform:none}#schedule-main:focus{outline:none}h1{font-family:Arial,Helvetica,sans-serif;letter-spacing:-.025em;font-weight:700}h1{font-size:2rem}@media(max-width:700px){h1{font-size:1.8rem}.brand{font-size:1.05rem}}.resource-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:24px}.resource-filters{display:flex;gap:8px;flex-wrap:wrap}.resource-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.resource-card{margin:0;display:flex;flex-direction:column;align-items:flex-start}.resource-card>.section-title{width:100%}.resource-card>p{font-size:.88rem}.resource-card>.outline,.resource-download{margin-top:auto}.resource-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:10px;background:#eaf0e5;color:#195547;font-size:1.8rem}.resource-filename{overflow-wrap:anywhere;color:#5c6c55}.resource-download{display:inline-flex;align-items:center;min-height:52px;padding:12px 18px;border-radius:10px;background:#195547;color:#fff;text-decoration:none;font-weight:700;font-size:.9rem}.resource-form>label{display:flex;flex-direction:column;gap:8px;font-size:.9rem;font-weight:700;margin-bottom:20px}.resource-form input:not([type=checkbox]),.resource-form textarea{width:100%;max-width:100%;min-height:52px;padding:12px;border:1px solid #bdcbb5;border-radius:8px;background:#fff;color:#233e38;font-size:.95rem}.resource-form select{width:100%;margin-top:0}.resource-error{color:#8f3526;background:#fff0eb;padding:14px;border-radius:8px}.resource-list+.muted{margin-top:24px}@media(max-width:700px){.resource-list{grid-template-columns:1fr}.resource-toolbar>.primary{width:100%}.resource-filters{width:100%;display:grid;grid-template-columns:1fr 1fr}.resource-filters button{min-height:52px;font-size:.8rem}.resource-form>.primary{width:100%}.bottom-nav button{font-size:.58rem}.resource-card{padding:22px 18px}.resource-form input[type=file]{font-size:.78rem}.resource-card h2{font-size:1.15rem}}.login-page{min-height:100dvh}.login-main{max-width:580px;margin:auto;padding:40px 20px}.login-card{padding:32px}.login-card h1{margin-top:12px}.login-card>p{color:#627269;font-size:.95rem}.login-card .full{justify-content:center;gap:20px}.login-main>.muted{padding:0 10px}.header-actions>.outline{font-size:.75rem}@media(max-width:700px){.login-main{padding:24px 16px}.login-card{padding:24px 20px}.header-actions{gap:8px}.header-actions>.outline{padding:8px 10px}.login-page header{height:86px}.login-page .brand{font-size:1rem}}.welcome-page{min-height:100dvh}.welcome-main{max-width:640px;margin:auto;padding:34px 24px}.welcome-main h1{font-size:2.5rem;line-height:1.15;margin:12px 0}.welcome-walkthrough{display:flex;justify-content:space-between;align-items:center;gap:16px;color:#174f49;text-decoration:none;border:1px solid #bdcdb4;border-radius:12px;padding:20px;background:#fff}.welcome-walkthrough strong{display:block;font-size:1rem}.welcome-walkthrough small{display:block;font-size:.8rem;margin-top:4px;color:#60715f}.welcome-privacy{margin:14px 0;color:#5c7156;font-size:.85rem}.welcome-privacy summary{cursor:pointer;min-height:48px;padding:12px 0;font-weight:700}.welcome-privacy p{margin:12px 0}.welcome-main footer{font-size:.73rem}.password-toggle{margin-top:-12px;display:block}.session-panel{display:flex;flex-direction:column;gap:7px;margin-top:auto;padding-top:24px;border-top:1px solid #d8e2cf}.session-panel strong{font-size:.95rem}.session-panel small{font-size:.8rem;color:#62765b}.session-panel .outline{margin-top:10px}.login-main .login-card h1{font-size:1.85rem}.header-actions>.outline{min-height:44px}.welcome-main .card{margin-bottom:16px}@media(min-width:900px){.welcome-main{padding-top:44px}.welcome-main h1 br{display:none}}@media(max-width:700px){.welcome-page header{height:72px}.welcome-main{padding:24px 18px}.welcome-main h1{font-size:2rem}.welcome-main .eyebrow{font-size:.58rem}.welcome-main footer{padding-bottom:10px}.login-main{padding-top:22px}.login-card>p{font-size:.9rem}.login-card .resource-form>label{margin-bottom:16px}.login-card .full{min-height:52px}}.welcome-page>header{height:72px}.welcome-page>header .outline{min-height:44px;padding:8px 18px}.welcome-main{padding:16px 24px 28px}.welcome-main .welcome-walkthrough{margin-top:4px}@media(min-width:900px){.welcome-main{padding-top:20px}}.header-actions{margin-left:auto}@media(max-width:700px){.app header{padding-left:14px;padding-right:14px}.header-actions{gap:6px}.app .brand{font-size:1rem}.app .brand-icon{width:34px;height:34px}.app .brand{gap:9px}.app .text-size{padding:8px;font-size:1.05rem}}.login-home-button{display:grid;place-items:center;min-width:48px;min-height:48px;margin-left:auto;background:#fff;border:1px solid #bdcdb4;border-radius:12px;color:#174f49}.login-home-button:hover{background:#e6eee5}.login-home-button:focus-visible{outline:3px solid #b84b13;outline-offset:4px}.signin-code{margin:8px 0 16px;font:700 2rem Arial,Helvetica,sans-serif;letter-spacing:.28em;color:#174f49}.login-card>.outline.full{width:100%;margin-top:12px}.signin-device .primary,.signin-device .outline{margin-top:8px}.profile-icon{width:48px;height:48px;min-width:48px;padding:0;border-radius:50%;background:#174f49;color:#fff;font-weight:700;display:grid;place-items:center}.profile-icon[aria-pressed=true]{box-shadow:0 0 0 3px #c07b20}.profile-page{max-width:640px}.profile-identity{display:flex;align-items:center;gap:16px;margin-bottom:8px}.profile-identity h2{margin:0 0 4px}.profile-identity p{margin:0}.profile-mark{width:64px;height:64px;flex:0 0 64px;border-radius:50%;background:#174f49;color:#fff;display:grid;place-items:center;font:700 1.6rem/1 Arial,Helvetica,sans-serif}.profile-page .signin-device{margin-top:16px}:root{font-size:17px;line-height:1.5;-webkit-text-size-adjust:100%;text-size-adjust:100%}h1{font-size:clamp(1.5rem,3vw,1.85rem);line-height:1.25}h2{font-size:1.12rem;line-height:1.4}.welcome-main h1{font-size:clamp(1.8rem,4vw,2.1rem)}.login-main .login-card h1{font-size:1.65rem}.page-heading h1{font-size:clamp(1.5rem,3vw,1.85rem)}.login-card>p,.resource-card>p,.muted,.info-box,.page-heading p{font-size:.94rem;line-height:1.55}.primary,.outline,.resource-download,.resource-form input:not([type=checkbox]),.resource-form textarea,select{font-size:.94rem}.welcome-walkthrough small,.welcome-privacy{font-size:.82rem}.stats>div>span{font-size:1.65rem}.stats p{font-size:.94rem}.stats small{font-size:.82rem}.resource-form>label,.checkbox{font-size:.94rem}.resource-filters button{font-size:.88rem}.tag,.pair{font-size:.72rem;letter-spacing:.3px}.eyebrow{font-size:.7rem;letter-spacing:1px}.app.large{font-size:1.16rem}.app.large p,.app.large button,.app.large input,.app.large select,.app.large textarea{font-size:1.08rem}.app.large h1{font-size:1.95rem}@media(max-width:700px){:root{font-size:17px}.welcome-main{padding-top:20px}.welcome-main h1{font-size:1.85rem}.login-main .login-card h1{font-size:1.6rem}.login-card>p{font-size:.94rem}.bottom-nav button{font-size:.72rem}.resource-filters button{font-size:.88rem}.resource-card h2{font-size:1.12rem}}@media(max-width:360px){.brand small{letter-spacing:1px}.bottom-nav button{font-size:.7rem}}.members-module{max-width:1050px}.member-filters{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin:20px 0}.member-filters label{display:flex;flex-direction:column;gap:6px;font-size:.85rem;flex:1;min-width:150px}.member-filters input{font:inherit;min-height:48px;border:1px solid #bdcdb4;border-radius:8px;padding:10px;background:#fff;width:100%}.member-filters select{font-size:.9rem;width:100%;margin:0}.member-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.member-record{margin:0;min-width:0}.member-record h2,.member-record p{overflow-wrap:anywhere}.member-group-tags{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}.member-group-tags .tag{white-space:normal}.member-record .actions{margin-top:16px}.member-pagination{display:flex;justify-content:space-between;margin:24px 0}.member-editor fieldset{border:0;padding:0;margin:0;min-width:0}.member-editor fieldset>label{display:flex;flex-direction:column;gap:8px;margin-bottom:18px;font-size:.95rem}.member-editor fieldset>fieldset{border:1px solid #cbd8be;border-radius:10px;padding:16px;margin-bottom:20px}.member-editor legend{font-weight:700;font-size:.9rem;padding:0 8px}.membership-choice{border-bottom:1px solid #e1e7da;padding:10px 0}.membership-choice .checkbox{margin:0;min-height:44px;align-items:center}.member-confirm{border-color:#b99a62}.members-module .resource-error .outline,.members-module .resource-error .link-button{display:block;margin-top:12px}.member-editor .resource-error{margin-bottom:16px}.session-loading{display:grid;place-items:center;min-height:100dvh;padding:24px;color:#174f49}@media(max-width:700px){.member-cards{grid-template-columns:1fr}.member-filters{display:grid;grid-template-columns:1fr 1fr}.member-filters label:first-child{grid-column:1/-1}.member-filters label{min-width:0}.member-filters button{grid-column:1/-1}.member-editor .primary{width:100%}.member-record .actions{flex-direction:row}.member-record .actions button{flex:1}}.admin-rail{display:none}@media(max-width:700px){.app .bottom-nav button{min-width:52px;font-size:.68rem}.app .bottom-nav{gap:2px}.app:not(.em-view){display:flex;flex-direction:column;height:100dvh;overflow:hidden}.app:not(.em-view) .shell{flex:1;min-height:0;overflow:hidden;align-items:stretch}.app:not(.em-view) .shell{flex-direction:column}.app:not(.em-view) .admin-rail{display:flex;flex-direction:row;flex:0 0 auto;gap:4px;width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;background:#fff;border-bottom:1px solid #d6dfcf;padding:6px 12px}.app:not(.em-view) .admin-rail::-webkit-scrollbar{display:none}.app:not(.em-view) .admin-rail button{flex:0 0 auto;width:auto;min-height:44px;margin:0;padding:8px 14px;border-radius:999px;background:transparent;color:#315a4f;font-size:.86rem;white-space:nowrap}.app:not(.em-view) .admin-rail button.active{background:#174f49!important;color:#fff!important}.app:not(.em-view) .admin-rail button:focus-visible{outline-offset:-3px}.app:not(.em-view) main{flex:1;min-width:0;min-height:0;overflow:auto;padding:20px 12px 32px}}.confirm-popup{border:1px solid #b99a62;border-radius:14px;padding:28px;max-width:440px;width:min(440px,calc(100% - 32px));background:#fff;color:#233e38;box-shadow:0 18px 48px #1b332833}.member-dialog{max-width:720px;width:min(720px,calc(100% - 24px));max-height:min(90dvh,920px);overflow:auto}.member-glance{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0 4px}.member-glance>div{background:#fff;border:1px solid #dfe5da;border-radius:12px;padding:12px 14px}.member-glance span{display:block;font-size:1.5rem;font-weight:700;color:#174e45;line-height:1.1}.member-glance p{margin:4px 0 0;font-size:.78rem;color:#627269}@media(max-width:700px){.member-glance{grid-template-columns:repeat(2,minmax(0,1fr))}.member-dialog{padding:18px 16px}}.confirm-popup::backdrop{background:#1b332880}.confirm-popup h2{font-size:1.2rem;margin-bottom:8px}.confirm-popup p{margin-bottom:0}.confirm-popup .actions{justify-content:flex-end;margin-top:20px}.confirm-popup .temporary-password{width:100%;margin-top:16px;min-height:48px;padding:10px 12px;border:1px solid #cbd5cc;border-radius:10px;background:#fff;font-family:Consolas,monospace;letter-spacing:.04em}.portal-field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.portal-field select{max-width:100%;min-width:0;min-height:48px;padding:10px;border:1px solid #cbd5cc;border-radius:10px;background:#fff;color:inherit}.portal-lineup{display:grid;gap:10px}.portal-zone{display:flex;gap:12px;align-items:center;border-top:1px solid #e2e7df;padding-top:10px}.portal-zone-letter{font-size:1.3rem;min-width:30px;color:#174e45}.portal-zone>div{flex:1;min-width:0}.portal-zone>div>div{padding:4px 0;overflow-wrap:anywhere}.portal-my-position{background:#e7eee8;border-radius:6px;padding:6px!important}.portal-zone .tag{margin-left:6px}.portal-table-wrap{overflow:auto}.portal-table-wrap table{width:100%;border-collapse:collapse;text-align:left}.portal-table-wrap th,.portal-table-wrap td{padding:10px 6px;border-bottom:1px solid #e2e7df;overflow-wrap:anywhere}.membership-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,160px),1fr));gap:10px}.membership-grid .membership-choice{display:flex;align-items:center;gap:8px;min-width:0;border:1px solid #d5dfd1;border-radius:9px;padding:10px 12px;background:#fff}.membership-grid .checkbox{flex:1;min-width:0;min-height:48px;overflow-wrap:anywhere;cursor:pointer}.membership-grid .checkbox input{flex-shrink:0}.membership-grid .tag{flex-shrink:0;font-size:.72rem}.member-editor fieldset>fieldset:has(.membership-grid){min-width:0;max-width:100%}.app:not(.em-view) .shell{width:100%;min-width:0}body:has(.app){height:100dvh;overflow:hidden}.app{display:flex;flex-direction:column;height:100dvh;overflow:hidden}.app>header,.login-page>header,.welcome-page>header{position:sticky;top:0;z-index:12;flex-shrink:0;background:#fff}.app>.shell{flex:1;min-height:0;margin:0 auto;overflow:hidden;width:100%}.app aside,.app .admin-rail{min-height:0;overflow:auto}.app main{flex:1;min-height:0;overflow:auto}.member-card{padding:12px 14px}.member-card>.section-title{margin-bottom:2px;gap:8px}.member-card h2{font-size:1rem;line-height:1.25}.member-card>p{margin:0;font-size:.78rem;line-height:1.3}.member-card .member-group-tags{margin:4px 0 0;gap:4px}.member-card .member-group-tags:empty{display:none}.member-card .member-group-tags .tag{padding:2px 6px;letter-spacing:.2px;font-size:.68rem;line-height:1.3}.member-card .actions{margin-top:8px;gap:6px;flex-wrap:wrap}.member-card .actions button{white-space:nowrap;padding:8px 10px}.mass-groups{min-width:0}.mass-groups .member-cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr))}.mass-groups .section-title{flex-wrap:wrap;min-width:0;align-items:center}.mass-groups .section-title h2{min-width:0;flex:1 1 8rem}.mass-groups .member-record .actions{flex-wrap:wrap}.mass-groups .member-record .actions button{flex:1 1 auto;min-width:min(100%,7.5rem);white-space:nowrap}.mass-groups .member-filters{min-width:0}.mass-groups .member-filters label{min-width:min(100%,160px)}body:has(.em-view){height:100svh;overflow:hidden;overscroll-behavior:none}.em-view{position:fixed;inset:0;z-index:1;height:auto;max-height:none;overflow:hidden;background:#fff;padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px)}.em-view>.shell,.em-view main{background:#f6f7f3}.em-view>header{position:relative;top:auto;flex:0 0 auto;z-index:13}.em-view>.bottom-nav{display:flex;position:relative;inset:auto;flex:0 0 auto;justify-content:center;gap:8px;height:auto;min-height:64px;z-index:13;padding:8px 12px;background:#fff;border-top:1px solid #d6dfcf}.em-view>.bottom-nav button{flex:1 1 0;width:auto;max-width:220px;margin:0;justify-content:center;text-align:center}@media(max-width:700px){.em-view>.bottom-nav button{min-width:0;font-size:.62rem;overflow-wrap:anywhere;padding-inline:2px}}.em-view>.shell{flex:1 1 auto;min-height:0;overflow:hidden;width:100%;justify-content:center}.em-view aside{display:none}.em-view main{flex:1 1 auto;width:100%;max-width:1100px;min-height:0;margin-inline:auto;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:32px 4% 36px}@media(max-width:700px){.em-view>header{height:auto;min-height:64px}.em-view main{padding:20px 16px 28px}}.public-lineup h2{margin-bottom:6px}.public-lineup>.muted{font-size:.92rem;line-height:1.45}.lineup-month{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:8px;margin-bottom:10px}.lineup-month strong{text-align:center;font-size:1.05rem}.lineup-month button{width:42px;height:42px;min-height:42px;padding:0;border-radius:999px;border:1px solid #d7e3d4;background:#fff;color:#174f49;font-size:1.35rem;line-height:1}.lineup-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}.lineup-dow,.lineup-blank,.lineup-quiet,.lineup-today,.lineup-calendar button{display:grid;place-items:center;min-height:36px;aspect-ratio:1}.lineup-dow{min-height:28px;aspect-ratio:auto;font-size:.78rem;color:#1b3f38;font-weight:700}.lineup-quiet{color:#c5c9c6;font-weight:700}.lineup-today{color:#1d4ed8;font-weight:700;background:#dbeafe;border-radius:999px}.lineup-calendar button{padding:0;background:#174f49;color:#fff;font-size:.95rem;font-weight:700;border-radius:999px}.lineup-calendar button.selected{background:#2f8f62;outline:3px solid #c07b20;outline-offset:1px}.lineup-status{min-height:1.5em;margin:8px 0 0;color:#60715f;font-size:.85rem}.lineup-dialog .section-title{align-items:center}.lineup-dialog .portal-lineup{margin-top:12px}.page-heading.is-sticky{position:sticky;top:0;z-index:4;align-items:center;background:#f6f7f3;margin-bottom:12px;padding-bottom:8px}.resource-back{flex:0 0 auto;margin:0}.resource-module{display:grid;gap:8px}.resource-module .welcome-walkthrough{margin:0 0 8px}.resource-module .resource-toolbar{margin-bottom:8px}.resource-module .resource-toolbar h2{margin:0}.resource-filters button{margin:0;min-height:44px;padding:8px 14px;border-radius:999px;background:#eef2ec;color:#174f49}.resource-filters button[aria-pressed=true]{background:#174f49;color:#fff}.resource-preview{width:100%;height:148px;object-fit:cover;border-radius:10px;background:#eaf0e5}.resource-module audio{width:100%;margin:4px 0 8px}.resource-module .resource-icon{font-size:.95rem;font-weight:700}@media(max-width:700px){.resource-list{grid-template-columns:1fr}}.em-lineup-groups{display:flex;gap:8px;overflow-x:auto;margin:0 0 16px;padding:3px;background:#eef2ec;border:1px solid #d7e3d4;border-radius:999px}.em-lineup-groups button{flex:1 0 auto;min-height:44px;margin:0;padding:8px 14px;border-radius:999px;background:transparent;color:#6e7c71;font-weight:500}.em-lineup-groups button[aria-pressed=true]{background:#174f49;color:#fff;font-weight:600}.em-lineup-list .card:last-child{margin-bottom:0}.stats>div>span{font:700 1.7rem/1.1 Arial,Helvetica,sans-serif;color:#174f49}.page-heading{align-items:center;margin-bottom:16px}.page-heading h1,.module-heading h1{margin:0}.module-heading{align-items:center;margin-bottom:12px}.loading-line{color:#5d6f66}.month-stepper{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px;margin:0 0 16px;max-width:420px}.month-stepper>strong,.month-stepper>h2{margin:0;text-align:center;font-size:1.08rem;line-height:1.3}.month-stepper .month-step{width:44px;min-width:44px;height:44px;min-height:44px;padding:0;font-size:1.4rem;line-height:1;display:grid;place-items:center}.month-stepper .month-today{grid-column:1 / -1;justify-self:center;min-height:36px;font-size:.88rem}.lineup-chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:thin;padding:2px 2px 8px;margin:0 0 8px;scroll-snap-type:x proximity}.lineup-chips button{flex:0 0 auto;max-width:70vw;min-height:44px;padding:8px 16px;border-radius:999px;border:1px solid #cbd9cd;background:#fff;color:#315a4f;font-size:.92rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;scroll-snap-align:start}.lineup-chips button.is-selected{background:#174f49;border-color:#174f49;color:#fff}.public-lineup>h2{margin-bottom:12px}.lineup-status{margin:8px 0 0;font-size:.9rem;color:#4f645b}.em-lineup-group{margin:0 0 12px;font-weight:600;color:#315a4f}.signin-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0 16px}.signin-choices button{min-height:64px;font-size:1.6rem;font-weight:700;letter-spacing:.08em}.login-alternatives{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin-top:12px}.login-card>h1{margin-top:0}.report-table th,.report-table td{white-space:nowrap;word-break:normal;overflow-wrap:normal}.report-table th[scope=row]{white-space:normal}.report-table td{text-align:right;font-variant-numeric:tabular-nums}.report-table thead th:not(:first-child){text-align:right}.history-list{list-style:none;margin:0;padding:0}.history-list li{display:flex;flex-direction:column;gap:2px;padding:10px 0;border-top:1px solid #e2e8df;font-size:.92rem}.history-list li:first-child{border-top:0}@media(max-width:700px){.page-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.app main,.app:not(.em-view) main{padding:16px 16px 28px}.page-heading h1,.module-heading h1{font-size:1.45rem}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 16px;border:0;border-radius:0;overflow:visible}.stats>div,.stats>div+div{padding:14px;border:1px solid #dfe5da;border-radius:12px;display:block}.stats>div>span{font-size:1.5rem}.stats p{margin:4px 0 0;font-size:.8rem;line-height:1.3}.member-filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:8px 10px;margin:12px 0 16px}.member-filters label:first-child{grid-column:1 / 3}.member-filters>button{grid-column:3;align-self:end;min-width:88px}.member-filters>label:nth-of-type(2){grid-column:1}.member-filters>label:nth-of-type(3){grid-column:2 / -1}.member-filters>label:nth-of-type(2):last-child{grid-column:1 / -1}}@media(min-width:701px){.app>header{height:76px}.stats{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:0 0 20px}.stats>div{padding:18px}}.announcement-board{margin:1rem 0 1.5rem;min-width:0}.announcement-list{display:grid;gap:1rem;margin:1rem 0}.announcement-post{margin:0;min-width:0;overflow-wrap:anywhere}.announcement-message{white-space:pre-wrap;line-height:1.65;overflow-wrap:anywhere}.announcement-board textarea{width:100%;resize:vertical;min-height:8rem;font:inherit}.announcement-board .resource-form{margin-top:1rem}.announcement-rail{display:flex;gap:1rem;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding:.4rem .2rem 1rem;max-width:100%;align-items:start}.announcement-rail .announcement-post{flex:0 0 min(84vw,340px);scroll-snap-align:start;border:1px solid #c9d9cb}.announcement-card-open{display:flex;flex-direction:column;gap:.8rem;width:100%;min-height:190px;background:transparent;border:0;text-align:left;color:inherit;padding:.5rem 0;white-space:normal;font:inherit;cursor:pointer}.announcement-card-title{margin:0;overflow-wrap:anywhere}.announcement-excerpt{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;line-height:1.5}.announcement-card-read{margin-top:auto;color:#315e42;text-decoration:underline;text-underline-offset:3px}.announcement-board button:focus-visible,.announcement-dialog button:focus-visible,.announcement-dialog a:focus-visible{outline:2px solid #315e42;outline-offset:2px}.announcement-dialog{width:min(720px,calc(100vw - 2rem));max-height:85dvh;overflow:auto;overflow-wrap:anywhere}.announcement-dialog .section-title{align-items:center}.announcement-attachment{border-top:1px solid #d8e1d5;padding:1rem 0;display:grid;gap:.75rem}.announcement-attachment img{display:block;width:auto;max-width:100%;max-height:60dvh;object-fit:contain;border-radius:8px}.announcement-file-control{overflow-wrap:anywhere;font-size:.9em}.announcement-rail-tail{flex:0 0 1px;display:block;width:1px;min-width:1px;height:1px;align-self:center}.pull-refresh{overflow:hidden;text-align:center;color:var(--muted,#536777);font-size:.875rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}#schedule-main{overscroll-behavior-y:contain}.em-home{display:grid;gap:1.25rem;min-width:0}.em-home-stats,.em-duty-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:1rem}.em-home-stats>button,.em-duty-card{display:flex;flex-direction:column;align-items:flex-start;gap:.6rem;text-align:left;white-space:normal;min-width:0;overflow-wrap:anywhere;background:#fff;color:#244b37;border:1px solid #c9d9cb;border-radius:16px;padding:1.25rem;cursor:pointer;font:inherit;box-shadow:0 3px 12px #163b2710}.em-home-stats>button:hover,.em-duty-card:hover{background:#f0f6ed;border-color:#598268}.em-home-stats>button:focus-visible,.em-duty-card:focus-visible{outline:3px solid #8a631a;outline-offset:3px}.em-home-stats strong{font-size:2rem;line-height:1.1}.em-home-stats small{font-size:.85em;color:#4b6354}.em-home-details{padding:1rem;background:#f0f5ef;border-radius:16px}.em-home-details[hidden]{display:none}.em-duty-date{font-weight:700;font-size:1.05em}.em-duty-position{background:#edf3e8;padding:.35rem .65rem;border-radius:8px;font-weight:600}.em-duty-link{font-weight:700;margin-top:auto;padding-top:.4rem;text-decoration:underline;text-underline-offset:3px}.em-group-card{margin:0}.em-home .actions{margin-top:.5rem}
