/* KTM Voyage CRM — admin module styles [ADM]
   Shared by pages/users.js, pages/settings.js and pages/documents.js.
   Only module-specific rules — tokens, buttons, tables, modals live in base.css. */

/* ---------- page header ---------- */
.adm-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}
.adm-head h2{font-size:24px}
.adm-sub{color:var(--muted);margin:6px 0 0;max-width:62ch}

/* ---------- users table ---------- */
.adm-table td{vertical-align:middle}
.adm-user{display:flex;align-items:center;gap:11px;min-width:180px}
.adm-av{width:36px;height:36px;border-radius:50%;background:var(--gold);color:#211a05;display:grid;place-items:center;font-weight:700;font-size:13px;flex:0 0 auto}
.adm-av.off{background:var(--line);color:var(--muted)}
.adm-user-txt b{display:block;font-size:14px}
.adm-user-txt small{color:var(--muted-2);font-size:12px}
.adm-me{color:var(--muted-2);font-weight:400;font-size:12px}

.rolebadge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;border:1px solid transparent;margin-right:4px;white-space:nowrap}
.rolebadge.r-owner{background:#fbf3d4;border-color:#e3d089;color:#6b5810}
.rolebadge.r-gm{background:#ece5f8;border-color:#cdbcec;color:#4d3585}
.rolebadge.r-finance{background:#e3ecf9;border-color:#b9cdec;color:#2c517e}
.rolebadge.r-product{background:#e2f3ec;border-color:#a9d9c3;color:#1f6b47}
.rolebadge.r-operation{background:#e5f3f2;border-color:#a9d6d3;color:#1f6763}
.rolebadge.r-subsidies{background:#fdeee1;border-color:#efc9a4;color:#8a5316}
.rolebadge.r-super{background:var(--dark);border-color:var(--dark);color:var(--gold)}

.adm-chip{display:inline-block;padding:3px 9px;border-radius:999px;font-size:11.5px;font-weight:700;white-space:nowrap}
.adm-chip-amber{background:#fbf3d4;color:#7a6410;border:1px dashed #d9c25a}

.adm-actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}
.adm-btn-del{color:var(--bad);border-color:rgba(202,99,80,.4)}
.adm-btn-del:hover{background:rgba(202,99,80,.08)}

/* ---------- temp-password modal ---------- */
.adm-temp-intro{margin:0 0 14px;max-width:44ch}
.adm-temp-code{background:#fbf7e6;border:2px dashed var(--gold);border-radius:12px;padding:20px;text-align:center;
  font-size:30px;font-weight:700;letter-spacing:4px;color:#292109;user-select:all;font-variant-numeric:tabular-nums}
.adm-temp-note{color:var(--muted);font-size:13px;margin:12px 0 0}

/* ---------- modal footer (big targets) ---------- */
.adm-modal-foot{display:flex;justify-content:flex-end;gap:10px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}

/* ---------- settings ---------- */
.adm-set-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;align-items:start}
.adm-set-card .ch{padding-bottom:4px}
.adm-set-hint{color:var(--muted);font-size:13px;margin:0 0 14px;max-width:56ch}
.adm-set-note{color:var(--muted-2);font-size:12.5px;margin:10px 0 0}
.adm-3col{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
@media (max-width:560px){.adm-3col{grid-template-columns:1fr}}

.adm-savebar{position:sticky;bottom:0;margin-top:18px;padding:14px 0;background:linear-gradient(to top,var(--paper) 65%,transparent);display:flex;justify-content:flex-end}
.adm-save-btn{min-width:280px;box-shadow:var(--shadow)}
@media (max-width:560px){.adm-save-btn{width:100%}}

/* ---------- documents ---------- */
.adm-doc b{display:block;font-size:14px}
.adm-doc small{color:var(--muted-2);font-size:12px}
.adm-kind{display:inline-block;padding:4px 11px;border-radius:999px;background:#f4f2ea;border:1px solid var(--line);font-size:12.5px;font-weight:700;white-space:nowrap}

.adm-count{display:inline-block;padding:5px 12px;border-radius:999px;font-size:12.5px;font-weight:700;white-space:nowrap}
.adm-count-ok{background:#e2f3ec;color:#1f6b47;border:1px solid #a9d9c3}
.adm-count-warn{background:rgba(202,99,80,.12);color:#a03d29;border:1px solid rgba(202,99,80,.45)}
.adm-count-expired{background:var(--bad);color:#fff;border:1px solid var(--bad)}

/* ---------- list toolbar + sortable headers ---------- */
.adm-th-sort{cursor:pointer}
.adm-th-sort:hover{background:#efece2;color:#292109}
.filters .btn{min-height:40px}
.adm-actions .btn{min-height:40px}

/* ---------- responsive (usable at 390px) ---------- */
@media (max-width:560px){
  .adm-head{flex-direction:column;align-items:stretch}
  .adm-head .btn{width:100%}
  .filters input[type=search]{flex:1 1 100%;order:5}
  .filters select{flex:1 1 40%}
  .filters .count{margin-left:0}
}

/* ---------- print: hide the controls, keep the table ---------- */
@media print{
  .adm-head .btn,.filters,.adm-actions{display:none !important}
}

/* ---------- P2 polish: long user/document names never overflow ---------- */
.adm-user-txt{min-width:0}
.adm-user-txt b,.adm-user-txt small{overflow-wrap:anywhere}
.adm-doc b{overflow-wrap:anywhere}
