/* ORATIO V2.75 — 2026-09-14 확정 본당 홈/소식 시안 구현.
   기존 ORATIO의 차분한 아이보리/적갈색 디자인 언어를 그대로 사용한다. */
#screen-parish-notice .parish-header{display:none}
.p275-hub{max-width:760px;margin:0 auto;padding:0 0 28px;color:var(--ink,#302720)}
.p275-hero{position:relative;overflow:hidden;box-shadow:0 1px 0 rgba(70,42,24,.05)}
.p275-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.p275-hero-copy{position:absolute;display:flex;flex-direction:column;gap:4px;color:#fff}
.p275-hero-copy small{font-size:12px;font-weight:600;letter-spacing:.01em}.p275-hero-copy strong{font-size:24px;line-height:1.2}.p275-hero-copy span{font-size:13px;opacity:.94}
.p275-status{margin:12px 3px;padding:10px 12px;border-radius:10px;background:var(--bg-elevated,#fbf8f3);color:var(--ink-soft,#756b60);font-size:13px}.p275-status[hidden]{display:none}
.p275-tabs{display:flex;gap:2px;margin:12px 0 4px;padding:4px;border:1px solid var(--line,#e5d9c8);border-radius:14px;background:var(--bg-elevated,#fff);overflow-x:auto;scrollbar-width:none}.p275-tabs::-webkit-scrollbar{display:none}
.p275-tabs button{flex:1 0 auto;min-width:66px;border:0;border-radius:10px;padding:9px 10px;background:transparent;color:var(--ink-soft,#756b60);font:inherit;font-size:12.5px;cursor:pointer;white-space:nowrap}.p275-tabs button[aria-selected="true"]{background:rgba(143,43,54,.09);color:var(--accent,#922b38);font-weight:700}
.p275-view{padding-top:8px}.p275-view[hidden]{display:none}
.p275-section{margin:12px 0;padding:16px;border:1px solid var(--line,#e5d9c8);border-radius:16px;background:var(--bg-elevated,#fff)}
.p275-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.p275-section-head h3{margin:0;font-size:16px;word-break:keep-all;overflow-wrap:anywhere}.p275-section-head span{font-size:11.5px;color:var(--ink-soft,#756b60)}.p275-section-head button{border:0;background:none;color:var(--accent,#922b38);font:inherit;font-size:12px;cursor:pointer}
.p275-view-head{padding:12px 4px 8px}.p275-view-head h2{margin:0 0 5px;font-size:19px}.p275-view-head p{margin:0;color:var(--ink-soft,#756b60);font-size:13px;line-height:1.6}
.p275-list{display:flex;flex-direction:column;gap:0}
.p275-post-row{border-bottom:1px solid var(--line,#e9e0d4);font:inherit;cursor:pointer}.p275-post-row:last-child{border-bottom:0}.p275-post-main{display:flex;flex:1;min-width:0;flex-direction:column;align-items:flex-start;gap:4px}.p275-post-main strong{width:100%;font-size:14px;line-height:1.45;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.p275-post-main small{color:var(--ink-soft,#756b60);font-size:11.5px}.p275-post-row img{width:64px;height:52px;flex:0 0 auto;object-fit:cover;border-radius:9px}.p275-post-row.is-compact{padding:10px 2px}.p275-post-row.is-compact img{width:58px;height:46px}
.p275-badge{display:inline-flex;align-items:center;min-height:19px;padding:1px 7px;border-radius:999px;background:color-mix(in srgb,var(--bg-elevated,#fff) 88%,var(--ink-soft,#756b60) 12%);color:var(--ink-soft,#756b60);font-size:10.5px;font-weight:700}.p275-badge.is-important{background:color-mix(in srgb,var(--bg-elevated,#fff) 86%,#b07b44 14%);color:color-mix(in srgb,var(--ink,#302720) 55%,#b06a24 45%)}.p275-badge.is-urgent{background:color-mix(in srgb,var(--bg-elevated,#fff) 84%,var(--accent,#922b38) 16%);color:var(--accent,#922b38)}
.p275-filters{display:flex;gap:6px;overflow-x:auto;padding:6px 1px 10px;scrollbar-width:none}.p275-filters::-webkit-scrollbar{display:none}.p275-filters button{flex:0 0 auto;border:1px solid var(--line,#e5d9c8);border-radius:999px;padding:7px 11px;background:var(--bg-elevated,#fff);color:var(--ink-soft,#756b60);font:inherit;font-size:11.5px;cursor:pointer}.p275-filters button[aria-pressed="true"]{border-color:rgba(146,43,56,.35);background:rgba(146,43,56,.08);color:var(--accent,#922b38);font-weight:700}
.p275-quick{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:8px}.p275-quick button{display:flex;min-height:76px;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:1px solid var(--line,#e5d9c8);border-radius:13px;background:color-mix(in srgb,var(--bg-elevated,#fff) 96%,var(--accent,#922b38) 4%);color:var(--ink,#302720);font:inherit;cursor:pointer}.p275-quick button span{font-size:19px;color:var(--accent,#922b38)}.p275-quick button b{font-size:11.5px}
.p275-inline-detail{margin-top:10px;padding:14px;border-radius:12px;background:color-mix(in srgb,var(--bg-elevated,#fff) 95%,var(--accent,#922b38) 5%)}.p275-inline-detail[hidden]{display:none}
.p275-mass-list>div{display:grid;grid-template-columns:minmax(90px,.6fr) 1fr;gap:4px 12px;padding:9px 0;border-bottom:1px solid var(--line,#e5d9c8)}.p275-mass-list>div:last-child{border-bottom:0}.p275-mass-list b{font-size:12.5px}.p275-mass-list span{font-size:13px}.p275-mass-list small{grid-column:2;color:var(--ink-soft,#756b60);font-size:11px}
.p275-directions p{margin:6px 0 12px;color:var(--ink-soft,#756b60);font-size:13px}.p275-directions a{display:inline-flex;margin-right:7px;padding:8px 11px;border:1px solid var(--line,#e5d9c8);border-radius:9px;color:var(--accent,#922b38);font-size:12px;text-decoration:none}
.p275-info-row{display:grid;grid-template-columns:82px 1fr;gap:12px;padding:10px 2px;border-bottom:1px solid var(--line,#e9e0d4);font-size:13px}.p275-info-row:last-child{border-bottom:0}.p275-info-row b{font-size:12px;color:var(--ink-soft,#756b60)}.p275-info-row span{line-height:1.55}
.p275-prayer-section #parish-section-special,.p275-prayer-section #parish-section-diocese,.p275-prayer-section #parish-section-parish{margin:0 0 10px}.p275-prayer-section .p-prayer-head{margin-top:8px}.p275-prayer-section>div>:last-child{margin-bottom:0}
.p275-bulletin-list{display:flex;flex-direction:column;gap:10px}.p275-bulletin-card{display:grid;grid-template-columns:86px 1fr;gap:14px;padding:12px;border:1px solid var(--line,#e5d9c8);border-radius:14px;background:var(--bg-elevated,#fff)}.p275-bulletin-card img,.p275-bulletin-placeholder{width:86px;height:112px;object-fit:cover;border-radius:8px;background:color-mix(in srgb,var(--bg-elevated,#fff) 88%,var(--ink-soft,#756b60) 12%)}.p275-bulletin-placeholder{display:flex;align-items:center;justify-content:center;color:var(--ink-soft,#756b60);font-size:13px;font-weight:700}.p275-bulletin-card small{color:var(--ink-soft,#756b60);font-size:11px}.p275-bulletin-card h3{margin:4px 0 5px;font-size:15px}.p275-bulletin-card p{margin:0 0 8px;color:var(--ink-soft,#756b60);font-size:12px;line-height:1.55}.p275-bulletin-card a{color:var(--accent,#922b38);font-size:12px;text-decoration:none}
.p275-community-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.p275-community-card{padding:14px;border:1px solid var(--line,#e5d9c8);border-radius:14px;background:var(--bg-elevated,#fff)}.p275-community-card small{display:block;margin-bottom:4px;color:var(--accent,#922b38);font-size:10.5px}.p275-community-card b{font-size:14px}.p275-community-card p{margin:7px 0 0;color:var(--ink-soft,#756b60);font-size:11.5px;line-height:1.5}.p275-community-news{margin-top:0}
.p275-event-row{display:grid;grid-template-columns:86px 1fr;gap:12px;padding:13px 2px;border-bottom:1px solid var(--line,#e5d9c8)}.p275-event-row:last-child{border-bottom:0}.p275-event-row time{color:var(--accent,#922b38);font-size:11.5px;font-weight:700}.p275-event-row div{display:flex;flex-direction:column;gap:3px}.p275-event-row small{color:var(--ink-soft,#756b60);font-size:10.5px}.p275-event-row b{font-size:14px}.p275-event-row span,.p275-event-row p{margin:0;color:var(--ink-soft,#756b60);font-size:11.5px;line-height:1.5}
.p275-photo{position:relative;aspect-ratio:1/1;overflow:hidden;border:0;border-radius:12px;padding:0;background:color-mix(in srgb,var(--bg-elevated,#fff) 88%,var(--ink-soft,#756b60) 12%);cursor:pointer}.p275-photo img{width:100%;height:100%;object-fit:cover}.p275-photo span{position:absolute;left:0;right:0;bottom:0;padding:20px 9px 8px;background:linear-gradient(transparent,rgba(0,0,0,.55));color:#fff;font-size:11px;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.p275-empty{text-align:center;color:var(--ink-soft,#756b60);font-size:12.5px}
.p275-modal{position:fixed;z-index:9999;inset:0;display:flex;align-items:flex-end;justify-content:center;padding:18px;background:rgba(20,16,13,.38);backdrop-filter:blur(2px)}.p275-modal-card{position:relative;width:min(680px,100%);max-height:min(86vh,800px);overflow:auto;border-radius:20px;background:var(--bg,#fffdf9);box-shadow:0 18px 60px rgba(0,0,0,.18)}.p275-modal-close{position:sticky;z-index:2;float:right;top:10px;margin:10px 10px 0 0;width:36px;height:36px;border:0;border-radius:50%;background:var(--bg-elevated,#fff);font-size:23px;color:var(--ink-soft,#655a50);cursor:pointer}.p275-modal-body{padding:24px 20px 28px}.p275-article-cover{width:100%;max-height:420px;object-fit:cover;border-radius:13px;margin-bottom:18px}.p275-article-body{word-break:keep-all;overflow-wrap:anywhere}.p275-file{display:block;margin-top:14px;padding:10px;border-radius:9px;background:color-mix(in srgb,var(--bg-elevated,#fff) 90%,var(--accent,#922b38) 10%);color:var(--accent,#922b38);font-size:12px;text-decoration:none}
.p275-comments{margin-top:24px;padding-top:17px;border-top:1px solid var(--line,#e5d9c8)}.p275-comments h4{margin:0 0 10px;font-size:14px}.p275-comment{padding:10px 0;border-bottom:1px solid var(--line,#eee5da)}.p275-comment b{font-size:12px}.p275-comment p{margin:4px 0;font-size:13px;line-height:1.6}.p275-comment small,.p275-comment-note,.p275-comment-empty,.p275-comment-loading{color:var(--ink-soft,#756b60);font-size:11.5px}.p275-comment-form{display:flex;gap:7px;margin-top:12px}.p275-comment-form textarea{flex:1;resize:vertical;border:1px solid var(--line,#e5d9c8);border-radius:10px;padding:9px;background:var(--bg-elevated,#fff);color:inherit;font:inherit;font-size:12.5px}.p275-comment-form button{align-self:flex-end;border:0;border-radius:9px;padding:9px 12px;background:var(--accent,#922b38);color:#fff;font:inherit;font-size:12px}
@media(max-width:560px){.p275-hub{padding-bottom:18px}.p275-tabs button{min-width:62px;padding:8px 8px;font-size:11.5px}.p275-bulletin-card{grid-template-columns:74px 1fr}.p275-bulletin-card img,.p275-bulletin-placeholder{width:74px;height:98px}.p275-community-grid{grid-template-columns:1fr 1fr}.p275-modal{padding:0;align-items:flex-end}.p275-modal-card{border-radius:20px 20px 0 0;max-height:92vh}.p275-event-row{grid-template-columns:75px 1fr}}

.p275-comment-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.p275-comment-action{border:0;background:transparent;color:var(--ink-soft,#756b60);padding:2px 4px;font:inherit;font-size:11px;cursor:pointer}.p275-comment-action:hover,.p275-comment-action:focus-visible{color:var(--accent,#922b38);text-decoration:underline}.p275-comment-action:disabled{opacity:.45;cursor:default}


/* ===== V2.76 UI 보정: 기존 ORATIO 가독성/밀도 복원 ===== */
.p275-hero{min-height:0;aspect-ratio:16/7.1;border-radius:16px;background:#e8dfd2}
.p275-hero-image{object-position:center 47%}
.p275-hero-copy{left:18px;right:18px;bottom:16px}
.p275-tabs{margin-top:10px}

/* 일반 게시판: 아이폰 폭에 맞춘 종류 · 제목 · 날짜 한 줄 중심 목록 */
.p275-post-item{border-bottom:1px solid var(--line,#e9e0d4)}
.p275-post-item:last-child{border-bottom:0}
.p275-post-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto 77px 12px;gap:7px;width:100%;min-height:43px;padding:7px 1px;border:0!important;background:transparent;color:inherit;text-align:left;align-items:center}
.p275-post-item.is-compact .p275-post-row{min-height:40px;padding:6px 1px}
.p275-kind{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:20px;padding:0 5px;border-radius:999px;background:color-mix(in srgb,var(--bg-elevated,#fff) 86%,var(--accent,#922b38) 14%);color:var(--accent,#922b38);font-size:10px;font-weight:800;white-space:nowrap}
.p275-post-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.35;font-weight:680}
.p275-post-date{color:var(--ink-soft,#756b60);font-size:10px;text-align:right;white-space:nowrap}
.p275-priority{display:inline-flex;align-items:center;height:18px;padding:0 5px;border-radius:999px;font-size:9.5px;font-weight:800;white-space:nowrap}
.p275-priority.is-important{background:#fff3df;color:#a45d19}.p275-priority.is-urgent{background:#fde7e9;color:var(--accent,#922b38)}
.p275-row-arrow{font-size:17px;color:#aa9d91;text-align:right}
.p275-post-detail{padding:0 0 10px}.p275-post-detail[hidden]{display:none}.p275-post-detail>.p275-article{margin:2px 0 7px;padding:13px;border-radius:12px;background:color-mix(in srgb,var(--bg-elevated,#fff) 95%,var(--accent,#922b38) 5%)}
.p275-article-meta{display:flex;align-items:center;gap:7px;color:var(--ink-soft,#756b60);font-size:10.5px}.p275-article h2{margin:8px 0 12px;font-size:17px;line-height:1.45}.p275-article-body{font-size:13px;line-height:1.8}.p275-article-images{display:grid;grid-template-columns:1fr;gap:8px;margin:0 0 13px}.p275-article-images img{display:block;width:100%;height:auto;max-height:520px;object-fit:contain;border-radius:10px;background:rgba(0,0,0,.03)}
.p275-pagination{display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 0 3px}.p275-pagination button{width:34px;height:32px;border:1px solid var(--line,#e5d9c8);border-radius:9px;background:var(--bg-elevated,#fff);color:var(--accent,#922b38);font-size:17px}.p275-pagination button:disabled{opacity:.35}.p275-pagination span{font-size:10.5px;color:var(--ink-soft,#756b60)}

/* 사진 게시판만 썸네일 2열 */
.p275-photo-grid{display:grid;gap:9px}.p275-photo-card{min-width:0;overflow:hidden;padding:0;border:1px solid var(--line,#e5d9c8);border-radius:12px;background:var(--bg-elevated,#fff);color:inherit;text-align:left}.p275-photo-card>img,.p275-photo-placeholder{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:color-mix(in srgb,var(--bg-elevated,#fff) 86%,var(--ink-soft,#756b60) 14%)}.p275-photo-placeholder{display:grid;place-items:center;color:var(--ink-soft,#756b60);font-size:12px}.p275-photo-copy{display:block;padding:8px 9px 9px}.p275-photo-copy b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11.5px}.p275-photo-copy small{display:block;margin-top:3px;color:var(--ink-soft,#756b60);font-size:9.5px}.p275-photo-detail{grid-column:1/-1;margin-top:4px}

/* 오시는 길: 주소 + 약도 + 링크 */
.p275-directions .p275-address{margin:6px 0 10px;color:var(--ink-soft,#756b60);font-size:12.5px;line-height:1.6}.p275-map-wrap{overflow:hidden;width:100%;aspect-ratio:16/8.5;margin:7px 0 10px;border:1px solid var(--line,#e5d9c8);border-radius:11px;background:#eee}.p275-map-wrap iframe{width:100%;height:100%;border:0}.p275-map-actions{display:flex;gap:7px;flex-wrap:wrap}.p275-map-actions a{margin:0!important}

/* 공동체: Pr.을 첫 화면에 직접 나열하지 않고 레지오/ME/분과 등 상위 단위부터 */
.p275-community-grid{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--line,#e5d9c8)}.p275-community-group{border-bottom:1px solid var(--line,#e5d9c8)}.p275-community-group-btn{display:grid;grid-template-columns:32px minmax(0,1fr) 14px;gap:9px;width:100%;min-height:50px;padding:8px 2px;border:0;background:transparent;color:inherit;text-align:left;align-items:center}.p275-community-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:rgba(146,43,56,.08);color:var(--accent,#922b38);font-size:15px}.p275-community-copy{min-width:0}.p275-community-copy b{display:block;font-size:13.5px;word-break:keep-all;overflow-wrap:anywhere}.p275-community-copy small{display:block;margin-top:2px;color:var(--ink-soft,#756b60);font-size:10px}.p275-community-group-detail{padding:2px 0 8px 41px}.p275-community-group-detail[hidden]{display:none}.p275-community-child{padding:7px 0;border-top:1px dashed color-mix(in srgb,var(--line,#e5d9c8) 75%,transparent)}.p275-community-child b{display:block;font-size:12.5px}.p275-community-child span{display:block;margin-top:2px;color:var(--ink-soft,#756b60);font-size:10.5px;line-height:1.45}.p275-community-child.is-empty{color:var(--ink-soft,#756b60);font-size:11px}

@media(max-width:560px){
  .p275-hero{aspect-ratio:16/8.4;border-radius:14px}.p275-hero-image{object-position:center 46%}.p275-hero-copy{left:14px;bottom:13px}.p275-hero-copy small{font-size:10px}.p275-hero-copy strong{font-size:20px}.p275-hero-copy span{font-size:11.5px}
  .p275-section{border-radius:13px}.p275-view-head{padding-top:8px}.p275-view-head h2{font-size:17px}.p275-view-head p{font-size:11.5px}
  .p275-post-row{gap:5px}.p275-post-title{font-size:12px}.p275-post-date{font-size:9px}.p275-kind{min-width:32px;height:18px;font-size:9px}.p275-priority{font-size:8.5px;height:17px}.p275-row-arrow{font-size:15px}
  .p275-article h2{font-size:16px}.p275-article-body{font-size:12.5px}.p275-photo-grid{gap:7px}.p275-photo-copy{padding:7px}.p275-map-wrap{aspect-ratio:16/9}
}


/* ===== V2.77 본당 홈 사용성 보정 ===== */
.p275-post-flags{display:flex;align-items:center;gap:3px;min-width:0;white-space:nowrap}.p275-pin{font-size:11px;line-height:1}.p275-new{display:inline-flex;align-items:center;height:17px;padding:0 4px;border-radius:999px;background:rgba(47,111,214,.12);color:#4c82e8;font-size:8px;font-weight:900;letter-spacing:.02em}
.p275-accordion-head{margin-bottom:0}.p275-accordion-title,.p275-home-accordion-toggle{display:flex;width:100%;min-height:44px;align-items:center;justify-content:space-between;gap:12px;border:0;background:transparent;color:inherit;padding:0;font:inherit;font-weight:800;text-align:left;cursor:pointer}.p275-accordion-title{font-size:16px}.p275-accordion-arrow{color:var(--ink-soft,#756b60);font-size:16px}.p275-accordion-section>.p275-list{margin-top:8px}.p275-home-accordion-toggle{padding:0 0 8px;font-size:14px}.p275-home-accordion-body{border-top:1px solid var(--line,#e5d9c8);padding-top:10px}
.p275-section[hidden],.p275-tabs button[hidden],.p275-quick button[hidden]{display:none!important}.p275-empty{padding:12px 8px}
@media(max-width:560px){
  .p275-section{margin:8px 0;padding:10px 11px}.p275-section-head{margin-bottom:7px}.p275-section-head h3,.p275-accordion-title{font-size:14.5px}.p275-section-head button{font-size:11px}.p275-quick{gap:5px}.p275-quick button{min-height:58px;border-radius:11px}.p275-quick button span{font-size:16px}.p275-quick button b{font-size:10.5px}.p275-info-row{grid-template-columns:72px 1fr;gap:9px;padding:7px 1px;font-size:12px}.p275-info-row b{font-size:11px}.p275-inline-detail{margin-top:7px;padding:10px}.p275-post-row{min-height:44px;padding:6px 0}.p275-post-item.is-compact .p275-post-row{min-height:44px;padding:5px 0}.p275-post-row{grid-template-columns:36px minmax(0,1fr) auto 66px 9px}.p275-post-flags{gap:2px}.p275-pin{font-size:10px}.p275-new{height:15px;font-size:7px;padding:0 3px}.p275-filters{padding-bottom:7px}.p275-filters button{min-height:34px;padding:6px 10px}.p275-community-group-btn{min-height:44px;padding:6px 1px}.p275-event-row{padding:9px 1px}.p275-bulletin-list{gap:7px}.p275-bulletin-card{padding:9px;gap:10px}.p275-empty{padding:10px 6px}
}


/* ===== V2.78 본당 홈 보정 ===== */
.p275-list[hidden],.p275-home-accordion-body[hidden],.p275-home-community-list[hidden],.p275-home-community-news[hidden]{display:none!important}
.p275-bulletin-cover{position:relative;width:96px;height:126px;flex:0 0 96px}.p275-bulletin-cover>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:12px;background:var(--bg-elevated,#fff)}
.p275-bulletin-placeholder{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:96px;height:126px;padding:8px;border:1px solid var(--line,#e5d9c8);border-radius:12px;background:linear-gradient(180deg,#f8f2e8,#efe5d6);color:#7e2834;text-align:center;box-sizing:border-box}
.p275-bulletin-placeholder span{font-size:19px;line-height:1}.p275-bulletin-placeholder b{font-size:11px;line-height:1.25}.p275-bulletin-placeholder small{font-size:8.5px;line-height:1.35;color:#6f6258}
.p275-home-community-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.p275-home-community-item{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:48px;padding:8px 10px;border:1px solid var(--line,#e5d9c8);border-radius:11px;background:transparent;color:inherit;text-align:left}.p275-home-community-item span:first-child{min-width:0}.p275-home-community-item small{display:block;margin-bottom:2px;color:var(--ink-soft,#756b60);font-size:9.5px}.p275-home-community-item b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;word-break:keep-all}.p275-home-community-news{margin-top:9px}.p275-home-community-news-title{margin:0 0 4px;color:var(--ink-soft,#756b60);font-size:10.5px;font-weight:800}
@media(max-width:560px){.p275-bulletin-cover,.p275-bulletin-placeholder{width:74px;height:98px}.p275-bulletin-placeholder span{font-size:16px}.p275-bulletin-placeholder b{font-size:9.5px}.p275-bulletin-placeholder small{font-size:7.5px}.p275-home-community-list{grid-template-columns:1fr 1fr;gap:5px}.p275-home-community-item{min-height:44px;padding:6px 8px}.p275-home-community-item b{font-size:11px}.p275-home-community-item small{font-size:8.5px}}

/* ORATIO V2.82 — 리치본문/공동체 직접진입 */
.p275-article-body p{margin:.55em 0}.p275-article-body h2,.p275-article-body h3{margin:1em 0 .45em}.p275-article-body ul,.p275-article-body ol{padding-left:1.5em}.p275-article-body blockquote{margin:.8em 0;padding:.65em .9em;border-left:3px solid var(--p275-accent,#9a2034);background:rgba(120,120,120,.08)}.p275-article-body img{display:block;max-width:100%;height:auto;margin:12px auto;border-radius:10px}.p275-article-body a{overflow-wrap:anywhere}
.p275-community-direct{display:flex;align-items:center;gap:14px;padding:10px 0 14px;border-bottom:1px solid var(--p275-line,#d8dfe8)}.p275-community-back{border:1px solid var(--p275-line,#d8dfe8);border-radius:999px;background:transparent;color:inherit;padding:8px 11px;font:inherit;font-size:12px;cursor:pointer}.p275-community-direct-title small{display:block;opacity:.7;font-size:11px}.p275-community-direct-title h3{margin:3px 0 0;font-size:20px}

/* ORATIO V2.83 — 공지와 분리된 공동체 메시지 */
.p283-message-section .p275-section-head small{display:block;margin-bottom:3px;color:var(--ink-soft,#756b60);font-size:10.5px}.p283-message-section .p275-kind{background:color-mix(in srgb,var(--accent,#922b38) 10%,transparent);color:var(--accent,#922b38)}
.p283-admin-edit{margin-left:auto;padding:5px 8px;border:1px solid var(--line,#e5d9c8);border-radius:8px;color:var(--accent,#922b38)!important;font-size:10.5px!important;font-weight:800;text-decoration:none}

/* ORATIO V2.84 — 커뮤니티 정보 구조 */
.p284-community-tabs{display:flex;gap:6px;overflow-x:auto;margin:8px 0 16px;padding:3px;border:1px solid var(--line,#e5d9c8);border-radius:13px;background:var(--bg-elevated,#fff);scrollbar-width:none}.p284-community-tabs::-webkit-scrollbar{display:none}.p284-community-tabs button{flex:1 0 auto;min-height:37px;padding:7px 12px;border:0;border-radius:10px;background:transparent;color:var(--ink-soft,#756b60);font:inherit;font-size:11.5px;font-weight:750;white-space:nowrap}.p284-community-tabs button[aria-selected="true"]{background:color-mix(in srgb,var(--accent,#922b38) 10%,var(--bg-elevated,#fff));color:var(--accent,#922b38)}
.p284-community-panel[hidden]{display:none}.p284-panel-head{margin:0 0 10px}.p284-panel-head h3{margin:0;font-size:17px;word-break:keep-all;overflow-wrap:anywhere}.p284-panel-head p{margin:4px 0 0;color:var(--ink-soft,#756b60);font-size:11.5px;line-height:1.5}.p284-events-block{margin-top:24px;padding-top:17px;border-top:1px solid var(--line,#e5d9c8)}
@media(max-width:560px){.p284-community-tabs{margin-top:4px}.p284-community-tabs button{min-height:35px;padding:6px 10px;font-size:10.5px}.p284-panel-head h3{font-size:15px}}
/* V2.84.3: album listing and one-photo view are separate screens. */
.p275-photo-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}
.p275-photo-grid[hidden],.p275-photo-detail[hidden]{display:none!important}
.p275-hub [hidden]{display:none!important}
.p2843-photo-viewer{max-width:1000px;margin:auto;padding:16px;border:1px solid var(--border,#aaa);border-radius:16px}
.p2843-photo-stage{display:flex;justify-content:center;align-items:center;min-height:160px;overflow:auto;margin-top:14px;background:rgba(128,128,128,.08)}
.p2843-photo-stage img{display:block;max-width:100%;max-height:70vh;object-fit:contain;width:auto;height:auto}
.p2843-photo-stage.is-zoomed{display:block;max-height:80vh}.p2843-photo-stage.is-zoomed img{max-width:none;max-height:none}
.p2843-photo-nav{display:flex;gap:10px;justify-content:center;margin:16px 0}.p2843-photo-nav button{min-height:44px;padding:8px 20px;border-radius:10px}
.p2843-photo-nav button:disabled{opacity:.4}.p2843-photo-count{text-align:center}.p2843-photo-error{padding:24px;color:inherit}
@media(max-width:560px){.p275-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.p2843-photo-viewer{padding:10px}.p2843-photo-nav button{padding:8px 12px}}

/* ORATIO V2.90 — 본당별 로고/대표색/와이드 Hero 아이덴티티 */
.p275-hero{--parish-brand:var(--accent,#922b38)}
.p275-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(22,19,16,.48) 0%,rgba(22,19,16,.26) 42%,rgba(22,19,16,.05) 72%),linear-gradient(180deg,rgba(16,13,10,.02) 32%,rgba(16,13,10,.30) 100%)}
.p275-hero-copy{right:auto;max-width:min(58%,430px);text-shadow:0 1px 9px rgba(0,0,0,.34)}
/* 2026-09-19 확정: Hero는 소형 icon_image가 아니라 각 본당의 공식 logo_image를 사용한다.
   전체 로고의 비율을 보존하며, 작은 정사각형 심벌처럼 잘라 쓰지 않는다. */
.p275-hero-brand{display:inline-flex;align-items:center;justify-content:flex-start;width:max-content;max-width:min(260px,72vw);min-height:54px;margin-bottom:8px;padding:8px 11px;border-left:3px solid var(--parish-brand);border-radius:11px;background:rgba(255,255,255,.92);box-shadow:0 5px 18px rgba(0,0,0,.13);backdrop-filter:blur(6px)}
.p275-hero-brand[hidden]{display:none!important}
.p275-hero-brand img{display:block;width:auto;max-width:min(238px,66vw);height:auto;max-height:88px;object-fit:contain}
@media(max-width:560px){.p275-hero-copy{max-width:78%}.p275-hero-brand{max-width:min(210px,68vw);min-height:48px;padding:7px 9px}.p275-hero-brand img{max-width:min(192px,62vw);max-height:76px}}

/* Post detail quick edit: shared parish rich editor inside the current screen. */
.p291-inline-editor{position:fixed;inset:0;margin:auto;width:min(760px,100vw);max-width:100vw;max-height:min(92dvh,940px);padding:0;border:0;border-radius:18px;background:var(--surface,#fff);color:var(--ink,#222);box-shadow:0 14px 60px rgba(0,0,0,.25)}
.p291-inline-editor::backdrop{background:rgba(0,0,0,.55)}
.p291-inline-form{padding:18px;display:grid;gap:14px;overflow:auto;max-height:min(92dvh,940px);font:inherit}
.p291-inline-form header,.p291-inline-form footer{display:flex;justify-content:space-between;align-items:center;gap:12px}
.p291-inline-form header{position:sticky;top:-18px;z-index:2;padding:8px 0;background:var(--surface,#fff)}
.p291-inline-form header strong{font-size:19px}
.p291-inline-form label{display:grid;gap:6px;font-size:13px;font-weight:700}
.p291-inline-form input:not([type=checkbox]),.p291-inline-form select{width:100%;min-width:0;padding:10px;border:1px solid var(--line,#ddd);border-radius:9px;background:var(--bg-elevated,#fff);color:inherit;font:inherit}
.p291-inline-form button{padding:9px 14px;min-height:40px;border:1px solid var(--line,#ddd);border-radius:9px;background:var(--bg-elevated,#fff);color:inherit;font:inherit;cursor:pointer}
.p291-inline-form [data-save]{background:var(--wine,#674454);color:#fff;border:0;font-weight:700}
.p291-inline-form [data-state]{min-height:1.5em;margin:0;color:var(--danger,#9d3737);white-space:pre-wrap}
.p291-inline-form [hidden]{display:none!important}
.p291-inline-form details{border:1px solid var(--line,#ddd);border-radius:10px;padding:10px}
.p291-inline-form summary{cursor:pointer;font-weight:700}
.p291-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}
.p291-options .p291-check{display:flex;align-items:center;gap:6px}
.p291-options small{font-weight:400;color:var(--muted,#666)}
.p291-inline-editor .oratio-rich{border:1px solid var(--line,#ddd);border-radius:9px;overflow:hidden}
.p291-inline-editor .oratio-rich-toolbar{display:flex;flex-wrap:wrap;gap:5px;padding:7px;background:var(--accent-soft,#f6f3f1)}
.p291-inline-editor .oratio-rich-body{min-height:180px;padding:12px;outline:0;line-height:1.7;overflow-wrap:anywhere}
.p291-inline-editor .oratio-rich-body img{display:block;max-width:100%;height:auto;margin:auto}
.p291-inline-editor .pa-media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:10px}
.p291-inline-editor .pa-media-item{padding:10px;border:1px solid var(--line,#ddd);border-radius:9px}
.p291-inline-editor .pa-media-item>div{display:flex;gap:5px;flex-wrap:wrap}
@media(max-width:600px){.p291-inline-editor{height:100dvh;max-height:100dvh;border-radius:0}.p291-inline-form{max-height:100dvh;padding:14px}.p291-options{grid-template-columns:1fr}.p291-inline-editor .oratio-rich-toolbar{flex-wrap:nowrap;overflow-x:auto}}
.p291-news-search{display:grid;gap:6px;margin:12px 0;color:var(--ink,#222);font-size:13px;font-weight:700}
.p291-news-search input{box-sizing:border-box;width:100%;min-height:42px;padding:10px 12px;border:1px solid var(--line,#ddd);border-radius:10px;background:var(--surface,#fff);color:inherit;font:inherit}
.p275-article-meta [data-inline-delete]{margin-left:4px}
.p291-inline-editor .rich-photo-tools{display:flex;flex-wrap:wrap;gap:5px;margin:7px 0}
.p291-inline-editor .pa-media-item.is-removed{opacity:.55}
/* V2.91 — 게시글 수정 창 정리: 도구줄이 64px 아래로 밀려 본문 첫 줄을 가리던 문제(부모 overflow:hidden +
   sticky top:64px), 빈 상태줄·과한 최소 높이로 생기던 여백을 없앤다. */
.p291-inline-editor .oratio-rich{overflow:visible}
.p291-inline-editor .oratio-rich-toolbar{position:static;border-radius:9px 9px 0 0}
.p291-inline-editor .oratio-rich>.pa-help{margin:8px 0 0}
.p291-inline-editor .oratio-rich-body{min-height:120px}
.p291-inline-form{gap:12px}
.p291-inline-form [data-state]:empty{display:none}
.p291-inline-form header{padding:4px 0}
.p291-inline-editor .oratio-rich>[data-rich-help]{display:none}
.p291-inline-editor .oratio-rich.is-album>[data-rich-help]{display:block}
.p291-inline-editor .oratio-rich-body p{margin:.3em 0}
.p291-inline-form [data-fields]{display:grid;gap:12px}
.p291-inline-form [data-fields][hidden]{display:none!important}
