:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--navy:#163a5f;--navy-light:#1f4b78;--blue:#2a6f9e;--pale:#edf5fa;--ink:#203040;--muted:#6b7c8e;--red:#b42318;--red-pale:#fee4e2;--amber:#b54708;--amber-pale:#fff2cc;--green:#147a4b;--line:#dbe4eb;font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:14px;line-height:1.45}*{box-sizing:border-box}body{background:var(--pale);color:var(--ink);margin:0}a{color:var(--blue)}.login-page{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:100vh;padding:1rem;display:flex}.app-shell{min-height:100vh;display:flex}.sidebar{background:var(--navy);color:#fff;flex-direction:column;flex-shrink:0;gap:1.5rem;width:240px;padding:1.25rem 1rem;display:flex}.mobile-topbar{display:none}.sidebar-toggle,.sidebar-close{color:#fff;font:inherit;cursor:pointer;background:0 0;border:none;line-height:1}.sidebar-close{margin-left:auto;padding:0 .25rem;font-size:1.3rem;display:none}.sidebar-backdrop{display:none}@media (width<=900px){.app-shell{flex-direction:column}.mobile-topbar{background:var(--navy);color:#fff;z-index:20;align-items:center;gap:.65rem;padding:.6rem 1rem;display:flex;position:sticky;top:0}.mobile-topbar strong{font-size:.95rem}.sidebar-toggle{padding:.15rem .4rem;font-size:1.4rem}.sidebar{z-index:30;transition:transform .2s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%);box-shadow:2px 0 16px #0000004d}.sidebar.sidebar-open{transform:translate(0)}.sidebar-close{display:block}.sidebar-backdrop{z-index:25;background:#0a141e73;display:block;position:fixed;inset:0}.app-main{padding:1rem}}.brand{border-bottom:1px solid #ffffff26;align-items:center;gap:.75rem;padding-bottom:1rem;display:flex}.brand-mark{background:var(--blue);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.85rem;font-weight:700;display:flex}.brand-copy{flex-direction:column;min-width:0;display:flex}.brand-copy strong{font-size:.95rem}.brand-copy small{color:#fff9;font-size:.75rem}.sidebar-nav{flex-direction:column;flex:1;gap:.25rem;display:flex}.sidebar-nav a{color:#ffffffbf;border-radius:6px;align-items:center;gap:.65rem;padding:.55rem .75rem;font-size:.9rem;text-decoration:none;display:flex}.sidebar-nav a:hover{color:#fff;background:#ffffff0f}.sidebar-nav a.active{background:var(--navy-light);color:#fff}.nav-icon{text-align:center;width:1.25em}.sidebar-footer{border-top:1px solid #ffffff26;align-items:center;gap:.6rem;padding-top:1rem;display:flex}.sidebar-user-avatar{background:var(--blue);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.8rem;font-weight:600;display:flex}.sidebar-user-copy{flex-direction:column;gap:.3rem;min-width:0;display:flex}.sidebar-user-copy small{color:#ffffffa6;text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;overflow:hidden}.sidebar-user-copy button{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:4px;align-self:flex-start;padding:.2rem .5rem;font-size:.75rem}.sidebar-user-copy button:hover{background:#fff3}.app-main{flex:1;min-width:0;padding:1.5rem 2rem}.app-main h1{color:var(--navy);margin-bottom:.25rem}table{border-collapse:collapse;border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;overflow:hidden}th,td{text-align:left;border-bottom:1px solid var(--line);padding:.6rem .75rem}th{background:var(--pale);color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:.8rem}.error{color:var(--red)}.page-loading{text-align:center;padding:2rem}.focus-strip{flex-wrap:wrap;gap:1rem;margin-bottom:1.75rem;display:flex}.focus-tile{border:1px solid var(--line);cursor:pointer;font:inherit;text-align:left;background:#fff;border-radius:10px;flex:190px;align-items:center;gap:.75rem;padding:.85rem 1rem;display:flex;box-shadow:0 1px 2px #14283c0d}.focus-tile:hover{border-color:var(--blue);box-shadow:0 2px 6px #14283c1a}.show-more-toggle{color:var(--blue);cursor:pointer;text-align:left;background:0 0;border:none;padding:.4rem 0 0;font-size:.8rem;font-weight:600}.show-more-toggle:hover{text-decoration:underline}.focus-tile-value{color:var(--navy);font-size:1.5rem;font-weight:700;line-height:1.1}.focus-tile-label{color:var(--muted);font-size:.8rem}.board-heading{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.75rem;display:flex}.board-heading h2{color:var(--navy);margin-bottom:.15rem}.board-subtitle{color:var(--muted);margin:0;font-size:.9rem}.overdue-badge{white-space:nowrap;color:var(--muted);font-size:.85rem;font-weight:600}.coverage-board{grid-template-columns:repeat(4,1fr);align-items:start;gap:1rem;margin-bottom:2rem;display:grid}@media (width<=1100px){.coverage-board{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.coverage-board{grid-template-columns:1fr}}.coverage-column{border:1px solid var(--line);background:#fff;border-radius:10px;flex-direction:column;gap:.6rem;padding:.9rem;display:flex;box-shadow:0 1px 2px #14283c0d}.coverage-column-title{background:var(--pale);color:var(--ink);border-radius:10px 10px 0 0;margin:-.9rem -.9rem .25rem;padding:.6rem .9rem;font-size:.85rem;font-weight:700}.coverage-column.tone-critical .coverage-column-title{background:var(--red-pale);color:var(--red)}.coverage-column.tone-warning .coverage-column-title{background:var(--amber-pale);color:var(--amber)}.coverage-column.tone-soon .coverage-column-title{background:var(--pale);color:var(--blue)}.coverage-card,.visit-card{border-bottom:1px solid var(--line);align-items:flex-start;gap:.6rem;padding-bottom:.6rem;display:flex}.coverage-card:last-child,.visit-card:last-child{border-bottom:none;padding-bottom:0}.coverage-avatar{background:var(--pale);width:2rem;height:2rem;color:var(--blue);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:flex}.coverage-card-body{flex-direction:column;gap:.2rem;min-width:0;display:flex}.coverage-card-name{font-weight:600;text-decoration:none}.coverage-card-name.link-button{font:inherit;color:var(--blue);cursor:pointer;text-align:left;background:0 0;border:none;margin:0;padding:0}.coverage-card-name:hover{text-decoration:underline}.coverage-card-meta{color:var(--muted);font-size:.8rem}.care-level-tag{background:var(--pale);color:var(--muted);border-radius:999px;width:fit-content;padding:.1rem .5rem;font-size:.7rem;display:inline-block}.empty-state{color:var(--muted);font-size:.85rem;font-style:italic}.celebration-board{grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2rem;display:grid}@media (width<=900px){.celebration-board{grid-template-columns:1fr}}.celebration-column{border:1px solid var(--line);background:#fff;border-radius:10px;flex-direction:column;gap:.6rem;padding:.9rem;display:flex;box-shadow:0 1px 2px #14283c0d}.celebration-row{border-bottom:1px solid var(--line);align-items:flex-start;gap:.6rem;padding-bottom:.6rem;display:flex}.celebration-row:last-child{border-bottom:none;padding-bottom:0}.celebration-icon{flex-shrink:0;font-size:1.1rem}.report-grid{grid-template-columns:repeat(6,1fr);gap:1rem;margin-bottom:1.75rem;display:grid}@media (width<=900px){.report-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=560px){.report-grid{grid-template-columns:repeat(2,1fr)}}.report-tile{border:1px solid var(--line);text-align:center;background:#fff;border-radius:10px;padding:.85rem}.metrics-grid{grid-template-columns:repeat(5,1fr);gap:1rem;margin-bottom:1.75rem;display:grid}@media (width<=1100px){.metrics-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=640px){.metrics-grid{grid-template-columns:repeat(2,1fr)}}.metric-tile{border:1px solid var(--line);background:#fff;border-radius:10px;align-items:center;gap:.75rem;padding:.85rem 1rem;display:flex;box-shadow:0 1px 2px #14283c0d}.metric-tile-sub{color:var(--muted);font-weight:400}.metric-tile-icon{background:var(--pale);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;font-size:1.1rem;display:flex}.metric-tile-icon.tone-gold{background:var(--amber-pale)}.metric-tile-icon.tone-purple{background:#ede9fe}.metric-tile-icon.tone-blue{background:#dbeafe}.metric-tile-icon.tone-green{background:#dcfce7}.metric-tile-icon.tone-red{background:var(--red-pale)}.metric-tile-icon.tone-pink{background:#fde2e7}.leader-grid{grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.75rem;display:grid}@media (width<=1100px){.leader-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.leader-grid{grid-template-columns:1fr}}.leader-card{border:1px solid var(--line);background:#fff;border-radius:10px;flex-direction:column;gap:.6rem;padding:.9rem 1rem;display:flex;box-shadow:0 1px 2px #14283c0d}.leader-card-name-button{font:inherit;color:var(--blue);text-align:left;cursor:pointer;background:0 0;border:none;margin:0;padding:0;font-weight:600}.leader-card-name-button:hover{text-decoration:underline}.leader-card-actions{gap:.5rem;display:flex}.leader-district-panel{margin-top:1rem}.plan-blocks{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;margin-bottom:1.75rem;display:grid}.plan-stop{border-bottom:1px solid var(--line);margin-bottom:.6rem;padding-bottom:.6rem}.plan-stop:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.two-panel-row{grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:2rem;display:grid}@media (width<=900px){.two-panel-row{grid-template-columns:1fr}}.panel-box-header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.panel-box{border:1px solid var(--line);background:#fff;border-radius:10px;flex-direction:column;gap:.6rem;padding:.9rem;display:flex;box-shadow:0 1px 2px #14283c0d}.list-row{border-bottom:1px solid var(--line);padding-bottom:.6rem}.list-row:last-of-type{border-bottom:none;padding-bottom:0}.list-row-button{border:none;border-bottom:1px solid var(--line);width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;margin:0;padding:0 0 .6rem;display:block}.list-row-button:last-of-type{border-bottom:none;padding-bottom:0}.list-row-button:hover .coverage-card-name{text-decoration:underline}.profile-card{border:1px solid var(--line);background:#fff;border-radius:10px;margin:1rem 0 1.5rem;padding:1.25rem;box-shadow:0 1px 2px #14283c0d}.profile-top{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.profile-identity{flex:1;min-width:200px}.profile-photo{object-fit:cover;border-radius:999px;flex-shrink:0;width:64px;height:64px}.profile-photo-fallback{background:var(--pale);color:var(--blue);justify-content:center;align-items:center;font-size:1.25rem;font-weight:700;display:flex}.profile-identity h1{margin:0 0 .2rem}.profile-quick-actions{flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem;display:flex}.action-pill{background:var(--pale);color:var(--blue);border:none;border-radius:999px;align-items:center;gap:.4rem;padding:.4rem .85rem;font-size:.85rem;font-weight:600;text-decoration:none;display:inline-flex}.action-pill:hover{background:#dbe9f3}.call-menu{display:inline-flex;position:relative}.call-menu-dropdown{z-index:40;border:1px solid var(--line);background:#fff;border-radius:8px;flex-direction:column;min-width:9rem;display:flex;position:absolute;top:calc(100% + .3rem);left:0;overflow:hidden;box-shadow:0 4px 14px #14283c26}.call-menu-dropdown a{color:var(--ink);white-space:nowrap;padding:.55rem .9rem;font-size:.85rem;text-decoration:none}.call-menu-dropdown a:hover{background:var(--pale)}.detail-grid{grid-template-columns:repeat(3,1fr);gap:.9rem;display:grid}@media (width<=900px){.detail-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.detail-grid{grid-template-columns:1fr}}.detail-item{background:var(--pale);border-radius:8px;flex-direction:column;gap:.2rem;padding:.6rem .75rem;display:flex}.detail-label{color:var(--muted);font-size:.75rem}.detail-value{font-size:.95rem}.toolbar{flex-wrap:wrap;gap:.75rem;margin-bottom:1rem;display:flex}.toolbar input[type=search]{border:1px solid var(--line);border-radius:6px;flex:220px;padding:.5rem .75rem}.toolbar select{border:1px solid var(--line);background:#fff;border-radius:6px;padding:.5rem .75rem}.directory-list{border:1px solid var(--line);background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 1px 2px #14283c0d}.directory-row{border-bottom:1px solid var(--line);color:inherit;align-items:center;gap:.75rem;padding:.75rem 1rem;text-decoration:none;display:flex}.directory-row:last-child{border-bottom:none}a.directory-row:hover{background:var(--pale)}.directory-avatar{object-fit:cover;border-radius:999px;flex-shrink:0;width:2.5rem;height:2.5rem}.directory-avatar-fallback{background:var(--pale);color:var(--blue);justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:flex}.directory-copy{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}button.primary,button.secondary,button.danger,.action-pill{font:inherit;cursor:pointer}button.primary{background:var(--blue);color:#fff;border:none;border-radius:6px;padding:.5rem .9rem;font-weight:600}button.primary:hover{background:var(--navy)}button.primary:disabled{opacity:.6;cursor:not-allowed}button.secondary{color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:6px;padding:.5rem .9rem;font-weight:600}button.danger{background:var(--red);color:#fff;border:none;border-radius:6px;padding:.5rem .9rem;font-weight:600}button.danger:hover{background:#8f1b12}button.danger:disabled{opacity:.6;cursor:not-allowed}button.secondary:hover{background:var(--pale)}.page-header-row{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}@media (width<=640px){.page-header-row{flex-direction:column;align-items:stretch}.page-header-row .page-header-actions{width:100%}.page-header-row .page-header-actions button,.page-header-row .page-header-actions a{flex:auto}}.page-header-actions{flex-wrap:wrap;gap:.6rem;display:flex}.coverage-card-actions{align-self:flex-start;gap:.3rem;display:flex}.coverage-card-actions button,.coverage-card-actions a{background:var(--pale);cursor:pointer;width:1.9rem;height:1.9rem;color:inherit;border:none;border-radius:6px;justify-content:center;align-items:center;font-size:.85rem;text-decoration:none;display:inline-flex}.coverage-card-actions button:hover,.coverage-card-actions a:hover{background:#dbe9f3}.modal-overlay{z-index:100;background:#14283c73;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-card{background:#fff;border-radius:10px;width:100%;max-width:640px;max-height:90vh;padding:1.25rem;overflow-y:auto}.modal-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.modal-header h2{margin:0}.modal-close{cursor:pointer;color:var(--muted);background:0 0;border:none;font-size:1.5rem;line-height:1}.form-grid{grid-template-columns:repeat(2,1fr);gap:.9rem;margin-bottom:1rem;display:grid}@media (width<=560px){.form-grid{grid-template-columns:1fr}.form-grid label.full{grid-column:auto}}.form-grid label{color:var(--muted);flex-direction:column;gap:.3rem;font-size:.85rem;display:flex}.form-grid label.full{grid-column:1/-1}.form-grid label.checkbox{flex-direction:row;align-items:center;gap:.5rem}.form-grid input,.form-grid select,.form-grid textarea{font:inherit;border:1px solid var(--line);color:var(--ink);border-radius:6px;padding:.5rem .6rem}.modal-actions{justify-content:flex-end;gap:.6rem;display:flex}.prayer-row{justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.prayer-row-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.prayer-row-actions button{padding:.35rem .7rem;font-size:.8rem}@media (width<=640px){:is(.directory-row:has(.prayer-row-actions),.prayer-row:has(.prayer-row-actions)){flex-direction:column;align-items:stretch}:is(.directory-row:has(.prayer-row-actions) .prayer-row-actions,.prayer-row:has(.prayer-row-actions) .prayer-row-actions){flex-wrap:wrap;width:100%}}.care-history-day{margin-bottom:1rem}.care-history-type-tile{border:1px solid var(--line);text-align:left;cursor:pointer}.care-history-type-tile:hover{background:var(--pale)}.calendar-legend{color:var(--muted);flex-wrap:wrap;gap:.75rem;margin-bottom:1rem;font-size:.8rem;display:flex}.calendar-legend-item{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:999px;align-items:center;gap:.4rem;padding:.15rem .4rem;display:inline-flex}.calendar-legend-item:hover{background:var(--pale)}.calendar-legend-item-inactive{opacity:.35}.calendar-legend-dot{background:var(--pale);border-radius:999px;width:.65rem;height:.65rem;display:inline-block}.calendar-legend-dot.tone-blue{background:#3b82f6}.calendar-legend-dot.tone-green{background:#22c55e}.calendar-legend-dot.tone-gold{background:var(--amber)}.calendar-legend-dot.tone-mauve{background:#a78bfa}.calendar-legend-dot.tone-mint{background:#16a34a}.calendar-legend-dot.tone-rose{background:#e11d48}.calendar-legend-dot.tone-orange{background:var(--amber)}.calendar-legend-dot.tone-cyan{background:#0891b2}.calendar-legend-dot.tone-red{background:var(--red)}.calendar-grid{background:var(--line);border:1px solid var(--line);border-radius:8px;grid-template-columns:repeat(7,1fr);gap:1px;margin-bottom:2rem;display:grid;overflow:hidden}@media (width<=640px){.calendar-grid{grid-template-columns:repeat(7,minmax(84px,1fr));overflow-x:auto}.calendar-cell{height:6.5rem}.calendar-cell-week{height:12rem}.calendar-header-actions{grid-template-columns:repeat(3,1fr);gap:.4rem;width:100%;display:grid}.calendar-header-actions button{white-space:nowrap;text-overflow:ellipsis;padding:.4rem .3rem;font-size:.75rem;overflow:hidden}.calendar-legend{grid-template-columns:repeat(2,1fr);gap:.3rem;font-size:.75rem;display:grid}}.calendar-weekday{background:var(--pale);color:var(--muted);text-align:center;padding:.5rem;font-size:.75rem;font-weight:600}.calendar-cell{background:#fff;flex-direction:column;gap:.2rem;height:8rem;padding:.35rem;display:flex;overflow:hidden}.calendar-cell-week{height:15rem}.calendar-cell-muted{background:var(--pale);color:var(--muted)}.calendar-cell-today{box-shadow:inset 0 0 0 2px var(--blue)}.calendar-cell-header{justify-content:space-between;align-items:center;font-size:.8rem;font-weight:600;display:flex}.calendar-cell-date{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.1rem .3rem;font-weight:600}.calendar-cell-date:hover{background:var(--pale)}.calendar-cell-add{color:var(--muted);cursor:pointer;visibility:hidden;background:0 0;border:none;padding:0 .2rem;font-size:.9rem;line-height:1}.calendar-cell:hover .calendar-cell-add{visibility:visible}.calendar-chip-button{text-align:left;cursor:pointer;color:inherit;background:0 0;border:none;padding:0;text-decoration:none;display:block}.calendar-chip{background:var(--pale);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;border-radius:4px;padding:.1rem .35rem;font-size:.7rem;display:block;overflow:hidden}.calendar-chip.tone-blue{background:#dbeafe}.calendar-chip.tone-green{background:#dcfce7}.calendar-chip.tone-gold{background:var(--amber-pale)}.calendar-chip.tone-mauve{background:#ede9fe}.calendar-chip.tone-mint{background:#dcfce7}.calendar-chip.tone-rose{background:#fde2e7}.calendar-chip.tone-orange{background:var(--amber-pale)}.calendar-chip.tone-cyan{background:#cffafe}.calendar-chip.tone-red{background:var(--red-pale)}.day-modal-subtitle{color:var(--muted);margin:-.5rem 0 .75rem;font-size:.85rem}.day-modal-list{flex-direction:column;gap:.5rem;margin-bottom:1rem;display:flex}.day-modal-row{border:1px solid var(--line);border-radius:8px;align-items:center;gap:.75rem;padding:.6rem .75rem;display:flex}.day-modal-row-bar{background:#3b82f6;border-radius:999px;flex-shrink:0;align-self:stretch;width:.35rem}.day-modal-row-bar.tone-blue{background:#3b82f6}.day-modal-row-bar.tone-mauve{background:#a78bfa}.day-modal-row-bar.tone-mint{background:#16a34a}.day-modal-row-bar.tone-rose{background:#e11d48}.day-modal-row-bar.tone-orange{background:var(--amber)}.day-modal-row-bar.tone-cyan{background:#0891b2}.day-modal-row-bar.tone-red{background:var(--red)}.day-modal-row-body{flex:1;min-width:0}.day-modal-row-actions{flex-shrink:0;gap:.4rem;display:flex}.day-modal-footer{border-top:1px solid var(--line);justify-content:flex-end;gap:.5rem;padding-top:1rem;display:flex}.calendar-more{color:var(--blue);text-align:left;cursor:pointer;background:0 0;border:none;padding:0;font-size:.7rem}.calendar-agenda-row{text-align:left;cursor:pointer;width:100%;color:inherit;background:0 0;border:none;padding:.75rem 1rem;text-decoration:none;display:block}.calendar-agenda-row:hover{background:var(--pale)}@media print{.sidebar,.no-print{display:none!important}.app-main{margin:0!important;padding:0!important}}
