/* AutoSPC — assist.css: trợ lý AI, tìm nhanh, thanh liên hệ nhanh, lối tắt trang chủ */
:root{--as-blue:#1f4488;--as-blue2:#2a63b8;--as-red:#d3382b;--as-green:#1f9d55;--as-ink:#152238;--as-muted:#6b7a90;--as-line:#e3e8f0;--as-bg:#fff;--as-soft:#f3f6fb;--as-shadow:0 12px 40px rgba(12,27,61,.22)}

/* ---------- Lối tắt nhanh trên trang chủ ---------- */
.as-quick{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin:14px 0 6px}
.as-quick a{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 6px;border:1px solid var(--as-line);border-radius:14px;background:var(--as-bg);color:var(--as-ink);text-decoration:none;font-size:12.5px;font-weight:600;text-align:center;line-height:1.25;transition:transform .12s,box-shadow .12s,border-color .12s}
.as-quick a:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(31,68,136,.14);border-color:var(--as-blue2)}
.as-quick .ico{font-size:24px;line-height:1}
@media(max-width:900px){.as-quick{grid-template-columns:repeat(3,1fr)}}

/* ---------- Ô tìm nhanh ---------- */
.as-searchbox{display:flex;align-items:center;gap:8px;margin:16px 0 0;background:rgba(255,255,255,.96);border-radius:14px;padding:10px 12px;box-shadow:0 6px 18px rgba(0,0,0,.14);cursor:text}
.as-searchbox input{flex:1;border:0;outline:0;font-size:15px;background:transparent;color:var(--as-ink);min-width:0}
.as-searchbox .k{font-size:11px;color:var(--as-muted);border:1px solid var(--as-line);border-radius:6px;padding:2px 6px;white-space:nowrap}
.as-searchbox .ico{font-size:18px}
@media(max-width:700px){.as-searchbox .k{display:none}}

.as-palette{position:fixed;inset:0;z-index:9990;background:rgba(12,27,61,.45);display:none;align-items:flex-start;justify-content:center;padding:8vh 12px 12px}
.as-palette.open{display:flex}
.as-pal{width:100%;max-width:620px;background:var(--as-bg);border-radius:16px;box-shadow:var(--as-shadow);overflow:hidden}
.as-pal-in{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--as-line)}
.as-pal-in input{flex:1;border:0;outline:0;font-size:17px;color:var(--as-ink);min-width:0}
.as-pal-list{max-height:min(60vh,460px);overflow:auto;padding:6px}
.as-pal-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;cursor:pointer;color:var(--as-ink);text-decoration:none}
.as-pal-item .ico{width:30px;text-align:center;font-size:20px}
.as-pal-item b{display:block;font-size:14.5px;font-weight:600}
.as-pal-item small{color:var(--as-muted);font-size:12px}
.as-pal-item.sel,.as-pal-item:hover{background:var(--as-soft)}
.as-pal-empty{padding:18px;color:var(--as-muted);text-align:center;font-size:14px}
.as-pal-foot{padding:8px 16px;border-top:1px solid var(--as-line);font-size:11.5px;color:var(--as-muted);display:flex;gap:14px}

