.minsaga-org { --org-line:#b8d4c5; width:100%; min-width:0; font-family:inherit; position:relative; }
.minsaga-org .minsaga-org-forest { padding:18px; }
.minsaga-org:has([data-org-coordination]:not([data-org-coordination=""])) .minsaga-org-forest { column-gap:40px; }
.minsaga-org-connections { position:absolute; inset:0; width:100%; height:100%; overflow:visible; pointer-events:none; z-index:1; }
.minsaga-org-coordination-line { fill:none; stroke:#b08732; stroke-width:2; stroke-dasharray:6 5; stroke-linejoin:round; }
.minsaga-org .minsaga-org-card { position:relative; z-index:2; }
.minsaga-org-coordination-label { display:block; margin-top:8px; color:#886720; font-size:10px; line-height:1.5; }
.minsaga-org-legend { display:flex; gap:18px; flex-wrap:wrap; padding:14px 18px 0; color:#718178; font-size:11px; }
.minsaga-org-legend span { display:inline-flex; align-items:center; gap:7px; }
.minsaga-org-legend i { display:inline-block; width:25px; border-top:2px solid #b8d4c5; }
.minsaga-org-legend i.is-coordination { border-top:2px dashed #b08732; }
.minsaga-org ul { list-style:none; padding:0; margin:0; }
.minsaga-org .minsaga-org-forest { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr)); gap:24px; align-items:start; }
.minsaga-org .minsaga-org-branch { min-width:0; position:relative; }
.minsaga-org .minsaga-org-card { display:flex; align-items:center; gap:12px; min-width:0; min-height:110px; box-sizing:border-box; padding:18px; border:1px solid #d9e7df; border-radius:12px; background:#fff; box-shadow:0 3px 12px #17352a06; text-align:left; }
.minsaga-org .minsaga-org-avatar { width:54px; height:66px; flex:0 0 54px; border-radius:7px; object-fit:cover; object-position:top; background:#e9f3ed; color:#146349; display:flex; align-items:center; justify-content:center; font-size:22px; font-weight:750; border:1px solid #d7e8dd; }
.minsaga-org .minsaga-org-copy { min-width:0; flex:1; }
.minsaga-org .minsaga-org-position { display:block; font-size:10px; line-height:1.5; letter-spacing:.06em; text-transform:uppercase; color:#146349; font-weight:750; overflow-wrap:anywhere; margin-bottom:5px; }
.minsaga-org .minsaga-org-name { color:#18352a!important; font-family:inherit!important; font-size:15px!important; line-height:1.45!important; letter-spacing:-.025em!important; font-weight:750!important; margin:0!important; overflow-wrap:anywhere; }
.minsaga-org .minsaga-org-children { display:grid; gap:16px; margin:0 0 0 22px; padding:22px 0 0 18px; border-left:1px solid var(--org-line); }
.minsaga-org .minsaga-org-children>.minsaga-org-branch::before { content:""; position:absolute; left:-19px; top:33px; width:18px; border-top:1px solid var(--org-line); }
.minsaga-org .minsaga-org-inactive { display:inline-block; margin-top:7px; padding:2px 8px; border-radius:5px; background:#fff1d6; color:#82510c; font-size:10px; }
.minsaga-org-preview-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; border-bottom:1px solid #dfe9e2; padding-bottom:14px; margin-bottom:24px; font-size:12px; color:#526b5d; }
.minsaga-org-preview-heading small { font-size:11px; color:#718178; }
@media(max-width:600px) { .minsaga-org .minsaga-org-forest { grid-template-columns:1fr; gap:24px; } .minsaga-org .minsaga-org-card { padding:16px; } .minsaga-org .minsaga-org-children { margin-left:12px; padding-left:12px; } .minsaga-org .minsaga-org-children>.minsaga-org-branch::before { left:-13px; width:12px; } }

/* Root cards share the top row; horizontal descendants can use the whole chart width. */
.minsaga-org .minsaga-org-forest { grid-template-columns:repeat(var(--org-roots,1),minmax(0,1fr)); row-gap:40px; }
.minsaga-org .minsaga-org-forest>.minsaga-org-branch { display:contents; }
.minsaga-org .minsaga-org-forest>.minsaga-org-branch>.minsaga-org-card { grid-row:1; grid-column:var(--org-column); align-self:start; }
.minsaga-org .minsaga-org-children { border:0; margin:0; padding:32px 0 0; gap:20px; }
.minsaga-org .minsaga-org-children>.minsaga-org-branch::before { display:none; }
.minsaga-org .minsaga-org-forest>.minsaga-org-branch>.minsaga-org-children { grid-row:2; grid-column:var(--org-column); padding-top:0; }
.minsaga-org .minsaga-org-children.layout-horizontal { grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr)); }
.minsaga-org .minsaga-org-children.layout-split { grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:48px; row-gap:20px; }
.minsaga-org .minsaga-org-children.layout-split>.minsaga-org-branch>.minsaga-org-card { height:100%; }
.minsaga-org .minsaga-org-forest>.minsaga-org-branch>.minsaga-org-children:is(.layout-horizontal,.layout-split) { grid-column:1/-1; }
.minsaga-org-structural-line { fill:none; stroke:#93bba6; stroke-width:1.5; stroke-linejoin:round; }
@media(max-width:720px) {
  .minsaga-org .minsaga-org-forest { grid-template-columns:1fr; }
  .minsaga-org .minsaga-org-forest>.minsaga-org-branch>.minsaga-org-card,
  .minsaga-org .minsaga-org-forest>.minsaga-org-branch>.minsaga-org-children { grid-row:auto; grid-column:1; }
  .minsaga-org .minsaga-org-children:is(.layout-horizontal,.layout-split) { grid-template-columns:1fr; }
}

/* Poster-like organogram: committee at the side, leader centered, tiers below. */
.minsaga-org-scroll { width:100%; max-width:100%; min-width:0; overflow-x:auto; padding-bottom:8px; overscroll-behavior-x:contain; }
.minsaga-org-scroll:focus-visible { outline:2px solid #378663; outline-offset:3px; border-radius:8px; }
.minsaga-org-scroll-hint { font-size:11px; color:#718178; margin:6px 18px 0; }
.minsaga-org.is-poster { min-width:var(--org-chart-min,840px); }
.minsaga-org.is-poster .minsaga-org-forest { grid-template-columns:repeat(3,minmax(0,1fr)); gap:56px 24px; padding:18px; }
.minsaga-org.is-poster .minsaga-org-forest>.minsaga-org-branch>.minsaga-org-card { grid-row:1; grid-column:var(--org-column); max-width:260px; width:100%; justify-self:center; }
.minsaga-org.is-poster .minsaga-org-forest>.minsaga-org-branch>.minsaga-org-children { grid-row:2; grid-column:var(--org-column); }
.minsaga-org.is-poster .minsaga-org-forest>.minsaga-org-branch>.minsaga-org-children:is(.layout-horizontal,.layout-split) { grid-column:1/-1; }
.minsaga-org.is-poster .minsaga-org-children.layout-horizontal { grid-template-columns:repeat(var(--org-children-cols,4),minmax(0,1fr)); gap:44px 20px; }
.minsaga-org.is-poster .minsaga-org-children.layout-split { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 48px; }
.minsaga-org.is-poster .minsaga-org-card { min-height:96px; padding:12px; gap:10px; border-radius:7px; box-shadow:0 2px 7px #17352a06; }
.minsaga-org.is-poster .minsaga-org-avatar { width:44px; height:60px; flex-basis:44px; border-radius:4px; }
.minsaga-org.is-poster .minsaga-org-name { font-size:13px!important; line-height:1.4!important; }
.minsaga-org.is-poster .minsaga-org-position { font-size:9px; letter-spacing:.03em; margin-bottom:5px; }
.minsaga-org.is-poster .minsaga-org-coordination-label { font-size:9px; margin-top:5px; }
.minsaga-org.is-poster .minsaga-org-children { padding-top:44px; }
.minsaga-org.is-poster .minsaga-org-forest>.minsaga-org-branch>.minsaga-org-children { padding-top:0; }

/* Explicit branch rows use a free central lane for the structural stem. */
.minsaga-org .minsaga-org-children.layout-manual,
.minsaga-org.is-poster .minsaga-org-forest .minsaga-org-children.layout-manual {
  display:grid; grid-template-columns:repeat(var(--org-half),minmax(0,1fr)) var(--org-center-width,28px) repeat(var(--org-half),minmax(0,1fr));
  gap:48px 16px; align-items:start;
}
.minsaga-org .minsaga-org-forest > .minsaga-org-branch > .minsaga-org-children.layout-manual {grid-column:1 / -1; grid-row:2;}
.minsaga-org .layout-manual > .minsaga-org-branch {min-width:0; width:100%;}
.minsaga-org .layout-manual > .minsaga-org-branch > .minsaga-org-card {width:100%; max-width:none;}

.minsaga-org-zoom-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin:0 0 12px}
.minsaga-org-zoom-toolbar button{background:#fff;border:1px solid #cfe2d6;border-radius:7px;min-width:36px;height:36px;padding:0 12px;color:#146349;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer}
.minsaga-org-zoom-toolbar button:focus-visible{outline:2px solid #16805b;outline-offset:2px}
.minsaga-org-zoom-toolbar button:disabled{opacity:.4;cursor:default}
.minsaga-org-zoom-toolbar output{font-size:12px;min-width:46px;text-align:center;color:#526b5d;font-variant-numeric:tabular-nums}
.minsaga-org-scroll.is-zoomable{position:relative;overflow:hidden;height:clamp(300px,65vh,680px);padding:0;border:1px solid #e1ece5;border-radius:10px;background:#f9fcfa;touch-action:none;cursor:grab}
.minsaga-org-scroll.is-zoomable:active{cursor:grabbing}
.minsaga-org-scroll.is-zoomable>.minsaga-org{position:absolute;left:0;top:0;transform-origin:0 0;will-change:transform}
