/* A2 Phase 2 · ORATIO parish-admin structure + responsive surgery
   - Phase 1 palette bridge retained
   - Navigation and container hierarchy aligned with the integrated admin workspace
   - Breakpoint families normalized to <=1023px and <=560px

   A2 Phase 1 · ORATIO shared palette bridge
   Standalone parish admin keeps its existing classes/markup, but uses the same
   light/dark palette as the main ORATIO app. */
:root{--bg:#faf6ee;--bg-elevated:#ffffff;--ink:#2b2420;--ink-soft:#6b6055;--accent:#8a1f2d;--accent-soft:#f3e3d9;--line:#e6dcc9;--hero-to:#5c1420;--surface:var(--bg-elevated);--muted:var(--ink-soft);--wine:var(--accent);--wine-soft:var(--accent-soft);--oratio-focus:#6ea6ff;--focus:var(--oratio-focus);--ok:#187a5b;--danger:#ac2929;--shadow:0 2px 10px rgba(60,40,20,.08);--pa-content-width:1280px;--pa-radius:14px}
:root[data-theme="dark"]{--bg:#0e1729;--bg-elevated:#111b30;--ink:#f3f7ff;--ink-soft:#aab9d1;--accent:#70a0ff;--accent-soft:#1c2a47;--line:#2b3e64;--hero-to:#08101e;--shadow:0 2px 16px rgba(0,0,0,.48);--danger:#ffb4ab}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#0e1729;--bg-elevated:#111b30;--ink:#f3f7ff;--ink-soft:#aab9d1;--accent:#70a0ff;--accent-soft:#1c2a47;--line:#2b3e64;--hero-to:#08101e;--shadow:0 2px 16px rgba(0,0,0,.48);--danger:#ffb4ab}}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Noto Sans KR",sans-serif;line-height:1.45}.pa-top{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px max(18px,calc((100vw - var(--pa-content-width))/2));border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(14px)}.pa-top small{display:block;color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.12em}.pa-top h1{margin:2px 0 0;font-size:20px;letter-spacing:-.02em}.pa-top a,.pa-change{color:var(--accent);font-weight:750;text-decoration:none}.pa-top>a{display:inline-flex;align-items:center;min-height:40px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg-elevated)}.pa-wrap{max-width:var(--pa-content-width);margin:0 auto;padding:18px 18px 80px}.pa-card,.pa-parish-head,.pa-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--pa-radius);box-shadow:none}.pa-card{padding:22px}.pa-picker{max-width:720px;margin:40px auto}.pa-picker h2,.pa-panel h2{margin:0 0 6px}.pa-picker p,.pa-panel header p,.pa-parish-head p{margin:0;color:var(--muted);overflow-wrap:anywhere}.pa-parish-head>div>p{font-size:12.5px;line-height:1.5}.pa-search{display:flex;gap:8px;margin-top:20px}.pa-search input,.pa-form input,.pa-form textarea,.pa-form select{width:100%;border:1px solid var(--line);border-radius:12px;background:var(--bg-elevated);color:var(--ink);padding:11px 12px;font:inherit}.pa-search button,.pa-primary,.pa-secondary,.pa-upload button{border:0;border-radius:12px;padding:11px 15px;font:inherit;font-weight:800;cursor:pointer}.pa-search button,.pa-primary{background:var(--wine);color:white}.pa-secondary,.pa-upload button{background:var(--accent-soft);color:var(--accent)}.pa-results{display:grid;gap:8px;margin-top:12px}.pa-results a{display:flex;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--line);border-radius:12px;color:var(--ink);text-decoration:none;background:var(--bg-elevated)}.pa-parish-head{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:11px 14px;background:color-mix(in srgb,var(--bg-elevated) 96%,var(--accent) 4%)}.pa-parish-head span{color:var(--accent);font-size:11px;font-weight:800}.pa-parish-head h2{margin:1px 0 2px;font-size:18px;letter-spacing:-.01em}.pa-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:6px;margin:12px 0 16px;padding:0 0 14px;border-bottom:1px solid var(--line)}.pa-grid button{min-width:0;min-height:54px;text-align:center;padding:9px 6px;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--ink-soft);font:inherit;cursor:pointer}.pa-grid button:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--line));color:var(--ink)}.pa-grid button[aria-current="true"]{border-color:var(--accent);background:color-mix(in srgb,var(--accent-soft) 82%,transparent);color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 14%,transparent)}.pa-grid b{display:block;font-size:13px;line-height:1.25;margin:0;word-break:keep-all}.pa-grid span{display:none}.pa-panel{padding:22px 24px;margin-top:0}.pa-panel header{margin-bottom:18px}.pa-form{display:grid;gap:13px}.pa-form label{display:grid;gap:6px;font-size:13px;font-weight:700}.pa-form textarea{resize:vertical}.pa-cols{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pa-help{color:var(--muted);font-size:11.5px;font-weight:500}.pa-upload{display:flex;align-items:center;gap:8px}.pa-upload input{flex:1}.pa-check-row{display:flex;gap:18px;flex-wrap:wrap}.pa-check{display:flex!important;grid-template-columns:none!important;align-items:center;gap:7px!important}.pa-check input,.pa-check-grid input{width:auto}.pa-inline-form{grid-template-columns:1fr 1fr 1fr 1.4fr 90px auto auto auto;align-items:end}.pa-inline-form label{min-width:0}.pa-list{display:grid;gap:9px;margin-top:18px}.pa-item{display:grid;grid-template-columns:1fr auto;gap:12px;padding:13px 14px;border:1px solid var(--line);border-radius:14px;background:var(--bg-elevated)}.pa-item b{display:block}.pa-item small{display:block;margin-top:4px;color:var(--muted);line-height:1.5}.pa-item-actions{display:flex;align-items:center;gap:6px}.pa-item-actions button,.pa-order button{border:1px solid var(--line);border-radius:9px;background:var(--bg-elevated);padding:7px 9px;cursor:pointer}.pa-item-actions .danger{color:var(--danger)}.pa-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pa-check-grid label{display:flex;align-items:center;gap:8px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--bg-elevated)}.pa-order{display:grid;gap:7px}.pa-order-row{display:grid;grid-template-columns:1fr auto auto;gap:6px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--bg-elevated)}.pa-status{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);max-width:min(92vw,560px);padding:10px 16px;border-radius:999px;background:#23211f;color:#fff;opacity:0;pointer-events:none;transition:.2s}.pa-status.show{opacity:1}.pa-status.error{background:var(--danger)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
/* Dark surfaces now inherit the shared ORATIO tokens above; no separate navy admin palette. */
@media(max-width:1023px){.pa-inline-form{grid-template-columns:1fr 1fr}.pa-cols{grid-template-columns:1fr}.pa-upload{align-items:stretch;flex-direction:column}}
@media(max-width:560px){.pa-top{padding:10px 12px}.pa-top h1{font-size:18px}.pa-wrap{padding:12px 12px 70px}.pa-parish-head{padding:10px 12px;align-items:flex-start;flex-direction:column}.pa-parish-head h2{font-size:17px}.pa-head-actions{justify-content:flex-start}.pa-grid{display:flex;gap:5px;overflow-x:auto;padding:0 0 10px;margin:10px 0 14px;scrollbar-width:none}.pa-grid::-webkit-scrollbar{display:none}.pa-grid button{flex:0 0 auto;min-width:104px;min-height:48px;padding:8px 9px}.pa-grid b{font-size:12px}.pa-panel{padding:16px 14px}.pa-check-grid{grid-template-columns:1fr}.pa-search{flex-direction:column}}


/* V1.73 unified board management */
.pa-board-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:8px;align-items:center;margin:18px 0 4px;padding:12px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface) 94%,var(--wine) 6%)}.pa-board-tools select{width:100%;border:1px solid var(--line);border-radius:10px;background:var(--bg-elevated);color:var(--ink);padding:9px 10px;font:inherit;font-size:12.5px}.pa-board-count{font-size:12px;color:var(--muted);white-space:nowrap;text-align:right}@media(max-width:1023px){.pa-board-tools{grid-template-columns:1fr 1fr}.pa-board-count{text-align:left}}