/* ---------- Thanh nút nổi ---------- */
.as-fab{position:fixed;right:16px;bottom:16px;z-index:9980;display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.as-fab .as-btn{display:flex;align-items:center;gap:8px;height:46px;padding:0 14px 0 12px;border-radius:999px;border:0;cursor:pointer;color:#fff;font-weight:700;font-size:14px;box-shadow:0 8px 22px rgba(0,0,0,.22);text-decoration:none;transition:transform .12s}
.as-fab .as-btn:hover{transform:translateY(-2px)}
.as-fab .as-btn .ico{font-size:20px;line-height:1}
.as-btn-ai{background:linear-gradient(135deg,var(--as-blue) 0%,var(--as-blue2) 100%)}
.as-btn-ai .dot{width:8px;height:8px;border-radius:50%;background:#5cf28f;box-shadow:0 0 0 3px rgba(92,242,143,.3);animation:as-pulse 1.6s infinite}
@keyframes as-pulse{0%,100%{box-shadow:0 0 0 3px rgba(92,242,143,.3)}50%{box-shadow:0 0 0 7px rgba(92,242,143,0)}}
.as-btn-call{background:var(--as-red)}
.as-btn-zalo{background:#0068ff}
.as-btn-top{width:42px;height:42px;padding:0;justify-content:center;background:#fff;color:var(--as-ink);border:1px solid var(--as-line);opacity:0;pointer-events:none;transition:opacity .2s}
.as-btn-top.show{opacity:1;pointer-events:auto}
.as-fab .as-btn-top{background:#fff;color:#0c1b3d;border:1px solid #cfd9e8}.as-fab .as-btn-top .ico{font-size:20px;line-height:1}
.as-fab.hid{display:none}
@media(max-width:700px){
  .as-fab{right:10px;bottom:10px;gap:8px}
  .as-fab .as-btn{height:42px;font-size:13px}
  .as-fab .as-btn-call .txt,.as-fab .as-btn-zalo .txt{display:none}
  .as-fab .as-btn-call,.as-fab .as-btn-zalo{width:42px;padding:0;justify-content:center}
}

/* ---------- Khung chat AI ---------- */
.as-chat{position:fixed;right:16px;bottom:16px;z-index:9995;width:380px;max-width:calc(100vw - 20px);height:560px;max-height:calc(100vh - 32px);background:var(--as-bg);border-radius:18px;box-shadow:var(--as-shadow);display:none;flex-direction:column;overflow:hidden;font-family:inherit}
.as-chat.open{display:flex;animation:as-in .18s ease-out}
@keyframes as-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.as-chat-head{display:flex;align-items:center;gap:10px;padding:12px 14px;background:linear-gradient(135deg,#0c1b3d 0%,var(--as-blue) 60%,var(--as-blue2) 100%);color:#fff}
.as-chat-head .av{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;font-size:20px}
.as-chat-head b{display:block;font-size:14.5px}
.as-chat-head small{display:block;font-size:11.5px;opacity:.85}
.as-chat-head .sp{flex:1}
.as-chat-head button{background:rgba(255,255,255,.14);border:0;color:#fff;width:30px;height:30px;border-radius:8px;cursor:pointer;font-size:16px}
.as-chat-body{flex:1;overflow:auto;padding:14px 12px;background:var(--as-soft);display:flex;flex-direction:column;gap:10px}
.as-msg{max-width:88%;padding:9px 12px;border-radius:14px;font-size:14px;line-height:1.5;white-space:pre-wrap;word-break:break-word}
.as-msg.ai{align-self:flex-start;background:#fff;color:var(--as-ink);border-bottom-left-radius:4px;box-shadow:0 1px 3px rgba(0,0,0,.06)}
.as-msg.me{align-self:flex-end;background:var(--as-blue2);color:#fff;border-bottom-right-radius:4px}
.as-msg a{color:var(--as-blue2);font-weight:600;text-decoration:underline}
.as-msg.me a{color:#fff}
.as-msg ul{margin:4px 0 4px 18px;padding:0}
.as-msg.typing span{display:inline-block;width:7px;height:7px;margin:0 2px;border-radius:50%;background:#9aa7ba;animation:as-b 1.2s infinite}
.as-msg.typing span:nth-child(2){animation-delay:.2s}.as-msg.typing span:nth-child(3){animation-delay:.4s}
@keyframes as-b{0%,80%,100%{transform:translateY(0);opacity:.5}40%{transform:translateY(-5px);opacity:1}}
.as-chips{display:flex;flex-wrap:wrap;gap:6px;padding:0 12px 8px;background:var(--as-soft)}
.as-chips button{border:1px solid #cfd9e8;background:#fff;color:var(--as-blue);border-radius:999px;padding:5px 10px;font-size:12.5px;cursor:pointer}
.as-chips button:hover{background:#e9f0fb}
.as-chat-in{display:flex;gap:8px;padding:10px;border-top:1px solid var(--as-line);background:#fff}
.as-chat-in textarea{flex:1;resize:none;border:1px solid var(--as-line);border-radius:12px;padding:9px 12px;font-size:14px;font-family:inherit;max-height:110px;outline:0;min-width:0}
.as-chat-in textarea:focus{border-color:var(--as-blue2)}
.as-chat-in button{width:44px;border:0;border-radius:12px;background:var(--as-blue2);color:#fff;font-size:18px;cursor:pointer}
.as-chat-in button:disabled{opacity:.5;cursor:default}
.as-chat-foot{font-size:10.5px;color:var(--as-muted);text-align:center;padding:0 10px 8px;background:#fff}
@media(max-width:700px){.as-chat{right:0;bottom:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0}}

/* ---------- v2: hàng tin nhắn, đánh giá, trạng thái, bảng ---------- */
.as-row{display:flex;flex-direction:column;max-width:100%}
.as-row.me{align-items:flex-end}.as-row.ai{align-items:flex-start}
.as-row .as-msg{max-width:92%}
.as-fb{display:flex;gap:4px;margin:2px 0 0 6px;opacity:.55;transition:opacity .15s}.as-row:hover .as-fb{opacity:1}
.as-fb button{border:0;background:transparent;cursor:pointer;font-size:13px;padding:2px 4px;border-radius:6px}.as-fb button:hover{background:#e9f0fb}
.as-fb span{font-size:11.5px;color:var(--as-muted);padding:2px 4px}
.as-status{font-size:12px;color:var(--as-muted);padding:0 14px 6px;background:var(--as-soft)}
.as-status::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--as-blue2);margin-right:6px;animation:as-pulse 1.2s infinite}
.as-cta{display:flex;flex-wrap:wrap;gap:6px;margin:2px 0 4px}
.as-cta a{display:inline-block;padding:7px 12px;border-radius:999px;background:var(--as-blue2);color:#fff;font-size:13px;font-weight:700;text-decoration:none}
.as-cta a:nth-child(2){background:#0068ff}.as-cta a:nth-child(3){background:#fff;color:var(--as-blue);border:1px solid #cfd9e8}
.as-msg.as-ok{background:#e7f7ec;color:#0c7a3d;font-size:13px}
.as-tbl{border-collapse:collapse;font-size:12.5px;margin:4px 0;width:100%;display:block;overflow-x:auto;white-space:normal}
.as-tbl th,.as-tbl td{border:1px solid #e3e8f0;padding:4px 7px;text-align:left;vertical-align:top}.as-tbl th{background:#f3f6fb;font-weight:700}
