/* 캐릭터챗 (2026-11-14) — 기존 ko.css 변수(--brand 등)를 따른다 */
.gtabs a.chat-tab{color:var(--brand)}
.gtabs a.chat-tab.on{color:var(--ink)}
.ch-sort{display:flex;gap:6px;margin:14px 0 16px}
.ch-sort a{padding:7px 14px;border-radius:99px;border:1px solid var(--line);font-size:14px;font-weight:700;color:var(--sub);background:#fff}
.ch-sort a.on{background:var(--ink);border-color:var(--ink);color:#fff}
.ch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}
@media(min-width:640px){.ch-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:960px){.ch-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:22px 14px}}
.ch-card{display:flex;flex-direction:column;gap:4px;min-width:0}
.ch-img{display:block;aspect-ratio:3/4;border-radius:16px;overflow:hidden;background:#ece9f7;box-shadow:0 6px 18px rgba(30,20,60,.12)}
.ch-img img{width:100%;height:100%;object-fit:cover;object-position:top;display:block;transition:transform .25s}
.ch-card:hover .ch-img img{transform:scale(1.03)}
.ch-name{font-size:16px;font-weight:900;letter-spacing:-.3px;margin-top:6px}
.ch-tag{font-size:12.5px;line-height:1.45;color:var(--sub);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:keep-all}
.ch-n{font-size:11.5px;color:var(--faint);font-weight:700}
.ch-ph{display:grid;place-items:center;width:100%;height:100%;font-size:42px;font-weight:900;color:#fff;background:linear-gradient(140deg,hsl(var(--h) 70% 62%),hsl(calc(var(--h) + 40) 70% 48%))}
.ch-note{margin-top:22px;font-size:12px;color:var(--faint);text-align:center}
.ch-back{margin:12px 0 6px;font-size:13px;color:var(--sub);font-weight:700}
.ch-page{display:grid;gap:18px;grid-template-columns:minmax(0,1fr)}
@media(min-width:900px){.ch-page{grid-template-columns:340px minmax(0,1fr);gap:28px;align-items:start}.ch-side{position:sticky;top:116px}}
.ch-hero{aspect-ratio:3/4;border-radius:20px;overflow:hidden;background:#ece9f7;box-shadow:0 10px 26px rgba(30,20,60,.16);max-width:340px}
.ch-hero img{width:100%;height:100%;object-fit:cover;object-position:top;display:block}
.ch-hero .ch-ph{font-size:80px}
.ch-side h1{font-size:24px;font-weight:900;letter-spacing:-.6px;margin-top:14px}
.ch-line{font-size:14px;color:var(--sub);margin-top:6px;line-height:1.55;word-break:keep-all}
.ch-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
.ch-tags i{font-style:normal;font-size:12px;font-weight:700;color:var(--brand);background:#f2eeff;border-radius:99px;padding:3px 9px}
.ch-intro{font-size:14px;line-height:1.75;margin-top:14px;color:#33333d;word-break:keep-all}
.ch-work{margin-top:14px;font-size:13px;color:var(--sub)}.ch-work a{color:var(--brand);font-weight:800}
.ch-rep{margin-top:14px;font-size:12px}.ch-rep a{color:var(--faint);text-decoration:underline}
.ch-chat{background:#f7f6fc;border:1px solid var(--line);border-radius:20px;overflow:hidden;display:flex;flex-direction:column;min-height:520px}
.ch-ai{font-size:12px;line-height:1.5;color:var(--sub);background:#efecfa;padding:10px 14px;border-bottom:1px solid var(--line)}
.ch-log{flex:1;overflow-y:auto;padding:16px 12px;display:flex;flex-direction:column;gap:12px;max-height:62vh;min-height:300px;scroll-behavior:smooth}
.ch-row{display:flex;gap:8px;align-items:flex-end;max-width:92%}
.ch-row.me{align-self:flex-end;flex-direction:row-reverse}
.ch-av{flex:0 0 34px;width:34px;height:34px;border-radius:50%;overflow:hidden;background:#ddd}
.ch-av img{width:100%;height:100%;object-fit:cover;object-position:top}.ch-av .ch-ph{font-size:15px}
.ch-b{padding:10px 13px;border-radius:16px;font-size:14.5px;line-height:1.65;background:#fff;border:1px solid var(--line);word-break:break-word;white-space:normal}
.ch-row.me .ch-b{background:linear-gradient(120deg,var(--brand),#8b5bff);color:#fff;border-color:transparent}
.ch-b em{color:#7a6c9f;font-style:italic}.ch-row.me .ch-b em{color:#e6dcff}
.ch-typing .ch-b{color:var(--faint)}
.ch-typing .ch-b i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#b9b3d0;margin:0 2px;animation:chd 1.1s infinite}
.ch-typing .ch-b i:nth-child(2){animation-delay:.18s}.ch-typing .ch-b i:nth-child(3){animation-delay:.36s}
@keyframes chd{0%,80%,100%{opacity:.25}40%{opacity:1}}
.ch-sys{align-self:center;font-size:12.5px;color:#b3261e;background:#fdeceb;border-radius:10px;padding:7px 12px;text-align:center}
.ch-meta{padding:8px 14px;font-size:12.5px;color:var(--sub);background:#fff;border-top:1px solid var(--line);display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.ch-meta b{color:var(--ink)}
.ch-gate{padding:16px 14px;background:#fff;border-top:1px solid var(--line);text-align:center;font-size:14px;line-height:1.6}
.ch-gate a.btn,.ch-gate button.btn{display:inline-block;margin:8px 4px 0;padding:11px 20px;border-radius:99px;font-weight:900;font-size:14px;background:linear-gradient(120deg,var(--brand),var(--brand2));color:#fff}
.ch-gate .alt{background:#fff;color:var(--ink);border:1px solid var(--line)}
.ch-form{display:flex;gap:8px;padding:10px;background:#fff;border-top:1px solid var(--line)}
.ch-form textarea{flex:1;resize:none;border:1px solid var(--line);border-radius:14px;padding:10px 12px;font:inherit;font-size:15px;line-height:1.5;background:#faf9fe;color:var(--ink);min-width:0}
.ch-form button{flex:0 0 auto;align-self:stretch;padding:0 18px;border-radius:14px;background:var(--ink);color:#fff;font-weight:900;font-size:14px}
.ch-form button:disabled{opacity:.4;cursor:default}
.ch-tools{padding:6px 14px 10px;background:#fff;text-align:right}
.ch-tools button{font-size:12px;color:var(--faint);text-decoration:underline}
@media(max-width:600px){.ch-chat{min-height:460px}.ch-log{max-height:56vh}.ch-form textarea{font-size:16px}}
.ch-img,.ch-hero{position:relative}
.ch-aib{position:absolute;left:8px;top:8px;font-style:normal;font-size:11px;font-weight:900;color:#fff;background:rgba(21,21,28,.72);backdrop-filter:blur(4px);border-radius:99px;padding:3px 9px;letter-spacing:-.2px}
.ch-aichip{display:inline-block;font-size:11px;font-weight:900;color:#fff;background:linear-gradient(120deg,var(--brand),var(--brand2));border-radius:99px;padding:2px 9px;margin-right:6px}
.ch-ai{position:sticky;top:0;z-index:2}
@media(max-width:460px){.kind-chat .kind-sub{display:none}}
