.dashboard-page{background:#f3f2ed;min-height:100vh;font-size:15px}.app-sidebar{position:fixed;inset:0 auto 0 0;width:245px;background:#15372f;color:white;padding:28px 22px;display:flex;flex-direction:column;z-index:5}.app-sidebar .brand{margin-bottom:55px}.app-sidebar nav{display:grid;gap:5px}.side-link{border:0;background:transparent;color:#b9ccc5;border-radius:10px;padding:12px 14px;text-align:left;font:600 .86rem "DM Sans";cursor:pointer}.side-link span{display:inline-block;width:28px;font-size:1.1rem}.side-link.active,.side-link:hover{background:#ffffff13;color:white}.sidebar-bottom{margin-top:auto;display:grid;gap:18px;text-align:center}.sidebar-bottom>a:last-child{font-size:.78rem;color:#b9ccc5}.dashboard-main{margin-left:245px;min-height:100vh}.dashboard-header{height:100px;padding:0 clamp(25px,4vw,60px);display:flex;align-items:center;justify-content:space-between;background:#faf9f6;border-bottom:1px solid var(--line)}.dashboard-header h1{font:600 1.8rem "Newsreader";margin:3px 0}.today-label{font-size:.7rem;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.header-actions,.profile-switch{display:flex;align-items:center;gap:18px}.notification{position:relative;border:1px solid var(--line);border-radius:50%;background:white;width:42px;height:42px}.notification i{position:absolute;right:-2px;top:-4px;background:var(--sun);width:18px;height:18px;border-radius:50%;font-size:.65rem;font-style:normal;display:grid;place-items:center}.avatar{width:42px;height:42px;border-radius:50%;background:#d7a95d;color:#17332d;display:grid;place-items:center;font-weight:700}.profile-switch label{font-size:.65rem;color:var(--muted)}.profile-switch select{margin:0;border:0;padding:2px 22px 2px 0;background:transparent;font-size:.82rem;font-weight:700}.mobile-menu{display:none}.dashboard-view{display:none;padding:42px clamp(25px,4vw,60px) 70px;max-width:1600px;margin:auto}.dashboard-view.active{display:block}.role-banner{display:flex;justify-content:space-between;gap:30px;align-items:center;background:#dfe9df;border-radius:20px;padding:32px 38px}.role-banner h2{font-size:clamp(2rem,3vw,3.2rem);margin-bottom:10px}.role-banner p:last-child{color:var(--muted);margin:0}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:22px 0}.metric{background:white;border:1px solid #e4e5df;border-radius:15px;padding:20px}.metric span{display:block;font-size:.72rem;color:var(--muted)}.metric strong{display:block;font:600 2rem "Newsreader";margin:9px 0 3px}.metric small{color:var(--leaf)}.dashboard-grid{display:grid;grid-template-columns:1.65fr .75fr;gap:18px}.lower-grid{grid-template-columns:1.45fr .95fr;margin-top:18px}.panel{background:white;border:1px solid #e4e5df;border-radius:18px;padding:26px}.panel-heading,.view-heading{display:flex;justify-content:space-between;gap:20px;align-items:center}.panel-heading h3{margin:0}.plain-button{border:0;background:none;color:var(--forest);font-weight:700;cursor:pointer}.operations-list{margin-top:22px}.operation{display:grid;grid-template-columns:48px 1fr auto;gap:14px;align-items:center;padding:15px 0;border-top:1px solid var(--line)}.operation-icon{width:44px;height:44px;border-radius:10px;background:var(--cream);display:grid;place-items:center;font-size:1.3rem}.operation b,.operation span{display:block}.operation span{font-size:.75rem;color:var(--muted)}.status-pill,.demo-pill{padding:6px 9px;border-radius:999px;background:#eef2e9;color:var(--forest);font-size:.68rem;font-weight:700}.status-pill.pending{background:#fff2dd;color:#8b5e12}.next-panel{text-align:center}.progress-ring{width:120px;height:120px;margin:12px auto 22px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--sun) 68%,#e7e4da 0);position:relative}.progress-ring:after{content:"";position:absolute;inset:10px;background:white;border-radius:50%}.progress-ring strong{z-index:1;font:600 1.7rem "Newsreader"}.next-panel>p{color:var(--muted)}.value-summary{display:flex;justify-content:space-between;align-items:center;padding:18px 0}.value-summary small,.value-summary strong,.value-summary span{display:block}.value-summary strong{font:600 2.1rem "Newsreader"}.value-summary span{font-size:.7rem;color:var(--muted)}.confidence{border-left:1px solid var(--line);padding-left:28px}.confidence b{font-size:1.3rem}.value-bar{height:10px;border-radius:99px;background:linear-gradient(90deg,#e9dcc3,#67a17c);position:relative;margin:35px 0 45px}.value-bar i{position:absolute;left:46%;top:-6px;width:3px;height:22px;background:var(--ink)}.value-bar span{position:absolute;top:18px;transform:translateX(-50%);font-size:.66rem;text-align:center}.insight-list p{font-size:.8rem;border-top:1px solid var(--line);padding:12px 0;margin:0}.insight-list p>span{display:inline-grid;width:22px;height:22px;border-radius:50%;place-items:center;margin-right:8px}.positive{background:#e5f3e8;color:#267041}.neutral{background:#e7edf3;color:#426a8e}.warning{background:#fff0dc;color:#9d6415}.timeline{list-style:none;padding:0;margin:20px 0}.timeline li{position:relative;padding:0 0 25px 30px;border-left:2px solid var(--line)}.timeline li:before{content:"";position:absolute;left:-7px;width:12px;height:12px;border-radius:50%;background:#d5d9d5}.timeline li.complete:before{background:var(--forest)}.timeline li.active:before{background:var(--sun)}.timeline b,.timeline span{display:block}.timeline span{font-size:.72rem;color:var(--muted)}.view-heading{margin-bottom:28px}.view-heading h2{font-size:3.2rem;margin:0}.filter-button,.outline-button{border:1px solid var(--line);border-radius:999px;background:white;padding:12px 18px;font-weight:700}.swipe-layout{display:grid;grid-template-columns:minmax(420px,700px) 300px;gap:25px;justify-content:center}.swipe-card{background:white;border-radius:24px;overflow:hidden;box-shadow:0 18px 50px #17332d15}.swipe-photo{height:400px;background:linear-gradient(145deg,#b9cbb8,#6f947d);position:relative}.swipe-photo:after{content:"";position:absolute;width:65%;height:58%;left:18%;bottom:0;background:#eee4d5;clip-path:polygon(0 20%,50% 0,100% 20%,100% 100%,0 100%)}.swipe-copy{padding:26px}.swipe-copy>div:first-child{display:flex;justify-content:space-between}.swipe-copy>strong{font-size:1.2rem}.swipe-actions{display:flex;justify-content:center;gap:20px;margin-top:20px}.swipe-actions button{width:54px;height:54px;border:1px solid var(--line);border-radius:50%;background:white;font-size:1.4rem}.swipe-actions .accept{background:var(--forest);color:white}.match-reasons{background:#e2eadf;border-radius:20px;padding:28px;align-self:start}.match-reasons li{margin:14px 0}.case-table{background:white;border-radius:18px;overflow:hidden}.case-row{display:grid;grid-template-columns:1.3fr .8fr .8fr .8fr auto;gap:20px;padding:18px 22px;border-bottom:1px solid var(--line);align-items:center}.case-row.header{font-size:.68rem;color:var(--muted);text-transform:uppercase}.case-row span{font-size:.78rem}.report-grid{display:grid;grid-template-columns:1.5fr .7fr;gap:20px}.report-cover{height:130px;border-radius:12px;background:var(--forest);color:white;padding:20px;display:flex;justify-content:space-between}.report-cover b{font:600 4rem "Newsreader"}.report-disclaimer{color:var(--muted);font-size:.75rem}.report-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:25px 0}.report-numbers div{background:var(--cream);padding:15px;border-radius:10px}.report-numbers span,.report-numbers strong{display:block}.report-numbers span{font-size:.68rem;color:var(--muted)}.factor{display:grid;grid-template-columns:160px 1fr 30px;align-items:center;gap:15px;margin:15px 0;font-size:.8rem}.factor i{height:8px;background:linear-gradient(90deg,var(--leaf) var(--score),#e5e7e2 var(--score));border-radius:99px}.report-actions ul{padding-left:20px}.report-actions li{margin:12px 0}.report-actions button{width:100%;margin-top:10px}.community-layout{display:grid;grid-template-columns:1fr 330px;gap:20px}.feed{display:grid;gap:15px}.post{background:white;border-radius:16px;padding:25px}.post header{display:flex;gap:12px}.post header b,.post header span{display:block}.post header span{font-size:.7rem;color:var(--muted)}.post>p{font-size:1.05rem;margin:20px 0}.post-stats{border-top:1px solid var(--line);padding-top:12px;color:var(--muted);font-size:.72rem}.post-tag{display:inline-block;background:var(--cream);padding:5px 8px;border-radius:6px;font-size:.68rem;margin-bottom:12px}.groups a{display:flex;justify-content:space-between;padding:13px 0;border-top:1px solid var(--line);text-decoration:none}.groups span{color:var(--muted);font-size:.72rem}
@media(max-width:1050px){.app-sidebar{transform:translateX(-100%);transition:.2s}.app-sidebar.open{transform:none}.dashboard-main{margin-left:0}.mobile-menu{display:block}.dashboard-header{height:auto;min-height:90px}.metric-grid{grid-template-columns:1fr 1fr}.dashboard-grid,.lower-grid,.report-grid,.community-layout{grid-template-columns:1fr}.swipe-layout{grid-template-columns:minmax(0,700px)}.match-reasons{display:none}}@media(max-width:650px){.dashboard-header{padding:16px 20px}.dashboard-header>div:nth-child(2){display:none}.profile-switch .avatar{display:none}.dashboard-view{padding:25px 18px}.role-banner{align-items:flex-start;flex-direction:column;padding:25px}.metric-grid{grid-template-columns:1fr 1fr}.operation{grid-template-columns:42px 1fr}.operation>.status-pill{grid-column:2}.view-heading h2{font-size:2.4rem}.case-row{grid-template-columns:1fr 1fr}.case-row.header{display:none}.report-numbers{grid-template-columns:1fr}.factor{grid-template-columns:120px 1fr 25px}.swipe-photo{height:300px}}
.real-operation{text-decoration:none;color:inherit}.dashboard-empty{padding:30px 12px;text-align:center;color:var(--muted)}.dashboard-empty b{display:block;color:var(--ink);font:600 1.35rem "Newsreader"}.dashboard-empty p{max-width:520px;margin:8px auto 20px}/* `overflow-wrap:anywhere` partía la cifra por dentro: "$ 229.100.0 / 00".
   Un número no se corta; si no cabe, se encoge. */
.metric strong{overflow-wrap:normal;word-break:keep-all;font-size:clamp(1.3rem,2.05vw,2rem);line-height:1.12}.metric-loading{position:relative;overflow:hidden}.metric-loading:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,#ffffffaa,transparent);animation:dashboard-loading 1.4s infinite}@keyframes dashboard-loading{to{transform:translateX(100%)}}
.account-menu{position:relative}.account-menu summary{position:relative;display:block;cursor:pointer;list-style:none;border-radius:50%;outline-offset:4px}.account-menu summary::-webkit-details-marker{display:none}.account-avatar{overflow:hidden}.account-avatar img{width:100%;height:100%;object-fit:cover}.verification-star{position:absolute;right:-5px;bottom:-3px;width:19px;height:19px;display:grid;place-items:center;border:2px solid #faf9f6;border-radius:50%;background:var(--forest);color:var(--sun);font-size:10px;line-height:1}.account-dropdown{position:absolute;right:0;top:calc(100% + 12px);z-index:20;width:min(290px,calc(100vw - 32px));padding:10px;background:white;border:1px solid var(--line);border-radius:15px;box-shadow:0 18px 50px #17332d22}.account-identity{padding:10px 11px 13px;border-bottom:1px solid var(--line);overflow:hidden}.account-identity strong,.account-identity small,.account-identity span{display:block}.account-identity small{margin:3px 0 9px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-identity span{font-size:.72rem;color:var(--muted)}.account-identity span.verified{color:var(--leaf);font-weight:700}.account-dropdown a,.account-dropdown button{display:block;width:100%;box-sizing:border-box;padding:11px;border:0;border-radius:9px;background:transparent;color:var(--ink);font:600 .82rem "DM Sans";text-align:left;text-decoration:none;cursor:pointer}.account-dropdown a:hover,.account-dropdown button:hover{background:var(--cream)}
@media(max-width:650px){.profile-switch.account-menu{display:block}.profile-switch .account-avatar{display:grid}.account-dropdown{position:fixed;right:16px;top:82px}}

/* La tarjeta es una rejilla de tres columnas: sin esto la fila cae en la
   primera, de 160px, y el enlace se lee "https". */
.share-row{grid-column:1/-1;display:flex;gap:8px;align-items:center;margin-top:12px;width:100%}
.share-row input{flex:1;min-width:0;padding:9px 11px;border:1px solid var(--line,#d8ded7);border-radius:9px;background:#fff;font-size:.74rem;color:#12352d}
.share-row .outline-button{padding:9px 14px;font-size:.74rem;white-space:nowrap}

.proposal-contact{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-top:12px;padding:11px 13px;border:1px solid var(--line,#d8ded7);border-radius:11px;background:#f4f7f3;font-size:.76rem}
.proposal-contact b{font-size:.62rem;letter-spacing:.09em;text-transform:uppercase;color:#5d6b65}
.proposal-contact a{color:#12352d;font-weight:650}
.proposal-contact a.whatsapp{padding:5px 11px;border-radius:999px;background:#12352d;color:#fff;text-decoration:none}
.proposal-contact .sin-dato{color:#8a938d}

.weekly-market-aviso{grid-column:1/-1}
.weekly-market-aviso small{display:block;max-width:520px}
