/* Janus Vault Admin styles */
.gate {}
.gate h1 { font-size: 22px; margin-bottom: 8px; }
.gate .row { display: grid; grid-template-columns: 1fr; gap: 10px; }
textarea{
    width: 100%;
    padding: 10px;
    border: 1px solid var(--color-border);
    border-radius: 8px;
    background: var(--color-card);
    width: -webkit-fill-available;
    outline: none;
}
.row-inline { display:flex; gap:8px; align-items:center; }
.action-row {display:flex;gap:8px;align-items:center;margin-bottom: 10px;justify-content: center;}
.gate .action-row {
  justify-content: center;
}
.drop-area {     border: 1px dashed var(--color-accent);
    border-radius: 16px;
    padding: 10px;
    margin-top: 6px;
    cursor: pointer; }
.hidden{ display:none; }
.mono {
}
.small {font-size: 12px;color: var(--color-secondary);font-weight: 600;}
.matrix {white-space: pre-wrap;font-family: ui-monospace, Menlo, Monaco, Consolas, "Courier New", monospace;border: 1px dashed var(--color-border);padding:8px;border-radius: 16px;position:relative;}
.matrix-copy-btn { position:absolute; top:6px; right:6px; z-index:1; }
.copy-toast{ position:absolute; top:6px; right:72px; background:#0a6; color:#fff; padding:4px 8px; border-radius:12px; font-size:12px; }
.copy-toast.hidden{ display:none; }
.matrix-tools { display:flex; justify-content:flex-end; align-items:center; gap:8px; margin:6px 0; }
.toolbar {display:flex;gap:8px;align-items:center;justify-content: space-between;margin: 12px auto;margin-bottom: 0;}
.toolbar .left{
    display:flex;
    flex-direction: row;
    align-content: center;
    align-items: center;
    width: fit-content;
    gap: 10px;
}
.card.footer-card .toolbar{
  margin:0;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}
.card.footer-card .toolbar .btn{
  min-width:fit-content;
}
.omi-table { width:100%; }
.masked { filter: blur(3px); }
.status-pill {display:inline-block;padding:2px 8px;border-radius:12px;background: var(--color-status);font-size:12px;}
.status-pill:empty{
    display:none;
}
.status-dot { width:10px; height:10px; border-radius:50%; display:inline-block; background:#ccc; }
.ml-8 { margin-left:8px; }
.status-pubkey { word-break: break-all; }
.status-date { white-space: pre-line; text-transform: capitalize; text-align: left; line-height: 1.2; }
.status-date.right { display:block; width:100%; text-align: right; }
.toolbar .right {display:flex;justify-content:flex-end;align-items:center;width: fit-content;text-align: center;align-self: end;}

/* Mobile-friendly table layout */
@media (max-width: 520px){
  .vault-browser-toolbar{
    flex-direction: column;
    align-items: flex-start;
    gap: 15px;
  }
  .vault-actions {
          width: 100%;
        padding: 0;
        justify-content: space-between;
        gap: 10px;
  }
  .vault-actions .btn{
     flex: 1;
     justify-content: center;
     display: flex;
     gap: 5px;
     align-items: center;
  }
  .omi-table thead{ display:none }
  .omi-table{ display:block }
  .omi-table tbody{display:block;padding: 15px;}
  .omi-table tbody tr{display:block;padding:12px 14px;margin:12px 0;border-radius:16px;border: solid 1px var(--border);}

  .omi-table tbody td{display:flex;align-items:center;padding:8px 0;justify-content: center;border: none;width: 100%;text-overflow: ellipsis;overflow: hidden;}
  .omi-table tbody td button{
    margin: 0;
  }
  .omi-table tbody td:nth-child(1){justify-content:flex-end;padding-top:0;color: var(--text-muted);border: none;font-size: 12px;}
  .admin .omi-table tbody td:nth-child(1)::before{ content:'' }
  .admin .omi-table tbody td:nth-child(2)::before{ content:'Data'; font-weight:600; color:var(--color-secondary); margin-right:12px }
  .admin .omi-table tbody td:nth-child(2){ gap:12px }
  .admin .omi-table tbody td:nth-child(2) > div{ display:flex; align-items:center; justify-content:space-between; width:100% }
  .admin .omi-table tbody td:nth-child(2) .date-sub{ margin-left:12px; text-align:right }
  .admin .omi-table tbody td:nth-child(3)::before{ content:'File'; font-weight:600; color:var(--color-secondary); margin-right:12px }
  .admin .omi-table tbody td:nth-child(3){ flex-direction:column; align-items:flex-start; max-width:none; overflow:visible; text-overflow:clip; white-space:normal }
  .admin .omi-table tbody td:nth-child(3) .file-sub{ display:block; color: var(--color-secondary); font-size:12px }
  .admin .omi-table tbody td:nth-child(4)::before{ content:'IdentitÃƒÂ '; font-weight:600; color:var(--color-secondary); margin-right:12px }
  .admin .omi-table tbody td:nth-child(5){ flex-wrap:wrap; gap:8px }
  .admin .omi-table tbody td:nth-child(5) .btn{ margin:0; padding:8px 12px; font-size:13px }
}

/* Matrix view spacing on mobile */
@media (max-width: 520px){
  .matrix{ margin-top:12px; border-radius:16px }
}

/* Pager and footer spacing improvements */
@media (max-width: 520px){

  .pager{ gap:12px; margin-top:12px }
  .pager-row{ flex:1 1 100%; justify-content:space-between }
  .pager-label{ margin-right:6px }
  .footer-card{padding:16px}
  .status-date{ font-size:13px }
  #toolbar{ border:1px solid var(--color-border); border-radius:16px; padding:12px; background: var(--color-card) }
  #toolbar .left{ flex-wrap:wrap; gap:8px }
  #toolbar .right{ flex-wrap:wrap; gap:8px }
  #toolbar .pager-label{ font-size:12px; color:var(--color-secondary) }
  #toolbar #pager_jump{ width:78px }
  #toolbar #pager_size{ min-width:84px }
  #toolbar #pager_info{ flex:1 1 100%; display:block; text-align:center; padding:6px 10px; background:#f8f9fa; border:1px solid var(--color-border); border-radius:12px }
}
/* Pager layout (match viewer) */
.pager { display:flex; gap:8px; align-items:center; margin-top:8px; justify-content: space-between; flex-wrap: wrap }
.pager.hidden{
  display:none
}
.pager-row { display:flex; align-items:center; gap:8px }
.pager-label {font-size:12px;color: var(--text-muted);}
.pager-input {width:80px;padding:6px 8px;border:1px solid var(--color-border);border-radius: 60px;outline: none;}
.pager-select {padding:6px 8px;border:1px solid var(--color-border);border-radius: 60px;outline: none;}
#pager_info {font-size: 12px;color: var(--text-muted);}

/* Consistent controls sizing inside admin pager */
#toolbar .btn{padding:8px 14px;min-height: fit-content;line-height:1;border-radius:60px;border: solid 1px var(--border-color);font-weight: 600;}
#toolbar #pager_prev, #toolbar #pager_next{ min-width:72px }
#toolbar #pager_jump, #toolbar #pager_size{ height:34px; box-sizing:border-box }
#toolbar #pager_size{ appearance:none; -webkit-appearance:none; background:#fff; border-radius:60px }

/* Equal-width action buttons on mobile */
@media (max-width: 520px){
  #toolbar .actions{ display:grid; grid-template-columns: 1fr 1fr 1fr; gap:8px }
  #toolbar .actions .btn{ width:100% }
  
}
