:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#fff;--fg:#1a1a1a;--muted:#666;--border:#e5e5e5;--accent:#2563eb;--card-bg:#fafafa;--overlay:#00000073;--status-filled:#16a34a;--status-open:#b45309;--status-planned:#6b7280;--dash-green:#16a34a;--dash-yellow:#b45309;--dash-red:#dc2626}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#111213;--fg:#ededed;--muted:#9a9a9a;--border:#2a2a2a;--accent:#5b9dff;--card-bg:#18191b;--overlay:#000000a6;--status-filled:#4ade80;--status-open:#fbbf24;--status-planned:#9ca3af;--dash-green:#4ade80;--dash-yellow:#fbbf24;--dash-red:#f87171}}*{box-sizing:border-box}body{background:var(--bg);color:var(--fg);margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5}.page{max-width:960px;margin:0 auto;padding:1.5rem 1.25rem 5rem}.backlink{color:var(--muted);font-size:.85rem;text-decoration:none}.backlink:hover{color:var(--accent)}.pageHeader{margin:1rem 0 1.5rem}.pageHeader h1{margin:0 0 .35rem;font-size:1.6rem}.pageHeader p{color:var(--muted);margin:0;font-size:.95rem}.toolbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.75rem;display:flex}.tabs{gap:.5rem;display:flex}.addRoleBtn{appearance:none;border:1px solid var(--border);color:var(--fg);cursor:pointer;white-space:nowrap;background:0 0;border-radius:8px;margin-bottom:.6rem;padding:.45rem .8rem;font-size:.85rem;font-weight:600}.addRoleBtn:hover{border-color:var(--accent);color:var(--accent)}.addRoleBtn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.loading,.loadError{color:var(--muted);font-size:.9rem}.loadError{color:var(--dash-red)}.tab{appearance:none;color:var(--muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.6rem .25rem;font-size:.95rem;font-weight:600}.tab:hover{color:var(--fg)}.tab[aria-selected=true]{color:var(--accent);border-bottom-color:var(--accent)}.tab:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.statusBadge{white-space:nowrap;align-items:center;gap:.35rem;font-size:.75rem;font-weight:600;display:inline-flex}.statusDot{border-radius:999px;flex:none;width:.55rem;height:.55rem}.statusDot--filled{background:var(--status-filled)}.statusDot--open{background:var(--status-open)}.statusDot--planned{background:var(--status-planned);border:1px solid var(--muted)}.statusBadge--filled{color:var(--status-filled)}.statusBadge--open{color:var(--status-open)}.statusBadge--planned{color:var(--muted)}.treeWrap{padding-bottom:.5rem;overflow-x:auto}.tree,.tree ul{margin:0;padding:0;list-style:none}.tree{min-width:260px}.tree ul{border-left:1px solid var(--border);margin-left:1.75rem;padding-left:1.5rem}.tree>li{margin-top:0}.tree li{margin-top:.85rem;position:relative}.tree li:first-child{margin-top:0}.tree ul li:before{content:"";border-top:1px solid var(--border);width:1.5rem;height:0;position:absolute;top:1.55rem;left:-1.5rem}.roleNode{text-align:left;background:var(--card-bg);border:1px solid var(--border);cursor:pointer;width:100%;max-width:340px;font:inherit;color:var(--fg);border-radius:10px;align-items:center;gap:.6rem;padding:.65rem .85rem;display:flex}.roleNode:hover{border-color:var(--accent)}.roleNode:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.roleNode .statusDot{margin-top:.15rem}.roleNodeBody{min-width:0}.roleNodeTitle{overflow-wrap:break-word;font-size:.95rem;font-weight:600;display:block}.roleNodeSub{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:.15rem;font-size:.8rem;display:block;overflow:hidden}@media (width<=640px){.tree ul{margin-left:1rem;padding-left:1rem}.tree ul li:before{width:1rem;left:-1rem}.roleNode{max-width:none}}.dashLegend{color:var(--muted);flex-wrap:wrap;gap:1rem;margin-bottom:1.25rem;font-size:.8rem;display:flex}.dashLegend span{align-items:center;gap:.35rem;display:inline-flex}.dashGrid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.9rem;display:grid}.dashCard{text-align:left;background:var(--card-bg);border:1px solid var(--border);cursor:pointer;width:100%;font:inherit;color:var(--fg);border-radius:10px;padding:.9rem 1rem;display:block}.dashCard:hover{border-color:var(--accent)}.dashCard:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dashCardHead{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.dashCardTitle{font-size:.98rem;font-weight:600}.dashCardIncumbent{color:var(--muted);margin:.15rem 0 .7rem;font-size:.82rem}.dashRow{color:var(--muted);justify-content:space-between;align-items:center;padding:.2rem 0;font-size:.8rem;display:flex}.dashDotLabel{align-items:center;gap:.4rem;font-weight:600;display:inline-flex}.dashDot{border-radius:999px;flex:none;width:.6rem;height:.6rem}.dashDot--green{background:var(--dash-green)}.dashDot--yellow{background:var(--dash-yellow)}.dashDot--red{background:var(--dash-red)}.dashDotLabel--green{color:var(--dash-green)}.dashDotLabel--yellow{color:var(--dash-yellow)}.dashDotLabel--red{color:var(--dash-red)}.scrim{background:var(--overlay);z-index:20;position:fixed;inset:0}.detailPanel{background:var(--bg);border-left:1px solid var(--border);z-index:21;width:min(440px,100%);padding:1.5rem 1.5rem 3rem;position:fixed;top:0;bottom:0;right:0;overflow-y:auto}.detailClose{appearance:none;border:1px solid var(--border);color:var(--fg);cursor:pointer;background:0 0;border-radius:8px;padding:.4rem .7rem;font-size:.85rem}.detailClose:hover{border-color:var(--accent)}.detailClose:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.detailHead{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.25rem;display:flex}.detailHeadActions{flex:none;gap:.5rem;display:flex}.detailTitle{margin:0 0 .35rem;font-size:1.3rem}.detailIncumbent{color:var(--muted);margin:0 0 .25rem;font-size:.9rem}.detailReportsTo{color:var(--muted);margin:0 0 1.25rem;font-size:.82rem}.detailSection{margin:1.5rem 0}.detailSection h3{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 .6rem;font-size:.78rem}.detailSection ul{margin:0;padding-left:1.1rem}.detailSection li{margin-bottom:.4rem;font-size:.92rem}.notThisRole{border:1px solid var(--border);border-left:3px solid var(--accent);color:var(--muted);border-radius:6px;padding:.75rem .9rem;font-size:.9rem}.dashStatusGrid{flex-direction:column;gap:.5rem;display:flex}.dashStatusRow{justify-content:space-between;align-items:center;font-size:.9rem;display:flex}.dashNotes{color:var(--muted);margin-top:.9rem;font-size:.88rem;font-style:italic}@media (width<=640px){.detailPanel{border-left:none;border-top:1px solid var(--border);border-radius:14px 14px 0 0;width:auto;max-height:88vh;padding:1.25rem 1.25rem 2.5rem;top:auto;left:0;right:0}}.editForm{flex-direction:column;gap:1rem;margin-top:1rem;display:flex}.editForm label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);flex-direction:column;gap:.35rem;font-size:.78rem;font-weight:600;display:flex}.editForm input,.editForm select,.editForm textarea{font:inherit;text-transform:none;letter-spacing:normal;color:var(--fg);background:var(--card-bg);border:1px solid var(--border);border-radius:8px;padding:.55rem .65rem;font-size:.92rem;font-weight:400}.editForm input:focus-visible,.editForm select:focus-visible,.editForm textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.editForm textarea{resize:vertical;font-family:inherit}.dashFieldset{border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:.9rem;padding:.9rem;display:flex}.dashFieldset legend{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:0 .3rem;font-size:.78rem;font-weight:600}.dashFieldLabel{justify-content:space-between;align-items:center;flex-direction:row!important}.dashFieldLabel select{width:auto}.formError{color:var(--dash-red);margin:0;font-size:.85rem}.editFormActions{justify-content:space-between;align-items:center;gap:.75rem;padding-top:.5rem;display:flex}.editFormActionsRight{gap:.5rem;margin-left:auto;display:flex}.saveBtn{appearance:none;border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;border-radius:8px;padding:.4rem .9rem;font-size:.85rem;font-weight:600}.saveBtn:hover{opacity:.9}.saveBtn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.deleteBtn{appearance:none;border:1px solid var(--dash-red);color:var(--dash-red);cursor:pointer;background:0 0;border-radius:8px;padding:.4rem .9rem;font-size:.85rem;font-weight:600}.deleteBtn:hover{background:var(--dash-red);color:#fff}.deleteBtn:focus-visible{outline:2px solid var(--dash-red);outline-offset:2px}.passwordModal{z-index:31;background:var(--bg);border:1px solid var(--border);border-radius:12px;width:min(360px,100% - 2.5rem);padding:1.5rem;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.passwordModal h2{margin:0 0 .5rem;font-size:1.1rem}.passwordModal p{color:var(--muted);margin:0 0 1rem;font-size:.88rem}.passwordModal input{width:100%;font:inherit;color:var(--fg);background:var(--card-bg);border:1px solid var(--border);border-radius:8px;padding:.6rem .7rem}.passwordModalActions{justify-content:flex-end;gap:.5rem;margin-top:1rem;display:flex}.savingBanner{z-index:32;background:var(--card-bg);border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:.4rem 1rem;font-size:.82rem;position:fixed;top:1rem;left:50%;transform:translate(-50%)}.toast{z-index:32;border:1px solid var(--border);background:var(--card-bg);border-radius:10px;max-width:min(440px,100% - 2.5rem);padding:.75rem 1rem;font-size:.88rem;position:fixed;bottom:1.25rem;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #00000040}.toast--success{border-color:var(--dash-green);color:var(--dash-green)}.toast--error{border-color:var(--dash-red);color:var(--dash-red)}
