*{box-sizing:border-box}body{margin:0;background:#f2f6fc;color:#142642;font-family:Inter,system-ui,Arial,sans-serif;font-size:14px}a{color:#2365bf;text-decoration:none}.layout{display:flex;min-height:100vh}.side{background:linear-gradient(165deg,#0b2039,#091526);color:#dbeafe;width:238px;flex:none;min-height:100vh;position:sticky;top:0;height:100vh;overflow:auto;display:flex;flex-direction:column;transition:width .22s}.side.compact{width:70px}.brand{display:flex;align-items:center;gap:10px;padding:22px 16px;border-bottom:1px solid #ffffff20}.brandmark{font-size:28px;color:#61b7ff;font-weight:800}.brand span{display:flex;flex-direction:column;white-space:nowrap}.brand small{font-size:11px;color:#91aac6;margin-top:4px}.side nav{padding:13px 9px;flex:1}.navitem{color:#d4e2f6;display:flex;align-items:center;gap:10px;margin:3px 8px;padding:12px;border-radius:12px;white-space:nowrap}.navitem:hover,.navitem.active{background:#216bed;color:white}.navitem i{font-style:normal;font-size:21px;width:23px;text-align:center;flex:none}.compact .navitem{justify-content:center;margin:3px 6px;padding:12px 6px}.compact .navitem span,.compact .brand span{display:none}.compact .brand{justify-content:center;padding:22px 5px}.main{min-width:0;flex:1;display:flex;flex-direction:column}.top{height:65px;background:white;border-bottom:1px solid #dfe7f3;display:flex;align-items:center;gap:20px;padding:0 24px;position:sticky;top:0;z-index:3}.right{margin-left:auto;color:#60738b}.iconbtn{border:1px solid #dce5f3;background:white;border-radius:10px;padding:10px 12px;cursor:pointer}.content{padding:24px;flex:1;max-width:1500px;width:100%;margin:auto}.hero{background:linear-gradient(110deg,#092d58,#1257a2);color:#fff;padding:30px 32px;border-radius:20px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 12px 28px #0b376322}.hero h1{font-size:29px;margin:7px 0}.hero p{margin:0;color:#d4e7fa}.pill{border:1px solid #a2d7f776;padding:9px 14px;border-radius:24px}.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0 24px}.kpi{background:white;border:1px solid #e2ebf6;padding:21px;border-radius:17px;display:flex;flex-direction:column;box-shadow:0 6px 20px #253b5b09;color:#344967}.kpi b{font-size:29px;color:#10335a;margin:8px 0}.kpi small{color:#8292a6}.sectionhead{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:25px 0 14px}.sectionhead h2{margin:0;font-size:23px}.sectionhead p{margin:5px 0;color:#71839b}.panel{background:white;border:1px solid #e1e9f4;padding:20px;border-radius:18px;margin-bottom:16px;box-shadow:0 7px 25px #082b5408}.panel h3{margin:0 0 18px}.tablewrap{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:650px}th{text-align:left;background:#f5f8fd;color:#5a6d86;padding:12px}td{padding:13px;border-bottom:1px solid #eef2f7}input,textarea,select{width:100%;padding:11px;border:1px solid #cfdbed;border-radius:10px;background:#fff;font:inherit;color:#172b47}label{display:block;font-weight:600;font-size:12px;color:#536b84}label input,label textarea{margin-top:6px}.formgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:18px}.primary,.smallbtn{display:inline-block;background:#2478ee;color:#fff;border:0;padding:11px 17px;border-radius:11px;cursor:pointer;font-weight:700}.smallbtn{padding:7px 12px;background:#eaf2ff;color:#165ab4}.danger{background:#fff0f0;color:#b22a30}.empty{text-align:center;padding:25px;color:#71839b}.notice{padding:12px;border-radius:10px;background:#fff1e8;color:#a04c22}.copyright{text-align:center;color:#70859d;padding:20px;font-size:12px}.login{min-height:100vh;display:grid;place-items:center}.loginbox{background:#fff;border-radius:22px;padding:36px;width:min(440px,92vw);box-shadow:0 15px 60px #1938551f}.loginbox h1{margin:10px 0}.loginbox p{color:#73849c}.loginbox label{margin:14px 0}.loginbox .primary{width:100%;margin-top:10px}.login .copyright{position:fixed;bottom:12px}.portalnav{position:fixed;bottom:0;left:0;right:0;background:#082c45;display:flex;justify-content:space-around;padding:10px 3px 14px;border-radius:18px 18px 0 0;z-index:6}.portalnav a{color:#b8d2e2;text-align:center;padding:4px;font-size:12px}.portalnav a.on{color:#46d59f}.portalnav b{display:block;font-size:22px}.portalwrap{max-width:680px;margin:auto;padding:16px 16px 100px}.portalhead{background:#072a3f;color:white;border-radius:0 0 24px 24px;padding:25px 20px 42px;margin:-16px -16px -25px}.portalhead h1{margin:12px 0 5px;font-size:25px}.portalhead small{color:#c2d6e8}.portalcard{background:white;padding:17px;border-radius:17px;margin:13px 0;box-shadow:0 6px 22px #223f6b13;border:1px solid #e5edf6}.tilegrid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.tile{padding:20px 12px;background:#fff;border-radius:17px;text-align:center;color:#17375c;box-shadow:0 6px 20px #1c416b12}.tile i{font-size:30px;display:block;color:#2480e9;font-style:normal}.muted{color:#7589a2}.hint{background:#e7f9f1;padding:12px;border-radius:12px;color:#147349;margin:12px 0}.portalrow{border-bottom:1px solid #edf2f7;padding:12px 2px}.portalrow:last-child{border:0}.portalrow b{display:block;margin-bottom:4px}.portalrow small{color:#668099}.demo-banner{background:#e8f6ed;border:1px solid #bfe9d0;padding:11px;border-radius:12px;color:#226c44;margin:15px 0} @media(max-width:800px){.side{width:70px}.side span{display:none}.side .brand{justify-content:center}.kpis{grid-template-columns:repeat(2,1fr)}.formgrid{grid-template-columns:1fr 1fr}.content{padding:15px}.hero{padding:21px}.hero h1{font-size:22px}}@media(max-width:560px){.side{width:53px}.navitem{justify-content:center;margin:2px;padding:12px 4px}.navitem span{display:none}.top{padding:0 12px}.top .right{font-size:10px}.formgrid,.kpis{grid-template-columns:1fr}.hero .pill{display:none}.sectionhead{align-items:flex-start;flex-direction:column}.content{padding:12px}.portalwrap .formgrid{grid-template-columns:1fr}}
.brandmark{font-size:0;width:42px;height:42px;display:block;flex:none;background:url(img/logo-inmobiliario.png) center/contain no-repeat}.loginbox .brandmark{width:88px;height:72px;margin:0 auto}.loginbox h1{text-align:center}.loginbox p{text-align:center}.copyright a{display:inline-flex;align-items:center;gap:7px}.copyright a:before{content:'';display:inline-block;width:30px;height:28px;background:url(img/sof-logo.png) center/contain no-repeat}
