/* Admin Panel Styles */

/* Admin tables */
.admin-tbl{width:100%;border-collapse:collapse;font-size:13px}
.admin-tbl th{text-align:left;padding:8px 10px;font-size:11px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #e5e7eb;white-space:nowrap}
.admin-tbl td{padding:8px 10px;border-bottom:1px solid #f3f4f6;color:#374151;vertical-align:middle}
.admin-tbl tbody tr:hover{background:#f9fafb}
.admin-tbl-sm th,.admin-tbl-sm td{padding:5px 8px;font-size:12px}

/* Кликабельная тема тикета в списке */
.adm-ticket-link{color:#2563eb;text-decoration:none;font-weight:500;cursor:pointer}
.adm-ticket-link:hover{color:#1d4ed8;text-decoration:underline}

/* === Кастомная модалка подтверждения === */
.amp-confirm-overlay{position:fixed;inset:0;background:rgba(15,23,42,.55);z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(2px);animation:ampConfirmFadeIn .15s ease-out}
.amp-confirm-dialog{background:#fff;border-radius:16px;box-shadow:0 24px 64px rgba(0,0,0,.25);max-width:440px;width:100%;overflow:hidden;animation:ampConfirmSlideUp .2s ease-out}
.amp-confirm-header{padding:18px 22px 8px;font-size:16px;font-weight:700;color:#111827}
.amp-confirm-body{padding:0 22px 18px;font-size:13.5px;color:#374151;line-height:1.5;white-space:pre-wrap;word-break:break-word}
.amp-confirm-footer{padding:14px 22px;background:#f9fafb;border-top:1px solid #f3f4f6;display:flex;gap:10px;justify-content:flex-end}
.amp-confirm-btn{padding:9px 18px;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;border:1px solid transparent;transition:all .15s;outline:none}
.amp-confirm-btn:focus-visible{box-shadow:0 0 0 3px rgba(59,130,246,.25)}
.amp-confirm-cancel{background:#fff;color:#374151;border-color:#e5e7eb}
.amp-confirm-cancel:hover{background:#f3f4f6}
.amp-confirm-ok{background:#2563eb;color:#fff}
.amp-confirm-ok:hover{background:#1d4ed8}
.amp-confirm-danger{background:#ef4444;color:#fff}
.amp-confirm-danger:hover{background:#dc2626}
.amp-confirm-danger:focus-visible{box-shadow:0 0 0 3px rgba(239,68,68,.3)}

@keyframes ampConfirmFadeIn { from { opacity: 0 } to { opacity: 1 } }
@keyframes ampConfirmSlideUp { from { opacity: 0; transform: translateY(8px) } to { opacity: 1; transform: translateY(0) } }

/* AI Техподдержка — блок ключей API */
.ai-keys-box{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:16px;overflow:hidden}
.ai-keys-head{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid #f3f4f6;background:#fafbfc}
.ai-keys-toggle{background:none;border:none;color:#6366f1;font-size:12px;cursor:pointer;font-family:inherit}
.ai-keys-toggle:hover{color:#4338ca;text-decoration:underline}
.ai-keys-body{padding:12px 14px}
.ai-key-row{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(220px,2fr) auto auto;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid #f3f4f6}
.ai-key-row:last-child{border-bottom:none}
.ai-key-label strong{color:#111827;font-size:13px;display:block;margin-bottom:2px}
.ai-key-hint{color:#6b7280;font-size:11px;line-height:1.4}
.ai-key-hint a{color:#6366f1;text-decoration:none}
.ai-key-hint a:hover{text-decoration:underline}
.ai-key-input-wrap{position:relative}
.ai-key-input{width:100%;padding:8px 36px 8px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:13px;font-family:monospace;outline:none}
.ai-key-input:focus{border-color:#6366f1;box-shadow:0 0 0 2px rgba(99,102,241,.15)}
.ai-key-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;font-size:16px;opacity:.5;padding:4px 6px}
.ai-key-eye:hover{opacity:1}
.ai-key-status{font-size:12px;color:#6b7280;min-width:140px}
.ai-key-actions{display:flex;gap:6px;flex-shrink:0}
.ai-key-actions .admin-btn{font-size:12px;padding:6px 12px}
@media (max-width: 900px) {
  .ai-key-row{grid-template-columns:1fr}
  .ai-key-actions{justify-content:flex-start}
}

/* AI Техподдержка — База знаний (Knowledge Base editor) */
.kb-hint{background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;padding:10px 12px;font-size:12px;color:#075985;margin-bottom:12px;line-height:1.5}
.kb-layout{display:grid;grid-template-columns:260px 1fr;gap:14px}
.kb-sidebar{background:#fafbfc;border:1px solid #e5e7eb;border-radius:8px;padding:10px;max-height:500px;overflow-y:auto}
.kb-editor{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:14px;min-height:400px}
.kb-section-item{padding:8px 10px;border-radius:6px;cursor:pointer;font-size:12px;color:#374151;border:1px solid transparent;display:flex;align-items:center;gap:6px;margin-bottom:4px}
.kb-section-item:hover{background:#eef2ff}
.kb-section-item.active{background:#eef2ff;border-color:#a5b4fc;color:#3730a3;font-weight:600}
.kb-section-item-key{font-family:monospace;font-size:10px;color:#9ca3af;margin-left:auto}
.kb-section-item.empty{color:#9ca3af}
.kb-section-item.empty .kb-section-item-key:after{content:'· пусто';color:#dc2626;margin-left:4px}
.kb-input{padding:8px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:13px;outline:none;font-family:inherit}
.kb-input:focus{border-color:#6366f1;box-shadow:0 0 0 2px rgba(99,102,241,.12)}
.kb-textarea{width:100%;min-height:300px;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:13px;font-family:'JetBrains Mono', monospace;line-height:1.5;outline:none;resize:vertical}
.kb-textarea:focus{border-color:#6366f1;box-shadow:0 0 0 2px rgba(99,102,241,.12)}
@media (max-width: 800px) {
  .kb-layout{grid-template-columns:1fr}
  .kb-sidebar{max-height:200px}
}

/* AI Техподдержка — kanban */
.ai-kanban{display:grid;grid-template-columns:repeat(5,minmax(200px,1fr));gap:12px;overflow-x:auto}
.ai-kanban-6{grid-template-columns:repeat(6,minmax(190px,1fr))}
.ai-col{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:10px;min-height:300px;display:flex;flex-direction:column}
.ai-col-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;font-size:13px}
.ai-col-title{font-weight:700;color:#374151}
.ai-col-count{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:2px 8px;font-size:11px;color:#6b7280;font-weight:600}
.ai-col-body{display:flex;flex-direction:column;gap:8px}
.ai-empty{color:#9ca3af;text-align:center;font-size:12px;padding:14px 0}

.ai-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:10px;cursor:pointer;transition:all .15s;font-size:12px}
.ai-card:hover{border-color:#3b82f6;box-shadow:0 2px 6px rgba(59,130,246,.1)}
.ai-card-top{display:flex;align-items:center;gap:6px;margin-bottom:6px;flex-wrap:wrap}
.ai-card-id{font-weight:700;color:#2563eb;font-size:11px}
.ai-card-prio{width:8px;height:8px;border-radius:50%;display:inline-block}
.ai-card-tag{padding:1px 6px;border-radius:6px;font-size:10px;font-weight:600}
.ai-card-msgs{margin-left:auto;color:#6b7280;font-size:10px}
.ai-card-subj{font-weight:600;color:#111827;font-size:12px;line-height:1.3;margin-bottom:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ai-card-user{color:#6b7280;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ai-card-date{color:#9ca3af;font-size:10px;margin-top:2px}

@media (max-width: 1400px) {
  .ai-kanban,.ai-kanban-6{grid-template-columns:repeat(3,minmax(220px,1fr))}
}
@media (max-width: 900px) {
  .ai-kanban,.ai-kanban-6{grid-template-columns:repeat(1,1fr)}
}

/* Admin actions */
.admin-actions{display:flex;gap:4px;align-items:center}
.admin-btn-sm{width:28px;height:28px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:13px;transition:all .15s}
.admin-btn-sm:hover{background:#f3f4f6;border-color:#d1d5db}
.admin-btn-sm.admin-btn-red:hover{background:#fef2f2;border-color:#fecaca}
.admin-btn-sm.admin-btn-green:hover{background:#f0fdf4;border-color:#bbf7d0}

/* Admin buttons */
.admin-btn{padding:7px 14px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;color:#374151;transition:all .15s}
.admin-btn:hover{background:#f3f4f6}
.admin-btn-primary{background:#2563eb;color:#fff;border-color:#2563eb}
.admin-btn-primary:hover{background:#1d4ed8}
.admin-btn-danger{background:#ef4444;color:#fff;border-color:#ef4444}
.admin-btn-danger:hover{background:#dc2626}
.admin-btn-green{background:#10b981;color:#fff;border-color:#10b981}
.admin-btn-green:hover{background:#059669}

/* Admin modal */
.admin-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.4);z-index:5000;display:flex;align-items:center;justify-content:center;padding:20px}
.admin-modal-content{background:#fff;border-radius:16px;padding:0;width:100%;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,.2)}
.admin-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e5e7eb}
.admin-modal-header h3{font-size:16px;font-weight:700;color:#111827}
.admin-modal-close{width:32px;height:32px;border:none;background:transparent;font-size:22px;color:#9ca3af;cursor:pointer;border-radius:8px;display:flex;align-items:center;justify-content:center}
.admin-modal-close:hover{background:#f3f4f6;color:#374151}
.admin-modal-body,.admin-detail-grid{padding:16px 20px}
.admin-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;font-size:13px;color:#374151}

/* Pagination */
.admin-pag-info{font-size:12px;color:#6b7280}
.admin-pag-btns{display:flex;gap:4px}
.admin-pag-btn{padding:4px 10px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;font-size:12px;cursor:pointer;font-family:inherit;color:#374151}
.admin-pag-btn:hover{background:#f3f4f6}
.admin-pag-btn.active{background:#2563eb;color:#fff;border-color:#2563eb}

/* Recent items */
.admin-recent-item{display:flex;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid #f3f4f6;font-size:13px}
.admin-recent-item:last-child{border-bottom:none}
.admin-recent-name{font-weight:600;color:#111827;min-width:100px}
.admin-recent-email{color:#6b7280;flex:1}
.admin-recent-date{color:#9ca3af;font-size:12px;margin-left:auto}

/* Login */
.login-screen{height:100vh;display:flex;align-items:center;justify-content:center;background:#f4f6f9}
.login-box{background:#fff;border-radius:16px;padding:2.5rem;width:100%;max-width:380px;box-shadow:0 4px 24px rgba(0,0,0,.08)}
.login-logo{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:22px;margin:0 auto 12px}
.login-title{font-size:20px;font-weight:800;text-align:center;margin-bottom:4px;color:#111827}
.login-sub{font-size:13px;color:#6b7280;text-align:center;margin-bottom:20px}
.login-err{display:none;background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:8px 12px;border-radius:8px;font-size:13px;margin-bottom:12px}

/* Topbar user */
.tb-uava{width:32px;height:32px;border-radius:50%;background:#2563eb;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;flex-shrink:0}
.tb-uname{font-size:13px;font-weight:500;color:#374151}

/* Responsive */
@media (max-width: 768px) {
  .admin-detail-grid{grid-template-columns:1fr}
}
