:root{--p:#6C3BEA;--p-soft:#efe9fd;--bg:#faf8f5;--bg2:#f3ede4;--card:#fff;--t:#1a1a1a;--m:#666;--bd:#e8e2d9;--side:268px}
*{box-sizing:border-box}html,body{height:100%}
body{margin:0;background:var(--bg);color:var(--t);font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
a{color:var(--p)}button{font:inherit;cursor:pointer}
.app{display:flex;height:100dvh}
aside{overflow:auto;width:var(--side);flex:none;background:var(--bg2);border-right:1px solid var(--bd);display:flex;flex-direction:column;padding:14px;gap:10px;transition:transform .2s}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--t);font-weight:700;letter-spacing:.06em}
.brand img{width:36px;height:36px;border-radius:6px}.brand b{color:var(--p)}
.new{background:var(--p);color:#fff;border:0;border-radius:12px;padding:10px 14px;font-weight:600;text-align:left}
.new:hover{filter:brightness(1.08)}
.hist{flex:1;overflow:auto;display:flex;flex-direction:column;gap:2px;margin:0 -6px}
.hist h4{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--m);margin:10px 6px 4px}
.hi{display:flex;align-items:center;border-radius:8px;padding:7px 8px;color:var(--t);text-decoration:none;font-size:.92rem;gap:6px}
.hi span{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.hi:hover,.hi.on{background:#e9e1d4}
.hi button{border:0;background:none;color:var(--m);opacity:0;padding:0 4px}.hi:hover button{opacity:1}
.side-foot{border-top:1px solid var(--bd);padding-top:10px;font-size:.85rem;color:var(--m);display:flex;flex-direction:column;gap:6px}
.plan{background:var(--card);border:1px solid var(--bd);border-radius:12px;padding:10px}
.plan b{color:var(--p)}.plan a{font-weight:600}
.bar{height:6px;background:var(--bd);border-radius:4px;overflow:hidden;margin-top:6px}.bar i{display:block;height:100%;background:var(--p)}
main{flex:1;display:flex;flex-direction:column;min-width:0}
.top{display:none;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--bd);background:rgba(250,248,245,.92)}
.top button{border:0;background:none;font-size:1.4rem}
.thread{flex:1;overflow:auto;padding:24px 18px 10px}
.inner{max-width:820px;margin:0 auto}
.hero{text-align:center;margin-top:12vh}.hero img.wm{width:min(340px,80%);mix-blend-mode:multiply}
.hero h1{font-size:clamp(1.8rem,5vw,2.6rem);margin:.3em 0 .1em}.hero h1 b{color:var(--p)}.hero p{color:var(--m);margin:0 0 24px}
.sugg{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;text-align:left}
.sugg button{background:var(--card);border:1px solid var(--bd);border-radius:14px;padding:12px 14px;color:var(--t);text-align:left;font-size:.92rem}
.sugg button:hover{border-color:var(--p)}.sugg small{display:block;color:var(--p);font-weight:600}
.msg{margin:0 0 22px}.msg.user .bubble{background:var(--p-soft);border-radius:16px;padding:10px 16px;display:inline-block;max-width:90%;white-space:pre-wrap}
.msg.user{text-align:right}
.msg.bot .who{display:flex;align-items:center;gap:8px;font-weight:700;margin-bottom:4px}.msg.bot .who img{width:24px;border-radius:50%}
.tag{font-size:.72rem;font-weight:600;background:var(--p-soft);color:var(--p);border-radius:20px;padding:1px 8px}
.md{overflow-wrap:anywhere}.md pre{background:#1e1b2e;color:#f1effa;padding:12px;border-radius:10px;overflow:auto;font-size:.88rem}
.md code{background:#eee8f9;padding:1px 5px;border-radius:5px;font-size:.9em}.md pre code{background:none;padding:0}
.md table{border-collapse:collapse;display:block;overflow:auto}.md th,.md td{border:1px solid var(--bd);padding:6px 10px}.md th{background:var(--bg2)}
.md img{max-width:100%;border-radius:14px}
.sources{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;margin:6px 0 10px}
.src{background:var(--card);border:1px solid var(--bd);border-radius:12px;padding:8px 10px;text-decoration:none;color:var(--t);font-size:.82rem;display:flex;flex-direction:column;gap:2px}
.src:hover{border-color:var(--p)}.src em{font-style:normal;color:var(--m);display:flex;gap:6px;align-items:center}.src em img{width:14px;height:14px}
.src span{overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.label{font-weight:700;font-size:.9rem;margin:8px 0 4px;display:flex;gap:6px;align-items:center}
.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.actions button,.actions a{border:1px solid var(--bd);background:var(--card);border-radius:10px;padding:6px 12px;font-size:.85rem;color:var(--t);text-decoration:none}
.actions button:hover,.actions a:hover{border-color:var(--p);color:var(--p)}
.err{color:#b3261e;background:#fdecea;border-radius:10px;padding:10px 14px}
.typing{display:inline-flex;gap:4px}.typing i{width:7px;height:7px;background:var(--p);border-radius:50%;animation:b 1s infinite}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}
@keyframes b{0%,100%{opacity:.25}50%{opacity:1}}
.composer{padding:10px 18px 16px}
.box{max-width:820px;margin:0 auto;background:var(--card);border:1px solid var(--bd);border-radius:20px;padding:10px 12px;box-shadow:0 6px 24px rgba(60,40,120,.07)}
.box:focus-within{border-color:var(--p)}
textarea{width:100%;border:0;outline:0;resize:none;font:inherit;background:none;max-height:200px;min-height:28px}
.row{display:flex;align-items:center;gap:8px;justify-content:space-between}
.modes{display:flex;gap:4px;flex-wrap:wrap}
.modes button{border:1px solid var(--bd);background:var(--bg);border-radius:20px;padding:4px 11px;font-size:.85rem;color:var(--m)}
.modes button.on{background:var(--p);border-color:var(--p);color:#fff}
.send{width:38px;height:38px;border-radius:50%;border:0;background:var(--p);color:#fff;font-size:1.1rem;flex:none}.send:disabled{opacity:.4}
.note{text-align:center;color:var(--m);font-size:.75rem;margin-top:6px}
.shade{display:none}
@media(max-width:820px){
 aside{position:fixed;inset:0 auto 0 0;z-index:30;transform:translateX(-100%)}
 .app.open aside{transform:none}.app.open .shade{display:block;position:fixed;inset:0;background:rgba(0,0,0,.3);z-index:20}
 .top{display:flex}.hero{margin-top:5vh}.thread{padding:16px 12px}.composer{padding:8px 10px 12px}
 .modes button{padding:4px 9px;font-size:.8rem}
}
/* Precios */
.pricing{max-width:1040px;margin:0 auto;padding:48px 20px}
.pricing h1{text-align:center;font-size:clamp(2rem,5vw,3rem);margin:.2em 0}.pricing .lead{text-align:center;color:var(--m)}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin-top:32px}
.card{background:var(--card);border:1px solid var(--bd);border-radius:20px;padding:24px;display:flex;flex-direction:column;gap:10px}
.card.hot{border:2px solid var(--p);box-shadow:0 10px 30px rgba(108,59,234,.15)}
.card .price{font-size:2.4rem;font-weight:800}.card .price small{font-size:1rem;color:var(--m);font-weight:500}
.card ul{padding-left:18px;margin:0;flex:1}.card li{margin:4px 0}
.card .cta{background:var(--p);color:#fff;border:0;border-radius:12px;padding:12px;font-weight:700;text-align:center;text-decoration:none}
.card .cta.ghost{background:var(--bg2);color:var(--t)}
.pill{align-self:flex-start;background:var(--p-soft);color:var(--p);font-weight:700;font-size:.75rem;border-radius:20px;padding:2px 10px}
.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--t);color:#fff;padding:10px 18px;border-radius:12px;font-size:.9rem;z-index:50}
@media(max-width:560px){.sugg{grid-template-columns:1fr}}
.plan{padding:14px}.plan h3{margin:0 0 10px;font-size:1.05rem;line-height:1.3}
.q{margin-bottom:10px;font-size:.82rem}.q b{display:block;color:var(--t);font-size:.88rem}.q span{color:var(--m)}
.qbar{position:relative;height:16px;background:#e6e1ea;border-radius:9px;overflow:hidden;margin-top:4px}
.qbar i{position:absolute;inset:0 auto 0 0;background:var(--p);border-radius:9px}.qbar em{position:relative;display:block;text-align:center;font-style:normal;font-size:.7rem;line-height:16px;color:#333}
.q.full .qbar i{background:#c0392b}
.upg{display:block;text-align:center;background:var(--p);color:#fff!important;text-decoration:none;border-radius:10px;padding:8px;font-weight:700;font-size:.85rem;margin-top:4px}
.side-foot{overflow:auto}.hist{min-height:60px}
.hero .logo{display:inline-flex;align-items:center;gap:14px}.hero .logo img{width:64px;height:64px;border-radius:50%;box-shadow:0 4px 14px rgba(108,59,234,.25)}
.hero .logo span{font-size:1.9rem;letter-spacing:.14em;font-weight:700}.hero .logo b{color:var(--p)}
.chip{display:inline-flex;align-items:center;gap:6px;background:var(--p-soft);color:var(--p);border-radius:10px;padding:3px 10px;font-size:.82rem;margin-bottom:6px}
.chip button{border:0;background:none;color:var(--p);padding:0}.chip.bad{background:#fdecea;color:#b3261e}
.clip{border:0;background:none;font-size:1.2rem;margin-left:auto}
.upsell{background:linear-gradient(135deg,#f3eefe,#fbf7ef);border:1px solid #d9ccfb;border-radius:14px;padding:12px 16px}
.upsell a{display:inline-block;background:var(--p);color:#fff;border-radius:10px;padding:6px 14px;text-decoration:none;font-weight:700;margin-top:4px}
.hero img.herologo{width:min(560px,100%);border-radius:18px;box-shadow:0 10px 30px rgba(120,80,40,.12);display:block;margin:0 auto}.msg.bot .who img{border-radius:4px}
