@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap";:root{font-family:DM Sans,sans-serif;color:#202925;background:#f5f3ed;font-synthesis:none}*{box-sizing:border-box}body{margin:0}.shell{max-width:900px;margin:auto;padding:28px 22px 50px}.brand{display:flex;align-items:center;gap:8px;color:#2a443b;font-weight:700;letter-spacing:.14em;font-size:14px}.brand span{font-weight:400;letter-spacing:.22em}.admin-link{margin-left:auto;background:transparent;border:1px solid #c8d0c9;border-radius:30px;padding:8px 14px;color:#2a443b;cursor:pointer}.hero{padding:65px 0 34px}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:700;color:#668073}.hero h1{font-size:clamp(38px,7vw,64px);line-height:1.08;letter-spacing:-.04em;color:#2a443b;margin:12px 0}.hero h1 em{font-family:Playfair Display,serif;font-weight:500}.date,.muted{color:#78827b;font-size:13px}.content-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.panel{background:#fff;border:1px solid #e9e7df;border-radius:18px;padding:24px;box-shadow:0 8px 24px #253d3010}.panel h2{font-family:Playfair Display,serif;font-size:23px;line-height:1.35;font-weight:500;margin:10px 0;color:#263c32}.panel p{line-height:1.65}.reference{color:#7d877f;font-size:12px}.prayer{grid-column:1 / -1;background:#2a443b;color:#fff}.prayer .eyebrow{color:#d6c99b}.prayer p:last-child{font-family:Playfair Display,serif;font-size:20px}.admin{margin-top:26px}.form{display:grid;gap:14px;margin-top:18px}.form label,.toolbar label{display:grid;gap:6px;font-size:13px;font-weight:600;color:#46564c}.form input,.form textarea,.form select,.toolbar input{width:100%;border:1px solid #d9ded9;border-radius:9px;padding:11px;font:inherit;background:#fff;color:#202925}.form textarea{min-height:76px;resize:vertical}.primary,.toolbar button{background:#2a443b;color:#fff;border:0;border-radius:9px;padding:12px 18px;font:inherit;cursor:pointer}.toolbar{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.toolbar label{min-width:190px}.toolbar button{padding:10px 14px}.notice{background:#f4f0df;padding:12px;border-radius:9px;color:#4d503e;font-size:13px}.calendar-section{margin:26px 0 30px;padding:22px;background:#f8f8f4;border:1px solid #e5e9e3;border-radius:16px}.calendar-section h3,.editor-heading h3{color:#2a443b;font-family:Playfair Display,serif;font-weight:500;font-size:22px;margin:0 0 16px}.calendar-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.calendar-heading h3{font-family:DM Sans,sans-serif;font-size:17px;font-weight:700;margin:0;color:#2a443b}.calendar-heading button{width:36px;height:36px;border:1px solid #dce3dc;background:#fff;color:#2a443b;border-radius:50%;font-size:25px;line-height:1;cursor:pointer}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.calendar-weekday{text-align:center;padding:8px 0;font-size:11px;font-weight:700;color:#78877c}.calendar-empty{min-height:66px}.calendar-day{min-width:0;min-height:66px;padding:9px 4px;border:1px solid #e7ebe6;border-radius:10px;background:#fff;color:#34483c;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:6px;font:inherit;cursor:pointer;transition:border-color .15s,background .15s}.calendar-day:hover{border-color:#668073;background:#f0f4ef}.calendar-day.selected{border:2px solid #2A443B;background:#edf2ed;font-weight:700}.calendar-day.today:not(.selected){border-color:#a7b8aa}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-dot.draft{background:#b58a42}.status-dot.published{background:#32805b}.status-dot.missing{background:#d8ddd8}.calendar-legend{display:flex;flex-wrap:wrap;gap:18px;margin-top:18px;color:#68766d;font-size:12px}.calendar-legend span{display:flex;align-items:center;gap:7px}.editor-heading{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;margin:28px 0 16px}.editor-heading h3{margin:0}.editor-heading span{color:#78827b;font-size:12px}footer{display:flex;justify-content:space-between;gap:12px;margin-top:36px;color:#849087;font-size:10px;letter-spacing:.13em}footer span{letter-spacing:0}@media(max-width:620px){.content-grid{grid-template-columns:1fr}.prayer{grid-column:auto}.hero{padding-top:48px}.panel{padding:20px}footer{flex-direction:column}.calendar-section{padding:14px}.calendar-grid{gap:4px}.calendar-day{min-height:54px;padding:7px 2px;font-size:13px}.calendar-empty{min-height:54px}.calendar-weekday{font-size:10px}}
