.serve-app{--serve-navy:#173b5c;--serve-gold:#9b6b22;--serve-line:#d9e1e6;color:#172f42;background:#f1f5f8;min-height:100vh;padding:32px 24px;font:400 1rem/1.6 Arial,sans-serif}.serve-shell{max-width:1120px;margin:auto}.serve-app a{color:var(--serve-navy)}.serve-masthead{justify-content:space-between;align-items:center;padding:8px 0 26px;display:flex}.serve-masthead img{width:220px;max-width:65vw}.serve-masthead>span{letter-spacing:.22em;font-size:1rem;font-weight:800}.serve-nav{border-top:1px solid var(--serve-line);border-bottom:1px solid var(--serve-line);flex-wrap:wrap;gap:24px;padding:15px 0;display:flex}.serve-nav a{font-size:.95rem;font-weight:700;text-decoration:none}.serve-nav a:hover{text-decoration:underline}.serve-title{padding:32px 0 24px}.serve-eyebrow{letter-spacing:.1em;color:var(--serve-gold);font-size:.875rem;font-weight:800}.serve-title h1{margin:9px 0 12px;font:400 clamp(2rem,5vw,3.4rem)/1.15 Georgia,serif}.serve-title p{color:#526777;margin:0}.serve-week-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.serve-sunday{border:1px solid var(--serve-line);border-top:4px solid var(--serve-navy);background:#fff;border-radius:5px;padding:26px}.serve-sunday:nth-child(2){border-top-color:#ac7d31}.serve-card-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.serve-card-heading>span:last-child{background:#eaf0f5;border-radius:4px;padding:4px 10px;font-size:.875rem}.serve-sunday h2{margin:18px 0 4px;font:400 1.8rem/1.3 Georgia,serif}.serve-ministry{color:#526777;margin:0 0 20px}.serve-sunday dl{gap:15px;margin:0;display:grid}.serve-sunday dl>div{border-top:1px solid #e5ebef;padding-top:14px}.serve-sunday dt{color:#526777;font-size:.875rem}.serve-sunday dd{margin:2px 0 0;font-size:1.2rem;font-weight:700}.serve-note{background:#f3f5f7;margin:22px 0 0;padding:12px;font-size:.875rem;line-height:1.5}.serve-note b{display:block}.serve-section{border:1px solid var(--serve-line);background:#fff;border-radius:5px;margin:24px 0;padding:26px}.serve-section h2{margin:6px 0 12px;font:400 1.65rem/1.3 Georgia,serif}.serve-directory{justify-content:space-between;align-items:center;gap:20px;display:flex}.serve-directory p{color:#526777;margin:0}.serve-app .serve-button{border:1px solid var(--serve-navy);background:var(--serve-navy);color:#fff;cursor:pointer;border-radius:4px;padding:11px 16px;font:700 .95rem/1.5 Arial,sans-serif;text-decoration:none;display:inline-block}.serve-source{color:#526777;padding:18px 0;font-size:.875rem}.serve-source a{white-space:nowrap;text-decoration:underline}.serve-warning{background:#fff4db;border:1px solid #d6b66e;border-radius:5px;padding:16px}.serve-footer{color:#526777;border-top:1px solid var(--serve-line);margin-top:26px;padding:30px 0 10px;font-size:.875rem}.serve-table-scroll{overflow:auto}.serve-table{border-collapse:collapse;width:100%;min-width:720px;font-size:.95rem}.serve-table caption{text-align:left;padding:8px 0 16px;font-weight:700}.serve-table th,.serve-table td{border-bottom:1px solid var(--serve-line);text-align:left;vertical-align:top;padding:14px 12px}.serve-table thead{background:#eaf0f5}.serve-table tbody th{white-space:nowrap;font-weight:600}.serve-table td:last-child{color:#526777;font-size:.875rem}.serve-filters{flex-wrap:wrap;align-items:end;gap:16px;margin:0 0 22px;display:flex}.serve-filters label{gap:5px;font-size:.875rem;font-weight:700;display:grid}.serve-filters select{color:#172f42;background:#fff;border:1px solid #a4b4c0;border-radius:4px;min-width:180px;max-width:100%;padding:12px;font:400 1rem Arial,sans-serif}.serve-result-count{color:#526777;font-size:.875rem}.serve-roster{grid-template-columns:repeat(3,1fr);gap:14px;padding:0;list-style:none;display:grid}.serve-roster li{border:1px solid var(--serve-line);border-radius:4px;padding:16px}.serve-roster b,.serve-roster small{display:block}.serve-roster small{color:#526777;margin-top:6px;font-size:.875rem}.serve-reminder{border-top:1px solid var(--serve-line);padding:18px 0}.serve-reminder p{white-space:pre-wrap}.serve-status{color:#715315;background:#fff4db;border-radius:4px;padding:5px 10px;font-size:.875rem;display:inline-block}.serve-empty{color:#526777;padding:20px}.serve-app :is(a,button,select,summary):focus-visible{outline-offset:4px;outline:3px solid #bc8426}.serve-app details summary{cursor:pointer;padding:12px 0;font-weight:700}.serve-app .serve-text-link{font-weight:700;text-decoration:underline}@media (max-width:700px){.serve-app{padding:18px 16px}.serve-week-grid{grid-template-columns:1fr}.serve-directory{flex-direction:column;align-items:start}.serve-roster{grid-template-columns:1fr 1fr}.serve-section,.serve-sunday{padding:20px}.serve-nav{gap:15px}.serve-filters label,.serve-filters select{width:100%}}@media (max-width:420px){.serve-roster{grid-template-columns:1fr}}@media print{.serve-app{background:#fff;padding:0}.serve-nav,.serve-filters,.serve-button,.serve-footer{display:none!important}.serve-table-scroll{overflow:visible}.serve-table{min-width:0;font-size:10pt}.serve-sunday,.serve-roster li{break-inside:avoid}.serve-section{padding:12px}}.serve-ministry-heading{margin:28px 0 16px;font:400 1.7rem/1.3 Georgia,serif}.serve-duty-group{margin:26px 0}.serve-duty-group h3{margin-bottom:12px;font-size:1.1rem}.serve-duty-group ul{padding-left:24px;list-style:outside}.serve-duty-group li{margin:12px 0;line-height:1.65}.serve-sunday>.serve-text-link{margin-top:20px;display:inline-block}.serve-date-group{margin:18px 0 34px}.serve-date-group>header{border-bottom:2px solid var(--serve-navy);margin-bottom:18px;padding-bottom:10px}.serve-date-group>header h2{margin:4px 0;font:400 clamp(1.8rem,4vw,2.45rem)/1.2 Georgia,serif}.serve-date-ministries{grid-template-columns:1fr 1fr;gap:20px;display:grid}.serve-card-heading-grouped{margin-bottom:18px}.serve-card-ministry{margin:0;font:400 1.45rem/1.3 Georgia,serif}.serve-date-ministries .serve-sunday{box-sizing:border-box;height:100%}@media (max-width:700px){.serve-date-ministries{grid-template-columns:1fr}.serve-date-ministries .serve-sunday{height:auto}.serve-date-group{margin-bottom:40px}}.serve-calendar{border-top:4px solid var(--serve-gold);justify-content:space-between;align-items:center;gap:24px;display:flex}.serve-calendar h2{margin:4px 0}.serve-calendar p{color:#526777;margin:0}.serve-calendar-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.serve-app .serve-button-secondary{color:var(--serve-navy);background:#fff}@media (max-width:700px){.serve-calendar{flex-direction:column;align-items:flex-start}.serve-calendar-actions{justify-content:flex-start;width:100%}.serve-calendar-actions .serve-button{box-sizing:border-box;text-align:center;width:100%}}.serve-range-table{min-width:560px}.serve-breakfast-table{min-width:760px}.serve-schedule-note{color:#526777;border-top:1px solid var(--serve-line);margin-top:22px;padding-top:18px}.serve-add-calendar{border:1px solid var(--serve-navy);background:var(--serve-navy);color:#fff;white-space:nowrap;cursor:pointer;border-radius:4px;min-width:148px;padding:12px 18px;font:700 .88rem/1.35 Arial,sans-serif}.serve-add-calendar:hover{filter:brightness(1.08)}.serve-calendar-dialog{color:#172f42;border:0;border-radius:8px;max-width:min(460px,100vw - 32px);padding:0;box-shadow:0 24px 80px #081c2d52}.serve-calendar-dialog::backdrop{background:#0a1f3094}.serve-calendar-dialog>div{padding:32px;position:relative}.serve-calendar-dialog h2{margin:7px 36px 8px 0;font:400 1.65rem/1.25 Georgia,serif}.serve-calendar-dialog p{color:#526777;margin:0 0 22px}.serve-dialog-close{color:var(--serve-navy);cursor:pointer;background:0 0;border:0;font-size:2rem;line-height:1;position:absolute;top:12px;right:16px}.serve-calendar-dialog-actions{flex-wrap:wrap;gap:10px;display:flex}.serve-greeter-table{min-width:760px}.serve-title-compact{padding:0}.serve-title-compact h1{margin:0}.serve-title-compact+.serve-section{margin-top:12px}.serve-history{border-top:1px solid var(--serve-line);margin-top:24px;padding-top:10px}.serve-history>summary{color:var(--serve-navy);cursor:pointer;align-items:center;gap:8px;padding:10px 0;font-weight:700;display:inline-flex}.serve-history[open]>summary{margin-bottom:8px}.serve-history .serve-table-scroll{border:1px solid var(--serve-line);background:#f8fafb;border-radius:5px}.serve-history caption{padding-left:12px}.serve-member-filter{flex-wrap:wrap;align-items:end;gap:12px;margin:0 0 22px;display:flex}.serve-member-filter label{gap:5px;font-size:.875rem;font-weight:700;display:grid}.serve-member-filter select{color:#172f42;background:#fff;border:1px solid #a4b4c0;border-radius:4px;min-width:240px;max-width:100%;padding:11px 38px 11px 12px;font:400 1rem Arial,sans-serif}@media (max-width:700px){.serve-member-filter label,.serve-member-filter select,.serve-member-filter .serve-button{box-sizing:border-box;width:100%}}.serve-schedule-tools{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:14px;margin:0 0 22px;display:flex}.serve-schedule-tools .serve-member-filter{margin:0}.serve-add-all .serve-add-calendar{min-width:190px}@media (max-width:700px){.serve-schedule-tools,.serve-schedule-tools .serve-member-filter,.serve-schedule-tools .serve-member-filter label,.serve-schedule-tools .serve-member-filter select,.serve-add-all,.serve-add-all .serve-add-calendar{box-sizing:border-box;width:100%}}.serve-security-table{min-width:700px}
