*{box-sizing:border-box}
:root{--bg:#070b14;--panel:#0e1626;--panel2:#131e32;--line:#253452;--text:#edf3ff;--muted:#8796b5;--accent:#795cff;--accent2:#26d5ad;--user:#23365d}
html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;background:radial-gradient(900px 500px at 15% 0,#20294e 0,transparent 62%),radial-gradient(700px 500px at 90% 90%,#102b35 0,transparent 58%),var(--bg);color:var(--text)}
body{min-height:100vh}
button,input,textarea{font:inherit}.app-shell{min-height:100vh;display:flex;flex-direction:column}
.topbar{height:74px;display:flex;align-items:center;gap:22px;padding:0 24px;border-bottom:1px solid var(--line);background:rgba(7,11,20,.86);backdrop-filter:blur(12px);position:sticky;top:0;z-index:10}
.brand{display:flex;align-items:center;gap:11px;cursor:pointer;min-width:205px}.logo,.welcome-icon{display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),#4e91ff);color:#fff;font-weight:900;box-shadow:0 10px 35px #795cff30}.logo{width:42px;height:42px;border-radius:13px}.brand h1{font-size:18px;margin:0}.brand span{display:block;color:var(--muted);font-size:11px;margin-top:2px}.tabs{display:flex;align-items:center;gap:4px;flex:1;overflow:auto}.tab{border:0;background:transparent;color:#8392ae;padding:9px 11px;border-radius:10px;cursor:pointer;white-space:nowrap;transition:.18s}.tab:hover{color:#dce5fa;background:#121d31}.tab.active{color:#fff;background:#1b2844;box-shadow:inset 0 0 0 1px #314467}.top-actions{margin-left:auto}.status{font-size:12px;color:#b9c5dc;display:flex;align-items:center;gap:7px;white-space:nowrap}.status i{width:8px;height:8px;border-radius:50%;background:var(--accent2);box-shadow:0 0 12px #26d5ad99}.status.error{color:#ff9dab}.status.error i{background:#ff637b}
.content{flex:1;min-height:0}.panel{display:none;min-height:calc(100vh - 74px);animation:appear .22s ease}.panel.active{display:flex;flex-direction:column}@keyframes appear{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
.chat{flex:1;overflow:auto;padding:30px 18px 130px;scroll-behavior:smooth}.welcome{max-width:850px;margin:8vh auto 0;text-align:center}.welcome-icon{width:68px;height:68px;border-radius:21px;margin:auto;font-size:28px}.eyebrow{font-size:10px;letter-spacing:.16em;color:#8d80ff;margin:16px 0 8px}.welcome h2,.workspace-head h2{font-size:31px;letter-spacing:-.03em;margin:0 0 9px}.welcome>p:not(.eyebrow),.workspace-head p{color:var(--muted);line-height:1.6;max-width:680px;margin:0 auto 25px}.quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:720px;margin:auto}.quick-grid button{padding:15px;text-align:left;border:1px solid var(--line);background:linear-gradient(145deg,#121d31,#0e1728);color:var(--text);border-radius:15px;cursor:pointer;transition:.18s;box-shadow:0 12px 30px #00000018}.quick-grid button:hover{transform:translateY(-2px);border-color:#4b5e89;background:#17233a}.quick-grid b,.quick-grid span{display:block}.quick-grid span{font-size:11px;color:var(--muted);margin-top:4px}
.mensaje{display:flex;flex-direction:column;max-width:900px;margin:0 auto 18px;animation:appear .16s ease}.mensaje.usuario{align-items:flex-end}.mensaje.ia,.mensaje.pensando{align-items:flex-start}.nombre{font-size:10px;color:#73829e;margin:0 5px 6px}.burbuja{max-width:min(86%,820px);padding:14px 17px;border:1px solid var(--line);border-radius:17px;line-height:1.58;background:var(--panel2);box-shadow:0 8px 30px #00000018;overflow-wrap:anywhere}.usuario .burbuja{background:var(--user);border-color:#344b78}.pensando .burbuja{color:#8f9bb5;font-style:italic}.text-part+ .text-part{margin-top:12px}.text-part code{font:12px/1.4 Consolas,monospace;background:#0a1020;padding:2px 5px;border-radius:5px;color:#bcefdc}.meta{font-size:10px;color:#66758f;margin:6px}.meta a{color:#9e8fff;text-decoration:none}.code-block{margin:13px 0;border:1px solid #2a3b5d;border-radius:12px;overflow:hidden;background:#080e19}.code-head{display:flex;justify-content:space-between;align-items:center;padding:7px 10px;border-bottom:1px solid #24334f;background:#0d1525;color:#7788a7;font:10px Consolas,monospace}.code-head button,.actions button,.ghost{border:1px solid #30415f;background:#15213a;color:#bac8e1;border-radius:8px;padding:6px 9px;cursor:pointer}.code-head button:hover,.actions button:hover,.ghost:hover{background:#1d2b49}.code-block pre{margin:0;padding:14px;overflow:auto;color:#d3f6e4;font:12px/1.6 Consolas,Monaco,monospace;white-space:pre}.composer-wrap{position:fixed;bottom:0;left:0;right:0;padding:12px 20px 15px;background:linear-gradient(180deg,transparent,#070b14 25%);z-index:5}.composer{max-width:900px;margin:auto;display:flex;gap:8px;padding:7px;border:1px solid #2d3d5c;border-radius:17px;background:#10192aee;box-shadow:0 14px 45px #0008;backdrop-filter:blur(10px)}#entrada{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--text);padding:11px;font-size:14px}#entrada::placeholder{color:#687792}.tool,.send{width:42px;height:42px;border:0;border-radius:12px;cursor:pointer}.tool{background:#18243b;color:#dce6f9}.send{background:linear-gradient(135deg,var(--accent),#5b8fff);color:#fff;font-size:17px}.send:disabled{opacity:.45}.hint{text-align:center;color:#586883;font-size:9px;margin-top:7px}
.workspace-head{max-width:1050px;width:100%;margin:0 auto;padding:42px 22px 25px;display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.workspace-head h2{font-size:27px}.workspace-head p{margin:0;max-width:700px}.code-layout{max-width:1050px;width:calc(100% - 44px);margin:0 auto 40px;display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:14px}.editor-card,.side-card,.setting,.document-card,.performance{border:1px solid var(--line);background:linear-gradient(145deg,#101a2c,#0c1422);border-radius:16px;box-shadow:0 14px 40px #0000001c}.card-head{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line)}.card-head span b,.card-head small{display:block}.card-head small{font-size:10px;color:#70809e;margin-top:2px}.actions{display:flex;gap:5px}.actions .primary,.primary{background:linear-gradient(135deg,var(--accent),#4f8eff);border-color:transparent;color:white}.editor-card textarea{display:block;width:100%;height:390px;resize:vertical;min-height:220px;border:0;outline:0;padding:16px;background:#080e19;color:#d7f8e9;font:13px/1.65 Consolas,Monaco,monospace}.output{border-top:1px solid var(--line)}.output-title{padding:8px 12px;color:#7484a1;font-size:10px}.output pre{margin:0;min-height:90px;max-height:220px;overflow:auto;padding:12px;color:#c8d3e8;background:#070b13;font:12px/1.5 Consolas,monospace;white-space:pre-wrap}.side-card{padding:18px}.side-card h3{margin:0 0 12px}.side-card ul{padding-left:18px;color:#9aa9c3;font-size:12px;line-height:1.8}.wide{width:100%;margin-top:10px;padding:10px;border-radius:10px;border:1px solid var(--line);background:#17243d;color:#dce5f6;cursor:pointer}
.document-grid{max-width:1050px;width:calc(100% - 44px);margin:0 auto 40px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.document-card{padding:16px;display:flex;gap:11px;align-items:center}.doc-icon{font-size:24px}.document-card b,.document-card small{display:block}.document-card small{color:var(--muted);font-size:10px;margin-top:4px}.empty{grid-column:1/-1;text-align:center;color:#70809d;padding:50px;border:1px dashed #2c3b57;border-radius:16px}
.dropzone{max-width:800px;width:calc(100% - 44px);margin:30px auto;padding:70px 25px;text-align:center;border:1px dashed #40547b;border-radius:20px;background:#0d1728aa;transition:.2s}.dropzone.drag{border-color:#8876ff;background:#171e3a}.drop-icon{font-size:42px}.dropzone h3{margin:12px 0 5px}.dropzone p{color:var(--muted);font-size:12px;margin-bottom:18px}.word-status{text-align:center;color:#8d9bb5;font-size:12px;min-height:25px;padding:0 20px 30px}
.settings-grid{max-width:900px;width:calc(100% - 44px);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:12px}.setting{padding:18px;display:flex;justify-content:space-between;align-items:center}.setting b,.setting small{display:block}.setting small{color:var(--muted);font-size:10px;margin-top:4px}.setting>i{width:9px;height:9px;border-radius:50%;background:var(--accent2)}.switch input{display:none}.switch span{display:block;width:40px;height:22px;border-radius:20px;background:#273650;padding:3px;cursor:pointer}.switch span:after{content:"";display:block;width:16px;height:16px;border-radius:50%;background:#8796b2;transition:.15s}.switch input:checked+span{background:#5948bf}.switch input:checked+span:after{transform:translateX(18px);background:#fff}.performance{max-width:900px;width:calc(100% - 44px);margin:14px auto 40px;padding:16px;color:#aab8d0;font-size:12px}.performance span{display:block;color:#7585a2;margin-top:5px}.compact .topbar{height:64px}.compact .chat{padding-top:18px}.compact .burbuja{padding:10px 13px}.no-motion *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media(max-width:900px){.topbar{height:auto;min-height:70px;flex-wrap:wrap;padding:10px 14px;gap:8px}.brand{min-width:0}.tabs{order:3;flex-basis:100%;overflow:auto}.panel{min-height:calc(100vh - 115px)}.code-layout{grid-template-columns:1fr}.document-grid{grid-template-columns:1fr 1fr}.settings-grid{grid-template-columns:1fr}}
@media(max-width:600px){.brand span{display:none}.top-actions{margin-left:auto}.welcome{margin-top:5vh}.welcome h2{font-size:25px}.quick-grid{grid-template-columns:1fr}.chat{padding:18px 10px 125px}.burbuja{max-width:94%}.workspace-head{padding:28px 14px 18px;display:block}.workspace-head .ghost{margin-top:12px}.code-layout,.document-grid,.settings-grid{width:calc(100% - 24px)}.document-grid{grid-template-columns:1fr}.dropzone{width:calc(100% - 24px);padding:50px 18px}.composer-wrap{padding:9px 9px 12px}.hint{display:none}}

.imagen-ia{display:block;max-width:100%;border-radius:12px;margin-top:10px;background:#fff}
.descargar{display:inline-block;margin-top:6px;font-size:13px}

.chat-toggle{border:1px solid var(--line);background:#121d31;color:#dce5fa;border-radius:10px;width:38px;height:38px;cursor:pointer}
.chat-sidebar{position:fixed;z-index:20;left:0;top:74px;bottom:0;width:260px;background:#0a111eec;border-right:1px solid var(--line);backdrop-filter:blur(14px);transform:translateX(-102%);transition:transform .2s ease;padding:14px;overflow:auto;box-shadow:20px 0 60px #0005}
.chat-sidebar.open{transform:none}
.chat-sidebar-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.chat-sidebar-head button{border:0;background:#1d2a45;color:#fff;border-radius:9px;width:34px;height:34px;cursor:pointer}
.chat-item{display:flex;gap:6px;align-items:center;margin:4px 0}
.chat-item button{flex:1;text-align:left;border:1px solid transparent;background:transparent;color:#aebbd2;padding:10px;border-radius:10px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chat-item button:hover,.chat-item.active button{background:#17243b;color:#fff;border-color:#2e4165}
.chat-item .delete-chat{flex:0 0 32px;text-align:center;color:#7383a0;padding:8px}
.chat-mobile-info{color:#5f6f8b;font-size:9px;line-height:1.5;margin-top:14px;padding:8px}
.chat-open .content{margin-left:260px}
.chat-open .composer-wrap{left:260px}
@media(max-width:900px){
 .chat-sidebar{top:115px}.chat-open .content{margin-left:0}.chat-open .composer-wrap{left:0}
}
@media(max-width:600px){
 .chat-sidebar{width:88vw;top:112px}.chat-toggle{width:36px;height:36px}.chat-item button{padding:12px}
}
