:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{color:#fff8ec;background:#090909;margin:0;font-family:Inter,ui-sans-serif,system-ui,sans-serif}a{color:inherit}.admin-shell{background:radial-gradient(circle at 85% 5%,#b6212633,#0000 28rem),#090909;min-height:100vh;padding:clamp(1rem,4vw,3.5rem)}.admin-header{justify-content:space-between;align-items:flex-end;gap:1rem;max-width:1180px;margin:0 auto 1.5rem;display:flex}.admin-header h1,.auth-card h1{letter-spacing:-.05em;margin:.55rem 0 .5rem;font:700 clamp(2.5rem,7vw,5rem)/.95 Georgia,serif}.admin-header p,.auth-card p,.card-heading p{color:#bbb3a8;margin:0;line-height:1.6}.kicker{color:#e2483d;letter-spacing:.13em;text-transform:uppercase;font-size:.72rem;font-weight:900}.header-actions{color:#bbb3a8;align-items:center;gap:.8rem;font-size:.8rem;display:flex}.header-actions a,.quiet-link{color:#fff8ec;text-underline-offset:4px;text-decoration:underline}.security-note,.stats-grid,.admin-grid,.members-section,.visitor-section,.converted-section,.finance-report-section{width:min(1180px,100%);margin-left:auto;margin-right:auto}.security-note{color:#b9e3cd;background:#5bbf8a14;border:1px solid #5bbf8a40;border-radius:18px;gap:.25rem;margin-bottom:1rem;padding:1rem 1.2rem;display:grid}.security-note span{font-size:.8rem}.portal-navigation{flex-wrap:wrap;gap:.55rem;width:min(1180px,100%);margin:0 auto 1rem;display:flex}.portal-navigation a{color:#ddd5ca;border:1px solid #fff8ec24;border-radius:999px;padding:.65rem .9rem;font-size:.78rem;font-weight:750;text-decoration:none}.portal-navigation a:hover,.portal-navigation a.active{color:#fff8ec;background:#e2483d1f;border-color:#e2483d80}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;margin-bottom:1rem;display:grid}.stats-grid article,.admin-card,.auth-card{background:#191715;border:1px solid #fff8ec1f;border-radius:24px}.stats-grid article{min-width:0;padding:1rem}.stats-grid span{color:#bbb3a8;font-size:.75rem;display:block}.stats-grid strong{overflow-wrap:anywhere;margin-top:.5rem;font:700 clamp(1.25rem,2.6vw,2rem)/1 Georgia,serif;display:block}.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.admin-grid.lists,.members-section,.visitor-section,.converted-section{margin-top:1rem}.admin-card{padding:clamp(1.1rem,3vw,1.6rem)}.card-heading{margin-bottom:1.2rem}.card-heading h2{margin:.45rem 0 .35rem;font:700 1.65rem/1.1 Georgia,serif}.card-heading p{font-size:.8rem}.admin-form{gap:.85rem;display:grid}.admin-form label{color:#ddd5ca;gap:.4rem;font-size:.75rem;font-weight:700;display:grid}.admin-form input,.admin-form select,.admin-form textarea{color:#fff8ec;background:#100f0e;border:1px solid #fff8ec24;border-radius:13px;outline:none;width:100%;padding:.72rem .8rem}.admin-form input:focus,.admin-form select:focus,.admin-form textarea:focus{border-color:#e2483d}.admin-form .check-line{cursor:pointer;background:#ffffff06;border:1px solid #fff8ec1a;border-radius:13px;align-items:center;gap:.6rem;padding:.7rem .8rem;display:flex}.admin-form .check-line input{accent-color:#e2483d;width:1rem;height:1rem}.form-help{color:#918b83;margin:1rem 0 0;font-size:.72rem;line-height:1.55}.compact-form{margin-top:.85rem}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.primary-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#e2483d,#8f171b);border:0;border-radius:999px;justify-content:center;align-items:center;padding:.8rem 1.15rem;font-weight:850;text-decoration:none;display:inline-flex}.secondary-button{color:#fff8ec;cursor:pointer;background:#100f0e;border:1px solid #fff8ec33;border-radius:999px;justify-content:center;align-items:center;padding:.75rem 1rem;font-weight:800;text-decoration:none;display:inline-flex}.secondary-button:hover{border-color:#e2483d}.finance-report-section{margin-bottom:1rem}.finance-report-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.pdf-actions{flex-wrap:wrap;justify-content:flex-end;gap:.55rem;display:flex}.report-filter{background:#121110;border:1px solid #fff8ec1a;border-radius:16px;align-items:end;gap:.7rem;margin-bottom:1.2rem;padding:.8rem;display:flex}.report-filter label{color:#bbb3a8;gap:.35rem;font-size:.7rem;font-weight:750;display:grid}.report-filter input,.report-filter select{color:#fff8ec;background:#090909;border:1px solid #fff8ec24;border-radius:11px;min-width:8rem;padding:.62rem .7rem}.report-period{margin:0 0 .7rem;font:700 1.25rem/1.1 Georgia,serif}.report-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;display:grid}.report-summary-grid article{background:#121110;border:1px solid #fff8ec1a;border-radius:15px;padding:.85rem}.report-summary-grid span{color:#bbb3a8;font-size:.68rem;display:block}.report-summary-grid strong{overflow-wrap:anywhere;margin-top:.45rem;font-size:1rem;display:block}.percentage-meter{background:#fff8ec14;border-radius:999px;height:8px;margin:.7rem 0 1rem;overflow:hidden}.percentage-meter span{border-radius:inherit;background:linear-gradient(90deg,#75d4a1,#e8b748,#e2483d);height:100%;display:block}.report-table-wrap{border:1px solid #fff8ec1a;border-radius:15px;overflow-x:auto}.report-table{border-collapse:collapse;width:100%;min-width:720px;font-size:.74rem}.report-table th,.report-table td{text-align:right;white-space:nowrap;border-bottom:1px solid #fff8ec14;padding:.7rem .75rem}.report-table th:first-child,.report-table td:first-child{text-align:left}.report-table thead{color:#e48d85;background:#100f0e}.report-table tbody tr:hover,.report-table .selected-row{background:#e2483d12}.report-table tfoot{color:#fff8ec;background:#fff8ec0a}.budget-list{gap:.6rem;display:grid}.budget-list article{background:#121110;border:1px solid #fff8ec1a;border-radius:14px;justify-content:space-between;align-items:center;gap:.8rem;padding:.8rem;display:flex}.budget-list article>div:first-child{gap:.22rem;display:grid}.budget-list span{color:#bbb3a8;font-size:.7rem}.budget-actions{justify-items:end;gap:.4rem;display:grid}.demo-report-header h1{max-width:900px;font-size:clamp(2.4rem,6vw,4.4rem)}.demo-notice{color:#f3d38a;background:#e8b74814;border:1px solid #e8b74859;border-radius:18px;gap:.25rem;width:min(1180px,100%);margin:0 auto 1rem;padding:1rem 1.2rem;display:grid}.demo-notice span{color:#d9c99f;font-size:.8rem}.finance-demo-report{width:min(1180px,100%);margin:0 auto}.demo-summary-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:.65rem;margin-bottom:1rem;display:grid}.demo-summary-grid article{background:#121110;border:1px solid #fff8ec1a;border-radius:15px;padding:.9rem}.demo-summary-grid span{color:#bbb3a8;font-size:.68rem;display:block}.demo-summary-grid strong{overflow-wrap:anywhere;margin-top:.45rem;font-size:1rem;display:block}.demo-chart-grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.25fr);gap:1rem;display:grid}.demo-chart-card{background:#121110;border:1px solid #fff8ec1a;border-radius:18px;min-width:0;padding:1rem}.demo-chart-heading{margin-bottom:.8rem}.demo-chart-heading h3{margin:.35rem 0 0;font:700 1.15rem/1.15 Georgia,serif}.demo-pie-layout{grid-template-columns:minmax(150px,.75fr) minmax(0,1.25fr);align-items:center;gap:1rem;display:grid}.demo-pie{aspect-ratio:1;border-radius:50%;width:min(100%,220px);margin:auto;box-shadow:inset 0 0 0 1px #ffffff2e,0 12px 30px #0000003d}.demo-legend{gap:.38rem;display:grid}.demo-legend div{color:#cfc7bc;grid-template-columns:.65rem minmax(0,1fr) auto;align-items:center;gap:.45rem;font-size:.66rem;display:grid}.demo-legend i,.demo-column-legend i{border-radius:3px;width:.62rem;height:.62rem}.demo-legend strong{color:#fff8ec}.demo-column-legend{color:#bbb3a8;justify-content:center;gap:1rem;font-size:.68rem;display:flex}.demo-column-legend span{align-items:center;gap:.4rem;display:inline-flex}.budget-color{background:#91877d}.actual-color{background:#e2483d}.demo-columns{background:repeating-linear-gradient(0deg,#fff8ec0f 0 1px,#0000 1px 25%);border-bottom:1px solid #fff8ec29;align-items:stretch;gap:.35rem;height:270px;margin-top:.8rem;padding:.75rem .3rem 0;display:flex;overflow-x:auto}.demo-bar-group{flex:1;grid-template-rows:minmax(0,1fr) 2.7rem;gap:.4rem;min-width:62px;display:grid}.demo-bars{justify-content:center;align-items:flex-end;gap:4px;display:flex}.demo-bar{border-radius:5px 5px 0 0;width:clamp(12px,34%,24px);min-height:2px}.demo-bar.budget{background:#91877d}.demo-bar.actual{background:linear-gradient(#e9665d,#aa1f24)}.demo-bar-group small{color:#bbb3a8;text-align:center;font-size:.58rem;line-height:1.15}.demo-report-table{min-width:900px}.demo-report-table th:last-child,.demo-report-table td:last-child{text-align:left}.record-list{display:grid}.record-list article{border-bottom:1px solid #fff8ec1a;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 0;display:flex}.record-list article:last-child{border-bottom:0}.record-list article>div:first-child{gap:.18rem;display:grid}.record-list span,.record-list small,.member-summary span,.member-summary small,.birthday-list small{color:#bbb3a8;font-size:.7rem}.record-list strong{font-size:.9rem}.record-actions{justify-items:end;gap:.45rem;display:grid}.finance-list{gap:.65rem;display:grid}.finance-record{background:#121110;border:1px solid #fff8ec1a;border-radius:16px;overflow:hidden}.finance-record summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem;list-style:none;display:flex}.finance-record summary::-webkit-details-marker{display:none}.finance-record summary>div{gap:.2rem;min-width:0;display:grid}.finance-record summary span,.finance-record summary small{color:#bbb3a8;font-size:.7rem}.finance-record summary>strong{white-space:nowrap}.finance-record[open] summary{border-bottom:1px solid #fff8ec1a}.finance-detail-body{gap:.85rem;padding:1rem;display:grid}.finance-detail-body>div{min-width:0}.finance-detail-body span{color:#e48d85;letter-spacing:.06em;text-transform:uppercase;margin-bottom:.25rem;font-size:.66rem;font-weight:800;display:block}.finance-detail-body p{color:#ddd5ca;overflow-wrap:anywhere;margin:0;font-size:.82rem;line-height:1.55}.finance-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;display:grid}.finance-detail-body form{justify-self:end}.amount-positive,.balance-positive{color:#75d4a1}.amount-negative,.balance-negative{color:#ff8a81}.delete-button{color:#ff8a81;cursor:pointer;background:0 0;border:1px solid #e2483d59;border-radius:999px;padding:.45rem .7rem}.empty-copy{color:#bbb3a8}.birthday-list{gap:.2rem;display:grid}.birthday-list article{border-bottom:1px solid #fff8ec1a;align-items:center;gap:.8rem;padding:.7rem 0;display:flex}.birthday-list article:last-child{border-bottom:0}.birthday-list article>div:last-child{gap:.18rem;display:grid}.birthday-date{text-align:center;background:#e2483d1f;border-radius:13px;width:3.2rem;min-width:3.2rem;padding:.5rem .2rem}.birthday-date strong,.birthday-date span{display:block}.birthday-date span{color:#e48d85;text-transform:uppercase;font-size:.64rem}.member-list{gap:.55rem;display:grid}.member-record{background:#121110;border:1px solid #fff8ec1a;border-radius:18px;overflow:hidden}.member-name-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:.95rem 1rem;list-style:none;transition:background .18s;display:flex}.member-name-summary::-webkit-details-marker{display:none}.member-name-summary:hover{background:#fff8ec09}.member-name-summary:focus-visible{outline-offset:-3px;outline:2px solid #e2483d}.member-name-summary strong{overflow-wrap:anywhere;min-width:0;font-size:.92rem}.member-toggle-arrow{color:#ffaaa3;border:1px solid #fff8ec29;border-radius:50%;place-items:center;width:30px;min-width:30px;height:30px;font-size:1.35rem;line-height:1;transition:transform .18s,background .18s;display:grid}.member-record[open] .member-name-summary{background:#e2483d0e;border-bottom:1px solid #fff8ec1a}.member-record[open] .member-toggle-arrow{background:#e2483d1f;transform:rotate(90deg)}.member-record-body{padding:1rem}.member-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1rem;margin:0;display:grid}.member-detail-grid>div{border-bottom:1px solid #fff8ec14;min-width:0;padding:.7rem 0}.member-detail-grid .member-detail-wide{grid-column:1/-1}.member-detail-grid dt,.member-record-notes span{color:#e48d85;letter-spacing:.055em;text-transform:uppercase;margin-bottom:.24rem;font-size:.64rem;font-weight:800}.member-detail-grid dd{color:#fff8ec;overflow-wrap:anywhere;margin:0;font-size:.8rem;line-height:1.45}.member-record-notes{background:#ffffff06;border:1px solid #fff8ec17;border-radius:14px;margin-top:.9rem;padding:.85rem}.member-record-notes span{display:block}.member-record-notes p{color:#ddd5ca;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:.8rem;line-height:1.55}.badge-inline{white-space:nowrap;border:1px solid #fff8ec24;border-radius:999px;width:fit-content;padding:.35rem .55rem;display:inline-flex}.badge-inline.active{color:#ffaaa3;background:#e2483d1a;border-color:#e2483d66}.member-controls{align-items:flex-start;gap:.7rem;margin-top:.8rem;display:flex}.member-editor{flex:1}.member-editor summary{color:#ddd5ca;cursor:pointer;border:1px solid #fff8ec2e;border-radius:999px;width:fit-content;padding:.45rem .7rem;font-size:.75rem}.member-editor[open] summary{margin-bottom:1rem}.staff-list{gap:.75rem;display:grid}.staff-list article{background:#121110;border:1px solid #fff8ec1a;border-radius:16px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.7rem;padding:.9rem;display:grid}.staff-list article>div:first-child{gap:.22rem;display:grid}.staff-list small{color:#bbb3a8;font-size:.7rem}.staff-list .member-editor{grid-column:1/-1}.visitor-list{gap:.75rem;display:grid}.visitor-record{background:#121110;border:1px solid #fff8ec1a;border-radius:18px;padding:1rem}.visitor-summary{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.visitor-summary>div:first-child{gap:.2rem;display:grid}.visitor-summary span,.visitor-summary small,.course-grid small{color:#bbb3a8;font-size:.7rem}.visitor-badges{flex-wrap:wrap;justify-content:flex-end;gap:.4rem;display:flex}.badge-inline.consent{color:#9ee1bd;background:#5bbf8a1a;border-color:#5bbf8a66}.badge-inline.converted{color:#f3d38a;background:#e8b7481a;border-color:#e8b74873}.contact-actions{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.8rem;display:flex}.contact-button{color:#fff8ec;border:1px solid #fff8ec2e;border-radius:999px;padding:.48rem .72rem;font-size:.75rem;text-decoration:none}.contact-button:hover{border-color:#e2483d}.contact-note{color:#bbb3a8;font-size:.72rem}.service-counts{gap:.55rem;display:grid}.service-count{background:#121110;border:1px solid #fff8ec1a;border-radius:14px;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem;display:flex}.service-count span{color:#ddd5ca;font-size:.78rem}.service-count strong{color:#ffaaa3;font:700 1.35rem/1 Georgia,serif}.subheading{color:#ddd5ca;text-transform:uppercase;letter-spacing:.08em;margin:1.3rem 0 .55rem;font-size:.8rem}.month-list{display:grid}.month-list div{color:#bbb3a8;text-transform:capitalize;border-bottom:1px solid #fff8ec14;justify-content:space-between;gap:1rem;padding:.58rem 0;font-size:.78rem;display:flex}.month-list div:last-child{border-bottom:0}.course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.course-grid article{background:#121110;border:1px solid #fff8ec1a;border-radius:18px;gap:.85rem;padding:1rem;display:grid}.course-grid article>div:first-child{gap:.22rem;display:grid}.course-status{gap:.45rem;display:grid}.course-status span{color:#bbb3a8;justify-content:space-between;gap:.8rem;font-size:.72rem;display:flex}.course-status strong{color:#fff8ec}.auth-card{text-align:center;width:min(540px,100%);margin:8vh auto 0;padding:clamp(2rem,7vw,4rem)}.auth-card img{width:78px;height:78px;margin:0 auto 1.4rem}.auth-card .primary-button{margin:1.5rem 0 1rem}.auth-card .quiet-link{color:#bbb3a8;font-size:.8rem;display:block}@media (max-width:920px){.stats-grid,.report-summary-grid,.demo-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.demo-chart-grid{grid-template-columns:1fr}}@media (max-width:760px){.admin-header{flex-direction:column;align-items:flex-start}.header-actions{justify-content:space-between;width:100%}.admin-grid,.form-row,.member-detail-grid{grid-template-columns:1fr}.member-detail-grid .member-detail-wide{grid-column:auto}.member-controls{flex-direction:column}.staff-list article{grid-template-columns:1fr}.staff-list .member-editor{grid-column:auto}.visitor-summary{flex-direction:column}.visitor-badges{justify-content:flex-start}.course-grid,.finance-detail-grid{grid-template-columns:1fr}.finance-report-heading,.report-filter{flex-direction:column;align-items:stretch}.pdf-actions{justify-content:stretch}.pdf-actions a{flex:1}.report-filter input,.report-filter select{width:100%}.budget-list article{flex-direction:column;align-items:flex-start}.budget-actions{justify-items:start;width:100%}.demo-pie-layout{grid-template-columns:1fr}.demo-pie{width:min(75vw,240px)}}@media (max-width:420px){.stats-grid,.report-summary-grid,.demo-summary-grid{grid-template-columns:1fr}.record-list article{align-items:flex-start}}
