:root{
  --navy:#00324f;--navy-dark:#001f34;--navy-soft:#0b4768;--orange:#ef5b12;
  --bg:#edf3f6;--card:#fff;--ink:#172431;--muted:#667684;--line:#d7e1e7;
  --green:#167447;--red:#b42318;--amber:#a85a00;--blue:#0b6b9b;
  --shadow:0 7px 22px rgba(25,55,75,.06)
}
*{box-sizing:border-box}
html{min-width:320px;background:var(--bg)}
body{margin:0;font-family:"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--ink);font-size:14px}
button,input,select,textarea{font:inherit}
.platform-shell{min-height:100vh;display:grid;grid-template-columns:258px minmax(0,1fr)}
.sidebar{position:sticky;top:0;height:100vh;overflow-y:auto;background:linear-gradient(180deg,var(--navy),var(--navy-dark));color:#fff;padding:20px 14px 16px;z-index:30}
.brand{padding:7px 9px 20px;border-bottom:1px solid rgba(255,255,255,.16);margin-bottom:14px}.brand strong{display:block;font-size:18px;line-height:1.12;letter-spacing:.01em}.brand span{display:block;margin-top:7px;color:#ff7d37;font-weight:900;font-size:13px;letter-spacing:.04em}
.module-nav{display:grid;gap:7px}.nav-group{border-radius:10px;overflow:hidden}.nav-module{width:100%;border:0;background:transparent;color:#dbe9f0;padding:12px 11px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;font-weight:800;text-align:left;border-radius:9px}.nav-module:hover,.nav-module.active{background:rgba(255,255,255,.10);color:#fff}.chevron{font-size:16px;transition:transform .18s ease}.nav-group.open .chevron{transform:rotate(180deg)}
.nav-submenu{display:none;padding:5px 0 8px 10px}.nav-group.open .nav-submenu{display:grid}.nav-submenu a,.nav-submenu span{position:relative;color:#bad0dc;text-decoration:none;padding:8px 10px 8px 18px;border-left:1px solid rgba(255,255,255,.18);font-size:13px}.nav-submenu a:hover,.nav-submenu a.active{color:#fff;background:rgba(255,255,255,.08);border-left-color:var(--orange)}.nav-submenu span{opacity:.48;cursor:not-allowed}
.sidebar-foot{margin-top:22px;padding:12px 10px;border-top:1px solid rgba(255,255,255,.13);color:#bbd0db;font-size:12px}.status-dot{width:8px;height:8px;border-radius:50%;background:#48c782;display:inline-block;margin-right:7px;box-shadow:0 0 0 4px rgba(72,199,130,.12)}
.page-area{min-width:0}.platform-topbar{height:68px;display:flex;align-items:center;gap:15px;padding:10px 24px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.platform-topbar>div{min-width:0}.platform-topbar strong{display:block;color:var(--navy);font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.eyebrow{display:block;font-size:10px;font-weight:900;letter-spacing:.12em;color:var(--orange)!important;margin-bottom:2px}.server-status{margin-left:auto;padding:6px 10px;border-radius:999px;background:#e7f5ec;color:var(--green);font-weight:800;font-size:12px;white-space:nowrap}.mobile-menu{display:none;border:0;background:#e9f0f4;color:var(--navy);width:38px;height:38px;border-radius:8px;font-size:20px;cursor:pointer}
.platform-main{width:100%;max-width:none;margin:0;padding:20px 22px 34px;min-width:0}
h1,h2,h3{margin:0;color:var(--navy)}h1{font-size:27px;line-height:1.15}h2{font-size:18px}h3{font-size:15px}
.messages{margin-bottom:14px}.message{padding:12px 14px;border-radius:9px;background:#e8f1f6;color:var(--navy);font-weight:700}.message.success{background:#e6f5ec;color:var(--green)}.message.error{background:#fdecea;color:var(--red)}.message.warning{background:#fff2e6;color:var(--amber)}
.sidebar-backdrop{display:none}
@media(max-width:980px){
  .platform-shell{grid-template-columns:1fr}.sidebar{position:fixed;left:-270px;transition:left .2s ease;width:258px}.sidebar.open{left:0}.mobile-menu{display:inline-grid;place-items:center}.sidebar-backdrop{position:fixed;inset:0;background:rgba(0,22,38,.45);z-index:25}.sidebar-backdrop.open{display:block}.platform-main{padding:16px}.platform-topbar{padding:10px 16px}
}
@media(max-width:560px){.platform-topbar strong{font-size:13px}.server-status{display:none}.platform-main{padding:13px}}

/* V5 · sistema visual corporativo KCC */
:root{
  --kcc-navy:#002b49;--kcc-navy-deep:#001a2f;--kcc-blue:#005ea8;
  --kcc-orange:#ed4b16;--kcc-orange-deep:#c9320b;--kcc-surface:#f4f7fb;
  --kcc-border:#dbe4ee;--kcc-text:#11233a;--kcc-muted:#66778b;
  --kcc-shadow:0 10px 26px rgba(0,43,73,.08),0 2px 5px rgba(0,43,73,.05);
}
body{background:radial-gradient(circle at 60% -20%,#fff 0,#f4f7fb 36%,#edf2f7 100%);color:var(--kcc-text)}
.platform-shell{grid-template-columns:220px minmax(0,1fr)}
.sidebar{padding:18px 12px 16px;background:linear-gradient(180deg,#052f51 0%,#001e36 58%,#00172b 100%);box-shadow:8px 0 28px rgba(0,26,47,.13)}
.brand{padding:4px 12px 18px}.brand strong{font-size:17px}.brand span{font-size:12px;color:#ff5d22}
.nav-module{padding:10px 10px;font-size:13px}.nav-module.active{background:linear-gradient(135deg,#ef3f12,#d52d0a);box-shadow:0 8px 18px rgba(224,54,13,.28)}
.nav-submenu a,.nav-submenu span{font-size:12px;padding:7px 9px 7px 16px}.nav-submenu a.active{background:linear-gradient(90deg,rgba(237,75,22,.28),rgba(237,75,22,.05));border-left:3px solid #ff5d22}
.sidebar-foot{margin-top:auto;border:1px solid rgba(255,255,255,.13);border-radius:10px;background:rgba(0,0,0,.08)}
.platform-topbar{height:62px;padding:8px 20px;border-top:3px solid var(--kcc-orange);box-shadow:0 3px 14px rgba(0,43,73,.06)}
.platform-topbar strong{font-size:14px}.platform-main{padding:14px 16px 28px;max-width:1540px;margin:0 auto}
h1{font-size:23px}.page-header{margin-bottom:10px}.page-header p{font-size:11px}
@media(max-width:980px){.platform-shell{grid-template-columns:1fr}.sidebar{width:220px;left:-232px}}

/* Sidebar plegable corporativo */
.sidebar-collapse{position:absolute;right:-14px;top:74px;width:28px;height:34px;border:1px solid #2d638d;border-radius:0 8px 8px 0;background:#052f51;color:#fff;display:grid;place-items:center;font-size:22px;cursor:pointer;z-index:5;box-shadow:4px 3px 12px rgba(0,26,47,.18)}
.platform-shell.sidebar-collapsed{grid-template-columns:76px minmax(0,1fr)}
.platform-shell.sidebar-collapsed .sidebar{padding-left:8px;padding-right:8px}
.platform-shell.sidebar-collapsed .brand strong{font-size:0}.platform-shell.sidebar-collapsed .brand strong:after{content:"KC";font-size:17px}.platform-shell.sidebar-collapsed .brand span,.platform-shell.sidebar-collapsed .nav-module span:first-child,.platform-shell.sidebar-collapsed .nav-submenu,.platform-shell.sidebar-collapsed .sidebar-foot{display:none}
.platform-shell.sidebar-collapsed .nav-module{justify-content:center;min-height:42px}.platform-shell.sidebar-collapsed .nav-module:before{content:"•";font-size:22px}.platform-shell.sidebar-collapsed .chevron{display:none}.platform-shell.sidebar-collapsed .sidebar-collapse{transform:rotate(180deg)}
.nav-direct{text-decoration:none}
@media(max-width:980px){.sidebar-collapse{display:none}.platform-shell.sidebar-collapsed{grid-template-columns:1fr}}
