/* Publifia Dashboard v2 — Chat view (ported Workspace chat, tokens mapped to v2) */
.mn-scroll:has(.chat){padding:0;overflow:hidden;display:flex}

/* map clean.css tokens -> v2 tokens, scoped to the chat subtree */
.chat{
  --sans:'Inter',system-ui,sans-serif;
  --serif:'Inter',system-ui,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,'SF Mono',Menlo,monospace;
  --t1:var(--txt);--t2:var(--txt2);--t3:var(--txt3);
  --line:rgba(226,227,228,0.07);--line2:rgba(226,227,228,0.115);--line3:rgba(226,227,228,0.16);
  --field:var(--surface2);--raised:var(--surface2);--raised2:var(--raised);
  --acc:var(--txt);--acc2:var(--txt2);
  --green:var(--pos);--amber:#d9a441;
  --r-full:999px;--r-md:10px;
  --ease:cubic-bezier(.2,.8,.2,1);
}

/* ===== chat ===== */
.chat{flex:1;min-height:0;display:flex;overflow:hidden;position:relative;isolation:isolate}
.chat::before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(115% 105% at 100% 0%,color-mix(in srgb,var(--txt) 5%,transparent),transparent 55%),radial-gradient(90% 90% at 100% 100%,color-mix(in srgb,var(--txt) 4%,transparent),transparent 55%);pointer-events:none}
.chat::after{content:"";position:absolute;inset:0;z-index:-1;background-image:radial-gradient(var(--txt3) 1.2px,transparent 1.5px);background-size:20px 20px;opacity:.4;-webkit-mask-image:radial-gradient(115% 105% at 100% 0%,#000,transparent 60%),radial-gradient(90% 90% at 100% 100%,#000,transparent 58%);mask-image:radial-gradient(115% 105% at 100% 0%,#000,transparent 60%),radial-gradient(90% 90% at 100% 100%,#000,transparent 58%);pointer-events:none}
.chat.empty{align-items:center;justify-content:center}
.chat-thread{width:436px;flex:none;border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:0}
.chat.empty .chat-thread{width:100%;max-width:640px;border-right:none;align-items:center;justify-content:center;padding:0 24px;zoom:1.25}
/* remove the floating AI launcher */
.aifab{display:none!important}
.ct-head{display:flex;align-items:center;gap:10px;padding:18px 22px;flex:none}
.ct-head h2{font:700 17px var(--sans);letter-spacing:-.02em}
.hist-pill{display:inline-flex;align-items:center;gap:7px;height:32px;padding:0 12px;border-radius:var(--r-full);color:var(--t2);font:500 12.5px var(--sans);border:none;background:transparent;cursor:pointer}
.hist-pill:hover{background:var(--raised);color:var(--t1)}.hist-pill svg{width:14px;height:14px}
.try-btn{display:inline-flex;align-items:center;gap:7px;height:32px;padding:0 14px;border-radius:var(--r-full);border:1px solid var(--line2);background:transparent;color:var(--t1);font:600 12.5px var(--sans);cursor:pointer}
.try-btn:hover{background:var(--raised)}
.try-btn svg{width:14px;height:14px;color:var(--t2)}
.ct-body{flex:1;min-height:0;overflow-y:auto;padding:8px 22px 0;display:flex;flex-direction:column;gap:16px}
.umsg{align-self:flex-end;max-width:82%;background:var(--raised);border:1px solid var(--line);border-radius:14px 14px 4px 14px;padding:11px 14px;font:400 14px/1.5 var(--sans)}
.worked{display:inline-flex;align-items:center;gap:8px;color:var(--t3);font:500 12.5px var(--sans)}.worked svg{width:13px;height:13px}
.amsg{font:400 14.5px/1.6 var(--sans);color:var(--t1)}
.rescard{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--line2);border-radius:12px;background:var(--raised);transition:.13s;text-align:left;cursor:pointer;width:100%}
.rescard:hover{border-color:var(--t3)}
.rescard .ic{width:34px;height:34px;border-radius:8px;background:var(--raised2);display:flex;align-items:center;justify-content:center;flex:none}.rescard .ic svg{width:17px;height:17px;color:var(--t2)}
.rescard .rc-t{font:600 13.5px var(--sans);display:block}.rescard .rc-s{font:400 12px var(--sans);color:var(--t3)}
.rescard .rc-go{margin-left:auto;display:inline-flex;align-items:center;gap:5px;color:var(--t2);font:600 12.5px var(--sans)}.rescard .rc-go svg{width:14px;height:14px}
.ct-foot{padding:16px 22px;flex:none}
.greeting{font:800 clamp(28px,3vw,38px)/1.14 var(--serif);letter-spacing:-.035em;text-align:center;margin-bottom:26px;color:var(--txt)}
.composer{position:relative;width:100%;border:1px solid var(--line2);border-radius:14px;background:var(--field);padding:15px 15px 11px;transition:border-color .15s}
.chat.empty .composer{max-width:600px;border-radius:16px}
.composer:focus-within{border-color:var(--t3)}
.composer textarea{width:100%;background:none;border:none;outline:none;resize:none;color:var(--t1);font:400 15px/1.5 var(--sans);min-height:26px;max-height:140px}
.composer textarea::placeholder{color:var(--t3)}
.composer-row{display:flex;align-items:center;margin-top:8px}
.composer .clip{width:32px;height:32px;border-radius:8px;border:1px solid var(--line);color:var(--t3);display:flex;align-items:center;justify-content:center;background:transparent;cursor:pointer}
.composer .clip:hover{color:var(--t1);border-color:var(--line2)}.composer .clip svg{width:15px;height:15px}
.composer .send{margin-left:auto;width:34px;height:34px;border-radius:50%;background:var(--txt);color:var(--bg);display:flex;align-items:center;justify-content:center;transition:.13s;border:none;cursor:pointer}
.composer .send:hover{filter:brightness(1.08)}.composer .send svg{width:16px;height:16px}
.composer .send:disabled{background:var(--surface2);color:var(--t3);cursor:default;filter:none}
.chip-row{display:flex;gap:9px;justify-content:center;flex-wrap:wrap;margin-top:18px;max-width:600px}
.qchip{height:34px;padding:0 15px;border-radius:var(--r-full);border:1px solid var(--line2);color:var(--t2);font:500 13px var(--sans);transition:.13s;background:transparent;cursor:pointer}
.qchip:hover{background:var(--raised);color:var(--t1);border-color:var(--line3)}

/* ===== result panel ===== */
.respanel{flex:1;min-width:0;display:flex;flex-direction:column;min-height:0}
.rp-tabs{display:flex;align-items:center;gap:8px;padding:14px 20px 0;flex:none}
.rp-tab{display:inline-flex;align-items:center;gap:9px;height:32px;padding:0 12px;border-radius:var(--r-md);background:var(--raised);border:1px solid var(--line);font:500 12.5px var(--sans)}
.rp-tab svg{width:13px;height:13px;color:var(--t3)}.rp-tab .x{color:var(--t3);margin-left:2px;display:inline-flex;background:transparent;border:none;cursor:pointer}.rp-tab .x:hover{color:var(--t1)}.rp-tab .x svg{width:13px;height:13px}
.rp-head{display:flex;align-items:center;gap:11px;padding:16px 20px 10px;flex:none}
.rp-head .ic{width:30px;height:30px;border-radius:8px;background:var(--raised);border:1px solid var(--line);display:flex;align-items:center;justify-content:center}.rp-head .ic svg{width:15px;height:15px;color:var(--t2)}
.rp-head h3{font:700 16px var(--sans);letter-spacing:-.01em}
.rp-meta{display:flex;align-items:center;gap:10px;padding:0 20px 8px;flex:none}.rp-meta .m{font:400 12.5px var(--sans);color:var(--t3)}

/* ===== table (scoped) ===== */
.chat .vh-sp{flex:1}
.chat .btn{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 13px;border-radius:var(--r-md);border:1px solid var(--line);color:var(--t2);font:500 13px var(--sans);white-space:nowrap;transition:.13s;background:transparent;cursor:pointer}
.chat .btn svg{width:14px;height:14px;flex:none}
.chat .btn.sm{height:30px;padding:0 10px;font-size:12.5px}
.chat .btn.pri{background:var(--txt);color:var(--bg);border-color:transparent}
.chat .btn.pri:hover{filter:brightness(1.08)}
.chat .iconbtn{width:34px;height:34px;border-radius:var(--r-md);border:1px solid transparent;color:var(--t3);display:inline-flex;align-items:center;justify-content:center;transition:.13s;background:transparent;cursor:pointer}
.chat .iconbtn:hover{background:var(--raised);color:var(--t1)}.chat .iconbtn svg{width:16px;height:16px}
.tw{flex:1;min-height:0;overflow:auto;padding:0 14px 20px}
table.gr{width:100%;border-collapse:collapse;white-space:nowrap;min-width:760px}
table.gr th{position:sticky;top:0;z-index:2;height:38px;text-align:left;font:500 12px var(--sans);color:var(--t3);padding:0 12px;background:#101013;border-bottom:1px solid var(--line)}
table.gr th .thi{display:inline-flex;align-items:center;gap:6px}table.gr th svg{width:13px;height:13px;opacity:.7}
table.gr td{height:48px;font:400 13.5px var(--sans);color:var(--t1);padding:0 12px;border-bottom:1px solid var(--line)}
table.gr tbody tr{cursor:pointer;transition:background .1s}
table.gr tbody tr:hover{background:var(--raised)}
.ck{width:16px;height:16px;border-radius:4px;border:1.5px solid var(--line3);flex:none;display:inline-block;vertical-align:middle}
.rownum{color:var(--t3);font:400 12.5px var(--mono)}
.nm-cell{display:flex;align-items:center;gap:10px;font-weight:600}
.chat .av{width:26px;height:26px;border-radius:50%;background:var(--raised2);display:flex;align-items:center;justify-content:center;font:600 10px var(--sans);color:var(--t2);flex:none;overflow:hidden}
.chat .mid{color:var(--t2)}.chat .faint{color:var(--t3)}
.chat .chip{display:inline-flex;align-items:center;height:22px;padding:0 9px;border-radius:6px;background:var(--raised);border:1px solid var(--line);color:var(--t2);font:500 11.5px var(--sans)}
.fit{display:inline-flex;align-items:center;gap:7px}.fit svg{width:20px;height:20px;flex:none}.fit .track{stroke:var(--line2)}
.fit b{font:600 13px var(--sans);font-variant-numeric:tabular-nums}.fit i{font:600 11px var(--mono);font-style:normal;color:var(--t3)}
tr.rr{opacity:0;transform:translateY(4px)}tr.rr.in{opacity:1;transform:none;transition:opacity .34s var(--ease),transform .34s var(--ease)}

@media(max-width:960px){.respanel{display:none}.chat-thread{width:100%;border-right:none}}
