/* Optional: Im MyBB-Theme als Stylesheet hinterlegen. */
.cd-family-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px;border-bottom:1px solid #bbb;padding-bottom:10px}
.cd-family-tab{padding:10px 15px;border:1px solid #bbb;border-radius:5px;background:transparent;color:inherit;cursor:pointer;font:inherit}
.cd-family-tab[aria-selected="true"]{font-weight:700;border-color:currentColor}
.cd-family-tab-panel[hidden]{display:none!important}
.cd-family-tab-panel{min-width:0}
.cd-family-section-title{margin:0 0 15px}
.cd-family-section-body{min-width:0}
.cd-family-section-body>h2,.cd-family-section-body>h3{margin-top:20px}
.cd-family-section-body .cd-family-member,.cd-family-section-body .cd-family-npc{margin-bottom:12px}
.cd-family-section-body input,.cd-family-section-body textarea{max-width:100%;box-sizing:border-box}
@media(max-width:650px){.cd-family-tabs{gap:5px}.cd-family-tab{padding:8px 10px}}

/* 0.46.11: Familienprofil und Mitgliederkarten – Farben erben das aktive Theme. */
.cd-family-profile{display:grid;gap:18px}
.cd-family-hero{display:flex;align-items:center;gap:22px;padding:20px;border:1px solid currentColor;border-color:rgba(128,128,128,.3);border-radius:8px;background:rgba(128,128,128,.055)}
.cd-family-hero-crest{width:110px;height:110px;flex:0 0 110px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(128,128,128,.25);border-radius:7px;overflow:hidden;background:rgba(128,128,128,.08)}
.cd-family-hero-crest img{width:100%;height:100%;object-fit:contain}
.cd-family-crest-placeholder{font-size:48px;opacity:.45}
.cd-family-hero-copy{min-width:0}.cd-family-hero-copy h2{margin:4px 0 8px}.cd-family-eyebrow{font-size:.82em;opacity:.7;margin:0;text-transform:uppercase;letter-spacing:.08em}.cd-family-back{display:inline-block;margin-top:10px}
.cd-family-overview-grid,.cd-family-members-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.cd-family-info-card,.cd-family-person-card{min-width:0;border:1px solid rgba(128,128,128,.3);border-radius:8px;padding:18px;background:rgba(128,128,128,.035)}
.cd-family-info-card h3{margin:0 0 12px;padding-bottom:9px;border-bottom:1px solid rgba(128,128,128,.22)}
.cd-family-card-content{overflow-wrap:anywhere;line-height:1.65}.cd-family-card-content>:first-child{margin-top:0}.cd-family-card-content>:last-child{margin-bottom:0}
.cd-family-facts{display:grid;grid-template-columns:minmax(90px,auto) 1fr;gap:9px 14px;margin:0}.cd-family-facts dt{font-weight:700}.cd-family-facts dd{margin:0;overflow-wrap:anywhere}
.cd-family-join-card{grid-column:1/-1}.cd-family-person-card{display:flex;flex-direction:column;gap:12px}.cd-family-person-main{display:flex;align-items:center;gap:13px;min-width:0}.cd-family-person-avatar{flex:0 0 54px;width:54px;height:54px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:rgba(128,128,128,.15)}.cd-family-person-avatar img{width:100%;height:100%;object-fit:cover}.cd-family-avatar-fallback{font-size:26px;opacity:.35}
.cd-family-person-meta{display:flex;flex-direction:column;gap:5px;min-width:0}.cd-family-person-name{font-weight:700;overflow-wrap:anywhere}.cd-family-person-role{font-size:.86em;opacity:.75}.cd-family-person-description{line-height:1.5;overflow-wrap:anywhere}.cd-family-person-actions{padding-top:10px;border-top:1px solid rgba(128,128,128,.2)}.cd-family-person-actions form{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.cd-family-empty{opacity:.75}
@media(max-width:760px){.cd-family-overview-grid,.cd-family-members-grid{grid-template-columns:1fr}.cd-family-hero{gap:14px;padding:14px}.cd-family-hero-crest{width:75px;height:75px;flex-basis:75px}}

/* 0.46.12 – Relationships and administration */
.cd-family-relations-layout,.cd-family-admin-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:start}
.cd-family-relations-list,.cd-family-relation-requests,.cd-family-admin-profile,.cd-family-admin-requests,.cd-family-admin-danger{grid-column:1/-1}
.cd-family-relations-grid,.cd-family-requests-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}
.cd-family-relation-card,.cd-family-request-card{border:1px solid var(--cd-family-border,#ddd);border-radius:8px;padding:1rem;min-width:0;background:var(--cd-family-card-bg,transparent)}
.cd-family-relation-summary{font-weight:600;overflow-wrap:anywhere}
.cd-family-relation-note{display:block;font-weight:400;margin-top:.4rem;opacity:.75}
.cd-family-relation-edit{margin-top:.8rem;border-top:1px solid var(--cd-family-border,#ddd);padding-top:.7rem}
.cd-family-relation-edit summary{cursor:pointer;font-weight:600}
.cd-family-relation-actions{padding-top:.75rem}
.cd-family-relation-actions form+form{margin-top:.65rem}
.cd-family-request-description{overflow-wrap:anywhere;margin-bottom:.75rem}
.cd-family-request-actions{display:flex;gap:.5rem;flex-wrap:wrap}
.cd-family-admin-layout input:not([type=checkbox]),.cd-family-admin-layout textarea,.cd-family-admin-layout select,.cd-family-relations-layout input:not([type=checkbox]),.cd-family-relations-layout textarea,.cd-family-relations-layout select{max-width:100%;box-sizing:border-box}
.cd-family-admin-layout textarea{width:100%;min-height:5rem}
.cd-family-admin-layout label,.cd-family-relations-layout label{display:block}
.cd-family-admin-layout .cd-family-info-card,.cd-family-relations-layout .cd-family-info-card{min-width:0}
.cd-family-admin-danger{border-color:var(--cd-family-danger-border,#b97878)}
@media(max-width:760px){.cd-family-relations-layout,.cd-family-admin-layout,.cd-family-relations-grid,.cd-family-requests-grid{grid-template-columns:minmax(0,1fr)}.cd-family-relations-list,.cd-family-relation-requests,.cd-family-admin-profile,.cd-family-admin-requests,.cd-family-admin-danger{grid-column:auto}}
/* 0.46.13 – family summary in member_profile and tree modal */
.cd-profile-families{margin:1rem 0}.cd-profile-family-card{display:flex;gap:1rem;padding:1rem;margin:.75rem 0;border:1px solid var(--cd-family-border,#ccc);border-radius:8px}.cd-profile-family-crest{flex:0 0 90px}.cd-profile-family-crest img{max-width:90px;max-height:100px;object-fit:contain}.cd-profile-family-info{min-width:0;flex:1}.cd-profile-family-info h3{margin-top:0}
.cd-family-modal-backdrop{position:fixed;inset:0;z-index:100000;background:rgba(0,0,0,.65);display:flex;align-items:center;justify-content:center;padding:2vw}.cd-family-modal{width:min(1200px,96vw);height:min(850px,94vh);background:var(--cd-family-modal-bg,#fff);color:var(--cd-family-modal-color,#222);border-radius:8px;display:flex;flex-direction:column;overflow:hidden}.cd-family-modal-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;border-bottom:1px solid #ccc}.cd-family-modal-frame{width:100%;border:0;flex:1;min-height:0}.cd-family-popup-page{padding:1rem}.cd-family-popup-page .cd-family-tree{max-width:100%}@media(max-width:640px){.cd-profile-family-card{flex-direction:column}.cd-family-modal-backdrop{padding:0}.cd-family-modal{width:100vw;height:100dvh;border-radius:0}}

/* 0.46.15 – Detailspalte des Stammbaums */
.cd-family-tree .cd-tree-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,310px);gap:16px;align-items:start}
.cd-family-tree .cd-tree-canvas{min-width:0;width:100%;box-sizing:border-box}
.cd-family-tree .cd-tree-detail{min-width:0;max-height:480px;overflow:auto;box-sizing:border-box;border:1px solid var(--cd-family-border,#d7d7d7);border-radius:6px;padding:16px;background:var(--cd-family-card-bg,#fff);overflow-wrap:anywhere}
.cd-family-tree .cd-tree-person-head{display:flex;gap:12px;align-items:center;margin-bottom:12px}
.cd-family-tree .cd-tree-person-avatar,.cd-family-tree .cd-tree-person-placeholder{width:54px;height:54px;flex:none;border-radius:50%;object-fit:cover;background:#e7ece8;display:grid;place-items:center}
.cd-family-tree .cd-tree-detail-title{margin:0 0 4px;font-size:1.1em}
.cd-family-tree .cd-tree-person-kind{font-size:.85em;opacity:.75}
.cd-family-tree .cd-tree-person-info{white-space:pre-wrap;line-height:1.5}
.cd-family-tree .cd-tree-related-heading{margin:16px 0 10px}
.cd-family-tree .cd-tree-relation-card{border:1px solid var(--cd-family-border,#ddd);border-radius:5px;padding:10px;margin:0 0 10px}
.cd-family-tree .cd-tree-relation-text{white-space:pre-wrap;margin:8px 0 0;line-height:1.5}
.cd-family-tree .cd-tree-profile-link{display:inline-block;margin-top:8px}
@media(max-width:760px){.cd-family-tree .cd-tree-workspace{grid-template-columns:minmax(0,1fr)}.cd-family-tree .cd-tree-detail{max-height:none}}

/* 0.46.17 – Stammbaum-Anfragen */
.cd-family-tree .cd-tree-join,.cd-family-tree .cd-tree-takeover{margin-top:16px}
.cd-family-tree [data-cd-takeover-panel][hidden]{display:none!important}
.cd-family-tree .cd-tree-takeover-button{margin-top:16px}
.cd-family-tree .cd-tree-takeover textarea,.cd-family-tree .cd-tree-join textarea{width:100%;max-width:100%;box-sizing:border-box}

/* 0.46.18 – vollständige Familienübersicht im Charakterprofil */
.cd-profile-family-card .cd-family-overview-grid{margin:16px 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:14px}
.cd-profile-family-card .cd-family-info-card{min-width:0;overflow-wrap:anywhere}
.cd-profile-family-card .cd-family-info-card h4{margin:0 0 10px;font-size:1.05em}
.cd-profile-family-card .cd-profile-family-meta{opacity:.8}
.cd-profile-family-card .cd-profile-family-actions{margin:16px 0 0}
