
:root{--bg:#f7f7f9;--surface:#fff;--ink:#292731;--muted:#97939f;--line:#e9e7ed;--purple:#7962bd;--purple-dark:#624a9e;--purple-light:#f0ebf8;--green:#68a58d;--radius:14px;font-family:Inter,'Segoe UI',Arial,sans-serif;color:var(--ink);font-size:14px;font-synthesis:none}
*{box-sizing:border-box}
body{margin:0;background:var(--bg)}
button,input,textarea,select{font:inherit}
button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
button{color:inherit}
a{color:inherit;text-decoration:none}
button:disabled{cursor:wait;opacity:.55}
button,input,textarea,select{outline:none}
button:focus-visible,a:focus-visible{outline:3px solid #b9a5e4;outline-offset:3px}
input:focus,textarea:focus,select:focus{border-color:var(--purple)!important;box-shadow:0 0 0 3px #7962bd12}
button{border:0;background:none}
input,textarea,select{color:var(--ink);border:1px solid var(--line);border-radius:9px;background:#fff;min-height:43px;padding:10px 12px;width:100%;transition:border-color .18s}
textarea{resize:vertical;line-height:1.65}
label{display:block;font-size:12px;font-weight:550;margin:17px 0 8px;color:#77717f}
select{cursor:pointer}
p{line-height:1.7}
h1,h2,p{margin-top:0}
h1,h2{font-weight:500;letter-spacing:-1.3px}
h1{font-size:34px;line-height:1.3}
h2{font-size:25px}
.hidden{display:none!important}
.muted{color:var(--muted);font-size:11px}
.error{color:#b35165;min-height:0;font-size:12px;margin:10px 0;line-height:1.6}
.error:empty{display:none}
.eyebrow{font-size:10px;letter-spacing:2px;color:var(--muted);font-weight:600}
.primary{background:var(--purple);color:#fff;min-height:47px;padding:13px 18px;border-radius:10px;display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;font-weight:500;transition:background .2s}
.primary:hover{background:var(--purple-dark)}
.secondary{background:white;border:1px solid var(--line);border-radius:9px;padding:10px 14px;font-size:12px}
.secondary:hover{border-color:#c1b0db}
.text-button{padding:18px 0;color:var(--purple);font-size:12px}
.icon-button{display:inline-flex;align-items:center;justify-content:center;min-width:34px;min-height:34px;border-radius:8px;font-size:23px;color:#86818e}
.icon-button:hover{background:var(--purple-light);color:var(--purple)}
.status-dot{width:6px;height:6px;background:var(--green);display:inline-block;border-radius:50%}
.brand{display:flex;align-items:center;gap:10px;font-size:18px;letter-spacing:4px;font-weight:650}
.brand-symbol{font-family:Georgia,serif;font-size:38px;letter-spacing:-4px;color:var(--purple);font-weight:500;line-height:1}
.brand-symbol span{color:#baa7d9}
.version{border:1px solid var(--line);border-radius:4px;font-size:9px;letter-spacing:0;padding:2px 4px;color:var(--muted);font-weight:400;margin-left:0}
.login-screen{min-height:100dvh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:radial-gradient(ellipse at 72% 50%,#e9e4f253,transparent 60%),#f7f7f9}
.login-card{width:380px;margin:60px 24px;position:relative;z-index:1}
.login-card .brand{margin-bottom:55px}
.login-card .eyebrow{margin-bottom:22px}
.login-card h1{font-size:43px;letter-spacing:-1.8px;line-height:1.22}
.login-card h1 em{font-style:normal;color:var(--purple)}
.login-copy{color:#8e8799;margin:23px 0 30px}
.login-card input{background:#ffffffbf}
.login-card .primary{margin-top:23px}
.password-field{position:relative}
.password-field input{padding-right:45px}
.password-field button{position:absolute;right:4px;top:4px;height:36px;width:36px;color:var(--muted)}
.login-foot{font-size:10px;color:var(--muted);margin-top:35px;display:flex;align-items:center;gap:7px}
.login-signature{position:absolute;bottom:28px;left:35px;font-size:9px;letter-spacing:3px;color:#b0a8ba}
.login-atmosphere{position:absolute;left:71%;top:48%;width:700px;height:700px;transform:translate(-50%,-50%);opacity:.4}
.orbit{position:absolute;border:1px solid #cfc6df;border-radius:50%;inset:0}
.orbit-two{inset:80px}
.orbit-three{inset:165px}
.orbital-point{position:absolute;width:15px;height:15px;border-radius:50%;background:#b9a6d9;left:72px;top:180px}
.app{display:grid;grid-template-columns:236px minmax(0,1fr) 268px;min-height:100dvh;height:100dvh;overflow:hidden}
.sidebar{border-right:1px solid var(--line);background:#f3f2f6;padding:30px 18px 0;display:flex;flex-direction:column;min-height:0}
.sidebar .brand{padding:0 14px}
.new-conversation{display:flex;align-items:center;gap:9px;font-size:11px;font-weight:550;border:1px solid #ddd6e8;background:#fbfaff;border-radius:9px;padding:12px 10px;margin:31px 3px 30px;color:#75628e;white-space:nowrap}
.new-conversation>span:first-child{font-size:19px;line-height:1}
.shortcut{margin-left:auto;border:1px solid #dfd9e8;border-radius:3px;font-size:8px;padding:1px 4px;color:#b0a3c2}
.nav-label{font-size:9px;letter-spacing:1.7px;color:#a39cac;padding:0 13px;margin-bottom:13px}
.main-nav{display:flex;flex-direction:column;gap:5px}
.nav-item{display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:8px;color:#898290;text-align:left;font-size:12px}
.nav-item:hover{background:#ece9f2}
.nav-item.active{color:var(--purple-dark);background:#e8e2f2;font-weight:550}
.nav-icon{font-size:20px;width:20px;line-height:1}
.nav-active-dot{margin-left:auto;width:5px;height:5px;background:var(--purple);border-radius:50%}
.nav-item:not(.active) .nav-active-dot{display:none}
.count{font-size:9px;border-radius:4px;background:#e9e6ed;padding:3px 5px;margin-left:auto}
.context-label{margin-top:36px;display:flex;justify-content:space-between}
.context-label>span{font-size:8px;letter-spacing:0}
.context-nav{display:flex;flex-direction:column;gap:5px}
.context-item{display:flex;align-items:center;gap:12px;padding:10px 13px;text-align:left;font-size:10px;letter-spacing:.6px;color:#81788d;border-radius:8px}
.context-item:hover,.context-item.selected{background:#eae5f1}
.context-dot{width:7px;height:7px;border-radius:50%;background:#b095c6;flex-shrink:0}
.context-dot.regal{background:#acb99b}
.context-dot.north-lume{background:#a38ac1}
.context-dot.personal{background:#85aabb}
.context-dot.ideas{background:#d0b37c}
.context-item small{font-size:10px;margin-left:auto;color:#aba1b6}
.sidebar-spacer{flex:1;min-height:30px}
.nexo-note{border:1px solid #e0dbe8;border-radius:9px;padding:15px 12px;margin:0 3px 25px}
.nexo-note>div{display:flex;align-items:center;gap:6px;font-size:9px;font-weight:600;letter-spacing:1px;color:#857298}
.nexo-note>div>span:last-child{font-size:6px;letter-spacing:.8px;margin-left:auto;font-weight:400;color:#ada2ba}
.nexo-dot{width:5px;height:5px;background:#9c89b8;border-radius:50%}
.nexo-note p{font-size:11px;line-height:1.9;margin:11px 0 0;color:#a097ac}
.account-button{display:flex;align-items:center;text-align:left;gap:10px;border-top:1px solid var(--line);padding:18px 10px;width:100%;font-size:11px}
.avatar{border:1px solid #d7cede;background:#e8e1ee;display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;color:#8b729f;font-size:10px}
.account-button small{display:block;font-size:9px;color:var(--muted);padding-top:4px}
.account-button>span:last-child{margin-left:auto;color:#a297ae;font-size:15px}
.workspace{display:flex;flex-direction:column;min-height:0;min-width:0;background:#fafafb}
.topbar{height:75px;flex-shrink:0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 34px}
.breadcrumb{display:flex;gap:13px;align-items:center;font-size:11px}
.breadcrumb-root{color:#a39ba9}
.slash{color:#cbc4d0;font-size:15px}
.breadcrumb strong{font-weight:500;color:#6f657d}
.topbar-right{display:flex;align-items:center;gap:23px}
.connection-status{display:flex;align-items:center;gap:7px;font-size:9px;color:#9a939f}
.view{flex:1;min-height:0}
.chat-view{display:flex;flex-direction:column;padding:0 42px}
.conversation-heading{display:flex;justify-content:space-between;padding:30px 0 0;gap:12px;flex-shrink:0}
.conversation-heading .eyebrow{font-size:8px;letter-spacing:1.6px}
.conversation-heading>span:last-child{font-size:9px;color:#aaa2af}
.thread{overflow-y:auto;flex:1;scrollbar-width:thin;scrollbar-color:#ddd4e7 transparent;padding:25px 0;overscroll-behavior:contain}
.welcome{max-width:650px;margin:clamp(10px,4vh,60px) auto 10px}
.welcome-emblem{font-size:36px;color:#967cb9;margin-bottom:22px;line-height:1}
.welcome h1{font-size:36px;line-height:1.36;letter-spacing:-1.2px;margin-bottom:18px}
.welcome h1 span{color:#9c85b7}
.welcome p{color:#a099a6;font-size:12px;line-height:1.85;max-width:355px;margin-bottom:33px}
.suggestions{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.suggestion{text-align:left;border:1px solid var(--line);background:linear-gradient(130deg,#fff,#f8f6fb);padding:15px;border-radius:11px;transition:border-color .2s,transform .2s;display:flex;flex-direction:column;min-height:114px;gap:10px}
.suggestion:hover{border-color:#c3b1d9;transform:translateY(-2px)}
.suggestion>span{color:#a492ba;font-size:17px}
.suggestion strong{font-size:11px;font-weight:500;color:#7f728d}
.suggestion small{font-size:10px;line-height:1.6;color:#a89daf}
.conversation-message{max-width:760px;margin:0 auto 27px;animation:arrive .2s ease-out}
.message-meta{display:flex;align-items:center;gap:9px;margin-bottom:10px;font-size:9px;color:#aaa0b5}
.message-meta strong{font-size:10px;letter-spacing:1px;font-weight:600;color:#93819f}
.message-meta time{margin-left:auto;font-size:8px}
.message-icon{width:23px;height:23px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;background:#eee8f5;color:#9d83b7;font-size:13px}
.message-content{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.95;color:#7f758b;padding-left:32px}
.user-message .message-content{color:#5f556b;background:#f0edf5;border:1px solid #e7e0ef;border-radius:12px;padding:14px 17px;margin-left:32px}
.message-cards{display:flex;gap:8px;flex-wrap:wrap;margin:11px 0 0 32px}
.mini-card{background:#fff;border:1px solid #e4dceb;padding:9px 12px;border-radius:8px;text-align:left;max-width:100%;display:flex;align-items:center;gap:8px}
.mini-card>span:first-child{color:var(--purple)}
.mini-card strong{font-size:10px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:240px}
.mini-card small{font-size:8px;color:#a292ae;margin-left:3px}
.mini-card:hover{border-color:#bda4d4}
.composer-region{flex-shrink:0;padding-bottom:23px;padding-top:12px;background:linear-gradient(0deg,#fafafb 90%,transparent)}
.context-toolbar{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-size:9px;color:#9d91aa}
.context-toolbar label{display:flex;gap:6px;align-items:center;margin:0;font-size:9px;font-weight:400}
.context-toolbar select{font-size:9px;padding:5px 22px 5px 7px;background:#f3eff8;border-color:#e7e0ef;min-height:25px;width:auto;max-width:145px;border-radius:5px;color:#947ea8}
.context-toolbar>span{margin-left:auto;font-size:8px;color:#b3a7be}
.small-orbit{font-size:14px}
.composer{border:1px solid #dcd2e8;border-radius:14px;background:white;box-shadow:0 7px 23px #78658c07;padding:5px 8px 9px;transition:border-color .2s}
.composer:focus-within{border-color:#ad92c9;box-shadow:0 0 0 3px #7962bd08}
.composer textarea{border:0;background:transparent;box-shadow:none!important;outline:0;font-size:12px;padding:15px 12px 6px;max-height:160px;min-height:66px;resize:none;color:#675873}
.composer textarea::placeholder{color:#b3a9bd}
.composer-bottom{display:flex;align-items:center;justify-content:space-between;padding-left:12px}
.composer-bottom>span{display:flex;align-items:center;gap:7px;font-size:8px;letter-spacing:1.2px;color:#9c89ad}
.composer-nexo{font-size:16px}
.composer-hint{letter-spacing:0;font-size:8px;color:#bcb2c5;margin-left:3px}
.composer button{width:33px;height:33px;border-radius:8px;background:#8d72b2;color:#fff;font-size:21px;line-height:1}
.composer button:hover{background:#745992}
.composer-footer{display:flex;justify-content:space-between;gap:8px;padding:12px 2px 0;font-size:8px;color:#b3a9bb}
.key{font-size:10px}
.insight-panel{background:#f6f5f8;border-left:1px solid var(--line);padding:32px 24px;overflow-y:auto;scrollbar-width:thin}
.insight-title{display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:1.4px;color:#a69bad;margin-bottom:30px}
.insight-title>span{color:#a58cbd;font-size:20px}
.orbit-total{font-size:45px;letter-spacing:-2px;font-weight:300;color:#7e6e8d;margin-bottom:3px}
.orbit-caption{font-size:10px;color:#a397af;margin-bottom:25px}
.orbit-stats{display:grid;grid-template-columns:1fr 1fr;gap:20px 5px}
.orbit-stat strong{display:block;font-size:20px;font-weight:400;color:#93809f;margin-bottom:5px}
.orbit-stat span{font-size:9px;color:#ab9cb8}
.insight-divider{height:1px;background:#e8e2ee;margin:28px 0}
.insight-subtitle{font-size:8px;letter-spacing:1.2px;color:#a598b0;margin-bottom:17px}
.insight-copy{font-size:11px;line-height:1.9;color:#b0a2bc}
.empty-upcoming{border:1px dashed #e0d7e9;padding:17px 12px;border-radius:9px;font-size:10px;line-height:1.9;color:#b1a4bd}
.upcoming-item{border-left:2px solid #b6a2c9;text-align:left;padding:1px 0 1px 11px;margin-bottom:17px;width:100%}
.upcoming-item strong{font-size:10px;font-weight:500;display:block;line-height:1.6;color:#9a87a9;overflow-wrap:anywhere}
.upcoming-item small{font-size:8px;color:#b3a5bf;display:block;margin-top:5px}
.mini-orbits{width:130px;height:114px;position:relative;margin:25px auto 35px}
.mini-orbits span{position:absolute;border:1px solid #e2d8ed;border-radius:50%;width:105px;height:105px;left:12px;top:4px}
.mini-orbits span:nth-child(2){width:70px;height:70px;left:29px;top:21px}
.mini-orbits span:nth-child(3){width:30px;height:30px;left:49px;top:41px}
.mini-orbits i{width:6px;height:6px;background:#b8a2ca;border-radius:50%;position:absolute;top:35px;left:10px}
.engine-label{font-size:8px;display:flex;align-items:center;gap:6px;color:#b4a5c0}
.content-view{overflow-y:auto;padding:43px 40px}
.section-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:30px}
.section-heading .eyebrow{margin-bottom:15px}
.section-heading h1{margin:0}
.section-heading p{color:var(--muted);font-size:12px;margin:12px 0 0}
.purple-dot{color:var(--purple)}
.search-field{display:flex;align-items:center;border:1px solid var(--line);border-radius:10px;background:white;padding-left:15px;margin-bottom:16px}
.search-field>span{font-size:23px;color:#a08ab4}
.search-field input{border:0;background:transparent;min-width:0;font-size:12px;box-shadow:none}
.search-field:focus-within{border-color:var(--purple)}
.memory-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}
.memory-filters select{font-size:10px;width:auto;min-height:33px;padding:7px 8px;max-width:100%}
.memory-filters>span{font-size:9px;color:var(--muted);align-self:center;margin-left:auto}
.memory-list{display:grid;gap:12px}
.memory-card{border:1px solid var(--line);border-radius:12px;padding:19px 20px;background:#fff;text-align:left;transition:border-color .2s,box-shadow .2s;width:100%;min-width:0}
.memory-card:hover{border-color:#cfbfe0;box-shadow:0 4px 15px #65507207}
.card-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}
.context-badge{font-size:8px;letter-spacing:.6px;display:flex;align-items:center;gap:7px;color:#9c8bab}
.type-badge{font-size:8px;background:#f3eff7;color:#9f88b2;padding:4px 7px;border-radius:4px}
.memory-card h3{font-size:13px;font-weight:500;line-height:1.6;color:#73637f;margin:0 0 14px;overflow-wrap:anywhere}
.card-bottom{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:9px;color:#a494b0}
.state{display:inline-flex;align-items:center;gap:5px}
.state:before{content:'';width:5px;height:5px;border-radius:50%;background:#c1b3cd}
.state.completada:before{background:#8cb6a0}
.state.esperando:before{background:#cbb387}
.state.en-progreso:before{background:#a28ac4}
.priority-high{color:#b48a79}
.card-date{margin-left:auto}
.empty-state{padding:48px 22px;text-align:center;border:1px dashed #e0d7e9;border-radius:13px;background:#faf8fc}
.empty-state>span{font-size:29px;color:#baa3cd}
.empty-state h3{font-size:15px;font-weight:400;color:#9a83ab;margin:18px 0 8px}
.empty-state p{font-size:11px;color:#b0a0bc;line-height:1.8;margin:0}
.history-list{display:grid;gap:10px}
.history-card{padding:18px;background:#fff;border:1px solid var(--line);border-radius:11px;text-align:left;display:flex;align-items:center;gap:16px;width:100%}
.history-card:hover{border-color:#c9b5da}
.history-card>span{font-size:22px;color:#b298c7}
.history-card strong{font-size:12px;font-weight:400;color:#8b739d;line-height:1.6;overflow-wrap:anywhere}
.history-card small{display:block;font-size:9px;color:#b19cc0;margin-top:5px}
.history-card>span:last-child{margin-left:auto;font-size:18px}
.offline-banner{background:#faf1df;color:#9b7944;font-size:11px;padding:10px 22px}
.mobile-only{display:none}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
dialog{border:1px solid #e6dcec;background:#faf9fc;border-radius:18px;color:var(--ink);box-shadow:0 20px 90px #36264720;padding:28px;max-height:90dvh;width:580px;max-width:calc(100vw - 28px);overflow-y:auto}
dialog::backdrop{background:#30223f40;backdrop-filter:blur(3px)}
.dialog-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
.dialog-heading .eyebrow{font-size:9px}
.dialog-heading .icon-button{font-size:28px}
dialog h2{color:#786085}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.original-section{margin-top:26px;padding:19px;background:#f1ecf6;border-radius:10px}
.original-label{font-size:8px;letter-spacing:1px;color:#a28ab3;display:flex;gap:10px;justify-content:space-between}
.original-label>span{letter-spacing:0;color:#b3a0c1;font-size:8px}
blockquote{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.9;color:#90729f;margin:13px 0}
.original-section .muted{font-size:8px;color:#b59dc3}
.interpretation{margin:18px 0;font-size:10px;color:#a78bb8}
.interpretation summary{cursor:pointer}
.interpretation pre{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;font-family:inherit;padding:12px;background:#f3edf7;border-radius:8px}
.related-heading,.audit-heading{font-size:9px;color:#aa8dbb;letter-spacing:1px;margin:22px 0 12px}
.related-button{font-size:11px;text-align:left;display:block;border:1px solid #e8ddee;border-radius:8px;padding:11px;width:100%;color:#9f7daf;margin-bottom:7px}
.related-button small{font-size:8px;display:block;color:#b89fc6;margin-top:4px}
.audit-entry{font-size:9px;color:#a58bb5;padding:8px 0;border-bottom:1px solid #eee5f3;line-height:1.7}
dialog .primary{margin-top:20px}
.account-dialog{width:420px}
.account-dialog>p{font-size:12px;color:#a38dae}
.account-dialog .account-description{border-top:1px solid #e9dff0;margin:10px 0 0;padding-top:18px;font-size:10px;line-height:1.9;color:#b7a0c3}
.account-dialog .secondary{display:block;width:100%;margin-top:15px}
.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#766088;color:white;border:1px solid #8e779f;padding:13px 21px;border-radius:10px;font-size:12px;z-index:30;box-shadow:0 10px 25px #61457820;max-width:calc(100vw - 30px);text-align:center}
.busy-indicator{padding:10px 32px;font-size:11px;color:#a58ab6}
.sidebar-overlay{display:none}
@keyframes arrive{from{opacity:0;transform:translateY(5px)}
to{opacity:1;transform:translateY(0)}
}
@media(min-width:1600px){.app{grid-template-columns:250px minmax(0,1fr) 290px}
.chat-view{padding:0 max(50px,calc((100% - 850px)/2))}
.content-view{padding:45px 65px}
.welcome{margin-top:8vh}
.welcome h1{font-size:42px}
}
@media(max-width:1250px){.app{grid-template-columns:218px minmax(0,1fr) 230px}
.sidebar{padding-left:12px;padding-right:12px}
.insight-panel{padding:32px 18px}
.chat-view{padding:0 28px}
.topbar{padding:0 25px}
.suggestion{padding:12px}
.suggestion small{font-size:9px}
.welcome h1{font-size:32px}
.composer-footer{font-size:7px}
.content-view{padding:32px 25px}
}
@media(max-width:1050px){.app{grid-template-columns:215px minmax(0,1fr)}
.insight-panel{display:none}
.chat-view{padding:0 38px}
.welcome{max-width:600px}
.content-view{padding:38px}
.welcome h1{font-size:35px}
}
@media(max-width:700px){.app{display:flex;height:100dvh}
.sidebar{position:fixed;left:0;top:0;bottom:0;width:248px;z-index:21;transform:translateX(-100%);transition:transform .2s;background:#f4f1f8}
.sidebar.open{transform:translateX(0)}
.sidebar-overlay{position:fixed;inset:0;background:#39244430;z-index:20;display:block}
.workspace{width:100%}
.topbar{height:61px;padding:0 16px}
.breadcrumb{gap:8px;font-size:10px}
.topbar-right{gap:10px}
.connection-status{font-size:8px}
.mobile-only{display:inline-flex}
.chat-view{padding:0 20px}
.conversation-heading{padding-top:21px}
.conversation-heading .eyebrow{font-size:7px;letter-spacing:1.2px}
.conversation-heading>span:last-child{font-size:8px}
.thread{padding:20px 0}
.welcome{margin:20px 0 5px}
.welcome-emblem{font-size:33px;margin-bottom:21px}
.welcome h1{font-size:33px;letter-spacing:-1px}
.welcome p{font-size:11px;margin-bottom:25px}
.suggestions{grid-template-columns:1fr;gap:7px}
.suggestion{display:grid;grid-template-columns:23px 1fr;gap:3px 8px;min-height:0;padding:12px 13px}
.suggestion>span{grid-row:1/3;font-size:19px;align-self:center}
.suggestion strong{font-size:10px}
.suggestion small{font-size:9px}
.composer-region{padding-bottom:max(15px,env(safe-area-inset-bottom));padding-top:8px}
.context-toolbar>span{display:none}
.context-toolbar{margin-bottom:10px}
.composer textarea{font-size:16px;min-height:67px;padding:12px 9px 4px}
.composer textarea::placeholder{font-size:12px}
.composer-hint{display:none}
.composer-footer{font-size:7px}
.desktop-only{display:none}
.message-content{font-size:12px;padding-left:0}
.user-message .message-content{margin-left:20px}
.message-cards{margin-left:0}
.mini-card strong{max-width:215px}
.content-view{padding:29px 20px}
.section-heading{margin-bottom:25px}
.section-heading h1{font-size:30px}
.section-heading .eyebrow{font-size:8px}
.section-heading .secondary{font-size:10px}
.memory-filters select{font-size:10px;max-width:48%}
.memory-filters>span{margin-left:0}
.memory-card{padding:16px}
.card-bottom{gap:8px}
.card-date{margin-left:0}
.section-heading{align-items:flex-start}
.login-card{width:330px;margin:40px 25px}
.login-card h1{font-size:39px}
.login-card .brand{margin-bottom:38px}
.login-atmosphere{left:100%;width:550px;height:550px}
.login-signature{display:none}
.login-foot{font-size:9px}
dialog{padding:23px;max-height:92dvh}
.detail-dialog h2{font-size:23px}
.original-label{flex-direction:column;gap:5px}
.form-grid{gap:0 10px}
input,select,textarea{font-size:16px}
.account-dialog label{font-size:11px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}


/* Legibilidad: contraste y escala de la superficie de trabajo. */
:root { --muted: #817887; }
.eyebrow,.nav-label,.context-label,.conversation-heading>span:last-child,.insight-title,.insight-subtitle,.context-item small,.connection-status,.breadcrumb-root { color: #827889; }
.nav-item { font-size:13px; color:#746a7f; }
.context-item { font-size:11px; color:#75697f; }
.welcome p,.login-copy,.insight-copy,.nexo-note p,.empty-upcoming,.orbit-caption,.orbit-stat span { color:#82738e; }
.suggestion strong { font-size:12px; color:#776284; }
.suggestion small { color:#8f7c9c; font-size:11px; }
.message-content { font-size:14px; color:#706079; }
.message-meta strong { font-size:11px; }
.message-meta time,.card-bottom,.context-badge,.type-badge,.upcoming-item small { font-size:10px; color:#887193; }
.composer textarea { font-size:14px; }
.composer textarea::placeholder { color:#9a87a7; }
.context-toolbar,.context-toolbar label,.context-toolbar select { font-size:11px; color:#826693; }
.context-toolbar>span,.composer-footer { font-size:9px; color:#9b84a8; }
.composer-hint,.composer-bottom>span { font-size:9px; }
.memory-card h3 { font-size:14px; color:#70577e; }
.upcoming-item strong { font-size:12px; color:#866596; }
.mini-card strong { font-size:11px; }
@media(max-width:700px){.composer textarea{font-size:16px}.context-toolbar>span{display:none}.composer-footer{font-size:8px}.suggestion small{font-size:10px}.message-content{font-size:13px}.welcome p{font-size:12px}}
/* Dictado por voz: iniciar y detener son siempre acciones explícitas. */
.composer-actions { display:flex; align-items:center; gap:9px; }
.composer .voice-button { width:auto; min-width:90px; min-height:38px; height:38px; padding:0 10px; display:flex; align-items:center; justify-content:center; gap:7px; color:#79608f; background:#f1eaf8; border:1px solid #e1d4ed; font-size:11px; }
.voice-button svg { width:17px; height:20px; stroke:currentColor; stroke-width:1.7; fill:none; stroke-linecap:round; }
.composer .voice-button:hover { background:#e7dcf1; }
.composer .voice-button.listening { color:#fff; background:#9b5073; border-color:#9b5073; box-shadow:0 0 0 3px #9b507318; }
.voice-status { font-size:11px; line-height:1.7; color:#79618d; margin:10px 3px 0; }
.voice-status.voice-error { color:#a04e64; }
.voice-help { color:#8e7b9e; font-size:9px; margin:10px 3px 0; line-height:1.7; }
.voice-help summary { cursor:pointer; }
.voice-help p { max-width:650px; margin:7px 0 0; font-size:10px; }
@media(max-width:700px){.composer .voice-button{min-width:85px;min-height:42px;height:42px;font-size:12px}.voice-status{font-size:11px}.voice-help{font-size:9px}.composer #send-button{width:42px;height:42px}}
/* Conversación con voz natural y ajustes privados de IA. */
.conversation-start{margin-left:auto;padding:8px 10px;border-radius:7px;background:#ece2f5;color:#796089;font-size:11px;white-space:nowrap}
.read-message{font-size:10px;color:#91749e;margin:9px 0 0 32px;padding:6px 9px;border-radius:6px;background:#f0e9f6}
.ai-settings{border-top:1px solid #e1d6e9;border-bottom:1px solid #e1d6e9;padding:20px 0;margin:20px 0}
.ai-settings h3{font-size:17px;font-weight:500;color:#80658e;margin:0 0 12px}
.ai-settings p{font-size:11px;line-height:1.8;color:#8e779a}
.ai-settings .ai-explanation{font-size:10px;margin:14px 0 8px}
.ai-key-link{font-size:11px;color:#7961a6;text-decoration:underline}
.voice-dialog{width:570px;text-align:center;padding:26px}
.voice-dialog .dialog-heading{margin-bottom:10px}
.voice-orb{width:105px;height:105px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#c6aee1,#81619f);color:#eee0fb;font-size:55px;display:flex;align-items:center;justify-content:center;margin:22px auto;box-shadow:0 0 0 13px #9573b20b}
.voice-orb[data-phase="listening"]{animation:breathe 1.9s ease-in-out infinite}
.voice-orb[data-phase="speaking"]{animation:breathe .9s ease-in-out infinite}
.voice-dialog h2{font-size:24px;margin-bottom:12px}
.voice-session-disclosure{font-size:10px;line-height:1.8;color:#a18aac;margin:0 auto 20px;max-width:360px}
.voice-session-transcript{white-space:pre-wrap;overflow-wrap:anywhere;text-align:left;font-size:13px;line-height:1.9;color:#856994;max-height:220px;overflow-y:auto;background:#f0e8f6;border-radius:11px;padding:16px;margin:20px 0}
.voice-session-transcript:empty{display:none}
.voice-session-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.voice-session-actions .primary{width:auto;margin:0;font-size:12px}
.voice-session-actions .secondary{font-size:12px}
.voice-dialog .text-button{margin-top:12px}
@keyframes breathe{50%{transform:scale(1.07);box-shadow:0 0 0 20px #9573b210}}
@media(prefers-reduced-motion:reduce){.voice-orb{animation:none!important}}
@media(max-width:700px){.conversation-start{font-size:10px;padding:8px}.context-toolbar{gap:5px}.context-toolbar select{max-width:115px}.voice-dialog{padding:20px}.voice-orb{width:80px;height:80px;font-size:42px}.voice-dialog h2{font-size:21px}.voice-session-transcript{font-size:12px;max-height:180px}.read-message{margin-left:0}}