/* V1.75 public-preview action */
.pa-head-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.pa-head-actions .pa-change{white-space:nowrap}


/* V2.63 smartphone image optimization + 16:9 crop editor */
.pa-image-meta{min-height:20px;color:var(--ok);font-size:12px;font-weight:700;line-height:1.45}.pa-modal-open{overflow:hidden}.pa-image-editor[hidden]{display:none!important}.pa-image-editor{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(18,14,12,.72);backdrop-filter:blur(6px)}.pa-image-editor-card{width:min(94vw,720px);max-height:92vh;overflow:auto;padding:20px;border:1px solid var(--line);border-radius:22px;background:var(--surface);box-shadow:0 28px 80px rgba(0,0,0,.28)}.pa-image-editor-card header{margin-bottom:14px}.pa-image-editor-card h2{margin:0 0 5px;font-size:20px}.pa-image-editor-card p{margin:0;color:var(--muted);font-size:13px}.pa-crop-stage{overflow:hidden;border-radius:14px;background:#111;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}.pa-crop-stage canvas{display:block;width:100%;height:auto;aspect-ratio:16/9;touch-action:none;cursor:grab}.pa-crop-stage canvas:active{cursor:grabbing}.pa-crop-info{margin:9px 2px 2px;color:var(--muted);font-size:12px}.pa-crop-controls{display:grid;grid-template-columns:1fr;gap:8px;margin-top:14px}.pa-crop-controls label{display:grid;grid-template-columns:54px 1fr;gap:10px;align-items:center;font-size:12px;font-weight:800}.pa-crop-controls input[type=range]{width:100%;accent-color:var(--wine)}.pa-crop-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:16px}.pa-crop-actions button{border:0;border-radius:12px;padding:11px 15px;font:inherit;font-weight:800;cursor:pointer}@media(max-width:560px){.pa-image-editor{padding:8px}.pa-image-editor-card{width:100%;padding:15px;border-radius:18px}.pa-crop-actions{display:grid;grid-template-columns:1fr 1fr}.pa-crop-actions #pa-crop-use{grid-column:1/-1}.pa-crop-actions button{width:100%}}

/* ORATIO V2.75 — 본당 소통 V1 */
.pa-subtabs{display:flex;gap:6px;margin:0 0 14px;padding:4px;border:1px solid var(--line);border-radius:12px;background:var(--bg-elevated);overflow-x:auto}.pa-subtabs button{flex:1 0 auto;border:0;border-radius:9px;padding:9px 12px;background:transparent;color:var(--muted);font:inherit;font-size:12px;cursor:pointer}.pa-subtabs button[aria-selected="true"]{background:var(--accent-soft);color:var(--accent);font-weight:700;box-shadow:0 1px 2px rgba(60,38,22,.05)}
.pa-target-box{padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--bg-elevated)}.pa-target-box>strong{font-size:13px}.pa-target-box>p{margin:4px 0 10px;color:var(--muted);font-size:11.5px}.pa-target-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:10px}.pa-target-grid>div>b{display:block;margin-bottom:6px;font-size:11.5px;color:var(--muted)}
.pa-member-picks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;max-height:230px;overflow:auto;padding:4px}.pa-member-picks.is-members{grid-template-columns:repeat(3,minmax(0,1fr));max-height:280px}
.pa-pick{display:flex!important;align-items:flex-start;gap:7px!important;padding:8px;border:1px solid var(--line);border-radius:9px;background:var(--bg-elevated);cursor:pointer}.pa-pick input{width:auto!important;margin-top:2px}.pa-pick span{display:flex;min-width:0;flex-direction:column;font-size:11.5px;line-height:1.3}.pa-pick small{margin-top:2px;color:var(--muted);font-size:9.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pa-form-actions{display:flex;gap:7px;flex-wrap:wrap}.pa-board-setting{align-items:flex-start}.pa-board-setting-main{display:grid;gap:4px;min-width:180px;flex:1}.pa-board-setting-main input{max-width:230px}.pa-board-setting-options{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.pa-board-setting-options label{display:flex;align-items:center;gap:4px;font-size:10.5px}.pa-board-setting-options input[type=checkbox]{width:auto}.pa-board-setting-options input[type=number]{width:62px}.pa-board-setting-options select{width:auto;min-width:100px}.pa-board-setting-options button{border:1px solid var(--line);border-radius:8px;padding:7px 10px;background:var(--bg-elevated);color:var(--accent);font:inherit;font-size:11px;cursor:pointer}
@media(max-width:1023px){.pa-target-grid{grid-template-columns:1fr}.pa-member-picks,.pa-member-picks.is-members{grid-template-columns:1fr 1fr}.pa-board-setting{display:block}.pa-board-setting-options{justify-content:flex-start;margin-top:10px}.pa-board-setting-main input{max-width:none}}
@media(max-width:560px){.pa-member-picks,.pa-member-picks.is-members{grid-template-columns:1fr}.pa-subtabs button{padding:8px 10px}}

/* V2.77 */
.pa-sort-order{display:flex;align-items:center;gap:6px;white-space:nowrap}.pa-sort-order span{font-size:11px;color:var(--muted)}.pa-board-setting-options .pa-sort-order input{width:78px}

/* ORATIO V2.82 — 게시판 관리 단순화 + 최소 리치 에디터 */
.pa-content-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:4px}
.pa-content-card{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
.pa-content-card small{display:block;color:var(--muted);font-size:11.5px;font-weight:700}
.pa-content-card h3{margin:3px 0 2px;font-size:18px}.pa-content-card p{margin:0;color:var(--muted);font-size:12px}
.pa-content-card-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.pa-content-card-actions button,.pa-content-tools button,.pa-back-link{border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);padding:9px 12px;font:inherit;font-size:12px;font-weight:800;cursor:pointer}
.pa-content-card-actions .pa-primary{background:var(--wine);color:#fff;border-color:var(--wine)}
.pa-content-tools{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0 0}.pa-comm-workspace{margin-top:12px;padding-top:4px}.pa-workspace-head{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;margin-bottom:14px}.pa-workspace-head small{display:block;color:var(--muted);font-size:11px}.pa-workspace-head h3{margin:2px 0 0;font-size:20px}.pa-compact{padding:9px 12px!important}.pa-post-editor{margin:10px 0 20px;padding:16px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--surface) 97%,var(--wine) 3%)}
.pa-advanced{border:1px solid var(--line);border-radius:12px;background:var(--surface)}.pa-advanced summary{cursor:pointer;padding:11px 13px;font-weight:800;font-size:13px}.pa-advanced-body{display:grid;gap:12px;padding:0 13px 13px}.pa-form-actions{position:sticky;bottom:8px;z-index:3;padding:8px;border-radius:12px;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(8px)}
.oratio-rich{overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--bg-elevated)}.oratio-rich-toolbar{display:flex;gap:4px;flex-wrap:wrap;padding:7px;border-bottom:1px solid var(--line);background:var(--accent-soft)}.oratio-rich-toolbar button{border:1px solid var(--line);border-radius:8px;background:var(--bg-elevated);color:var(--ink);padding:6px 8px;font:inherit;font-size:11.5px;font-weight:700;cursor:pointer}.oratio-rich-body{min-height:190px;padding:13px 14px;line-height:1.72;font-size:14px;outline:0;overflow-wrap:anywhere}.oratio-rich-body:empty:before{content:attr(data-placeholder);color:var(--muted)}.oratio-rich-body img{display:block;max-width:100%;height:auto;margin:10px auto;border-radius:10px}.oratio-rich-body blockquote{margin:10px 0;padding:8px 12px;border-left:3px solid var(--wine);background:var(--wine-soft)}
.pa-content-menu[hidden],.pa-content-tools[hidden],.pa-comm-workspace[hidden],.pa-post-editor[hidden]{display:none!important}
/* Component dark mode follows the shared token palette. */
@media(max-width:560px){.pa-content-menu{grid-template-columns:1fr}.pa-content-card{padding:14px}.pa-content-card h3{font-size:16px}.pa-workspace-head{grid-template-columns:1fr auto}.pa-workspace-head .pa-back-link{grid-column:1/-1;justify-self:start}.pa-post-editor{padding:12px}.oratio-rich-toolbar{overflow-x:auto;flex-wrap:nowrap}.oratio-rich-toolbar button{flex:0 0 auto}.oratio-rich-body{min-height:220px;font-size:15px}.pa-form-actions{display:grid;grid-template-columns:1fr 1fr}.pa-form-actions #comm-post-cancel{grid-column:1/-1}}

/* ORATIO V2.83 — 관리자센터 게시판 직접 진입·챕터별 최근 글 */
body[data-compact-panel="1"] .pa-parish-head,body[data-compact-panel="1"] .pa-grid{display:none}
body[data-compact-panel="1"] .pa-wrap{padding-top:8px}
body[data-compact-panel="1"] .pa-panel{margin-top:0}
.pa-chapter-posts{display:grid;gap:0;margin-top:10px;border-top:1px solid var(--line)}
.pa-chapter-post{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line)}
.pa-chapter-post button{min-width:0;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}
.pa-chapter-post b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.pa-chapter-post small{color:var(--muted);font-size:10.5px}
.pa-chapter-edit{padding:6px 9px!important;border:1px solid var(--line)!important;border-radius:8px!important;background:var(--surface)!important;font-size:11px!important;font-weight:700}
.pa-content-card.is-chapter{display:block}.pa-content-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.pa-content-card-empty{margin:10px 0 0;color:var(--muted);font-size:12px}
@media(max-width:560px){.pa-content-card-head{display:block}.pa-content-card-head .pa-content-card-actions{justify-content:flex-start;margin-top:9px}}
/* V2.84.3: saved and pending media share one editor. */
.pa-media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:12px}
.pa-media-item{border:1px solid var(--line);border-radius:12px;padding:10px;min-width:0;display:flex;flex-direction:column;gap:7px}
.pa-media-item img{width:100%;height:140px;object-fit:contain;border-radius:8px;background:rgba(128,128,128,.1)}
.pa-media-item small{overflow-wrap:anywhere}.pa-media-item>div{display:flex;gap:5px;flex-wrap:wrap}
.pa-media-item.is-removed{opacity:.55}.pa-media-item.is-removed img{filter:grayscale(1)}
.pa-media-item button{min-height:36px}.pa-media-editor{margin:16px 0}.pa-media-item img.is-error{outline:1px solid var(--danger)}
.pa-media-progress,#comm-post-save-state{white-space:pre-wrap;overflow-wrap:anywhere}
.pa-wrap [hidden]{display:none!important}


