.access-workspace { max-width:1280px; margin:auto; }
.access-header { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:24px; }
.access-header h2 { margin:6px 0; font-size:30px; letter-spacing:-.035em; }.access-header p { color:var(--muted); margin:0; }
.access-filters { display:flex; gap:16px; margin-bottom:20px; }.access-search { flex:1; }.access-filters label { margin:0; }
.access-layout { display:grid; grid-template-columns:300px minmax(0,1fr); gap:20px; align-items:start; }
.access-people { display:grid; gap:8px; max-height:78vh; overflow:auto; padding:2px; }
.access-person { display:grid; gap:5px; width:100%; text-align:left; color:var(--text); background:var(--surface); border:1px solid var(--line); border-radius:14px; padding:16px; cursor:pointer; }
.access-person.selected { border-color:var(--brand); background:var(--brand-soft); }.access-person span,.access-person small { color:var(--muted); font-size:12px; overflow-wrap:anywhere; }
.access-profile { padding:24px; background:var(--surface); border:1px solid var(--line); border-radius:20px; min-width:0; }
.access-profile-header { padding-bottom:20px; margin-bottom:20px; border-bottom:1px solid var(--line); }.access-profile-header h3 { margin:0 0 7px; font-size:24px; }.access-profile-header p { color:var(--muted); margin:0 0 10px; }
.access-profile fieldset { border:0; padding:0; margin:0; min-width:0; }.access-profile fieldset:disabled { opacity:.7; }
.access-team { border:1px solid var(--line); border-radius:12px; margin:10px 0; overflow:hidden; }.access-team > summary { padding:14px; cursor:pointer; background:var(--surface-soft); }.access-team summary label { display:inline-flex; gap:10px; align-items:center; margin:0; }.access-team input[type=checkbox] { width:18px; height:18px; margin:0; }.access-team-fields { padding:16px; }
.access-exceptions { margin:20px 0; padding:15px; border:1px solid var(--line); border-radius:12px; }.access-exceptions summary { cursor:pointer; font-weight:600; }.access-exceptions label { display:grid; grid-template-columns:1fr 1fr; gap:12px; align-items:center; }
.access-lifecycle { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:24px; padding-top:20px; border-top:1px solid var(--line); flex-wrap:wrap; }
.access-error { color:var(--danger); font-size:13px; }.access-error:empty { display:none; }
.access-dialog { max-width:680px; }.access-dialog h2 { padding-right:35px; }.access-dialog > p { color:var(--muted); line-height:1.6; }.access-dialog .checkbox-label { align-items:flex-start; line-height:1.5; }
.revocation-list { display:grid; gap:16px; margin:20px 0; }.revocation-item { border:1px solid var(--line); border-radius:14px; padding:16px; }.revocation-item > strong { display:block; margin-bottom:12px; }.revocation-item > a { display:block; margin-bottom:12px; color:var(--brand); }
@media(max-width:760px) { .access-header { align-items:flex-start; flex-direction:column; }.access-header .action-row { flex-wrap:wrap; }.access-layout { grid-template-columns:1fr; }.access-people { grid-template-columns:repeat(2,minmax(0,1fr)); max-height:260px; }.access-profile { padding:18px; }.access-filters { gap:10px; }.access-filters > label:last-child { max-width:130px; }.access-exceptions label { grid-template-columns:1fr; gap:3px; }.access-person { padding:12px; } }
@media(max-width:359px) { .access-people { grid-template-columns:1fr; }.access-filters { flex-direction:column; }.access-filters > label:last-child { max-width:none; } }

.observer-task-overview h2 { margin:8px 0; }.observer-task-overview p { color:var(--muted); }.observer-task-overview .summary-box { display:grid; gap:8px; margin-top:16px; }

.record-team-sharing { margin: 0 0 20px; }
.record-team-option { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px 16px; border:1px solid var(--line); border-radius:16px; margin:8px 0; background:var(--surface); }
.record-team-option span { display:grid; gap:4px; min-width:0; }
.record-team-option small { color:var(--muted); }
.record-team-option input { width:22px; height:22px; flex:0 0 auto; accent-color:var(--accent); }
.task-customer-detail a, .request-author a, .meta a { color:var(--accent); text-decoration:underline; text-underline-offset:3px; }
