:root{
  --navy:#0c1a2c;--navy-2:#10233a;--green:#27c573;--green-2:#2fe08a;--green-soft:rgba(39,197,115,.16);
  --bg:#050c16;--surface:#0c1a2c;--surface-2:#10233a;--ink:#f5f9ff;--muted:#8ba0ba;--line:rgba(143,163,189,.16);
  --amber:#f0b84b;--amber-soft:rgba(240,184,75,.16);--red:#ed6878;--red-soft:rgba(237,104,120,.16);
  --blue:#2fc9ef;--blue-soft:rgba(47,201,239,.14);--purple:#7857f7;--purple-soft:#a48fff;
  --orange:#ff7a1a;--orange-2:#ff9243;--orange-soft:rgba(255,122,26,.14);
  --track:#1c2f45;--border-strong:rgba(143,163,189,.3);
  --shadow:0 22px 64px rgba(0,0,0,.34);--radius:18px;--sidebar:246px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:"DM Sans",system-ui,sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a{color:inherit}a{text-decoration:none}button{cursor:pointer}svg{display:block}.hidden{display:none!important}.muted{color:var(--muted)}.nowrap{white-space:nowrap}.w-full{width:100%}.text-right{text-align:right}.spacer{flex:1}.stack{display:grid;gap:14px}.row{display:flex;align-items:center;gap:10px}.row.wrap{flex-wrap:wrap}.between{justify-content:space-between}.align-start{align-items:flex-start}.container{width:min(1180px,calc(100% - 36px));margin:auto}.display{font-family:"Manrope",sans-serif;letter-spacing:-.04em}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--green);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.eyebrow:before{content:"";width:18px;height:2px;background:var(--green)}
