/* Equipos de los clientes del piscinero (prefijo .ceq): indicadores, lista de clientes, ficha técnica, historial y resumen técnico.
   Se adapta al ancho del propio panel (container queries). */
.ceq{--navy:#0b1f4d;--text:#33425c;--muted:#6b7a95;--line:#e4ecf7;--blue:#1665f2;--blue-soft:#eaf3ff;--card:#fff;--field:#fff;--head:#f5f8fc;--sel:#eef5ff;--shadow:0 6px 22px rgba(15,40,90,.07);
 --ok:#13874b;--ok-bg:#dff5e8;--warn:#b86e00;--warn-bg:#fff1d6;--bad:#c62828;--bad-bg:#fde4e4;--info:#1559c9;--info-bg:#e0edff;--mute-bg:#eef2f7;
 container-type:inline-size;display:grid;gap:14px;min-width:0;color:var(--text)}
.ceq *{box-sizing:border-box}.ceq .ps-ico{width:18px;height:18px}
.ceq-top{display:flex;justify-content:flex-end;min-height:0}.ceq-top:empty{display:none}
.ceq-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 16px;border:1px solid #9cc4ff;border-radius:11px;background:var(--card);color:var(--blue);font:inherit;font-size:14px;font-weight:700;cursor:pointer;text-decoration:none;white-space:nowrap}
.ceq-btn:hover{background:var(--blue-soft)}.ceq-btn.is-primary{background:var(--blue);border-color:var(--blue);color:#fff}.ceq-btn.is-primary:hover{filter:brightness(1.07);background:var(--blue)}.ceq-btn.is-small{min-height:34px;padding:0 12px;font-size:13px}
.ceq-btn .ps-ico{width:16px;height:16px}
/* Indicadores */
.ceq-kpis{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px}
.ceq-kpi{display:flex;align-items:center;gap:10px;padding:12px;background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);min-width:0}
.ceq-kpi.ceq-skel{min-height:70px;background:linear-gradient(90deg,#f1f5fb,#f8fafd,#f1f5fb);background-size:200% 100%;animation:ceq-sh 1.4s linear infinite}@keyframes ceq-sh{to{background-position:-200% 0}}
.ceq-kpi-ico{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;flex:none}.ceq-kpi-ico .ps-ico{width:21px;height:21px}
.ceq-kpi-ico.is-blue{background:#e4efff;color:var(--blue)}.ceq-kpi-ico.is-red{background:var(--bad-bg);color:var(--bad)}.ceq-kpi-ico.is-amber{background:var(--warn-bg);color:#e69500}
.ceq-kpi>div{display:grid;min-width:0;line-height:1.15}.ceq-kpi b{font-size:21px;color:var(--navy);overflow-wrap:anywhere}.ceq-kpi small{color:var(--muted);font-size:11.5px}.ceq-sub{font-size:10.5px!important}
/* Estructura */
.ceq-split{display:grid;grid-template-columns:minmax(0,260px) minmax(0,1fr) minmax(0,270px);gap:14px;align-items:start}
.ceq-card{background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:16px;min-width:0;display:grid;gap:12px;align-content:start;container-type:inline-size}
.ceq-center{display:grid;gap:14px;min-width:0;align-content:start}.ceq-right{display:grid;gap:14px;min-width:0;align-content:start}
.ceq-head{display:flex;gap:10px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap}.ceq .ceq-head h3{margin:0;font-size:17px;color:var(--navy)}.ceq-head p{margin:2px 0 0;color:var(--muted);font-size:13px}
.ceq-muted{margin:0;color:var(--muted);font-size:13px;line-height:1.45}.ceq-note{margin:0;color:var(--muted);font-size:12px;line-height:1.4}.ceq-nodata{color:var(--muted);font-weight:500;font-size:12.5px}
.ceq-sel{display:flex;align-items:center;height:40px;border:1px solid var(--line);border-radius:10px;background:var(--field);min-width:0}.ceq .ceq-sel select{width:100%;height:100%;border:0;outline:0;background:transparent;padding:0 10px;font:inherit;font-size:13px;color:var(--text);cursor:pointer;min-height:0;box-shadow:none}
.ceq-sel:focus-within,.ceq-search:focus-within{outline:2px solid #9cc4ff}
/* Lista */
.ceq-lhead{display:flex;justify-content:space-between;align-items:baseline}.ceq .ceq-lhead h3{margin:0;font-size:17px;color:var(--navy)}.ceq-lhead span{color:var(--muted);font-size:13px}
.ceq-search{display:flex;align-items:center;gap:8px;height:42px;border:1px solid var(--line);border-radius:11px;background:var(--field);padding:0 10px}.ceq-search .ps-ico{color:#7b8aa3;flex:none}.ceq .ceq-search input{flex:1;min-width:0;width:100%;height:100%;border:0;outline:0;background:transparent;padding:0;font:inherit;font-size:13.5px;color:var(--text);min-height:0;box-shadow:none}
.ceq-selects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ceq-selects label{display:grid;gap:3px;min-width:0}.ceq-selects small{font-size:11px;color:var(--muted)}
.ceq-list{list-style:none;margin:0;padding:0;display:grid;border:1px solid var(--line);border-radius:14px;overflow:hidden}.ceq-list li+li{border-top:1px solid var(--line)}
.ceq-row{display:grid;grid-template-columns:42px minmax(0,1fr) 16px;gap:10px;align-items:center;width:100%;padding:10px;border:0;background:var(--card);color:var(--text);font:inherit;text-align:left;cursor:pointer}.ceq-row:hover{background:#f6faff}.ceq-row.is-active{background:var(--sel);box-shadow:inset 3px 0 0 var(--blue)}
.ceq-av{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--blue-soft);color:var(--blue);font-weight:800;font-size:14px;flex:none}.ceq-av.is-big{width:84px;height:84px;font-size:26px}
.ceq-main{display:grid;gap:3px;min-width:0}.ceq-main b{color:var(--navy);font-size:14px;overflow-wrap:anywhere}.ceq-meta{display:flex;gap:5px;align-items:center;color:var(--muted);font-size:12px}.ceq-meta .ps-ico{width:13px;height:13px;color:var(--blue)}
.ceq-chips{display:flex;flex-wrap:wrap;gap:4px}.ceq-tag{font-style:normal;padding:2px 8px;border-radius:999px;background:var(--mute-bg);color:#53627c;font-size:11px;font-weight:700}.ceq-tag.is-blue{background:var(--info-bg);color:var(--info)}.ceq-tag.is-amber,.ceq-tag.is-warn{background:var(--warn-bg);color:var(--warn)}.ceq-tag.is-ok{background:var(--ok-bg);color:var(--ok)}.ceq-tag.is-bad{background:var(--bad-bg);color:var(--bad)}.ceq-tag.is-muted{background:var(--mute-bg)}
.ceq-go{color:#8fa1bf;width:16px;height:16px}
.ceq-foot{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;color:var(--muted);font-size:12.5px}.ceq-pager{display:flex;gap:6px;align-items:center}.ceq-pager button{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--line);border-radius:9px;background:var(--card);color:var(--text);cursor:pointer}.ceq-pager button[disabled]{opacity:.4;cursor:default}.ceq-pager .ps-ico{width:15px;height:15px}
/* Ficha */
.ceq-back{display:none;align-items:center;gap:6px;width:max-content;border:0;background:none;padding:0;color:var(--blue);font:inherit;font-size:13.5px;font-weight:700;cursor:pointer}
.ceq-chead{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:16px}
.ceq .ceq-cmain h2{margin:0;font-size:24px;color:var(--navy);overflow-wrap:anywhere}.ceq-cmain p{margin:3px 0 0;display:flex;gap:6px;align-items:center;color:var(--muted);font-size:13.5px}.ceq-cmain p .ps-ico{color:var(--blue);width:16px;height:16px}.ceq-cchips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.ceq-chip{display:inline-flex;align-items:center;padding:4px 11px;border-radius:8px;font-size:12px;font-weight:700;background:var(--mute-bg);color:#53627c;white-space:nowrap}.ceq-chip.is-ok{background:var(--ok-bg);color:var(--ok)}.ceq-chip.is-warn{background:var(--warn-bg);color:var(--warn)}.ceq-chip.is-bad{background:var(--bad-bg);color:var(--bad)}.ceq-chip.is-info{background:var(--info-bg);color:var(--info)}.ceq-chip.is-muted{background:var(--mute-bg);color:#53627c}
.ceq-facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px}
.ceq-fact{display:grid;justify-items:center;text-align:center;gap:2px;min-width:0}.ceq-fact .ps-ico{width:24px;height:24px;color:var(--blue)}.ceq-fact b{font-size:14px;color:var(--navy);overflow-wrap:anywhere}.ceq-fact small{color:var(--muted);font-size:11.5px}
.ceq-tabs{display:flex;flex-wrap:wrap;gap:6px}.ceq-tabs button{border:1px solid var(--line);background:var(--card);color:var(--text);font:inherit;font-size:13px;font-weight:600;padding:8px 16px;border-radius:9px;cursor:pointer}.ceq-tabs button:hover{background:var(--blue-soft)}.ceq-tabs button.is-on{background:var(--blue);border-color:var(--blue);color:#fff}
.ceq-main-card{padding:16px}
.ceq-tablewrap{position:relative;overflow-x:auto;border:1px solid var(--line);border-radius:12px}.ceq-table{width:100%;border-collapse:collapse;font-size:12px;min-width:820px}.ceq-table th{text-align:left;padding:9px 10px;background:var(--head);color:var(--muted);font-size:11.5px;font-weight:700;white-space:nowrap;border-bottom:1px solid var(--line)}.ceq-table td{padding:9px 8px;white-space:nowrap;border-top:1px solid var(--line);vertical-align:middle;color:var(--text)}.ceq-table tr:first-child td{border-top:0}.ceq-table tr.is-off td{opacity:.6}
.ceq-events{min-width:560px}.ceq-table td.ceq-notes{max-width:190px;white-space:normal;overflow-wrap:anywhere}
.ceq-num{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;color:#fff;font-weight:800;font-size:12px}
.ceq-eq{display:grid;grid-template-columns:auto 1fr;gap:2px 8px;align-items:center}.ceq-eq .ps-ico{width:20px;height:20px;color:var(--blue);grid-row:1/3}.ceq-eq b{color:var(--navy);font-size:13px}.ceq-eq small{grid-column:2;color:var(--muted);font-size:11px}
.ceq-filter{display:block;max-width:220px;margin-bottom:10px}
.ceq-menu{position:relative}.ceq-menu>summary{list-style:none;cursor:pointer;display:grid;place-items:center;width:30px;height:30px;border-radius:8px;color:var(--muted);font-weight:800;font-size:18px}.ceq-menu>summary::-webkit-details-marker{display:none}.ceq-menu>summary:hover{background:var(--mute-bg)}
.ceq-menu.is-add>summary{display:inline-flex;width:auto;height:auto;font-size:14px;color:#fff;font-weight:700}
.ceq-menu-list{position:absolute;right:0;top:calc(100% + 4px);z-index:20;display:grid;min-width:210px;padding:6px;border:1px solid var(--line);border-radius:12px;background:var(--card);box-shadow:0 12px 30px rgba(15,40,90,.16)}
.ceq .ceq-mi{display:block;width:100%;text-align:left;border:0;background:none;padding:9px 12px;border-radius:8px;font:inherit;font-size:13px;color:var(--text);cursor:pointer}.ceq-mi:hover{background:var(--blue-soft)}.ceq-mi.is-danger{color:var(--bad)}
.ceq-callout{display:flex;gap:8px;align-items:center;margin:0;padding:10px 12px;border-radius:10px;background:var(--info-bg);color:var(--info);font-size:13px}
.ceq-plain{list-style:none;margin:0;padding:0;display:grid}.ceq-plain li{display:flex;flex-wrap:wrap;gap:4px 12px;justify-content:space-between;padding:10px 0;border-top:1px solid var(--line)}.ceq-plain li:first-child{border-top:0}.ceq-plain b{color:var(--navy);font-size:13.5px}.ceq-plain span{color:var(--muted);font-size:12.5px}
.ceq-notes-text{margin:0;font-size:14px;line-height:1.55;color:var(--text)}
.ceq-pick{display:grid;justify-items:center;gap:6px;text-align:center;padding:60px 16px;color:var(--muted);background:var(--card);border:1px solid var(--line);border-radius:18px}.ceq-pick .ps-ico{width:38px;height:38px;color:#9bb0d3}.ceq-pick b{color:var(--navy);font-size:16px}.ceq-pick p{margin:0;font-size:13px;max-width:34ch}
/* Resumen técnico */
.ceq-sums{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ceq-sum{display:flex;gap:10px;align-items:center;min-width:0}.ceq-sum-ico{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--blue-soft);color:var(--blue);flex:none}.ceq-sum>div{display:grid;line-height:1.2;min-width:0}.ceq-sum b{font-size:16px;color:var(--navy);overflow-wrap:anywhere}.ceq-sum small{color:var(--muted);font-size:11.5px}
.ceq-health{display:flex;gap:12px;align-items:center;padding:14px;border-radius:14px;border:1px solid var(--line)}.ceq-health>span{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;flex:none;color:#fff}.ceq-health>span .ps-ico{width:26px;height:26px}.ceq-health b{display:block;font-size:20px;color:var(--navy)}.ceq-health p{margin:2px 0 0;font-size:12.5px;line-height:1.35}
.ceq-health.is-ok{background:var(--ok-bg)}.ceq-health.is-ok>span{background:#1fa463}.ceq-health.is-warn{background:var(--warn-bg)}.ceq-health.is-warn>span{background:#f0a02a}.ceq-health.is-bad{background:var(--bad-bg)}.ceq-health.is-bad>span{background:#e5483d}.ceq-health.is-muted{background:var(--mute-bg)}.ceq-health.is-muted>span{background:#8fa0ba}
.ceq-alerts{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:13px}.ceq-alerts li{display:flex;gap:8px;align-items:flex-start;line-height:1.35}.ceq-alerts li>span{display:grid;place-items:center;flex:none;margin-top:1px}.ceq-alerts .ps-ico{width:17px;height:17px}.ceq-alerts .is-ok .ps-ico{color:var(--ok)}.ceq-alerts .is-warn .ps-ico{color:#e69500}.ceq-alerts .is-bad .ps-ico{color:var(--bad)}.ceq-alerts .is-info .ps-ico{color:var(--blue)}
.ceq-donut{display:grid;gap:12px;justify-items:center}.ceq-donut-fig{position:relative;width:170px;height:170px}.ceq-donut-fig svg{width:100%;height:100%}.ceq-donut-fig>span{position:absolute;inset:0;display:grid;place-content:center;text-align:center}.ceq-donut-fig b{font-size:18px;color:var(--navy)}.ceq-donut-fig small{color:var(--muted);font-size:12px}
.ceq-legend{list-style:none;margin:0;padding:0;display:grid;gap:6px;width:100%;font-size:12.5px}.ceq-legend li{display:grid;grid-template-columns:10px minmax(0,1fr) auto auto;gap:8px;align-items:center}.ceq-legend i{width:9px;height:9px;border-radius:50%}.ceq-legend span{overflow-wrap:anywhere}.ceq-legend b{color:var(--navy)}.ceq-legend em{font-style:normal;color:var(--muted);min-width:64px;text-align:right}
body[data-page="panel"] .ceq p{color:var(--text)}body[data-page="panel"] .ceq .ceq-muted,body[data-page="panel"] .ceq .ceq-note,body[data-page="panel"] .ceq .ceq-head p,body[data-page="panel"] .ceq .ceq-cmain p,body[data-page="panel"] .ceq .ceq-pick p{color:var(--muted)}
@container (max-width:1500px){.ceq-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}}
@container (max-width:1380px){.ceq-split{grid-template-columns:minmax(0,280px) minmax(0,1fr)}.ceq-right{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr))}}
@container (max-width:1020px){.ceq-split{grid-template-columns:minmax(0,1fr)}.ceq:not(.has-detail) .ceq-center,.ceq:not(.has-detail) .ceq-right{display:none}.ceq.has-detail .ceq-listcol{display:none}.ceq-back{display:inline-flex}.ceq-right{grid-template-columns:minmax(0,1fr)}}
@container (max-width:640px){.ceq-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.ceq-chead{grid-template-columns:auto minmax(0,1fr)}.ceq-cact{grid-column:1/-1}.ceq-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.ceq-tabs{flex-wrap:nowrap;overflow-x:auto}}
@container (max-width:420px){.ceq-kpis{grid-template-columns:minmax(0,1fr)}.ceq-sums{grid-template-columns:minmax(0,1fr)}.ceq-selects{grid-template-columns:minmax(0,1fr)}}
/* Horarios de funcionamiento del motor (hasta 5) en el formulario de equipos de la ficha del cliente. */
.ceq-cycles{margin:12px 0 0;padding:12px;border:1px solid var(--line,#dfe6f0);border-radius:12px;display:grid;gap:8px;min-width:0}
.ceq-cycles[hidden],.ps-field[hidden]{display:none}
.ceq-cycles legend{padding:0 6px;font-weight:700;font-size:13px}
.ceq-cycle{display:grid;grid-template-columns:72px minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px}
.ceq-cycle input[type=time]{min-width:0;min-height:44px;padding:8px 10px;border-radius:10px;font:500 15px Inter,sans-serif}
:where(.ceq-cycle) input[type=time]{background:#fff;color:var(--ps-ink,#14213d);border:1px solid #cdd9ea}
.ceq-clear{display:flex;align-items:center;gap:8px;font-size:13px}
.ceq-cycle-n{font-size:12.5px;color:var(--muted,#64748b)}
.ceq-cycles .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.ceq-cycles-total{margin:0;min-height:1.2em;font-size:13px;font-weight:600}
.ceq-cycles-total.is-bad{color:#b42318}
@media (max-width:420px){.ceq-cycle{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.ceq-cycle-n{grid-column:1/-1}}
