/* ═══════════════════════════════════════════════════════════════
   CROSS-POLICY AI CHAT & POLICY TILES
   ═══════════════════════════════════════════════════════════════ */

/* ── Policy Documents Section Header ── */
.pqa-docs-section-header{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid var(--border2);border-radius:12px;padding:20px 24px;margin-bottom:16px;gap:16px;box-shadow:0 1px 8px rgba(0,0,0,.04);}
.pqa-docs-section-title{font-size:1.05rem;font-weight:700;color:var(--charcoal);letter-spacing:-.02em;}
.pqa-docs-section-sub{font-size:.74rem;color:var(--mid);margin-top:4px;line-height:1.5;}

/* ── Policy Tiles Grid ── */
.pqa-tiles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;padding:0 0 20px;}
.pqa-tiles-empty{grid-column:1/-1;padding:40px;text-align:center;color:var(--mid);font-size:.8rem;background:#fff;border:1.5px dashed var(--border2);border-radius:12px;}

.pqa-tile{background:#fff;border:1px solid var(--border2);border-radius:12px;padding:20px 22px;display:flex;flex-direction:column;gap:12px;transition:border-color .15s,box-shadow .15s;box-shadow:0 1px 6px rgba(0,0,0,.05);}
.pqa-tile:hover{border-color:var(--forest);box-shadow:0 4px 16px rgba(1,84,65,0.1);}
.pqa-tile-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;}
.pqa-tile-icon{width:38px;height:38px;border-radius:10px;background:var(--forest-pale);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--forest);}
.pqa-tile-status{font-size:.6rem;font-weight:700;letter-spacing:.05em;padding:4px 10px;border-radius:6px;text-transform:uppercase;white-space:nowrap;}
.pqa-tile-status.ready{background:var(--green-pale);color:var(--green);}
.pqa-tile-status.processing{background:var(--amber-pale);color:var(--amber);}
.pqa-tile-status.failed{background:var(--red-pale);color:var(--red);}
.pqa-tile-name{font-size:.86rem;font-weight:700;color:var(--charcoal);line-height:1.35;word-break:break-word;}
.pqa-tile-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;}
.pqa-tile-tag{font-size:.62rem;font-weight:500;color:var(--mid);background:var(--bg);padding:2px 7px;border-radius:4px;letter-spacing:.01em;}
.pqa-tile-chunks{font-size:.62rem;color:var(--mid);font-weight:500;}
.pqa-tile-actions{display:flex;gap:6px;margin-top:auto;padding-top:6px;border-top:1px solid var(--border2);}
.pqa-tile-del{font-size:.62rem;color:var(--mid);background:none;border:1px solid var(--border2);border-radius:6px;padding:5px 10px;cursor:pointer;font-family:'Inter',sans-serif;font-weight:500;transition:color .15s,border-color .15s;}
.pqa-tile-del:hover{color:var(--red);border-color:var(--red);}
.pqa-tile-view{font-size:.62rem;color:var(--forest);background:var(--forest-pale);border:1px solid rgba(1,84,65,0.15);border-radius:6px;padding:5px 10px;cursor:pointer;font-family:'Inter',sans-serif;font-weight:600;transition:background .15s,border-color .15s;}
.pqa-tile-view:hover{background:rgba(1,84,65,0.12);border-color:var(--forest);}

