/* Shared adaptation on top of each site's user-supplied historical theme CSS. */
.menu{display:flex;align-items:center;justify-content:center;gap:22px;flex-wrap:wrap}
.menu a{font-weight:600}
.single-box,.page-box{background:white;border-radius:18px;padding:24px;margin:22px 0;overflow-wrap:anywhere}
.entry-content{font-size:16px;line-height:1.85;overflow-wrap:anywhere}
.entry-content img{max-width:100%;height:auto;margin:14px auto;border-radius:10px}
.entry-content a{overflow-wrap:anywhere;text-decoration:underline}
.single-title{font-size:clamp(23px,3vw,33px);line-height:1.45}
.single-meta{font-size:13px;color:#7a8790;padding-bottom:18px;margin-bottom:20px;border-bottom:1px solid #e9eef0}
.tag-pill{display:inline-block;background:#f1f4f6;padding:4px 9px;border-radius:15px;font-size:12px;margin:0 6px 6px 0}
.pagination{align-items:center;flex-wrap:wrap}
.page-current{font-size:13px;color:#737e86;padding:8px}
.privacy-note{font-size:13px;color:#65767e;background:#f7fafb;padding:10px 14px;border-radius:10px}
.search-form{display:flex;gap:8px}
.search-form input{min-width:0}
.search-form button{cursor:pointer}
.site-main{min-height:45vh}
.submit-form{display:grid;gap:16px;max-width:800px}
.submit-form label{display:grid;gap:6px;font-size:14px;font-weight:600}
.submit-form label.consent{display:flex;gap:12px;align-items:flex-start;font-weight:400}
.submit-form input:not([type=checkbox]):not([type=file]),.submit-form select,.submit-form textarea{width:100%;border:1px solid #cbd5dd;padding:12px;border-radius:8px;font:inherit}
.submit-form button,.admin-tools button,.admin-item button{background:#168558;border:0;color:white;padding:12px 20px;border-radius:8px;font-size:15px;cursor:pointer;margin:4px}
.submit-form button:disabled{opacity:.45;cursor:not-allowed}
.honeypot{position:absolute;left:-9999px;top:-9999px;opacity:0;height:0;width:0}
.danger-tip{background:#fff1f0;color:#a42822;padding:13px;border-radius:8px}
.admin-tools{display:flex;gap:12px;margin:20px 0}
.admin-item{background:white;border:1px solid #ddd;margin:15px 0;border-radius:12px;padding:18px}
.admin-item p{white-space:pre-wrap}
@media(max-width:640px){.search-form{flex-direction:column}.search-form button{padding:12px}.single-box,.page-box{padding:15px}.menu{gap:12px}}

/* Readability and nav responsiveness, shared by both preserved historical themes. */
.entry-content { max-width: 940px; margin-left: auto; margin-right: auto; line-height: 1.9; overflow-wrap: anywhere; }
.entry-content p { margin-bottom: 1.15em; }
.entry-content img { display: block; max-width: 100%; height: auto; object-fit: contain; }
.entry-content table { max-width: 100%; display: block; overflow-x: auto; }
.main-nav { flex-wrap: wrap; justify-content: flex-end; }
.header-inner > .logo { flex-shrink: 0; }
@media (max-width: 900px) {
  .header-inner { flex-wrap: wrap; gap: 10px; justify-content: center; }
  .header-inner .main-nav { justify-content: center; }
}
@media (max-width: 640px) {
  .entry-content { max-width: 100%; }
  .single-title { overflow-wrap: anywhere; }
  .entry-content img { margin: 12px auto; }
}
/* V2 restricted administrator workspace */
.v2-admin{max-width:1100px;margin:2rem auto;padding:24px}
.admin-tabs,.admin-actions,#admin-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:16px 0}
.admin-tabs button,.admin-btn,#admin-controls button{border:1px solid #b8c6ca;background:#fff;color:#102a33;border-radius:9px;padding:9px 15px;cursor:pointer;font:inherit}
.admin-tabs button[aria-pressed="true"],.admin-btn.primary{background:#0c795d;color:#fff;border-color:#0c795d}
.admin-btn.danger{background:#fff2f1;color:#a32827;border-color:#df9a96}
.admin-item{border:1px solid #dae5df;border-radius:14px;padding:18px;margin:15px 0;background:#fff;box-shadow:0 2px 12px rgba(0,0,0,.03)}
.admin-item h3{overflow-wrap:anywhere;margin:0 0 7px}
.admin-item pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit}
.admin-muted{color:#58666f;font-size:.94rem}
.admin-sensitive{background:#fff8df;border-left:4px solid #d5ac3d;padding:10px;overflow-wrap:anywhere}
.admin-photo{display:inline-flex;flex-direction:column;gap:6px;align-items:flex-start;margin:10px;padding:10px;border:1px solid #d5e0da;border-radius:9px}
.admin-photo img{max-width:160px;max-height:160px;object-fit:contain}
.admin-field{display:block;margin:12px 0;font-weight:600}
.admin-field input,.admin-field textarea{display:block;width:100%;max-width:100%;box-sizing:border-box;border:1px solid #b9c9c0;border-radius:7px;padding:9px;margin-top:5px;font:inherit;color:#143437}
.admin-consent{display:flex;align-items:flex-start;gap:10px;margin:14px 0;font-weight:600}
.admin-error{color:#a12424;font-weight:600}
#admin-controls input,#admin-controls select{padding:9px;border:1px solid #cad9d0;border-radius:7px}
@media(max-width:700px){.v2-admin{padding:12px}.admin-tabs button{flex:1 1 auto}.admin-item{padding:12px}}

/* V3 public uploader and edited WebP media. Old WordPress photos are not rewritten. */
.welfare-photo-preview{display:flex;flex-wrap:wrap;gap:12px}
.welfare-photo-preview>p{flex-basis:100%;font-size:.9rem;color:#58666f;margin:4px 0}
.welfare-preview-item{display:flex;flex-direction:column;gap:5px;width:130px;padding:8px;border:1px solid #d4e1d9;border-radius:10px;background:white}
.welfare-preview-item img{width:112px;height:112px;object-fit:contain;border-radius:6px}
.welfare-preview-item small{overflow-wrap:anywhere;font-size:.75rem}
.welfare-preview-item button{margin:3px 0;padding:5px;background:#eff8f3;color:#095740}
.entry-content img,.welfare-article-gallery img{max-width:min(800px,100%);height:auto;object-fit:contain}
.welfare-article-gallery{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-start;margin:12px 0 24px}
.welfare-article-gallery img{display:block;border-radius:9px;max-height:1200px}
.admin-photo-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:12px;margin:15px 0}
.admin-photo-gallery .admin-photo{display:flex;flex-direction:column;gap:8px;margin:0;min-width:0}
.admin-photo-gallery .admin-photo img{width:100%;height:140px;max-width:unset;max-height:unset;object-fit:contain;background:#eef4f0}
.admin-photo-gallery .admin-photo small{overflow-wrap:anywhere}
.admin-photo-actions{display:flex;flex-wrap:wrap;gap:4px}
.admin-photo-actions button{padding:6px 8px;margin:0;font-size:12px}
.admin-photo-upload{border:1px dashed #b2c7be;padding:12px;border-radius:9px;margin:14px 0}
.admin-photo-upload input{max-width:100%}
/* Curated-topic discovery, story-specific FAQ and related cases. */
.welfare-topic-section,.welfare-faq,.related-posts,.welfare-topic-directory,.welfare-topic-intro{margin:26px auto;padding:20px 22px;background:#fff;border-radius:16px;max-width:1120px}
.welfare-topic-heading{display:flex;gap:16px;justify-content:space-between;align-items:center}
.welfare-topic-heading h2,.welfare-faq h2,.related-posts h2{margin:0 0 15px;font-size:1.3rem}
.welfare-topic-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
.welfare-topic-list>a{display:flex;flex-direction:column;gap:7px;color:inherit;text-decoration:none;padding:14px;border-radius:10px;border:1px solid #d9e6de;background:#f8fbf9}
.welfare-topic-list>a:hover,.related-grid article:hover{border-color:#1b8a60}
.welfare-topic-list span{font-size:.84rem;color:#61736c}
.welfare-faq details{border-top:1px solid #edf0ee;padding:12px 2px}
.welfare-faq summary{cursor:pointer;font-weight:650;line-height:1.55}
.welfare-faq details p{line-height:1.8;margin:.8em 0;color:#485b55}
.related-intro,.welfare-topic-intro p{font-size:.92rem;line-height:1.7;color:#64746e}
.related-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.related-grid article{padding:15px;border:1px solid #e4ece8;border-radius:11px;background:#fff}
.related-grid h3{font-size:1rem;line-height:1.5;margin:0 0 8px}
.related-grid p{font-size:.87rem;margin:0;line-height:1.7;color:#5e6d66}
@media(max-width:650px){.welfare-topic-section,.welfare-faq,.related-posts,.welfare-topic-directory,.welfare-topic-intro{padding:14px;margin:16px 0}.related-grid,.welfare-topic-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:400px){.related-grid,.welfare-topic-list{grid-template-columns:1fr}}
