/* Copilot (AI Assistant) — redesign styling for the ported classic chat.
   Loaded by assistant.html; all colours come from tokens.css. */

/* the chat owns the viewport: header pinned, message list scrolls, composer sticky */
.aa-page .rd-app{height:100vh;overflow:hidden}
.aa-page .rd-main{min-height:0}
.aa-content{flex:1;min-height:0;display:flex;flex-direction:column;padding:0 30px 0!important;max-width:1796px;width:100%;margin:0 auto}

/* ── header ── */
.aa-head{position:relative;padding:20px 0 12px;border-bottom:1px solid var(--border);flex:0 0 auto}
.aa-eyebrow{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.09em;color:var(--ink-3);margin-bottom:5px}
.aa-h1{font-size:24px;font-weight:750;letter-spacing:-.02em;margin:0}
.aa-sub{font-size:13px;color:var(--ink-3);margin:3px 0 0;max-width:70%}
.aa-actions{position:absolute;top:16px;right:0;display:flex;gap:8px;align-items:center}
.aa-actions .btn svg{width:15px;height:15px}

/* history popover */
.aa-hist{position:absolute;top:56px;right:0;width:340px;max-height:62vh;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:60;padding:6px;display:none}
.aa-hist.open{display:block}
.aa-hist-empty{color:var(--ink-3);font-size:13px;text-align:center;padding:22px 12px}
.aa-hist-item{display:flex;align-items:center;gap:8px;padding:9px 10px;border-radius:9px;cursor:pointer}
.aa-hist-item:hover{background:var(--surface-1)}
.aa-hist-item.active{background:var(--accent-soft)}
.aa-hist-main{flex:1;min-width:0}
.aa-hist-title{font-size:13px;color:var(--ink);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.aa-hist-meta{font-size:11px;color:var(--ink-3);margin-top:2px}
.aa-hist-del{flex-shrink:0;background:none;border:none;color:var(--ink-4);cursor:pointer;font-size:13px;padding:4px 6px;border-radius:6px;line-height:1;font-family:inherit}
.aa-hist-del:hover{color:var(--red);background:var(--red-bg)}
.aa-hist-tabs{display:flex;gap:4px;padding:4px 4px 8px;border-bottom:1px solid var(--border);margin-bottom:4px}
.aa-hist-tabs button{flex:1;font:inherit;font-size:12px;font-weight:600;color:var(--ink-3);background:var(--surface-2);border:none;border-radius:7px;padding:6px;cursor:pointer}
.aa-hist-tabs button.on{background:var(--ink);color:#fff}

.aa-banner{background:var(--amber-bg);border:1px solid rgba(199,126,11,.3);color:var(--amber);font-size:12.5px;border-radius:9px;padding:9px 12px;margin:0 0 14px}

/* ── message list ── */
.aa-msgs{flex:1;min-height:0;overflow-y:auto;padding:22px 0 12px}
.aa-empty{color:var(--ink-3);font-size:14px;text-align:center;padding:52px 20px}
.aa-empty h3{color:var(--ink-2);font-size:16px;font-weight:700;margin:0 0 14px}
.aa-ex{display:inline-block;margin:4px;padding:9px 13px;border:1px solid var(--border-2);border-radius:10px;background:var(--surface-1);color:var(--ink-2);font-size:13px;cursor:pointer;text-align:left;max-width:340px;line-height:1.4}
.aa-ex:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--ink)}