.logo{display:flex;align-items:center;gap:10px;font-family:"Manrope";font-weight:800;letter-spacing:-.025em;color:var(--ink)}.logo-mark{width:34px;height:34px;border-radius:9px;flex:0 0 auto;display:block}.logo span b{color:var(--green);font-weight:800}.logo span small{display:block;font-family:"DM Sans";font-size:8px;letter-spacing:.12em;color:var(--muted);margin-top:-2px;font-weight:600}
.btn{min-height:42px;border-radius:11px;border:1px solid transparent;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;font-size:13px;transition:.16s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--green);color:#06251c;box-shadow:0 8px 20px rgba(39,197,115,.22)}.btn-primary:hover{background:var(--green-2)}.btn-dark{background:var(--navy);color:white}.btn-secondary{background:var(--surface);border-color:var(--line)}.btn-secondary:hover{border-color:var(--border-strong)}.btn-ghost{background:transparent}.btn-danger{background:var(--red-soft);color:var(--red);border-color:rgba(237,104,120,.35)}.btn-accent{background:var(--blue);color:#06232b;box-shadow:0 8px 20px rgba(47,201,239,.22)}.btn-accent:hover{filter:brightness(1.08)}.btn-accent:disabled{opacity:.75;cursor:default;transform:none}.icon-spin{display:inline-flex;animation:spin .9s linear infinite}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.btn-sm{min-height:36px;padding:0 12px;font-size:12px}.icon-btn{width:40px;height:40px;border:1px solid var(--line);border-radius:11px;background:var(--surface);display:grid;place-items:center;color:var(--muted)}.icon-btn:hover{color:var(--ink);border-color:var(--border-strong)}.tag{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.02em}.tag.green{background:var(--green-soft);color:var(--green)}.tag.amber{background:var(--amber-soft);color:var(--amber)}.tag.red{background:var(--red-soft);color:var(--red)}.tag.blue{background:var(--blue-soft);color:var(--blue)}
.control{width:100%;min-height:43px;border:1px solid var(--line);border-radius:11px;background:var(--surface);padding:0 12px;color:var(--ink);outline:none;font-size:16px}.control:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(39,197,115,.18)}textarea.control{padding:12px;min-height:105px;resize:vertical}.label{display:grid;gap:7px;font-size:12px;font-weight:700}.field-help{font-size:11px;color:var(--muted);font-weight:400}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid .span-2{grid-column:span 2}
/* Marketing */
.marketing{background:var(--bg)}.public-header{position:sticky;top:0;z-index:60;background:rgba(5,12,22,.82);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.public-nav{height:72px;display:flex;align-items:center;justify-content:space-between;gap:20px}.public-links{display:flex;align-items:center;gap:22px;font-size:13px;font-weight:700}.public-links>a:not(.btn):hover{color:var(--green)}.mobile-menu-btn,.mobile-menu{display:none}.hero{padding:82px 0 68px;overflow:hidden;background:radial-gradient(900px 520px at 18% -10%,rgba(39,197,115,.14),transparent 65%),radial-gradient(700px 460px at 88% 15%,rgba(47,201,239,.1),transparent 60%)}.btn-arrow svg{transition:transform .16s ease}.btn-arrow:hover svg{transform:translateX(3px)}.trust-strip{padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface)}.trust-row{display:flex;align-items:center;gap:22px;flex-wrap:wrap;justify-content:space-between}.trust-label{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);white-space:nowrap}.trust-logos{display:flex;gap:26px;flex-wrap:wrap}.trust-logos span{font-family:"Manrope";font-weight:800;font-size:13px;color:var(--ink);opacity:.72;letter-spacing:-.01em}.cta-mid{padding-top:0}.cta-banner{background:var(--navy);color:white;border-radius:26px;padding:38px 42px;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}.cta-banner h2{font-size:30px;margin:8px 0 6px;color:white}.cta-banner p{max-width:480px;color:#b7c4cc;margin:0}.btn-lg{min-height:50px;padding:0 22px;font-size:14px}.footer{padding:50px 0 24px;border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:30px;padding-bottom:30px}.footer-brand p{margin:12px 0 0;font-size:12px;max-width:280px;line-height:1.6}.footer-title{display:block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:12px}.footer-col{display:grid;gap:9px;align-content:start}.footer-col a{font-size:13px;font-weight:600;color:var(--ink)}.footer-col a:hover{color:var(--green)}.footer-bottom{padding-top:20px;border-top:1px solid var(--line);font-size:11px}.hero-grid{display:grid;grid-template-columns:1fr 1.03fr;align-items:center;gap:62px}.hero h1{font-size:58px;line-height:1.04;margin:17px 0 20px}.hero h1 span{color:var(--green)}.hero-copy{font-size:18px;line-height:1.65;max-width:620px}.hero-actions{display:flex;gap:11px;margin-top:28px;flex-wrap:wrap}.hero-proof{display:flex;gap:18px;flex-wrap:wrap;margin-top:24px;color:var(--muted);font-size:12px;font-weight:600}.hero-proof span{display:flex;align-items:center;gap:6px}.product-window{background:var(--navy);border-radius:26px;padding:12px;box-shadow:0 32px 90px rgba(13,27,42,.25);transform:rotate(.4deg)}.window-bar{height:32px;display:flex;align-items:center;gap:6px;padding-left:8px}.window-dot{width:8px;height:8px;border-radius:50%;background:#577080}.window-content{background:var(--surface);border-radius:18px;padding:18px;color:var(--ink)}.mini-top,.mini-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.mini-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:15px 0}.mini-kpi{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:11px}.mini-kpi strong{display:block;font-family:"Manrope";font-size:20px;margin-top:5px}.mini-list{display:grid;gap:7px}.mini-list>*{min-width:0}.mini-row{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:10px;min-width:0}.mini-row>div:nth-child(2){flex:1;min-width:0}.mini-row b{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-row small{font-size:9px;color:var(--muted)}.score-ring{width:38px;height:38px;border-radius:12px;background:var(--green-soft);display:grid;place-items:center;color:var(--green);font-weight:800}.marketing-section{padding:82px 0}.marketing-section.alt{background:var(--bg)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px}.section-head h2{font-size:42px;max-width:690px;margin:10px 0 0}.section-head p{max-width:420px;line-height:1.7}.suite-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:13px}.suite-card{border:1px solid var(--line);background:var(--surface);border-radius:17px;padding:18px;min-height:210px;transition:.18s}.suite-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--border-strong)}.suite-icon{width:43px;height:43px;border-radius:13px;background:var(--green-soft);color:var(--green);display:grid;place-items:center}.suite-card h3{font-family:"Manrope";font-size:16px;margin:22px 0 9px}.suite-card p{font-size:12px;line-height:1.6;color:var(--muted);margin:0 0 18px}.suite-card a{font-size:11px;font-weight:800;color:var(--green)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.step{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:25px}.step-num{font-family:"Manrope";font-size:34px;color:var(--green)}.step h3{font-family:"Manrope"}.step p{color:var(--muted);line-height:1.65;font-size:14px}.example-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:18px}.example-card{background:var(--navy);color:white;border-radius:22px;padding:28px}.example-card h3{font-family:"Manrope";font-size:26px}.example-card p{color:#b7c4cc;line-height:1.7}.example-score{background:var(--surface);color:var(--ink);border-radius:18px;padding:22px}.score-big{font-family:"Manrope";font-size:52px;color:var(--green)}.pilot{background:var(--navy);color:white;border-radius:26px;padding:38px;display:grid;grid-template-columns:.8fr 1.2fr;gap:38px}.pilot p{color:#b8c6ce;line-height:1.7}.pilot-form{background:var(--surface);color:var(--ink);border-radius:18px;padding:22px}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.pricing-card{position:relative;border:1px solid var(--line);background:var(--surface);border-radius:20px;padding:24px 20px;display:flex;flex-direction:column;transition:.18s}.pricing-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.pricing-card.featured{border-color:var(--green);box-shadow:0 0 0 1px var(--green)}.pricing-badge{position:absolute;top:-13px;left:20px;background:var(--green);color:#06251c;font-size:10px;font-weight:800;letter-spacing:.03em;padding:5px 12px;border-radius:999px}.pricing-card h3{font-family:"Manrope";font-size:19px;margin:6px 0 4px}.pricing-tag{font-size:12px;min-height:34px;margin:0 0 14px}.pricing-amount{font-family:"Manrope";font-size:30px;font-weight:800;margin-bottom:16px}.pricing-amount small{display:block;font-family:"DM Sans";font-size:11px;font-weight:600;color:var(--muted)}.pricing-features{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:9px;flex:1}.pricing-features li{display:flex;align-items:flex-start;gap:8px;font-size:12px;line-height:1.5;color:var(--muted)}.pricing-features li svg{flex-shrink:0;margin-top:2px;color:var(--green)}.faq{display:grid;gap:10px}.faq details{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:17px 20px}.faq summary{font-weight:800;cursor:pointer}.faq p{color:var(--muted);line-height:1.65}.footer{padding:42px 0;border-top:1px solid var(--line)}
/* App shell */
.app-layout{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr)}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);background:var(--navy);color:white;padding:19px 13px;display:flex;flex-direction:column;z-index:50}.sidebar .logo{padding:0 10px 21px}.sidebar .logo-mark{background:rgba(255,255,255,.08)}.sidebar-nav{display:grid;gap:4px;overflow-y:auto}.nav-group-label{font-size:9px;letter-spacing:.13em;color:#77909d;font-weight:800;padding:16px 12px 7px;text-transform:uppercase}.nav-item{display:flex;align-items:center;gap:11px;min-height:43px;border-radius:11px;padding:0 11px;color:#afbec7;font-weight:650;font-size:13px}.nav-item:hover,.nav-item.active{color:white;background:rgba(255,255,255,.08)}.nav-item.active{box-shadow:inset 3px 0 0 var(--green)}.sidebar-bottom{margin-top:auto;border-top:1px solid rgba(255,255,255,.1);padding-top:11px}.sidebar-company{display:flex;align-items:center;gap:10px;padding:12px 9px 2px}.avatar{width:38px;height:38px;border-radius:12px;background:var(--green);color:#063124;display:grid;place-items:center;font-weight:800}.sidebar-company strong{display:block;font-size:12px}.sidebar-company small{font-size:10px;color:#879da9}.app-main{grid-column:2;min-width:0}.topbar{height:70px;background:rgba(7,17,31,.82);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:14px;padding:0 28px}.topbar-title{font-family:"Manrope";font-weight:800;font-size:18px}.topbar-search{position:relative;width:min(390px,38vw);margin-left:auto}.topbar-search svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted)}.topbar-search input{padding-left:39px}.demo-chip{font-size:9px;font-weight:800;background:var(--amber-soft);color:var(--amber);border:1px solid rgba(240,184,75,.35);border-radius:999px;padding:7px 9px;white-space:nowrap}.demo-chip.live{background:var(--green-soft);color:var(--green);border-color:rgba(39,197,115,.35)}.demo-chip.err{background:var(--red-soft);color:var(--red);border-color:rgba(237,104,120,.35)}.app-content{padding:27px;max-width:1540px;margin:auto}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:23px}.page-head h1{font-family:"Manrope";font-size:31px;letter-spacing:-.035em;margin:0 0 4px}.page-head p{margin:0;color:var(--muted);font-size:13px}.mobile-bottom{display:none}.mobile-open{display:none}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:19px;min-width:0}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:15px}.panel-head h2,.panel-head h3{font-family:"Manrope";font-size:17px;margin:0}.panel-head p{font-size:11px;color:var(--muted);margin:3px 0 0}.kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:16px}.kpi-clickable{width:100%;text-align:left;font:inherit;color:inherit;cursor:pointer;transition:.15s}.kpi-clickable:hover{border-color:var(--border-strong)}.kpi-clickable.active{border-color:var(--green);box-shadow:0 0 0 1px var(--green)}.kpi-label{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:11px;font-weight:700}.kpi strong{display:block;font-family:"Manrope";font-size:28px;margin:13px 0 3px}.kpi small{font-size:10px;color:var(--green)}
.btn-orange{background:var(--orange);color:#fff;box-shadow:0 8px 22px rgba(255,122,26,.28)}.btn-orange:hover{background:var(--orange-2)}.btn-orange:disabled{opacity:.7;cursor:default;transform:none}
.credits-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;background:linear-gradient(120deg,var(--navy),var(--navy-2));border:1px solid var(--line);border-radius:18px;padding:20px 22px;margin-bottom:14px}
.credits-banner.empty{border-color:rgba(255,122,26,.4);box-shadow:0 0 0 1px rgba(255,122,26,.25)}
.credits-info{min-width:0;flex:1}.credits-eyebrow{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--orange-2)}
.credits-count{display:flex;align-items:baseline;gap:7px;margin:6px 0 10px}.credits-count strong{font-family:"Manrope";font-size:38px;line-height:1;color:#fff}.credits-of{font-family:"Manrope";font-size:20px;font-weight:800;color:#b7c4cc}.credits-count small{font-size:12px;color:#b7c4cc;margin-left:4px}
.credits-track{height:8px;border-radius:999px;background:rgba(255,255,255,.12);overflow:hidden;max-width:340px}.credits-track>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--orange),var(--orange-2));transition:width .3s ease}
.credits-help{font-size:12px;line-height:1.55;color:#b7c4cc;margin:10px 0 0;max-width:520px}
.credits-cta{flex-shrink:0;letter-spacing:.04em}
@media(max-width:640px){.credits-banner{flex-direction:column;align-items:stretch}.credits-cta{width:100%}}
.social-proof{position:fixed;left:18px;bottom:18px;z-index:70;max-width:335px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:12px 34px 12px 13px;opacity:0;transform:translateY(12px);transition:opacity .4s ease,transform .4s ease}
.social-proof.show{opacity:1;transform:translateY(0)}
.social-proof-body{display:flex;align-items:center;gap:10px}
.social-proof-ic{flex-shrink:0;width:34px;height:34px;border-radius:10px;background:var(--green-soft);color:var(--green);display:grid;place-items:center}
.social-proof-body p{margin:0;font-size:12px;line-height:1.42;color:var(--muted)}.social-proof-body b{color:var(--ink);font-weight:800}
.social-proof-close{position:absolute;top:7px;right:7px;width:22px;height:22px;border-radius:7px;border:none;background:transparent;color:var(--muted);display:grid;place-items:center;cursor:pointer}.social-proof-close:hover{background:var(--surface-2);color:var(--ink)}
@media(max-width:560px){.social-proof{left:10px;right:10px;bottom:10px;max-width:none}}
.public-opps-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:13px}
.public-opp-card{display:flex;flex-direction:column;gap:8px;border:1px solid var(--line);background:var(--surface);border-radius:16px;padding:17px;transition:.16s;position:relative}
.public-opp-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--border-strong)}
.public-opp-top{display:flex;gap:6px;flex-wrap:wrap}
.public-opp-card h3{font-family:"Manrope";font-size:15px;line-height:1.3;margin:2px 0 0;color:var(--ink)}
.public-opp-card>p{font-size:12px;margin:0}
.public-opp-lock{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:11px;font-weight:800;color:var(--green);border-top:1px solid var(--line);padding-top:10px}
.public-opp-card:hover .public-opp-lock{color:var(--green-2)}
.auth-perks{list-style:none;margin:0 0 16px;padding:14px 16px;display:grid;gap:9px;background:var(--surface-2);border:1px solid var(--line);border-radius:12px}
.auth-perks li{display:flex;align-items:center;gap:9px;font-size:12.5px;color:var(--ink)}.auth-perks li svg{color:var(--green);flex-shrink:0}
.pw-field{position:relative;display:flex;align-items:center}.pw-field .control{flex:1;padding-right:76px}
.pw-toggle{position:absolute;right:8px;border:none;background:transparent;color:var(--muted);font-size:12px;font-weight:800;cursor:pointer;padding:6px 8px;border-radius:8px}.pw-toggle:hover{color:var(--ink);background:var(--surface)}
/* Contenido SEO del HTML inicial (se reemplaza al hidratar la app). Se estila
   para que, en el brevísimo instante antes de que corra el JS, se vea prolijo
   y no un bloque de texto pelado. */
