:root{
  --ice:#eaf7fa;--lav:#f3f2fc;--lilac:#f8edfc;--sky:#e4f2fc;--white:#fff;
  --ink:#35384b;--muted:#7b8293;--accent:#8896be;--border:rgba(122,136,176,.15);--card:rgba(255,255,255,.78);
  --shadow:0 16px 64px rgba(96,119,160,.075);--round:24px;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}html{height:100%}body{margin:0;min-height:100%;color:var(--ink);background:#f9fbfe;font-size:14px}button,textarea,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,textarea:focus-visible,input:focus-visible{outline:2px solid #8aa3d7;outline-offset:3px}img{max-width:100%;display:block}p{line-height:1.7}a{color:#6378ae}em{font-family:Georgia,serif;font-weight:400;color:#888ca9} .eyebrow{font-size:10px;letter-spacing:2px;color:#8f9bb7;font-weight:750}
.aurora{position:fixed;inset:-25%;z-index:-1;overflow:hidden;pointer-events:none;filter:blur(48px);transition:filter 2s ease;opacity:.76}.aurora>div{position:absolute;border-radius:50%;width:80%;height:80%;mix-blend-mode:multiply;animation:auroraDrift 25s ease-in-out infinite alternate;will-change:transform}.aurora__one{left:-15%;top:-8%;background:radial-gradient(ellipse,#e5f6f9 4%,transparent 70%)}.aurora__two{right:-14%;top:10%;animation-delay:-8s!important;background:radial-gradient(ellipse,#f6e8fb 6%,transparent 70%)}.aurora__three{left:25%;bottom:-19%;animation-delay:-14s!important;background:radial-gradient(ellipse,#e3effe 8%,transparent 70%)}body[data-mood="thinking"] .aurora{filter:blur(34px)}body[data-mood="care"] .aurora__two{background:radial-gradient(ellipse,#e9e9ff 10%,transparent 70%)}body[data-mood="clarity"] .aurora__three{background:radial-gradient(ellipse,#dceffd 9%,transparent 70%)}@keyframes auroraDrift{0%{transform:translate(-2%,-2%) scale(.97) rotate(0deg)}45%{transform:translate(12%,7%) scale(1.08) rotate(13deg)}100%{transform:translate(-5%,12%) scale(1.02) rotate(-8deg)}}
.app-shell{min-height:100vh;max-width:1640px;margin:auto;background:rgba(255,255,255,.25);backdrop-filter:blur(2px)}.topbar{height:83px;padding:0 35px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.63)}.brand{display:flex;align-items:center;gap:11px}.brand img{height:43px;width:43px;border-radius:14px;object-fit:cover;box-shadow:0 4px 14px #bacadd45}.brand strong{display:block;font-family:Georgia,serif;font-size:28px;letter-spacing:-1px;font-weight:500;line-height:1}.brand small{display:block;margin-top:4px;font-size:10px;letter-spacing:.7px;color:#9496a8}.brand-dot{color:#a2a6cf}.header-actions{display:flex;align-items:center;gap:17px}.privacy-label{font-size:11px;color:#818ba3;display:flex;gap:7px;align-items:center}.privacy-dot{height:7px;width:7px;background:#99c7ad;border-radius:50%}.circle-btn{border:1px solid var(--border);background:#fff9;color:#7d85a0;border-radius:50%;width:34px;height:34px;font-size:17px}.help-btn{border:1px solid #e4e6ed;background:#fff9;color:#747b94;padding:10px 13px;border-radius:99px;font-size:11px;font-weight:700}
.workspace{display:grid;grid-template-columns:246px minmax(420px,1fr) 270px;min-height:calc(100vh - 83px);height:calc(100dvh - 83px);max-height:1050px}.left-rail{border-right:1px solid var(--border);padding:35px 18px;display:flex;flex-direction:column;min-height:0;overflow-y:auto;background:rgba(255,255,255,.38)}.rail-overline{padding:0 11px;font-size:10px;letter-spacing:1.8px;font-weight:700;color:#9da6bb}.rail-new{margin-top:17px;background:linear-gradient(110deg,#eef7fa,#f2eefa);border:1px solid #dfe8f4;color:#647392;text-align:left;border-radius:12px;padding:12px 13px;font-weight:650;font-size:12px;display:flex;align-items:center;gap:9px}.rail-new span{font-size:18px}.rail-sep{height:1px;background:var(--border);margin:25px 10px 21px}.rail-heading{color:#a1a6b5;letter-spacing:.4px;padding:0 11px;font-size:11px;margin-bottom:12px}.topic-nav{display:grid;gap:3px}.topic-button{display:flex;align-items:center;gap:12px;width:100%;border:0;background:transparent;text-align:left;color:#777f98;padding:11px 9px;border-radius:11px;font-size:12px;transition:background .3s}.topic-button:hover,.topic-button.active{background:#f0f2fbea;color:#4f5e80}.topic-icon{display:grid;place-items:center;width:27px;height:27px;color:#9aa7c7;font-size:19px;background:#fff8;border-radius:9px}.rail-footer{margin:auto 8px 0;padding:21px 16px 16px;border-radius:18px;background:linear-gradient(130deg,#eef8fa,#f6effa);border:1px solid #ebebf4}.tiny-flower{color:#b8acd8;font-size:27px}.rail-footer b{font-family:Georgia,serif;font-weight:400;font-size:16px;line-height:1.4}.rail-footer p{font-size:11px;color:#9797aa;margin-bottom:0}
.chat-column{display:flex;flex-direction:column;min-height:0;min-width:0;background:rgba(255,255,255,.40)}.chat-toolbar{height:65px;flex-shrink:0;border-bottom:1px solid var(--border);padding:12px 29px;display:flex;align-items:center;justify-content:space-between}.session-label{display:flex;align-items:center;gap:9px}.status-pulse{width:8px;height:8px;background:#b6c8e0;border-radius:50%;box-shadow:0 0 0 5px #eef4fa}.session-label strong{display:block;font-size:12px;font-weight:680}.session-label small{display:block;font-size:10px;color:#a3a8b4;margin-top:3px}.chat-tools{display:flex;gap:5px}.small-quiet-btn{border:0;background:transparent;color:#9299ac;font-size:11px;padding:9px;border-radius:6px}.small-quiet-btn:hover{background:#eff2fb}
.chat-stream{overflow-y:auto;overscroll-behavior:contain;padding:34px 30px 14px;flex:1;scrollbar-width:thin;scrollbar-color:#d9e0ee transparent}.welcome-card{border:1px solid #ebedf5;background:rgba(255,255,255,.66);border-radius:27px;max-width:750px;margin:15px auto 32px;box-shadow:0 18px 70px #b3bddd18;overflow:hidden}.hero-aurora{height:145px;position:relative;overflow:hidden;background:linear-gradient(105deg,#eaf7fa 2%,#f5f0fc 49%,#f8edfc 69%,#e4f2fc)}.hero-aurora:before{content:"";position:absolute;inset:-70px;background:radial-gradient(ellipse at 30% 20%,#ffffffdd,transparent 42%),radial-gradient(ellipse at 80% 80%,#dadcff77,transparent 42%);animation:auroraDrift 18s ease-in-out infinite alternate}.hero-aurora svg{position:relative;z-index:1;width:100%;height:100%;animation:floatSmall 15s ease-in-out infinite alternate}.glow-dot{position:absolute;z-index:2;border-radius:50%;box-shadow:0 0 30px #c6cbed99}.glow-one{left:30%;top:22%;height:6px;width:6px;background:#fff}.glow-two{left:74%;top:70%;height:5px;width:5px;background:#fff}.welcome-copy{padding:34px 37px 31px}.welcome-copy h1{font-family:Georgia,serif;font-size:clamp(29px,3vw,44px);font-weight:400;letter-spacing:-1.3px;line-height:1.18;margin:18px 0 11px}.welcome-copy p{color:#868ba0;font-size:13px;max-width:535px}.welcome-quick{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.quick-chip{border:1px solid #dfe7f3;padding:10px 12px;background:#f8faffc9;border-radius:999px;color:#7181a1;font-size:11px}.quick-chip:hover{background:#eff3ff}.welcome-note{margin-top:26px;font-size:10px;color:#a4a7b6;line-height:1.6}
.message{width:100%;max-width:740px;margin:0 auto 21px;display:flex;gap:10px;align-items:flex-start}.message--user{justify-content:flex-end}.message-avatar{width:35px;height:35px;object-fit:cover;border-radius:11px;flex-shrink:0;box-shadow:0 4px 12px #d9e3ed}.message-body{max-width:min(83%,590px)}.message--user .message-body{background:#eaf1fa;border:1px solid #e3eafa;padding:14px 17px;border-radius:18px 18px 5px 18px;color:#53617d}.message--assistant .message-body{background:rgba(255,255,255,.85);border:1px solid #eaecf4;border-radius:5px 18px 18px 18px;padding:17px 19px;box-shadow:0 8px 32px #b7c9df11}.message-kicker{font-size:10px;letter-spacing:1px;color:#a4a7bf;margin:0 0 8px;font-weight:700}.message p{font-size:13px;line-height:1.8;white-space:pre-wrap;margin:0 0 10px;overflow-wrap:anywhere}.message p:last-child{margin-bottom:0}.message-question{font-family:Georgia,serif;font-size:16px!important;color:#616a88;margin-top:11px!important}.message-action{padding:12px 13px;border-radius:10px;background:linear-gradient(115deg,#f0f7fa,#f8f2fb);color:#646d89;font-size:12px;line-height:1.7;margin:12px 0}.message-note{font-size:10px;color:#a4a5b3;line-height:1.55;margin-top:12px}.message-controls{display:flex;gap:7px;align-items:center;margin-top:10px}.message-controls button{font-size:10px;color:#9299af;background:transparent;border:0;padding:4px 8px;border-radius:7px}.message-controls button:hover{background:#f4f5fa}.message--safety .message-body{border-color:#e8d8e4;background:#fffafe}.message--thinking .message-body{padding:10px 17px;display:flex;gap:5px}.typing{height:5px;width:5px;border-radius:50%;background:#a6b1cd;animation:typing 1s ease-in-out infinite alternate}.typing:nth-child(2){animation-delay:.2s}.typing:nth-child(3){animation-delay:.4s}@keyframes typing{to{transform:translateY(-5px);opacity:.4}}
.composer-area{padding:13px 26px 21px;background:linear-gradient(0deg,#fcfdff 77%,#fcfdffe0);flex-shrink:0}.composer{display:flex;align-items:flex-end;border:1px solid #e1e7f2;border-radius:20px;background:#fff;box-shadow:0 11px 35px #aebcd51e;min-height:57px;padding:7px;gap:6px}.composer textarea{resize:none;border:0;outline:none!important;background:transparent;flex:1;max-height:130px;min-height:40px;padding:10px 12px;line-height:1.5;color:var(--ink);font-size:13px}.composer textarea::placeholder{color:#a3aabc}.composer-buttons{display:flex;gap:5px;align-items:center}.icon-btn{border:0;background:#f5f6fb;color:#8493b4;border-radius:13px;width:41px;height:41px;font-size:22px}.send-btn{border:0;width:43px;height:43px;border-radius:13px;color:white;background:linear-gradient(130deg,#9fb5d7,#a8a1ca);font-size:16px}.composer-caption{display:flex;justify-content:space-between;gap:10px;color:#acafbb;font-size:9px;padding:10px 6px 0}.active-topic{display:flex;gap:7px;align-items:center;background:#f1f2fbe8;color:#7b80a0;border-radius:20px;padding:6px 9px;font-size:10px;margin-bottom:8px;width:max-content}.active-topic button{border:0;background:transparent;color:#8e8faa;font-size:15px}
.guide-rail{padding:28px 15px 24px;border-left:1px solid var(--border);background:rgba(255,255,255,.40);overflow-y:auto}.guide-card{border:1px solid var(--border);border-radius:23px;background:linear-gradient(155deg,#f8fcffdc,#fcf8ffdb);padding:20px 15px 19px;text-align:center;overflow:hidden;box-shadow:var(--shadow)}.guide-heading{display:flex;justify-content:space-between;align-items:center}.guide-dot{width:7px;height:7px;background:#b4cbd9;border-radius:50%}.mascot-stage{height:220px;position:relative;display:grid;place-items:center}.mascot-ambient{position:absolute;width:210px;height:200px;border-radius:50%;background:radial-gradient(circle,#dfeeffdd,#eee7f499,transparent 71%);filter:blur(18px);animation:breath 8s ease-in-out infinite}.mascot-aura{position:absolute;height:192px;width:192px;border-radius:42px;border:1px solid #e7e5f0;transform:rotate(10deg);animation:auraTurn 30s linear infinite}.mascot{width:178px;height:178px;object-fit:cover;border-radius:22px;position:relative;z-index:1;box-shadow:0 20px 45px #a7b7d133;animation:mascotFloat 7s ease-in-out infinite}.guide-card h2{font-family:Georgia,serif;font-size:24px;font-weight:400;line-height:1.2;margin:1px 0 6px}.guide-card>p{font-size:11px;color:#9199ae;line-height:1.6;max-width:205px;margin:10px auto 20px}.mood-status{border-top:1px solid #e6e8f1;padding-top:15px;display:flex;align-items:center;justify-content:center;gap:9px;color:#979eb3;font-size:10px}.mood-bars{display:flex;gap:3px;align-items:center;height:19px}.mood-bars i{height:6px;width:3px;border-radius:4px;background:#9db1d0;animation:sound 1.8s ease-in-out infinite alternate}.mood-bars i:nth-child(2){animation-delay:.3s}.mood-bars i:nth-child(3){animation-delay:.8s}.mood-bars i:nth-child(4){animation-delay:1.2s}.mood-bars i:nth-child(5){animation-delay:.5s}body[data-mood="thinking"] .mood-bars i{animation-duration:.55s}body[data-mood="care"] .mascot-ambient{background:radial-gradient(circle,#eadbfa,#e0ebff55,transparent 70%)}.insight-card{margin-top:15px;background:rgba(255,255,255,.75);border:1px solid var(--border);border-radius:18px;padding:19px 16px}.insight-title{color:#9e99bb;font-size:10px;letter-spacing:1.5px}.insight-card p{font-size:12px;color:#8a91a6;line-height:1.8}.mini-btn{background:linear-gradient(100deg,#eef7fb,#f4effa);padding:10px;border:1px solid #e7e9f3;color:#7e86a6;border-radius:10px;font-size:11px;width:100%}.rail-caution{font-size:10px;color:#a9abb9;margin:17px 9px;line-height:1.7}@keyframes breath{50%{transform:scale(1.14);opacity:.58}}@keyframes auraTurn{to{transform:rotate(370deg)}}@keyframes mascotFloat{50%{transform:translateY(-6px)}}@keyframes sound{to{height:15px;opacity:.5}}@keyframes floatSmall{to{transform:translate(8px,-2px)}}
dialog{width:min(95vw,610px);max-height:90dvh;border:1px solid #e3e5f1;border-radius:23px;padding:24px;background:linear-gradient(140deg,#fff,#f8faff);color:var(--ink);box-shadow:0 36px 100px #6e7d9966;overflow:auto}dialog::backdrop{background:#333d5980;backdrop-filter:blur(4px)}.dialog-header{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:17px}.dialog-header strong{font:normal 23px Georgia,serif}.dialog-header button{font-size:24px;border:0;background:transparent;color:#818aa3}.dialog-section{font-size:13px;color:#68738a;line-height:1.7}.dialog-section p{margin:10px 0}.dialog-section h3{font-size:14px;color:#525d79}.dialog-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:17px}.dialog-actions button,.dialog-actions a{border:1px solid #e2e7f2;background:white;padding:10px 13px;border-radius:11px;color:#6e7997;text-decoration:none;font-size:12px}.dialog-actions .primary{background:#8998c4;color:white}.dialog-section label{display:flex;align-items:flex-start;gap:9px;margin:12px 0}.dialog-section input{margin-top:5px;accent-color:#8c9dc2}.assessment-note{background:#f1f6fa;padding:12px;border-radius:10px;margin:14px 0}.scale-options{display:grid;gap:9px}.scale-options button{background:white;border:1px solid #e4e7ef;border-radius:10px;padding:11px;text-align:left;color:#717c94}.scale-options button:hover,.scale-options button.selected{background:#edf4fe;border-color:#acbbd8}.assessment-stats{display:grid;gap:13px}.scale-track{height:7px;border-radius:10px;background:#e9eef6;overflow:hidden}.scale-track span{display:block;background:#adb9da;height:100%;border-radius:10px}.question-footnote{font-size:10px;color:#9da3b4}
@media(max-width:1260px){.workspace{grid-template-columns:208px minmax(360px,1fr) 234px}.left-rail{padding:26px 12px}.guide-rail{padding:22px 9px}.mascot-stage{height:198px}.mascot{width:157px;height:157px}}
@media(max-width:1000px){.workspace{grid-template-columns:198px minmax(0,1fr)}.guide-rail{display:none}.chat-stream{padding:26px 20px 10px}}
@media(max-width:670px){.topbar{height:68px;padding:0 15px}.brand img{width:36px;height:36px}.brand strong{font-size:24px}.brand small{font-size:9px}.privacy-label span:last-child{display:none}.header-actions{gap:8px}.help-btn{padding:9px;font-size:10px}.workspace{height:calc(100dvh - 68px);grid-template-columns:1fr}.left-rail{border:0;border-bottom:1px solid var(--border);padding:8px 10px;flex-direction:row;min-height:0;overflow-x:auto;overflow-y:hidden;background:#fafcffcc;gap:8px;align-items:center}.rail-overline,.rail-sep,.rail-heading,.rail-footer{display:none}.rail-new{margin:0;flex-shrink:0;white-space:nowrap;font-size:11px;padding:8px 11px}.topic-nav{display:flex;gap:5px;width:max-content}.topic-button{white-space:nowrap;width:auto;padding:8px;gap:4px;font-size:10px}.topic-icon{width:20px;height:20px;font-size:15px}.chat-column{height:auto;min-height:0}.chat-toolbar{height:54px;padding:10px 15px}.chat-tools{gap:0}.small-quiet-btn{font-size:10px;padding:7px}.chat-stream{padding:12px 13px 8px}.welcome-card{margin:8px auto 22px;border-radius:22px}.hero-aurora{height:108px}.welcome-copy{padding:23px 20px 21px}.welcome-copy h1{font-size:30px;margin:13px 0}.welcome-copy p{font-size:12px}.welcome-note{font-size:9px;margin-top:18px}.quick-chip{font-size:10px}.message{gap:7px;margin-bottom:14px}.message-avatar{width:30px;height:30px;border-radius:9px}.message-body{max-width:88%}.message--user .message-body,.message--assistant .message-body{padding:12px 13px}.message p{font-size:12px;line-height:1.75}.message-question{font-size:15px!important}.composer-area{padding:9px 12px 12px}.composer-caption{font-size:9px;gap:6px}.composer-caption span:last-child{display:none}.composer textarea{font-size:13px}.icon-btn,.send-btn{height:39px;width:39px}.composer{min-height:54px}}
@media(max-height:540px){.rail-footer{display:none}.guide-rail{display:none}.workspace{grid-template-columns:205px 1fr}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.aurora,.topbar,.left-rail,.guide-rail,.chat-toolbar,.composer-area{display:none!important}.workspace{display:block!important;height:auto!important}.chat-stream{overflow:visible!important}.message{break-inside:avoid}body{background:white}}
/* HTML hidden must override component display declarations. */
[hidden]{display:none!important}
@media(max-width:670px){.workspace{grid-template-rows:55px minmax(0,1fr)}.left-rail{max-height:55px}}

/* VERIDIA V0.3 - Aurora Fluida vocal, sin modificar identidad cromática ni búho original */
.mascot-portrait{width:178px;height:178px;position:relative;z-index:2;border-radius:22px;animation:mascotFloat 7s ease-in-out infinite;box-shadow:0 20px 45px #a7b7d133;overflow:hidden}
.mascot-portrait .mascot{display:block;position:absolute;inset:0;width:100%;height:100%;animation:none;box-shadow:none;border-radius:inherit}
.mascot-eyelids{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;opacity:0;z-index:2;animation:owlBlink 7.5s linear infinite}
@keyframes owlBlink{0%,31%,31.8%,74%,74.8%,100%{opacity:0}31.25%,31.55%,74.25%,74.55%{opacity:1}}
.mascot-stage[data-voice="listening"] .mascot-portrait{filter:drop-shadow(0 0 10px #b7d4e6)}
.mascot-stage[data-voice="speaking"] .mascot-portrait{filter:drop-shadow(0 0 14px #d0beeb)}
.mascot-stage[data-voice="thinking"] .mascot-ambient{animation-duration:3.2s}
.voice-signal{display:flex;gap:14px;align-items:center;max-width:100%;min-height:46px;padding:6px 12px 9px;border-radius:15px 15px 8px 8px;background:linear-gradient(115deg,#eaf7faf0,#f3f2fcf5,#f8edfcf0,#e4f2fcf2);border:1px solid #e5e8f2;margin-bottom:9px;box-shadow:0 5px 20px #c2cde426}
.voice-indicator{display:flex;align-items:center;gap:8px;min-width:145px;color:#687b9b;font-size:11px;font-weight:600}
.voice-pulse{width:8px;height:8px;flex:0 0 auto;background:#a0c6d2;border-radius:50%;box-shadow:0 0 0 4px #d8ebf380;animation:voiceDot 1.8s ease-in-out infinite}
.voice-signal[data-voice="speaking"] .voice-pulse{background:#b0a5d1;box-shadow:0 0 0 4px #ece4fa}
.voice-signal[data-voice="thinking"] .voice-pulse{background:#acb8d9;box-shadow:0 0 0 4px #e4e9f7}
.voice-bars{flex:1;min-width:55px;height:32px;display:flex;align-items:center;justify-content:center;gap:3px;overflow:hidden}
.voice-bars i{display:block;width:3px;min-width:2px;max-height:32px;border-radius:99px;height:5px;background:linear-gradient(#a1bdde,#baa6ce);opacity:.88;transition:height .065s ease-out}
.voice-signal[data-voice="speaking"] .voice-bars i{animation:voiceSpeaking .75s ease-in-out infinite alternate}
.voice-signal[data-voice="speaking"] .voice-bars i:nth-child(3n){animation-delay:-.22s}
.voice-signal[data-voice="speaking"] .voice-bars i:nth-child(5n){animation-delay:-.5s}
.voice-signal[data-voice="thinking"] .voice-bars i{animation:voiceThinking 1.4s ease-in-out infinite alternate}
.voice-signal[data-voice="thinking"] .voice-bars i:nth-child(3n){animation-delay:-.9s}
.stop-voice{border:1px solid #d9e2ef;border-radius:10px;background:#ffffffb8;color:#8793ad;padding:7px 10px;white-space:nowrap;font-size:11px}
@keyframes voiceSpeaking{0%{height:5px}45%{height:25px}100%{height:10px}}
@keyframes voiceThinking{0%{height:5px}100%{height:13px}}
@keyframes voiceDot{50%{box-shadow:0 0 0 7px #d8ebf312}}
@media(max-width:1260px){.mascot-portrait{height:157px;width:157px}}
@media(max-width:670px){.voice-signal{gap:7px;padding:5px 9px;margin-bottom:7px}.voice-indicator{font-size:10px;min-width:125px}.voice-bars{gap:2px}.voice-bars i:nth-child(2n){display:none}.stop-voice{font-size:10px;padding:6px}.mascot-portrait{height:157px;width:157px}}
@media(prefers-reduced-motion:reduce){.mascot-eyelids{animation:none!important;opacity:0!important}.voice-bars i{animation:none!important;transition:none!important}.voice-pulse{animation:none!important}}
