/* «Consumo de equipos» del cliente (prefijo .ce) */
.ce{--ce-ink:#0b1b3d;--ce-muted:#667691;--ce-line:#e3eaf4;--ce-blue:#0b63f6;display:grid;grid-template-columns:minmax(0,1fr);gap:16px;color:var(--ce-ink)}
.ce *{box-sizing:border-box}
.ce-i{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:none}
.ce h2,.ce h3,.ce p{letter-spacing:0}.ce p{margin:0}
.ce-card{border:1px solid var(--ce-line);border-radius:20px;background:#fff;padding:18px;box-shadow:0 6px 22px rgba(11,31,77,.05);min-width:0;display:flex;flex-direction:column;gap:12px}
.ce-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0}.ce-head>div{min-width:0;flex:1}
.ce .ce-head h2{margin:0;font-size:17px;line-height:1.2;color:var(--ce-ink)}
.ce-head-ico{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#e4efff;color:var(--ce-blue);flex:none}.ce-head-ico.is-amber{background:#fff1c7;color:#c98200}
.ce-muted,.ce-fine{color:var(--ce-muted);font-size:12.5px;line-height:1.4}
.ce-link{margin-left:auto;border:0;background:none;padding:0;color:var(--ce-blue);font:inherit;font-size:13px;font-weight:700;cursor:pointer;text-align:right}.ce-link:hover{text-decoration:underline}
.ce .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap}.ce .btn .ce-i{width:17px;height:17px}
.ce-chip{display:inline-block;padding:3px 10px;border-radius:999px;font-size:11.5px;font-weight:700;font-style:normal;white-space:nowrap;background:#dcf5e7;color:#0f6f3f}
.ce-chip.is-red{background:#ffe6dd;color:#b4421a}.ce-chip.is-warn{background:#fff1c7;color:#8a5b00}.ce-chip.is-grey{background:#eef1f6;color:#4a5a77}
.ce-empty{display:grid;justify-items:center;gap:6px;text-align:center;padding:16px 8px;color:var(--ce-muted)}.ce-empty .ce-i{width:30px;height:30px;color:#9bb0d3}.ce-empty b{color:var(--ce-ink);font-size:15px}.ce-empty p{font-size:13px;max-width:40ch}

/* Indicadores */
.ce-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.ce-kpi{position:relative;display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--ce-line);border-radius:18px;background:#fff;box-shadow:0 6px 22px rgba(11,31,77,.05);min-width:0}
.ce-kpi-ico{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;flex:none;color:#fff}.ce-kpi-ico .ce-i{width:24px;height:24px}
.ce-kpi.is-blue .ce-kpi-ico{background:#1e78ff}.ce-kpi.is-red .ce-kpi-ico{background:#f0614a}.ce-kpi.is-green .ce-kpi-ico{background:#1cae6a}.ce-kpi.is-violet .ce-kpi-ico{background:#8b5cf6}.ce-kpi.is-leaf .ce-kpi-ico{background:#22b573}
.ce-kpi-body{display:grid;gap:2px;min-width:0;flex:1;line-height:1.2}.ce-kpi small{color:#41557c;font-size:12.5px}
.ce-kpi strong{font-size:23px;letter-spacing:-.02em;overflow-wrap:anywhere}.ce-kpi strong span{font-size:12.5px;font-weight:700;letter-spacing:0;color:var(--ce-ink)}
.ce-sub{font-style:normal;color:var(--ce-muted);font-size:12px}
.ce-tag{justify-self:start;margin-top:2px;padding:1px 8px;border-radius:999px;background:#eef5ff;color:#27508f;font-size:10.5px;font-weight:700}
.ce-top{display:flex;align-items:center;gap:10px}.ce-top-photo{width:54px;height:46px;flex:none;display:grid;place-items:center}.ce-top-photo img,.ce-eq-photo img,.ce-sched-photo img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.ce-top>div{display:grid;gap:2px;min-width:0}.ce-name{font-size:15px!important}
.ce-kpi-go{position:absolute;right:8px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:26px;height:26px;border:0;border-radius:50%;background:none;color:#7b8aa3;cursor:pointer}.ce-kpi-go:hover{background:#eef5ff;color:var(--ce-blue)}.ce-kpi-go .ce-i{width:16px;height:16px}

/* Portada */
.ce-top-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(0,2.1fr) minmax(150px,.7fr) minmax(190px,.8fr);gap:12px;align-items:stretch}
.ce-cover{position:relative;overflow:hidden;min-height:112px;border-radius:18px;display:flex;align-items:flex-end;padding:16px;color:#fff;background:#0b4aa8 var(--ce-photo,linear-gradient(135deg,#0b63f6,#2ec5d3)) center/cover no-repeat}
.ce-cover::before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,24,64,.7),rgba(6,24,64,.05) 70%)}
.ce-cover>div{position:relative;display:grid;gap:2px}.ce-cover b{font-size:22px;letter-spacing:-.02em;line-height:1.1}.ce-cover span{display:inline-flex;align-items:center;gap:5px;font-size:13px;color:#e3edff}.ce-cover .ce-i{width:15px;height:15px}
.ce-status{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:18px;background:#e8f7ee;border:1px solid #cdeedb}.ce-status.is-warn{background:#fff6dd;border-color:#f7e2a6}.ce-status.is-idle{background:#eef3fb;border-color:#dbe4f2}
.ce-status-ico{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;flex:none;background:#22b573;color:#fff}.ce-status.is-warn .ce-status-ico{background:#e0a100}.ce-status.is-idle .ce-status-ico{background:#7b8aa3}.ce-status-ico .ce-i{width:26px;height:26px}
.ce .ce-status h2{margin:0 0 2px;font-size:18px;color:#0f6f3f}.ce-status.is-warn h2{color:#8a5b00}.ce-status.is-idle h2{color:var(--ce-ink)}
body[data-page="panel"] .ce .ce-status p{color:#41557c;font-size:13.5px;line-height:1.4}
.ce-mini{position:relative;display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--ce-line);border-radius:18px;background:#fff;min-width:0}
.ce-mini-ico{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#e4efff;color:var(--ce-blue);flex:none}
.ce-mini>div{display:grid;gap:1px;min-width:0;line-height:1.25}.ce-mini strong{font-size:16px}.ce-mini strong span{font-size:12px;color:var(--ce-muted)}.ce-mini small{color:var(--ce-muted);font-size:11.5px}
.ce-info{position:absolute;right:8px;top:8px;border:0;background:none;color:#7b8aa3;cursor:pointer;padding:0}.ce-info .ce-i{width:17px;height:17px}

/* Cuerpo */
.ce-main{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(300px,1fr);gap:16px;align-items:start}
.ce-side{display:grid;gap:16px}
.ce-add{min-height:36px;font-size:12.5px!important;padding:6px 14px}.ce-table-card{container-type:inline-size;contain:paint}.ce-table-card .ce-head .ce-link{margin-left:0}
@container (max-width:880px){.ce-col-brand,.ce-share{display:none}.ce-eq-sub{display:block!important;color:var(--ce-muted);font-size:11.5px}.ce-table th,.ce-table td{padding:9px 6px}}
.ce-table-wrap{overflow-x:auto}
.ce-table{width:100%;border-collapse:collapse;font-size:13px}
.ce-table th{padding:8px 10px;color:#41557c;font-size:12px;font-weight:700;text-align:left;white-space:nowrap;border-bottom:1px solid var(--ce-line)}
.ce-table td{padding:10px;border-bottom:1px solid #eef2f8;vertical-align:middle}.ce-table td small{display:block;color:var(--ce-muted);font-size:11.5px}
.ce-table tfoot td{border-bottom:0;font-weight:700;background:#f6f9ff}
.ce-eq{display:flex;align-items:center;gap:10px}.ce-eq-name{display:grid;gap:2px;justify-items:start;min-width:0}.ce-eq b{font-size:13.5px}.ce-eq-sub{display:none!important}
.ce-eq-photo{display:grid;place-items:center;width:46px;height:40px;flex:none}.ce-eq-photo .cp-eq-art{width:34px;height:34px;border-radius:10px}
.ce-state{display:inline-flex;align-items:center;gap:6px;font-size:12.5px}.ce-state i{width:8px;height:8px;border-radius:50%;background:#22b573}.ce-state.is-warn i{background:#e0a100}.ce-state.is-grey i{background:#9aa6bb}
.ce-pending{color:#8a5b00;font-size:12px;font-weight:600}
.ce-share-cell{white-space:nowrap}.ce-share{display:inline-block;width:70px;height:6px;border-radius:999px;background:#e5ecf7;overflow:hidden;vertical-align:middle;margin-right:8px}.ce-share i{display:block;height:100%;border-radius:inherit}
.ce-actions{text-align:right}.ce-icon-btn{display:inline-grid;place-items:center;width:30px;height:30px;border:1px solid var(--ce-line);border-radius:9px;background:#fff;color:#41557c;cursor:pointer}.ce-icon-btn:hover{background:#eef5ff;color:var(--ce-blue)}.ce-icon-btn .ce-i{width:15px;height:15px}
.ce-recs,.ce-sched,.ce-ins{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.ce-rec{display:flex;align-items:center;gap:12px;width:100%;padding:8px;border:0;border-radius:12px;background:none;text-align:left;font:inherit;color:inherit;cursor:pointer}.ce-rec:hover{background:#f6f9ff}
.ce-rec-ico{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#dcf5e7;color:#0f8a4c;flex:none}.ce-rec>span:nth-child(2){display:grid;gap:2px;min-width:0;flex:1}.ce-rec b{font-size:13.5px;line-height:1.25}.ce-rec small{color:var(--ce-muted);font-size:12px;line-height:1.35}
.ce-go{width:16px;height:16px;color:#9bb0d3;flex:none}
.ce-sched li{display:grid;grid-template-columns:34px minmax(90px,1fr) auto;align-items:center;gap:10px;padding:5px 0}.ce-sched b{font-size:13px}
.ce-sched-photo{display:grid;place-items:center;width:34px;height:30px}
.ce-times{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.ce-time{padding:4px 10px;border-radius:999px;background:#e6f0ff;color:#1b4fa8;font-size:12px;font-weight:600;white-space:nowrap}.ce-time.is-soft{background:#f1f4f9;color:#4a5a77}

/* Tercera fila */
.ce-trio{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}
.ce-dist{display:grid;grid-template-columns:150px minmax(0,1fr);gap:14px;align-items:center}
.ce-donut{position:relative;width:150px;height:150px}.ce-donut svg{width:100%;height:100%}.ce-donut>div{position:absolute;inset:0;display:grid;place-content:center;text-align:center;line-height:1.15}.ce-donut b{font-size:17px}.ce-donut span{font-size:11.5px;color:var(--ce-muted)}
.ce-legend{list-style:none;margin:0;padding:0;display:grid;gap:6px}.ce-legend li{display:grid;grid-template-columns:12px minmax(0,1fr) auto auto;align-items:center;gap:8px;font-size:12.5px}.ce-legend i{width:10px;height:10px;border-radius:50%}.ce-legend b{font-weight:700}.ce-legend em{font-style:normal;color:var(--ce-muted);min-width:56px;text-align:right}
.ce-evo{display:grid;justify-items:center;gap:8px;padding:8px 0}.ce-bar{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px;height:130px}.ce-bar i{display:block;width:64px;height:90px;border-radius:10px 10px 4px 4px;background:linear-gradient(180deg,#8cc2ff,#1a73ff)}.ce-bar b{font-size:14px}.ce-evo small{color:var(--ce-muted);font-size:12px}
.ce-ins li{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:14px;background:#eef5ff}.ce-ins li.is-green{background:#e8f7ee}.ce-ins li.is-amber{background:#fff6dd}
.ce-ins-ico{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#fff;color:var(--ce-blue);flex:none}.ce-ins li.is-green .ce-ins-ico{color:#0f8a4c}.ce-ins li.is-amber .ce-ins-ico{color:#c98200}
.ce-ins li>span:last-child{display:grid;gap:1px;min-width:0}.ce-ins b{font-size:13.5px;line-height:1.25}.ce-ins small{color:#41557c;font-size:12px;line-height:1.35}

/* Ajustes */
.ce-settings{padding:0;gap:0}.ce-settings>summary{display:flex;align-items:center;gap:12px;padding:16px 18px;cursor:pointer;list-style:none}.ce-settings>summary::-webkit-details-marker{display:none}
.ce-settings>summary>span:last-child{display:grid;gap:2px}.ce-settings>summary b{font-size:16px}.ce-settings>summary small{color:var(--ce-muted);font-size:12.5px}
.ce-legacy{display:grid;gap:16px;padding:0 18px 18px;overflow-x:auto;min-width:0}.ce-settings{overflow:hidden}

body[data-page="panel"] .ce .ce-muted,body[data-page="panel"] .ce .ce-fine,body[data-page="panel"] .ce .ce-empty p,body[data-page="panel"] .ce .ce-sub{color:#667691}

@media (max-width:1280px){
 .ce-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.ce-top-row{grid-template-columns:1fr 1fr}.ce-status{grid-column:1/-1;order:-1}.ce-main{grid-template-columns:minmax(0,1fr)}.ce-trio{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:720px){
 .ce-table-card .ce-head>div{flex:1 1 150px}.ce-table-card .ce-head .ce-link{flex-basis:100%;text-align:left}
 .ce-kpis,.ce-top-row{grid-template-columns:minmax(0,1fr)}.ce-dist{grid-template-columns:1fr;justify-items:center}.ce-legend{width:100%}.ce-sched li{grid-template-columns:34px 1fr}.ce-times{grid-column:1/-1;justify-content:flex-start}
}
