:root{--bg:#f5f6f8;--panel:#fff;--ink:#20242a;--muted:#737b87;--line:#e5e8ec;--brand:#235f55;--brand2:#e4f1ee;--danger:#a53d3d}*{box-sizing:border-box}body{margin:0;font:14px/1.5 Inter,Segoe UI,sans-serif;color:var(--ink);background:var(--bg)}a{color:var(--brand);text-decoration:none}h1{font-size:27px;margin:.2rem 0}h2{font-size:17px;margin:0 0 1rem}small{color:var(--muted);display:block}aside{position:fixed;inset:0 auto 0 0;width:230px;background:#182522;color:#fff;padding:24px 14px;transition:.2s}.brand{font-weight:800;font-size:19px;padding:0 10px 24px}.brand span{font-weight:400;color:#9eb5af}nav a{display:block;color:#cbd8d5;padding:10px 12px;border-radius:7px;margin:3px 0}nav a:hover{background:#263a35;color:#fff}.collapse{position:absolute;bottom:18px;background:none;color:#abc0bb;border:0}main{margin-left:230px;transition:.2s}body.sidebar-closed aside{width:0;padding:0;overflow:hidden}body.sidebar-closed main{margin-left:0}header{height:64px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:16px;padding:0 28px}.spacer{flex:1}.quick{background:var(--brand2);padding:8px 12px;border-radius:7px}.link,.icon{border:0;background:none;color:var(--brand);cursor:pointer}.content{padding:28px;max-width:1400px;margin:auto}.page-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.page-head p{margin:3px 0;color:var(--muted)}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}.metrics article,.card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:18px;box-shadow:0 1px 2px #16251f08}.metrics strong{display:block;font-size:30px;margin-top:5px}.grid{display:grid;gap:18px}.grid.two{grid-template-columns:1fr 1fr}.row{display:flex;justify-content:space-between;align-items:center;padding:11px 3px;border-bottom:1px solid var(--line)}.row:last-child{border:0}.row.unread{border-left:3px solid var(--brand);padding-left:10px}.badge{background:#eef1f2;color:#4e5860;padding:4px 8px;border-radius:99px;font-size:12px}.state-completada{background:#e1f2e9;color:#286544}.state-en_revision{background:#f6edd5;color:#7a5a12}.state-devuelta{background:#f5dddd;color:#843939}.stack{display:flex;flex-direction:column;gap:12px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:16px}label{color:var(--muted)}input,select,textarea{display:block;width:100%;margin-top:4px;padding:10px;border:1px solid #ccd2d6;border-radius:7px;background:#fff;color:var(--ink)}textarea{min-height:90px}button{padding:10px 15px;border:0;border-radius:7px;background:var(--brand);color:white;cursor:pointer}button.secondary{background:#e9edee;color:#344}.inline{display:flex;gap:9px;align-items:end}.inline>*{margin:0}.check{display:flex;align-items:center;gap:8px}.check input{width:auto}.table-wrap{overflow:auto;margin-top:18px}table{border-collapse:collapse;width:100%}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line)}th{font-size:12px;color:var(--muted);text-transform:uppercase}.tabs{display:flex;gap:20px;overflow:auto;border-bottom:1px solid var(--line);padding:15px 0;margin-bottom:18px;white-space:nowrap}.details{display:grid;grid-template-columns:repeat(2,1fr)}.details p{display:flex;flex-direction:column}.toast{padding:12px;border-radius:8px;margin-bottom:15px}.toast.error{background:#f8e2e2;color:var(--danger)}.login{min-height:100vh;display:grid;place-items:center}.login>div{width:min(390px,90vw)}.login .big{text-align:center;font-size:27px;color:var(--ink);padding:0}.login p{text-align:center;color:var(--muted)}summary{cursor:pointer;font-weight:600}.filters{display:flex;gap:10px}.comment{background:#f4f6f6;padding:9px 12px;border-radius:7px;margin:8px 0}.empty,.hint{color:var(--muted)}.empty-page{text-align:center;padding:20vh 0}.empty-page h1{font-size:72px}@media(max-width:800px){aside{width:0;padding:0;overflow:hidden}main{margin-left:0}body.sidebar-closed aside{width:230px;padding:24px 14px}body.sidebar-closed main{margin-left:0}.content{padding:18px}.metrics{grid-template-columns:1fr 1fr}.grid.two,.form-grid{grid-template-columns:1fr}.page-head{align-items:flex-start;gap:12px}.quick{display:none}}
.notification-popup-stack{position:fixed;z-index:180;left:250px;bottom:20px;display:flex;flex-direction:column-reverse;gap:10px;width:min(370px,calc(100vw - 40px));pointer-events:none}.notification-popup{display:grid;grid-template-columns:10px 1fr auto;gap:11px;align-items:start;padding:15px;background:#fff;border:1px solid var(--line);border-radius:11px;box-shadow:0 14px 40px #17251f33;pointer-events:auto;animation:notification-in .25s ease-out}.notification-popup-indicator{width:10px;height:10px;margin-top:5px;border-radius:50%;background:#2878b5}.notification-popup.semaforo_verde .notification-popup-indicator{background:#2ca66f}.notification-popup.semaforo_amarillo .notification-popup-indicator{background:#e9aa18}.notification-popup.semaforo_rojo .notification-popup-indicator{background:#df4e4e}.notification-popup-content{color:var(--ink)}.notification-popup-content b,.notification-popup-content span{display:block}.notification-popup-content span{margin-top:3px;color:var(--muted);font-size:13px}.notification-popup-close{padding:0 4px;background:none;color:var(--muted);font-size:20px}.notification-popup-actions{grid-column:2/4;display:flex;justify-content:flex-end}.notification-popup-actions a{font-weight:700}@keyframes notification-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}body.sidebar-closed .notification-popup-stack{left:20px}@media(max-width:800px){.notification-popup-stack{left:20px;bottom:14px}}
.notification-popup-stack{left:auto!important;right:20px!important}
aside{display:flex;flex-direction:column}aside nav{flex:1;min-height:0;overflow-y:auto;padding-right:4px}.collapse{position:static;margin-top:10px;text-align:left}
.app-sidebar{--sidebar-size:240px;width:var(--sidebar-size);padding:16px 12px;background:linear-gradient(180deg,#214f47 0%,#173d36 58%,#102f29 100%);box-shadow:8px 0 24px #102f2912;transition:width .28s ease,padding .28s ease,transform .25s ease;z-index:80}.sidebar-brand{display:flex;align-items:center;gap:11px;min-height:52px;padding:0 7px 15px;white-space:nowrap;overflow:hidden}.sidebar-brand-mark{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:11px;background:linear-gradient(135deg,#7dd3bc,#fff);color:#174a40;font-size:18px;font-weight:900;box-shadow:0 6px 16px #071d1866}.brand-copy{display:grid;line-height:1.15}.brand-copy strong{font-size:16px;letter-spacing:.08em}.brand-copy small{margin-top:3px;color:#a9c8c0}.sidebar-nav{display:flex;flex-direction:column;gap:3px;overflow-y:auto!important;padding:2px 2px 10px!important}.sidebar-link,.sidebar-group summary{position:relative;display:flex!important;align-items:center;gap:9px;min-height:40px;margin:0!important;padding:8px 9px!important;border-radius:9px;color:#d7e7e3!important;white-space:nowrap;cursor:pointer;transition:background .2s,color .2s,transform .2s}.sidebar-link:hover,.sidebar-group summary:hover{background:#ffffff17!important;color:#fff!important;transform:translateX(3px)}.side-icon{display:grid;place-items:center;flex:0 0 25px;width:25px;height:25px;color:#9ed4c7;font-size:18px;font-style:normal;font-weight:800}.sidebar-group{margin:0}.sidebar-group summary{list-style:none}.sidebar-group summary::-webkit-details-marker{display:none}.sidebar-group summary b{margin-left:auto;font-size:18px;font-weight:400;transition:transform .22s}.sidebar-group[open] summary b{transform:rotate(90deg)}.sidebar-submenu{display:grid;gap:2px;margin:2px 0 5px 34px;padding-left:9px;border-left:1px solid #ffffff26}.sidebar-submenu a{margin:0!important;padding:7px 9px!important;border-radius:7px;color:#bdd3cd!important;font-size:13px}.sidebar-submenu a:hover{background:#ffffff13;color:#fff!important}.sidebar-link.active,.sidebar-submenu a.active{background:linear-gradient(90deg,#3b8b78,#2d705f)!important;color:#fff!important;box-shadow:0 5px 14px #071d1844}.sidebar-link.active .side-icon{color:#fff}.sidebar-collapse{display:flex;align-items:center;gap:9px;width:100%;margin-top:8px;padding:9px;background:#ffffff0b;color:#b8d0ca;border:1px solid #ffffff12}.sidebar-collapse i{display:grid;place-items:center;width:25px;font-style:normal;font-size:20px}.sidebar-overlay{display:none}.sidebar-trigger{font-size:20px}.app-sidebar+ .sidebar-overlay + main{margin-left:240px;transition:margin-left .28s ease}body.sidebar-collapsed .app-sidebar{width:76px;padding-left:10px;padding-right:10px}body.sidebar-collapsed .app-sidebar+ .sidebar-overlay + main{margin-left:76px}body.sidebar-collapsed .menu-label,body.sidebar-collapsed .brand-copy,body.sidebar-collapsed .sidebar-group summary b{display:none}body.sidebar-collapsed .sidebar-link,body.sidebar-collapsed .sidebar-group summary{justify-content:center;padding-left:8px!important;padding-right:8px!important}body.sidebar-collapsed .sidebar-submenu{display:none}body.sidebar-collapsed .sidebar-collapse{justify-content:center}body.sidebar-collapsed .sidebar-collapse i{transform:rotate(180deg)}
@media(max-width:800px){.app-sidebar{width:min(84vw,280px);padding:16px 12px;transform:translateX(-105%);box-shadow:0 0 26px #081a1666}.app-sidebar+ .sidebar-overlay + main{margin-left:0}.sidebar-overlay{position:fixed;inset:0;z-index:70;border:0;border-radius:0;background:#0b211c99}body.menu-open{overflow:hidden}body.menu-open .app-sidebar{transform:translateX(0)}body.menu-open .sidebar-overlay{display:block}body.sidebar-collapsed .app-sidebar{width:min(84vw,280px);padding:16px 12px}body.sidebar-collapsed .menu-label,body.sidebar-collapsed .brand-copy,body.sidebar-collapsed .sidebar-group summary b{display:initial}body.sidebar-collapsed .sidebar-link,body.sidebar-collapsed .sidebar-group summary{justify-content:flex-start}body.sidebar-collapsed .sidebar-submenu{display:grid}}
.app-sidebar{overflow:hidden}.sidebar-nav{overflow-y:auto!important;overflow-x:hidden!important;padding-right:4px!important;scrollbar-width:thin;scrollbar-color:rgba(190,210,205,.5) transparent}.sidebar-nav::-webkit-scrollbar{width:7px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:rgba(190,210,205,.5);border-radius:999px}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:rgba(220,235,231,.72)}.sidebar-nav::-webkit-scrollbar-button{display:none;width:0;height:0}
