:root{color-scheme:light;--background:0 0% 98%;--foreground:222 32% 12%;--card:0 0% 100%;--card-foreground:222 32% 15%;--primary:221 62% 34%;--primary-foreground:0 0% 100%;--primary-light:221 62% 44%;--primary-dark:221 62% 24%;--secondary:220 20% 96%;--secondary-foreground:222 20% 20%;--muted:220 20% 95%;--muted-foreground:222 12% 45%;--accent:221 60% 95%;--accent-foreground:221 62% 34%;--success:142 71% 32%;--success-foreground:0 0% 100%;--warning:38 92% 42%;--warning-foreground:0 0% 100%;--destructive:0 68% 47%;--destructive-foreground:0 0% 100%;--border:220 18% 89%;--input:220 18% 92%;--ring:221 62% 34%;--radius:0.75rem;--radius-md:0.5rem;--radius-sm:0.375rem;--shadow-sm:0 1px 2px 0 hsl(222 32% 12%/0.05);--shadow-md:0 4px 12px -2px hsl(221 62% 34%/0.12),0 2px 4px -2px hsl(221 62% 34%/0.08);--sidebar-collapsed:64px;--sidebar-expanded:256px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;background:hsl(var(--background));color:hsl(var(--foreground))}.nav-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:2000;background:transparent;pointer-events:none}.nav-progress-bar{height:100%;background:hsl(var(--primary));box-shadow:0 0 8px hsl(var(--primary)/.6);transition:width .2s ease,opacity .2s ease}*{box-sizing:border-box}body,html{overflow-x:hidden}body{margin:0;background:hsl(var(--background));min-height:100vh;font-size:14px;line-height:1.5}a{color:hsl(var(--primary));text-decoration:none;font-weight:500}a:hover{text-decoration:underline}.link-button{background:none;border:none;padding:0;color:hsl(var(--primary));font:inherit;font-weight:500;cursor:pointer;text-align:left}.link-button:hover{text-decoration:underline}h1,h2,h3{letter-spacing:-.01em;font-weight:600}h1{margin:0 0 .75rem;font-size:1.5rem}h2{margin:0 0 .5rem;font-size:1.1rem}h3{margin:0;font-size:.95rem}.app-shell{display:flex;min-height:100vh}.app-main{flex:1 1;min-width:0;display:flex;flex-direction:column}.mobile-topbar{display:none}.sidebar{position:fixed;top:0;left:0;height:100vh;width:var(--sidebar-collapsed);background:hsl(var(--card));border-right:1px solid hsl(var(--border));display:flex;flex-direction:column;overflow:hidden;transition:width .18s ease;z-index:20;flex-shrink:0}.sidebar-expanded{width:var(--sidebar-expanded)}.sidebar-brand{display:flex;align-items:center;gap:.75rem;padding:1rem;border-bottom:1px solid hsl(var(--border));white-space:nowrap;height:64px}.sidebar-brand-mark{flex-shrink:0;width:32px;height:32px;border-radius:var(--radius-md);background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-weight:700;font-size:.68rem;letter-spacing:.02em;display:flex;align-items:center;justify-content:center}.sidebar-brand-logo{background:none;object-fit:cover}.sidebar-brand-name{font-weight:600;font-size:.9rem;color:hsl(var(--foreground))}.sidebar>nav{flex:1 1;display:flex;min-height:0}.sidebar-list{list-style:none;margin:0;padding:.6rem;display:grid;align-content:start;grid-gap:.15rem;gap:.15rem;flex:1 1;overflow-y:auto}.sidebar-link{display:flex;align-items:center;gap:.75rem;padding:.5rem .6rem;border-radius:var(--radius-md);color:hsl(var(--muted-foreground));font-weight:500;font-size:.85rem;white-space:nowrap;text-decoration:none;transition:background-color .15s ease,color .15s ease}.sidebar-link:hover{background:hsl(var(--accent));color:hsl(var(--foreground));text-decoration:none}.sidebar-link-active{box-shadow:var(--shadow-md)}.sidebar-link-active,.sidebar-link-active:hover{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.sidebar-icon{flex-shrink:0;width:18px;height:18px;display:flex;align-items:center;justify-content:center}.sidebar-label{opacity:0;transform:translateX(-4px);transition:opacity .14s ease,transform .14s ease}.sidebar-expanded .sidebar-label{opacity:1;transform:translateX(0)}.sidebar-footer{border-top:1px solid hsl(var(--border));padding:.6rem;display:grid;grid-gap:.15rem;gap:.15rem}.sidebar-footer form{display:contents}.sidebar-footer button.sidebar-link{width:100%;border:none;background:none;cursor:pointer;font:inherit;text-align:left}.sidebar-link-signout:hover{background:hsl(var(--destructive)/.1);color:hsl(var(--destructive))}.sidebar-group{position:relative}.sidebar-group>button.sidebar-link{width:100%;border:none;background:none;cursor:pointer;font:inherit;text-align:left}.sidebar-group>button.sidebar-link-active{background:hsl(var(--primary))}.sidebar-group-chevron{flex-shrink:0;margin-left:auto;display:flex;align-items:center;opacity:0;transform:translateX(-4px);transition:opacity .14s ease,transform .14s ease}.sidebar-expanded .sidebar-group-chevron{opacity:.7;transform:translateX(0)}.sidebar-shell{display:flex;flex-shrink:0;width:var(--sidebar-collapsed)}.sidebar-panel{position:fixed;top:0;left:var(--sidebar-collapsed);height:100vh;width:220px;flex-shrink:0;display:flex;flex-direction:column;background:hsl(var(--card));border-right:1px solid hsl(var(--border));z-index:25;transition:left .18s ease}.sidebar-shell:has(.sidebar-expanded) .sidebar-panel{left:var(--sidebar-expanded)}.sidebar-panel-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:1rem 1rem .75rem;height:64px;border-bottom:1px solid hsl(var(--border))}.sidebar-panel-title{font-weight:600;font-size:1rem;color:hsl(var(--foreground))}.sidebar-panel-close{flex-shrink:0;width:26px;height:26px;border-radius:999px;border:none;background:hsl(var(--accent));color:hsl(var(--muted-foreground));display:flex;align-items:center;justify-content:center;cursor:pointer}.sidebar-panel-close:hover{color:hsl(var(--foreground))}.sidebar-panel-list{list-style:none;margin:0;padding:.6rem;display:grid;align-content:start;grid-gap:.15rem;gap:.15rem;flex:1 1;overflow-y:auto}.sidebar-panel-link{display:flex;align-items:center;gap:.65rem;padding:.5rem .6rem;border-radius:var(--radius-md);color:hsl(var(--primary));font-weight:500;font-size:.9rem;text-decoration:none;transition:background-color .15s ease,color .15s ease}.sidebar-panel-link:hover{background:hsl(var(--accent));text-decoration:none}.sidebar-panel-link-active,.sidebar-panel-link-active:hover{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.page-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.5rem;border-bottom:1px solid hsl(var(--border));background:hsl(var(--card)/.7);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);min-height:64px}.page-header h1{margin:0;font-size:1.15rem}.page-header-actions{display:flex;align-items:center;gap:.5rem}.page-shell{max-width:1200px;width:100%;margin:0 auto;padding:1.5rem;display:grid;align-content:start;grid-gap:1.25rem;gap:1.25rem;flex:1 1}.page-loading{display:flex;align-items:center;justify-content:center;min-height:50vh;flex:1 1}.page-loading-spinner{width:32px;height:32px;border-radius:999px;border:3px solid hsl(var(--border));border-top-color:hsl(var(--primary));animation:page-loading-spin .7s linear infinite}@keyframes page-loading-spin{to{transform:rotate(1turn)}}.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;font-size:.85rem;color:hsl(var(--muted-foreground));margin:-.5rem 0 0}.breadcrumb-item{display:inline-flex;align-items:center;gap:.35rem}.breadcrumbs a{color:hsl(var(--muted-foreground));text-decoration:none}.breadcrumbs a:hover{color:hsl(var(--primary));text-decoration:underline}.breadcrumb-current{color:hsl(var(--foreground));font-weight:500}.breadcrumb-sep{color:hsl(var(--border))}.hero-card,.panel{background:hsl(var(--card));color:hsl(var(--card-foreground));border:1px solid hsl(var(--border));border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow-sm)}.hero-card{margin-bottom:0}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;color:hsl(var(--muted-foreground));font-weight:600}.collapsible{background:hsl(var(--card));color:hsl(var(--card-foreground));border:1px solid hsl(var(--border));border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden}.collapsible-header{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.5rem;background:none;border:none;font:inherit;text-align:left;cursor:pointer;color:inherit}.collapsible-title{display:flex;align-items:center;gap:.5rem;min-width:0}.collapsible-title h2{margin:0}.collapsible-chevron{flex-shrink:0;color:hsl(var(--muted-foreground));transition:transform .15s ease}.collapsible-chevron-open{transform:rotate(90deg)}.collapsible-body{padding:0 1.5rem 1.5rem}.collapsible-bare{background:none;border:none;box-shadow:none;overflow:visible}.collapsible-bare-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.collapsible-bare-header h2{margin:0}.collapsible-bare .collapsible-body{padding:0}.retreat-tabs-shell{display:grid;grid-template-columns:220px 1fr;grid-gap:1.25rem;gap:1.25rem;align-items:start}@media (max-width:860px){.retreat-tabs-shell{grid-template-columns:1fr}}.retreat-tabs-menu{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:.6rem;position:-webkit-sticky;position:sticky;top:1.25rem}.retreat-tabs-menu ul{list-style:none;margin:0;padding:0;display:grid;grid-gap:.15rem;gap:.15rem}.retreat-tabs-menu-item{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.55rem .75rem;border-radius:var(--radius-md);border:none;background:none;font:inherit;font-weight:500;font-size:.88rem;text-align:left;cursor:pointer;color:hsl(var(--muted-foreground));transition:background-color .15s ease,color .15s ease}.retreat-tabs-menu-item:hover{background:hsl(var(--accent));color:hsl(var(--foreground))}.retreat-tabs-menu-item-active,.retreat-tabs-menu-item-active:hover{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.retreat-tabs-menu-item .badge{flex-shrink:0}.retreat-tabs-content{background:hsl(var(--card));color:hsl(var(--card-foreground));border:1px solid hsl(var(--border));border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:1.5rem;min-width:0}.retreat-tab-subsection h3{margin-top:0}@media (max-width:860px){.retreat-tabs-menu{position:static;padding:.5rem;overflow-x:auto;-webkit-overflow-scrolling:touch}.retreat-tabs-menu ul{display:flex;flex-wrap:nowrap;gap:.35rem}.retreat-tabs-menu-item{width:auto;flex-shrink:0;white-space:nowrap}}.board-rail{display:flex;align-items:flex-start;gap:1.25rem;background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:1.5rem}.board-rail-toggle{flex-shrink:0;width:44px;height:44px;border-radius:999px;border:1px solid hsl(var(--primary)/.3);background:hsl(var(--accent));color:hsl(var(--primary));font-size:.85rem;font-weight:700;letter-spacing:.02em;display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative}.board-rail-count,.board-rail-toggle:hover{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.board-rail-count{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 .3rem;border-radius:999px;font-size:.65rem;font-weight:700;display:flex;align-items:center;justify-content:center}.board-rail-panel{flex:1 1;min-width:0}.badge-row{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:1rem}.badge{display:inline-flex;align-items:center;background:hsl(var(--accent));color:hsl(var(--accent-foreground));padding:.15rem .65rem;border-radius:999px;font-size:.72rem;font-weight:600;border:1px solid transparent}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:1rem;gap:1rem}.stat-card h3{font-size:1.6rem;margin:0 0 .2rem;font-weight:700}.stat-card p{margin:0;color:hsl(var(--muted-foreground));font-size:.82rem}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;gap:1rem}.section-heading h1,.section-heading h2{margin:0}.empty-state{color:hsl(var(--muted-foreground));padding:1rem 0 0;font-size:.85rem}.table-wrap{overflow-x:auto;border:1px solid hsl(var(--border));border-radius:var(--radius-md)}.data-table{width:100%;border-collapse:collapse;font-size:.85rem}.data-table thead tr{border-bottom:1px solid hsl(var(--border))}.data-table th{height:3rem;padding:0 1rem;text-align:left;vertical-align:middle;font-weight:500;color:hsl(var(--muted-foreground));white-space:nowrap}.data-table td{padding:1rem;vertical-align:middle;border-bottom:1px solid hsl(var(--border))}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background:hsl(var(--muted)/.5)}.data-table .empty-cell{text-align:center;color:hsl(var(--muted-foreground));padding:2rem 0}.data-table .dt-td-checkbox,.data-table .dt-th-checkbox{width:2.25rem;padding-left:1rem;padding-right:0}.dt-bulk-bar{display:flex;align-items:center;gap:.75rem;padding:.6rem 1rem;margin-bottom:.75rem;background:hsl(var(--accent));border:1px solid hsl(var(--primary)/.25);border-radius:var(--radius-md);font-size:.85rem;flex-wrap:wrap}.mobile-bulk-fab-wrap{display:none}.dt-bulk-bar strong{color:hsl(var(--primary))}.dt-bulk-bar input,.dt-bulk-bar select{font:inherit;font-size:.82rem;padding:.35rem .5rem;border-radius:var(--radius-sm);border:1px solid hsl(var(--input));background:hsl(var(--background))}.dt-bulk-bar input:focus{outline:none;border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring)/.2)}.prayer-wall-signup-layout{display:grid;grid-template-columns:1fr 340px;grid-gap:1.5rem;gap:1.5rem;align-items:start}.prayer-wall-slot-list{display:flex;flex-direction:column;gap:.35rem;min-width:0}.prayer-wall-slot-list .records-list{max-height:480px;overflow-y:auto}.prayer-wall-form-panel{position:-webkit-sticky;position:sticky;top:1.5rem;display:flex;flex-direction:column;gap:1rem;padding:1rem;border:1px solid hsl(var(--border));border-radius:var(--radius-md);background:hsl(var(--muted)/.3)}@media (max-width:800px){.prayer-wall-signup-layout{grid-template-columns:1fr}.prayer-wall-form-panel{position:static}}.records-list{list-style:none;padding:0;margin:0;border:1px solid hsl(var(--border));border-radius:var(--radius-md);overflow:hidden}.records-list li{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);align-items:center;grid-gap:1rem;gap:1rem;padding:.85rem 1rem;border-bottom:1px solid hsl(var(--border));font-size:.85rem;transition:background-color .12s ease}.records-list li:last-child{border-bottom:none}.records-list li:hover{background:hsl(var(--muted)/.5)}.records-list-header{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);align-items:center;grid-gap:1rem;gap:1rem;padding:.6rem 1rem;border:1px solid hsl(var(--border));border-bottom:none;border-radius:var(--radius-md) var(--radius-md) 0 0;background:hsl(var(--muted)/.4);font-size:.75rem;font-weight:600;color:hsl(var(--muted-foreground));text-transform:uppercase;letter-spacing:.02em}.records-list-header+.records-list{border-top-left-radius:0;border-top-right-radius:0}.inline-slot-manage-form{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.inline-slot-manage-form input{font:inherit;font-size:.82rem;padding:.3rem .5rem;border-radius:var(--radius-md);border:1px solid hsl(var(--input));background:hsl(var(--background));min-width:0;width:9rem}.person-avatar{flex-shrink:0;width:32px;height:32px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:white;font-size:.7rem;font-weight:700;letter-spacing:.01em}.person-avatar-photo{object-fit:cover}.person-avatar-bracketed{width:auto;min-width:32px;padding:0 .35rem;border-radius:var(--radius-sm);background:hsl(var(--primary)/.12);color:hsl(var(--primary));border:1px solid hsl(var(--primary)/.3);font-size:.68rem}.person-row-link{align-items:center;gap:.65rem}.person-row-identity,.person-row-link{display:flex;text-decoration:none;min-width:0}.person-row-identity{flex-direction:column;gap:.1rem}.person-row-identity:hover{text-decoration:none}.person-row-identity:hover strong{text-decoration:underline}.person-row-address{font-size:.76rem;font-weight:400;color:hsl(var(--muted-foreground));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}.person-row-avatar-btn{position:relative;flex-shrink:0;padding:0;border:none;background:none;border-radius:999px;cursor:pointer;line-height:0}.person-row-avatar-btn:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}.person-row-avatar-btn-selected .person-avatar,.person-row-avatar-btn-selected .person-avatar-bracketed{box-shadow:0 0 0 2px hsl(var(--card)),0 0 0 4px hsl(var(--primary))}.pill{display:inline-flex;align-items:center;width:-moz-fit-content;width:fit-content;font-size:.72rem;font-weight:500;padding:.12rem .55rem;border-radius:999px;line-height:1.5;white-space:nowrap}.pill-neutral{background:hsl(var(--muted));color:hsl(var(--muted-foreground))}.pill-success{background:hsl(var(--success)/.12);color:hsl(var(--success))}.pill-danger{background:hsl(var(--destructive)/.12);color:hsl(var(--destructive))}.eligibility-table-wrap{overflow-x:auto;border:1px solid hsl(var(--border));border-radius:var(--radius-md)}.eligibility-table{width:100%;border-collapse:collapse;font-size:.85rem}.eligibility-table th{height:3rem;text-align:left;padding:0 1rem;border-bottom:1px solid hsl(var(--border));color:hsl(var(--muted-foreground));font-weight:500}.eligibility-table td{padding:1rem;border-bottom:1px solid hsl(var(--border));vertical-align:middle}.eligibility-table tbody tr:last-child td{border-bottom:none}.eligibility-table tbody tr:hover{background:hsl(var(--muted)/.5)}.eligibility-table .empty-cell{text-align:center;color:hsl(var(--muted-foreground));padding:2rem 0}.btn-assign,.btn-remove,.btn-secondary{font:inherit;font-weight:500;font-size:.82rem;padding:.5rem .85rem;height:2.25rem;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;transition:background-color .15s ease,opacity .15s ease;display:inline-flex;align-items:center;justify-content:center}.btn-assign{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.btn-assign:hover:not(:disabled){background:hsl(var(--primary-light))}.btn-assign:disabled{background:hsl(var(--muted));color:hsl(var(--muted-foreground));cursor:not-allowed}.btn-remove{background:hsl(var(--background));color:hsl(var(--destructive));border-color:hsl(var(--border))}.btn-remove:hover:not(:disabled){background:hsl(var(--destructive)/.08)}.btn-remove:disabled{color:hsl(var(--muted-foreground));cursor:not-allowed}.btn-secondary{background:hsl(var(--background));color:hsl(var(--foreground));border-color:hsl(var(--border))}.btn-link{background:none;border:none;padding:0;color:hsl(var(--primary));text-decoration:underline;font-size:.8rem;cursor:pointer}.btn-link:disabled{color:hsl(var(--muted-foreground));cursor:not-allowed;text-decoration:none}.btn-secondary:hover:not(:disabled){background:hsl(var(--accent))}.btn-secondary:disabled{color:hsl(var(--muted-foreground));cursor:not-allowed}.share-link-field{display:flex;flex-direction:column;gap:.35rem;margin-top:.5rem}.share-link-row{display:flex;gap:.5rem;align-items:stretch;max-width:32rem}.share-link-input{flex:1 1;min-width:0;font:inherit;font-size:.85rem;padding:0 .65rem;height:2.25rem;border-radius:var(--radius-md);border:1px solid hsl(var(--input));background:hsl(var(--muted)/.4);color:hsl(var(--foreground))}.share-link-input:focus{outline:none;border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring)/.2)}.share-link-copy-btn{flex-shrink:0;width:2.25rem;height:2.25rem;padding:0;border-radius:var(--radius-md);border:1px solid transparent;background:hsl(var(--primary));color:hsl(var(--primary-foreground));cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background-color .15s ease}.share-link-copy-btn:hover{background:hsl(var(--primary-light))}.share-link-copy-btn-done,.share-link-copy-btn-done:hover{background:hsl(var(--success))}.share-link-note{color:hsl(var(--muted-foreground))}.gender-tabs{display:flex;gap:.4rem;margin-bottom:1.1rem}.gender-tab{font:inherit;font-weight:500;font-size:.82rem;padding:.4rem .9rem;border-radius:999px;border:1px solid hsl(var(--border));background:hsl(var(--background));color:hsl(var(--muted-foreground));cursor:pointer;transition:background-color .15s ease,color .15s ease}.gender-tab:hover{background:hsl(var(--accent));color:hsl(var(--accent-foreground))}.gender-tab-active,.gender-tab-active:hover{background:hsl(var(--primary));border-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.status-pill{display:inline-flex;align-items:center;padding:.15rem .6rem;border-radius:999px;font-size:.72rem;font-weight:600;white-space:nowrap}.status-eligible{background:hsl(var(--success)/.12);color:hsl(var(--success))}.status-not-yet{background:hsl(var(--destructive)/.1);color:hsl(var(--destructive))}.picker-selected-block{margin-top:auto;padding-top:1rem;border-top:1px solid hsl(var(--border))}.picker-selected-heading{font-size:.72rem;font-weight:600;color:hsl(var(--muted-foreground));text-transform:uppercase;letter-spacing:.05em;margin:0 0 .5rem}.picker-pill-row{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.6rem}.picker-pill{gap:.35rem;padding:.25rem .4rem .25rem .65rem;border-radius:999px;background:hsl(var(--accent));color:hsl(var(--accent-foreground));font-size:.8rem;font-weight:500}.picker-pill,.picker-pill button{display:inline-flex;align-items:center}.picker-pill button{justify-content:center;width:1.1rem;height:1.1rem;border:none;border-radius:999px;background:none;color:inherit;cursor:pointer;font-size:.95rem;line-height:1;opacity:.7}.picker-pill button:hover{opacity:1;background:hsl(var(--background)/.4)}.eligibility-controls{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid hsl(var(--border))}.eligibility-controls .field{display:flex;flex-direction:column;gap:.3rem}.eligibility-controls label{font-size:.72rem;font-weight:600;color:hsl(var(--muted-foreground));text-transform:uppercase;letter-spacing:.05em}.eligibility-controls input,.eligibility-controls select{font:inherit;font-size:.85rem;padding:.45rem .6rem;height:2.25rem;border-radius:var(--radius-md);border:1px solid hsl(var(--input));background:hsl(var(--background))}.eligibility-controls .result-count{margin-left:auto;color:hsl(var(--muted-foreground));font-size:.82rem;align-self:center}.form-grid{display:grid;grid-gap:1rem;gap:1rem;max-width:480px}.apply-form{display:grid;grid-gap:1.25rem;gap:1.25rem}.apply-form-grid{max-width:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem 1.5rem}@media (max-width:720px){.apply-form-grid{grid-template-columns:1fr}}.apply-field-span-2{grid-column:1/-1}.apply-checkbox-field{grid-column:1/-1;flex-direction:row;align-items:flex-start;gap:.6rem}.apply-checkbox-label{text-transform:none;letter-spacing:0;font-weight:500;font-size:.85rem;color:hsl(var(--foreground))}.apply-radio-group{display:flex;flex-wrap:wrap;gap:.9rem}.apply-radio-label{display:inline-flex;align-items:center;gap:.35rem;text-transform:none;letter-spacing:0;font-weight:500;font-size:.85rem}.apply-dietary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.4rem;gap:.4rem}@media (max-width:560px){.apply-dietary-grid{grid-template-columns:1fr}}.field,.form-grid .field,.prayer-wall-form-panel .field{display:flex;flex-direction:column;gap:.35rem}.field>label,.form-grid label,.prayer-wall-form-panel label{font-size:.72rem;font-weight:600;color:hsl(var(--muted-foreground));text-transform:uppercase;letter-spacing:.05em}.field>input,.field>select,.field>textarea,.form-grid input,.form-grid select,.form-grid textarea,.prayer-wall-form-panel input,.prayer-wall-form-panel select,.prayer-wall-form-panel textarea{font:inherit;font-size:.85rem;padding:.5rem .65rem;border-radius:var(--radius-md);border:1px solid hsl(var(--input));background:hsl(var(--background))}.eligibility-controls input:focus,.eligibility-controls select:focus,.field>input:focus,.field>select:focus,.field>textarea:focus,.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{outline:none;border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring)/.2)}.form-error{color:hsl(var(--destructive));font-size:.82rem;margin:0}.add-record-card{display:flex;gap:.6rem;align-items:flex-end;flex-wrap:wrap;padding:.85rem 1rem;border:1px solid hsl(var(--border));border-radius:var(--radius-md);background:hsl(var(--muted)/.3)}.add-record-card .field{display:flex;flex-direction:column;gap:.3rem}.add-record-card label{font-size:.68rem;font-weight:600;color:hsl(var(--muted-foreground));text-transform:uppercase;letter-spacing:.05em}.add-record-card input,.add-record-card select{font:inherit;font-size:.85rem;padding:.5rem .65rem;border-radius:var(--radius-md);border:1px solid hsl(var(--input));background:hsl(var(--background))}.add-record-card input:focus,.add-record-card select:focus{outline:none;border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring)/.2)}.address-add-form{display:block;align-items:normal}.address-add-form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-gap:.75rem;gap:.75rem}.address-add-form-grid .church-picker-dropdown,.address-add-form-grid .field{min-width:0}.address-add-form-grid .church-picker-toggle,.address-add-form-grid input,.address-add-form-grid select{width:100%;box-sizing:border-box}.phone-input-field .PhoneInput{--PhoneInput-color--focus:hsl(var(--ring));display:flex;align-items:center;gap:.4rem;padding:.5rem .65rem;border-radius:var(--radius-md);border:1px solid hsl(var(--input));background:hsl(var(--background));min-width:220px}.phone-input-field .PhoneInput--focus{border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring)/.2)}.phone-input-field .PhoneInputInput{font:inherit;font-size:.85rem;border:none;outline:none;background:none;padding:0;min-width:0}.phone-input-field .PhoneInputCountrySelect{font-size:.85rem}.phone-input-field .PhoneInputCountryIcon{flex-shrink:0}.file-upload-field{display:flex;flex-direction:column;gap:.5rem}.file-upload-input-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.file-upload-dropzone{display:flex;align-items:center;gap:.6rem;padding:.85rem 1rem;border:1px dashed hsl(var(--border));border-radius:var(--radius-md);background:hsl(var(--muted)/.3);color:hsl(var(--muted-foreground));font-size:.85rem;cursor:pointer;transition:background-color .12s ease,border-color .12s ease}.file-upload-dropzone:hover{background:hsl(var(--accent));border-color:hsl(var(--primary)/.4)}.file-upload-dropzone strong{color:hsl(var(--foreground))}.file-upload-dropzone-icon{flex-shrink:0;display:flex;color:hsl(var(--muted-foreground))}.file-upload-card{display:flex;align-items:center;gap:.85rem;padding:.75rem .85rem;border:1px solid hsl(var(--border));border-radius:var(--radius-md);background:hsl(var(--card))}.file-upload-thumb{flex-shrink:0;width:44px;height:44px;border-radius:var(--radius-sm);background:hsl(var(--muted)/.5);display:flex;align-items:center;justify-content:center;overflow:hidden;color:hsl(var(--muted-foreground))}.file-upload-thumb img{width:100%;height:100%;object-fit:cover}.file-upload-thumb-clickable{cursor:zoom-in}.file-upload-thumb-clickable:hover{outline:2px solid hsl(var(--ring));outline-offset:1px}.file-upload-thumb-clickable:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:1px}.file-upload-info{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:.2rem}.file-upload-name{font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-upload-meta{font-size:.78rem;color:hsl(var(--muted-foreground))}.file-upload-progress{display:block;width:100%;max-width:220px;height:6px;border-radius:999px;background:hsl(var(--muted));overflow:hidden;margin-top:.15rem}.file-upload-progress-bar{display:block;height:100%;border-radius:999px;background:hsl(var(--primary));transition:width .2s ease}.file-upload-progress-bar[data-indeterminate=true]{width:40%!important;animation:file-upload-indeterminate 1.1s ease-in-out infinite}@keyframes file-upload-indeterminate{0%{transform:translateX(-100%)}to{transform:translateX(250%)}}.file-upload-actions{flex-shrink:0;display:flex;align-items:center;gap:.6rem}.file-upload-remove{display:inline-flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;border-radius:var(--radius-sm);border:none;background:none;color:hsl(var(--muted-foreground));cursor:pointer}.file-upload-remove:hover{background:hsl(var(--accent));color:hsl(var(--foreground))}.file-upload-edit{display:inline-flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;border-radius:var(--radius-sm);color:hsl(var(--primary));cursor:pointer}.file-upload-edit:hover{background:hsl(var(--accent))}.inline-form{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.church-picker-row{display:flex;gap:.5rem;align-items:flex-start}.church-picker-dropdown{position:relative;flex:1 1;min-width:0}.church-picker-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.5rem;font:inherit;font-size:.85rem;padding:.5rem .65rem;border-radius:var(--radius-md);border:1px solid hsl(var(--input));background:hsl(var(--background));color:hsl(var(--foreground));cursor:pointer;text-align:left}.church-picker-toggle:focus{outline:none;border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring)/.2)}.church-picker-toggle span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.church-picker-placeholder,.church-picker-toggle svg{color:hsl(var(--muted-foreground))}.church-picker-toggle svg{flex-shrink:0}.church-picker-panel{position:absolute;z-index:1000;top:calc(100% + .35rem);left:0;width:100%;min-width:260px;background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-md);box-shadow:0 8px 24px rgba(20,33,61,.14);overflow:hidden}.church-picker-search{display:flex;align-items:center;gap:.4rem;padding:.55rem .65rem;border-bottom:1px solid hsl(var(--border));background:hsl(var(--muted));color:hsl(var(--muted-foreground))}.church-picker-search input{flex:1 1;border:none;background:none;font:inherit;font-size:.85rem;color:hsl(var(--foreground))}.church-picker-search input:focus{outline:none}.church-picker-list{list-style:none;margin:0;padding:.25rem;max-height:240px;overflow-y:auto}.church-picker-list li{display:flex;flex-direction:column;gap:.1rem;padding:.45rem .6rem;border-radius:var(--radius-sm);cursor:pointer}.church-picker-list li:hover{background:hsl(var(--accent))}.church-picker-list li strong{font-size:.85rem}.church-picker-list li span{font-size:.75rem;color:hsl(var(--muted-foreground))}.church-picker-empty{padding:.75rem .6rem;font-size:.82rem;color:hsl(var(--muted-foreground));cursor:default}.church-picker-empty:hover{background:none}.church-picker-group-header{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:hsl(var(--muted-foreground));padding:.5rem .6rem .2rem!important;cursor:default!important}.church-picker-group-header:hover{background:none!important}.church-picker-add-btn{flex-shrink:0;width:2.15rem;height:2.15rem;margin-top:0;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid hsl(var(--primary));background:hsl(var(--accent));color:hsl(var(--primary));cursor:pointer}.church-picker-add-btn:hover{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.map-loading{height:260px;display:flex;align-items:center;justify-content:center;color:hsl(var(--muted-foreground));font-size:.85rem;background:hsl(var(--muted));border-radius:var(--radius-md)}.leaflet-container{overflow:hidden;box-sizing:border-box;max-width:100%}.location-picker-footer{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.4rem;color:hsl(var(--muted-foreground))}.community-autocomplete{position:relative}.community-autocomplete-list{position:absolute;z-index:20;top:calc(100% + .3rem);left:0;width:100%;background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-md);box-shadow:0 8px 24px rgba(20,33,61,.14);max-height:220px;overflow-y:auto}.gender-quick-filter{display:inline-flex;padding:.2rem;gap:.2rem;border-radius:var(--radius-md);background:hsl(var(--muted))}.gender-toggle-option{font:inherit;font-size:.85rem;font-weight:500;padding:.4rem 1.1rem;border:none;border-radius:calc(var(--radius-md) - .15rem);background:transparent;color:hsl(var(--muted-foreground));cursor:pointer;transition:background .15s ease,color .15s ease}.gender-toggle-active,.gender-toggle-option:hover:not(.gender-toggle-active){color:hsl(var(--foreground))}.gender-toggle-active{background:hsl(var(--background));box-shadow:0 1px 2px hsl(var(--foreground)/.08)}.dt-toolbar{display:flex;align-items:center;gap:.6rem;margin-bottom:1rem;flex-wrap:wrap}.dt-toolbar-break{display:none}.dt-search{position:relative;flex:1 1;min-width:200px;max-width:340px}.dt-search input{width:100%;font:inherit;font-size:.85rem;padding:.5rem .65rem .5rem 2.1rem;height:2.25rem;border-radius:var(--radius-md);border:1px solid hsl(var(--input));background:hsl(var(--background))}.dt-search input:focus{outline:none;border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring)/.2)}.dt-search-icon{position:absolute;left:.65rem;top:50%;transform:translateY(-50%);color:hsl(var(--muted-foreground));pointer-events:none;display:flex}.dt-search-with-scope input{padding-right:2.1rem}.dt-search-scope-wrap{position:absolute;right:.35rem;top:50%;transform:translateY(-50%)}.dt-search-scope-btn{display:flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;padding:0;border:none;border-radius:var(--radius-sm,4px);background:transparent;color:hsl(var(--muted-foreground));cursor:pointer}.dt-search-scope-btn:hover{background:hsl(var(--muted));color:hsl(var(--foreground))}.dt-search-scope-active{color:hsl(var(--primary))}.dt-search-scope-menu{position:absolute;top:calc(100% + .35rem);right:0;min-width:180px;background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:var(--radius-md);box-shadow:0 8px 24px hsl(var(--foreground)/.12);padding:.3rem;z-index:20;display:flex;flex-direction:column}.dt-search-scope-item{text-align:left;padding:.45rem .6rem;border:none;background:transparent;border-radius:var(--radius-sm,4px);font-size:.85rem;color:hsl(var(--foreground));cursor:pointer}.dt-search-scope-item:hover{background:hsl(var(--muted))}.dt-search-scope-item-active{font-weight:600;color:hsl(var(--primary))}.person-search-spinner{position:absolute;right:.65rem;top:50%;width:14px;height:14px;margin-top:-7px;border-radius:50%;border:2px solid hsl(var(--muted));border-top-color:hsl(var(--primary));animation:person-search-spin .6s linear infinite}@keyframes person-search-spin{to{transform:rotate(1turn)}}.dt-spacer{flex:1 1}.dt-filter-btn{position:relative;display:inline-flex;align-items:center;gap:.4rem;font:inherit;font-size:.82rem;font-weight:500;padding:.5rem .75rem;height:2.25rem;border-radius:var(--radius-md);border:1px solid hsl(var(--border));background:hsl(var(--background));color:hsl(var(--foreground));cursor:pointer}.dt-filter-btn:hover{background:hsl(var(--accent))}.dt-filter-btn.dt-filter-active{border-color:hsl(var(--primary));color:hsl(var(--primary));background:hsl(var(--accent))}.dt-filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.1rem;height:1.1rem;padding:0 .3rem;border-radius:999px;background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-size:.68rem;font-weight:700}.dt-filter-panel{position:absolute;top:calc(100% + .4rem);right:0;z-index:30;width:min(340px,90vw);max-height:min(28rem,calc(100vh - 6rem));background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);box-shadow:var(--shadow-md);padding:1rem;display:flex;flex-direction:column;overflow:hidden}.dt-filter-panel-fields{display:grid;grid-gap:.85rem;gap:.85rem;overflow-y:auto;overflow-x:hidden;padding-right:.2rem;min-height:0}.dt-filter-panel-wrap{position:relative}.dt-shortcut-menu-item{display:block;padding:.4rem .5rem;margin:-.3rem;border-radius:calc(var(--radius) - .2rem);color:hsl(var(--foreground));text-decoration:none;font-size:.85rem}.dt-shortcut-menu-item:hover{background:hsl(var(--muted));text-decoration:none}.dt-filter-field{display:flex;flex-direction:column;gap:.3rem;min-width:0}.dt-filter-field label{font-size:.72rem;font-weight:600;color:hsl(var(--muted-foreground));text-transform:uppercase;letter-spacing:.05em}.dt-filter-field input,.dt-filter-field select{padding:.45rem .6rem;width:100%;box-sizing:border-box}.delivery-resend-target select,.dt-filter-field input,.dt-filter-field select{font:inherit;font-size:.85rem;height:2.1rem;border-radius:var(--radius-md);border:1px solid hsl(var(--input));background:hsl(var(--background));max-width:100%}.delivery-resend-target select{padding:.35rem .6rem;color:hsl(var(--foreground))}.dt-filter-footer{display:flex;justify-content:space-between;align-items:center;margin-top:.85rem;padding-top:.6rem;border-top:1px solid hsl(var(--border));flex-shrink:0}.dt-filter-clear{background:none;border:none;color:hsl(var(--muted-foreground));font-size:.8rem;cursor:pointer;padding:0}.dt-filter-clear:hover{color:hsl(var(--foreground));text-decoration:underline}.date-picker-wrap{position:relative;display:inline-flex;flex-direction:column;gap:.3rem}.date-picker-label{font-size:.72rem;font-weight:600;color:hsl(var(--muted-foreground));text-transform:uppercase;letter-spacing:.05em}.date-picker-trigger{display:inline-flex;align-items:center;gap:.5rem;font:inherit;font-size:.85rem;font-weight:500;padding:.5rem .75rem;height:2.25rem;border-radius:var(--radius-md);border:1px solid hsl(var(--border));background:hsl(var(--background));color:hsl(var(--foreground));cursor:pointer;white-space:nowrap}.date-picker-trigger:hover{background:hsl(var(--accent))}.date-picker-trigger-placeholder{color:hsl(var(--muted-foreground))}.date-picker-panel{position:absolute;z-index:1000;display:flex;align-items:stretch;background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);box-shadow:var(--shadow-md);width:max-content;max-width:calc(100vw - 2rem);overflow-x:auto;overflow-y:hidden}.date-picker-presets{display:flex;flex-direction:column;flex-shrink:0;gap:.1rem;padding:.75rem;border-right:1px solid hsl(var(--border));min-width:130px}.date-picker-presets button{text-align:left;background:none;border:none;font:inherit;font-size:.82rem;padding:.5rem .6rem;border-radius:var(--radius-sm);cursor:pointer;color:hsl(var(--foreground))}.date-picker-presets button:hover{background:hsl(var(--accent))}.date-picker-main{display:flex;flex-direction:column;flex-shrink:0}.date-picker-from-to{display:flex;gap:2rem;padding:.85rem 1.1rem;border-bottom:1px solid hsl(var(--border))}.date-picker-from-to-field{display:flex;flex-direction:column;gap:.15rem}.date-picker-from-to-field label{font-size:.68rem;font-weight:600;color:hsl(var(--muted-foreground));text-transform:uppercase;letter-spacing:.05em}.date-picker-from-to-field span{font-size:.88rem;font-weight:600;color:hsl(var(--foreground))}.date-picker-body,.date-picker-months{display:flex}.date-picker-time-row{display:flex;gap:1.5rem;padding:.85rem 1.1rem;border-top:1px solid hsl(var(--border))}.date-picker-month{padding:.85rem 1.1rem;width:260px}.date-picker-month+.date-picker-month{border-left:1px solid hsl(var(--border))}.date-picker-month-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.6rem;font-size:.85rem}.date-picker-month-title{display:flex;align-items:center;gap:.4rem}.date-picker-year-select-wrap{position:relative;display:inline-flex}.date-picker-year-select-toggle{display:inline-flex;align-items:center;gap:.2rem;font:inherit;font-size:.85rem;font-weight:700;color:hsl(var(--foreground));border:none;background:hsl(var(--muted));border-radius:999px;cursor:pointer;padding:.1rem .55rem}.date-picker-year-select-toggle:hover{color:hsl(var(--primary));background:hsl(var(--accent))}.date-picker-year-select-toggle svg{flex-shrink:0;opacity:.7}.date-picker-year-select-list{position:absolute;top:calc(100% + .3rem);left:50%;transform:translateX(-50%);z-index:10;list-style:none;margin:0;padding:.3rem;width:5rem;max-height:16rem;overflow-y:auto;background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.date-picker-year-select-list button{display:block;width:100%;text-align:center;font:inherit;font-size:.85rem;padding:.35rem 0;border:none;background:none;border-radius:var(--radius-sm);cursor:pointer;color:hsl(var(--foreground))}.date-picker-year-select-list button:hover{background:hsl(var(--accent))}.date-picker-year-select-active{background:hsl(var(--primary));color:hsl(var(--primary-foreground))!important;font-weight:600}.date-picker-year-select-active:hover{background:hsl(var(--primary))!important}.date-picker-nav{display:inline-flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;border-radius:var(--radius-sm);border:none;background:none;color:hsl(var(--muted-foreground));cursor:pointer}.date-picker-nav:hover{background:hsl(var(--accent));color:hsl(var(--foreground))}.date-picker-nav-spacer{width:1.6rem;height:1.6rem}.date-picker-weekdays{text-align:center;font-size:.7rem;font-weight:600;color:hsl(var(--muted-foreground));text-transform:uppercase;letter-spacing:.03em;margin-bottom:.3rem}.date-picker-grid,.date-picker-weekdays{display:grid;grid-template-columns:repeat(7,1fr)}.date-picker-grid{grid-gap:2px;gap:2px}.date-picker-cell{display:inline-flex;align-items:center;justify-content:center;height:2.1rem;border:none;background:none;font:inherit;font-size:.82rem;border-radius:var(--radius-sm);cursor:pointer;color:hsl(var(--foreground))}.date-picker-cell:hover{background:hsl(var(--accent))}.date-picker-cell-empty{cursor:default}.date-picker-cell-empty:hover{background:none}.date-picker-cell-in-range{background:hsl(var(--accent));border-radius:0}.date-picker-cell-selected{color:hsl(var(--primary-foreground));font-weight:600}.date-picker-cell-selected,.date-picker-cell-selected:hover{background:hsl(var(--primary))}.date-picker-cell-today:not(.date-picker-cell-selected){box-shadow:inset 0 0 0 1px hsl(var(--primary))}.date-picker-time-field{display:flex;flex-direction:column;gap:.3rem}.date-picker-time-field label{font-size:.72rem;font-weight:600;color:hsl(var(--muted-foreground));text-transform:uppercase;letter-spacing:.05em}.date-picker-time-inputs{display:flex;align-items:center;gap:.25rem}.date-picker-time-inputs select{font:inherit;font-size:.85rem;padding:.4rem;height:2.1rem;border-radius:var(--radius-md);border:1px solid hsl(var(--input));background:hsl(var(--background))}.date-picker-footer{display:flex;justify-content:space-between;align-items:center;padding:.6rem 1.1rem;border-top:1px solid hsl(var(--border))}.dt-th-sortable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.dt-th-sortable:hover{color:hsl(var(--foreground))}.dt-th-content{display:inline-flex;align-items:center;gap:.3rem}.dt-sort-icon{display:inline-flex;opacity:.4}.dt-sort-icon.dt-sort-active{opacity:1;color:hsl(var(--primary))}.dt-sort-loading{width:12px;height:12px;border:1.6px solid hsl(var(--primary)/.3);border-top-color:hsl(var(--primary));border-radius:50%}.dt-search-spinner,.dt-sort-loading{display:inline-block;animation:dt-spin .6s linear infinite}.dt-search-spinner{width:14px;height:14px;border:1.6px solid hsl(var(--muted-foreground)/.3);border-top-color:hsl(var(--muted-foreground));border-radius:50%}@keyframes dt-spin{to{transform:rotate(1turn)}}.data-table-loading tbody,.dt-cards-loading{opacity:.5;transition:opacity .15s ease;pointer-events:none}.dt-th-sortable[aria-disabled=true]{cursor:default}.dt-footer{justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:1rem;font-size:.82rem;color:hsl(var(--muted-foreground))}.dt-footer,.dt-page-size{display:flex;align-items:center}.dt-page-size{gap:.4rem}.dt-page-size select{font:inherit;font-size:.82rem;padding:.3rem .5rem;border-radius:var(--radius-sm);border:1px solid hsl(var(--input));background:hsl(var(--background))}.dt-pagination{display:flex;align-items:center;gap:.25rem}.dt-page-btn{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;height:2rem;padding:0 .4rem;border-radius:var(--radius-sm);border:1px solid transparent;background:none;color:hsl(var(--foreground));font:inherit;font-size:.82rem;cursor:pointer}.dt-page-btn:hover:not(:disabled){background:hsl(var(--accent))}.dt-page-btn:disabled{color:hsl(var(--muted-foreground)/.5);cursor:not-allowed}.dt-page-btn-active{color:hsl(var(--primary-foreground))}.dt-page-btn-active,.dt-page-btn-active:hover{background:hsl(var(--primary))}.dt-row-actions{display:flex;gap:.3rem;justify-content:flex-end}.dt-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:var(--radius-sm);border:1px solid transparent;background:none;color:hsl(var(--muted-foreground));cursor:pointer}.dt-icon-btn:hover{background:hsl(var(--accent));color:hsl(var(--foreground))}.dt-icon-btn-danger:hover{background:hsl(var(--destructive)/.1);color:hsl(var(--destructive))}.dt-icon-btn-active{color:hsl(var(--primary))}.dt-icon-btn-active:hover{background:hsl(var(--primary)/.1);color:hsl(var(--primary))}.dt-icon-btn:disabled{opacity:.5;cursor:default}.dt-icon-btn:disabled:hover{background:none;color:hsl(var(--muted-foreground))}.dt-icon-btn-active:disabled:hover{background:none;color:hsl(var(--primary))}.dt-icon-spin{animation:dt-icon-spin .7s linear infinite}@keyframes dt-icon-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.dt-icon-spin{animation:none}}.slideout-backdrop{background:hsl(222 32% 8%/.4);z-index:40}.image-preview-backdrop,.slideout-backdrop{position:fixed;inset:0;animation:slideout-fade-in .15s ease}.image-preview-backdrop{z-index:60;background:hsl(222 32% 8%/.85);display:flex;align-items:center;justify-content:center;padding:2rem;cursor:zoom-out}.image-preview-img{max-width:100%;max-height:100%;border-radius:var(--radius-md);box-shadow:var(--shadow-md);cursor:default}.image-preview-close{position:fixed;top:1.25rem;right:1.25rem;width:2.25rem;height:2.25rem;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:none;background:hsl(0 0% 100%/.12);color:white;cursor:pointer}.image-preview-close:hover{background:hsl(0 0% 100%/.2)}.person-edit-modal-backdrop{position:fixed;inset:0;z-index:70;background:hsl(222 32% 8%/.65);display:flex;align-items:center;justify-content:center;padding:1.5rem;animation:slideout-fade-in .15s ease}.person-edit-modal{width:100%;height:100%;background:hsl(var(--background));border-radius:var(--radius-md);box-shadow:var(--shadow-md);display:flex;flex-direction:column;overflow:hidden}.person-edit-modal-header{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.25rem;border-bottom:1px solid hsl(var(--border))}.person-edit-modal-header h2{margin:0;font-size:1.1rem}.person-edit-modal-close{width:2rem;height:2rem;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:none;background:hsl(var(--muted));color:hsl(var(--foreground));cursor:pointer}.person-edit-modal-close:hover{background:hsl(var(--muted-foreground)/.2)}.person-edit-modal-frame{flex:1 1;width:100%;border:none}.slideout-panel{position:fixed;top:0;right:0;bottom:0;width:min(640px,100vw);background:hsl(var(--card));border-left:1px solid hsl(var(--border));box-shadow:var(--shadow-md);z-index:41;display:flex;flex-direction:column;animation:slideout-in .2s cubic-bezier(.16,1,.3,1)}.slideout-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem 1.5rem;border-bottom:1px solid hsl(var(--border));flex-shrink:0}.slideout-header h2{margin:0;font-size:1.05rem}.slideout-close{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:var(--radius-sm);border:none;background:none;color:hsl(var(--muted-foreground));cursor:pointer;flex-shrink:0}.slideout-close:hover{background:hsl(var(--accent));color:hsl(var(--foreground))}.slideout-body{flex:1 1;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;padding:1.5rem}.slideout-body .form-grid{max-width:none}.slideout-body iframe,.slideout-body img{max-width:100%}.slideout-footer{display:flex;justify-content:flex-end;align-items:center;gap:.5rem;padding:1rem 1.5rem;border-top:1px solid hsl(var(--border));flex-shrink:0}.slideout-footer>:first-child{margin-right:auto}.filter-modal-backdrop{inset:0;background:hsl(222 32% 8%/.4);z-index:40}.filter-modal,.filter-modal-backdrop{position:fixed;animation:slideout-fade-in .15s ease}.filter-modal{inset:2rem;margin:auto;max-width:60rem;max-height:calc(100vh - 4rem);background:hsl(var(--card));border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:41;display:flex;flex-direction:column}.filter-modal-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem 1.5rem;border-bottom:1px solid hsl(var(--border));flex-shrink:0}.filter-modal-header h2{margin:0;font-size:1.1rem}.filter-modal-close{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:var(--radius-sm);border:none;background:none;color:hsl(var(--muted-foreground));cursor:pointer;flex-shrink:0}.filter-modal-close:hover{background:hsl(var(--accent));color:hsl(var(--foreground))}.filter-modal-body{flex:1 1;overflow-y:auto;overflow-x:hidden;padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.filter-modal-section{border:1px solid hsl(var(--border));border-radius:var(--radius-md);padding:1rem;margin:0}.filter-modal-section legend{padding:0 .4rem;font-size:.85rem;font-weight:600;color:hsl(var(--foreground))}.filter-modal-section-fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:1rem;gap:1rem;margin-top:.5rem}.filter-modal-footer{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:1rem 1.5rem;border-top:1px solid hsl(var(--border));flex-shrink:0}@media (max-width:640px){.filter-modal{inset:0;max-width:none;max-height:none;border-radius:0}.filter-modal-section-fields{grid-template-columns:1fr}}.person-sections{display:grid;grid-template-columns:220px 1fr;grid-gap:1.25rem;gap:1.25rem;align-items:start}.person-sections-nav{display:flex;flex-direction:column;gap:.2rem;position:-webkit-sticky;position:sticky;top:1.25rem}.person-sections-nav-item{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.55rem .75rem;border:none;border-radius:var(--radius-md);background:none;color:hsl(var(--foreground));font-size:.88rem;text-align:left;cursor:pointer}.person-sections-nav-active,.person-sections-nav-item:hover{background:hsl(var(--accent))}.person-sections-nav-active{color:hsl(var(--primary));font-weight:600}.person-sections-nav-badge{font-size:.72rem;font-weight:600;color:hsl(var(--muted-foreground));background:hsl(var(--muted));border-radius:999px;padding:.05rem .5rem}.person-sections-nav-active .person-sections-nav-badge{color:hsl(var(--primary));background:hsl(var(--primary)/.12)}.person-sections-content{display:grid;grid-gap:1.25rem;gap:1.25rem;min-width:0}@media (max-width:780px){.person-sections{grid-template-columns:1fr}.person-sections-nav{position:static;flex-direction:row;flex-wrap:wrap}}.field-checkbox{display:flex;align-items:center;gap:.5rem;font-size:.85rem;cursor:pointer}.field-checkbox input{width:auto}.copy-field{display:flex;align-items:stretch;gap:0}.copy-field input{flex:1 1;min-width:0;font:inherit;font-size:.8rem;padding:.5rem .65rem;border:1px solid hsl(var(--input));border-right:none;border-radius:var(--radius-md) 0 0 var(--radius-md);background:hsl(var(--muted)/.4);color:hsl(var(--muted-foreground))}.copy-field input:focus{outline:none}.copy-field-btn{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;flex-shrink:0;border:1px solid hsl(var(--input));border-radius:0 var(--radius-md) var(--radius-md) 0;background:hsl(var(--background));color:hsl(var(--muted-foreground));cursor:pointer}.copy-field-btn:hover{background:hsl(var(--accent));color:hsl(var(--foreground))}.form-footer-actions{position:-webkit-sticky;position:sticky;bottom:-1.5rem;display:flex;justify-content:flex-end;gap:.5rem;margin:1.5rem -1.5rem -1.5rem;padding:1rem 1.5rem;background:hsl(var(--card));border-top:1px solid hsl(var(--border))}@keyframes slideout-in{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes slideout-fade-in{0%{opacity:0}to{opacity:1}}.confirm-panel{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;padding:.85rem 1rem;border:1px solid hsl(var(--destructive)/.3);background:hsl(var(--destructive)/.05);border-radius:var(--radius-md);font-size:.85rem}.confirm-panel-stacked{flex-direction:column;align-items:stretch}.rte-wrapper{position:relative}.rte-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.2rem;padding:.4rem;border:1px solid hsl(var(--border));border-bottom:none;border-radius:var(--radius) var(--radius) 0 0;background:hsl(var(--muted)/.4)}.rte-toolbar button{background:transparent;border:none;color:hsl(var(--foreground));padding:.3rem .5rem;border-radius:var(--radius-sm);cursor:pointer;font-size:.8rem;line-height:1}.rte-toolbar button:hover{background:hsl(var(--background))}.rte-toolbar button.is-active{background:hsl(var(--primary)/.15);color:hsl(var(--primary))}.rte-toolbar-divider{width:1px;height:1.2rem;background:hsl(var(--border));margin:0 .3rem}.rte-toolbar+.rte-content{border-radius:0 0 var(--radius-md) var(--radius-md)}.rte-content{min-height:240px;border:1px solid hsl(var(--border));border-radius:var(--radius-md);padding:.85rem 1rem;background:hsl(var(--background))}.rte-content .ProseMirror{outline:none;min-height:220px}.rte-newsletter .rte-content{min-height:520px}.rte-newsletter .rte-content .ProseMirror{min-height:500px}.rte-content .ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:hsl(var(--muted-foreground));float:left;height:0;pointer-events:none}.rte-content table{border-collapse:collapse;width:100%;margin:.5rem 0}.rte-content td,.rte-content th{border:1px solid hsl(var(--border));padding:.4rem .6rem}.rte-content th{background:hsl(var(--muted)/.5)}.rte-content ul[data-type=taskList]{list-style:none;padding-left:.2rem}.rte-content ul[data-type=taskList] li{display:flex;align-items:flex-start;gap:.4rem}.rte-content img{max-width:100%;border-radius:var(--radius-sm)}.rte-content blockquote{border-left:3px solid hsl(var(--border));padding-left:.85rem;color:hsl(var(--muted-foreground))}.rte-content pre{background:hsl(var(--muted)/.5);padding:.6rem .8rem;border-radius:var(--radius-sm);overflow-x:auto}.rte-image-uploading{position:absolute;top:.5rem;right:.5rem;font-size:.75rem;color:hsl(var(--muted-foreground));background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:999px;padding:.2rem .65rem}.rte-bubble-menu{display:flex;gap:.2rem;background:hsl(var(--foreground));border-radius:var(--radius-sm);padding:.25rem;box-shadow:0 4px 14px rgba(0,0,0,.18)}.rte-bubble-menu button{background:transparent;border:none;color:hsl(var(--background));padding:.25rem .55rem;border-radius:var(--radius-sm);cursor:pointer;font-size:.82rem}.rte-bubble-menu button.is-active,.rte-bubble-menu button:hover{background:hsl(var(--background)/.2)}.slash-menu-popup{z-index:1000}.slash-menu{display:flex;flex-direction:column;min-width:190px;max-height:280px;overflow-y:auto;background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:var(--radius-md);box-shadow:0 8px 24px rgba(0,0,0,.18);padding:.3rem}.slash-menu-item{text-align:left;background:transparent;border:none;padding:.4rem .6rem;border-radius:var(--radius-sm);font-size:.85rem;cursor:pointer;color:hsl(var(--foreground))}.slash-menu-item.is-selected,.slash-menu-item:hover{background:hsl(var(--muted))}.slash-menu-empty{padding:.5rem .7rem;font-size:.8rem;color:hsl(var(--muted-foreground))}.doc-source-choice{display:flex;gap:.75rem;margin-bottom:1rem}.doc-source-choice button{flex:1 1;border:1px solid hsl(var(--border));background:hsl(var(--background));border-radius:var(--radius-md);padding:.9rem 1rem;text-align:left;cursor:pointer}.doc-source-choice button:hover{border-color:hsl(var(--primary))}.doc-source-choice strong{display:block;margin-bottom:.2rem}.doc-source-choice span{font-size:.8rem;color:hsl(var(--muted-foreground))}.rte-status{font-size:.78rem;color:hsl(var(--muted-foreground))}:root{--mobile-breakpoint:768px;--topbar-height:56px}.dt-cards{display:none}@media (max-width:768px){.table-wrap{display:none}.dt-cards{display:flex;flex-direction:column;gap:.75rem}.dt-card{position:relative;border:1px solid hsl(var(--border));border-radius:var(--radius-md);background:hsl(var(--card));padding:.85rem 1rem;box-shadow:var(--shadow-sm)}.dt-card-selected{border-color:hsl(var(--primary));background:hsl(var(--primary)/.05)}.dt-card-selected-badge{position:absolute;bottom:.6rem;right:.75rem;width:18px;height:18px;border-radius:999px;background:hsl(var(--primary));color:hsl(var(--primary-foreground));display:inline-flex;align-items:center;justify-content:center}.dt-card-header{display:flex;align-items:flex-start;gap:.6rem;padding-right:2.25rem;padding-bottom:.6rem;margin-bottom:.6rem;border-bottom:1px solid hsl(var(--border))}.dt-card-header input[type=checkbox]{margin-top:.2rem;flex-shrink:0}.dt-card-title{font-weight:600;font-size:.92rem;color:hsl(var(--foreground));min-width:0;word-break:break-word}.dt-card-body{display:grid;grid-gap:.5rem;gap:.5rem}.dt-card-field{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;font-size:.85rem}.dt-card-field-label{color:hsl(var(--muted-foreground));font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;flex-shrink:0}.dt-card-field-value{text-align:right;min-width:0;word-break:break-word}.dt-card-actions{position:absolute;top:.85rem;right:1rem;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.4rem}.dt-toolbar{flex-wrap:wrap;align-items:center}.dt-search{max-width:none;flex-basis:100%}.dt-spacer{display:none}.dt-toolbar-break{display:block;flex-basis:100%;height:0}.dt-footer{flex-direction:column;align-items:stretch;gap:.6rem}.dt-pagination{justify-content:center;flex-wrap:wrap}.dt-page-size{justify-content:space-between}.dt-bulk-bar-desktop-only{display:none}.mobile-bulk-fab-wrap{display:block;position:fixed;right:1.1rem;bottom:1.1rem;z-index:60}.mobile-bulk-fab{width:3rem;height:3rem;border-radius:999px;border:none;background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-size:1rem;font-weight:700;box-shadow:var(--shadow-md);cursor:pointer}.mobile-bulk-fab-dial{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-bottom:.6rem}.mobile-bulk-fab-mini{width:2.5rem;height:2.5rem;border-radius:999px;border:none;background:hsl(var(--card));color:hsl(var(--foreground));display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--shadow-md);cursor:pointer;animation:mobile-bulk-fab-mini-in .15s ease}.mobile-bulk-fab-mini:hover{background:hsl(var(--accent))}@keyframes mobile-bulk-fab-mini-in{0%{opacity:0;transform:translateY(6px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.dt-filter-panel{width:min(340px,calc(100vw - 2rem));right:auto;left:0}.church-picker-panel,.community-autocomplete-list{max-width:90vw}.date-picker-panel{max-width:calc(100vw - 1.5rem)}.dt-row-actions,.section-heading{flex-wrap:wrap}.stats-grid{grid-template-columns:1fr}.page-shell{padding:1rem;gap:1rem}.page-header{padding:.85rem 1rem}.page-header,.page-header-actions{flex-wrap:wrap}.records-list-header{display:none}.records-list li{grid-auto-flow:row;grid-auto-columns:unset;gap:.2rem;align-items:start}.person-row-address{max-width:none;white-space:normal}.slideout-panel{width:100vw}.sidebar-shell{display:none}.mobile-topbar{display:flex;align-items:center;gap:.75rem;position:fixed;top:0;left:0;right:0;width:100%;height:var(--topbar-height);padding:0 1rem;background:hsl(var(--card)/.95);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid hsl(var(--border));z-index:25}.app-main{padding-top:var(--topbar-height)}.mobile-topbar-toggle{flex-shrink:0;width:2.25rem;height:2.25rem;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-md);background:none;color:hsl(var(--foreground));cursor:pointer}.mobile-topbar-toggle:hover{background:hsl(var(--accent))}.mobile-topbar .sidebar-brand-mark{width:28px;height:28px;font-size:.6rem}.mobile-topbar-name{font-weight:600;font-size:.9rem;color:hsl(var(--foreground))}.mobile-sidebar-backdrop{position:fixed;inset:0;background:hsl(222 32% 8%/.4);z-index:40;animation:slideout-fade-in .15s ease}.mobile-sidebar-drawer{position:fixed;top:0;left:0;bottom:0;width:min(300px,85vw);background:hsl(var(--card));border-right:1px solid hsl(var(--border));box-shadow:var(--shadow-md);z-index:41;display:flex;flex-direction:column;animation:mobile-sidebar-in .2s cubic-bezier(.16,1,.3,1)}@keyframes mobile-sidebar-in{0%{transform:translateX(-100%)}to{transform:translateX(0)}}.mobile-sidebar-drawer .sidebar-brand{position:relative}.mobile-sidebar-drawer .sidebar-brand-name{flex:1 1}.mobile-sidebar-close{flex-shrink:0;width:1.75rem;height:1.75rem;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-sm);background:none;color:hsl(var(--muted-foreground));cursor:pointer}.mobile-sidebar-close:hover{background:hsl(var(--accent));color:hsl(var(--foreground))}.mobile-sidebar-drawer nav{flex:1 1;display:flex;min-height:0;overflow-y:auto}.mobile-sidebar-list .sidebar-label{opacity:1;transform:none}.mobile-sidebar-group>button.sidebar-link{width:100%;border:none;background:none;cursor:pointer;font:inherit;text-align:left}.mobile-sidebar-group>button.sidebar-link-active{background:hsl(var(--primary))}.mobile-sidebar-chevron{margin-left:auto;flex-shrink:0;display:flex;color:inherit;transition:transform .15s ease}.mobile-sidebar-chevron-open{transform:rotate(180deg)}.mobile-sidebar-subgroup{list-style:none;margin:.15rem 0 .15rem 1.6rem;padding:0;display:grid;grid-gap:.15rem;gap:.15rem}}.progression-rule-list{display:grid;grid-gap:.6rem;gap:.6rem}.progression-rule-card{border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));transition:border-color .12s ease,box-shadow .12s ease}.progression-rule-card-dragover{border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsl(var(--primary)/.15)}.progression-rule-card-head{display:flex;align-items:center;gap:.6rem;padding:.75rem 1rem;border-bottom:1px solid hsl(var(--border))}.progression-rule-drag-handle{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;color:hsl(var(--muted-foreground));cursor:-webkit-grab;cursor:grab;flex-shrink:0}.progression-rule-drag-handle:active{cursor:-webkit-grabbing;cursor:grabbing}.progression-rule-order-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;height:1.5rem;padding:0 .35rem;border-radius:999px;background:hsl(var(--muted));color:hsl(var(--muted-foreground));font-size:.72rem;font-weight:700;flex-shrink:0}.progression-rule-name{font-size:.95rem}.progression-rule-card-body{padding:.65rem 1rem .8rem;display:grid;grid-gap:.4rem;gap:.4rem}.progression-rule-row{display:flex;gap:.6rem;font-size:.82rem;color:hsl(var(--foreground));align-items:baseline}.update-toast{position:fixed;left:50%;bottom:1.5rem;transform:translateX(-50%);display:flex;align-items:center;gap:.85rem;padding:.75rem 1rem;border-radius:var(--radius-md);background:hsl(var(--foreground));color:hsl(var(--background));box-shadow:var(--shadow-md);font-size:.85rem;z-index:60}.update-toast-reload{flex-shrink:0;border:none;border-radius:var(--radius-sm);padding:.4rem .75rem;background:hsl(var(--primary));color:hsl(var(--primary-foreground));font:inherit;font-weight:600;cursor:pointer}.update-toast-reload:hover{background:hsl(var(--primary-light))}.update-toast-dismiss{flex-shrink:0;border:none;background:transparent;color:hsl(var(--background));opacity:.7;font-size:1.1rem;line-height:1;padding:.15rem .3rem;cursor:pointer}.update-toast-dismiss:hover{opacity:1}.progression-rule-row-label{flex-shrink:0;min-width:80px;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:hsl(var(--muted-foreground))}