/* ── Cross-Policy Chat ── */
.pqa-chat-wrap{background:#fff;border:1px solid var(--border2);border-radius:14px;display:flex;flex-direction:column;box-shadow:0 2px 16px rgba(0,0,0,.07);}

.pqa-chat-header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--border2);gap:12px;background:var(--forest);border-radius:14px 14px 0 0;}
.pqa-chat-header-left{display:flex;align-items:center;gap:10px;}
.pqa-chat-icon{width:32px;height:32px;border-radius:8px;background:rgba(255,255,255,0.2);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.pqa-chat-title{font-size:.86rem;font-weight:700;color:#fff;letter-spacing:-.01em;}
.pqa-chat-sub{font-size:.66rem;color:rgba(255,255,255,0.65);margin-top:1px;}
.pqa-chat-meta{font-size:.62rem;color:#fff;font-weight:700;background:rgba(255,255,255,0.2);padding:4px 12px;border-radius:20px;white-space:nowrap;letter-spacing:.02em;}

.pqa-chat-messages{height:320px;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:14px;}

.pqa-msg{display:flex;gap:10px;max-width:92%;}
.pqa-msg-ai{align-self:flex-start;}
.pqa-msg-user{align-self:flex-end;flex-direction:row-reverse;}
.pqa-msg-avatar{width:26px;height:26px;border-radius:7px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.6rem;font-weight:700;}
.pqa-msg-ai .pqa-msg-avatar{background:var(--forest);color:#fff;}
.pqa-msg-user .pqa-msg-avatar{background:var(--forest-pale);color:var(--forest);}
.pqa-msg-body{display:flex;flex-direction:column;gap:4px;}
.pqa-msg-text{font-size:.78rem;line-height:1.55;color:var(--charcoal);padding:10px 14px;border-radius:10px;word-break:break-word;}
.pqa-msg-ai .pqa-msg-text{background:var(--bg);border:1px solid var(--border2);}
.pqa-msg-user .pqa-msg-text{background:var(--forest);color:#fff;}

/* Verdict badge in chat */
.pqa-verdict-badge{display:inline-flex;align-items:center;gap:4px;font-size:.62rem;font-weight:700;letter-spacing:.04em;padding:3px 8px;border-radius:4px;text-transform:uppercase;margin-bottom:4px;}
.pqa-verdict-badge.yes{background:var(--green-pale);color:var(--green);}
.pqa-verdict-badge.no{background:var(--red-pale);color:var(--red);}
.pqa-verdict-badge.not-covered{background:var(--amber-pale);color:var(--amber);}
.pqa-source-tag{display:inline-flex;align-items:center;gap:4px;font-size:.62rem;font-weight:600;color:var(--forest);background:var(--forest-pale);padding:3px 8px;border-radius:4px;margin-bottom:6px;}
.pqa-confidence-bar{height:3px;border-radius:2px;background:var(--border2);margin-top:6px;overflow:hidden;}
.pqa-confidence-fill{height:100%;border-radius:2px;transition:width .4s ease;}
.pqa-extract-block{font-size:.72rem;color:var(--slate);background:rgba(1,84,65,0.04);border-left:3px solid var(--forest);padding:8px 12px;margin-top:8px;border-radius:0 6px 6px 0;line-height:1.5;font-style:italic;}
.pqa-policies-searched{font-size:.6rem;color:var(--mid);margin-top:4px;font-weight:500;}
.pqa-view-policy-link{display:inline-flex;align-items:center;gap:4px;font-size:.65rem;font-weight:600;color:var(--forest);background:var(--forest-pale);border:1px solid rgba(1,84,65,0.15);border-radius:5px;padding:4px 10px;margin-top:8px;cursor:pointer;text-decoration:none;transition:background .15s;}
.pqa-view-policy-link:hover{background:rgba(1,84,65,0.12);}

/* Typing indicator */
.pqa-typing{display:flex;align-items:center;gap:4px;padding:8px 14px;}
.pqa-typing-dot{width:6px;height:6px;border-radius:50%;background:var(--mid);animation:pqaBounce .6s ease-in-out infinite;}
.pqa-typing-dot:nth-child(2){animation-delay:.15s;}
.pqa-typing-dot:nth-child(3){animation-delay:.3s;}
@keyframes pqaBounce{0%,100%{opacity:.3;transform:translateY(0);}50%{opacity:1;transform:translateY(-3px);}}

/* Suggestions */
.pqa-chat-suggestions{padding:12px 20px 14px;display:flex;flex-wrap:wrap;gap:8px;flex-shrink:0;border-top:1px solid var(--border2);}
.pqa-sug-btn{font-size:.7rem;color:var(--forest);background:#fff;border:1.5px solid rgba(1,84,65,0.2);border-radius:8px;padding:7px 14px;cursor:pointer;font-family:'Inter',sans-serif;font-weight:600;transition:background .15s,border-color .15s,color .15s;white-space:nowrap;line-height:1.3;}
.pqa-sug-btn:hover{background:var(--forest);color:#fff;border-color:var(--forest);}

/* Input */
.pqa-chat-input-wrap{border-top:1px solid var(--border2);padding:12px 16px;flex-shrink:0;}
.pqa-chat-input-row{display:flex;align-items:flex-end;gap:8px;background:var(--bg);border:1px solid var(--border2);border-radius:10px;padding:8px 10px;transition:border-color .15s;}
.pqa-chat-input-row:focus-within{border-color:var(--forest);}
.pqa-chat-input{flex:1;border:none;outline:none;background:transparent;font-size:.78rem;font-family:'Inter',sans-serif;resize:none;max-height:100px;line-height:1.45;color:var(--charcoal);}
.pqa-chat-send{width:30px;height:30px;border-radius:7px;border:none;background:var(--forest);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:opacity .15s;}
.pqa-chat-send:hover{opacity:.85;}
.pqa-chat-send:disabled{opacity:.35;cursor:not-allowed;}
.pqa-chat-footer{font-size:.58rem;color:var(--mid);text-align:center;margin-top:8px;font-weight:500;letter-spacing:.01em;}
