/* The editor follows the existing Rise & Rooted palette and type system. */
.admin-login { color:inherit; background:none; border:0; padding:.3rem 0; font:inherit; font-size:.78rem; text-decoration:underline; text-underline-offset:4px; cursor:pointer; opacity:.72; }
.admin-login:hover,.admin-login:focus-visible { opacity:1; }
.cms-has-bar { padding-bottom:150px; }
.cms-bar { position:fixed; inset:auto 18px 14px; z-index:10000; padding:16px 20px; background:#2E2A22; color:#F7F1E6; border:1px solid #544e43; border-radius:14px; box-shadow:0 10px 35px #0003; font:14px/1.5 var(--body); display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.cms-bar__identity { display:flex; flex-direction:column; margin-right:auto; min-width:160px; }
.cms-bar__identity strong { font-size:15px; }.cms-bar__identity span { color:#d4cebF; font-size:12px; max-width:380px; }
.cms-bar__actions,.cms-bar__format { display:flex; align-items:center; gap:6px; flex-wrap:wrap; }
.cms-bar button { font:inherit; color:inherit; border:1px solid #746c5d; border-radius:7px; background:transparent; padding:8px 10px; cursor:pointer; white-space:nowrap; }
.cms-bar button:hover { background:#494437; }.cms-bar button.cms-bar__publish { background:#EDE3CF; color:#2E2A22; border-color:#EDE3CF; font-weight:700; }
.cms-bar__format { flex-basis:100%; border-top:1px solid #605949; padding-top:9px; font-size:12px; }.cms-bar__format span { margin-right:auto; }.cms-bar__format button { padding:3px 10px; }
.cms-bar [hidden] { display:none; }.cms-bar .is-error { color:#ffcab7; }
.cms-editing [data-cms-text] { outline:1px dashed transparent; outline-offset:5px; cursor:text; border-radius:2px; }
.cms-editing [data-cms-text]:hover { outline-color:#B15E38; }.cms-editing [data-cms-text]:focus { outline:2px solid #5F6B48; background:#5f6b480b; }
.cms-editing [data-cms-image] { outline:2px dashed #B15E38; outline-offset:5px; cursor:pointer; }.cms-editing .faq__a { grid-template-rows:1fr; }.cms-editing .reveal { opacity:1; transform:none; }
.cms-dialog { box-sizing:border-box; width:min(540px,calc(100vw - 32px)); max-height:90dvh; margin:auto; padding:28px; border:1px solid #c5bfaf; border-radius:16px; background:#F7F1E6; color:#2E2A22; box-shadow:0 20px 80px #0003; font:15px/1.6 var(--body); }
.cms-dialog::backdrop { background:#2e2a2280; backdrop-filter:blur(3px); }.cms-dialog--wide { width:min(1160px,calc(100vw - 32px)); }
.cms-dialog [hidden] { display:none !important; }
.cms-dialog__heading { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:16px; }.cms-dialog__heading h2 { font:600 34px/1.1 var(--display); margin:0; }
.cms-icon-button { border:0; background:transparent; color:inherit; font:30px/1 sans-serif; cursor:pointer; padding:7px; }
.cms-dialog h3 { font-size:24px; margin-top:0; }.cms-label { display:flex; flex-direction:column; gap:6px; font-weight:700; font-size:14px; margin:0 0 18px; }
.cms-dialog input:not([type=file]),.cms-dialog textarea { width:100%; box-sizing:border-box; border:1px solid #aaa08c; border-radius:6px; background:#fffdf7; color:#2E2A22; font:400 15px/1.5 var(--body); padding:10px 12px; }
.cms-dialog textarea { min-height:100px; resize:vertical; }.cms-dialog input[readonly] { background:#EDE3CF; }
.cms-label small,.cms-help { color:#625c50; font:400 12px/1.55 var(--body); }.cms-help { margin:8px 0 18px; }
.cms-dialog input:focus,.cms-dialog textarea:focus,.cms-rich-body:focus { outline:2px solid #5F6B48; outline-offset:2px; }
.cms-button { appearance:none; border:1px solid #aaa08c; border-radius:7px; color:#2E2A22; background:transparent; padding:10px 15px; font:700 14px/1.5 var(--body); cursor:pointer; }
.cms-button--primary { background:#5F6B48; color:#fff; border-color:#5F6B48; }.cms-button:hover { filter:brightness(.94); } .cms-button:disabled,.cms-bar button:disabled { opacity:.5; cursor:wait; }
.cms-error { color:#8c321c; font-weight:700; margin:16px 0 0; }.cms-error:empty { display:none; }
.cms-search-preview { border-left:3px solid #C3B495; padding:5px 0 5px 15px; margin:20px 0; overflow-wrap:anywhere; }.cms-search-preview span { font-size:11px; color:#5F6B48; }.cms-search-preview strong { display:block; font-size:19px; color:#284b73; font-weight:600; line-height:1.4; }.cms-search-preview p { font-size:13px; line-height:1.5; margin:5px 0 0; }
.cms-image-preview { width:100%; max-height:270px; object-fit:contain; background:#EDE3CF; border-radius:8px; margin-bottom:20px; }
.cms-upload { display:block; padding:13px; border:1px dashed #827960; border-radius:7px; background:#EDE3CF; font-size:14px; cursor:pointer; }.cms-upload input { display:block; width:100%; font:12px var(--body); margin-top:8px; }
.cms-post-list { margin:18px 0; }.cms-post-row { width:100%; display:flex; justify-content:space-between; align-items:center; gap:20px; background:transparent; color:inherit; text-align:left; font:inherit; border:0; border-bottom:1px solid #c9c1af; padding:18px 0; cursor:pointer; }.cms-post-row:hover { color:#5F6B48; }.cms-post-row small { display:block; font-size:11px; font-weight:400; margin-top:5px; overflow-wrap:anywhere; }.cms-badge { background:#EDE3CF; font-size:11px; padding:4px 8px; border-radius:5px; }
.cms-post-form { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr); gap:30px; }.cms-post-main [name=title] { font:600 31px/1.25 var(--display); padding:12px; }.cms-post-settings { border-left:1px solid #c9c1af; padding-left:28px; }.cms-post-footer { grid-column:1/-1; border-top:1px solid #c9c1af; padding-top:18px; display:flex; justify-content:space-between; gap:14px; align-items:center; flex-wrap:wrap; }.cms-post-footer>div { display:flex; gap:8px; flex-wrap:wrap; }.cms-post-footer>span { font-size:13px; color:#5F6B48; }
.cms-cover-editor { margin:22px 0; }.cms-cover-editor img { width:100%; max-height:250px; object-fit:cover; border-radius:8px; margin-bottom:12px; }.cms-rich-heading>label { font-weight:700; font-size:14px; }.cms-rich-toolbar { display:flex; gap:5px; margin:10px 0; flex-wrap:wrap; }.cms-rich-toolbar button { background:#EDE3CF; color:#2E2A22; border:0; padding:7px 10px; border-radius:4px; font:13px var(--body); cursor:pointer; }.cms-rich-body { min-height:340px; padding:20px; border:1px solid #aaa08c; border-radius:7px; background:#fffdf7; font:17px/1.7 var(--body); }.cms-rich-body h2 { font-size:30px; }.cms-rich-body p { margin:0 0 1em; }.cms-rich-body p:last-child { margin-bottom:0; }
.cms-cover { width:100%; aspect-ratio:16/9; object-fit:cover; border-radius:var(--radius); margin-top:32px; }.cms-article>header { max-width:960px; padding-bottom:40px; }.cms-article__body { max-width:760px; }.cms-article__body h2,.cms-article__body h3 { margin-top:1.3em; }.cms-article__body img { width:100%; height:auto; }.cms-card-image { width:100%; aspect-ratio:16/9; object-fit:cover; border-radius:8px; margin-bottom:18px; }
@media(max-width:760px) { .cms-bar { inset:auto 6px 6px; padding:12px; gap:8px; }.cms-bar__identity { flex-basis:100%; }.cms-bar__actions { gap:5px; }.cms-bar button { font-size:12px; padding:7px 8px; }.cms-bar__format span { flex-basis:100%; }.cms-has-bar { padding-bottom:270px; }.cms-dialog { padding:20px; }.cms-dialog__heading h2 { font-size:29px; }.cms-post-form { grid-template-columns:1fr; gap:22px; }.cms-post-settings { padding:20px 0 0; border:0; border-top:1px solid #c9c1af; }.cms-post-footer { position:static; }.cms-post-row { gap:10px; }.cms-article>header { padding-bottom:30px; } }