/* A2 Phase 3 · shared administrator shell
   Standalone parish content tools keep their proven API/editor logic, but the
   administrator header/context/tabs remain visually continuous with ORATIO. */
.pa-shell-topbar{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:78px;padding:10px max(16px,calc((100vw - var(--pa-content-width))/2));border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 96%,transparent);backdrop-filter:blur(14px)}
.pa-shell-back{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;color:var(--ink);text-decoration:none;font-size:27px;line-height:1}.pa-shell-title{font-size:24px;letter-spacing:-.03em;white-space:nowrap}.pa-shell-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.pa-shell-admin-badge{display:grid;place-items:center;min-height:44px;padding:0 12px;border-radius:14px;background:var(--accent-soft);color:var(--accent);font-weight:850}.pa-shell-text-btn,.pa-shell-icon-btn{display:grid;place-items:center;min-height:44px;border:0;background:transparent;color:var(--ink-soft);font:inherit;font-weight:800;text-decoration:none;cursor:pointer}.pa-shell-text-btn{padding:0 7px}.pa-shell-icon-btn{width:44px;border-radius:50%;font-size:21px}.pa-shell-icon-btn:hover,.pa-shell-text-btn:hover,.pa-shell-back:hover{background:color-mix(in srgb,var(--accent-soft) 60%,transparent);color:var(--accent)}
.pa-shell-wrap{padding-top:18px}.pa-shell-context{margin-bottom:10px}.pa-shell-tabs{margin-bottom:20px}.pa-search button{white-space:nowrap;word-break:keep-all;flex:0 0 auto;min-width:72px}
@media(max-width:560px){.pa-shell-topbar{grid-template-columns:42px minmax(0,1fr) auto;min-height:70px;padding:8px 10px;gap:4px}.pa-shell-back{width:40px;height:40px;font-size:25px}.pa-shell-title{font-size:18px}.pa-shell-actions{gap:0}.pa-shell-admin-badge{min-height:40px;padding:0 7px;border-radius:12px;font-size:12px}.pa-shell-text-btn{min-height:40px;padding:0 4px;font-size:11px}.pa-shell-icon-btn{width:36px;min-height:40px}.pa-shell-tabs[data-tab-count="6"]{grid-template-columns:repeat(3,minmax(0,1fr))}.pa-search{flex-direction:row}.pa-search input{min-width:0}.pa-search button{min-width:70px;padding-inline:12px}}
