/* 2.0.62: interior navigation and document-opening controls only. */
.client-ppcl-groups{gap:8px;padding:6px 2px 12px;align-items:stretch;scrollbar-width:thin}
.client-ppcl-group{--tab-photo:url('/assets/menu/ppcl.webp')}
.client-ppcl-group[data-client-group=General]{--tab-photo:url('/assets/menu/piscinas.webp')}
.client-ppcl-group[data-client-group=Instalaciones]{--tab-photo:url('/assets/menu/legionella.webp')}
.client-ppcl-group[data-client-group=Programas]{--tab-photo:url('/assets/menu/diario.webp')}
.client-ppcl-group[data-client-group=Muestreo]{--tab-photo:url('/assets/menu/recogidas.webp')}
.client-shell .client-ppcl-groups .client-ppcl-group,.client-ppcl-groups .client-ppcl-group{display:flex;align-items:center;justify-content:flex-start;gap:7px;flex:1 0 132px;min-height:54px;height:auto;max-width:260px;padding:10px 13px;border:1px solid #bcd9cb;border-radius:12px;color:#104c3b;font-family:inherit;font-size:12px;font-weight:750;line-height:1.35;white-space:normal;text-align:left;box-shadow:0 2px 5px #12543b0b;background-color:#f2faf6;background-image:linear-gradient(100deg,#f3fbf8 5%,#e6f5eefa 32%,#e6f5eec9 65%,#e6f5ee45 100%),var(--tab-photo);background-size:cover;background-position:center;transition:box-shadow .16s,border-color .16s,filter .16s}
.client-ppcl-group[data-client-group='Gestión y documentación']{flex-basis:195px!important}
.client-shell .client-ppcl-groups .client-ppcl-group.active,.client-ppcl-groups .client-ppcl-group.active{color:#fff;border-color:#087958;background-image:linear-gradient(100deg,#054b3d 0%,#086548f5 45%,#087456a6 100%),var(--tab-photo);box-shadow:inset 0 0 0 1px #07855c,0 3px 8px #07583e21}
:is(.client-ppcl-subtabs,.cleaning-tabs,.client-pool-subtabs,.hiper-subtabs) > button{border:1px solid #c5ddcf;border-radius:10px;padding:9px 13px;min-height:42px;font-family:inherit;font-size:12px;font-weight:650;line-height:1.35;color:#1c5543;background:linear-gradient(125deg,#f8fcfa,#e9f5ee);box-shadow:0 1px 4px #123e3009;transition:background .16s,border-color .16s,box-shadow .16s}
.client-shell .client-ppcl-subtabs .client-ppcl-section{min-height:42px;padding:9px 13px;font-size:12px;white-space:normal;flex:0 0 auto;max-width:min(330px,80vw);border:1px solid #c5ddcf;border-radius:10px;background:linear-gradient(125deg,#f8fcfa,#e9f5ee);color:#1c5543}
:is(.client-ppcl-subtabs,.cleaning-tabs,.client-pool-subtabs,.hiper-subtabs) > button:is(.active,[aria-selected=true]),.client-shell .client-ppcl-subtabs .client-ppcl-section.active{background:linear-gradient(120deg,#07513e,#07845d);border-color:#087958;color:#fff;box-shadow:0 2px 7px #07583e20}
.client-ppcl-group:hover,:is(.client-ppcl-subtabs,.cleaning-tabs,.client-pool-subtabs,.hiper-subtabs)>button:hover{border-color:#74af95;box-shadow:0 3px 8px #07583e17}
.client-ppcl-group:focus-visible,:is(.client-ppcl-subtabs,.cleaning-tabs,.client-pool-subtabs,.hiper-subtabs)>button:focus-visible{outline:3px solid #219d79;outline-offset:3px}
/* Original text, descendants, href, data attributes, and event handlers remain untouched. */
html body :is(button,a).grinlab-pdf-action{display:inline-flex;align-items:center;justify-content:center;flex-direction:row;gap:8px;box-sizing:border-box;min-height:38px;min-width:112px;max-width:100%;height:auto;padding:8px 12px;border:1px solid #087355;border-radius:10px;background:linear-gradient(120deg,#064e3d,#07865f);color:#fff;box-shadow:0 2px 6px #064e3d21;font-family:inherit;font-weight:700;font-size:0;line-height:1.35;text-decoration:none;white-space:normal;vertical-align:middle;text-align:center;cursor:pointer;transition:filter .16s,box-shadow .16s}
html body :is(button,a).grinlab-pdf-action::before{content:'';display:block;flex:0 0 21px;width:21px;height:25px;background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 28'%3E%3Cpath d='M4 1h10l6 6v19H4z' fill='white' stroke='%23e4fff2'/%3E%3Cpath d='M14 1v7h6' fill='none' stroke='%23065d45'/%3E%3Crect x='1' y='13' width='22' height='10' rx='2' fill='%23c54848'/%3E%3Ctext x='12' y='20.5' text-anchor='middle' font-family='Arial,sans-serif' font-size='7' font-weight='700' fill='white'%3EPDF%3C/text%3E%3C/svg%3E")}
html body :is(button,a).grinlab-pdf-action::after{content:attr(data-pdf-caption);display:block;font-size:12px;line-height:1.35;color:inherit;font-weight:700;white-space:normal;overflow-wrap:anywhere}
html body :is(button,a).grinlab-pdf-action:hover:not(:disabled){filter:brightness(1.07);box-shadow:0 3px 9px #064e3d30}
html body :is(button,a).grinlab-pdf-action:focus-visible{outline:3px solid #3fa785;outline-offset:3px}
html body :is(button,a).grinlab-pdf-action:disabled{opacity:.6;cursor:wait}
html body :is(button,a).grinlab-pdf-action[hidden]{display:none!important}
@media(max-width:640px){.client-shell .client-ppcl-groups .client-ppcl-group{flex:0 0 146px;min-height:54px;font-size:12px;padding:9px 12px}.client-ppcl-groups{max-width:100%;overflow-x:auto}.client-shell .client-ppcl-groups .client-ppcl-group[data-client-group='Gestión y documentación']{flex-basis:190px!important}html body :is(button,a).grinlab-pdf-action{min-height:42px;min-width:108px;padding:8px 10px;gap:7px}}
@media(prefers-reduced-motion:reduce){.client-ppcl-group,:is(.client-ppcl-subtabs,.cleaning-tabs,.client-pool-subtabs,.hiper-subtabs)>button,html body :is(button,a).grinlab-pdf-action{transition:none}}
/* Keep the PDF treatment above legacy per-module and inline button styling. */
html body :is(button,a).grinlab-pdf-action{display:inline-flex!important;background:linear-gradient(120deg,#064e3d,#07865f)!important;color:#fff!important;border:1px solid #087355!important;font-size:0!important;min-height:38px!important;padding:8px 12px!important;border-radius:10px!important;gap:8px!important;box-shadow:0 2px 6px #064e3d21!important}
html body :is(button,a).grinlab-pdf-action::after{content:attr(data-pdf-caption) / '';font-size:12px!important}
html body :is(button,a).grinlab-pdf-action:is([hidden],.hidden){display:none!important}
@media(max-width:640px){html body :is(button,a).grinlab-pdf-action{min-height:42px!important;padding:8px 10px!important}}
