
:root{
  --bg:#050914;--bg2:#07111f;--side:#07111f;--panel:#0b1728;--panel2:#0e1d33;
  --line:rgba(105,137,190,.22);--line2:rgba(255,255,255,.065);
  --txt:#edf5ff;--muted:#93a7c6;--soft:#6f86aa;
  --blue:#1785ff;--cyan:#28d8ff;--green:#22d37f;--red:#ff5268;--amber:#f4b740;--purple:#9e54ff;
  --shadow:0 18px 44px rgba(0,0,0,.32);--sidew:252px;
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;max-width:100%;overflow-x:hidden;background:
radial-gradient(circle at 76% -18%,rgba(35,105,210,.32),transparent 32%),
radial-gradient(circle at 15% 20%,rgba(25,216,255,.08),transparent 34%),
#050914;color:var(--txt);font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;font-size:14px}
a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}
body.app{min-height:100vh}.sidebar{position:fixed;left:0;top:0;bottom:0;width:var(--sidew);z-index:50;background:
linear-gradient(180deg,rgba(7,17,31,.98),rgba(5,11,21,.98));border-right:1px solid var(--line2);padding:18px 14px;display:flex;flex-direction:column;gap:18px;transition:.22s ease}
body.menu-off .sidebar{transform:translateX(-100%)}.brand{display:flex;align-items:center;gap:12px;min-height:50px}.brand-logo{width:46px;height:46px;border-radius:15px;background:linear-gradient(145deg,#09213d,#071426);position:relative;box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 12px 24px rgba(0,0,0,.22)}
.brand-logo:before{content:"";position:absolute;inset:9px;border:2.5px solid #25a7ff;border-radius:11px;transform:rotate(45deg);box-shadow:0 0 16px rgba(37,167,255,.36)}
.brand-logo:after{content:"";position:absolute;left:19px;top:7px;width:8px;height:32px;border-radius:99px;background:linear-gradient(#24dbff,#1978ff);box-shadow:0 0 14px rgba(36,219,255,.35)}
.brand strong{display:block;font-size:24px;line-height:1;font-weight:900;letter-spacing:-.045em}.brand strong span{color:var(--blue)}.brand small{display:block;color:var(--muted);font-size:12px;line-height:1.25;margin-top:3px}.close-side{display:none;margin-left:auto;width:34px;height:34px;border:1px solid var(--line);border-radius:12px;background:#0e1d33;color:#fff;font-size:20px}
.nav{display:grid;gap:16px;overflow:auto;scrollbar-width:thin;scrollbar-color:#294464 transparent;padding-right:3px}.nav section{display:grid;gap:5px}.nav b{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#6f86aa;padding:0 10px}.nav a{display:flex;align-items:center;gap:12px;min-height:44px;padding:10px 12px;border-radius:13px;border:1px solid transparent;color:#c5d2e7;font-weight:650}.nav a:hover{background:#0d1a2f;border-color:var(--line2)}.nav a.active{background:linear-gradient(135deg,#1478ff,#0c5ad2);color:white;box-shadow:0 10px 24px rgba(20,120,255,.28)}.nav i{font-style:normal;width:21px;color:#a9b9d2}.nav .bubble{margin-left:auto;background:#ed4c63;color:#fff;min-width:22px;height:22px;border-radius:999px;display:grid;place-items:center;font-size:11px}
.side-card{margin-top:auto;border:1px solid var(--line);background:rgba(10,23,41,.76);border-radius:16px;padding:13px;display:flex;gap:10px;align-items:center}.side-card .dot{width:10px;height:10px;border-radius:50%;background:#21d97a;box-shadow:0 0 13px #21d97a}.side-card strong{display:block;font-size:13px}.side-card small{font-size:11px;color:var(--muted)}
.wrap{margin-left:var(--sidew);max-width:calc(100vw - var(--sidew));transition:.22s ease;min-height:100vh}body.menu-off .wrap{margin-left:0;max-width:100vw}
.top{height:66px;display:flex;align-items:center;gap:14px;padding:10px 24px;background:rgba(5,10,18,.86);border-bottom:1px solid var(--line2);backdrop-filter:blur(18px);position:sticky;top:0;z-index:42}.hamb{width:38px;height:38px;border:0;background:transparent;color:#d6e1f2;font-size:23px}.search{width:min(530px,44vw);height:43px;border:1px solid var(--line);background:#0e1c32;border-radius:15px;display:flex;align-items:center;gap:10px;padding:0 13px;min-width:270px}.search input{flex:1;border:0;background:transparent;outline:0;color:#e8f2ff}.search span{color:#91afd6}.search kbd{font-size:11px;color:#9eb2d0;border:1px solid var(--line);border-radius:8px;padding:3px 7px}.top-actions{margin-left:auto;display:flex;align-items:center;gap:10px}.chip,.topbtn,.userchip{min-height:40px;border:1px solid var(--line);background:#0e1c32;border-radius:15px;display:flex;align-items:center;gap:8px;padding:8px 12px;color:#eaf4ff;font-weight:750}.chip{color:#88f4b8;white-space:nowrap;font-size:13px}.topbtn{min-width:40px;justify-content:center}.userchip{padding:6px 10px}.avatar{width:34px;height:34px;border-radius:50%;overflow:hidden;background:#157bff;display:grid;place-items:center;font-weight:900;flex:0 0 34px}.avatar img{width:100%;height:100%;object-fit:cover}.userchip p{margin:0}.userchip strong{display:block;font-size:13px}.userchip small{display:block;color:var(--muted);font-size:11px}
.main{padding:24px 34px 34px;max-width:1420px;margin:0 auto}.hero-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.welcome h1{font-size:34px;margin:0 0 8px;line-height:1.04;letter-spacing:-.04em}.welcome p{margin:0;color:#aabbd4;font-size:15px}.quick-alert{width:330px;border:1px solid rgba(255,82,104,.5);background:linear-gradient(135deg,rgba(73,19,31,.9),rgba(13,25,44,.96));border-radius:18px;padding:13px;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow)}.quick-alert .bang{width:44px;height:44px;border-radius:50%;background:radial-gradient(circle,#ff6a7b,#7c1526);display:grid;place-items:center;font-size:22px;font-weight:900}.quick-alert strong{display:block}.quick-alert small{display:block;color:#ccd8e9;font-size:12px;line-height:1.35}.quick-alert button{margin-left:auto;background:transparent;border:0;color:#b7c6dd;font-size:20px}
.stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:18px 0 16px}.stat{min-height:108px;display:flex;gap:13px;align-items:center;border:1px solid var(--line);background:linear-gradient(180deg,#0d1b31,#0a1425);border-radius:20px;padding:15px;box-shadow:0 15px 34px rgba(0,0,0,.22);overflow:hidden}.stat i{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;font-style:normal;font-size:24px;flex:0 0 54px}.stat.blue i{background:linear-gradient(135deg,#145edf,#1a9dff)}.stat.purple i{background:linear-gradient(135deg,#6d32ba,#bc32ed)}.stat.red i{background:linear-gradient(135deg,#a01c33,#ff5268)}.stat.green i{background:linear-gradient(135deg,#087653,#20d58f)}.stat.orange i{background:linear-gradient(135deg,#b65b11,#fb923c)}.stat span{display:block;color:#d8e5f8;font-weight:720;font-size:13px}.stat strong{font-size:31px;display:block;line-height:1;margin:4px 0}.stat small{color:#8da1bf;font-size:12px}.stat b{margin-left:auto;color:#75a8ef;font-size:26px}
.grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.9fr);gap:16px}.panel{border:1px solid var(--line);background:linear-gradient(180deg,#0d1a30,#091426);border-radius:20px;padding:16px;box-shadow:0 15px 35px rgba(0,0,0,.24);min-width:0}.panel h2{font-size:21px;margin:0}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:10px}.panel-head a,.linkbtn{border:1px solid var(--line);background:#0e1d34;border-radius:13px;padding:8px 12px;font-weight:850;font-size:13px}.rows{display:grid;gap:7px}.row{display:grid;grid-template-columns:1fr .85fr .75fr .85fr .75fr;gap:10px;align-items:center;padding:10px 11px;border-radius:14px;background:#081321;border:1px solid var(--line2)}.row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row.head{background:transparent;border:0;color:#6e89ae;font-weight:900;text-transform:uppercase;font-size:11px;padding:0 8px 5px}.row em{font-style:normal;font-size:11px;color:#83f4cd;background:#0d342b;border:1px solid rgba(32,213,143,.25);border-radius:99px;padding:5px 8px}.row.web{grid-template-columns:1fr .8fr 1.35fr}.tasklist,.doclist,.access-grid,.activity{display:grid;gap:9px}.task,.doc,.activity-item{display:flex;align-items:center;gap:11px;border:1px solid var(--line2);background:#081321;border-radius:16px;padding:11px}.task.hot{background:rgba(76,20,32,.42);border-color:rgba(255,82,104,.42)}.task .check{width:22px;height:22px;border:3px solid #1e9cff;border-radius:6px}.task.hot .check{border-color:var(--red)}.task strong,.doc strong,.activity-item strong{font-size:14px}.task small,.doc small,.activity-item small{display:block;color:#8fa3c0;font-size:12px}.task em{margin-left:auto;font-style:normal;border-radius:10px;background:#13243d;padding:6px 9px;font-size:11px}.doc i,.activity-item i{width:34px;height:34px;border-radius:12px;background:#12213a;display:grid;place-items:center;font-style:normal}.access-grid{grid-template-columns:1fr 1fr}.access{border:1px solid var(--line2);background:#081321;border-radius:15px;padding:12px}.access strong{display:block}.access small{display:block;color:#8fa3c0;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.empty{border:1px dashed var(--line);border-radius:16px;padding:22px;text-align:center;color:#80a9dd}
.alarm-modal{display:none;position:fixed;inset:0;z-index:90;background:rgba(2,6,13,.55);backdrop-filter:blur(5px);align-items:center;justify-content:center}.alarm-modal.show{display:flex}.alarm-box{width:min(520px,92vw);border:1px solid rgba(255,82,104,.48);background:linear-gradient(180deg,#101d34,#0b1728);border-radius:23px;padding:24px;text-align:center;box-shadow:0 32px 80px rgba(0,0,0,.52);position:relative}.alarm-box>button{position:absolute;right:14px;top:12px;border:0;background:transparent;color:#b6c6dd;font-size:22px}.alarm-big{width:72px;height:72px;border-radius:50%;background:radial-gradient(circle,#ff6a7b,#7c1526);display:grid;place-items:center;margin:0 auto 14px;font-size:34px;font-weight:900;box-shadow:0 0 0 12px rgba(255,82,104,.08)}.alarm-box h2{margin:0 0 6px;color:var(--red)}.alarm-box h3{margin:0 0 8px}.alarm-box p{color:#aebed5}.alarm-actions{display:flex;justify-content:center;gap:10px;margin-top:16px}.alarm-actions button,.alarm-actions a{border:1px solid var(--line);background:#11223d;color:#fff;border-radius:13px;padding:10px 13px}.alarm-actions a{background:#1478ff;border:0}
.page-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:14px;gap:12px}.page-title small{color:#39c6ff;text-transform:uppercase;font-weight:900;letter-spacing:.12em}.page-title h1{font-size:30px;margin:4px 0}.page-title p{color:#93a9c7;margin:0}.newbtn,.form-actions button{border:0;background:linear-gradient(135deg,#1478ff,#28d8ff);color:#fff;border-radius:13px;padding:10px 14px;font-weight:900}.records{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.record{background:linear-gradient(180deg,#0d1a30,#091426);border:1px solid var(--line);border-radius:19px;padding:15px}.rec-head{display:flex;justify-content:space-between;gap:10px}.rec-head h3{margin:0 0 4px;font-size:18px}.rec-head p{margin:0;color:#8fa3c0;font-size:12px}.rec-head em{height:max-content;font-style:normal;background:#0d342b;color:#82f4cb;border:1px solid rgba(32,213,143,.25);border-radius:99px;padding:7px 10px;font-size:11px}.rec-info{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:12px}.rec-info div,.detail-item{background:#081321;border:1px solid var(--line2);border-radius:15px;padding:11px;min-width:0}.rec-info span,.detail-item span{display:block;color:#6f8ab0;text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:900;margin-bottom:6px}.rec-info b,.detail-item strong{font-size:13px;word-break:break-word}.rec-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}.rec-actions a,.rec-actions button,.detail-top a,.detail-item button{border:1px solid var(--line);background:#10213d;color:#e8f2ff;border-radius:12px;padding:8px 11px;font-weight:800;font-size:13px}.rec-actions .danger{background:#9d1b30;color:#fff}
.modal{display:none;position:fixed;inset:0;z-index:95;background:rgba(2,6,13,.75);backdrop-filter:blur(9px);align-items:center;justify-content:center;padding:18px}.modal.show{display:flex}.modal-box{position:relative;width:min(940px,94vw);max-height:91vh;overflow:auto;border:1px solid var(--line);border-radius:23px;background:linear-gradient(180deg,#0d1a30,#07111f);padding:22px}.modal-close{position:absolute;right:14px;top:13px;border:1px solid var(--line);background:#10213d;color:#fff;border-radius:12px;width:38px;height:38px;font-size:20px}.form-box small,.detail-top small{color:#39c6ff;text-transform:uppercase;letter-spacing:.1em;font-weight:900}.form-box h2,.detail h2{font-size:24px;margin:5px 0 15px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid label{display:grid;gap:7px}.form-grid label span,.extra>b{font-size:10px;text-transform:uppercase;color:#89a7d1;letter-spacing:.08em;font-weight:900}.form-grid input,.form-grid select,.form-grid textarea,.detail-item input{min-height:45px;background:#081321;border:1px solid var(--line);color:#edf6ff;border-radius:13px;padding:11px 12px}.form-grid textarea{min-height:96px}.full{grid-column:1/-1}.extra{border:1px solid var(--line2);background:rgba(8,19,33,.68);border-radius:16px;padding:12px}.form-actions{display:flex;justify-content:flex-end;gap:10px}.form-actions button+button{background:#10213d;border:1px solid var(--line)}.switch{display:flex!important;align-items:center;justify-content:space-between;background:#081321;border:1px solid var(--line2);border-radius:14px;padding:11px 12px}.switch input{display:none}.switch b{width:48px;height:27px;background:#20304b;border-radius:99px;position:relative}.switch b:after{content:"";position:absolute;left:4px;top:4px;width:19px;height:19px;border-radius:50%;background:white;transition:.18s}.switch input:checked+b{background:#20d58f}.switch input:checked+b:after{left:25px}.detail-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.detail-top>div:last-child{display:flex;gap:8px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.detail-item p{margin:8px 0 0;display:flex;gap:8px;flex-wrap:wrap}.detail-item input{width:100%}.profile-photo{display:flex;align-items:center;gap:16px}.profile-photo img{width:94px;height:94px;border-radius:24px;object-fit:cover;border:1px solid var(--line);background:#0a1425}
.overlay{display:none;position:fixed;inset:0;background:rgba(2,6,13,.68);z-index:49}.overlay.show{display:block}.toasts{position:fixed;right:16px;bottom:16px;z-index:120;display:grid;gap:8px}.toast{background:#0c332c;border:1px solid rgba(32,213,143,.28);color:#e9fff8;padding:12px 14px;border-radius:14px}
.login-screen{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 70% -20%,rgba(20,117,255,.24),transparent 35%),#050914}.login-panel{width:min(420px,100%);background:linear-gradient(180deg,#0d1a30,#091426);border:1px solid var(--line);border-radius:24px;padding:23px;box-shadow:0 26px 70px rgba(0,0,0,.45)}.login-brand{display:flex;align-items:center;gap:12px}.login-brand strong{font-size:28px;font-weight:900;letter-spacing:-.05em}.login-brand strong span{color:#2186ff}.login-brand small{display:block;color:#9badc8}.login-panel h1{font-size:28px;margin:14px 0 7px}.login-panel p{color:#aebed5;line-height:1.55}.login-form{display:grid;gap:11px}.login-form label{display:grid;gap:7px;font-weight:700;color:#dbe7f8}.login-form input{height:48px;background:#081321;border:1px solid var(--line);border-radius:14px;color:white;padding:0 13px}.login-form button,.bio-btn{height:48px;border:0;border-radius:14px;background:linear-gradient(135deg,#1478ff,#28d8ff);color:white;font-weight:900}.bio-btn{display:flex;align-items:center;justify-content:center;margin-top:10px;background:#10213d;border:1px solid var(--line)}.alert-error,.alert-ok{padding:12px;border-radius:14px;margin:11px 0}.alert-error{background:rgba(112,22,38,.35);border:1px solid rgba(255,83,104,.35);color:#ffd3dc}.alert-ok{background:rgba(15,91,71,.35);border:1px solid rgba(32,213,143,.3);color:#cafdec}.note{font-size:12px;color:#8fa3c0;margin-top:10px;line-height:1.45}
.print-body{background:#fff;color:#111;padding:28px;font-family:Inter,Arial}.print-sheet{max-width:960px;margin:auto}.print-head{display:flex;align-items:center;gap:16px;border-bottom:2px solid #dbe2ee;padding-bottom:14px;margin-bottom:16px}.print-head h1{margin:0}.print-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.print-item{border:1px solid #e5e7eb;border-radius:12px;padding:11px}.print-item span{display:block;color:#64748b;text-transform:uppercase;font-size:11px}.print-item strong{white-space:pre-wrap}
@media(max-width:1180px){.stats{grid-template-columns:repeat(3,1fr)}.grid{grid-template-columns:1fr}.main{padding:18px 20px}.welcome h1{font-size:30px}.quick-alert{width:auto}.hero-row{flex-direction:column}}
@media(max-width:900px){.sidebar{transform:translateX(-105%);z-index:70}.sidebar.open{transform:translateX(0)}body.menu-off .sidebar{transform:translateX(-105%)}.close-side{display:grid;place-items:center}.wrap,body.menu-off .wrap{margin-left:0;max-width:100vw}.top{height:58px;padding:8px 10px}.search{display:none}.main{padding:14px 10px}.welcome h1{font-size:25px}.stats{grid-template-columns:repeat(2,1fr);gap:10px}.stat{min-height:84px;padding:12px;border-radius:17px}.stat i{width:45px;height:45px;flex-basis:45px;border-radius:15px;font-size:20px}.stat strong{font-size:25px}.panel{padding:13px;border-radius:17px}.panel h2{font-size:18px}.row,.row.web{grid-template-columns:1fr}.row.head{display:none}.records{grid-template-columns:1fr}.rec-info,.detail-grid,.form-grid,.print-grid,.access-grid{grid-template-columns:1fr}.userchip{display:none}.top-actions{gap:7px}.chip{font-size:12px;padding:7px 9px}.topbtn span{display:none}.modal{padding:10px}.modal-box{width:100%;padding:18px 13px}.page-title{align-items:flex-start;flex-direction:column}.page-title h1{font-size:25px}.rec-actions{display:grid;grid-template-columns:1fr 1fr}.detail-top{flex-direction:column;align-items:stretch}.form-actions{flex-direction:column}.form-actions button{width:100%}}


.brand-img{width:46px;height:46px;border-radius:15px;object-fit:cover;box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 12px 24px rgba(0,0,0,.22);flex:0 0 46px}
.login-logo-img{width:64px;height:64px;border-radius:18px;object-fit:cover;box-shadow:0 12px 30px rgba(0,0,0,.32)}
button[data-install-app]{background:linear-gradient(135deg,#0e2a48,#123f72);border-color:rgba(40,216,255,.3)}
@media(max-width:900px){button[data-install-app] span{display:none}.brand-img{width:43px;height:43px;flex-basis:43px}}


.rec-actions button[type="button"]{border:1px solid var(--line);background:#10213d;color:#e8f2ff;border-radius:12px;padding:8px 11px;font-weight:800;font-size:13px}
.rec-actions button[type="button"]:first-child{background:linear-gradient(135deg,#1478ff,#28d8ff);border:0;color:#fff}

/* REDES360 crema cálido / piedra – nueva interfaz */
:root{--bg:#e7e1d8;--bg2:#ece8e1;--side:#ece9e2;--panel:#f7f4ef;--panel2:#f8f6f2;--line:#d9d1c7;--line2:#e3ddd6;--txt:#17254a;--muted:#65738e;--soft:#748099;--shadow:0 9px 24px rgba(51,48,47,.09)}
html,body{background:linear-gradient(145deg,#e5e2db,#f0eae2 56%,#e4dfd7)!important;color:#17254a!important}
.sidebar{background:linear-gradient(165deg,#eeeae4,#e5e1da)!important;border-right:1px solid #d6d0c9!important}
.nav b,.nav i,.nav a,.brand strong,.brand small{color:#17254a!important}.nav a.active,.nav a.active i{color:white!important}.side-card{background:#faf8f4!important;border-color:#ddd5cd!important}
.wrap{background:transparent}.top{background:rgba(236,231,223,.92)!important;border-bottom:1px solid #dad3cb!important}.hamb,.topbtn,.userchip,.chip{color:#17254a!important}.search,.topbtn,.userchip,.chip{background:#f6f2ec!important;border-color:#d9d0c6!important}.search input{color:#17254a!important}
.main{max-width:1640px}.welcome h1{color:#14234a;font-size:36px}.welcome p{color:#3e5274}.stats{grid-template-columns:repeat(5,minmax(0,1fr))}.stat,.panel,.record{background:rgba(255,255,255,.74)!important;border-color:#fff!important;box-shadow:0 9px 24px rgba(58,52,46,.08)!important;color:#182853!important}.stat span,.stat small,.panel p,.record p{color:#435674!important}.stat strong,.panel h2{color:#17254a!important}
.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:18px 0 13px}.section-heading h1,.section-heading h2{margin:0;color:#14234a}.system-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.sys-card{overflow:hidden;background:#fdfbf7;border:1px solid #fff;border-radius:17px;box-shadow:0 9px 22px rgba(47,42,40,.12)}.sys-photo{position:relative;height:145px;background:linear-gradient(125deg,#284d70,#90b9c4);background-size:cover;background-position:center;display:grid;place-items:center}.color-purple .sys-photo{background:linear-gradient(130deg,#4d3967,#c5a1dc)}.color-pink .sys-photo{background:linear-gradient(130deg,#8e4b6e,#e9a4c5)}.color-green .sys-photo{background:linear-gradient(130deg,#116f70,#7ed4bd)}.color-orange .sys-photo{background:linear-gradient(130deg,#965a28,#e6bc79)}.sys-symbol{width:76px;height:76px;border-radius:50%;border:3px solid #b6e6ff;background:rgba(17,36,81,.73);box-shadow:0 0 18px rgba(48,156,255,.52);display:grid;place-items:center;color:white;font-size:39px}.status-chip{position:absolute;top:9px;left:10px;border-radius:20px;background:#17ad78;color:#fff;padding:5px 11px;font-size:11px}.sys-body{text-align:center;padding:12px}.sys-body h3{font-size:18px;margin:0 0 3px;color:#16254a}.sys-body small{color:#485774}.sys-category{margin:8px auto;background:#e0eafb;width:max-content;max-width:95%;padding:5px 15px;border-radius:20px;color:#233d74;font-size:11px}.open-system{display:block;margin:10px 0;border-radius:11px;padding:11px;color:white;background:linear-gradient(90deg,#0b94ec,#075de8);font-weight:750}.color-purple .open-system{background:linear-gradient(90deg,#9750e8,#5a2be2)}.color-pink .open-system{background:linear-gradient(90deg,#f04c9f,#e21d79)}.color-green .open-system{background:linear-gradient(90deg,#0fc9a4,#04a78e)}.sys-actions{display:flex;justify-content:center;gap:7px}.sys-actions a{background:#f1eee9;border:1px solid #e9e3dc;color:#283f65;border-radius:9px;padding:7px 13px}.dashboard-lower{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:17px}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.quick-grid a{background:#edf4fb;border:1px solid #dae5f2;border-radius:12px;padding:17px;color:#223b64}.form-modern{margin-top:12px}.form-grid input,.form-grid select,.form-grid textarea,.detail-item input{background:#fff!important;color:#243a60!important;border:1px solid #d8d3ca!important}.form-grid label span{color:#324a72!important}.tabs{display:flex;flex-wrap:wrap;gap:7px;margin:16px 0}.tabs a{padding:11px 14px;border-radius:9px;background:#faf7f2;border:1px solid #ddd8d1;color:#2b436c}.tabs a.active{background:#115feb;color:white}.crumb{margin-bottom:16px;color:#62728c}.sys-detail-header{display:flex;align-items:center;gap:20px;background:#f8f5ef;border-radius:16px;padding:18px;border:1px solid white}.sys-detail-header h1{margin:0;color:#182850}.sys-detail-header h1 small{font-size:13px;color:#0d9c76}.sys-detail-header p{margin:6px 0;color:#4b5f7c}.sys-large-icon{background:#dbe9fa;padding:24px;border-radius:15px;font-size:45px}.sys-header-actions{margin-left:auto;display:flex;gap:10px}.credential-grid{display:grid;grid-template-columns:minmax(220px,.35fr) 1fr;gap:14px}.categories{margin-top:20px;display:grid;gap:7px}.categories div{display:flex;justify-content:space-between;padding:10px;border:1px solid #e0dad2;border-radius:10px;background:#fff}.categories span{background:#e1ebfa;padding:2px 8px;border-radius:8px}.table-scroll{overflow:auto}.cred-table{width:100%;border-collapse:collapse;font-size:12px}.cred-table th,.cred-table td{border-bottom:1px solid #ded9d2;padding:11px 8px;text-align:left;color:#1d3159}.cred-table th{background:#edf0f4}.password-view{width:92px;border:0;background:transparent;color:#1f335d}.cred-table button,.small-action{border:0;background:#e5ebf7;color:#254773;border-radius:7px;padding:7px;cursor:pointer}.cred-table .danger{background:#ffe1e1;color:#a52235}.kind-tag{padding:5px 7px;border-radius:7px;background:#e9e0ff;white-space:nowrap}.empty{color:#527092!important}.login-panel{background:#faf8f4!important;color:#1c3155!important}.login-panel p{color:#425678!important}.login-form input{background:#fff!important;color:#1d3159!important}.login-form label{color:#1d3159!important}
@media(max-width:1350px){.system-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.credential-grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.system-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.stats{grid-template-columns:repeat(2,1fr)}.dashboard-lower{grid-template-columns:1fr}.sys-detail-header{flex-wrap:wrap}.sys-header-actions{margin-left:0}}
@media(max-width:560px){.system-cards{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.stat{padding:9px;min-height:78px}.stat i{width:35px;height:35px;flex-basis:35px}.stat strong{font-size:23px}.section-heading{align-items:flex-start;flex-wrap:wrap}.welcome h1{font-size:27px}.quick-grid{grid-template-columns:1fr}.sys-header-actions{flex-wrap:wrap}.cred-table{min-width:640px}}


/* REDES360 BEIGE: CONTRASTE Y LEGIBILIDAD – capas finales */
body.app{background:#eae4dc!important;color:#172743!important}
.main{color:#172743!important}
.record,.panel,.rec-info div,.detail-item,.info-box,.rec-info,.detail,.form-modern{
 background:#fbfaf7!important;color:#172743!important;border:1px solid #d9d0c5!important;
 box-shadow:0 7px 22px rgba(48,42,35,.07)!important
}
.rec-info div,.detail-item,.info-box{background:#f5f1ea!important}
.rec-info span,.detail-item span,.form-grid label span,.record label span{
 color:#52617a!important;font-weight:800!important
}
.rec-info b,.detail-item strong,.record strong,.record h3,.record h2,.record p,
.panel h2,.panel h3,.panel strong,.form-modern h2{color:#172743!important}
.rec-head p,.record p{color:#51617a!important}
.rec-actions a,.rec-actions button,.detail-item button{
 background:#e8eef9!important;color:#173b71!important;border:1px solid #cddcf0!important
}
.rec-actions a.danger,.rec-actions button.danger{background:#b82639!important;color:white!important}
.form-grid input,.form-grid select,.form-grid textarea,.password-view{
 background:#fff!important;color:#152640!important;border:1px solid #c7d0dc!important
}
.form-grid input::placeholder{color:#758296!important}
.form-modern,.first-credential{background:#fffdf8!important;color:#152640!important}
.first-credential{border:1px solid #ded6cb;border-radius:16px;padding:18px;margin:8px 0}
.first-credential h3{color:#172743;margin:0 0 6px}
.first-credential p{color:#53617a}
.system-cards .sys-card{background:#fcfaf6!important}
.sys-actions a{background:#eaf0fa!important;color:#153d7b!important}
.cred-table td,.cred-table th{color:#192a48!important}
.cred-table td input.password-view{background:#fff!important;color:#192a48!important}
.form-actions button,.newbtn{background:#1269dc!important;color:white!important}
@media(max-width:900px){.first-credential>.form-grid{grid-template-columns:1fr}}



/* ===== FIX LEGIBILIDAD GENERAL + MENÚ + FORMULARIOS CLAROS ===== */
body.app{
  background:#ece7df !important;
  color:#18253d !important;
}
.sidebar{
  background:linear-gradient(180deg,#f4f0ea 0%, #ebe5dc 100%) !important;
  border-right:1px solid #d8d0c4 !important;
}
.brand, .side-card{
  background:#f8f5ef !important;
  border:1px solid #ddd4c8 !important;
}
.brand strong, .brand small, .side-card strong, .side-card small{
  color:#1c2b46 !important;
}
.nav section b{
  color:#3b4c66 !important;
}
.nav a{
  background:transparent !important;
  color:#19304f !important;
  border:1px solid transparent !important;
}
.nav a i, .nav a span, .nav a{
  color:#19304f !important;
}
.nav a:hover{
  background:#eef3fb !important;
  color:#114a9f !important;
  border:1px solid #cedcf1 !important;
  box-shadow:none !important;
}
.nav a:hover i, .nav a:hover span{
  color:#114a9f !important;
}
.nav a.active{
  background:linear-gradient(135deg,#1f7aff,#1656cb) !important;
  color:#fff !important;
  border:1px solid #2f72d9 !important;
}
.nav a.active i, .nav a.active span{
  color:#fff !important;
}
.nav .bubble{
  background:#ff4e4e !important;
  color:#fff !important;
}

/* panels + cards */
.panel, .record, .detail, .modal-box, .welcome, .quick-alert, .stat, .sys-card, .hero-row > *, 
.records article, .page-title, .search, .userchip, .topbtn, .chip{
  background:#fbfaf7 !important;
  color:#18253d !important;
  border-color:#ddd4c8 !important;
}
.panel h1, .panel h2, .panel h3, .panel strong, .record h1, .record h2, .record h3,
.main h1, .main h2, .main h3, .main strong, .page-title h1, .page-title p, .welcome h1, .welcome p{
  color:#18253d !important;
}
.panel p, .record p, .main p, .main small, .main label span, .page-title small{
  color:#54637a !important;
}

/* global forms clear */
form, .form-modern, .form-grid, .rec-info, .info-box{
  color:#18253d !important;
}
.form-grid input,
.form-grid select,
.form-grid textarea,
.record input,
.record select,
.record textarea,
.modal-box input,
.modal-box select,
.modal-box textarea,
input[type="text"],
input[type="url"],
input[type="email"],
input[type="number"],
input[type="date"],
input[type="datetime-local"],
input[type="password"],
textarea,
select{
  background:#fff !important;
  color:#18253d !important;
  border:1px solid #cfd7e2 !important;
  box-shadow:none !important;
}
.form-grid input::placeholder,
.form-grid textarea::placeholder,
input::placeholder,
textarea::placeholder{
  color:#8190a5 !important;
}
.form-grid label span,
.record label span,
.modal-box label span,
label span{
  color:#5a6880 !important;
  font-weight:800 !important;
}
.form-grid .full,
.record .full,
.first-credential,
.modal-box .detail-item{
  background:transparent !important;
}
textarea{
  min-height:120px !important;
}

/* switch rows / grouped areas */
.switch, .password-wrap, .password-tools, .detail-item, .rec-info div, .info-box{
  background:#f6f2eb !important;
  color:#18253d !important;
  border:1px solid #ddd4c8 !important;
}
.password-view{
  background:#fff !important;
  color:#18253d !important;
}

/* buttons */
button, .newbtn, .form-actions button, .rec-actions a, .rec-actions button, .topbtn{
  color:#17345e !important;
}
button.primary, .newbtn, .form-actions button{
  background:linear-gradient(135deg,#1f7aff,#1656cb) !important;
  color:#fff !important;
  border:0 !important;
}
button.danger, .danger{
  background:#c63434 !important;
  color:#fff !important;
}

/* modal forms that were dark */
.modal, .modal-box{
  background:rgba(22,26,33,.45) !important;
}
.modal-box{
  background:#fbfaf7 !important;
}
.modal-close{
  background:#fff !important;
  color:#17345e !important;
  border:1px solid #ced6e3 !important;
}

/* tables / lists */
table, .rows, .tasklist, .access-grid, .doclist, .cred-table{
  color:#18253d !important;
}
table th, .cred-table th{
  background:#f3efe8 !important;
  color:#394962 !important;
}
table td, .cred-table td{
  background:#fffdfa !important;
  color:#18253d !important;
  border-color:#e3ddd3 !important;
}
.row.head{
  background:#f3efe8 !important;
}
.row, .task, .doc, .access{
  background:#fffdfa !important;
  color:#18253d !important;
  border-color:#e3ddd3 !important;
}
.empty{
  background:#f7f3ed !important;
  color:#66758c !important;
  border:1px dashed #d8d0c4 !important;
}

/* specific dark card fix like screenshot 2 */
.record, .record *{
  text-shadow:none !important;
}
.record{
  background:#fbfaf7 !important;
}
.record h3, .record h2{
  color:#17345e !important;
}
.record .status,
.badge,
em{
  color:#114a9f !important;
}

/* dropdowns and tabs */
.tabs a, .tabs button{
  background:#f5f1eb !important;
  color:#203350 !important;
  border:1px solid #ddd4c8 !important;
}
.tabs a.active, .tabs button.active{
  background:#eaf1fb !important;
  color:#1150ab !important;
  border-color:#cfe0f5 !important;
}

/* top bar */
.top{
  background:#f8f4ee !important;
  border-bottom:1px solid #ddd4c8 !important;
}
.search input{
  background:#fff !important;
  color:#18253d !important;
}
.search span, .search kbd{
  color:#6c7b92 !important;
}

/* mobile */
@media (max-width:900px){
  .sidebar{
    background:#f4f0ea !important;
  }
}



/* ===== RESPONSIVE FIX GLOBAL PARA CELULAR / TABLET ===== */
*{box-sizing:border-box}
img{max-width:100%;height:auto}
.main, .content, .page, .container{min-width:0}

/* grids fluidos */
.form-grid,
.records,
.grid,
.stats,
.credential-grid,
.access-grid,
.doclist,
.tasklist,
.rows,
.sys-grid,
.system-cards{
  min-width:0 !important;
}

/* formularios */
.form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.form-grid .full{
  grid-column:1/-1 !important;
}
.form-grid label,
.form-grid > div,
.form-grid > section,
.form-grid > article{
  min-width:0 !important;
}
.form-grid input,
.form-grid select,
.form-grid textarea{
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
}
textarea{resize:vertical}

/* tablas y bloques anchos */
.table-wrap,
.cred-table,
table{
  width:100% !important;
  max-width:100% !important;
}
.cred-table,
table{
  display:block;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}
.cred-table th,
.cred-table td,
table th,
table td{
  white-space:nowrap;
}

/* botones */
.form-actions,
.rec-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.form-actions button,
.rec-actions a,
.rec-actions button,
.newbtn,
.topbtn{
  min-height:44px;
}

/* tarjetas y paneles */
.panel,
.record,
.sys-card,
.modal-box,
.side-card,
.welcome,
.quick-alert{
  min-width:0 !important;
  overflow:hidden;
}
.sys-card .sys-actions,
.card-actions,
.action-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.sys-card .sys-actions a,
.card-actions a,
.card-actions button{
  flex:1 1 44px;
}

/* navegación superior */
.top{
  gap:10px;
  flex-wrap:wrap;
}
.search{
  min-width:0 !important;
  flex:1 1 320px !important;
}
.search input{
  width:100% !important;
}

/* modales */
.modal-box{
  width:min(96vw,980px) !important;
  max-height:92vh !important;
  overflow:auto !important;
  padding:18px !important;
}

/* sidebar */
.sidebar{
  overflow:auto !important;
}

/* mobile specific */
@media (max-width: 1100px){
  .grid,
  .stats,
  .credential-grid{
    grid-template-columns:1fr !important;
  }
}

@media (max-width: 900px){
  .main{
    padding:12px !important;
  }
  .top{
    padding:10px !important;
  }
  .form-grid{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
  .stats{
    display:grid;
    grid-template-columns:1fr 1fr !important;
    gap:12px !important;
  }
  .sys-grid,
  .system-cards,
  .records,
  .grid{
    display:grid;
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
  .search{
    flex:1 1 100% !important;
    order:2;
  }
  .userchip{
    max-width:100%;
  }
  .sidebar{
    width:min(86vw,320px) !important;
    max-width:320px !important;
  }
  .record,
  .panel,
  .sys-card{
    border-radius:16px !important;
  }
  .record h2,
  .record h3,
  .panel h2,
  .panel h3{
    line-height:1.2;
  }
}

@media (max-width: 700px){
  .stats{
    grid-template-columns:1fr !important;
  }
  .modal-box{
    width:95vw !important;
    padding:14px !important;
    border-radius:18px !important;
  }
  .cred-table th,
  .cred-table td,
  table th,
  table td{
    font-size:13px !important;
  }
  .tabs{
    display:flex;
    gap:8px;
    overflow-x:auto;
    white-space:nowrap;
    padding-bottom:4px;
  }
  .tabs a,
  .tabs button{
    flex:0 0 auto;
  }
  .form-actions button,
  .rec-actions a,
  .rec-actions button,
  .newbtn{
    width:100%;
    justify-content:center;
  }
}

@media (max-width: 560px){
  body.app{
    font-size:14px !important;
  }
  .main{
    padding:10px !important;
  }
  .panel,
  .record,
  .sys-card,
  .welcome,
  .quick-alert{
    padding:12px !important;
  }
  .search input{
    padding:12px 14px !important;
  }
  .topbtn,
  .chip,
  .userchip{
    min-height:42px !important;
  }
  .userchip{
    gap:8px;
    padding:8px 10px !important;
  }
  .userchip img,
  .avatar{
    width:36px !important;
    height:36px !important;
  }
  h1{font-size:30px !important}
  h2{font-size:22px !important}
  h3{font-size:18px !important}

  /* tabular data -> cards on mobile where possible */
  .mobile-stack .row,
  .rows.mobile-stack .row{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:6px;
    padding:10px !important;
  }

  /* specific fix for credential form seen in screenshot */
  #form-account,
  .credential-form,
  .account-form,
  .first-credential{
    width:100% !important;
    min-width:0 !important;
  }
  #form-account .form-grid,
  .credential-form .form-grid,
  .account-form .form-grid{
    grid-template-columns:1fr !important;
  }
  #form-account input,
  #form-account select,
  #form-account textarea{
    width:100% !important;
    min-width:0 !important;
  }
}
