:root{font-family:Arial,Helvetica,sans-serif;color:#233b36;background:#f4f6f3;font-synthesis:none}*{box-sizing:border-box}body{margin:0}header{background:#335a89;color:#fff;padding:24px max(20px,calc((100vw - 1080px)/2))}.brand{display:flex;align-items:center;gap:22px}h1{font-size:clamp(20px,3vw,30px);line-height:1.3;margin:0}h1 span{display:block;font-size:.74em;font-weight:400;margin-top:6px}main{max-width:1080px;margin:30px auto;padding:0 20px}h2{font-size:24px;margin:0 0 16px}h3{margin:12px 0 16px;font-size:19px}.card{background:#fff;border:1px solid #dce3dd;border-radius:12px;padding:26px;margin:22px 0;box-shadow:0 2px 8px #00000004}.narrow{max-width:620px;margin:24px auto}p{line-height:1.6}.muted{color:#61716b;font-size:.94rem}button{background:#335a89;color:#fff;border:1px solid #335A89;border-radius:7px;padding:12px 18px;min-height:44px;font:inherit;cursor:pointer}.secondary{background:#fff;color:#335a89;border-color:#b8c9c1}button:disabled,select:disabled{opacity:.6;cursor:not-allowed}button:hover:enabled{filter:brightness(.94)}a{color:#335a89}label{display:block;margin:12px 0;line-height:1.5}input:not([type=checkbox]),select,textarea{display:block;font:inherit;width:100%;padding:12px;margin-top:7px;border:1px solid #aebfb7;border-radius:6px;background:#fff;color:#233b36}input[type=checkbox]{width:18px;height:18px;vertical-align:middle;accent-color:#335A89}textarea{min-height:84px}select{max-width:420px}.checkrow{display:flex;flex-wrap:wrap;gap:8px 24px}.checkrow label{margin:8px 0}.row,nav,.toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.spread,.toolbar{justify-content:space-between}.toolbar h2{margin:0}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.day{border-top:1px solid #e3e9e3;padding:18px 0}.service{background:#f5f7f4;border-radius:8px;padding:16px}.service select{font-size:.95rem}.badge{display:inline-block;background:#e4eee6;color:#295045;padding:5px 9px;border-radius:20px;font-size:13px}.notice{background:#fff3d2;border:1px solid #ebd39b;border-radius:8px;padding:14px;margin-bottom:20px;line-height:1.5}.warn{color:#974010;display:block;font-size:.94rem}details{margin:18px 0}summary{cursor:pointer;color:#335a89;font-weight:600;padding:8px 0}pre{white-space:pre-wrap;font:inherit;line-height:1.6;background:#f5f7f4;padding:20px}.person{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid #e3e9e3}.person p{margin:6px 0;overflow-wrap:anywhere}footer{max-width:1080px;margin:40px auto;padding:0 20px 24px;font-size:13px;line-height:1.8;color:#61716b}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #be8c2b;outline-offset:3px}@media(max-width:720px){.grid{grid-template-columns:1fr}.card{padding:18px}.brand{gap:12px}.brand img{width:60px;height:60px}header{padding:22px 18px}.toolbar{align-items:flex-start}.row button,nav button{flex:1}h2{font-size:22px}}body,button,input,select,textarea{font-size:18px}button{min-height:48px}h4{margin:0;font-size:23px}.main-nav{margin:24px 0}.main-nav button{min-width:145px}.year-panel{margin-top:26px}.month-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.month-tile{color:#263d35;text-align:left;padding:14px;border:2px solid transparent;line-height:1.45}.month-tile strong,.month-tile span{display:block}.month-tile span{font-size:15px;margin-top:5px}.month-tile.selected{border-color:currentColor;box-shadow:none}.complete{background:#e2efdf;color:#25402b}.incomplete{background:#fff4cc;color:#554618}.problem{background:#fae4e1;color:#76382d}.future{background:#e9ecec;color:#596462}.legend{display:flex;gap:12px;flex-wrap:wrap;font-size:14px;margin:12px 0 28px}.legend span{padding:6px 9px;border-radius:5px}.month-summary{margin:6px 0 0;font-size:21px}.attention{background:#fff5d9;padding:18px;border-radius:8px;margin:24px 0}.attention h3{margin-top:0}.text-button{border:0;background:transparent;color:#335a89;text-decoration:underline;padding:5px;min-height:44px}.issue-link{display:block;background:transparent;border:0;text-align:left;color:#703a26;text-decoration:underline}.section-title{border-bottom:2px solid #cbd7cf;padding-bottom:14px;margin-top:35px}.section-title h3{margin:0}.service{padding:0;overflow:hidden;border:1px solid #d7ded7;background:#fff}.service-heading{padding:17px}.service-heading p{margin:5px 0 0}.service-early .service-heading{background:#e5eff9}.service-middle .service-heading{background:#ede7f6}.service-late .service-heading{background:#faebdc}.service-special .service-heading{background:#e6ece7}.position{padding:12px}.position+.position{padding-top:0}.name-button{width:100%;display:flex;flex-direction:column;gap:5px;align-items:flex-start;text-align:left;background:#f7f9f6;color:#335a89;border:1px solid #c6d3c8;padding:14px}.name-button span{font-size:15px;font-weight:400}.name-button:disabled{opacity:1;color:#43584f;cursor:default}.open-position{background:#fff9e8;border-style:dashed}.name-button:focus{outline:3px solid #a27b24;outline-offset:2px}.saved{display:block;color:#286537;font-weight:600;padding-top:6px}.publish-actions{border-top:1px solid #ccd8d0;margin-top:30px;padding-top:25px;display:flex;gap:14px;flex-wrap:wrap}.publish-actions p{flex-basis:100%;margin:0}.dialog{border:1px solid #bdcfc1;border-radius:12px;padding:24px;width:min(760px,94vw);max-height:90vh;overflow-y:auto;color:#233b36;background:#fff}.dialog::backdrop{background:#152d25aa}.dialog h2{max-width:80%;font-size:24px}.helper-choice{border:1px solid #d4dfd4;border-radius:8px;padding:12px;margin:12px 0;background:#f7faf5}.helper-choice.adjacent{background:#fff4cf;border-color:#dcca91}.choose-name{display:block;background:transparent;border:0;text-align:left;color:#335a89;width:100%;padding:10px}.choose-name strong{font-size:21px}.choose-name span{display:block;font-size:16px;margin-top:6px}.helper-choice details{margin:4px 10px}.helper-choice summary{font-size:16px}.undo-bar{position:sticky;bottom:12px;z-index:2;background:#335a89;color:#fff;padding:12px 18px;border-radius:8px;display:flex;align-items:center;gap:18px;box-shadow:0 3px 12px #0003}.filter{margin:24px 0}.month-work .service-special{max-width:600px}.month-work .day{padding-top:18px}.month-work .grid{align-items:start}@media(max-width:780px){.month-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.grid{grid-template-columns:1fr}.month-tile strong{font-size:16px}.main-nav button{min-width:0;flex:1}}@media(max-width:480px){.month-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dialog{padding:16px}.main-nav{gap:6px}.main-nav button{padding:10px;font-size:16px}.legend{gap:6px}}header{background:#335a89;padding:12px max(20px,calc((100vw - 1080px)/2))}.brand{justify-content:space-between;gap:24px}.brand img{width:240px;height:auto;max-width:45%}.brand h1{font-size:24px;font-weight:500}main{margin:18px auto}.main-nav{margin:14px 0}.year-panel{margin-top:14px}.month-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}.month-tile{padding:9px 10px}.month-tile strong{font-size:16px}.month-tile span{font-size:13px;margin-top:2px}.legend{margin:8px 0 12px;gap:8px}.legend span{padding:3px 6px}.month-work{margin-top:12px;scroll-margin-top:12px}.month-work:focus{outline:none}.open-count{font-size:38px;font-weight:750;color:#925600;font-variant-numeric:tabular-nums;line-height:1.1;vertical-align:baseline}.month-summary{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.filter{margin:16px 0}.section-title{margin-top:22px}.service-special .service-heading{background:#d9efea}.roster-person{padding:0 16px 12px}.roster-person p{margin:12px 0}.my-service{border:3px solid #335A89;box-shadow:0 0 0 2px #335a8920}.my-service .roster-person{background:#f1f6fc}.my-service .roster-person p{font-weight:700}@media(max-width:900px){.month-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:600px){.month-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.brand{gap:16px}.brand img{width:180px}.brand h1{font-size:19px}.month-tile{padding:8px}.month-tile strong{font-size:15px}.month-tile span{font-size:12px}}@media(max-width:380px){.month-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.brand{flex-direction:column;align-items:flex-start}.brand img{max-width:100%}}.email-preview{font:16px/1.5 Calibri,Carlito,Segoe UI,Arial,sans-serif;color:#202020;background:#fff;padding:20px;overflow-wrap:anywhere}.email-preview h2{font-size:24px;margin:28px 0 12px}.email-preview p{margin:0 0 24px}.helper-roster .day{padding:10px 0}.helper-roster .day h3{margin:4px 0 8px}.helper-roster .grid{gap:10px;align-items:start}.helper-roster .service-heading{padding:9px 12px}.helper-roster h4{font-size:20px}.helper-roster .roster-person{padding:0 12px 6px}.helper-roster .roster-person p{margin:6px 0;line-height:1.4}.helper-roster .roster-person button{padding:8px 10px;font-size:16px;min-height:44px;margin-bottom:4px}.helper-roster .my-service .roster-person p{font-weight:400}.helper-roster .past-day .service{background:#f1f2f3;border-color:#cdd1d5;box-shadow:none;color:#62676d}.helper-roster .past-day .service-heading,.helper-roster .past-day .roster-person{background:#e8eaed}.confirmation-panel{margin:10px 0 14px}.confirmation-panel p{margin:8px 0}.availability-months{margin:18px 0}.past-services{margin:12px 0}.published-helper-schedule{margin-top:24px}.planning-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}.planning-month{min-width:0;border:1px solid #d5dfe9;border-radius:8px;padding:14px}.planning-month-title{background:#edf2f8;padding:12px;margin:-14px -14px 12px;border-radius:8px 8px 0 0;color:#335a89;font-size:21px}.planning-month .day{padding:12px 0}.planning-month .day h3{margin:0 0 8px}.planning-month .day p{margin:8px 0}.planning-month .checkrow{gap:3px 12px}.planning-month .checkrow label{font-size:16px;margin:4px 0}.planning-month label{margin:8px 0}.planning-month select{padding:8px;font-size:16px;max-width:100%}.planning-month .helper-roster .grid{grid-template-columns:1fr}.planning-month .confirmation-panel button{width:100%}.planning-month .notice{padding:10px}.planning-month form>button{width:100%;margin-top:12px}.planning-month p{overflow-wrap:anywhere}.mobile-month-nav{display:none}@media(max-width:800px){.mobile-month-nav{display:flex;gap:8px;margin:14px 0;flex-wrap:wrap}.mobile-month-nav button{flex:1;min-width:0;padding:10px 8px;font-size:16px;min-height:48px}.planning-month:not(.mobile-selected){display:none}}.planning-columns{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.email-preview{font-size:16px;line-height:1.5;padding:12px}.email-preview h2{font-family:inherit;font-size:18px;font-weight:700}.email-preview p{margin-bottom:16px}.email-preview table{width:auto;max-width:100%;border-collapse:collapse;font-size:16px}.email-preview td{vertical-align:top;padding:3px 16px 3px 0}.email-preview td:nth-child(-n+2){white-space:nowrap}.email-preview tr.email-date-start td{padding-top:24px}@media(max-width:800px){.planning-columns{grid-template-columns:1fr}}.email-preview .email-closing{margin-top:32px}.scheduler-brand{display:flex;align-items:center;justify-content:flex-end;gap:14px;min-width:0}.scheduler-brand h1{max-width:320px}.brand .scheduler-brand .communion-icon{width:64px;height:64px;max-width:none;flex-shrink:0;object-fit:contain}@media(max-width:600px){.scheduler-brand{gap:8px}.brand .scheduler-brand .communion-icon{width:42px;height:42px}}@media(max-width:380px){.scheduler-brand{width:100%;justify-content:space-between}}.status-icon{display:inline-block;flex-shrink:0;vertical-align:-.2em;margin-right:6px}.month-tile .month-status{display:flex;align-items:center;gap:5px}.month-tile .month-status>span{margin:0}.month-status .status-icon{width:18px;height:18px;margin:0}.month-tile.problem{background:#fce3df;color:#842c22;border-color:#bd5144}.month-tile.problem .month-status,.legend .problem{font-weight:700}.month-tile.problem.selected{border-color:#842c22;box-shadow:none}.attention{background:#fce3df;border:2px solid #bd5144;color:#842c22}.attention h3{display:flex;align-items:center;font-weight:700}.attention .issue-link{font-weight:700;color:#842c22}.month-grid{grid-auto-rows:1fr}.month-tile{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;padding:10px;min-height:86px;border-width:2px;font-family:Arial,Helvetica,sans-serif}.month-tile>strong{font-size:16px;line-height:1.3;font-weight:700;margin:0 0 5px}.month-tile .month-status{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:6px;font-size:13px;line-height:1.35;margin:0;font-weight:400}.month-tile .month-status>span{font-size:inherit;line-height:inherit;margin:0}.month-tile .month-status .status-icon{width:18px;height:18px;margin:0}.month-tile.problem .month-status{font-weight:700}.month-tile.complete{background:#e2efdf;color:#25402b}.month-tile.selected{border-color:currentColor;box-shadow:inset 0 0 0 1px currentColor}.month-tile.complete.selected{border-color:#35643c;background:#d9ebd5}.month-tile:focus-visible{outline:2px solid currentColor;outline-offset:2px}.legend{align-items:stretch}.legend>span{display:inline-flex;align-items:center;gap:5px;font:400 14px/1.3 Arial,Helvetica,sans-serif;padding:5px 7px}.legend>span.problem{font-weight:700}.legend .status-icon{width:18px;height:18px;margin:0}.brand>img{width:190px;max-width:42%;height:auto}.scheduler-brand{gap:6px}.scheduler-brand h1{text-align:left;font-size:22px;line-height:1.15;max-width:none}.scheduler-brand h1 span{display:block;font:inherit;margin:0}.brand .scheduler-brand .communion-icon{width:50px;height:72px;object-fit:cover;object-position:center}.month-tile.problem:not(.selected){border-color:transparent;box-shadow:none}.attention .issue-link{font-weight:400;color:#335a89;text-decoration:underline;text-underline-offset:3px}@media(max-width:600px){.brand>img{width:150px}.scheduler-brand h1{font-size:18px}.brand .scheduler-brand .communion-icon{width:38px;height:58px}}.scheduler-brand h1{font-family:Segoe UI,Calibri,Arial,sans-serif;font-style:italic;font-weight:400;letter-spacing:.01em;line-height:1.18}.scheduler-brand h1 span{font:inherit;letter-spacing:inherit}.name-button .assignment-warning{display:flex;align-items:flex-start;gap:6px;color:#974010;font-weight:400;line-height:1.4}.assignment-warning .status-icon{width:18px;height:18px;margin:1px 0 0;flex-shrink:0}.month-grid.coordinator-months{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(170px,1fr);align-items:stretch}.future-month-picker{margin:0;display:flex;flex-direction:column;justify-content:center;gap:6px;font-size:15px}.future-month-picker select{margin:0;width:100%;min-width:0}.generation-actions{margin:16px 0;padding:14px 0;border-top:1px solid #ddd;border-bottom:1px solid #ddd}.generation-actions p{margin-bottom:0}.help-page{max-width:900px;margin-inline:auto}.help-page details{padding:16px 0;border-bottom:1px solid #ddd}.help-page summary{font-weight:600;line-height:1.45;cursor:pointer}.help-page details p{line-height:1.6;margin:12px 0 0}@media(max-width:800px){.month-grid.coordinator-months{grid-template-columns:repeat(3,minmax(0,1fr))}.future-month-picker{grid-column:1/-1}.month-grid.coordinator-months .month-tile strong{font-size:15px}.month-grid.coordinator-months .month-tile{padding:10px 7px}}@media(max-width:420px){.month-grid.coordinator-months{gap:5px}.month-grid.coordinator-months .month-tile strong{font-size:14px}.month-grid.coordinator-months .month-status{font-size:12px;grid-template-columns:16px 1fr}}
