:root{color-scheme:light;--ink:#17283c;--muted:#718096;--blue:#23538b;--blue-dark:#173c6c;--line:#e6edf4;--bg:#f5f7fb;--shadow:0 12px 36px #2134540d;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.6;cursor:not-allowed}.hidden{display:none!important}.auth-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 10%,#e1ecfa,transparent 40%),#f5f7fb;padding:22px}.auth-box{width:min(100%,410px);padding:34px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow);text-align:center}.auth-box h1{font-size:29px;letter-spacing:-.7px;margin:16px 0 4px}.subtitle{margin:0 0 28px;color:var(--muted)}.auth-box small{color:var(--muted)}.brand-mark{display:inline-grid;place-items:center;margin:auto;color:#fff;background:linear-gradient(145deg,#2f6db0,#143d73);font-size:26px;width:58px;height:58px;border-radius:19px;box-shadow:0 8px 22px #2b669544}.brand-mark.small{font-size:21px;width:38px;height:38px;margin:0;border-radius:12px}.form-stack{display:grid;gap:16px;margin:24px 0;text-align:left}label{display:grid;gap:7px;font-size:13px;color:#4e6177;font-weight:650}input,select{border:1px solid #d7e2ed;border-radius:11px;background:#fff;min-height:43px;padding:10px 12px;outline:none;width:100%;color:var(--ink)}input:focus,select:focus{border-color:#5d8fc3;box-shadow:0 0 0 3px #3176c018}.btn{border:0;border-radius:11px;padding:11px 16px;font-weight:700;font-size:13px;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn.primary{background:#20578e;color:#fff}.btn.primary:hover{background:#164470}.btn.white{background:#fff;color:#1b5589}.btn.text{background:transparent;color:#2c6093;padding:8px}.btn.outline{border:1px solid #cbd8e6;background:#fff;color:var(--blue)}.alert{padding:10px;margin-top:14px;text-align:left;color:#97412d;border-radius:9px;background:#fff0ea;font-size:13px}.app-shell{min-height:100vh;display:flex}.sidebar{position:fixed;inset:0 auto 0 0;width:254px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:25px 14px}.brand{display:flex;align-items:center;gap:11px;font-size:21px;font-weight:850;letter-spacing:-.6px;padding:0 12px}.sidebar-caption{font-size:10px;letter-spacing:1.5px;font-weight:750;color:#9ba9b8;margin:35px 12px 12px}.navigation{display:grid;gap:6px}.nav-link{display:flex;align-items:center;gap:13px;border:0;background:none;color:#66788c;text-align:left;border-radius:11px;padding:13px 14px;font-size:15px}.nav-link span{font-size:13px;font-weight:650}.nav-link.selected{color:var(--blue);background:#eaf2fc}.nav-link:hover{background:#f2f6fb}.unread{background:#e97056;color:#fff;padding:2px 6px;border-radius:10px;font-size:10px!important}.sidebar-bottom{display:flex;gap:9px;align-items:center;border-top:1px solid var(--line);margin-top:auto;padding:19px 7px 4px}.avatar{background:#dfe8f4;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-weight:750;color:#32628f}.user-detail{min-width:0;display:grid;gap:1px;flex:1}.user-detail strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-detail small{font-size:10px;color:var(--muted);overflow:hidden;text-overflow:ellipsis}.logout{border:0;background:transparent;font-size:20px;color:var(--muted)}.content{margin-left:254px;width:calc(100% - 254px);max-width:1400px;padding:0 46px 50px}.topbar{display:flex;align-items:center;justify-content:space-between;padding:30px 0 25px;border-bottom:1px solid var(--line);margin-bottom:30px}.eyebrow{font-size:10px;color:#9aabc0;font-weight:750;letter-spacing:1.4px}.topbar h2{margin:3px 0;font-size:25px;letter-spacing:-.5px}.topbar-right{display:flex;align-items:center;gap:15px;font-size:12px;color:var(--muted)}.icon-button{background:#fff;border:1px solid var(--line);border-radius:11px;padding:9px;font-size:17px}.page{display:none;max-width:1060px}.page.visible{display:block}.welcome-card{border-radius:18px;background:linear-gradient(120deg,#1a467b,#3a79b4);color:#fff;padding:31px 32px;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow)}.welcome-card h3{font-size:29px;letter-spacing:-.8px;margin:9px 0 5px}.welcome-card p{font-size:14px;color:#dae9f9;margin:0 0 20px}.welcome-icon{font-size:90px;opacity:.22;margin:0 10px}.overline{font-weight:750;letter-spacing:1.4px;font-size:10px;color:#b9daff}.stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:19px 0 33px}.stat{background:white;padding:22px 24px;border-radius:15px;border:1px solid var(--line);display:grid;gap:11px}.stat span{color:var(--muted);font-size:13px}.stat strong{font-size:29px;letter-spacing:-1px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 16px}.section-heading h3{font-size:17px;letter-spacing:-.3px;margin:0}.stack{display:grid;gap:9px}.item-card{display:flex;align-items:center;gap:13px;border:1px solid var(--line);background:#fff;padding:17px 18px;border-radius:13px}.item-check{width:23px;height:23px;flex-shrink:0;cursor:pointer;accent-color:#296aa5}.item-details{flex:1;min-width:0;display:grid;gap:5px}.item-details strong{font-size:14px;word-wrap:break-word}.item-details small{font-size:12px;color:var(--muted)}.pill{border-radius:20px;font-size:10px;font-weight:750;padding:5px 8px;white-space:nowrap;background:#e8f2fc;color:#23598d}.pill.work{background:#f4ebff;color:#7347a2}.item-card.done .item-details strong{text-decoration:line-through;color:#9aa8b8}.empty{text-align:center;padding:46px 14px;border:1px dashed #d1deea;border-radius:14px;color:#90a0b0;background:#ffffff99}.filter-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:15px 0 20px}.filter{border:1px solid var(--line);background:#fff;color:#61738a;border-radius:20px;padding:8px 17px;font-size:12px}.filter.active{background:#20578e;color:#fff}.hide-done{margin-left:auto;display:flex;align-items:center;gap:7px}.hide-done input{min-height:0;width:auto}.chat-panel{height:min(710px,calc(100dvh - 195px));background:#fff;border:1px solid var(--line);border-radius:18px;display:flex;flex-direction:column;overflow:hidden}.chat-heading{display:flex;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding:17px 20px}.chat-heading div{display:grid;gap:3px}.chat-heading strong{font-size:14px}.chat-heading small{font-size:11px;color:var(--muted)}.chat-avatar{display:grid;place-items:center;border-radius:13px;background:#deebf9;color:#25619d;height:41px;width:41px;font-size:24px}.chat-messages{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:13px}.bubble{max-width:82%;padding:12px 16px;border-radius:16px;font-size:14px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.bubble.assistant{align-self:flex-start;background:#f0f5fb;border-bottom-left-radius:4px}.bubble.user{align-self:flex-end;background:#22588e;color:#fff;border-bottom-right-radius:4px}.bubble em{font-size:10px;display:block;margin-top:7px;opacity:.62;font-style:normal}.chat-compose{border-top:1px solid var(--line);display:flex;gap:9px;padding:14px}.chat-compose input{flex:1}.chat-status{font-size:12px;color:#7890a7;padding:0 17px}.settings-card{border:1px solid var(--line);background:#fff;border-radius:16px;max-width:600px;padding:26px}.settings-card h3{margin:0}.settings-divider{border-top:1px solid var(--line);margin:28px 0}.muted,.fineprint{font-size:12px;line-height:1.6;color:var(--muted)}.modal{position:fixed;inset:0;z-index:10;background:#13283b91;display:grid;place-items:center;padding:20px}.modal-card{background:white;border-radius:17px;max-width:430px;width:100%;display:grid;gap:18px;padding:26px;box-shadow:0 25px 75px #0003}.modal-actions{display:flex;justify-content:flex-end}.toast{position:fixed;bottom:20px;right:22px;max-width:350px;background:#162f4e;color:#fff;padding:12px 18px;border-radius:12px;box-shadow:var(--shadow);z-index:100;font-size:13px}.mobile-nav{display:none}.notification-card{cursor:pointer}.notification-card.unread-item{border-left:4px solid #2a6aab}.notification-card p{font-size:13px;color:#596c82;margin:4px 0}.notification-card time{font-size:11px;color:#9baaBA}@media(max-width:850px){.sidebar{display:none}.content{margin:0;width:100%;padding:0 18px 90px}.topbar{padding:22px 0 19px;margin-bottom:21px}.topbar-right #today-label{display:none}.mobile-nav{position:fixed;bottom:0;left:0;right:0;padding:8px 0 calc(8px + env(safe-area-inset-bottom));display:flex;justify-content:space-around;background:#fff;border-top:1px solid var(--line);z-index:6}.mobile-nav button{background:none;border:0;color:#526c86;display:grid;justify-items:center;gap:2px;font-size:21px;min-width:56px}.mobile-nav small{font-size:10px}.stat{padding:16px}.stat strong{font-size:24px}.welcome-card{padding:23px}.welcome-card h3{font-size:24px}.welcome-icon{font-size:60px}.chat-panel{height:calc(100dvh - 179px)}.chat-messages{padding:13px}.topbar h2{font-size:21px}.bubble{max-width:92%}}@media(max-width:430px){.stat-grid{gap:8px}.stat span{font-size:11px}.stat{padding:12px}.item-card{padding:14px 12px}.welcome-icon{display:none}.chat-compose{padding:10px;gap:7px}.chat-compose .btn{padding:9px}}

/* Identidad Vivivos. Logo aportado por la creadora de la app. */
:root{--ink:#0b2849;--blue:#1679d6;--blue-dark:#0b4d94;--bg:#f2f7fd;--line:#e5ecf5}
.auth-page{background:radial-gradient(circle at 11% 15%,#dfecff 0,transparent 38%),radial-gradient(circle at 90% 86%,#e4f1ff 0,transparent 33%),#f7faff}
.auth-box{width:min(100%,430px);padding:32px 36px 30px;border:1px solid #e4eef7;border-radius:27px;box-shadow:0 25px 85px #0a3b7610}
.login-logo{display:block;width:min(100%,315px);height:auto;margin:0 auto 0;object-fit:contain}
.auth-intro{font-size:13px;color:#6e8198;margin:0 auto 22px;max-width:270px}
.brand-dot{color:#55a8f5}
.sidebar-brand-icon{width:44px;height:44px;object-fit:cover;border-radius:13px;flex-shrink:0}
.brand{font-size:25px;letter-spacing:-1px;color:#0b2c54}
.sidebar-caption{letter-spacing:1.1px;color:#819ab5;margin-top:29px}
.chat-avatar{overflow:hidden;background:#f5f9ff}
.chat-avatar img{width:100%;height:100%;object-fit:cover}
.welcome-card{background:linear-gradient(120deg,#0c284c 0%,#0a4e93 70%,#2483db 100%)}
.welcome-icon{opacity:.95;display:grid;place-items:center}
.welcome-icon img{width:92px;height:92px;object-fit:cover;border-radius:24px;box-shadow:0 12px 38px #001c4650}
.btn.primary{background:#1165b5}
.btn.primary:hover{background:#0c4f96}
.filter.active{background:#1165b5}
.bubble.user{background:#1165b5}
.nav-link.selected{color:#0c67bb;background:#e8f3ff}
@media(max-width:430px){.auth-box{padding:26px 24px}.login-logo{max-width:275px}.auth-intro{margin-bottom:16px}}
