.unlock-panel [hidden] { display: none; }
.unlock-nav-actions { display: flex; align-items: center; gap: 12px; }
.unlock-panel { max-width: 900px; margin-inline: auto; }
.unlock-file, .unlock-panel .up-result-meta { overflow-wrap: anywhere; }
.unlock-password { display: grid; gap: 12px; max-width: 540px; margin-block: 24px; }
.unlock-password > label { font-weight: 600; }
.unlock-password > input { width: 100%; min-height: 48px; padding: 12px; border: 1px solid var(--border); border-radius: 10px; background: var(--surface); color: var(--text); font: inherit; }
.unlock-show { display: flex; align-items: center; gap: 10px; min-height: 44px; }
.unlock-show input { width: 20px; height: 20px; accent-color: var(--ht-link); }
.unlock-password p, .unlock-notice, .unlock-credits { font-size: 14px; color: var(--text-muted); line-height: 1.7; }
.unlock-notice { margin-top: 24px; }
.unlock-credits { margin-top: 24px; }
.unlock-credits a { color: var(--ht-link); text-decoration: underline; }
.unlock-panel .up-status { margin-block: 18px; }
.unlock-panel .up-result { margin-top: 24px; }
.unlock-panel .btn { white-space: normal; text-align: center; }
@media (max-width: 600px) {
  .unlock-panel .ht-actions { flex-direction: column; align-items: stretch; }
  .unlock-panel .btn { min-height: 48px; }
}
