/* PWA única Barrio Machalí · v8.24 (estilos aislados) */
:root{--pnavy:#173b63;--pgreen:#17634e;--psoft:#f5f7f8;--pgray:#587084}
*{box-sizing:border-box}
body.pwa-body{margin:0;min-height:100dvh;font-family:Arial,Helvetica,sans-serif;background:var(--psoft);color:#17324e}
.pwa-shell{max-width:980px;margin:auto;padding:22px 16px 60px}
.pwa-header{display:flex;align-items:center;gap:16px;padding:15px 18px;background:#fff;border:1px solid #e1e9ee;border-radius:19px;box-shadow:0 5px 20px #102f5108}
.pwa-logo{width:70px;height:70px;object-fit:contain;border-radius:16px;flex:none}
.pwa-heading h1{font-family:Georgia,serif;color:var(--pnavy);font-size:clamp(23px,4vw,30px);line-height:1.15;margin:0}
.pwa-heading p{font-size:13px;line-height:1.4;color:var(--pgray);margin:6px 0 0}
.pwa-main{margin-top:20px}.pwa-panel{background:#fff;border:1px solid #dce6ec;border-radius:18px;padding:24px;margin:14px 0;box-shadow:0 5px 20px #102f5107}
.pwa-panel h2{font-family:Georgia,serif;font-size:clamp(23px,4vw,29px);color:var(--pnavy);margin:0 0 10px}
.pwa-desc{line-height:1.5;color:var(--pgray);margin:0 0 18px;font-size:15px}
.pwa-profile-grid{display:grid;grid-template-columns:1fr;gap:11px}
.pwa-choice,.pwa-action{display:flex;align-items:center;gap:14px;background:#f8fbfd;border:1px solid #dce5eb;text-align:left;text-decoration:none;color:#17324e;border-radius:14px;padding:18px;min-height:90px;font:inherit;width:100%;cursor:pointer}
.pwa-choice:hover,.pwa-choice:focus-visible,.pwa-action:hover,.pwa-action:focus-visible{border-color:#7fa9c3;background:#eef6fa;outline:2px solid #b9d8e7;outline-offset:2px}
.pwa-choice .pwa-emoji,.pwa-action .pwa-emoji{font-size:28px;flex:0 0 38px;text-align:center}
.pwa-copy{display:block;flex:1;min-width:0}.pwa-copy strong{font-size:17px;display:block;color:var(--pnavy)}.pwa-copy small{display:block;color:var(--pgray);margin-top:5px;font-size:13px;line-height:1.5}.pwa-arrow{font-size:24px;color:#59788e}
.pwa-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pwa-action{min-height:105px;padding:14px}
.pwa-btn{display:inline-flex;align-items:center;justify-content:center;margin:0 8px 8px 0;background:var(--pgreen);color:#fff!important;border:0;border-radius:12px;padding:13px 18px;font:700 15px Arial,Helvetica,sans-serif;text-decoration:none;cursor:pointer;min-height:46px}
.pwa-btn.blue{background:var(--pnavy)}.pwa-btn.subtle{background:#eff5f8;color:#173b63!important;border:1px solid #cddfe9}
.pwa-note{background:#eaf5f0;border-left:4px solid var(--pgreen);border-radius:10px;padding:13px 15px;line-height:1.5;font-size:14px}
.pwa-warn{background:#fff6e5;border-color:#b58b20}.pwa-small{font-size:13px;color:var(--pgray);line-height:1.5}
.pwa-status{display:flex;align-items:center;gap:7px;font-size:13px;color:var(--pgray);margin:15px 0}.pwa-dot{width:9px;height:9px;background:#168252;border-radius:50%}.pwa-dot.offline{background:#c47124}
.pwa-rolebar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0}.pwa-rolebar .pwa-btn{margin:0}
.pwa-day-list{display:grid;gap:10px}.pwa-day{display:grid;grid-template-columns:75px minmax(0,1fr);gap:13px;border:1px solid #e0e8ed;border-left:5px solid #cc8176;background:#fff5f2;border-radius:12px;padding:13px}
.pwa-day.booked{background:#edf8f1;border-left-color:#21825c}.pwa-day.pending{background:#fff8e7;border-left-color:#b68b1b}.pwa-day.rest{background:#f0f2f4;border-left-color:#aeb9c1}
.pwa-date{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}.pwa-date strong{font-size:25px;color:var(--pnavy)}.pwa-date span{font-size:12px;color:var(--pgray);font-weight:700}
.pwa-day-content{display:flex;flex-direction:column;justify-content:center;gap:4px;min-width:0}.pwa-day-content strong{line-height:1.35}.pwa-day-content small{font-size:13px;color:#486372;line-height:1.45}
.pwa-install{display:none}.pwa-install.show{display:inline-flex}
@media(max-width:600px){.pwa-shell{padding:12px 11px 45px}.pwa-header{padding:14px;gap:11px}.pwa-logo{width:58px;height:58px}.pwa-panel{padding:18px 14px}.pwa-actions{grid-template-columns:1fr}.pwa-choice{padding:15px;min-height:80px}.pwa-choice .pwa-emoji{font-size:25px}}

/* Calendario mensual interactivo de familias */
.pwa-month-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px}.pwa-month-head h2{margin:0!important;text-align:center}.pwa-month-head .pwa-btn{margin:0;min-width:48px;font-size:21px}.pwa-month-head [aria-disabled=true]{pointer-events:none;opacity:.3}
.pwa-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.pwa-month-weekday{text-align:center;padding:6px 0;font-size:12px;font-weight:700;color:var(--pgray)}.pwa-empty-day{display:block}
.pwa-month-day{border:1px solid #cdd9e1;padding:6px 2px;min-height:70px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;color:#173b63;background:#e8f6f0;font:inherit;cursor:pointer;min-width:0}.pwa-month-day strong{font-size:21px}.pwa-month-day span{font-size:12px;color:#3e665b}.pwa-month-day.mixed{background:#e5f5ed}.pwa-month-day.full{background:#f4e8e3}.pwa-month-day.rest,.pwa-month-day.past{background:#eef1f3;color:#73818c}.pwa-month-day[aria-pressed=true]{outline:3px solid #17634e;outline-offset:1px}.pwa-month-details[hidden]{display:none!important}.pwa-month-details h3{font-size:18px;color:#173b63;margin:0 0 13px}
.pwa-month-group{border:1px solid #d5e3df;border-left:4px solid #21825c;border-radius:12px;background:#f3faf6;padding:14px;display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.pwa-month-group.taken{background:#f5f7f8;border-left-color:#8ea2b0}.pwa-month-group strong,.pwa-month-group small{display:block;line-height:1.45}.pwa-month-group small{color:var(--pgray);margin-top:3px}.pwa-month-group .pwa-btn{margin:0;flex:0 0 auto}
@media(max-width:600px){.pwa-month-day{min-height:53px;gap:2px}.pwa-month-day strong{font-size:17px}.pwa-month-day span{font-size:10px}.pwa-month-grid{gap:4px}.pwa-month-head h2{font-size:24px!important}.pwa-month-group{padding:11px}.pwa-month-group .pwa-btn{padding:9px 11px;font-size:13px}}

/* Registro inicial local del nombre de la familia (v8.25) */
.pwa-panel[hidden],#pwa-family-content[hidden]{display:none!important}
.pwa-form-label{display:block;font-weight:700;color:#173b63;margin-bottom:9px}
.pwa-text-input{display:block;width:100%;max-width:600px;border:1px solid #cbd9e2;border-radius:10px;padding:13px 14px;margin:0 0 18px;font:16px Arial,Helvetica,sans-serif;color:#17324e}
.pwa-text-input:focus{outline:3px solid #b8d9e4;border-color:#3d8198}

/* v8.26: selector de sector de misioneras/élderes. */
.pwa-sector-form{margin:0 0 14px}
.pwa-sector-form .pwa-text-input{max-width:100%;min-height:50px;background:#fff;cursor:pointer}
.pwa-sector-form .pwa-btn{max-width:100%;white-space:normal;text-align:center}