#seo-content{max-width:760px;margin:0 auto;padding:48px 22px;color:var(--muted)}
#seo-content header a{font-family:"Manrope";font-weight:800;font-size:18px;color:var(--ink)}
#seo-content h1{font-family:"Manrope";font-size:34px;line-height:1.1;color:var(--ink);margin:26px 0 14px}
#seo-content h2{font-family:"Manrope";font-size:20px;color:var(--ink);margin:28px 0 10px}
#seo-content p{line-height:1.6;margin:12px 0}#seo-content ul{line-height:1.7;padding-left:20px}
#seo-content a{color:var(--green)}#seo-content strong{color:var(--ink)}.dash-grid{display:grid;grid-template-columns:1.42fr .78fr;gap:15px;margin-top:15px}.dash-column{display:grid;gap:15px;align-content:start}.opportunity-list{display:grid;gap:9px}.opp-card{border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:14px;display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:12px;align-items:center;transition:.15s}.opp-card:hover{border-color:var(--border-strong);box-shadow:0 8px 24px rgba(13,27,42,.06)}.score{width:52px;height:52px;border-radius:15px;display:grid;place-items:center;background:var(--green-soft);color:var(--green);font-family:"Manrope";font-size:19px;font-weight:800}.score.mid{background:var(--amber-soft);color:var(--amber)}.score.low{background:var(--red-soft);color:var(--red)}.opp-title{font-weight:800;font-size:13px;line-height:1.3;margin-bottom:5px}.opp-meta{display:flex;flex-wrap:wrap;gap:7px 12px;font-size:10px;color:var(--muted)}.opp-actions{display:flex;gap:6px;align-items:center}.progress{height:7px;border-radius:999px;background:var(--track);overflow:hidden}.progress>span{display:block;height:100%;border-radius:inherit;background:var(--green)}.deadline-list{display:grid;gap:12px}.deadline-row{display:grid;grid-template-columns:42px 1fr auto;gap:10px;align-items:center}.date-box{background:var(--surface-2);border-radius:11px;text-align:center;padding:6px 2px}.date-box strong{display:block;font-family:"Manrope";font-size:16px}.date-box small{font-size:8px;text-transform:uppercase;color:var(--muted)}.deadline-row b{font-size:11px;line-height:1.25;display:block}.deadline-row p{font-size:9px;color:var(--muted);margin:3px 0 0}.chart{display:flex;align-items:end;gap:8px;height:150px;padding-top:12px}.bar-wrap{height:100%;flex:1;display:flex;flex-direction:column;justify-content:end;align-items:center;gap:6px}.bar{width:100%;max-width:34px;background:linear-gradient(180deg,var(--green-2),var(--green));border-radius:7px 7px 2px 2px;min-height:4px}.bar-wrap small{font-size:8px;color:var(--muted)}.activity{display:grid;gap:12px}.activity-row{display:grid;grid-template-columns:8px 1fr;gap:10px}.activity-dot{width:8px;height:8px;background:var(--green);border-radius:50%;margin-top:5px;box-shadow:0 0 0 5px var(--green-soft)}.activity-row b{font-size:11px}.activity-row p{font-size:10px;color:var(--muted);margin:3px 0}.activity-row time{font-size:9px;color:#8d999f}
/* Opportunities */
.filters{background:var(--surface);border:1px solid var(--line);border-radius:17px;padding:14px;margin-bottom:13px}.filter-grid{display:grid;grid-template-columns:minmax(230px,1.35fr) repeat(2,minmax(120px,.7fr));gap:9px;align-items:start}.search-input{position:relative;display:flex;align-items:center;gap:8px}.search-input svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted)}.search-input input{padding-left:39px;flex:1;min-width:0}.search-btn{flex-shrink:0;height:34px;border-radius:8px;display:flex;align-items:center;gap:5px;white-space:nowrap}
select.control{-webkit-appearance:none;appearance:none;padding-right:34px;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%238ba0ba" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"/></svg>');background-repeat:no-repeat;background-position:right 12px center;background-size:14px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.more-filters-toggle{display:none;grid-column:1/-1}.more-filters{display:contents}.active-filters{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.filter-chips{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.filter-chip{border:1px solid var(--line);background:var(--surface-2);color:var(--muted);border-radius:999px;padding:6px 12px;font-size:11px;font-weight:700}.filter-chip:hover{border-color:var(--border-strong);color:var(--ink)}.filter-chip.active{background:var(--green-soft);color:var(--green);border-color:rgba(39,197,115,.35)}.date-filter-wrap{position:relative}.btn-date-active{background:var(--green-soft);color:var(--green);border-color:rgba(39,197,115,.35)}.calendar-pop{position:absolute;top:calc(100% + 6px);left:0;z-index:70;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:14px;width:270px}.calendar-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;font-size:13px}.calendar-head button{width:28px;height:28px;font-size:16px;line-height:1;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--ink)}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;font-size:9px;color:var(--muted);text-align:center;margin-bottom:4px;text-transform:uppercase;font-weight:700}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.cal-day{position:relative;height:34px;border-radius:9px;border:1px solid transparent;background:transparent;color:var(--ink);font-size:12px;font-weight:600}.cal-day:hover{border-color:var(--border-strong)}.cal-day.today{border-color:var(--green)}.cal-day.sel{background:var(--green);color:#06251c}.cal-day small{position:absolute;bottom:2px;right:4px;font-size:8px;color:var(--green);font-weight:800}.cal-day.sel small{color:#06251c}.calendar-quick{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.star-row td{background:var(--green-soft)!important}.star-flag{display:block;font-size:9px;font-weight:800;color:var(--green);letter-spacing:.02em;margin-bottom:3px}.table-card{background:var(--surface);border:1px solid var(--line);border-radius:17px;overflow:hidden}.data-table{width:100%;border-collapse:collapse}.data-table th{background:var(--surface-2);text-align:left;padding:11px 12px;text-transform:uppercase;font-size:9px;letter-spacing:.07em;color:var(--muted)}.data-table td{padding:12px;border-top:1px solid var(--line);vertical-align:middle;font-size:11px}.data-table tr:hover td{background:var(--surface-2)}.table-title{font-weight:800;font-size:12px;max-width:460px;line-height:1.35}.table-sub{font-size:9px;color:var(--muted);margin-top:4px}.status-select{min-height:34px;border-radius:9px;font-size:10px;padding:0 7px;border:1px solid var(--line);background:var(--surface)}.mobile-cards{display:none}.count-line{font-size:11px;color:var(--muted);margin-bottom:10px}
/* Detail */
.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 304px;gap:15px}.detail-hero{background:var(--navy);color:white;border-radius:21px;padding:24px}.detail-hero h1{font-family:"Manrope";font-size:27px;line-height:1.16;margin:13px 0 10px}.detail-meta{display:flex;gap:9px 16px;flex-wrap:wrap;color:#afbec7;font-size:11px}.detail-score{min-width:118px;background:var(--surface);color:var(--ink);border-radius:17px;padding:15px;text-align:center}.detail-score strong{font-family:"Manrope";font-size:38px;color:var(--green)}.detail-score small{display:block;color:var(--muted);font-size:9px}.tabs{display:flex;gap:6px;overflow:auto;margin:14px 0}.tab{min-height:37px;border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:0 12px;font-size:11px;font-weight:750;white-space:nowrap}.tab.active{background:var(--navy);color:white;border-color:var(--navy)}.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.insight{border-radius:14px;padding:14px;background:var(--surface-2)}.insight.good{background:var(--green-soft)}.insight.risk{background:var(--amber-soft)}.insight h3{font-size:11px;margin:0 0 7px}.insight p{font-size:11px;color:var(--muted);line-height:1.5;margin:0}.breakdown{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-top:13px}.break-item{background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:10px}.break-item small{display:block;color:var(--muted);font-size:8px;min-height:22px}.break-item strong{font-family:"Manrope";font-size:15px}.checklist{display:grid;gap:8px}.check-row{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--line);border-radius:12px;padding:11px}.check-button{width:22px;height:22px;border:2px solid var(--border-strong);border-radius:7px;background:var(--surface);flex:0 0 auto;display:grid;place-items:center;color:#063124}.check-row.done .check-button{background:var(--green);border-color:var(--green)}.check-row b{font-size:11px}.check-row p{font-size:9px;color:var(--muted);margin:3px 0 0}.detail-aside{display:grid;gap:12px;align-self:start;position:sticky;top:86px}.data-list{display:grid;gap:10px}.data-row{display:flex;justify-content:space-between;gap:15px;font-size:10px}.data-row span{color:var(--muted)}.item-table{width:100%;border-collapse:collapse}.item-table th,.item-table td{padding:10px;border-bottom:1px solid var(--line);text-align:left;font-size:10px}.item-table th{color:var(--muted);font-size:9px;text-transform:uppercase}.doc-list{display:grid;gap:8px}.doc-row{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:12px;padding:11px}.doc-row>div{flex:1}.doc-row b{font-size:11px}.doc-row small{font-size:9px;color:var(--muted)}.portal-list{display:grid;gap:11px}.portal-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;border:1px solid var(--line);border-radius:14px;padding:14px;background:var(--surface)}.portal-row-main{flex:1;min-width:200px}.portal-row-main b{font-size:13px}.portal-row-main small{display:block;color:var(--muted);font-size:10px;margin-top:2px}.portal-status-select{max-width:180px;min-height:38px}.note-list{display:grid;gap:9px;margin-top:13px}.note{background:var(--surface-2);border-radius:12px;padding:12px}.note p{font-size:11px;margin:0 0 7px;line-height:1.5}.note small{color:var(--muted);font-size:9px}.price-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.price-card{border:1px solid var(--line);border-radius:12px;padding:13px}.price-card small{display:block;color:var(--muted);font-size:9px}.price-card strong{font-family:"Manrope";font-size:18px;display:block;margin-top:6px}
/* Other modules */
.kanban{display:grid;grid-template-columns:repeat(5,minmax(235px,1fr));gap:12px;overflow:auto;padding-bottom:10px}.kanban-col{background:var(--surface-2);border-radius:16px;padding:11px;min-height:570px;transition:.12s}.kanban-col.drag-over{background:var(--green-soft);outline:2px dashed var(--green);outline-offset:-2px}.kanban-head{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:800;padding:3px 3px 11px}.kanban-count{width:24px;height:24px;border-radius:8px;background:var(--surface);display:grid;place-items:center}.kanban-list{display:grid;gap:8px}.kanban-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:11px;touch-action:none}.kanban-card.touch-dragging{opacity:.55;box-shadow:var(--shadow)}.kanban-card h4{font-size:11px;line-height:1.4;margin:8px 0}.kanban-card small{font-size:9px;color:var(--muted)}.kanban-card select{margin-top:9px;width:100%}.alert-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.alert-card{background:var(--surface);border:1px solid var(--line);border-radius:17px;padding:17px}.alert-card h3{font-family:"Manrope";font-size:15px;margin:13px 0 6px}.alert-card p{font-size:10px;color:var(--muted);line-height:1.55;min-height:48px}.switch{width:42px;height:24px;border-radius:999px;background:var(--track);border:0;padding:3px;transition:.15s}.switch:after{content:"";display:block;width:18px;height:18px;border-radius:50%;background:#e7edf5;transition:.15s;box-shadow:0 2px 5px rgba(0,0,0,.15)}.switch.on{background:var(--green)}.switch.on:after{transform:translateX(18px)}.module-grid{display:grid;grid-template-columns:270px 1fr;gap:15px}.module-menu{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:9px;align-self:start}.module-link{display:flex;gap:9px;align-items:center;padding:11px;border-radius:10px;font-size:11px;font-weight:750}.module-link:hover,.module-link.active{background:var(--surface-2)}.profile-score{background:var(--navy);color:white;border-radius:18px;padding:20px}.profile-score strong{font-family:"Manrope";font-size:40px;color:var(--green)}.chips{display:flex;flex-wrap:wrap;gap:7px}.chip{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:7px 9px;font-size:10px}.analytics-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.hbar-list{display:grid;gap:11px}.hbar-row{display:grid;grid-template-columns:130px 1fr 32px;gap:10px;align-items:center;font-size:10px}.hbar-track{height:9px;background:var(--track);border-radius:999px;overflow:hidden}.hbar-fill{height:100%;background:var(--green);border-radius:inherit}.section-note{padding:14px 17px;border-radius:14px;font-size:12px;line-height:1.55}.section-note strong{display:block;margin-bottom:3px;font-size:13px}.upload-zone{border:2px dashed var(--border-strong);border-radius:16px;background:var(--surface-2);padding:32px;text-align:center}.upload-zone.drag{border-color:var(--green);background:var(--green-soft)}.document-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.document-card{background:var(--surface);border:1px solid var(--line);border-radius:15px;padding:15px}.document-card h3{font-size:12px;margin:12px 0 6px}.document-card p{font-size:10px;color:var(--muted);line-height:1.5}.empty{padding:45px;text-align:center;color:var(--muted)}
/* modal/drawer/toast */
.modal-backdrop{position:fixed;inset:0;background:rgba(5,17,27,.55);display:grid;place-items:center;padding:20px;z-index:100}.modal{width:min(640px,100%);max-height:90vh;overflow:auto;background:var(--surface);border-radius:20px;box-shadow:0 30px 100px rgba(0,0,0,.28)}.modal-head{padding:19px 21px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.modal-head h2{font-family:"Manrope";font-size:18px;margin:0}.modal-body{padding:21px}.modal-foot{padding:15px 21px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:9px}.drawer-backdrop{position:fixed;inset:0;background:rgba(5,17,27,.35);z-index:90}.drawer{position:absolute;right:0;top:0;bottom:0;width:min(420px,92vw);background:var(--surface);box-shadow:-20px 0 60px rgba(0,0,0,.16);padding:22px;overflow:auto}.notification{border-bottom:1px solid var(--line);padding:13px 0}.notification b{font-size:11px}.notification p{font-size:10px;color:var(--muted);line-height:1.5;margin:5px 0}.toast{position:fixed;right:22px;bottom:22px;background:var(--navy);color:white;border-radius:12px;padding:13px 16px;box-shadow:var(--shadow);font-size:12px;font-weight:700;z-index:120;animation:toastin .18s ease}@keyframes toastin{from{opacity:0;transform:translateY(8px)}}
/* Responsive */
@media(max-width:1180px){.kpi-grid{grid-template-columns:repeat(3,1fr)}.suite-grid{grid-template-columns:repeat(3,1fr)}.filter-grid{grid-template-columns:1.4fr repeat(2,.8fr)}.more-filters-toggle{display:flex}.more-filters{display:none;grid-column:1/-1;grid-template-columns:repeat(3,minmax(120px,1fr));gap:9px}.more-filters.open{display:grid}.breakdown{grid-template-columns:repeat(4,1fr)}.alert-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){:root{--sidebar:0px}.sidebar{transform:translateX(-100%);width:246px;transition:.2s}.sidebar.open{transform:translateX(0)}.app-layout{display:block}.app-main{grid-column:auto}.topbar{padding:0 15px}.mobile-open{display:grid}.topbar-search{display:none}.app-content{padding:18px 15px 86px}.mobile-bottom{position:fixed;left:0;right:0;bottom:0;z-index:45;background:var(--surface);border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr);padding:7px 4px max(7px,env(safe-area-inset-bottom))}.mobile-bottom a{display:grid;place-items:center;gap:3px;color:var(--muted);font-size:8px;font-weight:700}.mobile-bottom a.active{color:var(--green)}.hero-grid,.pilot,.example-grid{grid-template-columns:1fr}.hero-grid>*,.pilot>*,.example-grid>*,.suite-grid>*,.dash-grid>*,.detail-layout>*,.module-grid>*,.analytics-grid>*,.document-grid>*{min-width:0}.hero h1{font-size:38px;overflow-wrap:break-word}.suite-grid,.pricing-grid{grid-template-columns:repeat(2,1fr)}.dash-grid,.detail-layout,.module-grid{grid-template-columns:1fr}.detail-aside{position:static}.detail-score{min-width:95px}.analytics-grid{grid-template-columns:1fr}.document-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.public-links{display:none}.mobile-menu-btn{display:grid}.mobile-menu{position:absolute;left:0;right:0;top:72px;background:var(--surface);border-bottom:1px solid var(--line);padding:12px 18px}.mobile-menu.open{display:grid}.mobile-menu a{padding:12px;font-weight:700}.hero{padding:55px 0}.hero h1{font-size:39px}.hero-copy{font-size:15px}.product-window{margin-top:15px}.section-head{display:block}.section-head h2{font-size:32px}.suite-grid,.steps,.alert-grid,.document-grid,.pricing-grid{grid-template-columns:1fr}.marketing-section{padding:60px 0}.pilot{padding:22px}.form-grid,.form-grid.three{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}.page-head{align-items:flex-start;flex-direction:column}.page-head h1{font-size:26px}.page-head .row.wrap{width:100%;justify-content:center}.kpi-grid{grid-template-columns:repeat(2,1fr)}.kpi:last-child{grid-column:span 2}.opp-card{grid-template-columns:48px 1fr}.opp-actions{grid-column:2}.score{width:46px;height:46px}.data-table{display:none}.mobile-cards{display:grid;gap:9px}.filter-grid{grid-template-columns:1fr 1fr}.filter-grid>*:first-child{grid-column:span 2}.more-filters.open{grid-template-columns:1fr}.detail-hero{padding:18px}.detail-hero h1{font-size:21px}.detail-hero>.row{align-items:flex-start}.detail-score strong{font-size:30px}.insight-grid{grid-template-columns:1fr}.breakdown{grid-template-columns:repeat(2,1fr)}.price-grid{grid-template-columns:repeat(2,1fr)}.topbar-title{font-size:14px}.demo-chip{display:none}.hbar-row{grid-template-columns:90px 1fr 26px}.modal-backdrop{padding:8px}.modal{border-radius:16px}.example-card{padding:20px}.trust-row{flex-direction:column;align-items:flex-start;gap:12px}.cta-banner{padding:26px 22px}.cta-banner h2{font-size:23px}.footer-grid{grid-template-columns:1fr}}

/* --- Pantalla de autenticación --- */
.auth-wrap{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(1200px 600px at 50% -10%,var(--blue-soft),var(--bg))}
.auth-card{width:100%;max-width:400px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:28px}
.onboarding-card{max-width:640px}
.onboarding-advanced{border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin-top:2px}
.onboarding-advanced summary{font-weight:800;cursor:pointer;font-size:13px}
.auth-card .logo{margin:0}
.auth-card .label{display:block;margin-top:12px}
.auth-card a{color:var(--blue);text-decoration:none}

/* --- Nota de oferta (imprimible / "Guardar como PDF" con el navegador) --- */
.oferta-print{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:32px;max-width:820px;margin:0 auto;color:#1a1a1a;box-shadow:0 12px 40px rgba(0,0,0,.35)}
.oferta-print .control{background:#fff;border-color:#ccd3da;color:#1a1a1a}
.oferta-print h1{font-family:"Manrope";font-size:22px;margin:18px 0 14px}
.oferta-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;font-size:13px;line-height:1.6;border-bottom:2px solid #1a1a1a;padding-bottom:14px}
.oferta-fecha{font-size:13px;white-space:nowrap}
.oferta-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px;margin-bottom:18px;font-size:13px}
.oferta-meta span{display:block;color:#666;font-size:11px;text-transform:uppercase;letter-spacing:.04em}
.oferta-table th,.oferta-table td{color:#1a1a1a}
.oferta-firma{margin-top:60px;text-align:center;font-size:13px}
.oferta-firma small{color:#666}
@media print{
 .sidebar,.topbar,.mobile-bottom,.no-print{display:none!important}
 .app-layout{display:block}
 .app-main{grid-column:auto}
 .app-content{padding:0;max-width:none}
 .oferta-print{border:none;padding:0;max-width:none;box-shadow:none}
 body{background:white}
}
.auth-card a.muted{color:var(--muted)}
