:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#f7f6f2;--surface:#fff;--surface-muted:#f4f2ec;--text:#23201c;--muted:#8d8d87;--border:#e8e6df;--primary:#3f5d7a;--primary-dark:#365072;--danger:#b3402f;--radius:12px;--shadow:0 10px 26px #28241c12;--dk-page:#f7f6f2;--dk-surface:#fff;--dk-surface-warm:#fdfcfa;--dk-ink:#23201c;--dk-body:#2b2c2e;--dk-muted:#8d8d87;--dk-muted-2:#9c9c95;--dk-muted-3:#a7a79f;--dk-muted-4:#a39e93;--dk-muted-5:#9c958a;--dk-muted-6:#a59c8b;--dk-border:#eae8e1;--dk-border-2:#e9e7e0;--dk-border-3:#e8e6df;--dk-border-4:#efece4;--dk-border-5:#f1efe9;--dk-border-6:#e9e6dd;--dk-border-7:#ece8de;--dk-icon-tile:#f1efe8;--dk-icon-stroke:#4f463a;--dk-accent:#3f5d7a;--dk-accent-hover:#365072;--dk-brand-grad:linear-gradient(158deg, #33506b, #1e3346);--dk-clay:#b07a52;--dk-pill-bg:#f4ebe0;--dk-pill-text:#a4622f;--dk-gold:#c2a15a;--dk-gold-soft:#e7d9bd;--dk-gold-deep:#a07e3c;--dk-navy:#33506b;--dk-shadow-bar:0 1px 2px #28241c08;--dk-shadow-hover:0 10px 26px #28241c17;--dk-shadow-panel:0 1px 2px #28241c0a, 0 14px 32px #28241c0f;--dk-shadow-raised:0 1px 2px #28241c0d, 0 22px 48px #28241c1f;--dk-glass-bg:#faf9f5b8;--dk-glass-bg-strong:#fcfbf7db;--dk-glass-blur:saturate(140%) blur(16px);--dk-glass-border:#fff9;--dk-glass-shadow:0 1px 0 #ffffff80 inset, 0 8px 24px #28241c14;--dk-font-serif:"Spectral", Georgia, "Times New Roman", serif;--dk-font-sans:"Onest", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#14171b;--surface:#1b1f24;--surface-muted:#232830;--text:#e8e7e3;--muted:#9aa0a8;--border:#2c333c;--shadow:0 12px 30px #00000073;--dk-page:#14171b;--dk-surface:#1b1f24;--dk-surface-warm:#20252b;--dk-ink:#f1f0ec;--dk-body:#d7d8da;--dk-muted:#9aa0a8;--dk-muted-2:#969ca4;--dk-muted-3:#8f959d;--dk-muted-4:#969ca4;--dk-muted-5:#9aa0a8;--dk-muted-6:#a3a9b1;--dk-border:#2c333c;--dk-border-2:#2c333c;--dk-border-3:#2c333c;--dk-border-4:#313945;--dk-border-5:#313945;--dk-border-6:#2c333c;--dk-border-7:#313945;--dk-icon-tile:#262c34;--dk-icon-stroke:#cfd3d9;--dk-pill-bg:#2c2620;--dk-pill-text:#d79a5c;--dk-brand-grad:linear-gradient(158deg, #243a4e, #16222e);--dk-shadow-bar:0 1px 2px #0006;--dk-shadow-hover:0 12px 30px #00000080;--dk-shadow-panel:0 1px 2px #00000059, 0 16px 34px #00000073;--dk-shadow-raised:0 1px 2px #0006, 0 24px 50px #0000008c;--dk-glass-bg:#14171bbd;--dk-glass-bg-strong:#181c21e0;--dk-glass-border:#ffffff14;--dk-glass-shadow:0 1px 0 #ffffff0d inset, 0 10px 26px #00000080}*,:before,:after{box-sizing:border-box}html{min-height:100%;font-size:16px}body{min-width:320px;min-height:100vh;color:var(--text);background:var(--background);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:Onest,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}:focus-visible{outline-offset:2px;outline:3px solid #0078d447}#app{min-height:100vh}.app-shell{min-height:100vh;overflow-x:clip}.login-screen{background:radial-gradient(120% 80% at 50% -10%, #33506b12, transparent 60%), radial-gradient(80% 60% at 50% 120%, #c2a15a14, transparent 60%), var(--dk-page);place-items:center;min-height:100vh;padding:32px 18px;display:grid}.login-card,.panel,.stat-card,.security-card,.side-card,.hero-panel{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.login-card{border-color:var(--dk-border-2);border-top:3px solid var(--dk-gold);width:min(100%,460px);box-shadow:var(--dk-shadow-raised);text-align:center;border-radius:18px;padding:40px 38px;position:relative}.login-card h1{font-family:var(--dk-font-serif);color:var(--dk-ink);font-weight:600}.login-card .eyebrow{color:var(--dk-gold-deep)}.auth-screen{grid-template-columns:1.05fr .95fr;place-items:stretch stretch;min-height:100vh;padding:0}.auth-brand{background:var(--dk-brand-grad);border-right:3px solid var(--dk-gold);place-items:center;padding:48px;display:grid;position:relative;overflow:hidden}.auth-brand:before{content:"";opacity:.12;background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='80'%20height='80'%20viewBox='0%200%2080%2080'%20fill='none'%20stroke='%23e7d9bd'%20stroke-width='1.4'%20stroke-linecap='round'%3E%3Cpath%20d='M40%2024v32M24%2040h32M33%2024h14M33%2056h14M24%2033v14M56%2033v14'/%3E%3C/svg%3E");background-size:80px 80px;position:absolute;inset:0}.auth-brand-inner{z-index:1;text-align:center;max-width:420px;color:var(--dk-gold-soft);position:relative}.auth-brand-logo{object-fit:contain;background:#fff;border-radius:50%;width:112px;height:112px;margin-bottom:22px;padding:12px;box-shadow:0 0 0 1px #c2a15a99,0 18px 40px #00000040}.auth-brand-inner h2{font-family:var(--dk-font-serif);color:#fff;margin:0;font-size:2.4rem;font-weight:600}.auth-brand-name{letter-spacing:.12em;text-transform:uppercase;color:var(--dk-gold-soft);margin:6px 0 0;font-size:.82rem;font-weight:600}.auth-brand-tag{color:#ffffffb8;max-width:320px;margin:20px auto 0;font-size:1rem;line-height:1.5}.auth-form-pane{place-items:center;padding:40px 28px;display:grid}.auth-screen .login-card{width:min(100%,420px)}@media (width<=860px){.auth-screen{grid-template-columns:1fr}.auth-brand{display:none}}.login-card-wide{width:min(100%,980px)}.brand-mark{background:var(--dk-brand-grad);width:64px;height:64px;color:var(--dk-gold-soft);border-radius:50%;place-items:center;margin-bottom:18px;font-size:2rem;font-weight:700;display:inline-grid;box-shadow:0 0 0 1px #c2a15a80,0 10px 26px #28241c1f}.brand-mark svg{fill:none;width:30px;height:30px;stroke:var(--dk-gold-soft);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.eyebrow{color:var(--primary);letter-spacing:.08em;text-transform:uppercase;margin:0 0 4px;font-size:.78rem;font-weight:700}h1,h2,p{margin-top:0}h1{margin-bottom:6px;font-size:clamp(1.55rem,2.2vw,2rem);line-height:1.2}h2{margin-bottom:12px;font-size:1.12rem}p{color:var(--muted)}.language-switch{border:1px solid var(--border);background:var(--surface-muted);border-radius:999px;gap:4px;padding:4px;display:inline-flex}.login-card .language-switch{margin:18px 0 22px}.login-remember-row{border:1px solid var(--border);text-align:left;background:#faf9f5;border-radius:12px;grid-template-columns:auto 1fr;align-items:start;gap:10px;margin:6px 0 4px;padding:12px;display:grid}.login-remember-row input{width:auto;margin-top:3px}.login-remember-row span{gap:2px;display:grid}.login-remember-row strong{color:var(--text);font-size:.92rem}.login-remember-row small{color:var(--muted);font-size:.82rem;line-height:1.35}.language-switch button{color:var(--muted);background:0 0;border:0;border-radius:999px;padding:6px 12px;font-weight:700}.language-switch button.active{background:var(--surface);color:var(--primary);box-shadow:0 1px 4px #1018281f}.role-grid{gap:12px;display:grid}.account-sections{text-align:left;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:22px;display:grid}.account-sections h2{margin-bottom:10px}.role-card,.member-row{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:100%;color:var(--text);text-align:left;padding:16px;transition:border-color .18s,box-shadow .18s,transform .18s}.role-card:hover,.member-row:hover{box-shadow:var(--dk-shadow-hover);border-color:#c9d3da;transform:translateY(-1px)}.role-card span,.member-row strong{font-weight:750;display:block}.role-card small,.member-row span{color:var(--muted);margin-top:4px;display:block}.app-header{z-index:30;background:var(--dk-glass-bg-strong);width:100%;height:78px;-webkit-backdrop-filter:var(--dk-glass-blur);border-top:3px solid var(--dk-gold);border-bottom:1px solid var(--dk-glass-border);justify-content:space-between;align-items:center;gap:20px;padding:0 40px;display:flex;position:sticky;top:0;box-shadow:inset 0 1px #ffffff80,0 6px 20px #28241c0d}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.app-header{background:var(--dk-surface)}}.brand-lockup{text-align:left;background:0 0;border:0;align-items:center;gap:15px;min-width:0;padding:0;display:flex}.brand-logo{object-fit:contain;flex:none;width:50px;height:50px}.brand-name{flex-direction:column;min-width:0;line-height:1.2;display:flex}.brand-name strong{font-family:var(--dk-font-serif);color:var(--dk-ink);letter-spacing:.01em;white-space:nowrap;font-size:20px;font-weight:600}.brand-name small{font-family:var(--dk-font-sans);text-transform:uppercase;letter-spacing:.11em;color:var(--dk-muted-6);white-space:nowrap;text-overflow:ellipsis;font-size:10.5px;font-weight:600;overflow:hidden}.app-header-actions{align-items:center;gap:18px;display:flex}.header-search{border:1px solid var(--dk-border);background:#f5f4f0;border-radius:11px;align-items:center;gap:9px;width:300px;height:40px;padding:0 14px;display:flex}.header-search svg{fill:none;stroke:#a3a299;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:16px;height:16px}.header-search input{width:100%;color:var(--dk-body);background:0 0;border:0;outline:none;font-size:13px}.header-search input::placeholder{color:#a3a299}.header-bell{background:0 0;border:0;border-radius:11px;place-items:center;width:40px;height:40px;transition:background .15s;display:grid;position:relative}.header-bell:hover{background:#f3f2ed}.header-bell svg{fill:none;stroke:#6c6c66;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.header-bell-dot{background:var(--dk-clay);border-radius:50%;width:7px;height:7px;position:absolute;top:6px;right:7px;box-shadow:0 0 0 1.5px #fff}.header-avatar{background:var(--dk-brand-grad);color:#e7d9bd;width:40px;height:40px;font-family:var(--dk-font-serif);border:0;border-radius:50%;place-items:center;font-size:14px;font-weight:600;display:grid}.header-new{background:var(--dk-accent);color:#fff;height:40px;font-family:var(--dk-font-sans);white-space:nowrap;border:0;border-radius:11px;align-items:center;gap:5px;padding:0 18px;font-size:13.5px;font-weight:600;transition:background .15s;display:inline-flex}.header-new span{font-size:17px;line-height:1}.header-new:hover{background:var(--dk-accent-hover)}.header-install{border:1px solid var(--dk-gold);background:color-mix(in srgb, var(--dk-gold) 14%, transparent);height:40px;color:var(--dk-gold-deep,#9a7b2e);font-family:var(--dk-font-sans);white-space:nowrap;cursor:pointer;border-radius:11px;align-items:center;gap:7px;padding:0 14px;font-size:13px;font-weight:650;transition:background .15s;display:inline-flex}.header-install:hover{background:color-mix(in srgb, var(--dk-gold) 26%, transparent)}.header-install svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px}.install-hint-modal{width:min(440px,100%)}.install-hint-body{gap:12px;padding:4px 2px 2px;display:grid}.install-step{color:var(--dk-ink);align-items:flex-start;gap:12px;font-size:.92rem;line-height:1.4;display:flex}.install-step-num{background:var(--dk-accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:.85rem;font-weight:700;display:inline-flex}.status-line{border-radius:999px;align-items:center;width:fit-content;padding:6px 11px;font-size:.82rem;font-weight:800;display:inline-flex}.status-line.online{color:#166534;background:#dcfce7}.status-line.offline{color:#9a3412;background:#ffedd5}.notice{border-radius:var(--radius);color:#9a3412;background:#fff7ed;border:1px solid #fed7aa;padding:12px 14px}.notice.success{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.app-toast{z-index:200;color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:14px;align-items:center;gap:12px;max-width:min(560px,100vw - 32px);padding:13px 16px;font-weight:600;display:flex;position:fixed;top:92px;left:50%;transform:translate(-50%);box-shadow:0 12px 32px #0f28192e}.app-toast.is-error{color:#991b1b;background:#fef2f2;border-color:#fecaca}.app-toast-icon{background:#1665341f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;display:inline-flex}.app-toast.is-error .app-toast-icon{background:#991b1b1f}.app-toast-icon svg{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.app-toast-text{flex:1;min-width:0;line-height:1.35}.app-toast-close{color:inherit;opacity:.6;cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:2px 4px;font-size:.95rem;line-height:1}.app-toast-close:hover{opacity:1}.app-toast-pop-enter-active,.app-toast-pop-leave-active{transition:opacity .24s,transform .24s}.app-toast-pop-enter-from,.app-toast-pop-leave-to{opacity:0;transform:translate(-50%,-12px)}@media (width<=560px){.app-toast{width:calc(100vw - 24px);max-width:none;top:auto;bottom:18px}.app-toast-pop-enter-from,.app-toast-pop-leave-to{transform:translate(-50%,12px)}}.app-subhead{z-index:20;background:var(--dk-glass-bg);width:100%;-webkit-backdrop-filter:var(--dk-glass-blur);border-bottom:1px solid var(--dk-glass-border);flex-direction:column;gap:18px;padding:22px 40px 0;display:flex;position:sticky;top:78px;box-shadow:0 6px 18px #28241c0a}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.app-subhead{background:var(--dk-surface)}}.app-subhead-title{gap:4px;min-width:0;display:grid}.app-subhead-title .eyebrow{color:var(--dk-muted-5);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:11px;font-weight:600}.app-subhead-title h1{font-family:var(--dk-font-serif);color:var(--dk-ink);margin:0;font-size:24px;font-weight:600}.app-subhead-title p{color:var(--dk-muted);margin:0;font-size:13px}.app-nav{scrollbar-width:none;gap:26px;width:100%;min-width:0;display:flex;overflow-x:auto}.app-nav::-webkit-scrollbar{display:none}.app-nav button{min-height:44px;color:var(--dk-muted);white-space:nowrap;background:0 0;border:0;border-radius:10px 10px 0 0;padding:8px 14px 14px;font-size:14.5px;font-weight:600;transition:color .15s,background .15s;position:relative}.app-nav button:hover{color:var(--dk-ink);background:#28241c0a}.app-nav button.active{color:var(--dk-ink);font-weight:700}.app-nav button.active:after{background:var(--dk-accent);content:"";border-radius:999px 999px 0 0;height:3px;position:absolute;bottom:0;left:12px;right:12px}.workspace{background:var(--dk-page);border:0;width:100%;max-width:100vw;min-height:calc(100vh - 78px);margin:0;padding:clamp(28px,4vw,40px) clamp(24px,5vw,40px) 56px;overflow-x:clip}.dashboard-workspace{padding:28px 40px 48px;display:block}.dashboard-page{flex-direction:column;gap:20px;width:100%;margin-inline:auto;display:flex}.map-workspace{padding:clamp(24px,3vw,38px) clamp(18px,3.5vw,54px) 56px}.map-page{gap:22px}.map-page .hero-panel{width:min(100%,1680px);margin-inline:auto}.stack{gap:32px;display:grid}.stat-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;display:grid}.stat-card{padding:16px}.stat-card span{color:var(--muted);font-size:.9rem}.stat-card strong{margin-top:8px;font-size:1.8rem;display:block}.content-grid{grid-template-columns:minmax(0,1.35fr) minmax(320px,.85fr);gap:32px;display:grid}.family-workspace{grid-template-columns:1fr;align-items:start}.family-workspace.has-selection{grid-template-columns:minmax(264px,.32fr) minmax(0,1.68fr);gap:24px}.review-workspace{grid-template-columns:1fr;align-items:start}.review-workspace.has-selection{grid-template-columns:minmax(320px,.42fr) minmax(0,1.58fr)}.family-list-panel{transition:opacity .18s}.family-workspace.has-selection .family-list-panel{background:var(--dk-surface-warm);border-color:var(--dk-border-4);max-height:calc(100vh - 210px);box-shadow:none;padding:14px;overflow:auto}.family-workspace.has-selection .family-list-panel .panel-heading{background:0 0;margin:-14px -14px 12px;padding:12px 14px}.family-workspace.has-selection .family-list-panel .panel-heading h2{font-size:.98rem}.review-workspace.has-selection .wide{max-height:calc(100vh - 250px);overflow:auto}.family-workspace:not(.has-selection) .family-list-panel{width:100%}.family-workspace:not(.has-selection) .family-row{grid-template-columns:minmax(220px,1.15fr) minmax(220px,1fr) minmax(180px,.9fr);align-items:center;column-gap:18px}.family-workspace:not(.has-selection) .family-row>strong{font-size:1.08rem}.family-workspace:not(.has-selection) .family-row .household-person-list,.family-workspace:not(.has-selection) .family-row .family-row-note,.family-workspace:not(.has-selection) .family-row .visit-due{grid-column:1/-1}.family-workspace.has-selection .family-row{background:0 0;border-color:#0000;margin-top:6px;padding:10px 12px}.family-workspace.has-selection .family-row:hover{border-color:var(--dk-border-3);background:var(--surface);box-shadow:none;transform:none}.family-workspace.has-selection .family-row span,.family-workspace.has-selection .family-row small{font-size:.82rem}.family-workspace.has-selection .family-row.selected{border-color:var(--dk-border-3);background:var(--surface);box-shadow:inset 3px 0 0 var(--dk-gold)}.family-workspace.has-selection .family-row .household-person-list{display:none}.panel{border-color:var(--dk-border-2);background:var(--surface);box-shadow:var(--dk-shadow-panel);border-radius:16px;padding:24px}.panel-heading{border-bottom:1px solid var(--dk-border-5);background:var(--surface);margin:-24px -24px 22px;padding:18px 24px}.panel-heading h2{font-family:var(--dk-font-serif);color:var(--dk-ink);margin-bottom:0;font-size:1.15rem;font-weight:600}.overview-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.overview-grid article{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:16px}.overview-grid span{color:var(--muted);font-size:.9rem}.overview-grid strong{margin-top:4px;font-size:1.8rem;line-height:1;display:block}.shortcut-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px;max-width:1460px;padding:2px 0 10px;display:grid}.church-country-group{gap:14px;display:grid}.church-country-group+.church-country-group{margin-top:28px}.church-country-group.belgium-group{margin-top:clamp(34px,4vw,56px)}.church-country-group.belgium-group .shortcut-grid{grid-template-columns:repeat(3,minmax(220px,1fr))}.church-country-group .section-title{border-bottom:1px solid var(--border);align-items:end;padding-bottom:10px}.dashboard-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;width:min(100%,1180px);margin-inline:auto;display:grid}.dashboard-metric{background:#ffffffbd;border:1px solid #a0bed86b;border-radius:18px;padding:18px 20px;box-shadow:0 14px 34px #1f29330b}.dashboard-metric span{color:var(--muted);font-size:.9rem;font-weight:750;display:block}.dashboard-metric strong{color:var(--text);margin-top:6px;font-size:clamp(1.7rem,2.4vw,2.35rem);line-height:1;display:block}.preset-button{border:1px solid var(--border);min-height:84px;color:var(--text);text-align:left;background:#ffffffd1;border-radius:14px;gap:4px;padding:14px;display:grid;box-shadow:0 10px 22px #1f29330b}.preset-button:hover,.preset-button.active{background:#faf9f5;border-color:#28241c8f}.preset-button strong{font-size:.95rem}.preset-button span{color:var(--muted);font-size:.82rem;line-height:1.3}.dashboard-greeting h1{font-family:var(--dk-font-serif);color:var(--dk-ink);margin:0;font-size:25px;font-weight:600}.dashboard-greeting p{color:var(--dk-muted);margin:6px 0 0;font-size:13.5px}.totals-bar{background:var(--dk-surface);border:1px solid var(--dk-border-2);box-shadow:var(--dk-shadow-bar);border-radius:16px;display:flex;overflow:hidden}.totals-segment{border-right:1px solid var(--dk-border-5);flex:1;padding:18px 26px}.totals-segment:last-child{border-right:0}.totals-label{letter-spacing:.05em;text-transform:uppercase;color:var(--dk-muted-3);font-size:11px;font-weight:600;display:block}.totals-value{color:#2b2c2e;margin-top:9px;font-size:29px;font-weight:600;line-height:1;display:block}.totals-value.attention{color:var(--dk-clay)}.agenda-strip{background:var(--dk-surface-warm);border:1px solid #eee9df;border-radius:16px;align-items:center;gap:22px;padding:13px 22px;display:flex}.diocese-overview .panel-heading{align-items:start}.diocese-totals{flex-shrink:0;gap:22px;display:flex}.diocese-totals span{flex-direction:column;align-items:flex-end;display:flex}.diocese-totals strong{color:var(--dk-ink);font-size:1.5rem;font-weight:750;line-height:1.1}.diocese-totals strong.attention{color:#b45309}.diocese-totals strong.danger{color:#dc2626}.diocese-totals small{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.7rem}.diocese-table-wrap{margin-top:8px;overflow-x:auto}.diocese-table{border-collapse:collapse;width:100%}.diocese-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border-bottom:1px solid var(--dk-border-3);padding:8px 12px;font-size:.72rem}.diocese-table th:not(.dio-name):not(:first-child),.diocese-table td:not(.dio-name){text-align:center}.diocese-table td{border-bottom:1px solid var(--dk-border-4);padding:11px 12px;font-size:.9rem}.diocese-row{cursor:pointer;transition:background .12s}.diocese-row:hover{background:var(--dk-surface-warm)}.dio-name{color:var(--dk-ink);font-weight:650}.dio-pill{border-radius:999px;justify-content:center;align-items:center;min-width:30px;padding:3px 10px;font-size:.82rem;font-weight:700;display:inline-flex}.dio-pill.green{color:#166534;background:#dcfce7}.dio-pill.amber{color:#92400e;background:#fef3c7}.dio-pill.red{color:#b91c1c;background:#fee2e2}.dio-pill.muted{background:var(--dk-surface-warm);color:var(--muted)}.dio-dash{color:var(--muted)}.diocese-priests{margin-top:14px}.diocese-priests summary{cursor:pointer;color:var(--dk-accent);font-size:.88rem;font-weight:650}.diocese-priests ul{gap:6px;margin:12px 0 0;padding:0;list-style:none;display:grid}.diocese-priests li{border:1px solid var(--dk-border-4);background:var(--dk-surface-warm);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:9px 12px;font-size:.88rem;display:flex}.diocese-priests li small{color:var(--muted)}[data-theme=dark] .dio-pill.green{color:#86efac;background:#10231a}[data-theme=dark] .dio-pill.amber{color:#fcd34d;background:#2a2010}[data-theme=dark] .dio-pill.red{color:#fca5a5;background:#2a1416}@media (width<=720px){.diocese-overview .panel-heading{flex-direction:column;gap:12px}.diocese-totals{gap:18px}.diocese-totals span{align-items:flex-start}}.urgent-badge{color:#b91c1c;letter-spacing:.04em;background:#fee2e2;border:1px solid #fca5a5;font-weight:800}.inline-urgent{vertical-align:middle;margin-left:8px;padding:2px 7px;font-size:.62rem}.pastoral-card2.urgent{border-color:#f4a3a3;box-shadow:inset 3px 0 #dc2626}.pc-urgent-note{color:#b91c1c;font-size:.82rem;font-weight:600}.urgent-toggle-btn{color:#b91c1c;cursor:pointer;background:#fff5f5;border:1px solid #f0b4b4;border-radius:999px;padding:6px 12px;font-size:.8rem;font-weight:700;transition:background .15s}.urgent-toggle-btn:hover{background:#fee2e2}.urgent-toggle-btn.active{color:#fff;background:#dc2626;border-color:#dc2626}.urgent-toggle-btn.full{width:100%;padding:11px}.urgent-modal{width:min(520px,100%)}.urgent-eyebrow{letter-spacing:.06em;font-weight:800;color:#dc2626!important}.urgent-modal-body{gap:16px;padding:4px 2px;display:grid}.urgent-field{gap:8px;display:grid}.urgent-field>span{color:var(--dk-ink);font-size:.9rem;font-weight:650}.urgent-field textarea{resize:vertical;width:100%}.urgent-scope-choice{grid-template-columns:1fr 1fr;gap:10px;display:grid}.urgent-scope-option{border:1.5px solid var(--dk-border-3);background:var(--surface);text-align:left;cursor:pointer;border-radius:12px;gap:3px;padding:12px 14px;transition:all .15s;display:grid}.urgent-scope-option strong{color:var(--dk-ink);font-size:.92rem}.urgent-scope-option small{color:var(--muted);font-size:.75rem;line-height:1.35}.urgent-scope-option:hover{border-color:#f0b4b4}.urgent-scope-option.active{background:#fff5f5;border-color:#dc2626}.urgent-scope-option.active strong{color:#b91c1c}.urgent-strip{background:linear-gradient(#fff5f5,#fff);border:1px solid #f4a3a3;border-radius:16px;padding:14px 18px;box-shadow:inset 4px 0 #dc2626}.urgent-strip-head{align-items:center;gap:9px;margin-bottom:11px;display:flex}.urgent-strip-head strong{font-family:var(--dk-font-serif);color:#991b1b;font-size:15px;font-weight:600}.urgent-dot{background:#dc2626;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 4px #dc262629}.urgent-strip-count{color:#fff;background:#dc2626;border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 7px;font-size:.78rem;font-weight:700;display:inline-flex}.urgent-strip-list{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px;display:grid}.urgent-strip-item{text-align:left;cursor:pointer;background:#fff;border:1px solid #f4c2c2;border-radius:10px;gap:2px;padding:9px 12px;transition:border-color .15s;display:grid;position:relative}.urgent-strip-item:hover{border-color:#dc2626}.urgent-strip-item strong{color:var(--dk-ink);text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:650;overflow:hidden}.urgent-strip-item small{color:#b91c1c;text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.urgent-private-tag{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:var(--dk-surface-warm);border-radius:999px;justify-self:start;margin-top:2px;padding:1px 7px;font-size:.64rem;font-weight:700}[data-theme=dark] .urgent-strip{background:linear-gradient(180deg, #241012, var(--surface));border-color:#7f1d1d}[data-theme=dark] .urgent-strip-head strong{color:#fca5a5}[data-theme=dark] .urgent-strip-item{background:var(--surface);border-color:#5b2626}[data-theme=dark] .urgent-scope-option.active{background:#241012}[data-theme=dark] .urgent-scope-option.active strong{color:#fca5a5}@media (width<=560px){.urgent-scope-choice{grid-template-columns:1fr}}.panel-heading-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}[data-theme=dark] .urgent-badge{color:#fca5a5;background:#3b1518;border-color:#7f1d1d}[data-theme=dark] .urgent-toggle-btn{color:#fca5a5;background:#2a1416;border-color:#7f1d1d}[data-theme=dark] .pc-urgent-note{color:#fca5a5}.today2{gap:18px}.today2-hero{border:1px solid var(--dk-border-2);background:radial-gradient(120% 140% at 0% 0%, #c6a25c1f, transparent 55%), linear-gradient(180deg, var(--dk-surface-warm), var(--surface));box-shadow:var(--dk-shadow-bar);border-radius:20px;align-items:center;gap:22px;padding:22px 26px;display:flex}.today2-date{background:var(--surface);border:1px solid var(--dk-border-3);border-radius:18px;flex-shrink:0;align-content:center;justify-items:center;gap:1px;width:92px;height:92px;display:grid;box-shadow:0 6px 16px #28241c14}.today2-date small{text-transform:uppercase;letter-spacing:.08em;color:var(--dk-accent);font-size:.66rem;font-weight:700}.today2-date strong{font-family:var(--dk-font-serif);color:var(--dk-ink);font-size:2.5rem;font-weight:600;line-height:1}.today2-date span{color:var(--muted);text-transform:capitalize;font-size:.72rem}.today2-hero-text{flex:1;min-width:0}.today2-hero-text h2{font-family:var(--dk-font-serif);color:var(--dk-ink);margin:0 0 4px;font-size:1.4rem;font-weight:600}.today2-hero-text p{color:var(--muted);margin:0;font-size:.9rem}.today2-hero-badges{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:7px;display:flex}.today2-badge{background:var(--surface);border:1px solid var(--dk-border-3);color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-size:.82rem;font-weight:600;display:inline-flex}.today2-badge b{color:var(--dk-ink);font-weight:750}.today2-badge.red{color:#b91c1c;background:#fee2e2;border-color:#fca5a5;font-weight:750}.today2-panel-head{border-bottom:1px solid var(--dk-border-4);justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;padding-bottom:12px;display:flex}.today2-panel-title{font-family:var(--dk-font-serif);color:var(--dk-ink);align-items:center;gap:9px;font-size:1.02rem;font-weight:600;display:inline-flex}.today2-panel-head.urgent .today2-panel-title{color:#991b1b}.today2-head-icon{fill:none;width:19px;height:19px;stroke:var(--dk-accent);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.today2-head-emoji{font-size:1.05rem}.today2-panel-count{background:var(--dk-surface-warm);min-width:26px;height:24px;color:var(--muted);border-radius:999px;justify-content:center;align-items:center;padding:0 9px;font-size:.82rem;font-weight:700;display:inline-flex}.today2-avatar{background:var(--dk-surface-warm);width:40px;height:40px;color:var(--dk-ink);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.95rem;font-weight:700;display:inline-flex}.today2-avatar.red{color:#b91c1c;background:#fee2e2}.today2-avatar.cel{font-size:1.1rem}.today2-avatar.cel.birthday{background:#fef3c7}.today2-avatar.cel.baptism{background:#dbeafe}.today2-avatar.cel.wedding{background:#fce7f3}.today2-card-body{text-align:left;flex:1;gap:1px;min-width:0;display:grid}.today2-card-body strong{color:var(--dk-ink);text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:600;overflow:hidden}.today2-card-body small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.today2-urgent.panel{background:linear-gradient(180deg, #fff5f5, var(--surface));border-color:#f4a3a3}.today2-urgent-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;display:grid}.today2-urgent-card{background:var(--surface);cursor:pointer;border:1px solid #f4c2c2;border-radius:14px;align-items:center;gap:12px;padding:12px 14px;transition:border-color .15s,transform .1s;display:flex}.today2-urgent-card:hover{border-color:#dc2626;transform:translateY(-1px)}.today2-urgent-card .today2-card-body small{color:#b91c1c}.today2-cols{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:start;gap:18px;display:grid}.today2-appts,.today2-cel-groups{gap:8px;display:grid}.today2-appt{border:1px solid var(--dk-border-4);background:var(--dk-surface-warm);cursor:pointer;border-radius:14px;align-items:center;gap:12px;padding:10px 12px;transition:border-color .15s,background .15s;display:flex}.today2-appt:hover{border-color:var(--dk-gold-deep);background:var(--surface)}.today2-appt.highlight{border-color:var(--dk-accent);box-shadow:inset 0 0 0 1px var(--dk-accent)}.today2-appt-date{flex-shrink:0;justify-items:center;width:40px;line-height:1.05;display:grid}.today2-appt-date small{text-transform:uppercase;letter-spacing:.05em;color:var(--dk-accent);font-size:.62rem;font-weight:700}.today2-appt-date strong{font-family:var(--dk-font-serif);color:var(--dk-ink);font-size:1.35rem}.today2-chevron{fill:none;width:16px;height:16px;stroke:var(--muted);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.today2-cel-group+.today2-cel-group{margin-top:6px}.today2-cel-daylabel{text-transform:uppercase;letter-spacing:.06em;color:var(--dk-accent);padding:6px 4px 4px;font-size:.7rem;font-weight:700}.today2-cel{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:12px;width:100%;padding:8px 10px;transition:background .12s,border-color .12s;display:flex}.today2-cel:hover{background:var(--dk-surface-warm);border-color:var(--dk-border-4)}@media (width<=720px){.today2-hero{flex-wrap:wrap;gap:16px}.today2-hero-badges{flex-flow:wrap;align-items:center;width:100%}}[data-theme=dark] .today2-urgent.panel{background:linear-gradient(180deg, #241012, var(--surface));border-color:#7f1d1d}[data-theme=dark] .today2-urgent-card{border-color:#5b2626}[data-theme=dark] .today2-badge.red,[data-theme=dark] .today2-avatar.red{color:#fca5a5;background:#3b1518;border-color:#7f1d1d}[data-theme=dark] .today2-avatar.cel.birthday{background:#2a2010}[data-theme=dark] .today2-avatar.cel.baptism{background:#14233b}[data-theme=dark] .today2-avatar.cel.wedding{background:#2e1622}.today-opener{border:1px solid var(--dk-border-2);background:var(--surface);width:100%;box-shadow:var(--dk-shadow-bar);cursor:pointer;text-align:left;border-radius:14px;justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;transition:border-color .15s,transform .1s;display:flex}.today-opener:hover{border-color:var(--dk-gold-deep);transform:translateY(-1px)}.today-opener.has-urgent{border-color:#f4a3a3;box-shadow:inset 4px 0 #dc2626}.today-opener-main{flex-wrap:wrap;align-items:center;gap:16px;min-width:0;display:flex}.today-opener-title{font-family:var(--dk-font-serif);color:var(--dk-ink);font-size:1.05rem;font-weight:600}.today-opener-stats{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.today-opener-chip{background:var(--dk-surface-warm);color:var(--muted);border-radius:999px;align-items:center;gap:6px;padding:3px 11px;font-size:.8rem;font-weight:650;display:inline-flex}.today-opener-chip.urgent{color:#b91c1c;background:#fee2e2}.today-opener-arrow{color:var(--dk-accent);flex-shrink:0;font-size:1.15rem}.today-page{padding-top:6px}.today-grid-page .today-list{max-height:none}.today-grid-page .today-card{padding:18px}[data-theme=dark] .today-opener-chip.urgent{color:#fca5a5;background:#3b1518}.today-band-head{align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.today-band-head h2{font-family:var(--dk-font-serif);color:var(--dk-ink);margin:0;font-size:1.15rem;font-weight:600}.today-grid{grid-template-columns:repeat(auto-fit,minmax(290px,1fr));align-items:start;gap:14px;display:grid}.today-card{border:1px solid var(--dk-border-2);background:var(--surface);box-shadow:var(--dk-shadow-bar);border-radius:16px;flex-direction:column;padding:15px 16px;display:flex}.today-card.urgent-card{background:linear-gradient(180deg, #fff5f5, var(--surface));border-color:#f4a3a3;box-shadow:inset 4px 0 #dc2626}.today-card-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:11px;display:flex}.today-card-title{font-family:var(--dk-font-serif);color:var(--dk-ink);align-items:center;gap:8px;font-size:14.5px;font-weight:600;display:inline-flex}.urgent-card .today-card-title{color:#991b1b}.today-card-link{color:var(--dk-accent);cursor:pointer;white-space:nowrap;background:0 0;border:0;font-size:.8rem;font-weight:650}.today-card-link:hover{text-decoration:underline}.today-list{gap:6px;max-height:244px;padding-right:2px;display:grid;overflow-y:auto}.today-list::-webkit-scrollbar{width:5px}.today-list::-webkit-scrollbar-thumb{background:var(--dk-border-3);border-radius:999px}.today-row{border:1px solid var(--dk-border-4);background:var(--dk-surface-warm);text-align:left;cursor:pointer;border-radius:10px;align-items:center;gap:10px;padding:8px 10px;transition:border-color .15s;display:flex}.today-row:hover{border-color:var(--dk-gold-deep)}.today-card.urgent-card .today-row{background:#fff;border-color:#f4c2c2}.today-card.urgent-card .today-row:hover{border-color:#dc2626}.today-row-date{flex-direction:column;flex-shrink:0;align-items:center;width:34px;line-height:1.1;display:flex}.today-row-date small{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:.62rem}.today-row-date strong{color:var(--dk-ink);font-size:1rem}.today-row-date.highlight strong{color:var(--dk-accent)}.today-row-main{flex:1;gap:1px;min-width:0;display:grid}.today-row-main strong{color:var(--dk-ink);text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;font-weight:600;overflow:hidden}.today-row-main small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.74rem;overflow:hidden}.today-card.urgent-card .today-row-main small{color:#b91c1c}.today-card .celebrations-more{margin-top:8px}[data-theme=dark] .today-card.urgent-card{background:linear-gradient(180deg, #241012, var(--surface));border-color:#7f1d1d}[data-theme=dark] .today-card.urgent-card .today-row{background:var(--surface);border-color:#5b2626}[data-theme=dark] .today-card.urgent-card .today-card-title,[data-theme=dark] .today-card.urgent-card .today-row-main small{color:#fca5a5}.celebrations-strip{background:var(--dk-surface-warm);border:1px solid #eee9df;border-radius:16px;padding:12px 16px}.celebrations-head{cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:0 0 10px;display:flex}.celebrations-head-text{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.celebrations-head strong{font-family:var(--dk-font-serif);color:var(--dk-ink);font-size:15px;font-weight:600}.celebrations-head small{color:var(--dk-muted-3);font-size:11.5px}.celebrations-chevron{fill:none;width:18px;height:18px;stroke:var(--muted);stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;transition:transform .2s}.celebrations-strip.collapsed .celebrations-chevron{transform:rotate(-90deg)}.celebrations-list{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:7px;display:grid}.celebration-item{border:1px solid var(--dk-border-4);background:var(--surface);text-align:left;cursor:pointer;border-radius:10px;align-items:center;gap:9px;padding:7px 10px;transition:border-color .15s;display:flex}.celebration-item:hover{border-color:var(--dk-gold-deep)}.celebration-icon{flex-shrink:0;font-size:1.05rem;line-height:1}.celebration-body{gap:1px;min-width:0;display:grid}.celebration-body strong{color:var(--dk-ink);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;font-weight:600;overflow:hidden}.celebration-body small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.celebrations-more{color:var(--dk-accent);cursor:pointer;background:0 0;border:0;margin-top:9px;padding:2px 0;font-size:.82rem;font-weight:650}.celebrations-more:hover{text-decoration:underline}.agenda-strip-label{flex-direction:column;flex:none;display:flex}.agenda-strip-label strong{font-family:var(--dk-font-serif);color:var(--dk-ink);font-size:15.5px;font-weight:600}.agenda-strip-label small{color:var(--dk-muted-3);font-size:11px}.agenda-strip-divider{background:var(--dk-border-7);flex:none;width:1px;height:36px}.agenda-chip-row{scrollbar-width:none;flex:1;gap:13px;min-width:0;display:flex;overflow-x:auto}.agenda-chip-row::-webkit-scrollbar{display:none}.agenda-chip{border:1px solid var(--dk-border-4);background:var(--dk-surface);text-align:left;border-radius:11px;flex:none;align-items:center;gap:12px;padding:9px 16px 9px 12px;transition:border-color .15s;display:flex}.agenda-chip:hover{border-color:#c9d3da}.agenda-chip-date{flex-direction:column;align-items:center;line-height:1;display:flex}.agenda-chip-date small{text-transform:uppercase;letter-spacing:.04em;color:var(--dk-muted-3);font-size:9.5px;font-weight:700}.agenda-chip-date.highlight small{color:var(--dk-clay)}.agenda-chip-date strong{font-family:var(--dk-font-serif);color:var(--dk-ink);margin-top:2px;font-size:19px;font-weight:700}.agenda-chip-text{flex-direction:column;min-width:0;display:flex}.agenda-chip-text strong{color:#2b2c2e;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.agenda-chip-text small{color:var(--dk-muted-2);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.agenda-strip-link{color:var(--dk-accent);background:0 0;border:0;flex:none;padding:0;font-size:12.5px;font-weight:600}.nav-launcher{flex-direction:column;gap:20px;display:flex}.nav-section-header{align-items:center;gap:14px;margin-bottom:12px;display:flex}.nav-section-header span:first-child{text-transform:uppercase;letter-spacing:.08em;color:var(--dk-muted-5);align-items:center;gap:8px;font-size:11.5px;font-weight:600;display:inline-flex}.nav-section-header span:first-child:before{content:"";background:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23c2a15a'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M12%203v18M3%2012h18M9.5%203h5M9.5%2021h5M3%209.5v5M21%209.5v5'/%3E%3C/svg%3E") 50%/contain no-repeat;flex:none;width:12px;height:12px}.nav-section-rule{background:var(--dk-border-6);flex:1;height:1px}.nav-card-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.nav-card{background:var(--dk-surface);border:1px solid var(--dk-border-3);text-align:left;cursor:pointer;border-radius:15px;align-items:center;gap:15px;padding:18px 16px 18px 18px;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.nav-card:hover{box-shadow:var(--dk-shadow-hover);border-color:#c9d3da;transform:translateY(-2px)}.nav-card-icon{background:var(--dk-icon-tile);border-radius:13px;flex:none;place-items:center;width:48px;height:48px;display:grid}.nav-card-icon svg{fill:none;width:24px;height:24px;stroke:var(--dk-icon-stroke);stroke-width:1.55px;stroke-linecap:round;stroke-linejoin:round}.nav-card-text{flex-direction:column;flex:1;min-width:0;display:flex}.nav-card-text strong{color:#2b2c2e;font-size:15.5px;font-weight:600}.nav-card-text small{color:var(--dk-muted-4);margin-top:2px;font-size:12.5px}.nav-card-count{color:#b0a99d;flex:none;font-size:13.5px;font-weight:600}.nav-card-count.attention{background:var(--dk-pill-bg);min-width:26px;height:23px;color:var(--dk-pill-text);border-radius:8px;place-items:center;padding:0 8px;font-size:12.5px;font-weight:700;display:inline-grid}.nav-card-chevron{fill:none;stroke:#cdc9bf;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:18px;height:18px}.shortcut-tile{border:1px solid var(--dk-border-3);background:var(--surface);min-height:160px;color:var(--text);box-shadow:var(--dk-shadow-bar);text-align:left;border-radius:15px;align-content:space-between;justify-items:start;gap:16px;padding:20px;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid;position:relative}.shortcut-tile:hover{box-shadow:var(--dk-shadow-raised);background:#fff;border-color:#c9d3da;transform:translateY(-3px)}.shortcut-tile:after{content:"›";color:var(--dk-muted-3);font-size:1.4rem;line-height:1;transition:transform .15s,color .15s;position:absolute;bottom:14px;right:18px}.shortcut-tile:hover:after{color:var(--dk-accent);transform:translate(3px)}.shortcut-icon{background:var(--dk-icon-tile);width:56px;height:56px;color:var(--dk-icon-stroke);border-radius:14px;place-items:center;display:grid}.shortcut-icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.6px;width:26px;height:26px}.shortcut-copy{gap:8px;min-width:0;display:grid}.shortcut-copy strong{color:var(--text);font-size:1.18rem;line-height:1.2}.shortcut-copy small{max-width:24ch;color:var(--muted);font-size:.92rem;line-height:1.45}.shortcut-tile b{background:var(--dk-surface-warm);min-width:32px;height:26px;color:var(--dk-muted-5);border-radius:8px;place-items:center;padding:0 8px;font-size:.8rem;font-weight:600;display:grid;position:absolute;top:16px;right:16px}.shortcut-tile.green .shortcut-icon,.shortcut-tile.amber .shortcut-icon,.shortcut-tile.purple .shortcut-icon,.shortcut-tile.indigo .shortcut-icon,.shortcut-tile.blue .shortcut-icon,.shortcut-tile.red .shortcut-icon{background:var(--dk-icon-tile);color:var(--dk-icon-stroke)}.hero-panel{background:var(--dk-surface-warm);box-shadow:var(--dk-shadow-bar);border-color:#eee9df;border-radius:16px;justify-content:space-between;align-items:center;gap:24px;padding:26px 28px;display:flex}.hero-panel .eyebrow{color:var(--dk-gold-deep)}.hero-panel h2{font-family:var(--dk-font-serif);color:var(--dk-ink);font-weight:600}.hero-panel h2,.hero-panel p{margin-bottom:0}.hero-actions{flex-wrap:wrap;gap:8px;display:flex}.simple-actions{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.simple-actions button{border:1px solid var(--dk-border-3);background:var(--surface);color:var(--text);text-align:left;border-radius:13px;gap:4px;padding:18px;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.simple-actions button:hover{box-shadow:var(--dk-shadow-hover);border-color:#c9d3da;transform:translateY(-2px)}.simple-actions span{color:var(--muted);font-size:.9rem}.process-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.process-strip article,.empty-state,.review-summary{border:1px solid var(--dk-border-3);background:var(--dk-surface-warm);border-radius:13px;padding:16px}.process-strip strong,.process-strip span,.muted-text{display:block}.process-strip span,.muted-text,.empty-state,.link-box span,.compare-grid small{color:var(--muted);font-size:.9rem}.action-empty{text-align:left;justify-items:start;gap:8px;display:grid}.action-empty strong{color:var(--text);font-size:1rem}.action-empty span{color:var(--muted);line-height:1.45}.filter-tabs{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.filter-tabs button{border:1px solid var(--dk-border-3);background:var(--surface);color:var(--muted);border-radius:999px;padding:8px 14px;font-weight:600}.filter-tabs button:hover{border-color:#c9d3da}.filter-tabs button.active{background:var(--primary);color:#fff;border-color:#0000}.filter-tabs span{margin-left:4px}.notification-hero{justify-content:space-between;align-items:center;gap:18px;display:flex}.notifications-panel{max-width:1280px}.notification-list{gap:12px;display:grid}.notification-card{border:1px solid var(--dk-border-2);background:var(--surface);box-shadow:var(--dk-shadow-bar);border-radius:14px;grid-template-columns:minmax(120px,160px) minmax(0,1fr) auto;align-items:start;gap:18px;padding:18px;display:grid}.notification-card.read{background:var(--dk-surface-warm);opacity:.82}.notification-status,.notification-body,.notification-actions{gap:8px;display:grid}.notification-body strong{color:var(--text);font-size:1.05rem}.notification-body span,.notification-body small,.notification-status small{color:var(--muted)}.notification-body p{color:#334155;margin:2px 0;line-height:1.55}.notification-actions{min-width:180px}.notification-toggle{border:1px solid var(--dk-border-3);background:var(--dk-surface-warm);border-radius:14px;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.notification-toggle input{width:18px;height:18px;margin-top:2px}.notification-toggle span{gap:3px;display:grid}.notification-toggle small{color:var(--muted);line-height:1.35}.missing-info-page{max-width:1480px;margin-inline:auto}.missing-info-hero{align-items:stretch}.missing-info-hero>div:first-child{align-content:center;max-width:760px;display:grid}.missing-summary-grid{grid-template-columns:repeat(3,minmax(120px,1fr));gap:12px;min-width:min(100%,420px);display:grid}.missing-summary-grid article{background:#fdfcfa;border:1px solid #e8e6df;border-radius:14px;padding:14px 16px}.missing-summary-grid span{color:var(--muted);font-size:.84rem;font-weight:800;display:block}.missing-summary-grid strong{color:var(--text);margin-top:6px;font-size:1.7rem;line-height:1;display:block}.missing-info-panel{padding:26px}.compact-select{width:min(100%,280px)}.missing-info-list{gap:12px;display:grid}.missing-info-row{background:#fff;border:1px solid #e8e6df;border-radius:14px;grid-template-columns:minmax(0,1fr) minmax(300px,.48fr);align-items:center;gap:18px;padding:14px;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.missing-info-row:hover{border-color:#c9d3da;transform:translateY(-1px);box-shadow:0 14px 32px #28241c1a}.missing-info-main{color:var(--text);text-align:left;background:0 0;border:0;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:14px;padding:0;display:grid}.missing-info-main strong,.missing-info-main small{display:block}.missing-info-main strong{font-size:1rem}.missing-info-main small{color:var(--muted);margin-top:4px}.missing-info-avatar{color:#9a3412;background:#fff1d6;border-radius:16px;place-items:center;width:54px;height:54px;display:grid}.missing-info-avatar svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.9px;width:28px;height:28px}.missing-info-meta{justify-items:start;gap:10px;display:grid}.missing-issues{flex-wrap:wrap;gap:6px;display:flex}.missing-fields{color:var(--muted);font-size:.9rem}.toolbar-panel{gap:10px;display:grid}.toolbar-panel,.family-toolbar,.agenda-filterbar,.pastoral-filterbar{background:linear-gradient(180deg, #fff 0%, var(--dk-surface-warm) 100%);border-color:var(--dk-border-2);box-shadow:var(--dk-shadow-panel);-webkit-backdrop-filter:var(--dk-glass-blur)}.wide{min-width:0}.table-wrap{width:100%;overflow-x:auto}.table-scroll{border:1px solid var(--border);border-radius:var(--radius);width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:13px 12px}th{background:var(--surface-muted);color:var(--dk-muted-5);letter-spacing:.04em;text-transform:uppercase;font-size:.78rem;font-weight:600}tr:last-child td{border-bottom:0}.primary-button,.secondary-button,.danger-button{font-family:var(--dk-font-sans);border:1px solid #0000;border-radius:11px;padding:11px 16px;font-weight:600}.primary-button{background:var(--primary);color:#fff}.primary-button.dark{background:var(--dk-navy)}.primary-button:hover{background:var(--primary-dark)}.secondary-button{border-color:var(--dk-border-3);background:var(--surface);color:var(--dk-body)}.secondary-button:hover{background:#faf9f5;border-color:#c9d3da}.secondary-button.compact,.danger-button.compact{padding:7px 10px;font-size:.86rem}.danger-button{color:var(--danger);background:#fff5f5;border-color:#c92a2a47}.full{width:100%;margin-top:12px}.badge{border-radius:999px;align-items:center;padding:4px 10px;font-size:.78rem;font-weight:750;display:inline-flex}.blue,.badge.blue{color:#2f4a63;background:#e8eef3}.green,.badge.green{color:#3f6b4e;background:#e7efe7}.amber,.badge.amber{color:#8a6a2f;background:#f3ecdb}.orange,.badge.orange{color:#9a5a2f;background:#f4e7da}.red,.badge.red{color:#9a3b2f;background:#f4e2dd}.purple,.badge.purple{color:#5a4a6b;background:#ece8f0}.indigo,.badge.indigo{color:#3f4a6b;background:#e7e8f0}.timeline,.check-list{color:var(--muted);margin:0;padding-left:22px}.timeline li,.check-list li{margin:0 0 10px}label{color:var(--dk-body);gap:7px;font-weight:700;display:grid}input,textarea,select{border:1px solid var(--border);background:var(--dk-surface);width:100%;color:var(--dk-ink);font:inherit;border-radius:12px;padding:13px 14px}input::placeholder,textarea::placeholder{color:var(--muted)}textarea{resize:vertical}select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='16'%20height='16'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%238d8d87'%20stroke-width='2.2'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M6%209l6%206%206-6'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;background-size:16px;padding-right:40px}[dir=rtl] select{background-position:14px;padding-left:40px;padding-right:14px}select::-ms-expand{display:none}.admin-users-panel{gap:18px;display:grid}.user-hero{align-items:stretch}.user-screen-tabs{grid-template-columns:1fr 1fr;gap:10px;min-width:min(430px,100%);display:grid}.user-screen-tabs button{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);padding:13px 18px;font-weight:850}.user-screen-tabs button.active{color:#33506b;background:#e8eef3;border-color:#28241c6b;box-shadow:0 10px 24px #28241c1a}.segmented-control{border:1px solid var(--dk-border-3);background:var(--dk-surface-warm);border-radius:999px;grid-auto-flow:column;gap:4px;padding:4px;display:inline-grid}.segmented-control button{color:var(--muted);background:0 0;border:0;border-radius:999px;padding:8px 14px;font-weight:600}.segmented-control button.active{background:var(--dk-navy);color:#fff;box-shadow:0 6px 14px #28241c29}.user-screen-panel{gap:20px}.user-screen-heading{border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(#fdfcfa 0%,#f4f2ec 100%);justify-content:space-between;align-items:center;gap:16px;padding:16px;display:flex}.user-screen-heading h2{font-family:var(--dk-font-serif);color:var(--dk-ink);margin:2px 0 3px;font-weight:600}.user-screen-heading span{color:var(--muted)}.user-card-grid{grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:14px;display:grid}.user-card{border:1px solid var(--dk-border-3);background:var(--surface);box-shadow:var(--dk-shadow-bar);text-align:left;cursor:pointer;border-radius:14px;align-items:center;gap:14px;padding:14px 16px;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.user-card:hover{box-shadow:var(--dk-shadow-hover);border-color:#c9d3da;transform:translateY(-2px)}.user-card-avatar{background:var(--dk-brand-grad);width:46px;height:46px;color:var(--dk-gold-soft);font-family:var(--dk-font-serif);border-radius:50%;flex:none;place-items:center;font-size:1.1rem;font-weight:600;display:grid}.user-card-body{flex:1;gap:2px;min-width:0;display:grid}.user-card-body strong{color:var(--dk-ink);font-size:1rem}.user-card-meta{color:var(--dk-body);text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;overflow:hidden}.user-card-sub{color:var(--dk-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.user-card-status{flex:none;justify-items:end;gap:5px;display:grid}.dk-modal-backdrop{z-index:60;-webkit-backdrop-filter:blur(3px);background:#28241c6b;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow-y:auto}.dk-modal{border:1px solid var(--dk-glass-border);background:var(--surface);width:min(100%,760px);max-height:calc(100vh - 40px);box-shadow:var(--dk-shadow-raised);border-radius:18px;overflow-y:auto}.dk-modal-head{background:var(--dk-glass-bg-strong);-webkit-backdrop-filter:var(--dk-glass-blur);border-bottom:1px solid var(--dk-border-5);justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 22px 16px;display:flex;position:sticky;top:0}.dk-modal-head h2{font-family:var(--dk-font-serif);color:var(--dk-ink);margin:2px 0 0;font-weight:600}.dk-modal-close{border:1px solid var(--dk-border-3);background:var(--surface);width:34px;height:34px;color:var(--dk-muted);border-radius:10px;flex:none;place-items:center;font-size:.9rem;display:grid}.dk-modal-close:hover{background:var(--dk-surface-warm);border-color:#c9d3da}.dk-modal .admin-user-form{background:0 0;border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px;padding:20px 24px 24px}.dk-modal .admin-user-form>.postcode-editor,.dk-modal .admin-user-form>.dk-modal-actions{grid-column:1/-1}@media (width<=620px){.dk-modal .admin-user-form{grid-template-columns:1fr}}.dk-modal-actions{justify-content:flex-end;gap:10px;margin-top:6px;display:flex}.admin-user-form{border:1px solid var(--border);border-radius:var(--radius);background:#faf9f5;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:20px;display:grid}.checkbox-label{grid-template-columns:auto 1fr;align-content:end}.checkbox-label input{width:auto}.postcode-editor{grid-column:1/-1;gap:10px;display:grid}.postcode-editor .checkbox-label{border:1px solid var(--border);background:#fff;border-radius:12px;min-height:48px;padding:10px 12px}.postcode-editor:has(.export-field-heading){background:0 0;border:0;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));padding:0}.postcode-editor:has(.export-field-heading) .export-field-heading{grid-column:1/-1}.export-builder{gap:16px;max-width:1120px;margin:0 auto;display:grid}.export-builder-main{gap:16px;display:grid}.export-card,.export-preview-card{border:1px solid var(--border);background:#fff;border-radius:12px;align-content:start;gap:14px;padding:16px;display:grid}.export-flow-card{gap:0;padding:0;overflow:hidden}.export-preview-card{position:sticky;top:16px}.export-step{grid-template-columns:36px minmax(0,1fr);gap:14px;padding:18px;display:grid}.export-step+.export-step{border-top:1px solid var(--border)}.export-step-number{width:32px;height:32px;color:var(--brand-strong);background:#f4f2ec;border:1px solid #e8e6df;border-radius:50%;justify-content:center;align-items:center;font-size:.86rem;font-weight:900;display:inline-flex}.export-step-body{gap:14px;min-width:0;display:grid}.export-card-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.export-card-heading>div{gap:4px;display:grid}.export-card-heading strong{color:var(--text);font-size:1rem}.export-card-heading span{color:var(--muted);font-size:.88rem;line-height:1.35}.export-heading-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.export-control-row{grid-template-columns:minmax(260px,1fr) auto;align-items:end;gap:12px;display:grid}.quick-filter-button{border:1px solid var(--border);min-width:180px;min-height:54px;color:var(--text);text-align:left;background:#fff;border-radius:10px;gap:2px;padding:10px 12px;display:grid}.quick-filter-button:hover,.quick-filter-button.active{background:#eff6ff;border-color:#28241c94}.quick-filter-button span{color:var(--muted);font-size:.8rem;font-weight:750}.export-segmented{border:1px solid var(--border);background:#edf3f9;border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;display:grid}.export-segmented button{color:#536174;background:0 0;border:0;border-radius:8px;min-height:42px;font-weight:900}.export-segmented button.active,.export-segmented button:hover{color:var(--brand-strong);background:#fff;box-shadow:0 8px 18px #1f29330f}.export-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.export-details{border:1px solid var(--border);background:#fdfcfa;border-radius:10px;gap:12px;padding:0;display:grid}.export-details summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:10px 14px;font-weight:850;display:flex}.export-details summary small{color:var(--muted);font-size:.82rem;font-weight:700}.export-details[open]{padding-bottom:14px}.export-details[open]>.export-filter-grid,.export-details[open]>.export-field-actions,.export-details[open]>.export-field-groups{padding:0 14px}.selected-field-summary{border:1px solid var(--border);background:#faf9f5;border-radius:10px;flex-wrap:wrap;align-items:center;gap:6px;min-height:44px;padding:8px 10px;display:flex}.selected-field-summary span{color:#526174;font-size:.84rem;font-weight:800}.selected-field-summary span+span:before{content:"·";color:#9aa8ba;margin-right:6px}.export-field-groups{gap:14px;display:grid}.export-field-actions{flex-wrap:wrap;gap:8px;display:flex}.export-field-group{gap:8px;display:grid}.export-field-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px;display:grid}.export-field-grid .checkbox-label{border:1px solid var(--border);background:#fff;border-radius:10px;min-height:44px;padding:9px 10px}.export-preview-table{border-radius:10px;max-height:360px;overflow:auto}.export-preview-table table{min-width:620px}.export-preview-details{background:#fff}.export-builder>.primary-button.full{min-height:52px}.send-request-box{border-radius:var(--radius);background:linear-gradient(#f4f2ec 0%,#fff 100%);border:1px solid #e8e6df;grid-column:1/-1;gap:12px;padding:16px;display:grid}.import-panel .info-box,.danger-box{grid-column:1/-1}.import-panel input[type=file]{border:1.5px dashed var(--dk-border-3);background:var(--dk-surface-warm);cursor:pointer;border-radius:14px;min-height:auto;padding:22px 16px}.import-panel input[type=file]:hover{border-color:#c9d3da}.import-panel input[type=file]::file-selector-button{background:var(--dk-navy);color:#fff;cursor:pointer;border:0;border-radius:9px;margin-right:14px;padding:9px 14px;font-weight:600}.info-box,.danger-box{border:1px solid var(--dk-border-3);background:var(--dk-surface-warm);color:var(--text);border-radius:14px;gap:8px;padding:16px;display:grid}.info-box span,.danger-box span{color:var(--muted);line-height:1.5}.danger-box{background:#fff1f2;border-color:#fecaca}.danger-box strong{color:#991b1b}.import-actions{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.import-replace-toggle{border:1px solid var(--border);background:#fff;border-radius:12px;min-height:52px;padding:12px}.compact-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px}.preview-table-wrap{border:1px solid var(--border);border-radius:var(--radius);width:100%;overflow-x:auto}.simple-table th{background:#faf9f5}.simple-table td,.simple-table th{white-space:nowrap}.send-request-box>span{color:var(--muted)}.field-note{color:var(--muted);margin-top:7px;font-size:.86rem;line-height:1.35;display:block}.field-note.warning{color:#b45309}.postcode-heading{border:1px solid var(--border);border-radius:var(--radius);background:#eaf4fb;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.export-field-heading{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.export-field-heading span{color:var(--muted);font-size:.88rem}.postcode-row{grid-template-columns:1fr 1fr auto;gap:10px;display:grid}.member-row{overflow-wrap:anywhere;margin-top:14px}.family-row{gap:7px;padding:18px;display:grid}.family-row small{color:var(--primary-dark);font-weight:750}.visit-due{background:#fff1d6;border-radius:999px;width:fit-content;padding:4px 9px;font-size:.78rem;font-weight:850;display:inline-flex;color:#9a4b00!important}.family-row-location{color:var(--muted);font-size:.9rem}.family-row-note{color:#475467;font-size:.88rem}.household-person-list{border-top:1px solid #b9d4ecb8;flex-wrap:wrap;gap:8px;margin-top:8px;padding-top:10px;display:flex}.household-person-chip{border:1px solid var(--dk-border-3);background:var(--surface);min-width:160px;max-width:240px;color:var(--dk-ink);text-align:left;box-shadow:var(--dk-shadow-bar);border-radius:12px;grid-template-columns:1fr;gap:2px;padding:10px 12px;display:grid}.household-person-chip:hover{background:var(--dk-surface-warm);border-color:#c9d3da}.household-person-chip span{color:var(--dk-gold-deep);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:700}.household-person-chip strong{font-size:.9rem}.household-person-chip small{color:var(--muted);font-size:.78rem;font-weight:700}.household-person-chip.child{background:#f4f7f2}.household-person-chip.spouse{background:#faf6ee}.member-row.selected{border-color:var(--dk-border-3);background:var(--dk-surface-warm);box-shadow:inset 3px 0 0 var(--dk-gold)}.family-row small{color:var(--dk-muted)}.family-toolbar{grid-template-columns:minmax(190px,.62fr) minmax(220px,.7fr) minmax(340px,1.28fr) minmax(190px,.58fr);align-items:end;gap:20px;padding:22px;display:grid}.family-toolbar .panel-heading{display:none}.family-toolbar>div,.family-toolbar label{gap:9px;display:grid}.family-toolbar strong{font-size:1.22rem}.context-counts{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.context-counts span{color:var(--primary-dark);background:#fdfcfa;border:1px solid #d8e9f7;border-radius:999px;align-items:baseline;gap:5px;padding:6px 10px;display:inline-flex}.context-counts strong{font-size:.98rem;line-height:1}.context-counts small{color:var(--muted);font-size:.78rem;font-weight:800}.family-search{min-width:0}.eyebrow{color:var(--primary);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:850}.selected-person{border-radius:var(--radius);background:var(--dk-surface-warm);gap:3px;margin-bottom:16px;padding:14px;display:grid}.dossier-hero{background:var(--dk-surface-warm);border-color:#eee9df;margin-bottom:0}.dossier-hero strong{font-family:var(--dk-font-serif);color:var(--dk-ink);font-size:1.3rem;font-weight:600}.dossier-hero .eyebrow{color:var(--dk-gold-deep)}.selected-person span{color:var(--muted);font-size:.9rem}.selected-person small{color:var(--muted)}.visit-summary{background:#ffffffbf;border-radius:999px;margin-top:6px;padding:6px 10px;font-weight:850;color:var(--primary-dark)!important}.dossier-panel{position:sticky;top:16px}.dossier-layout{gap:22px;display:grid}.dossier-tabs{border:1px solid var(--dk-border-3);background:var(--dk-surface-warm);border-radius:16px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:6px;padding:5px;display:grid}.dossier-tabs button{min-height:42px;color:var(--muted);background:0 0;border:0;border-radius:12px;font-weight:600}.dossier-tabs button.active{color:var(--dk-ink);box-shadow:var(--dk-shadow-bar);background:#fff}.dossier-overview{flex-direction:column;gap:20px;display:flex}.dossier-overview-head{flex-direction:column;gap:4px;display:flex}.dossier-overview-head h3{font-family:var(--dk-font-serif);color:var(--dk-ink);margin:2px 0 0;font-size:1.5rem;font-weight:600}.dossier-overview-head>p{color:var(--dk-muted);margin:0;font-size:.92rem}.dossier-chip-row{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.dossier-fact-grid{border:1px solid var(--dk-border-3);background:var(--dk-border-3);border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;display:grid;overflow:hidden}.dossier-fact{background:var(--surface);flex-direction:column;gap:4px;padding:14px 16px;display:flex}.dossier-fact-wide{grid-column:1/-1}.dossier-fact dt{letter-spacing:.06em;text-transform:uppercase;color:var(--dk-muted-3);font-size:.7rem;font-weight:600}.dossier-fact dd{color:var(--dk-body);margin:0;font-size:.96rem;font-weight:500}.dossier-quick-actions{flex-wrap:wrap;gap:10px;display:flex}.dossier-quick-actions .primary-button,.dossier-quick-actions .secondary-button{flex:auto}.dossier-agenda{flex-direction:column;display:flex}.dossier-agenda .universal-agenda-panel{flex-direction:column;gap:18px;display:flex}.dossier-calendar{border:1px solid var(--dk-border-3);background:var(--surface);border-radius:14px;max-width:440px;padding:14px}.dossier-calendar-head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.dossier-calendar-head strong{font-family:var(--dk-font-serif);color:var(--dk-ink);text-transform:capitalize;font-size:1.05rem;font-weight:600}.cal-nav{border:1px solid var(--dk-border-3);background:var(--surface);width:34px;height:34px;color:var(--dk-body);border-radius:10px;place-items:center;font-size:1.1rem;line-height:1;display:grid}.cal-nav:hover{background:var(--dk-surface-warm);border-color:#c9d3da}.dossier-calendar-weekdays{grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:4px;display:grid}.dossier-calendar-weekdays span{text-align:center;letter-spacing:.04em;text-transform:uppercase;color:var(--dk-muted-3);font-size:.68rem;font-weight:600}.dossier-calendar-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.cal-day{min-height:36px;color:var(--dk-body);background:0 0;border:1px solid #0000;border-radius:9px;place-items:center;font-size:.86rem;font-weight:500;transition:background .12s,border-color .12s;display:grid}.cal-day:hover{background:var(--dk-surface-warm);border-color:var(--dk-border-3)}.cal-day.outside{color:#c8c4ba}.cal-day.today{border-color:var(--dk-border-3);font-weight:700}.cal-day.visited{color:#3f6b4e;background:#e7efe7}.cal-day.planned{background:var(--dk-clay);border-color:var(--dk-clay);color:#fff;font-weight:700}.dossier-calendar-legend{border-top:1px solid var(--dk-border-5);color:var(--dk-muted);flex-wrap:wrap;gap:16px;margin-top:14px;padding-top:12px;font-size:.8rem;display:flex}.dossier-calendar-legend span{align-items:center;gap:7px;display:inline-flex}.cal-legend-dot{border-radius:4px;width:11px;height:11px}.cal-legend-dot.planned{background:var(--dk-clay)}.cal-legend-dot.visited{background:#cfe0cf}.cal-legend-dot.today{border:1px solid var(--dk-muted-3)}.agenda-mini-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.agenda-mini-fields .agenda-note-field{grid-column:1/-1}.dossier-main{grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);align-items:start;gap:22px;display:grid}.dossier-people{align-content:start;gap:12px;display:grid}.family-tree{justify-items:center;gap:16px;width:100%;padding:4px 0;display:grid;overflow-x:auto}.family-tree-row{flex-wrap:wrap;justify-content:center;gap:14px;width:100%;display:flex}.family-tree-row.parents{max-width:760px}.family-tree-row.children{align-items:stretch}.family-tree-connector{width:min(72%,520px);height:34px;position:relative}.family-tree-connector:before{content:"";background:var(--dk-border);width:2px;height:100%;position:absolute;inset:0 auto auto 50%}.family-tree-connector:after{content:"";background:var(--dk-border);height:2px;position:absolute;bottom:0;left:0;right:0}.tree-person{border:1px solid var(--dk-border-3);background:var(--surface);text-align:left;min-width:min(100%,260px);max-width:360px;box-shadow:var(--dk-shadow-bar);border-radius:14px;flex:250px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:16px;display:grid}.tree-person.child{max-width:320px}.tree-person:hover,.tree-person.selected{background:var(--dk-surface-warm);box-shadow:inset 3px 0 0 var(--dk-gold);border-color:#c9d3da}.tree-person strong,.tree-person small{display:block}.dossier-person{border:1px solid var(--border);border-radius:var(--radius);text-align:left;background:#fff;grid-template-columns:auto 1fr;align-items:center;gap:12px;width:100%;padding:16px;display:grid}.dossier-person:hover,.dossier-person.selected{background:var(--dk-surface-warm);border-color:#c9d3da}.dossier-person strong{color:var(--text)}.dossier-person small{color:var(--muted)}.person-avatar{background:var(--dk-icon-tile);width:42px;height:42px;color:var(--dk-icon-stroke);border-radius:999px;place-items:center;font-weight:900;display:inline-grid}.person-role{color:var(--dk-gold-deep);text-transform:uppercase;letter-spacing:.06em;font-size:.74rem;font-weight:700;display:block}.extended-family-tab{gap:16px;display:grid}.full-family-section{border:1px solid var(--border);border-radius:var(--radius);background:#fdfcfa;gap:14px;padding:18px;display:grid}.family-forest-section{background:#fff}.family-forest{gap:14px;display:grid}.family-tree-card{border-radius:var(--radius);background:#fdfcfa;border:1px solid #e8e6df;gap:14px;padding:14px;display:grid}.primary-family-card{background:#fdfcfa;border-color:#e8e6df}.family-card-heading{border-bottom:1px solid #e8e6df;justify-content:space-between;align-items:start;gap:12px;padding-bottom:12px;display:flex}.family-card-heading strong,.family-card-heading small{display:block}.family-card-heading small{color:var(--muted)}.compact-family-tree{gap:10px;padding:0}.compact-tree-person{min-width:min(100%,220px);max-width:300px;padding:12px}.compact-tree-person .person-avatar{width:36px;height:36px}.compact-connector{height:24px}.full-tree-section{background:#fff}.full-tree-toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.tree-legend-row{color:var(--muted);flex-wrap:wrap;gap:8px 14px;margin-top:8px;font-size:.82rem;font-weight:750;display:flex}.tree-legend-row span{align-items:center;gap:6px;display:inline-flex}.legend-dot{border:2px solid #fff;border-radius:999px;width:10px;height:10px;box-shadow:0 0 0 1px #1f293326}.legend-dot.current{background:#3f6b4e}.legend-dot.couple{background:var(--dk-navy)}.legend-dot.linked{background:var(--dk-gold)}.tree-control-button{border:1px solid var(--dk-border-3);background:var(--surface);min-width:44px;color:var(--dk-body);border-radius:10px;padding:9px 12px;font-weight:600}.tree-control-button:hover{background:var(--dk-surface-warm);border-color:#c9d3da}.full-tree-viewport{border:1px solid var(--dk-border-3);cursor:grab;touch-action:none;background:linear-gradient(#fdfcfaf0,#fdfcfaf0),repeating-linear-gradient(0deg,#0000,#0000 47px,#28241c0a 48px),repeating-linear-gradient(90deg,#0000,#0000 47px,#28241c0a 48px);border-radius:14px;height:clamp(620px,76vh,860px);min-height:620px;position:relative;overflow:hidden}.full-tree-viewport.dragging{cursor:grabbing}.full-tree-canvas{transform-origin:0 0;-webkit-user-select:none;user-select:none;position:absolute;inset:0 auto auto 0}.full-tree-lines{pointer-events:none;position:absolute;inset:0;overflow:visible}.full-tree-line{fill:none;stroke-linecap:round;stroke-linejoin:round}.family-line{stroke:#d6d1c5;stroke-width:2.5px}.family-link-line{stroke:var(--dk-gold);stroke-width:3px;stroke-dasharray:none}.family-link-line.own-family{stroke:#9fb1c2}.family-link-line.in-law-family{stroke:var(--dk-gold)}.family-link-label-bg{fill:#fff;stroke:var(--dk-border-3)}.family-link-label-bg.in-law-family{fill:#faf6ee;stroke:#e3d6b8}.family-link-label-text{text-anchor:middle;fill:var(--dk-body);font-size:12px;font-weight:700}.marriage-line{stroke:#6f9a7d;stroke-width:4px;stroke-dasharray:9 7}.marriage-line.ended{stroke:var(--dk-gold-deep)}.marriage-label-bg{fill:#e7efe7;stroke:#cfe0cf}.marriage-label-text{text-anchor:middle;fill:#3f6b4e;font-size:13px;font-weight:700}.full-tree-family-label{border:1px solid var(--dk-border-3);min-height:58px;color:var(--text);box-shadow:var(--dk-shadow-bar);background:#fffffff5;border-radius:999px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 12px;padding:8px 12px 8px 16px;display:grid;position:absolute}.full-tree-family-label .eyebrow{color:var(--dk-gold-deep)}.full-tree-family-label.couple{border-color:#d8cfb4}.full-tree-family-label .eyebrow,.full-tree-family-label strong,.full-tree-family-label small{overflow-wrap:anywhere;grid-column:1;min-width:0}.full-tree-family-label strong{font-size:.98rem}.full-tree-family-label small{color:var(--muted)}.full-tree-family-label .badge{grid-area:1/2/span 3;justify-self:end}.full-tree-node{border:1px solid var(--dk-border-3);color:var(--text);text-align:left;min-height:78px;box-shadow:var(--dk-shadow-bar);background:#fff;border-radius:12px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:11px 64px 11px 12px;display:grid;position:absolute}.full-tree-node:hover,.full-tree-node.selected{background:var(--dk-surface-warm);box-shadow:inset 3px 0 0 var(--dk-gold), var(--dk-shadow-bar);border-color:#c9d3da}.full-tree-node.married{border-color:#b6cdbb}.full-tree-node.ended{border-color:#e0cfa0}.full-tree-node .person-avatar{width:38px;height:38px}.full-tree-node-main{min-width:0}.full-tree-node strong,.full-tree-node small{overflow-wrap:anywhere;min-width:0;display:block}.tree-marriage-badge{color:#3f6b4e;background:#e7efe7;border-radius:999px;padding:4px 7px;font-size:.68rem;font-weight:700;position:absolute;top:8px;right:8px}.tree-marriage-badge.muted{background:var(--dk-pill-bg);color:var(--dk-pill-text)}.extended-person-grid,.relationship-results,.linked-family-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;display:grid}.compact-person{padding:13px}.relationship-search-row,.relationship-end-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;display:grid}.smart-link-panel{border:1px solid var(--border);border-radius:var(--radius);background:#fdfcfa;gap:12px;padding:14px;display:grid}.relationship-timeline-section{border:1px solid var(--border);border-radius:var(--radius);background:#fdfcfa;padding:14px}.smart-link-trigger{border-radius:var(--radius);text-align:left;background:#fff;border:1px solid #e8e6df;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:14px 16px;display:flex}.smart-link-trigger strong,.smart-link-trigger small{display:block}.smart-link-trigger small{color:var(--muted)}.smart-link-symbol{color:var(--primary-dark);font-weight:850}.smart-link-body{gap:12px;display:grid}.relationship-search-box{margin:0}.smart-results{border-radius:var(--radius);background:#fff;border:1px solid #e8e6df;max-height:340px;padding:10px;overflow:auto}.search-status,.selected-partner-panel{border-radius:var(--radius);background:#fff;border:1px solid #e8e6df;padding:12px}.search-status{color:var(--muted);font-weight:700}.selected-partner-panel{gap:12px;display:grid}.selected-partner-panel strong,.selected-partner-panel small{display:block}.selected-partner-panel small{color:var(--muted)}.relationship-outcome-card{border-radius:var(--radius);background:#f8f6ff;border:1px solid #ddd2f7;gap:5px;padding:12px;display:grid}.relationship-outcome-card .badge{width:fit-content}.relationship-list{gap:12px;display:grid}.relationship-timeline-section[open] .relationship-list{margin-top:12px}.relationship-timeline-section[open] .timeline-summary{border-bottom:1px solid #e8e6df;padding-bottom:12px}.relationship-card,.linked-family-card{border-radius:var(--radius);background:#fff;border:1px solid #e8e6df;gap:12px;padding:14px;display:grid}.relationship-card strong,.relationship-card small,.linked-family-card strong,.linked-family-card small{display:block}.relationship-card small,.linked-family-card small{color:var(--muted)}.compact-relationship-card summary{cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px 12px;list-style:none;display:grid}.compact-relationship-card summary::-webkit-details-marker{display:none}.compact-relationship-card summary small{grid-column:2}.compact-relationship-card[open]{background:#fff}.muted-card{background:#faf9f5}.linked-family-people{gap:8px;display:grid}.mini-person-row{text-align:left;background:#fff;border:1px solid #e8e6df;border-radius:10px;grid-template-columns:minmax(72px,auto) minmax(0,1fr);align-items:center;gap:10px;padding:10px 12px;display:grid}.mini-person-row span{color:var(--primary-dark);text-transform:uppercase;font-size:.78rem;font-weight:800}.mini-person-row strong{min-width:0}.dossier-actions{border:1px solid var(--border);border-radius:var(--radius);background:#faf9f5;padding:20px}.dossier-actions h3{margin-top:0}.agenda-dossier-actions{background:0 0;padding:0}.dossier-notes,.dossier-administration{gap:16px;display:grid}.note-compose-card,.two-factor-panel{border:1px solid var(--dk-border-2);background:var(--dk-surface-warm);box-shadow:var(--dk-shadow-bar);border-radius:14px;padding:18px}.note-compose-card{gap:16px;display:grid}.note-compose-card textarea{min-height:110px}.note-compose-head{gap:3px;display:grid}.note-compose-head h3{font-family:var(--dk-font-serif);color:var(--dk-ink);margin:0;font-weight:600}.note-field{gap:8px;display:grid}.note-field-label{letter-spacing:.05em;text-transform:uppercase;color:var(--dk-navy);font-size:.72rem;font-weight:700}.note-visibility-hint{color:var(--dk-body);align-items:center;gap:8px;margin:0;font-size:.86rem;font-weight:500;display:inline-flex}.note-visibility-hint .hint-dot{border-radius:50%;flex:none;width:9px;height:9px}.note-visibility-hint.shared{color:var(--dk-navy)}.note-visibility-hint.shared .hint-dot{background:var(--dk-navy)}.note-visibility-hint.private{color:var(--dk-muted)}.note-visibility-hint.private .hint-dot{background:var(--dk-muted-3)}.notification-toggle.disabled{opacity:.5}.two-factor-grid,.two-factor-setup{gap:14px;display:grid}.two-factor-setup{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.two-factor-setup label:nth-child(2){grid-column:1/-1}.compact-segment{width:auto;min-width:230px}.note-browser{grid-template-columns:minmax(240px,.82fr) minmax(0,1.18fr);align-items:start;gap:18px;display:grid}.note-list-panel,.note-detail-card,.admin-card{border:1px solid var(--dk-border-2);background:var(--surface);box-shadow:var(--dk-shadow-bar);border-radius:14px;padding:18px}.note-list-panel{gap:10px;display:grid}.note-list-item{border:1px solid var(--dk-border-3);border-left:3px solid var(--dk-gold);background:var(--dk-surface-warm);text-align:left;border-radius:12px;gap:4px;width:100%;padding:12px 14px;display:grid}.note-list-item:hover,.note-list-item.selected{border-color:#c9d3da;border-left-color:var(--dk-gold-deep);background:var(--surface);box-shadow:var(--dk-shadow-bar)}.note-list-item strong,.note-list-item small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.note-list-item small{color:var(--muted)}.subject-chip{background:color-mix(in srgb, var(--dk-accent) 12%, transparent);color:var(--dk-accent);border:1px solid color-mix(in srgb, var(--dk-accent) 30%, transparent);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;justify-self:start;align-items:center;gap:4px;max-width:100%;padding:2px 9px;font-size:.72rem;font-weight:600;line-height:1.4;display:inline-flex;overflow:hidden}.subject-inline{color:var(--dk-accent);font-weight:700}.subject-facets{flex-wrap:wrap;gap:6px;margin-bottom:4px;display:flex}.subject-facet{border:1px solid var(--dk-border-3);background:var(--dk-surface-warm);color:var(--muted);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:5px 11px;font-size:.78rem;font-weight:600;transition:all .15s;display:inline-flex}.subject-facet:hover{border-color:var(--dk-gold-deep);color:var(--dk-ink)}.subject-facet.active{border-color:var(--dk-accent);background:color-mix(in srgb, var(--dk-accent) 12%, transparent);color:var(--dk-accent)}.subject-facet .facet-count{background:color-mix(in srgb, currentColor 16%, transparent);border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.68rem;display:inline-flex}.agenda-subject-field,.note-subject-select{width:100%}.note-detail-card{min-height:220px}.note-detail-card h3{font-family:var(--dk-font-serif);color:var(--dk-ink);margin:8px 0 12px;font-weight:600}.note-detail-card p{color:var(--muted);white-space:pre-wrap;margin:0;line-height:1.65}.empty-note-detail{color:var(--muted);text-align:center;place-content:center;gap:6px;display:grid}.admin-form-grid,.transfer-approval-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;display:grid}.transfer-request-card{background:#fdfcfa;border:1px solid #e8e6df;border-radius:14px;gap:12px;padding:14px;display:grid}.transfer-request-card strong,.transfer-request-card span,.transfer-request-card small{display:block}.transfer-request-card span,.transfer-request-card small{color:var(--muted)}.danger-zone{background:snow;border-color:#c92a2a40}.visit-card,.route-card{border-radius:var(--radius);background:linear-gradient(#faf9f5 0%,#fff 100%);border:1px solid #e8e6df;gap:12px;padding:16px;display:grid}.visit-card h3,.visit-card p{margin:0}.visit-card p,.route-card>div:first-child span{color:var(--muted);font-size:.9rem}.compact-visit-card{margin-top:14px}.universal-agenda-panel{border:1px solid var(--dk-border-3);background:var(--dk-surface-warm);border-radius:14px;gap:16px;padding:18px;display:grid}.universal-agenda-head{justify-content:space-between;align-items:start;gap:16px;display:flex}.universal-agenda-head h3,.universal-agenda-head p{margin:0}.universal-agenda-head h3{font-family:var(--dk-font-serif);color:var(--dk-ink);font-weight:600}.universal-agenda-head p{color:var(--muted);font-size:.94rem}.agenda-state-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.agenda-state-grid span{border:1px solid var(--dk-border-3);background:var(--dk-surface-warm);border-radius:10px;gap:3px;min-width:0;padding:10px;display:grid}.agenda-state-grid small{color:var(--dk-muted-3);text-transform:uppercase;letter-spacing:.05em;font-size:.66rem;font-weight:600}.agenda-state-grid strong{color:var(--dk-ink);text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;overflow:hidden}.agenda-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.agenda-note-field,.agenda-subject-field{grid-column:1/-1}.agenda-action-row{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;display:grid}.compact-agenda-panel{gap:14px;padding:16px}.compact-agenda-panel .universal-agenda-head{flex-direction:column}.compact-agenda-panel .agenda-action-row{grid-template-columns:1fr}.compact-agenda-panel .agenda-state-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.compact-agenda-panel .agenda-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.agenda-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.agenda-summary article{border:1px solid var(--dk-border-3);background:var(--surface);box-shadow:var(--dk-shadow-bar);border-radius:14px;padding:14px 16px}.agenda-summary strong{letter-spacing:.05em;text-transform:uppercase;color:var(--dk-muted-3);font-size:.72rem;font-weight:600;display:block}.agenda-summary small{color:var(--muted);display:block}.agenda-summary span{color:var(--dk-ink);margin:6px 0 3px;font-size:1.7rem;font-weight:600;line-height:1;display:block}.agenda-summary article:nth-child(2) span,.agenda-summary article:nth-child(3) span{color:var(--dk-clay)}.agenda-toolbar,.agenda-command,.agenda-hero,.agenda-filterbar,.calendar-shell{grid-template-columns:minmax(0,1fr);align-items:start;gap:18px;padding:22px;display:grid;overflow:hidden}.agenda-toolbar h2,.agenda-toolbar p,.agenda-command h2,.agenda-command p,.agenda-hero h2,.agenda-hero p,.calendar-shell h2{margin:0}.agenda-toolbar h2,.agenda-command h2,.agenda-hero h2{margin-bottom:6px}.agenda-hero{background:linear-gradient(135deg,#f0f9fffa,#fffffffa),#fff;border-color:#c7def1;grid-template-columns:minmax(260px,1fr) auto;align-items:center}.agenda-hero-actions{justify-content:flex-end;gap:10px;min-width:0;display:flex}.agenda-hero-actions .primary-button{min-width:160px}.agenda-filterbar{background:#fff;grid-template-columns:minmax(280px,1fr) minmax(170px,.25fr) minmax(190px,.28fr) auto;align-items:end;gap:12px;display:grid}.agenda-filter-search input{min-height:48px}.agenda-layout{grid-template-columns:minmax(0,1fr) minmax(380px,440px);align-items:start;gap:18px;width:100%;min-width:0;display:grid}.agenda-main{gap:18px;display:grid}.calendar-shell{gap:16px;padding:18px}.calendar-shell-head{border-bottom:1px solid var(--dk-border-5);justify-content:space-between;align-items:end;gap:16px;padding-bottom:14px;display:flex}.calendar-shell-head span{color:var(--muted);margin-top:4px;display:block}.calendar-nav{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.week-calendar{border:1px solid var(--dk-border-3);background:var(--dk-border-3);border-radius:14px;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.calendar-day{min-width:0;min-height:clamp(340px,44vh,560px);color:var(--text);text-align:left;background:#fff;border:0;align-content:start;gap:10px;padding:14px;display:grid;overflow:auto}.calendar-day.today{background:linear-gradient(#faf9f5 0%,#fff 72%)}.calendar-day.selected{box-shadow:inset 0 0 0 2px var(--primary)}.calendar-day header{border-bottom:1px solid var(--dk-border-5);justify-content:space-between;align-items:start;gap:10px;min-height:54px;padding-bottom:10px;display:flex}.calendar-day header strong,.calendar-day header span{display:block}.calendar-day header strong{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.88rem}.calendar-day header span{color:var(--dk-ink);font-family:var(--dk-font-serif);font-size:1.5rem;font-weight:700;line-height:1}.calendar-day header small{min-width:28px;height:28px;color:var(--primary-dark);background:#f4f2ec;border-radius:999px;place-items:center;font-weight:900;display:inline-grid}.calendar-event{border:1px solid var(--dk-border-3);border-left:4px solid var(--primary);background:var(--surface);width:100%;color:var(--text);text-align:left;border-radius:12px;gap:3px;padding:10px;display:grid}.calendar-event:hover,.calendar-event.selected{background:var(--dk-surface-warm);border-color:#c9d3da}.calendar-event.missed{border-left-color:var(--dk-clay);background:#faf3ec}.calendar-event.completed{background:#eef4ee;border-left-color:#5a8a6a}.calendar-event.planned{border-left-color:var(--primary)}.calendar-event strong,.calendar-event span{display:block}.calendar-event span{color:var(--muted);font-size:.84rem}.calendar-route-button{border:1px solid var(--dk-border-3);background:var(--dk-surface-warm);min-height:38px;color:var(--dk-navy);border-radius:10px;font-size:.86rem;font-weight:600}.calendar-route-button:hover{background:#fff;border-color:#c9d3da}.calendar-empty{border:1px dashed var(--dk-border-3);background:var(--dk-surface-warm);min-height:74px;color:var(--dk-muted);text-align:center;border-radius:12px;place-items:center;font-size:.9rem;font-weight:600;display:grid}.agenda-inbox{padding:18px}.agenda-create{gap:16px;padding:18px;display:grid}.agenda-create-grid{grid-template-columns:minmax(260px,1.3fr) minmax(170px,.7fr) minmax(130px,.4fr);gap:12px;display:grid}.agenda-candidates{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;display:grid}.agenda-candidate{border:1px solid var(--dk-border-3);width:100%;color:var(--text);text-align:left;background:#fff;border-radius:12px;gap:4px;padding:12px;display:grid}.agenda-candidate:hover,.agenda-candidate.selected{border-color:var(--primary);background:#faf9f5;box-shadow:0 10px 24px #1f66a71f}.agenda-candidate span{color:var(--muted);font-size:.88rem}.appointment-modal-backdrop{z-index:80;background:#28241c85;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.appointment-modal{background:#fff;border:1px solid #cde1f2;border-radius:18px;grid-template-rows:auto minmax(0,1fr);width:min(1120px,100%);max-height:min(760px,100vh - 48px);display:grid;overflow:hidden;box-shadow:0 30px 80px #28241c47}.appointment-modal-header{border-bottom:1px solid #e8e6df;justify-content:space-between;align-items:start;gap:18px;padding:22px 24px;display:flex}.appointment-modal-header h2,.appointment-modal-header p{margin:0}.appointment-modal-header span{color:var(--muted);margin-top:6px;display:block}.modal-close-button{width:42px;height:42px;color:var(--muted);background:#fff;border:1px solid #d6e5f2;border-radius:12px;place-items:center;font-size:1.45rem;font-weight:700;display:inline-grid}.modal-close-button:hover{border-color:var(--primary);color:var(--primary-dark)}.appointment-modal-body{grid-template-columns:minmax(0,1.35fr) minmax(340px,.75fr);min-height:0;display:grid}.appointment-search-panel,.appointment-detail-panel{min-height:0;padding:22px 24px}.appointment-search-panel{border-right:1px solid #e8e6df;grid-template-rows:auto auto minmax(0,1fr);gap:14px;display:grid}.appointment-search-controls{grid-template-columns:minmax(190px,240px) minmax(0,1fr);align-items:end;gap:12px;display:grid}.appointment-search-field input{min-height:52px;font-size:1rem}.appointment-search-help{flex-wrap:wrap;gap:8px;display:flex}.appointment-search-help span{color:var(--primary-dark);background:#f4f2ec;border-radius:999px;padding:6px 10px;font-size:.8rem;font-weight:800}.appointment-results{align-content:start;gap:10px;min-height:0;padding-right:4px;display:grid;overflow:auto}.appointment-result{width:100%;color:var(--text);text-align:left;background:#fff;border:1px solid #d4e5f3;border-radius:14px;grid-template-columns:minmax(180px,.75fr) minmax(0,1.25fr);gap:14px;padding:14px;display:grid}.appointment-result:hover,.appointment-result.selected{border-color:var(--primary);background:#faf9f5;box-shadow:0 14px 30px #1f66a71f}.appointment-result.selected{box-shadow:inset 4px 0 0 var(--primary), 0 14px 30px #1f66a71f}.result-main,.result-meta{gap:5px;min-width:0;display:grid}.appointment-result strong,.appointment-result small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.appointment-result small{color:var(--muted)}.appointment-result small.result-match-hint{color:var(--dk-accent,#2f6b4f);font-weight:600}.appointment-detail-panel{background:linear-gradient(#fdfcfa 0%,#fff 45%),#fff;grid-template-rows:auto minmax(0,1fr) auto;gap:18px;display:grid}.appointment-selected-family{background:#fff;border:1px solid #cfe2f3;border-radius:14px;gap:6px;padding:16px;display:grid}.appointment-selected-family.muted{background:#fdfcfa;border-style:dashed}.appointment-selected-family strong{font-size:1.25rem}.appointment-selected-family small,.appointment-selected-family span:not(.eyebrow){color:var(--muted)}.appointment-fields{align-content:start;gap:13px;min-height:0;display:grid}.appointment-modal-actions{border-top:1px solid #e8e6df;grid-template-columns:minmax(120px,.55fr) minmax(180px,1fr);gap:10px;padding-top:16px;display:grid}.agenda-inbox-list{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.agenda-card{border:1px solid var(--dk-border-3);background:var(--surface);width:100%;color:var(--text);text-align:left;border-left:3px solid #0000;border-radius:14px;gap:5px;padding:16px 18px;transition:transform .16s,border-color .16s,box-shadow .16s;display:grid}.agenda-card:hover,.agenda-card.selected{box-shadow:var(--dk-shadow-hover);border-color:#c9d3da;transform:translateY(-2px)}.agenda-card.today{background:var(--dk-surface-warm)}.agenda-card.missed{border-left-color:var(--dk-clay)}.agenda-card strong,.agenda-card small,.agenda-card span{display:block}.agenda-card strong{color:var(--dk-ink);font-size:1.02rem}.agenda-card>span{color:var(--dk-body);font-size:.9rem}.agenda-card small{color:var(--muted);font-size:.84rem}.agenda-badge{background:var(--dk-surface-warm);color:var(--dk-muted-5);letter-spacing:.03em;text-transform:uppercase;border-radius:999px;justify-self:start;margin-bottom:3px;padding:4px 10px;font-size:.7rem;font-weight:600}.agenda-card.missed .agenda-badge,.agenda-card.attention .agenda-badge{background:var(--dk-pill-bg);color:var(--dk-pill-text)}.agenda-card-actions{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex!important}.agenda-detail{max-height:calc(100vh - 36px);position:sticky;top:18px;overflow:auto}.agenda-detail-body{gap:16px;display:grid}.agenda-overview-detail{gap:20px;display:grid}.agenda-overview-detail h3{margin:0 0 10px}.agenda-mini-event{width:100%;color:var(--text);text-align:left;background:#fff;border:1px solid #d5e7f6;border-radius:12px;gap:4px;margin-bottom:10px;padding:12px;display:grid}.agenda-mini-event:hover{border-color:var(--primary);background:#f4faff}.agenda-mini-event.completed{background:#f7fff9}.agenda-mini-event span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;overflow:hidden}.agenda-family-strip{border-radius:var(--radius);background:#fdfcfa;border:1px solid #d3e4f3;gap:10px;padding:14px;display:grid}.agenda-family-strip>span{color:var(--muted)}.pastoral-layout{grid-template-columns:1fr;align-items:start;gap:20px;display:grid}.pastoral-layout.has-selection{grid-template-columns:minmax(310px,.34fr) minmax(0,1.66fr)}.pastoral-list-panel,.pastoral-detail-panel{min-width:0}.pastoral-list{gap:16px;display:grid}.pastoral-layout:not(.has-selection) .pastoral-list{grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:18px}.pastoral-layout.has-selection .pastoral-list{grid-template-columns:1fr}.pastoral-layout.has-selection .pastoral-list-panel{max-height:calc(100vh - 250px);overflow:auto}.pastoral-layout:not(.has-selection) .pastoral-list-panel{width:100%}.pastoral-detail-panel{position:sticky;top:96px}.pastoral-card2{border:1px solid var(--dk-border-3);background:var(--surface);box-shadow:var(--dk-shadow-panel);border-radius:16px;align-content:start;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.pastoral-card2:hover{box-shadow:var(--dk-shadow-raised);border-color:#c9d3da;transform:translateY(-2px)}.pastoral-card2.selected{box-shadow:inset 3px 0 0 var(--dk-gold), var(--dk-shadow-panel);border-color:#c9d3da}.pastoral-card2.missed{border-left:3px solid var(--dk-clay)}.pastoral-card2-main{text-align:left;cursor:pointer;background:0 0;border:0;align-items:flex-start;gap:14px;width:100%;padding:18px;display:flex}.pastoral-avatar{background:var(--dk-brand-grad);width:44px;height:44px;color:var(--dk-gold-soft);font-family:var(--dk-font-serif);border-radius:50%;flex:none;place-items:center;font-size:1.05rem;font-weight:600;display:grid}.pastoral-card2-body{gap:3px;min-width:0;display:grid}.pastoral-card2-top{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pastoral-card2-top strong{color:var(--dk-ink);font-size:1.05rem}.pc-meta{color:var(--dk-body);font-size:.9rem}.pc-sub,.pc-visit{color:var(--dk-muted);font-size:.84rem}.pastoral-card2-actions{gap:8px;padding:0 18px 16px;display:flex}.pastoral-card2-actions .secondary-button,.pastoral-card2-actions .primary-button{flex:1}.pastoral-layout.has-selection .pastoral-card2-actions{display:none}.pastoral-layout.has-selection .pastoral-card2-main{gap:10px;padding:12px}.pastoral-layout.has-selection .pastoral-avatar{width:34px;height:34px;font-size:.9rem}.pastoral-layout.has-selection .pc-sub{display:none}.pastoral-tabs{margin:18px 0 16px}.pastoral-tabs button{padding-inline:13px}.pastoral-list-panel .list-pager{border-color:var(--dk-border-3);background:var(--dk-surface-warm);margin-inline:-2px}.pastoral-note-preview{border-top:1px solid var(--dk-border-5);color:var(--dk-muted);margin-top:6px;padding-top:9px;font-size:.86rem;line-height:1.45}.pastoral-detail{gap:18px;display:grid}.pastoral-family-block,.pastoral-timeline{border:1px solid var(--dk-border-3);background:#fff;border-radius:14px;padding:16px}.inner-heading{border:0;margin-bottom:12px;padding:0}.inner-heading h3{margin:0}.pastoral-people-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;display:grid}.pastoral-note-editor{margin:0}.timeline-entry{border:1px solid #e8e6df;border-left:4px solid var(--primary);background:#fdfcfa;border-radius:12px;gap:5px;padding:12px 14px;display:grid}.timeline-entry+.timeline-entry{margin-top:10px}.timeline-entry.completed{background:#f5fff9;border-left-color:#0e9f6e}.timeline-entry.planned{border-left-color:#7c3aed}.timeline-entry.note{background:#fffaf0;border-left-color:#d97706}.timeline-date{color:var(--muted);font-size:.86rem;font-weight:850}.timeline-entry p{color:var(--muted);margin:0;line-height:1.55}.button-row{flex-wrap:wrap;gap:10px;display:flex}.button-row>button{flex:160px}.text-button{color:var(--primary-dark);background:#f4f2ec;border:0;border-radius:999px;padding:7px 10px;font-weight:850}.text-button:hover{background:#dcefff}.mini-empty{min-height:120px;padding:18px}.route-list{gap:8px;max-height:min(48vh,520px);display:grid;overflow:auto}.route-list-item{color:var(--text);background:#fff;border:1px solid #c8def1;border-radius:12px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px 12px;padding:12px;font-weight:750;display:grid}.route-list-item b{background:var(--primary);color:#fff;border-radius:999px;grid-row:span 3;place-items:center;width:30px;height:30px;font-size:.86rem;display:grid}.route-list-item strong,.route-list-item small{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.route-list-item small{color:var(--muted);font-weight:650}.route-time-field{grid-column:2}.route-time-field input{min-height:42px}.route-order-actions,.route-time-tools{flex-wrap:wrap;gap:8px;display:flex}.route-order-actions{grid-column:2}.route-order-actions button{border:1px solid var(--border);color:var(--muted);background:#faf9f5;border-radius:999px;padding:7px 10px;font-size:.78rem;font-weight:850}.route-time-tools{grid-template-columns:minmax(120px,1fr) minmax(120px,1fr) auto;align-items:end;display:grid}.route-actions{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;display:grid}.route-confirm-card{background:#fff;border:1px solid #d8e8f6;border-radius:14px;gap:10px;padding:12px;display:grid}.compact-empty{padding:12px}.map-dossier{gap:14px;display:grid}.compact-details{margin-bottom:14px}.details-list{grid-template-columns:max-content 1fr;gap:10px 14px;margin:0;display:grid}.edit-form{gap:12px;display:grid}.public-form-screen{justify-content:center;align-items:center;min-height:100svh;padding:clamp(16px,3vw,40px)}.public-form-card{align-content:start;width:min(100%,900px);max-width:900px;min-height:0;margin:auto;padding:clamp(22px,3.5vw,40px)}.public-form-card>p{max-width:640px}.public-form-card .edit-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px}@media (width<=640px){.public-form-card .edit-form,.public-form-card .edit-form.nested-form{grid-template-columns:1fr}}.field-hint{color:var(--muted);margin-top:6px;font-size:.8rem;display:block}.public-family-section{border:1px solid var(--border);border-radius:var(--radius);background:#fdfcfa;gap:12px;margin-top:16px;padding:16px;display:grid}.public-form-step,.public-submit-panel{border:1px solid var(--border);border-radius:var(--radius);background:#fdfcfa;gap:14px;padding:14px;display:grid}.public-form-step{margin-top:14px}.public-form-step summary,.timeline-summary{cursor:pointer;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;list-style:none;display:grid}.public-form-step summary::-webkit-details-marker{display:none}.timeline-summary::-webkit-details-marker{display:none}.public-form-step summary strong,.public-form-step summary small,.timeline-summary strong,.timeline-summary small,.public-submit-panel strong,.public-submit-panel span{display:block}.public-form-step summary small,.timeline-summary small,.public-submit-panel span{color:var(--muted)}.public-form-step[open] summary{border-bottom:1px solid #e8e6df;padding-bottom:12px}.public-form-step:not([open])>:not(summary),.relationship-timeline-section:not([open]) .relationship-list{display:none}.public-submit-panel{background:#fff;margin-top:16px}.toggle-row{align-items:center;gap:10px;margin:0;display:flex}.toggle-row input{width:20px;min-height:20px}.nested-form{grid-template-columns:repeat(2,minmax(0,1fr))}.public-child-list{gap:12px;display:grid}.public-child-card{border:1px solid var(--border);background:#fff;border-radius:12px;padding:14px}.public-member-summary,.link-box{border:1px solid var(--border);border-radius:var(--radius);background:#faf9f5;gap:6px;padding:14px;display:grid}.link-box span{display:block}.copy-link-row{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;display:grid}.copy-link-row input{min-width:0}.public-member-summary span{color:var(--muted)}.family-preview{margin:8px 0}.public-family-picker{gap:10px;margin:0;display:grid}.public-family-picker h3{margin:0}.details-list dt{color:var(--muted);font-weight:700}.details-list dd{margin:0}.fine-print{margin:12px 0 0;font-size:.86rem}h3{margin:22px 0 10px;font-size:1rem}.mini-row{border-bottom:1px solid var(--border);gap:2px;padding:11px 0;display:grid}.mini-row:last-child{border-bottom:0}.mini-row span{color:var(--muted);font-size:.9rem}.map-layout{background:#fff;border:1px solid #e8e6df;border-radius:24px;grid-template-columns:minmax(0,1fr) clamp(340px,30vw,400px);align-items:stretch;gap:0;width:min(100%,1840px);margin-inline:auto;display:grid;overflow:hidden;box-shadow:0 18px 48px #1f293312}.map-panel,.map-side{min-width:0}.map-panel{box-shadow:none;background:0 0;border:0;padding:18px}.map-side{min-height:0;box-shadow:none;background:#fff;border:0;border-left:1px solid #e8e6df;border-radius:0;grid-template-rows:auto minmax(0,1fr);padding:0;display:grid;overflow:hidden}.map-side .panel-heading{border-bottom:1px solid #e8e6df;margin:0;padding:24px 32px}.map-side .panel-heading h2{font-size:1.24rem}.map-dossier{align-content:start;gap:0;min-height:0;display:grid;overflow:auto}.map-inspector-hero{background:linear-gradient(#fdfcfa 0%,#fff 100%);border-bottom:1px solid #e8e6df;gap:7px;padding:30px 32px;display:grid}.map-inspector-hero strong{color:var(--text);font-size:clamp(1.55rem,2.1vw,2rem);line-height:1.12}.map-inspector-hero span,.map-inspector-hero small{color:var(--muted);font-size:.98rem;line-height:1.45}.map-inspector-section{border-bottom:1px solid #e8e6df;gap:18px;padding:30px 32px;display:grid}.section-title{color:var(--dk-muted-5);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:14px;font-size:.78rem;font-weight:600;display:flex}.map-side .dossier-people{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.map-side .dossier-person{background:#fdfcfa;border-color:#e8e6df;border-radius:14px;padding:18px}.map-inspector-section h3{margin:0;font-size:1.18rem}.map-detail-list{gap:12px;margin:0;font-size:1rem;display:grid}.map-detail-list>div{grid-template-columns:minmax(150px,.38fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.map-detail-list dt{color:#667085;font-weight:850}.map-detail-list dd{color:var(--text);margin:0;line-height:1.42}.call-strip{color:var(--text);background:#fdfcfa;border:1px solid #dbe8f5;border-radius:14px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 16px;text-decoration:none;display:grid}.call-strip span{overflow-wrap:anywhere;min-width:0;font-weight:800}.call-strip strong{color:var(--primary)}.map-side .primary-button.full,.map-side .secondary-button.full{min-height:54px;font-size:1rem}.map-side .visit-card{background:0 0;border:0;border-radius:18px;padding:0}.map-inspector-actions{z-index:4;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff5;border-top:1px solid #e8e6df;grid-template-columns:1fr 1fr;gap:12px;padding:18px 28px 24px;display:grid;position:sticky;bottom:0}.map-topbar{background:#ffffffe0;border:1px solid #e8e6df;border-radius:18px;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px;padding:16px 18px;display:flex;box-shadow:0 14px 34px #1f29330b}.map-topbar h2,.map-topbar p{margin:0}.map-topbar p{color:var(--muted);font-size:.92rem}.route-status{color:#9a4b00;background:#fff8e6;border:1px solid #f3d38b;border-radius:999px;flex:none;padding:8px 12px;font-size:.84rem;font-weight:850}.route-status.ready{color:#17663a;background:#e9fbef;border-color:#a7e3bd}.map-filter{color:#344054;min-width:220px}.map-filter select{min-height:46px;color:var(--text);background:#fffffff5;border-color:#ffffff73}.map-board{aspect-ratio:16/9;border:1px solid var(--border);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:#e6e3da;border-radius:18px;width:100%;min-height:0;max-height:min(72vh,820px);position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffffa6,0 18px 44px #1f293314}.leaflet-board{cursor:auto;touch-action:auto;box-shadow:var(--dk-shadow-panel);background:#dfe7df}.leaflet-canvas{z-index:0;position:absolute;inset:0}.leaflet-board .leaflet-container{width:100%;height:100%;font-family:var(--dk-font-sans);background:#dfe7df}.leaflet-board .leaflet-tile{filter:saturate(1.18)contrast(1.06)}.dk-pin-wrap{filter:drop-shadow(0 2px 3px #28241c59);background:0 0;border:0}.dk-route-pin{background:var(--pin,#3f6b4e);color:#fff;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:.85rem;font-weight:700;display:flex!important}.dk-cluster{background:var(--dk-brand-grad);color:var(--dk-gold-soft);border:2px solid #ffffffd9;border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;font-weight:700;box-shadow:0 4px 12px #28241c59;display:flex!important}.dk-cluster span{text-align:center;line-height:1}.dk-cluster-md{font-size:1rem}.dk-cluster-lg{font-size:1.05rem}.leaflet-board .leaflet-control-zoom{border:1px solid var(--dk-border-3);box-shadow:var(--dk-shadow-panel);border-radius:12px;overflow:hidden}.leaflet-board .leaflet-control-zoom a{width:40px;height:40px;color:var(--dk-ink);background:var(--dk-glass-bg-strong);-webkit-backdrop-filter:var(--dk-glass-blur);font-size:1.3rem;line-height:40px}.leaflet-board .leaflet-control-zoom a:hover{background:#fff}.map-fit-control{z-index:1000;border:1px solid var(--dk-border-3);background:var(--dk-glass-bg-strong);height:40px;-webkit-backdrop-filter:var(--dk-glass-blur);color:var(--dk-navy);box-shadow:var(--dk-shadow-panel);border-radius:11px;padding:0 16px;font-weight:600;position:absolute;top:12px;right:12px}.map-fit-control:hover{background:#fff}.map-layout.route-mode .map-board{cursor:crosshair}.google-map-board{cursor:default;touch-action:auto}.google-map-board.route-mode{cursor:crosshair}.google-map-canvas{z-index:1;position:absolute;inset:0}.map-board.dragging{cursor:grabbing}.map-skeleton{cursor:default;background:linear-gradient(90deg,#ffffff59 25%,#ffffffb8 37%,#ffffff59 63%) 0 0/420px 100%,#e6e3da 0 0/100% 100%;animation:1.35s ease-in-out infinite skeleton-shimmer}.skeleton-pin{background:#28241c57;border-radius:999px 999px 999px 3px;width:30px;height:30px;position:absolute;transform:translate(-50%,-100%)rotate(-45deg);box-shadow:0 0 0 10px #28241c14}.skeleton-line,.skeleton-row{background:linear-gradient(90deg,#ece9e1 25%,#fdfcfa 37%,#ece9e1 63%) 0 0/420px 100%;border-radius:999px;animation:1.35s ease-in-out infinite skeleton-shimmer;display:block;overflow:hidden}.skeleton-line{width:min(360px,70vw);height:30px}.skeleton-row{border-radius:var(--radius);height:58px}.skeleton-list{gap:10px;max-height:none;display:grid}.skeleton-list .skeleton-row{border:1px solid var(--dk-border-3);background:var(--surface);gap:8px;height:auto;padding:14px 16px;animation:none;display:grid}.skeleton-list .skeleton-row .skeleton-line{height:12px}.skeleton-line.w-40{width:38%}.skeleton-line.w-60{width:58%}.skeleton-line.w-80{width:82%}.skeleton-line.skel-lg{height:22px}.dossier-skeleton{gap:14px;display:grid}@keyframes skeleton-shimmer{0%{background-position:-420px 0}to{background-position:420px 0}}.map-tile-stack,.map-tile-layer{position:absolute;inset:0}.map-tile-stack{z-index:1;background:#e6e3da}.map-tile-layer{overflow:hidden}.map-tile-layer.provider-nl{z-index:1;background:#e6e3da}.map-tile-layer.provider-be{z-index:2;background:0 0}.map-tile{z-index:1;-webkit-user-select:none;user-select:none;pointer-events:none;position:absolute}.map-attribution{z-index:3;color:var(--muted);background:#ffffffe6;border-radius:999px;padding:5px 9px;font-size:.72rem;font-weight:700;position:absolute;bottom:10px;right:10px;box-shadow:0 8px 18px #1f293314}.map-controls{z-index:5;gap:8px;display:grid;position:absolute;top:14px;left:14px}.map-control{width:42px;height:42px;color:var(--primary);background:#fffffff0;border:1px solid #28241c47;border-radius:10px;place-items:center;font-size:1.25rem;font-weight:900;display:grid;box-shadow:0 10px 24px #1f29331f}.map-control.wide{width:auto;padding:0 12px;font-size:.82rem}.map-control:hover{border-color:var(--primary);background:#fff}.map-axis{z-index:1;color:var(--muted);background:#ffffffd1;border-radius:999px;padding:4px 8px;font-size:.78rem;font-weight:750;position:absolute}.map-axis.north{top:10px;left:50%;transform:translate(-50%)}.map-axis.south{bottom:10px;left:50%;transform:translate(-50%)}.map-axis.west{top:50%;left:10px;transform:translateY(-50%)}.map-axis.east{top:50%;right:10px;transform:translateY(-50%)}.map-pin{z-index:4;background:var(--primary);border:2px solid #fff;border-radius:999px 999px 999px 3px;width:32px;height:32px;transition:box-shadow .18s,transform .18s,background .18s;position:absolute;transform:translate(-50%,-100%)rotate(-45deg);box-shadow:0 13px 24px #005ea852,0 0 0 9px #28241c1f}.map-pin.selectable{box-shadow:0 14px 28px #005ea857,0 0 0 12px #ffb81c38}.map-pin span{background:#fff;border-radius:50%;width:9px;height:9px;margin:8px auto 0;display:block}.map-pin:hover{transform:translate(-50%,-100%)rotate(-45deg)scale(1.1);box-shadow:0 16px 30px #005ea86b,0 0 0 12px #28241c29}.map-pin.selected{background:#c92a2a;transform:translate(-50%,-100%)rotate(-45deg)scale(1.22)}.map-pin.routed{background:#0f7a43;box-shadow:0 14px 28px #0f7a435c,0 0 0 13px #0f7a4333}.map-member-list{gap:8px;max-height:clamp(340px,50vh,610px);display:grid;overflow:auto}.map-list-shell{grid-template-rows:auto auto auto minmax(0,1fr);gap:12px;min-height:0;padding:18px 22px 22px;display:grid}.map-list-search{color:#39465a;gap:8px;font-size:.88rem;font-weight:850;display:grid}.map-list-search input{width:100%;min-height:48px;color:var(--text);font:inherit;background:#fdfcfa;border:1px solid #e8e6df;border-radius:14px;outline:none;padding:0 14px;font-weight:700;transition:border-color .18s,box-shadow .18s,background .18s}.map-list-search input:focus{background:#fff;border-color:#28241cb3;box-shadow:0 0 0 4px #28241c1f}.map-list-tabs,.list-tabs{flex-wrap:wrap;gap:8px;display:flex}.map-list-tabs button,.list-tabs button{color:#516176;background:#fdfcfa;border:1px solid #e8e6df;border-radius:999px;align-items:center;gap:7px;min-height:34px;padding:7px 11px;font-size:.82rem;font-weight:850;display:inline-flex}.map-list-tabs button.active,.list-tabs button.active{color:var(--primary-dark);background:#f4f2ec;border-color:#28241c8c;box-shadow:inset 0 0 0 1px #28241c1a}.map-list-tabs span,.list-tabs span{min-width:22px;min-height:22px;color:var(--primary);background:#fff;border-radius:999px;place-items:center;padding:0 6px;font-size:.72rem;font-weight:900;display:inline-grid}.list-pager{background:#fdfcfa;border:1px solid #e8e6df;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.list-pager span{color:#667085;font-size:.88rem;font-weight:750}.list-pager div{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.top-pager{margin-bottom:12px}.bottom-pager{margin-top:14px}.compact-pager{padding:9px 10px}.map-side>.map-member-list{align-content:start;min-height:0;max-height:none;padding:20px 22px}.map-list-shell .map-member-list{align-content:start;min-height:0;max-height:none;padding-right:2px}.map-member-card{border:1px solid var(--border);border-radius:var(--radius);color:var(--text);text-align:left;cursor:pointer;background:linear-gradient(#fff 0%,#fdfcfa 100%);gap:5px;padding:12px 14px;transition:border-color .18s,background .18s,box-shadow .18s;display:grid}.map-member-card:hover,.map-member-card.selected{border-color:var(--primary);background:#faf9f5;box-shadow:0 10px 22px #28241c1a}.map-member-list span{color:var(--muted);font-size:.86rem}.inline-route-button{width:fit-content;color:var(--primary-dark);background:#fff;border:1px solid #28241c3d;border-radius:999px;padding:5px 10px;font-size:.8rem;font-weight:850}.change-list,.security-list{gap:14px;display:grid}.request-card-list{gap:10px;display:grid}.request-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:100%;color:var(--text);text-align:left;overflow-wrap:anywhere;gap:6px;padding:14px;display:grid}.request-card:hover,.request-card.selected{box-shadow:inset 3px 0 0 var(--dk-gold);background:#faf9f5;border-color:#c9d3da}.request-card .badge{width:fit-content}.request-card small{color:var(--muted)}.request-card-actions{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.request-card-actions .primary-button,.request-card-actions .danger-button{flex:180px}.new-member-preview{border-top:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;margin:8px 0 4px;padding-top:10px;display:grid}.new-member-preview div{min-width:0}.new-member-preview dt{color:var(--muted);font-size:.78rem;font-weight:800}.new-member-preview dd{color:var(--text);overflow-wrap:anywhere;margin:3px 0 0}.export-request-card{grid-template-columns:1fr auto;align-items:center;gap:8px 14px}.export-request-card>span,.export-request-card>strong{min-width:0}.change-card{border:1px solid var(--border);border-radius:var(--radius);padding:16px}.review-summary{gap:8px;margin-bottom:14px;display:grid}.review-summary>div{gap:2px;display:grid}.review-summary>div span{color:var(--muted);font-size:.9rem}.review-summary p{margin-bottom:0}.owner-note{border-top:1px solid var(--border);padding-top:8px;font-weight:700}.change-card.member{background:#faf6ee;border-color:#e3d6b8}.change-card.support{background:var(--dk-surface-warm);border-color:#d6d2c8}.change-card>div:first-child{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.compare-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.compare-grid span{border:1px solid var(--border);border-radius:var(--radius);min-height:46px;color:var(--muted);background:#ffffffb3;padding:11px 12px;text-decoration:line-through}.compare-grid small{font-weight:500}.review-actions{border-top:1px solid var(--dk-border-5);flex-wrap:wrap;gap:10px;margin-top:16px;padding-top:16px;display:flex}.review-actions .full{flex:180px;width:auto;margin-top:0}.review-counts{flex:none;gap:28px;display:flex}.review-counts span{gap:3px;display:grid}.review-counts strong{font-family:var(--dk-font-serif);color:var(--dk-ink);font-size:1.7rem;font-weight:600;line-height:1}.review-counts small{letter-spacing:.05em;text-transform:uppercase;color:var(--dk-muted-3);font-size:.7rem;font-weight:600}.review-view-toggle{justify-self:start}.review-view-toggle button{align-items:center;gap:8px;display:inline-flex}.review-view-toggle button span{background:#28241c14;border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 6px;font-size:.74rem;font-weight:700;display:inline-grid}.review-view-toggle button.active span{background:#ffffff3d}.security-card{padding:16px}.security-card.compact{background:#faf9f5}.security-card p{margin:6px 0 0}.security-card ul{color:var(--muted);margin:12px 0 0;padding-left:18px;font-size:.88rem}.mono{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.88rem}[dir=rtl] .role-card,[dir=rtl] .member-row,[dir=rtl] .sidebar nav button,[dir=rtl] th,[dir=rtl] td{text-align:right}[dir=rtl] .timeline,[dir=rtl] .check-list,[dir=rtl] .security-card ul{padding-left:0;padding-right:22px}@media (width<=1120px){.topbar-main{grid-template-columns:1fr;align-items:start}.topbar-actions{justify-content:space-between;width:100%}.user-screen-heading{flex-direction:column;align-items:stretch}.account-chip{width:min(100%,380px)}.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.account-sections,.content-grid,.missing-info-row,.family-workspace.has-selection,.review-workspace.has-selection,.agenda-layout,.pastoral-layout,.agenda-toolbar,.agenda-command,.agenda-hero,.agenda-filterbar,.map-layout,.process-strip,.agenda-toolbar-actions,.agenda-command-actions,.calendar-shell-head,.agenda-hero-actions,.agenda-create-grid,.appointment-modal-body,.appointment-search-controls,.route-time-tools,.notification-card{grid-template-columns:1fr}.calendar-shell-head,.agenda-hero-actions,.notification-hero{flex-direction:column;align-items:stretch}.notification-actions{min-width:0}.appointment-modal{max-height:calc(100vh - 24px)}.appointment-search-panel{border-bottom:1px solid #e8e6df;border-right:0}.appointment-modal-body{overflow:auto}.appointment-results{max-height:360px}.agenda-form-grid,.agenda-state-grid,.missing-summary-grid{grid-template-columns:1fr}.universal-agenda-head{flex-direction:column}.week-calendar{grid-template-columns:none;grid-auto-columns:minmax(230px,70vw);grid-auto-flow:column;overflow-x:auto}.calendar-day{min-height:300px}.agenda-detail{position:static}.map-side{border-top:1px solid #e8e6df;border-left:0;max-height:none;position:static;overflow:visible}.family-toolbar{grid-template-columns:1fr}.dossier-panel,.pastoral-detail-panel{position:static}.dossier-main,.note-browser{grid-template-columns:1fr}.family-workspace.has-selection .family-list-panel{max-height:none}.family-workspace:not(.has-selection) .family-row{grid-template-columns:1fr}.pastoral-layout.has-selection .pastoral-list-panel,.review-workspace.has-selection .wide{max-height:none}}@media (width<=720px){.topbar-actions,.panel-heading,.hero-panel,.missing-info-hero,.hero-actions,.map-topbar,.agenda-toolbar-actions,.agenda-command-actions,.agenda-hero-actions,.calendar-shell-head,.appointment-modal-header,.compare-grid{flex-direction:column;align-items:stretch}.topbar-main{min-height:auto;padding:22px 18px}.topnav{gap:22px;width:100%;padding:0 18px}.topnav button{text-align:center;flex:1 0 auto;min-height:60px}.topbar-actions{gap:10px}.account-chip,.logout-button{width:100%}.workspace{padding:16px 14px 32px}.appointment-modal-backdrop{padding:10px}.appointment-modal{border-radius:14px}.appointment-modal-header,.appointment-search-panel,.appointment-detail-panel{padding:16px}.appointment-result,.appointment-modal-actions{grid-template-columns:1fr}.stat-grid,.dashboard-metrics{grid-template-columns:1fr 1fr}.dashboard-workspace .shortcut-tile{max-width:none}.overview-grid,.simple-actions,.admin-user-form,.postcode-row{grid-template-columns:1fr}.user-screen-tabs{grid-template-columns:1fr;width:100%;min-width:0}.postcode-heading{flex-direction:column;align-items:stretch}.login-card,.panel{padding:16px}.details-list,.dossier-tabs{grid-template-columns:1fr}.filter-tabs button{flex:calc(50% - 8px)}.map-board{min-height:380px}.route-actions{grid-template-columns:1fr}th,td{padding:10px 9px}}@media (width<=460px){h1{font-size:1.55rem}.stat-grid,.overview-grid{grid-template-columns:1fr}.topnav{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.topnav button{width:100%}.filter-tabs button{flex-basis:100%}.public-form-screen{padding:16px 12px}}.topbar-main{align-items:center;min-height:168px;padding-top:34px;padding-bottom:30px}.topbar h1{letter-spacing:0;font-size:clamp(2.05rem,3.4vw,3rem)}.topbar p{font-size:clamp(1rem,1.25vw,1.16rem)}.topnav{gap:clamp(20px,3.4vw,64px)}.topnav button{min-height:68px;padding:0 4px}.workspace{padding-top:clamp(34px,4vw,52px)}.panel,.hero-panel{border-color:#e8e6df;box-shadow:0 16px 38px #1f29330e}.panel-heading{background:0 0;border:0;border-bottom:1px solid #e8e6df;margin:0 0 24px;padding:0 0 16px}.panel-heading h2{color:var(--text);font-size:1.08rem}.hero-panel{background:linear-gradient(#fff 0%,#fdfcfa 100%);border-radius:12px;align-items:center}.hero-panel h2{color:var(--text);font-size:clamp(1.15rem,2vw,1.55rem)}.hero-actions{align-items:end}.primary-button,.secondary-button,.danger-button,.logout-button,.topnav button,.shortcut-tile,.member-row,.request-card,.dossier-person,.map-member-card,.user-screen-tabs button{-webkit-tap-highlight-color:transparent}.primary-button,.secondary-button,.danger-button{min-height:44px;transition:background .16s,border-color .16s,box-shadow .16s,transform .16s}.primary-button:not(:disabled):hover,.secondary-button:not(:disabled):hover,.danger-button:not(:disabled):hover{transform:translateY(-1px)}.primary-button:not(:disabled):hover{box-shadow:0 12px 24px #28241c2e}.primary-button.muted{background:var(--dk-navy);border-color:#ffffff8c}.secondary-button:not(:disabled):hover{background:#faf9f5;border-color:#c9d3da}.danger-button:not(:disabled):hover{background:#fee2e2;border-color:#c92a2a6b}button:disabled,.primary-button:disabled,.secondary-button:disabled,.danger-button:disabled{box-shadow:none;transform:none}input,textarea,select{min-height:50px;transition:border-color .16s,box-shadow .16s,background .16s}input:focus,textarea:focus,select:focus{border-color:#c9d3da;outline:none;box-shadow:0 0 0 4px #3f5d7a1f}label{gap:8px;font-size:.92rem}.notice{border-radius:10px;margin:0;font-weight:700}.shortcut-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:28px}.shortcut-tile{border-color:#e8e6df;border-radius:16px;min-height:176px}.shortcut-tile:hover{transform:translateY(-3px)}.admin-user-form{background:#fdfcfa;border-color:#e8e6df}.checkbox-label{align-items:center;gap:10px;display:flex}.checkbox-label input[type=checkbox]{flex:none;width:18px;height:18px;min-height:18px}.export-field-heading,.postcode-heading{background:#faf9f5;border-radius:10px;padding:12px}.postcode-editor .checkbox-label{background:#fff;border:1px solid #e8e6df;border-radius:10px;padding:10px 12px}.member-row,.request-card,tbody tr{cursor:pointer}tbody tr:hover{background:#fdfcfa}.family-row{gap:8px;margin-top:14px}.family-row.selected,.request-card.selected,.map-member-card.selected{box-shadow:inset 4px 0 0 var(--primary), 0 12px 24px #28241c1a}.dossier-panel,.map-side{align-self:start}.dossier-actions,.review-summary{background:#fdfcfa}.compare-grid label{min-width:0}.compare-grid span{overflow-wrap:anywhere}.review-actions{gap:8px;display:grid}.map-member-list{padding-right:2px}.map-member-card{border-radius:10px}.route-card{background:linear-gradient(#fdfcfa 0%,#fff 100%);border-color:#c8def1}.route-actions .compact{min-height:42px;padding:8px 10px}.link-box{background:#fdfcfa;margin-top:14px}.subtle-panel{background:#fdfcfa}.compact-list{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.form-helper{color:var(--muted);margin:14px 0 16px;font-size:.95rem}.copy-link-row .secondary-button,.copy-link-row .danger-button{white-space:nowrap;margin:0}.table-wrap table{min-width:720px}@media (width<=1120px){.topbar-main{min-height:auto}.hero-actions{align-items:stretch}.dashboard-workspace .shortcut-grid{justify-content:center}.export-preview-card{position:static}}@media (width<=720px){.topbar h1{font-size:1.8rem}.topnav{gap:10px}.topnav button{min-height:54px}.shortcut-grid{grid-template-columns:1fr;gap:14px}.dashboard-workspace .shortcut-grid{grid-template-columns:1fr;display:grid}.export-filter-grid{grid-template-columns:1fr}.export-card:not(.export-flow-card),.export-preview-card{padding:14px}.export-flow-card{padding:0}.export-step{grid-template-columns:1fr;gap:10px;padding:14px}.export-step-number{width:28px;height:28px}.export-card-heading{display:grid}.export-heading-actions{justify-content:stretch}.export-heading-actions .secondary-button{width:100%}.export-control-row,.export-segmented{grid-template-columns:1fr}.quick-filter-button{min-width:0}.dashboard-workspace .shortcut-tile{width:100%;min-height:178px}.missing-info-panel{padding:16px}.missing-info-main{grid-template-columns:1fr}.missing-info-meta{justify-items:stretch}.dashboard-metrics,.agenda-summary,.new-member-preview{grid-template-columns:1fr}.public-form-screen{padding:0}.public-form-card{border-radius:0;min-height:100svh;padding:20px 14px 28px}.public-form-card .edit-form,.nested-form,.relationship-search-row,.relationship-end-row{grid-template-columns:1fr}.family-card-heading,.smart-link-trigger{flex-direction:column;align-items:stretch}.compact-relationship-card summary{grid-template-columns:1fr}.compact-relationship-card summary small{grid-column:auto}.full-family-section{padding:14px}.full-tree-section .panel-heading{align-items:stretch;gap:12px}.tree-legend-row{gap:7px 10px;font-size:.78rem}.full-tree-toolbar{justify-content:stretch}.tree-control-button{flex:64px;min-height:46px}.full-tree-viewport{border-radius:10px;height:72svh;min-height:520px}.extended-person-grid,.relationship-results,.linked-family-grid{grid-template-columns:1fr}.shortcut-tile{min-height:130px;padding:18px}.shortcut-icon{width:58px;height:58px}.shortcut-icon svg{width:34px;height:34px}.copy-link-row{grid-template-columns:1fr}.compare-grid{grid-template-columns:1fr;display:grid}}@media (width<=460px){.topnav{gap:18px;display:flex}.shortcut-grid{grid-template-columns:1fr}}@media (width<=1120px){.nav-card-grid{grid-template-columns:repeat(3,1fr)}.header-search{width:200px}}@media (width<=880px){.app-header{padding:0 20px}.app-subhead{padding:18px 20px 0}.dashboard-workspace{padding:22px 20px 40px}.nav-card-grid{grid-template-columns:repeat(2,1fr)}.totals-bar{flex-wrap:wrap}.totals-segment{flex:33%}.brand-name small{display:none}}@media (width<=560px){.header-search,.brand-name{display:none}.app-header{padding:0 12px}.app-header-actions{gap:7px}.brand-logo{width:42px;height:42px}.header-lang select{max-width:108px;padding-right:26px}.totals-segment{border-bottom:1px solid var(--dk-border-5);flex-basis:50%}.nav-card-grid{grid-template-columns:1fr}}@media (width<=900px){.family-workspace.has-selection{grid-template-columns:1fr}.family-workspace.has-selection .family-list-panel{display:none}.review-workspace.has-selection{grid-template-columns:1fr}.family-toolbar{grid-template-columns:1fr;gap:14px}.dossier-main,.note-browser{grid-template-columns:1fr}.dossier-tabs{scrollbar-width:none;flex-wrap:nowrap;display:flex;overflow-x:auto}.dossier-tabs::-webkit-scrollbar{display:none}.dossier-tabs button{white-space:nowrap;flex:none}}@media (width<=640px){.dossier-fact-grid,.agenda-mini-fields{grid-template-columns:1fr}.dossier-quick-actions .primary-button,.dossier-quick-actions .secondary-button{flex:100%}.cal-day{min-height:36px;font-size:.85rem}.dossier-calendar{padding:12px}.agenda-action-row{grid-template-columns:1fr;gap:10px;display:grid}}@media (width<=900px){.agenda-layout,.agenda-create-grid{grid-template-columns:1fr}.map-layout{border-radius:18px;grid-template-columns:1fr}.map-panel{min-height:340px}.map-board{aspect-ratio:auto;height:62vh;min-height:360px;max-height:none}.map-side{grid-template-rows:auto auto}.pastoral-layout.has-selection{grid-template-columns:1fr}.pastoral-layout.has-selection .pastoral-list-panel{display:none}}.header-search-mobile{display:none}.app-nav{scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;scroll-padding-left:12px;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 14px calc(100% - 22px),#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 14px calc(100% - 22px),#0000 100%)}.app-nav button{scroll-snap-align:start}@media (width<=768px){.app-header{gap:12px;padding:0 16px}.app-header-actions{gap:10px}.header-search{display:none}.header-search-mobile{display:grid}.header-new-text,.header-install-text{display:none}.header-install{padding:0 11px}.header-new{padding:0 13px}.header-new span[aria-hidden]{font-size:20px}.app-subhead{padding:16px 16px 0;top:78px}}@media (width<=640px){.primary-button,.secondary-button,.danger-button{min-height:46px}.filter-tabs button,.segmented-control button,.app-nav button{min-height:44px}.workspace{padding:18px 14px 48px}.dk-modal-backdrop,.appointment-modal-backdrop{align-items:stretch;padding:0}.dk-modal,.appointment-modal{border:0;border-radius:0;width:100%;max-width:none;min-height:100vh;max-height:100vh}.dk-modal-actions,.appointment-modal-actions{padding:14px 22px calc(14px + env(safe-area-inset-bottom));background:var(--dk-glass-bg-strong);-webkit-backdrop-filter:var(--dk-glass-blur);border-top:1px solid var(--dk-border-5);margin:0 -22px -22px;position:sticky;bottom:0}.admin-user-form,.two-factor-setup,.agenda-form-grid,.agenda-mini-fields,.compare-grid,.export-filter-grid{grid-template-columns:1fr}.table-wrap,.table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}}.badge.muted{color:var(--dk-muted-6,#6b6b64);background:var(--surface-muted,#f4f2ec)}.statistics-page .totals-bar{margin-bottom:4px}.statistics-scope{color:var(--muted);align-items:center;gap:8px;font-size:.82rem;display:inline-flex}.statistics-scope select{min-width:180px}.statistics-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;margin-top:4px;display:grid}.statistics-grid .stat-card{flex-direction:column;gap:6px;padding:16px 18px;display:flex}.stat-card-label{color:var(--muted);font-size:.82rem}.stat-card-value{font-family:var(--dk-font-serif);color:var(--dk-ink);font-size:1.8rem;line-height:1}.category-chart-layout{flex-wrap:wrap;align-items:center;gap:24px;margin-top:4px;display:flex}.donut-wrap{flex:none;justify-content:center;margin:0 auto;display:flex}.donut{width:200px;height:200px}.donut circle{transition:stroke-dasharray .4s}.donut-total{text-anchor:middle;font-family:var(--dk-font-serif);fill:var(--dk-ink);font-size:30px;font-weight:600}.donut-sub{text-anchor:middle;fill:var(--muted);font-size:12px}.category-swatch{border-radius:3px;flex:none;width:12px;height:12px}.category-stats{flex-direction:column;flex:320px;margin:4px 0 0;padding:0;list-style:none;display:flex}.category-stats li{border-bottom:1px solid var(--border);grid-template-columns:1fr auto;grid-template-areas:"head count""bar bar";align-items:center;gap:8px 14px;padding:12px 4px;display:grid}.category-stats li:last-child{border-bottom:none}.category-bar-head{flex-wrap:wrap;grid-area:head;align-items:center;gap:8px;display:flex}.category-stats .category-range{color:var(--muted);font-size:.82rem}.category-stats strong{font-family:var(--dk-font-serif);color:var(--dk-ink);text-align:right;grid-area:count;justify-self:end;min-width:36px;font-size:1.15rem}.category-bar-track{background:var(--surface-muted,#f1efe8);border-radius:999px;grid-area:bar;height:10px;overflow:hidden}.category-bar-fill{background:var(--dk-gold,#c2a15a);border-radius:999px;min-width:2px;height:100%;transition:width .4s}.category-bar-fill.blue{background:#2f4a63}.category-bar-fill.green{background:#3f6b4e}.category-bar-fill.amber{background:#8a6a2f}.category-bar-fill.orange{background:#9a5a2f}.category-bar-fill.red{background:#9a3b2f}.category-bar-fill.purple{background:#5a4a6b}.category-bar-fill.indigo{background:#3f4a6b}.category-bar-fill.muted{background:#9a958a}.category-extra{border-top:1px solid var(--border);flex-wrap:wrap;gap:12px;margin-top:16px;padding-top:16px;display:flex}.category-extra-item{border:1px solid var(--border);border-radius:var(--radius,12px);background:var(--surface);flex-direction:column;flex:150px;gap:4px;padding:12px 14px;display:flex}.category-extra-item .badge{align-self:flex-start}.category-extra-item small{color:var(--muted);font-size:.78rem}.category-extra-item strong{font-family:var(--dk-font-serif);color:var(--dk-ink);font-size:1.4rem}.bar-chart{grid-auto-columns:1fr;grid-auto-flow:column;align-items:end;gap:14px;height:200px;margin-top:4px;padding:8px 0 0;display:grid}.bar-chart-col{grid-template-rows:auto 1fr auto;place-items:end center;gap:8px;height:100%;display:grid}.bar-chart-value{font-family:var(--dk-font-serif);color:var(--dk-ink);font-size:1.05rem}.bar-chart-track{justify-content:center;align-items:flex-end;width:100%;max-width:64px;height:100%;display:flex}.bar-chart-fill{background:#2f4a63;border-radius:8px 8px 0 0;width:100%;min-height:3px;transition:height .4s}.bar-chart-label{color:var(--muted);text-align:center;font-size:.78rem}.category-badge-row{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.category-badge-row .badge{padding:3px 9px;font-size:.72rem}.family-category-filter{color:var(--muted);align-items:center;gap:8px;margin:10px 0 2px;font-size:.82rem;display:flex}.family-category-filter select{flex:1;min-width:0}.public-once-warning{text-align:left;border:1px solid #e3c98f;border-left:4px solid var(--dk-gold,#c2a15a);background:#faf3e2;border-radius:12px;flex-direction:column;gap:4px;margin:4px 0 16px;padding:14px 16px;display:flex}.public-once-warning strong{color:#8a6a2f;font-size:.95rem}.public-once-warning span{color:#6f5a33;font-size:.85rem}.stats-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.rings-row{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;display:grid}.ring-card{border:1px solid var(--border);border-radius:var(--radius,12px);background:var(--surface);text-align:center;flex-direction:column;align-items:center;gap:10px;padding:18px;display:flex}.ring{width:116px;height:116px}.ring-track{stroke:var(--surface-muted,#f1efe8)}.ring-value{transition:stroke-dasharray .5s}.ring-pct{text-anchor:middle;font-family:var(--dk-font-serif);fill:var(--dk-ink);font-size:26px;font-weight:600}.ring-num{text-anchor:middle;fill:var(--muted);font-size:12px}.ring-meta{flex-direction:column;gap:2px;display:flex}.ring-meta strong{color:var(--dk-ink);font-size:.95rem}.ring-meta small{color:var(--muted);font-size:.76rem}.charts-row{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:stretch;gap:16px;display:grid}.chart-card{margin:0}.donut-with-legend{flex-wrap:wrap;align-items:center;gap:20px;margin-top:4px;display:flex}.donut-legend{flex-direction:column;flex:180px;gap:4px;margin:0;padding:0;list-style:none;display:flex}.donut-legend li{border-bottom:1px solid var(--border);grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:9px 4px;display:grid}.donut-legend li:last-child{border-bottom:none}.donut-legend-label{color:var(--dk-ink);flex-direction:column;font-size:.9rem;display:flex}.donut-legend-label small{color:var(--muted);font-size:.74rem}.donut-legend strong{font-family:var(--dk-font-serif);color:var(--dk-ink);font-size:1.1rem}.compact-bar-chart{height:160px}.bar-chart-value.small{font-size:.85rem}.bar-chart-fill.gold{background:var(--dk-gold,#c2a15a)}.header-lang{align-items:center;margin:0;display:inline-flex}.header-lang select{border:1px solid var(--dk-border-3);background-color:var(--dk-surface);width:auto;min-height:40px;color:var(--dk-ink);background-position:right 10px center;border-radius:999px;padding:8px 34px 8px 12px;font-size:.86rem;font-weight:700}[dir=rtl] .header-lang select{background-position:10px;padding:8px 12px 8px 34px}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}[dir=rtl] .category-bar-track,[dir=rtl] .bar-chart-fill{transform:scaleX(1)}[data-theme=dark] .badge.muted{color:#c7ccd3;background:#2a3038}[data-theme=dark] .public-once-warning{background:#2a2416;border-color:#6a5a34}[data-theme=dark] .app-toast{color:#86efac;background:#10231a;border-color:#1f5136;box-shadow:0 12px 32px #00000073}[data-theme=dark] .app-toast.is-error{color:#fca5a5;background:#241012;border-color:#5b2626}[data-theme=dark] .app-toast-icon{background:#86efac29}[data-theme=dark] .app-toast.is-error .app-toast-icon{background:#fca5a529}[data-theme=dark] .skeleton-list .skeleton-row{background:var(--surface);border-color:var(--dk-border-3)}[data-theme=dark] .skeleton-line,[data-theme=dark] .skeleton-row{background:linear-gradient(90deg,#23262b 25%,#31353c 37%,#23262b 63%) 0 0/420px 100%}[data-theme=dark] .public-once-warning strong{color:#e7c98f}[data-theme=dark] .public-once-warning span{color:#cbb98d}.btn-icon{vertical-align:-2px;fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px;margin-inline-end:7px}.agenda-mini-row{align-items:stretch;gap:8px;display:flex}.agenda-mini-row .agenda-mini-event{flex:1;min-width:0}.agenda-mini-add{border:1px solid var(--border);background:var(--dk-surface);width:42px;color:var(--dk-accent);border-radius:12px;flex:none;place-items:center;display:grid}.agenda-mini-add svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.agenda-mini-add:hover{border-color:var(--dk-accent);background:var(--surface-muted)}.calendar-toolbar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.calendar-view-switch{border:1px solid var(--dk-border-3);background:var(--dk-surface);border-radius:10px;display:inline-flex;overflow:hidden}.calendar-view-switch button{color:var(--dk-muted);background:0 0;border:0;padding:7px 15px;font-size:.85rem;font-weight:700}.calendar-view-switch button.active{background:var(--dk-accent);color:#fff}.calendar-nav{align-items:center;gap:8px;display:inline-flex}.cal-arrow{border:1px solid var(--dk-border-3);background:var(--dk-surface);width:34px;height:34px;color:var(--dk-ink);border-radius:9px;place-items:center;font-size:1.25rem;line-height:1;display:grid}.cal-arrow:hover{border-color:var(--dk-accent)}.month-calendar{flex-direction:column;display:flex}.month-weekdays{grid-template-columns:repeat(7,1fr);padding:0 2px 8px;display:grid}.month-weekdays span{text-align:center;letter-spacing:.04em;text-transform:uppercase;color:var(--dk-muted);font-size:.74rem;font-weight:750}.month-grid{border-top:1px solid var(--border);border-left:1px solid var(--border);border-radius:12px;grid-template-columns:repeat(7,1fr);grid-auto-rows:minmax(98px,1fr);display:grid;overflow:hidden}.month-day{border-right:1px solid var(--border);border-bottom:1px solid var(--border);cursor:pointer;background:var(--dk-surface);flex-direction:column;gap:4px;min-width:0;min-height:98px;padding:6px 6px 8px;transition:background .12s;display:flex;overflow:hidden}.month-day:hover{background:var(--surface-muted)}.month-day.outside{background:var(--dk-page)}.month-day.outside .month-day-number{color:var(--dk-muted-2)}.month-day-number{width:26px;height:26px;color:var(--dk-ink);border-radius:50%;align-self:flex-start;place-items:center;font-size:.85rem;font-weight:700;display:grid}.month-day.today .month-day-number{background:var(--dk-accent);color:#fff}.month-day.selected{box-shadow:inset 0 0 0 2px var(--dk-gold)}.month-day-events{flex-direction:column;gap:3px;min-width:0;display:flex}.month-event{color:#2f4a63;text-align:left;background:#e8eef3;border:0;border-radius:6px;align-items:center;gap:5px;min-width:0;max-width:100%;padding:2px 6px;font-size:.74rem;font-weight:650;display:flex;overflow:hidden}.month-event.completed{color:#3f6b4e;background:#e7efe7}.month-event.selected{outline:2px solid var(--dk-gold)}.month-event-time{font-variant-numeric:tabular-nums;opacity:.8;flex:none}.month-event-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.month-event-more{color:var(--dk-muted);background:0 0;padding:1px 6px;font-weight:700}[dir=rtl] .month-event,[dir=rtl] .month-day-number{text-align:right}[data-theme=dark] .month-event{color:#bcd0e2;background:#243444}[data-theme=dark] .month-event.completed{color:#a9cbb4;background:#233a2c}@media (width<=640px){.month-grid{grid-auto-rows:minmax(66px,1fr)}.month-day{min-height:66px;padding:4px 3px}.month-day-number{width:22px;height:22px;font-size:.78rem}.month-event{padding:1px 4px;font-size:.66rem}.month-event-time{display:none}}.schedule-list{border:1px solid var(--border);background:var(--dk-surface);-webkit-overflow-scrolling:touch;border-radius:14px;flex-direction:column;max-height:min(62vh,640px);display:flex;overflow-y:auto}.schedule-day{border-bottom:1px solid var(--dk-border-5)}.schedule-day:last-child{border-bottom:0}.schedule-day-head{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:52px 1fr auto;align-items:center;gap:12px;width:100%;padding:12px 16px;display:grid}.schedule-day-head:hover{background:var(--surface-muted)}.schedule-date{flex-direction:column;align-items:center;line-height:1.05;display:flex}.schedule-date small{text-transform:uppercase;letter-spacing:.04em;color:var(--dk-muted);font-size:.66rem;font-weight:750}.schedule-date strong{font-size:1.28rem;font-family:var(--dk-font-serif);color:var(--dk-ink);border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.schedule-day.today .schedule-date strong{background:var(--dk-accent);color:#fff}.schedule-title{color:var(--dk-body);text-transform:capitalize;font-weight:700}.schedule-day.empty .schedule-title,.schedule-day:not(.has-events) .schedule-title{color:var(--dk-muted);font-weight:600}.schedule-meta{align-items:center;gap:10px;display:inline-flex}.schedule-count{background:var(--dk-accent);color:#fff;border-radius:999px;place-items:center;min-width:22px;height:22px;padding:0 7px;font-size:.76rem;font-weight:750;display:grid}.schedule-empty-label{color:var(--dk-muted-2);font-size:.78rem}.schedule-chevron{fill:none;width:16px;height:16px;stroke:var(--dk-muted);stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;transition:transform .18s}.schedule-day.expanded .schedule-chevron{transform:rotate(90deg)}[dir=rtl] .schedule-day.expanded .schedule-chevron{transform:rotate(-90deg)}.schedule-day.has-events:not(.today) .schedule-date strong{color:var(--dk-accent)}.schedule-day-body{flex-direction:column;gap:8px;padding:4px 16px 16px 68px;display:flex}[dir=rtl] .schedule-day-body{padding:4px 68px 16px 16px}.schedule-event{border:1px solid var(--dk-border-4);background:var(--dk-surface-warm);text-align:left;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;padding:10px 12px;display:grid}.schedule-event-open{text-align:left;cursor:pointer;min-width:0;color:inherit;background:0 0;border:0;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:12px;padding:0;display:grid}.schedule-complete-btn{border:1px solid color-mix(in srgb, var(--dk-accent) 40%, transparent);background:color-mix(in srgb, var(--dk-accent) 10%, transparent);color:var(--dk-accent);cursor:pointer;border-radius:999px;flex-shrink:0;align-items:center;gap:6px;padding:7px 12px;font-size:.8rem;font-weight:700;transition:background .15s,transform .1s;display:inline-flex}.schedule-complete-btn:hover{background:var(--dk-accent);color:#fff}.schedule-complete-btn:active{transform:scale(.96)}.schedule-complete-btn:disabled{opacity:.5;cursor:default}.schedule-complete-btn svg{fill:none;stroke:currentColor;stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.schedule-event:hover{border-color:var(--dk-accent)}.schedule-event.selected{border-color:var(--dk-gold);box-shadow:inset 0 0 0 1px var(--dk-gold)}.schedule-event.completed{opacity:.75}.schedule-event-time{font-variant-numeric:tabular-nums;color:var(--dk-ink);font-size:.9rem;font-weight:750}.schedule-event-main{flex-direction:column;min-width:0;display:flex}.schedule-event-main strong{color:var(--dk-ink);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.schedule-event-main small{color:var(--dk-muted);font-size:.78rem}.schedule-add{border:1px dashed var(--dk-border-3);color:var(--dk-accent);background:0 0;border-radius:10px;align-self:flex-start;padding:8px 12px;font-size:.82rem;font-weight:700}.schedule-add:hover{border-color:var(--dk-accent);background:var(--surface-muted)}.schedule-day-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.schedule-route-btn{border:1px solid var(--dk-accent);background:color-mix(in srgb, var(--dk-accent) 10%, transparent);color:var(--dk-accent);cursor:pointer;border-radius:10px;align-items:center;gap:7px;padding:8px 14px;font-size:.82rem;font-weight:700;transition:background .15s,color .15s;display:inline-flex}.schedule-route-btn:hover{background:var(--dk-accent);color:#fff}.schedule-route-btn svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.agenda-sync-modal{width:min(100%,560px)}.agenda-sync-body{flex-direction:column;gap:16px;padding:18px 24px 24px;display:flex}.agenda-sync-body .link-box{gap:10px}.webcal-link{text-align:center;margin-top:4px;text-decoration:none}.sync-security-note{border:1px solid #e3c98f;border-left:4px solid var(--dk-gold);color:#6f5a33;background:#faf3e2;border-radius:12px;padding:12px 14px;font-size:.84rem}.sync-route-note{color:#285440;background:#eef7f1;border:1px solid #bcdcc6;border-left:4px solid #2f6b4f;border-radius:12px;padding:12px 14px;font-size:.84rem}[data-theme=dark] .sync-route-note{color:#9fd6b4;background:#12291d;border-color:#2c5a41}[data-theme=dark] .sync-security-note{color:#cbb98d;background:#2a2416;border-color:#6a5a34}.sync-status{margin:0}@media (width<=560px){.schedule-day-body{padding:4px 12px 14px}.schedule-event{grid-template-columns:46px 1fr}.schedule-event :last-child.badge{display:none}}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{width:auto;padding:0;max-width:none!important;max-height:none!important}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);margin:0 auto}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.leaflet-cluster-anim .leaflet-marker-icon,.leaflet-cluster-anim .leaflet-marker-shadow{-webkit-transition:-webkit-transform .3s ease-out,opacity .3s ease-in;-o-transition:-o-transform .3s ease-out, opacity .3s ease-in;-moz-transition:-moz-transform .3s ease-out,opacity .3s ease-in;transition:transform .3s ease-out,opacity .3s ease-in}.leaflet-cluster-spider-leg{-webkit-transition:-webkit-stroke-dashoffset .3s ease-out,-webkit-stroke-opacity .3s ease-in;-o-transition:-o-stroke-dashoffset .3s ease-out, -o-stroke-opacity .3s ease-in;-moz-transition:-moz-stroke-dashoffset .3s ease-out,-moz-stroke-opacity .3s ease-in;transition:stroke-dashoffset .3s ease-out,stroke-opacity .3s ease-in}
