.dossier { --dossier-pad: clamp(16px, 2.2vw, 28px); }
.dossier-card { background: white; border: 1px solid var(--line); border-radius: 13px; overflow: hidden; }
.dossier-identity {
  display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap;
  gap: 18px 30px; padding: 20px var(--dossier-pad) 24px;
  background: linear-gradient(110deg, #f4f7fe, #fff 64%);
}
.dossier-person { min-width: 0; }
.dossier-back { display: inline-flex; align-items: center; gap: 5px; font-size: .94rem; }
.dossier-back .icon { width: 15px; height: 15px; }
.dossier-title { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 14px; margin: 10px 0; }
.dossier-title h1 { overflow-wrap: anywhere; font-size: clamp(26px, 2.2vw, 35px); }
.dossier-title .tag { font-size: .92rem; }
.dossier-meta, .dossier-meta > div, .dossier-meta dd { display: flex; flex-wrap: wrap; align-items: baseline; }
.dossier-meta { gap: 6px 24px; margin: 0; }
.dossier-meta div, .dossier-meta dd { min-width: 0; gap: 4px 8px; }
.dossier-meta dt { color: var(--muted); font-size: .95rem; }
.dossier-meta dd { margin: 0; font-size: 1rem; overflow-wrap: anywhere; }
.dossier-meta code, .dossier-byline code { font-family: ui-monospace, "Cascadia Code", Consolas, monospace; font-size: .93rem; overflow-wrap: anywhere; }
.dossier-copy { border: 0; background: transparent; padding: 3px; color: var(--blue); font-size: .93rem; border-radius: 4px; }
.dossier-copy:hover { text-decoration: underline; }
.dossier-identity .btn, .dossier-sections .btn { min-height: 40px; font-size: .98rem; }
.dossier-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); padding: 5px; border-top: 1px solid var(--line); }
.dossier-metrics a { display: grid; gap: 4px; min-width: 0; border-radius: 7px; padding: 12px var(--dossier-pad); color: inherit; }
.dossier-metrics a:hover, .dossier-metrics a:focus-visible { background: #f3f6fc; text-decoration: none; }
.dossier-metrics a + a { border-left: 1px solid var(--line); }
.dossier-metrics span { display: flex; align-items: center; gap: 5px; color: var(--muted); font-size: 1rem; }
.dossier-metrics .icon { width: 14px; height: 14px; }
.dossier-metrics b { font-size: clamp(22px, 1.8vw, 29px); line-height: 1.35; overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.dossier-metrics small { font-size: .85rem; font-weight: 500; white-space: nowrap; }
.dossier-sections { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px 18px; margin: 22px 0 14px; }
.dossier .tabs { flex-wrap: wrap; gap: 4px; padding: 4px; margin: 0; border: 1px solid var(--line); border-radius: 9px; background: white; }
.dossier .tabs a { padding: 8px 12px; font-size: 1rem; border: 0; border-radius: 5px; }
.dossier .tabs a[aria-current="page"], .dossier-ledger-filter a[aria-current="page"] { background: #eaf0ff; color: #214aa4; }
.dossier .tabs span { padding: 1px 5px; border-radius: 4px; background: #f0f3f6; color: #42546a; font-size: .83rem; font-variant-numeric: tabular-nums; }
.dossier-tools { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; font-size: .98rem; }
.dossier-ledger-filter { display: flex; flex-wrap: wrap; gap: 4px; padding: 10px var(--dossier-pad); border-bottom: 1px solid var(--line); }
.dossier-ledger-filter a { padding: 4px 10px; border-radius: 5px; }
.dossier .type-filter { font-size: 1rem; }
.dossier-timeline { list-style: none; padding: 4px var(--dossier-pad); margin: 0; }
.dossier-timeline li { display: grid; grid-template-columns: 10rem minmax(0, 1fr); gap: 12px 18px; padding: 16px 0; }
.dossier-timeline li + li { border-top: 1px solid #e6ebf1; }
.dossier-timeline time { color: var(--muted); font-size: .96rem; font-variant-numeric: tabular-nums; }
.dossier-entry { border-left: 2px solid #ccd9ed; padding-left: 16px; overflow-wrap: anywhere; }
.dossier-timeline li:first-child .dossier-entry { border-color: #5379c4; }
.dossier-entry strong { font-size: 1.07rem; }
.dossier-entry p { margin-top: 2px; color: #3c5068; font-size: 1rem; }
.dossier-byline { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 16px; margin-top: 6px; font-size: .94rem; color: var(--muted); }
.dossier-byline details { max-width: 100%; }
.dossier-byline summary { color: var(--blue); cursor: pointer; }
.dossier-byline code { display: block; user-select: all; margin-top: 3px; }
.staff-self { max-width: 1080px; margin-inline: auto; }
.staff-self .staff-profile-grid { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); }
.staff-self .staff-profile-grid > div { min-width: 0; }
.staff-self .panel + .panel { margin-top: 18px; }
.staff-self .panel-head > .icon { color: #557193; }
.staff-self-identity { display: flex; align-items: center; gap: 14px; padding: 22px; }
.staff-self-initial { display: grid; place-items: center; width: 54px; height: 54px; flex: none; border-radius: 14px; background: #eaf0ff; color: #294fa5; font-size: 1.65rem; font-weight: 650; }
.staff-self-identity strong { display: block; overflow-wrap: anywhere; font-size: 1.44rem; }
.staff-self-identity div > span { color: var(--muted); }
.staff-self .staff-facts { font-size: 1rem; }
.staff-self .staff-facts dd { font-variant-numeric: tabular-nums; }
.staff-self .staff-facts div { grid-template-columns: 5.5rem minmax(0, 1fr); }
.staff-session-actions { padding: 4px 22px 20px; }
.staff-security-edit { padding: 13px 22px; }
.staff-security-edit summary { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 40px; cursor: pointer; font-weight: 600; color: var(--blue); }
.staff-security-edit summary::-webkit-details-marker { display: none; }
.staff-security-edit[open] .staff-chevron { transform: rotate(180deg); }
.staff-security-edit .staff-password-form { padding: 12px 0; }
@media (max-width: 850px) {
  .staff-self .staff-profile-grid { grid-template-columns: 1fr; }
  .dossier .tabs a { padding: 7px 9px; }
}
@media (max-width: 620px) {
  .dossier-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dossier-metrics a:nth-child(odd) { border-left: 0; }
  .dossier-metrics a:nth-child(n+3) { border-top: 1px solid var(--line); }
  .dossier .actions { justify-content: flex-start; }
  .dossier-timeline li { grid-template-columns: 1fr; gap: 6px; }
  .dossier .panel-head { flex-wrap: wrap; }
  .dossier-sections { margin-top: 14px; }
  .dossier .tabs { width: 100%; }
}
