/* Shared access information, in the workspace and client-facing pages. */
.link-validity { display:flex; flex-wrap:wrap; gap:16px 36px; margin:16px 0 22px; padding:0; text-align:left; }
.link-validity > div { min-width:0; }
.link-validity dt { color:var(--color-text-light, #657084); font-size:12px; line-height:1.5; margin-bottom:4px; }
.link-validity dd { margin:0; color:var(--color-text, #202a3a); font-size:14px; line-height:1.5; }
.link-validity strong { font-weight:600; }
.link-timezone { font-weight:400; }
body .client-link-panel { background:#fff; border:1px solid var(--color-border, #e3e7ef); border-radius:var(--radius-md, 9px); overflow:hidden; box-shadow:none; }
.client-link-heading { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; padding:18px 22px; border-bottom:1px solid var(--color-border); }
.client-link-title { display:flex; align-items:center; gap:10px; color:var(--color-primary, #5067a5); }
.client-link-title h2 { margin:0; font-size:15px; font-weight:600; color:var(--color-text); }
.client-link-body { padding:0 22px 18px; }
.client-link-copy { display:flex; align-items:center; gap:8px; }
.client-link-copy .form-input { flex:1; min-width:0; font-size:13px; color:var(--color-text-light); background:var(--color-bg-secondary, #f7f8fb); }
.client-link-copy .btn { flex-shrink:0; }
.client-link-body .form-label { font-size:12px; }
.client-link-body .client-link-feedback { color:var(--color-success, #087b63); font-size:12px; margin:8px 0 0; }
.client-link-feedback:empty { display:none; }
.client-link-unavailable { font-size:13px; color:var(--color-text-light); line-height:1.6; margin:0; }
.client-link-footer { display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; border-top:1px solid var(--color-border); padding:14px 22px; background:var(--color-bg-secondary, #f7f8fb); }
.client-link-footer p { margin:0; font-size:12px; line-height:1.6; color:var(--color-text-light); }
.client-link-actions { display:flex; flex-wrap:wrap; gap:8px; }
.client-link-actions form { margin:0; }
.client-link-actions .client-link-revoke { color:var(--color-error, #bb3d45); }
.client-link-actions .client-link-revoke:hover { background:#fbedee; }
/* Public pages keep the expiry separate from the commercial due date. */
body:not(.workspace) .link-validity { border-top:1px solid var(--color-border, #e3e7ef); border-bottom:1px solid var(--color-border, #e3e7ef); padding:14px 0; gap:12px 28px; }
body:not(.workspace) .container > .link-validity { margin:24px 0 0; border-bottom:0; padding-bottom:0; }
.document-link-duration { font-size:12px; line-height:1.5; color:var(--color-text-light, #657084); margin:10px 0 20px; }
.upload-quota { margin:16px 0; padding:14px 0; border-top:1px solid var(--color-border, #e3e7ef); border-bottom:1px solid var(--color-border, #e3e7ef); }
.upload-quota > div { display:flex; flex-wrap:wrap; justify-content:space-between; gap:6px 16px; font-size:12px; color:var(--color-text-light, #657084); }
.upload-quota strong { color:var(--color-text, #202a3a); font-size:13px; }
.upload-quota strong span { font-weight:400; color:var(--color-text-light, #657084); }
.upload-quota meter { display:block; width:100%; height:8px; margin:10px 0; border:0; border-radius:4px; background:#e9edf5; appearance:none; }
.upload-quota meter::-webkit-meter-bar { background:#e9edf5; border:0; border-radius:4px; }
.upload-quota meter::-webkit-meter-optimum-value { background:var(--color-primary, #5067a5); border-radius:4px; }
.upload-quota meter::-moz-meter-bar { background:var(--color-primary, #5067a5); border-radius:4px; }
.upload-quota p { margin:0; font-size:12px; line-height:1.6; color:var(--color-text-light, #657084); }
.access-setting-row { display:grid; grid-template-columns:minmax(0,1fr) 160px; align-items:center; gap:16px 28px; padding:20px 0; border-bottom:1px solid var(--color-border); }
.access-setting-row:first-child { padding-top:0; }
.access-setting-row .form-label { margin-bottom:4px; }
.access-setting-row .form-hint { margin:0; }
.access-setting-input { display:flex; align-items:center; gap:10px; }
.access-setting-input input { min-width:0; }
.access-setting-input span { flex-shrink:0; width:32px; font-size:13px; color:var(--color-text-light); }
.access-setting-notice { margin-top:20px; font-size:12px; color:var(--color-text-light); line-height:1.65; }
.access-setting-notice summary { cursor:pointer; font-weight:600; color:var(--color-text); }
.access-setting-notice p { margin:10px 0 0; color:var(--color-text-light, #657084); }
@media (max-width:600px) {
  .client-link-heading { padding:16px; gap:10px; }
  .client-link-body { padding:0 16px 16px; }
  .client-link-copy { flex-wrap:wrap; }
  .client-link-copy .form-input { flex-basis:100%; }
  .client-link-copy .btn { flex:1; }
  .client-link-footer { padding:14px 16px; gap:12px; }
  .client-link-actions { width:100%; }
  .client-link-actions form { flex:1; }
  .client-link-actions .btn { width:100%; }
  .link-validity { gap:12px 24px; }
  .access-setting-row { grid-template-columns:1fr; gap:12px; padding:18px 0; }
  .access-setting-input { max-width:200px; }
}
