/* =====================================================================
   V62 — Floating AI Assistant widget + admin limit card
   ===================================================================== */
#aiAssistantRoot{position:fixed;right:22px;bottom:22px;z-index:1200;font-size:12px}
.ai-fab{width:60px;height:60px;border-radius:50%;border:0;cursor:pointer;overflow:hidden;padding:5px;
  background:#fff;box-shadow:0 14px 34px rgba(11,59,131,.34);display:grid;place-items:center;
  transition:transform .18s ease,box-shadow .18s ease}
.ai-fab img{width:100%;height:100%;object-fit:contain;display:block}
.ai-fab:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 18px 40px rgba(11,59,131,.5)}
.ai-fab.hidden{display:none}

.ai-panel{position:absolute;right:0;bottom:0;width:370px;max-width:calc(100vw - 32px);
  height:min(72vh,560px);display:none;flex-direction:column;overflow:hidden;
  background:#fff;border:1px solid #e2e9f2;border-radius:20px;
  box-shadow:0 30px 70px rgba(4,20,45,.34)}
.ai-panel.open{display:flex;animation:aiPop .18s ease}
@keyframes aiPop{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}

.ai-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 15px;
  background:linear-gradient(135deg,#071f48,#0f4a91);color:#fff}
.ai-head-id{display:flex;align-items:center;gap:10px}
.ai-head-ico{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:rgba(255,255,255,.14);font-size:15px}
.ai-head-id strong{font:800 14px "Plus Jakarta Sans",sans-serif;display:block}
.ai-head-id small{font-size:9px;color:#bcd4ef}
.ai-close{background:rgba(255,255,255,.14);border:0;color:#fff;width:30px;height:30px;border-radius:9px;cursor:pointer}

.ai-usage{padding:8px 15px;font-size:9.5px;font-weight:800;letter-spacing:.02em;color:#0b3b83;
  background:#eef4fc;border-bottom:1px solid #e2e9f2}
.ai-usage.is-full{color:#b42318;background:#fdeceb}

.ai-search{display:flex;gap:8px;padding:12px 15px;border-bottom:1px solid #eef2f7}
.ai-search input{flex:1;border:1px solid #dbe4ef;border-radius:11px;padding:10px 12px;font-size:12px;color:#0b2f66;background:#fbfdff}
.ai-search button{border:0;border-radius:11px;padding:0 14px;background:#1769d2;color:#fff;cursor:pointer;font-size:13px}

.ai-body{flex:1;overflow-y:auto;padding:14px 15px}
.ai-hello{display:flex;flex-direction:column;align-items:center;gap:9px;text-align:center;color:#6a7d94;padding:22px 8px;font-size:11px}
.ai-hello i{font-size:22px;color:#9db8dc}
.ai-loading{padding:22px;text-align:center;color:#6a7d94;font-size:11px}
.ai-limit{padding:18px;text-align:center;color:#8a5a12;background:#fff7e9;border:1px solid #f2dfb8;border-radius:12px}
.ai-limit i{font-size:20px;display:block;margin-bottom:8px;color:#c98a1f}
.ai-note{padding:11px 12px;background:#f4f7fb;border:1px dashed #d6e0ec;border-radius:10px;color:#7286a0;font-size:10px}

.ai-kicker{font-size:8px;font-weight:800;letter-spacing:.08em;color:#8092a8;margin:2px 0 8px}
.ai-tender-head h4{margin:0 0 7px;font:800 13px "Plus Jakarta Sans",sans-serif;color:#0b2f66;line-height:1.25}
.ai-tender-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:9.5px;color:#5a6b80}
.ai-ref{display:inline-flex;align-items:center;gap:4px;background:#eef4fc;border:1px solid #d5e3f5;color:#1c4e86;
  border-radius:999px;padding:3px 9px;font-size:9px;font-weight:800;cursor:pointer}
.ai-ref:hover{background:#e0edfb}
.ai-ref i{font-size:8px}

.ai-summary-box{margin-top:11px;background:#f8fbff;border:1px solid #e5eef8;border-radius:13px;padding:12px 13px}
.ai-conf{font-size:9px;font-weight:800;color:#0b3b83;margin-bottom:8px}
.ai-clause{margin-bottom:9px}
.ai-clause span{display:block;font-size:8.5px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;color:#6a7d94;margin-bottom:3px}
.ai-clause ul{margin:0;padding-left:16px}
.ai-clause li{font-size:10px;line-height:1.5;color:#33475f}

.ai-related{margin-top:12px}
.ai-related ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}
.ai-related li{display:flex;align-items:center;gap:8px;font-size:10px;color:#4a617d}

.ai-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}
.ai-list-item{border:1px solid #eef2f7;border-radius:12px;padding:10px 12px;background:#fff}
.ai-li-top{display:flex;align-items:center;gap:8px;margin-bottom:5px}
.ai-badge{display:inline-flex;align-items:center;gap:4px;font-size:8px;font-weight:800;color:#08734b;background:#e8f8ef;border:1px solid #bfe9d0;border-radius:999px;padding:2px 7px}
.ai-li-title{display:block;text-align:left;border:0;background:none;padding:0;cursor:pointer;font:800 11px "Plus Jakarta Sans",sans-serif;color:#12396a;line-height:1.3}
.ai-li-title:hover{text-decoration:underline}
.ai-li-meta{font-size:9px;color:#7286a0;margin-top:3px}

.ai-faq{background:#eef8f1;border:1px solid #c8e9d5;border-radius:12px;padding:11px 13px;margin-bottom:12px}
.ai-faq-q{font-size:10.5px;font-weight:800;color:#0b6b43;margin-bottom:5px}
.ai-faq p{margin:0;font-size:10px;line-height:1.55;color:#2f4a3c}

.ai-back{border:0;background:#eef2f7;color:#3a5573;border-radius:9px;padding:6px 10px;font-size:9.5px;font-weight:800;cursor:pointer;margin-bottom:10px}
.ai-foot{padding:9px 15px;font-size:8px;color:#93a2b5;border-top:1px solid #eef2f7;background:#fbfdff}

@media(max-width:520px){
  #aiAssistantRoot{right:14px;bottom:14px}
  .ai-panel{width:calc(100vw - 28px);height:76vh}
}
.dark .ai-panel{background:#0c1f3d;border-color:#20365a}
.dark .ai-body{color:#cfe0f6}
.dark .ai-list-item,.dark .ai-summary-box{background:#0f2748;border-color:#22406a}
.dark .ai-li-title{color:#9dc4f5}

/* ---- Admin: AI Assistant limits card (inside AI Backups view) ---- */
.ai-limit-card{background:#fff;border:1px solid var(--line,#e6ecf3);border-radius:16px;padding:18px 20px;margin-top:16px;box-shadow:0 10px 26px rgba(17,52,97,.06)}
.ai-limit-card>h3{margin:0 0 14px;font:800 13px "Plus Jakarta Sans",sans-serif;color:#0b2f66}
.ai-limit-card>h3 i{color:#1769d2;margin-right:7px}
.ai-limit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}
.ai-limit-grid label{display:flex;flex-direction:column;gap:6px;font-size:9px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;color:#6a7d94}
.ai-limit-grid input{border:1px solid var(--line,#e0e8f1);border-radius:10px;padding:9px 11px;font-size:13px;font-weight:700;color:#0b2f66;background:#fbfdff}
.ai-limit-save{display:flex;align-items:center;gap:12px;margin-top:15px}
.ai-limit-save span{font-size:10px;font-weight:800;color:#08734b}
