.recipient-sharing-section{
  margin-top:20px;
  padding:18px;
  border:1px solid var(--border,rgba(76,106,130,.45));
  border-radius:16px;
  background:var(--surface,#071827);
}
.recipient-section-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}
.recipient-section-heading h4{margin:0 0 5px;font-size:16px}
.recipient-section-heading p{max-width:680px;margin:0;color:var(--muted,#8ea3b4);font-size:12px;line-height:1.55}
.recipient-section-heading button{min-height:40px}
.recipient-entitlement-note,.recipient-links-message{
  min-height:18px;
  margin-top:10px;
  color:var(--muted,#8ea3b4);
  font-size:12px;
}
.recipient-links-message.error{color:#fca5a5}
.recipient-links-list{display:grid;gap:10px;margin-top:12px}
.recipient-download-requests{display:grid;gap:10px;margin-top:16px}
.recipient-download-requests:empty{display:none}
.recipient-download-requests h5{margin:0;font-size:14px}
.recipient-request-card{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:12px;border:1px solid var(--line,#31465a);border-radius:12px;
  background:var(--panel,#122235)
}
.recipient-request-card b,.recipient-request-card small{display:block}
.recipient-request-card small{margin-top:4px;color:var(--muted,#8ea3b4)}
.recipient-download-status{margin:12px 0;padding:12px;border:1px solid var(--line,#31465a);border-radius:10px;color:var(--muted,#8ea3b4)}
.recipient-link-card{
  display:grid;
  grid-template-columns:minmax(150px,1.4fr) minmax(120px,.8fr) minmax(120px,.9fr) auto;
  align-items:center;
  gap:14px;
  min-width:0;
  padding:13px 14px;
  border:1px solid var(--border,rgba(76,106,130,.45));
  border-radius:13px;
  background:var(--surface-soft,rgba(4,16,27,.5));
}
.recipient-link-card b,.recipient-link-card span{display:block;min-width:0}
.recipient-link-card b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.recipient-link-card small,.recipient-link-card span{color:var(--muted,#8ea3b4);font-size:11px}
.recipient-link-status{font-weight:800;text-transform:capitalize}
.recipient-link-status.active{color:#86efac}
.recipient-link-status.expired{color:#fbbf24}
.recipient-link-status.revoked{color:#fca5a5}
.recipient-link-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}
.recipient-link-actions button{min-height:40px;padding:8px 11px}

.recipient-link-modal{
  position:fixed;
  inset:0;
  z-index:10050;
  display:grid;
  place-items:center;
  padding:18px;
}
.recipient-link-modal.hidden{display:none!important}
.recipient-link-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72)}
.recipient-link-dialog{
  position:relative;
  width:min(760px,100%);
  max-height:min(840px,calc(100vh - 36px));
  overflow:auto;
  padding:24px;
  border:1px solid var(--border,rgba(76,106,130,.55));
  border-radius:18px;
  background:var(--surface,#071827);
  box-shadow:0 24px 70px rgba(0,0,0,.42);
}
.recipient-link-dialog h2{margin:10px 0 5px}
.recipient-link-close{
  position:absolute;
  top:12px;
  right:12px;
  width:44px;
  min-width:44px;
  height:44px;
  padding:0;
  font-size:24px;
}
.recipient-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}
.recipient-form-grid label,.recipient-access-field label{display:grid;gap:6px}
.recipient-form-grid input,.recipient-form-grid select{width:100%;min-height:44px}
.recipient-type-field,.recipient-access-field,.recipient-documents-field{
  margin:0;
  padding:12px;
  border:1px solid var(--border,rgba(76,106,130,.45));
  border-radius:12px;
}
.recipient-type-field{display:flex;align-items:center;gap:14px}
.recipient-type-field legend,.recipient-access-field legend,.recipient-documents-field legend{padding:0 5px;font-weight:800}
.recipient-type-field label,.recipient-access-field label{display:flex;align-items:center;gap:8px;min-height:40px}
.recipient-access-field,.recipient-documents-field{margin-top:14px}
.recipient-document-choice{grid-template-columns:auto minmax(0,1fr)!important}
.recipient-review-summary{
  margin-top:14px;
  padding:12px;
  border:1px solid var(--border,rgba(76,106,130,.45));
  border-radius:12px;
  color:var(--muted,#8ea3b4);
  font-size:12px;
}
.recipient-modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:16px}
.recipient-modal-actions button{min-height:44px}

.recipient-verification{
  width:min(560px,100%);
  margin:40px auto;
  padding:28px;
  border:1px solid var(--border,rgba(76,106,130,.55));
  border-radius:18px;
  background:var(--surface,#071827);
}
.recipient-verification h1{margin:10px 0}
.recipient-verification-step{display:grid;gap:9px;margin-top:18px}
.recipient-verification-step input,.recipient-verification-step button{min-height:44px}
.recipient-verification-actions{display:flex;gap:9px}

html[data-theme="light"] .recipient-sharing-section,
html[data-theme="light"] .recipient-link-dialog,
html[data-theme="light"] .recipient-verification{
  --surface:#fff;
  --surface-soft:#f8fafc;
  --border:#d7e0e8;
  --muted:#5f7285;
  color:#10253a;
}
html[data-theme="light"] .recipient-link-card{
  --surface-soft:#f8fafc;
  --border:#d7e0e8;
  --muted:#5f7285;
}
html[data-theme="light"] .recipient-request-card{background:#fff;border-color:#dbe4ee}

@media(max-width:720px){
  .recipient-sharing-section{padding:16px}
  .recipient-section-heading{display:grid}
  .recipient-section-heading button{width:100%;min-height:44px}
  .recipient-link-card{grid-template-columns:1fr;gap:8px}
  .recipient-request-card{align-items:stretch;flex-direction:column}
  .recipient-link-actions{justify-content:stretch}
  .recipient-link-actions button{flex:1 1 120px;min-height:44px}
  .recipient-form-grid{grid-template-columns:1fr}
  .recipient-link-dialog{padding:20px 16px}
  .recipient-modal-actions,.recipient-verification-actions{display:grid}
  .recipient-modal-actions button,.recipient-verification-actions button{width:100%;min-height:44px}
}