.aa-row{display:flex;margin:0 0 18px}
.aa-row.user{justify-content:flex-end}
.aa-user{background:var(--ink);color:#fff;padding:10px 15px;border-radius:14px 14px 3px 14px;max-width:80%;font-size:14px;white-space:pre-wrap;line-height:1.5}
.aa-avatar{width:26px;height:26px;border-radius:7px;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;flex:none;margin-right:10px}
.aa-avatar svg{width:15px;height:15px}
.aa-body{flex:1;min-width:0}

/* tool chips */
.aa-tools{display:flex;flex-direction:column;gap:5px;margin:2px 0 8px}
.aa-chip{display:flex;align-items:center;gap:8px;font-size:12px;background:var(--surface-1);border:1px solid var(--border);border-radius:9px;padding:6px 10px;color:var(--ink-2);max-width:100%}
.aa-chip-ico{width:13px;height:13px;flex:none;border-radius:3px;background:var(--ink-4)}
.aa-chip.run .aa-chip-ico{border-radius:50%;background:none;border:2px solid var(--accent-soft);border-top-color:var(--accent);animation:aaspin .8s linear infinite}
.aa-chip.ok .aa-chip-ico{background:var(--accent)}
.aa-chip.err .aa-chip-ico{background:var(--red)}
@keyframes aaspin{to{transform:rotate(360deg)}}
.aa-chip code{font-family:var(--mono);font-size:11.5px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}
.aa-chip .st{font-size:11px;color:var(--ink-3);flex:none;font-weight:700}
.aa-chip .st.ok{color:var(--accent)}
.aa-chip .st.err{color:var(--red)}

/* rendered answer */
.aa-text{font-size:14px;line-height:1.6;color:var(--ink-2)}
.aa-text p{margin:0 0 10px}
.aa-text b{font-weight:700;color:var(--ink)}
.aa-text code{font-family:var(--mono);font-size:12.5px;background:var(--surface-2);border-radius:5px;padding:1px 5px}
.aa-text .aa-code{font-family:var(--mono);font-size:12px;background:#0f172a;color:#e2e8f0;border-radius:10px;padding:12px 14px;overflow-x:auto;white-space:pre;margin:0 0 10px}
.aa-text .aa-h1,.aa-text .aa-h2,.aa-text .aa-h3,.aa-text .aa-h4{font-weight:700;color:var(--ink);margin:14px 0 6px}
.aa-text .aa-h1{font-size:17px}.aa-text .aa-h2{font-size:15px}.aa-text .aa-h3{font-size:14px}
.aa-text .aa-ul{margin:0 0 10px;padding-left:20px}
.aa-text .aa-ul li{margin:2px 0}
.aa-text .aa-tbl{border-collapse:collapse;margin:4px 0 12px;font-size:13px;display:block;overflow-x:auto;max-width:100%}
.aa-text .aa-tbl th{background:var(--surface-1);text-align:left;padding:7px 12px;border:1px solid var(--border);font-weight:700;color:var(--ink-2);white-space:nowrap}
.aa-text .aa-tbl td{padding:7px 12px;border:1px solid var(--border);color:var(--ink-2);white-space:nowrap}
.aa-err{color:var(--red);background:var(--red-bg);border:1px solid rgba(225,68,52,.3);border-radius:9px;padding:8px 12px;font-size:13px;margin-top:6px}
.aa-cursor{display:inline-block;width:7px;height:15px;background:var(--accent);vertical-align:text-bottom;animation:aablink 1s steps(2) infinite}
@keyframes aablink{50%{opacity:0}}

/* ── composer ── */
.aa-inbar{flex:0 0 auto;border-top:1px solid var(--border);padding:14px 0 18px;background:var(--bg)}
.aa-inrow{display:flex;gap:10px;align-items:flex-end;background:var(--surface);border:1.5px solid var(--border-2);border-radius:14px;padding:8px 8px 8px 14px}
.aa-inrow:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.aa-input{flex:1;border:none;outline:none;resize:none;font:inherit;font-size:14px;line-height:1.5;max-height:180px;padding:5px 0;background:transparent;color:var(--ink)}
.aa-input::placeholder{color:var(--ink-4)}
.aa-send{flex:none;width:38px;height:38px;border:none;border-radius:10px;background:var(--accent);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}
.aa-send svg{width:18px;height:18px}
.aa-send:hover{background:#2b9455}
.aa-send:disabled{background:var(--ink-4);cursor:not-allowed}
.aa-hint{font-size:11px;color:var(--ink-4);text-align:center;margin:8px 0 0}

@media (max-width:900px){
  .aa-sub{max-width:100%}
  .aa-actions{position:static;margin-top:12px;flex-wrap:wrap}
  .aa-hist{right:0;left:0;width:auto}
}
