:root{--ui-bg:#f3f5f2;--ui-surface:#fff;--ui-soft:#f6f8f5;--ui-ink:#1b332d;--ui-muted:#677870;--ui-line:#e1e8e1;--ui-green:#246b53;--ui-green-soft:#eaf3ed;--ui-radius:16px}
.crm-app,.crm-public{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;color:var(--ui-ink);font-size:14px;line-height:1.55;letter-spacing:0;background:var(--ui-bg)}
.crm-app h1,.crm-app h2,.crm-app h3,.crm-app h4,.crm-app h5,.crm-app h6,.crm-public h1,.crm-public h4{font-family:inherit;color:var(--ui-ink);letter-spacing:-.025em;font-weight:650}
.crm-app h1{font-size:30px}.crm-app h2{font-size:24px}.crm-app h3,.crm-app h4{font-size:18px}.crm-app h5{font-size:16px}
.crm-app .page-body{background:var(--ui-bg)!important;padding-top:26px!important}.crm-app a{color:var(--ui-green)}
.crm-app .page-main-header{box-shadow:none;border-bottom:1px solid var(--ui-line);background:var(--ui-surface)}
.crm-app .main-header-right{background:var(--ui-surface)}.crm-app .main-header-left{gap:14px;align-items:center}.crm-brand{display:flex!important;align-items:center;gap:10px;color:var(--ui-ink)!important;font-size:20px;font-weight:750;white-space:nowrap;line-height:1.1}.crm-brand small{display:block;font-size:9px;font-weight:550;color:var(--ui-muted);letter-spacing:.04em;margin-top:5px}.crm-brand-mark{display:grid;place-items:center;width:36px;height:38px;background:var(--ui-green);color:#fff;border-radius:11px;font-size:23px}
.crm-app .main-nav{background:var(--ui-surface)!important;box-shadow:none!important;border-right:1px solid var(--ui-line)}.crm-nav-caption{padding:24px 28px 10px;font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:var(--ui-muted);font-weight:700}
.crm-app .main-nav .main-navbar .nav-menu>li{margin:3px 13px}.crm-app .main-nav .main-navbar .nav-menu>li>a{border-radius:9px;padding:13px 15px!important;margin:0!important;letter-spacing:0;color:#56665e!important;background:transparent!important;min-height:47px;box-shadow:none!important;display:flex;align-items:center;gap:0}
.crm-app .main-nav .main-navbar .nav-menu>li>a.active,.crm-app .main-nav .main-navbar .nav-menu>li>a:hover{background:var(--ui-green-soft)!important;color:var(--ui-green)!important}.crm-app .main-nav .nav-link span{font-size:14px;font-weight:560}.crm-app .main-nav .nav-link i,.crm-app .main-nav .nav-link svg{width:18px;height:18px;color:inherit;margin-right:12px}.crm-app .main-nav .menu-content{background:transparent!important}.crm-app .main-nav .menu-content a{padding:10px 15px!important;color:var(--ui-muted)}.crm-app .main-nav .menu-content a.active{color:var(--ui-green)!important;font-weight:650}
.crm-page-intro{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:0 auto 25px}.crm-page-intro h1{margin:8px 0 5px}.crm-page-intro p{margin:0;max-width:780px;color:var(--ui-muted);font-size:14px}.crm-breadcrumb{display:flex;gap:10px;align-items:center;font-size:11px;color:var(--ui-muted)}.crm-breadcrumb a{font-weight:700;color:var(--ui-green)}.crm-cycle-chip{border:1px solid #dce8dc;border-radius:12px;padding:11px 14px;display:flex;gap:10px;align-items:center;color:var(--ui-ink)!important;background:var(--ui-surface);font-size:12px;font-weight:650;white-space:nowrap}.crm-cycle-chip small{display:block;color:var(--ui-muted);font-weight:450;font-size:10px;margin-top:2px}.crm-live-dot{width:7px;height:7px;border-radius:50%;background:#58a16b;box-shadow:0 0 0 4px #edf5ed}
.crm-app .card{border:1px solid var(--ui-line);border-radius:var(--ui-radius);box-shadow:0 2px 4px #233a2503;background:var(--ui-surface);overflow:visible;margin-bottom:22px}.crm-app .card .card-header{background:transparent;border-bottom:1px solid var(--ui-line);padding:21px 24px!important;border-radius:var(--ui-radius) var(--ui-radius) 0 0}.crm-app .card .card-header h3,.crm-app .card .card-header h4,.crm-app .card .card-header h5{margin:0}.crm-app .card .card-header p,.crm-app .card .card-header>span{font-size:12px;color:var(--ui-muted);margin:6px 0 0;letter-spacing:0}.crm-app .card .card-body{padding:24px!important}.crm-app .card>.d-flex{padding:0!important}.crm-app .card>.d-flex>.card-header{flex:1;border:0}.crm-app .card>.d-flex>.btn,.crm-app .card>.d-flex>.card-action{margin:16px 24px!important}
.crm-app .btn,.crm-public .btn{border-radius:8px!important;font-size:13px;line-height:1.45;letter-spacing:0;font-weight:600;padding:10px 16px;min-height:40px;box-shadow:none!important;transition:background .15s,border-color .15s}.crm-app .btn-sm{font-size:12px;padding:7px 11px;min-height:34px}.crm-app .btn-primary,.crm-public .btn-primary{background:var(--ui-green)!important;border-color:var(--ui-green)!important;color:#fff!important}.crm-app .btn-primary:hover,.crm-public .btn-primary:hover{background:#18543e!important}.crm-app .btn-light,.crm-app .btn-primary-light{background:var(--ui-soft)!important;border:1px solid var(--ui-line)!important;color:var(--ui-ink)!important}.crm-app .btn-outline-primary{color:var(--ui-green)!important;border:1px solid #a9c8b5!important;background:var(--ui-surface)!important}.crm-app .btn-outline-primary:hover{background:var(--ui-green-soft)!important}.crm-app .btn-danger{background:#a84949!important;border-color:#a84949!important}.crm-app .btn-info{background:#e6f0f1!important;border:1px solid #c5dedf!important;color:#28616a!important}
.crm-app .form-control,.crm-app .form-select,.crm-public .form-control{background:var(--ui-surface);border:1px solid #d9e2da;border-radius:8px;min-height:44px;color:var(--ui-ink);font-family:inherit;font-size:14px;box-shadow:none;padding:10px 12px}.crm-app .form-select{padding-right:30px}.crm-app .form-control:focus,.crm-app .form-select:focus,.crm-public .form-control:focus{border-color:#75a68c;box-shadow:0 0 0 3px #246b5312}.crm-app label{font-weight:550;color:var(--ui-ink)}.crm-app textarea.form-control{min-height:105px}.crm-app .form-group{margin-bottom:20px}.crm-app [readonly],.crm-app select:disabled{background:var(--ui-soft);color:var(--ui-muted)}
.crm-app .modal-content{border:1px solid var(--ui-line);border-radius:16px;box-shadow:0 20px 70px #142d2830;background:var(--ui-surface)}.crm-app .modal-header,.crm-app .modal-footer{padding:18px 24px;border-color:var(--ui-line)}.crm-app .modal-header h4,.crm-app .modal-header h5{font-size:19px}.crm-app .modal-body{padding:24px}.crm-app .modal-header .close{border:0;background:var(--ui-soft);width:32px;height:32px;border-radius:8px;color:var(--ui-muted);font-size:23px;line-height:1}.crm-app .alert{border-radius:10px;padding:15px 18px;font-size:13px;border:1px solid #dce8dd}.crm-app .alert-info,.crm-app .alert-light{background:#edf4ef;color:#375c49;border-color:#d9e7dc}.crm-app .alert-warning{background:#fff6e7;border-color:#f1dfbd;color:#835f26}.crm-app .alert-danger{background:#fbefed;border-color:#eed4cf;color:#9a4940}.crm-app .alert-success{background:#eaf5ec;color:#28613d}.crm-app .badge{letter-spacing:0;font-weight:550;border-radius:6px;padding:5px 8px}
.crm-app .crm-table{font-size:13px}.crm-app .crm-table thead th{font-family:inherit;font-size:11px;color:#6a7c71;background:var(--ui-soft);padding:13px 16px!important;font-weight:650}.crm-app .crm-table tbody td{padding:15px 16px!important;color:var(--ui-ink);border-color:var(--ui-line)}.crm-app .crm-table tbody tr{background:var(--ui-surface)!important}.crm-app .crm-table tbody tr:hover{background:var(--ui-soft)!important}.crm-app .crm-table-tools{border-radius:10px;background:var(--ui-soft);padding:14px;margin-bottom:18px}.crm-app .dataTables_filter input,.crm-app .dataTables_length select{border-radius:8px;background:var(--ui-surface);border-color:var(--ui-line)}.crm-app .dropdown-menu{border:1px solid var(--ui-line);border-radius:10px;box-shadow:0 8px 26px #163a2219;background:var(--ui-surface)}.crm-app .dropdown-item{font-size:13px;color:var(--ui-ink)}
.crm-cycle-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 26px;background:#e9f1e9;border:1px solid #dbe6da;border-radius:16px;margin-bottom:20px}.crm-cycle-panel h2{font-size:29px;margin:4px 0}.crm-cycle-panel h2 span{font-size:15px;font-weight:450;color:#516a59;margin-left:10px;letter-spacing:0}.crm-cycle-panel p{margin:6px 0 0;font-size:12px;color:#58705f}.crm-cycle-select{display:grid;grid-template-columns:minmax(190px,1fr) auto;gap:7px;align-items:center}.crm-cycle-select label{grid-column:1/-1;font-size:11px;color:#58705f}.crm-cycle-select .form-select{font-size:13px}
.crm-app .crm-metric{background:var(--ui-surface);border:1px solid var(--ui-line);border-radius:13px;padding:19px 20px;min-width:0}.crm-app .crm-metric span{font-size:12px;line-height:1.45;color:var(--ui-muted)}.crm-app .crm-metric strong{font-family:inherit;color:var(--ui-ink);font-size:29px;letter-spacing:-.045em;margin-top:9px;font-weight:650;font-variant-numeric:tabular-nums}.crm-membership-metrics{grid-template-columns:repeat(6,minmax(0,1fr))!important}.crm-activity-metrics{grid-template-columns:repeat(6,minmax(0,1fr))!important}.crm-activity-metrics .crm-metric{background:var(--ui-soft);border:0;padding:14px}.crm-activity-metrics .crm-metric strong{font-size:25px}.crm-help{font-size:12px;color:var(--ui-muted);margin:18px 0}.crm-card-header-split{display:flex;align-items:center;justify-content:space-between;gap:15px}
.crm-activity-chart{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px;height:185px;align-items:end;padding:15px 0 0}.crm-chart-month{display:flex;flex-direction:column;align-items:center;gap:5px;min-width:0;font-size:11px;color:var(--ui-muted)}.crm-chart-month small{font-size:10px;font-variant-numeric:tabular-nums}.crm-chart-track{height:125px;width:100%;max-width:42px;background:var(--ui-soft);border-radius:6px;display:flex;flex-direction:column-reverse;overflow:hidden;justify-content:start}.crm-chart-track span{display:block;min-height:0}.crm-chart-births{background:#478766}.crm-chart-adult_joiners{background:#b49b6e}.crm-chart-returns{background:#8caeb0}.crm-chart-legend{display:flex;gap:20px;flex-wrap:wrap;font-size:11px;color:var(--ui-muted);margin-top:15px}.crm-chart-legend span::before{content:'';display:inline-block;width:8px;height:8px;border-radius:2px;background:#478766;margin-right:7px}.crm-chart-legend .crm-legend-joins::before{background:#b49b6e}.crm-chart-legend .crm-legend-returns::before{background:#8caeb0}
.crm-app .crm-edit-heading{background:var(--ui-surface);padding:21px 25px;border:1px solid var(--ui-line);border-radius:14px;margin-bottom:20px}.crm-app .crm-edit-heading h1,.crm-app .crm-edit-heading h2{font-size:23px}.crm-app .crm-edit-description,.crm-app .crm-section-description{color:var(--ui-muted);font-size:12px}.crm-app .crm-back-link{margin-bottom:12px}.crm-app .crm-eyebrow{font-size:10px;letter-spacing:.1em;color:var(--ui-muted)}.crm-app .crm-form-section{padding-bottom:24px}.crm-app .crm-form-actions{background:var(--ui-soft);border-color:var(--ui-line);padding:18px 24px}.crm-app .crm-edit-tabs{gap:20px}.crm-app .crm-edit-tabs>button{font-size:13px}.crm-app .crm-edit-tabs>button.active{color:var(--ui-green);border-color:var(--ui-green)}.crm-app .crm-reconcile-line{border-color:var(--ui-line)}.crm-app .crm-household-payment{background:var(--ui-soft)}.crm-app .crm-status.is-active{background:#e7f2e9;color:#367247}.crm-app .crm-status.is-muted{background:var(--ui-soft);color:var(--ui-muted)}.crm-app .crm-theme-button{background:transparent;border:0;color:var(--ui-muted);min-width:40px;min-height:40px}.crm-app .mobile-toggle{background:transparent;border:0;color:var(--ui-muted);min-height:44px;min-width:44px}.crm-app .footer{background:transparent;border-top:1px solid var(--ui-line);color:var(--ui-muted);font-size:11px;padding:20px 0}.crm-app .top-search-box input{border:0!important;background:transparent!important}.crm-app .select2-container--default .select2-selection{border-color:#d9e2da;border-radius:8px;min-height:44px;background:var(--ui-surface)}
.crm-public{background:radial-gradient(ellipse at 10% 10%,#e5eee1,transparent 55%),#f4f6f2}.crm-public .login-card{background:transparent;min-height:100dvh;padding:30px 18px}.crm-public .login-form{max-width:440px;width:100%;border-radius:20px;padding:38px;background:white;box-shadow:0 14px 60px #2545270d;border:1px solid #e0e8dd}.crm-public .login-form h4{font-size:28px;margin-bottom:7px}.crm-public .login-form h6{font-family:inherit;font-size:13px;font-weight:450;color:#748075;letter-spacing:0;margin-bottom:28px}.crm-public .login-form .btn{width:100%;min-height:46px}.crm-public .input-group-text{background:#f7f9f5;border-color:#d9e2da;color:#6b816d}.crm-public .login-form .invalid-feedback{display:block}
body.dark-only{--ui-bg:#18221d;--ui-surface:#222f27;--ui-soft:#2a382f;--ui-ink:#e4ece5;--ui-muted:#a3b8a9;--ui-line:#394a3e;--ui-green:#8dcaa4;--ui-green-soft:#2a4433}.crm-app.dark-only .crm-cycle-panel{background:#283d2d;border-color:#3a5140}.crm-app.dark-only .crm-cycle-panel p,.crm-app.dark-only .crm-cycle-panel h2 span{color:#adbfaf}.crm-app.dark-only .crm-table thead th{color:#b8cbbb}.crm-app.dark-only .btn-primary{background:#427b53!important;border-color:#427b53!important}.crm-app.dark-only .crm-brand-mark{color:#17291c}.crm-app.dark-only .alert-info,.crm-app.dark-only .alert-light{background:#2a4030;color:#c5dac9;border-color:#3e5a45}
@media(max-width:1200px){.crm-membership-metrics,.crm-activity-metrics{grid-template-columns:repeat(3,minmax(0,1fr))!important}.crm-cycle-panel{flex-wrap:wrap}.crm-cycle-select{flex:1 1 100%}.crm-cycle-panel h2 span{display:block;margin:5px 0 0}}
@media(max-width:991px){.crm-app .page-body{padding-top:18px!important}.crm-app .main-header-left{gap:0}.crm-nav-caption{padding-top:16px}.crm-page-intro{align-items:flex-start;gap:15px}.crm-cycle-chip{padding:9px 11px}.crm-page-intro h1{font-size:27px}.crm-app .main-nav .back-btn{margin-bottom:12px}.crm-app .main-nav .mobile-back{font-size:12px;color:var(--ui-muted)}}
@media(max-width:767px){.crm-page-intro{flex-direction:column;margin-bottom:18px}.crm-page-intro h1{font-size:26px}.crm-page-intro p{font-size:12px}.crm-cycle-chip{font-size:11px;padding:8px 12px;gap:9px}.crm-cycle-chip small{display:inline;margin-left:9px}.crm-cycle-panel{padding:18px;gap:14px}.crm-cycle-panel h2{font-size:25px}.crm-cycle-panel h2 span{font-size:12px}.crm-cycle-select{grid-template-columns:minmax(0,1fr) auto;width:100%}.crm-cycle-select .btn{padding:10px 12px}.crm-app .crm-membership-metrics,.crm-app .crm-activity-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}.crm-app .crm-metric{padding:15px}.crm-app .crm-metric strong{font-size:26px}.crm-app .card .card-header,.crm-app .card .card-body{padding:18px!important}.crm-app .card>.d-flex>.card-header{padding:18px!important}.crm-app .card>.d-flex>.btn,.crm-app .card>.d-flex>.card-action{margin:0 18px 18px!important;width:calc(100% - 36px)}.crm-app .crm-table tbody td[data-label]{padding:9px 0!important}.crm-app .crm-table tbody td[data-label]::before{color:var(--ui-muted)}.crm-card-header-split{flex-direction:column;align-items:stretch}.crm-activity-chart{gap:4px;height:170px}.crm-chart-track{height:115px;max-width:25px;border-radius:4px}.crm-chart-month{font-size:9px}.crm-chart-legend{gap:12px}.crm-app .modal-dialog{margin:10px}.crm-app .modal-body{padding:18px}.crm-app .modal-footer .btn{flex:1 1 40%}.crm-public .login-form{padding:28px 23px}.crm-app .crm-edit-heading{padding:17px}.crm-app .crm-form-actions{padding:14px 18px}.crm-app .crm-table-tools{padding:12px}.crm-app .form-control,.crm-app .form-select{font-size:16px}.crm-app .crm-cycle-select .form-select{min-width:0}.crm-app .crm-collection-toolbar>form{max-width:100%}.crm-app .crm-card-header-split .btn{white-space:normal}}
@media(prefers-reduced-motion:reduce){.crm-app *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.crm-role-options{display:flex;flex-wrap:wrap;gap:12px}.crm-role-option{display:flex;align-items:center;gap:12px;padding:17px 22px;border:1px solid var(--ui-line);border-radius:10px;background:var(--ui-soft);min-width:180px;cursor:pointer}.crm-role-option input{accent-color:var(--ui-green);width:18px;height:18px}.crm-rules-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.crm-rules-grid p{color:var(--ui-muted);font-size:13px;margin-bottom:0}@media(max-width:767px){.crm-rules-grid{grid-template-columns:1fr}.crm-role-option{width:100%}}
.crm-public.dark-only{background:#18221d}.crm-public.dark-only .login-form{background:var(--ui-surface);border-color:var(--ui-line)}.crm-public.dark-only .input-group-text{background:var(--ui-soft);border-color:var(--ui-line);color:var(--ui-muted)}
.crm-app .main-nav .nav-menu .nav-link svg{stroke:currentColor!important;fill:none!important;opacity:1}.crm-app .main-nav .nav-menu .nav-link.active i,.crm-app .main-nav .nav-menu .nav-link.active svg{color:var(--ui-green)!important}.crm-app .crm-table .btn-primary.dropdown-toggle{background:var(--ui-soft)!important;border-color:var(--ui-line)!important;color:var(--ui-ink)!important}
.crm-app .dark-logo-wrapper{display:none!important}
.crm-app.dark-only .page-main-header,.crm-app.dark-only .main-header-right,.crm-app.dark-only .main-header-left,.crm-app.dark-only .card,.crm-app.dark-only .card-header,.crm-app.dark-only .card-body{background:var(--ui-surface)!important;border-color:var(--ui-line)!important}.crm-app.dark-only .page-body,.crm-app.dark-only .page-body-wrapper{background:var(--ui-bg)!important}.crm-app.dark-only .main-nav .nav-menu .nav-link span{color:var(--ui-muted)!important}.crm-app.dark-only .main-nav .nav-menu .nav-link.active span{color:var(--ui-green)!important}.crm-app.dark-only .form-control,.crm-app.dark-only .form-select{background:var(--ui-surface)!important;color:var(--ui-ink)!important;border-color:var(--ui-line)!important}.crm-app.dark-only label,.crm-app.dark-only .crm-cycle-select label{color:var(--ui-muted)!important}.crm-app.dark-only .crm-metric{border-color:var(--ui-line)!important}
.crm-app.dark-only .main-nav .main-navbar .nav-menu>li>a{color:var(--ui-muted)!important}.crm-app.dark-only .main-nav .main-navbar .nav-menu>li>a.active{color:var(--ui-green)!important}
.crm-app .default-according .card-header .btn-link{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;padding:0!important;text-align:left;text-decoration:none;white-space:normal;color:var(--ui-ink);min-height:44px}.crm-deceased-name{font-size:15px;font-weight:650}.crm-deceased-name small{display:block;font-size:11px;font-weight:450;color:var(--ui-muted);margin-top:5px}.crm-deceased-total{font-size:16px;white-space:nowrap;color:var(--ui-green);font-variant-numeric:tabular-nums}.crm-deceased-total>span{margin-left:15px}.crm-cost-total{display:flex;justify-content:space-between;padding:15px 0 0;border-top:1px solid var(--ui-line);font-size:13px;color:var(--ui-muted)}.crm-cost-total strong{color:var(--ui-ink)}@media(max-width:767px){.crm-app .default-according .card-header .btn-link{gap:10px}.crm-deceased-name{font-size:14px}.crm-deceased-total{font-size:14px}.crm-deceased-total>span{margin-left:5px}}

.crm-year-controls{white-space:normal;min-width:0;max-width:420px}.crm-year-controls summary{cursor:pointer}.crm-year-controls .crm-inline-payment{flex-wrap:wrap}.crm-year-controls .crm-inline-payment label{min-width:0;flex:1 1 140px}
@media(max-width:767px){.crm-year-controls{grid-column:1/-1;width:100%;max-width:none}.crm-year-controls .crm-inline-payment{display:flex;flex-direction:column;align-items:stretch}.crm-year-controls .crm-inline-payment label{flex:auto;width:100%}}
