:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#000;color:#f8f8f8}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:#000;overflow-x:hidden}button,input,textarea,select{font:inherit}.app-shell{min-height:100vh;padding:calc(env(safe-area-inset-top) + 16px) 18px calc(env(safe-area-inset-bottom) + 32px);background:#000}.attendance-shell{height:100svh;padding:max(env(safe-area-inset-top),0px) max(env(safe-area-inset-right),0px) max(env(safe-area-inset-bottom),0px) max(env(safe-area-inset-left),0px);overflow:hidden}.home-page{min-height:calc(100vh - 120px);display:grid;align-content:space-between;gap:28px}.app-shell:not(.attendance-shell) main{width:min(960px,100%);margin:0 auto}.attendance-shell main{width:100%;height:100svh}h1,h2{margin:0 0 16px;border:1px solid #7b00b8;border-radius:8px;padding:12px 14px;color:#fff;text-transform:uppercase;font-weight:900;letter-spacing:0}h1,.center-header{font-size:2.15rem}h1{background:#4a006f}h2{font-size:1.45rem;background:#580083}p,label,input,textarea,select{font-size:1rem;line-height:1.45}.center-header{text-align:center}.subheader{display:block;margin:0 0 16px;color:#fff;text-transform:uppercase;font-size:1.12rem;font-weight:800}.home-menu{display:grid;gap:14px;padding-top:18px}.home-logo{justify-self:center;width:min(260px,72vw);height:min(260px,72vw);object-fit:contain}.splash-screen{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:max(28px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(28px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));background:#000}.splash-logo{width:min(72vw,420px);max-height:min(72vh,420px);object-fit:contain}button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;border:0;border-radius:8px;padding:13px 18px;background:#6f00a6;color:#fff;text-transform:uppercase;font-weight:900;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}.icon-button{width:42px;min-height:42px;padding:0;background:#171717;color:#fff}.secondary{background:#222;color:#fff;border:1px solid #444}.danger{background:#b42332;color:#fff}.page,.form-stack,.content-section{display:grid;gap:18px}.content-section{padding-top:8px}label{display:grid;gap:8px;color:#f8f8f8}input,textarea,select{width:100%;border:1px solid #3f3f46;border-radius:8px;padding:13px 14px;background:#101010;color:#fff}.input-with-button{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.input-with-button button{min-height:auto;padding:0 14px}textarea{resize:vertical}.checkbox-grid{display:grid;gap:10px}.check-row{display:grid;grid-template-columns:24px 1fr;align-items:start;gap:12px;padding:12px;border:1px solid #2f2f35;border-radius:8px;background:#0b0b0d}.check-row input{width:20px;height:20px;margin:2px 0 0;accent-color:#7b00b8}.required-consent{align-items:start}.notice{margin-bottom:18px;border:1px solid #7b00b8;border-radius:8px;padding:12px 14px;background:#161020;color:#fff;font-weight:700}.record-list{display:grid;gap:14px}.record-card{border:1px solid #2f2f35;border-radius:8px;padding:16px;background:#0b0b0d}.record-card p{margin:10px 0 0}.report-list{margin:12px 0 0;padding-left:22px}.report-list li{margin:8px 0;line-height:1.35}.setup-details{border:1px solid #2f2f35;border-radius:8px;padding:14px;background:#0b0b0d}.setup-details summary{cursor:pointer;color:#fff;text-transform:uppercase;font-weight:900}.setup-details li{margin:8px 0;line-height:1.35}.setup-details[open]{display:grid;gap:16px}.logout-bottom{margin-top:12px}.post-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;color:#7b00b8;font-weight:800}.additional{color:#d8d8d8}.admin-heading,.button-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.button-row button{flex:1 1 180px}.admin-actions{justify-content:flex-end}.admin-actions button{flex:0 1 auto}.attendance-panel{width:100%;height:100svh;display:grid;place-items:center;padding:0;background:#000;overflow:hidden}.attendance-background-stage{position:relative;width:min(100vw,calc(100svh * 1131 / 628));aspect-ratio:1131 / 628}.attendance-background-image{width:100%;display:block;aspect-ratio:1131 / 628;object-fit:contain}.attendance-hotspot{position:absolute;min-height:0;border:0;border-radius:0;padding:0;background:transparent;color:transparent;box-shadow:none;opacity:0}.new-user-hotspot{left:.88%;top:27.87%;width:31.56%;height:58.92%}.return-user-hotspot{left:66.93%;top:27.87%;width:31.56%;height:58.92%}.admin-settings-hotspot{left:76.22%;top:88.38%;width:22.19%;height:11.46%}.attendance-form-panel{width:min(720px,100%);justify-self:center;align-self:end;border:4px solid #fff;border-radius:12px;padding:clamp(12px,2vh,18px);background:#060606}.attendance-form-page{width:100%;height:100svh;display:grid;grid-template-rows:auto 1fr;align-items:center;gap:18px;padding:calc(env(safe-area-inset-top) + 20px) clamp(14px,4vw,36px) calc(env(safe-area-inset-bottom) + 24px);background:#000;overflow:hidden}.attendance-form-page .attendance-form-panel{align-self:center}.form-back-button{justify-self:start;min-height:48px;border:3px solid #fff;background:#050505}.settings-page h1{border:0;padding:0;background:transparent;color:#fff;text-transform:none}.settings-page h2{border-color:#fff;background:#fff;color:#000}.collapsible-settings{gap:16px}.collapsible-settings summary{cursor:pointer;border:1px solid #fff;border-radius:8px;padding:12px 14px;background:#fff;color:#000;text-transform:uppercase;font-size:1.45rem;font-weight:900}.collapsible-settings[open]{display:grid}.settings-greeting{text-align:center}.date-report-button{min-height:64px;display:flex;justify-content:space-between;border:2px solid #fff;background:#080808;color:#fff}.full-report-button,button.full-report-button{width:min(520px,100%);justify-self:center;margin-top:8px;background:#15803d;color:#fff}.report-page{min-height:100svh;width:100%;max-width:1131px;margin:0 auto;padding:0 0 28px;background:#000;color:#fff;overflow-x:hidden;overflow-y:auto}.report-logo{display:block;width:clamp(132px,16vw,186px);margin:0 auto 18px}.report-back-button{position:absolute;top:31px;left:max(0px,calc((100vw - 1131px)/2));min-height:70px;border:4px solid #fff;border-radius:8px;padding:6px 12px;background:#050505;color:#fff;text-transform:uppercase;font-size:clamp(1rem,2vw,1.35rem);line-height:1.35}.report-title{width:calc(100% - 28px);margin:0 auto 18px;border:10px solid #fff;border-radius:22px;padding:12px 16px;background:#2a0039;color:#fff;text-align:center;text-transform:uppercase;font-size:clamp(1.8rem,4vw,2.75rem);line-height:1.1;overflow-wrap:normal}.full-report-title{display:grid;gap:2px}.full-report-title span:last-child{font-weight:500}.summary-instructions{margin:0 auto 18px;padding:0 12px;text-align:center;font-size:clamp(1rem,2.35vw,1.62rem);line-height:1.3}.summary-instructions .nowrap{display:block;white-space:nowrap}.report-status-message{margin:-6px auto 16px;padding:0 12px;text-align:center;color:#fff;font-size:1rem}.report-status-message.error{color:#ffd4d4}.month-select-row{display:flex;justify-content:center;gap:30px;margin-bottom:32px}.report-select-wrap{width:min(356px,40vw)}.year-select-wrap{width:min(204px,24vw)}.report-select-wrap span{position:absolute;width:1px;height:1px;overflow:hidden}.report-select-wrap select{height:58px;border:4px solid #fff;border-radius:20px;padding:0 24px;background:#7b00d8;color:#fff;text-align:center;text-transform:uppercase;font-size:clamp(1.6rem,3.5vw,2.35rem);font-weight:900}.summary-week-list{display:grid;gap:40px;padding:0 26px}.summary-week-row{min-height:60px;display:flex;justify-content:space-between;border:4px solid #fff;border-radius:0;padding:6px 18px;background:#050505;color:#fff;text-transform:none;font-size:clamp(1.45rem,3.2vw,2.1rem);font-weight:400;line-height:1}.summary-week-row span:last-child{text-transform:uppercase}.summary-full-report-button{display:block;width:min(292px,72vw);min-height:98px;margin:66px auto 0;border:4px solid #fff;border-radius:9px;background:#050505;color:#fff;text-transform:uppercase;font-size:clamp(1rem,2vw,1.42rem);line-height:1.28}.attendance-detail-report{padding-bottom:22px}.report-date-group{margin-top:12px}.report-date-header{display:flex;justify-content:space-between;align-items:center;border:10px solid #580083;padding:12px 16px;background:linear-gradient(90deg,#1d1d1d,#666);color:#fff;text-transform:uppercase;font-size:clamp(1.8rem,3.7vw,2.55rem);font-weight:900;line-height:1}.report-date-actions{display:inline-flex;align-items:center;gap:18px}.report-add-button{min-height:46px;border:3px solid #fff;border-radius:8px;padding:6px 14px;background:#000;color:#fff;text-transform:uppercase;font-size:clamp(1rem,2vw,1.25rem)}.attendance-record-table{width:calc(100% - 102px);margin:0 0 0 52px;border-left:4px solid #fff;border-right:4px solid #fff}.attendance-record-row{width:100%;min-height:66px;display:flex;justify-content:space-between;border-top:4px solid #fff;border-radius:0;padding:8px;background:#000;color:#fff;text-align:left;text-transform:none;font-size:clamp(1.5rem,3vw,2rem);font-weight:400}.attendance-record-row:last-child{border-bottom:4px solid #fff}.attendance-record-row.is-purple{background:#580083}.empty-report-message{padding:24px;text-align:center;font-size:1.4rem}.full-report-total{width:min(846px,calc(100% - 24px));display:flex;justify-content:space-between;align-items:center;gap:16px;margin:88px 10px 0 auto;border:10px solid #580083;padding:8px 16px;background:#fff;color:#000;text-transform:uppercase;font-size:clamp(1.5rem,3.2vw,2.3rem);font-weight:900;line-height:1.05}.full-report-total small{font-size:.78em;font-weight:500}.record-edit-panel button{border:2px solid #fff;border-radius:8px;background:#6f00a6;color:#fff}.record-edit-panel h2{border-color:#fff;background:#2a0039;color:#fff;text-transform:none}.record-edit-panel .danger{background:#8b0000}.record-edit-panel .secondary{background:#222}.pin-pad{display:grid;gap:clamp(6px,1.5vh,12px)}.pin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(6px,1.5vh,10px)}.pin-grid button{min-height:clamp(42px,9vh,58px);padding:8px 10px;font-size:clamp(1rem,3.5vh,1.25rem)}.pin-grid .enter-button{background:#15803d;color:#fff}.exit-attendance{display:grid;gap:12px;border-top:1px solid #2f2f35;padding-top:18px}.modal-scrim{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:max(10px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));background:#000000d1;overflow:auto}.modal-panel{width:min(520px,100%);max-height:calc(100svh - 20px);display:grid;gap:clamp(8px,2vh,18px);border:1px solid #3f3f46;border-radius:8px;padding:clamp(10px,2vh,18px);background:#080808;overflow:auto}.modal-panel h2{margin-bottom:0;padding:clamp(8px,1.8vh,12px) 12px;font-size:clamp(1.1rem,4vh,1.45rem)}.birthday-message-scrim{z-index:30;background:#000000e6}.birthday-message-panel{width:min(1180px,calc(100vw - 24px));max-height:calc(100svh - 24px);display:grid;gap:clamp(10px,2vh,18px);justify-items:center}.birthday-message-panel img{display:block;width:100%;max-height:calc(100svh - 112px);object-fit:contain;border-radius:6px}.birthday-message-panel button{min-height:54px;border:4px solid #fff;border-radius:10px;padding:10px 22px;background:#2a0039;color:#fff;text-transform:uppercase;font-size:clamp(1rem,2.4vw,1.35rem);font-weight:900}.compact{margin-top:4px}@media(min-width:680px){.checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:820px)and (orientation:portrait){.attendance-panel{gap:22px;padding:clamp(14px,4vw,28px) clamp(10px,3vw,22px) 22px}.attendance-welcome{border-width:3px;border-radius:18px;font-size:clamp(1.45rem,5.5vw,2.45rem)}.attendance-choice-stage{grid-template-columns:1fr;justify-items:center;gap:18px}.attendance-choice-card{width:min(360px,92vw);aspect-ratio:1}.attendance-center-logo{width:min(230px,58vw);order:-1}.returning-choice-wrap{justify-items:center}.admin-settings-button{justify-self:center}}@media(orientation:landscape)and (max-height:620px){.app-shell{padding:calc(env(safe-area-inset-top) + 10px) 16px calc(env(safe-area-inset-bottom) + 16px)}.attendance-shell{padding:0}.attendance-panel{height:100svh;gap:clamp(10px,2.2vh,16px);padding:clamp(10px,2.2vh,18px) clamp(8px,1.4vw,16px) clamp(6px,1.4vh,10px)}.attendance-welcome{border-width:4px;border-radius:20px;padding:clamp(5px,1vw,10px) clamp(16px,2.2vw,28px);font-size:clamp(1.45rem,3.1vw,2.45rem)}.attendance-choice-stage{grid-template-columns:minmax(190px,31vw) minmax(160px,26vw) minmax(190px,31vw);gap:clamp(14px,4vw,52px)}.attendance-choice-card{height:clamp(174px,45vh,300px)}.attendance-center-logo{width:min(100%,clamp(150px,23vw,260px))}.admin-settings-button{min-height:clamp(48px,9vh,68px);grid-template-columns:40px auto;gap:10px;border-width:4px;padding:6px 10px;font-size:clamp(.82rem,1.5vw,1.18rem)}.admin-settings-button .settings-wheel{width:36px;height:36px}.attendance-form-page{height:100svh;grid-template-rows:auto minmax(0,1fr);gap:clamp(8px,2vh,14px);padding:clamp(8px,2vh,16px) clamp(14px,4vw,36px)}.attendance-form-panel{width:min(760px,78vw);gap:clamp(8px,1.8vh,14px);padding:clamp(10px,2vh,16px)}.attendance-form-panel h1{margin-bottom:2px;padding:8px 12px;font-size:clamp(1.45rem,3.2vw,2rem)}.attendance-form-panel label,.attendance-form-panel input{font-size:clamp(.92rem,1.6vw,1rem)}.attendance-form-panel input{padding:10px 12px}.attendance-form-panel button{min-height:46px;padding:9px 14px}.splash-logo{width:min(52vw,380px);max-height:min(78vh,380px)}}.member-search-wrap{width:min(760px,calc(100% - 52px));margin:0 auto 28px}.member-search-wrap label{font-size:1.15rem;font-weight:900;text-transform:uppercase}.member-record-list{gap:18px}.member-record-row{font-size:clamp(1.25rem,2.7vw,1.85rem)}.member-record-total{margin:24px auto 28px}.member-detail-table{margin-top:20px}.member-filter-row{width:min(940px,calc(100% - 52px));display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 auto 22px}.member-filter-row label{font-weight:900;text-transform:uppercase}.member-filter-row input,.member-filter-row select{border:4px solid #fff;background:#050505;font-weight:800;text-transform:none}@media(max-width:720px){.member-filter-row{grid-template-columns:1fr}}.member-birthday-line{margin:0 auto 18px;text-align:center;font-size:clamp(1.2rem,2.5vw,1.65rem);font-weight:900;text-transform:uppercase}.member-action-row{width:min(760px,calc(100% - 52px));display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:0 auto 24px}.member-action-row button{min-width:180px}.member-list-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:stretch}.member-list-item .member-record-row{width:100%}.member-row-actions{display:flex;gap:8px}.member-row-actions button{min-height:60px;min-width:92px;border:4px solid #fff;border-radius:0;padding:6px 10px;background:#111;font-size:1rem}.member-row-actions .danger,.member-action-row .danger{background:#8b0000}@media(max-width:820px){.member-list-item{grid-template-columns:1fr}.member-row-actions button{flex:1}}.member-attendance-item{border-top:4px solid #fff}.member-attendance-item .attendance-record-row{border-top:0}.member-attendance-item:last-child{border-bottom:4px solid #fff}.member-attendance-item:last-child .attendance-record-row{border-bottom:0}.member-detail-table{border-bottom:0}.member-search-wrap{display:grid;grid-template-columns:2fr 1fr;gap:14px}.member-archive-line{margin:-8px auto 18px;text-align:center;color:#ffd4d4;font-size:clamp(1rem,2vw,1.35rem);font-weight:900;text-transform:uppercase}@media(max-width:720px){.member-search-wrap{grid-template-columns:1fr}}.service-name-label{display:block;margin-top:6px;font-size:.58em;font-weight:700;text-transform:none}.member-mini-record-list{display:grid;gap:8px}.member-mini-record-row{display:flex;justify-content:space-between;gap:12px;border:1px solid #3f3f46;border-radius:8px;padding:10px;background:#050505}.member-mini-record-row span:last-child{color:#d8d8d8;text-align:right}.report-service-filter{width:min(520px,calc(100% - 52px));grid-template-columns:1fr;margin-bottom:30px}.attendance-form-page{align-items:start;overflow:auto}.attendance-form-page .attendance-form-panel{align-self:start;margin-bottom:24px}.contact-location-grid{display:grid;grid-template-columns:2fr .8fr 1fr;gap:10px}.email-domain-buttons{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.email-domain-buttons button{min-height:42px;padding:8px 6px;font-size:.82rem}.member-contact-card{width:min(760px,calc(100% - 52px));display:grid;gap:6px;margin:0 auto 18px;border:4px solid #fff;border-radius:8px;padding:12px 14px;background:#080808;color:#fff}.member-contact-card p{margin:0;overflow-wrap:anywhere}.modal-contact-card{width:100%;border-width:1px;margin:0;padding:10px}@media(max-width:720px){.contact-location-grid,.email-domain-buttons{grid-template-columns:1fr}.email-domain-buttons button{min-height:44px}}.qr-kiosk-panel{background:#050505}.qr-kiosk-stage{position:relative;width:min(100vw,calc(100svh * 16 / 9));aspect-ratio:16/9;border:clamp(4px,1vw,10px) solid #111;border-radius:18px;overflow:hidden;background:radial-gradient(circle at 50% 50%,rgba(112,0,162,.2),transparent 34%),linear-gradient(115deg,#090909,#16001f 52%,#080808);color:#fff}.qr-kiosk-title{position:absolute;left:4%;right:4%;top:5%;display:flex;justify-content:center;align-items:center;gap:18px;text-align:left}.qr-kiosk-title img{width:clamp(54px,7vw,92px);height:clamp(54px,7vw,92px);object-fit:contain}.qr-kiosk-title span{display:block;color:#d8d8d8;text-transform:uppercase;font-size:clamp(.8rem,1.5vw,1rem);font-weight:900}.qr-kiosk-title h1{margin:0;border:0;padding:0;background:transparent;color:#fff;font-size:clamp(2rem,5vw,4.7rem);line-height:1;text-transform:uppercase}.qr-kiosk-choice{position:absolute;top:32%;width:23%;height:38%;border:clamp(3px,.65vw,7px) solid #fff;border-radius:18px;background:#330047;color:#fff;font-size:clamp(1.25rem,3vw,3rem);line-height:1.1;text-align:center}.qr-kiosk-choice:first-of-type{left:6%}.qr-kiosk-choice:nth-of-type(2){right:6%}.qr-kiosk-code-card{position:absolute;left:35%;top:24%;width:30%;min-height:53%;display:grid;align-content:center;justify-items:center;gap:clamp(5px,1vh,10px);border:clamp(3px,.65vw,7px) solid #fff;border-radius:22px;padding:clamp(10px,1.4vw,18px);background:#fff;color:#111;text-align:center}.qr-kiosk-code-card strong{color:#34004d;text-transform:uppercase;font-size:clamp(1rem,2.1vw,2rem);line-height:1.08}.qr-kiosk-code-card span{color:#34004d;font-size:clamp(.75rem,1.2vw,1rem);font-weight:900}.qr-kiosk-code-card small{color:#111;font-size:clamp(.72rem,1.15vw,.95rem);font-weight:900;line-height:1.12}.qr-code-image{width:min(76%,230px);height:auto;border-radius:10px}.qr-loading{width:min(76%,230px);aspect-ratio:1;display:grid;place-items:center;border:4px solid #111;background:#fff;color:#111;font-weight:900}.qr-kiosk-admin{position:absolute;right:5%;bottom:5%;min-height:clamp(44px,8vh,68px);border:4px solid #fff;background:#111;color:#fff;font-size:clamp(.82rem,1.6vw,1.25rem)}.public-checkin-shell{min-height:100svh;background:#f8f8f8;color:#111;padding:0}.public-checkin-shell main{width:100%;min-height:100svh}.public-checkin-page{min-height:100svh;display:grid;grid-template-rows:auto 1fr;align-items:start;background:#f8f8f8;color:#111}.public-checkin-header{display:flex;gap:14px;align-items:center;padding:18px 16px 14px;background:#34004d;color:#fff}.public-checkin-header img{width:58px;height:58px;object-fit:contain}.public-checkin-header span{display:block;text-transform:uppercase;font-size:.76rem;font-weight:900;opacity:.9}.public-checkin-header h1{margin:0;border:0;padding:0;background:transparent;color:#fff;font-size:clamp(1.55rem,8vw,2.4rem);line-height:1.05}.public-checkin-header p{margin:5px 0 0;color:#f5e8ff;font-size:.95rem}.public-checkin-card{width:min(480px,calc(100% - 28px));display:grid;gap:14px;align-self:start;margin:18px auto 28px;border:1px solid #ddd;border-radius:14px;padding:18px;background:#fff;color:#111;box-shadow:0 10px 26px #0001}.public-checkin-card label,.online-checkin-card label{color:#111;font-weight:900}.public-checkin-card input,.public-checkin-card select,.online-checkin-card input,.online-checkin-card select{border:2px solid #d1d1d1;background:#fff;color:#111}.public-checkin-card button,.online-checkin-card button{width:100%;background:#8a00c4;color:#fff}.public-checkin-card .secondary{background:#222}.public-help-text,.public-message{margin:0;color:#555;font-weight:700}.public-message{color:#8b0000}.success-card h2,.online-checkin-card h2{margin:0;color:#34004d;font-size:1.7rem}.success-card dl,.online-checkin-card dl{display:grid;gap:8px;margin:0}.success-card div,.online-checkin-card div{display:grid;grid-template-columns:120px 1fr;gap:8px}.success-card dt,.online-checkin-card dt{font-weight:900;color:#555}.success-card dd,.online-checkin-card dd{margin:0;font-weight:900}.public-birthday-note{border:2px solid #8a00c4;border-radius:10px;padding:10px;background:#faf5ff;color:#34004d;font-weight:900}.online-checkin-page{min-height:100svh;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:0;background:linear-gradient(120deg,#090909,#300046);color:#fff}.online-checkin-copy{display:grid;align-content:center;justify-items:start;gap:16px;padding:clamp(28px,6vw,72px)}.online-checkin-copy img{width:clamp(90px,16vw,160px);height:clamp(90px,16vw,160px);object-fit:contain}.online-checkin-copy h1{margin:0;border:0;padding:0;background:transparent;color:#fff;font-size:clamp(2.5rem,6vw,5rem);line-height:1}.online-checkin-copy p{max-width:560px;color:#f5e8ff;font-size:clamp(1rem,2vw,1.45rem)}.online-checkin-card{width:min(520px,calc(100% - 30px));align-self:center;justify-self:center;display:grid;gap:14px;border-radius:14px;padding:clamp(18px,3vw,30px);background:#fff;color:#111}.online-checkin-page>.public-checkin-header{grid-column:1/-1}.service-window-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.checkin-window-list,.help-section-list{width:min(940px,calc(100% - 52px));display:grid;gap:16px;margin:0 auto 28px}.checkin-window-card,.help-section-card{border:4px solid #fff;border-radius:8px;padding:16px;background:#080808;color:#fff}.checkin-window-card h2,.help-section-card h2{border-color:#fff;background:#2a0039;color:#fff}.help-search-wrap{grid-template-columns:1fr}.help-section-card p{font-size:1.08rem}.service-window-grid input{min-height:48px}@media(max-width:760px){.online-checkin-page{grid-template-columns:1fr}.online-checkin-copy{padding:28px 18px;text-align:center;justify-items:center}.online-checkin-card{margin-bottom:24px}.service-window-grid{grid-template-columns:1fr}.qr-kiosk-title{gap:8px}.qr-kiosk-title img{display:none}.qr-kiosk-code-card{left:34%;width:32%}.qr-kiosk-choice{font-size:clamp(1rem,4vw,1.45rem)}}.help-section-card ul{margin:0;padding-left:1.25rem;line-height:1.5}.help-section-card li+li{margin-top:.45rem}.kiosk-home-panel,.express-checkin-panel{background:#000}.kiosk-image-stage{position:relative;width:min(100vw,calc(100svh * 1210 / 657));aspect-ratio:1210/657;overflow:hidden;background:#000}.kiosk-background-image{display:block;width:100%;height:100%;object-fit:contain}.kiosk-hotspot{position:absolute;min-height:0;border:0;border-radius:0;padding:0;background:transparent;color:transparent;box-shadow:none;opacity:0}.kiosk-new-hotspot{left:4.95%;top:49.6%;width:26.4%;height:44.4%}.kiosk-express-hotspot{left:36.6%;top:49.6%;width:26.2%;height:44.4%}.kiosk-return-hotspot{left:68.1%;top:49.6%;width:26.4%;height:44.4%}.kiosk-admin-hotspot{left:83.75%;top:1.6%;width:14.75%;height:8.4%}.express-live-qr{position:absolute;left:33.65%;top:39.2%;width:32.5%;height:53.8%;object-fit:fill;border-radius:0}.express-back-hotspot{left:75.6%;top:84.1%;width:21.35%;height:13.2%}.express-live-qr{left:34.45%;top:39.25%;width:30.9%;height:auto;aspect-ratio:1;object-fit:contain;background:#fff;border-radius:0}.returning-user-page .attendance-form-panel{width:min(860px,94vw);gap:clamp(18px,3vh,28px);padding:clamp(24px,4vh,40px)}.returning-user-page .attendance-form-panel h1{font-size:clamp(2.3rem,6vw,4.4rem);padding:18px 22px}.returning-user-page .attendance-form-panel label{font-size:clamp(1.75rem,4.2vw,3.25rem);font-weight:900;line-height:1.18}.returning-user-page .attendance-form-panel input{min-height:clamp(76px,12vh,112px);font-size:clamp(2rem,5vw,4rem);font-weight:900;padding:18px 22px}.returning-user-page .attendance-form-panel button{min-height:clamp(76px,12vh,112px);font-size:clamp(1.55rem,3.6vw,2.8rem)}.member-record-column-header-row{align-items:end;margin-bottom:-4px}.member-record-column-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,36%);align-items:end;gap:18px;padding:0 18px 6px;color:#fff;text-transform:uppercase;font-size:clamp(1.85rem,3.6vw,2.85rem);font-weight:900;line-height:1}.member-record-column-header span{text-align:center}.member-column-action-spacer{visibility:hidden}.member-column-action-spacer span{display:block;min-width:92px}.member-record-row.is-overdue,.member-record-row.is-overdue .member-last-visit,.member-record-row.is-overdue .member-name-with-icons{color:#ff4d4d}.member-last-visit{min-width:190px;font-weight:900;text-align:center}.birthday-number-pad{display:grid;gap:clamp(8px,1.6vh,12px)}.birthday-number-pad .pin-grid button{min-height:clamp(54px,8vh,74px);font-size:clamp(1.4rem,3.4vh,2.1rem)}@media(orientation:landscape)and (max-height:620px){.returning-user-page .attendance-form-panel{gap:clamp(8px,1.6vh,14px);padding:clamp(10px,2vh,16px)}.birthday-number-pad .pin-grid{gap:clamp(5px,1vh,8px)}.birthday-number-pad .pin-grid button{min-height:clamp(36px,7vh,48px);padding:4px 8px;font-size:clamp(1rem,2.6vh,1.35rem)}}@media(max-width:820px){.member-record-column-header{grid-template-columns:1fr 1fr;font-size:clamp(1.35rem,5.2vw,2rem)}.member-last-visit{min-width:0;text-align:center}}@media(max-width:520px){.member-record-column-header{font-size:1rem;gap:8px}.member-record-row{display:grid;gap:6px}.member-last-visit{text-align:left}.member-column-action-spacer{display:none}}.public-choice-panel button{min-height:68px;font-size:1.1rem}.public-checkin-card .contact-location-grid,.online-checkin-card .contact-location-grid{grid-template-columns:1fr}.public-checkin-card .email-domain-buttons,.online-checkin-card .email-domain-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.returning-kiosk-panel{background:#000}.returning-kiosk-stage{position:relative;width:min(100vw,calc(100svh * 1366 / 768));aspect-ratio:1366/768;overflow:hidden;background:#000}.returning-kiosk-image{display:block;width:100%;height:100%;object-fit:contain}.returning-kiosk-hotspot{position:absolute;min-height:0;border:0;border-radius:0;padding:0;background:transparent;color:transparent;box-shadow:none;opacity:0}.returning-back-hotspot{left:0;top:1.3%;width:13.4%;height:8.8%}.returning-find-hotspot{left:5.6%;top:78.2%;width:35.8%;height:13%}.returning-birthdate-input{position:absolute;left:5.6%;top:56.7%;width:35.8%;height:12.4%;border:0;border-radius:0;padding:0 3.3%;background:transparent;color:transparent;text-align:left;text-transform:uppercase;font-size:clamp(1.6rem,4.2vw,4rem);font-weight:900;line-height:1}.returning-birthdate-input.has-value{border:clamp(2px,.34vw,5px) solid #fff;background:#292929;color:#fff}.returning-birthdate-input:focus{outline:0}.returning-keypad-hotspots{position:absolute;left:47.9%;top:56.8%;width:46.1%;height:34.5%}.returning-keypad-hotspots .pin-grid{width:100%;height:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));gap:0}.returning-keypad-hotspots button{min-height:0;border:0;border-radius:0;padding:0;background:transparent;color:transparent;box-shadow:none;opacity:0}.returning-keypad-hotspots button:focus{outline:3px solid #fff;outline-offset:-6px;opacity:.25}@media(max-width:720px){.returning-birthdate-input{font-size:clamp(1.2rem,7vw,2.4rem)}}.admin-top-actions{display:flex;justify-content:flex-end;margin:-4px 0 10px}.admin-top-actions button{min-width:180px}@media(max-width:560px){.admin-top-actions{justify-content:stretch}.admin-top-actions button{width:100%}}.segmented-control{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.segmented-control button{min-height:48px;border:2px solid #fff;background:#111}.segmented-control button.active{background:#fff;color:#000}.attendance-add-panel{width:min(760px,calc(100vw - 20px))}.attendee-picker-list{max-height:min(42vh,360px);display:grid;gap:8px;overflow:auto;border:1px solid #3f3f46;border-radius:8px;padding:8px;background:#050505}.attendee-picker-row{display:grid;grid-template-columns:26px 1fr;align-items:center;gap:10px;border:1px solid #2f2f35;border-radius:8px;padding:10px;background:#0b0b0d}.attendee-picker-row input{width:20px;height:20px;margin:0;accent-color:#7b00b8}.attendee-picker-row span{display:grid;gap:2px}.attendee-picker-row small{color:#d8d8d8;font-weight:700}.selected-attendee-count{margin:0;color:#fff;font-weight:900;text-align:right}.source-summary-list{display:flex;flex-wrap:wrap;gap:8px}.source-summary-list button{min-height:34px;border:1px solid #fff;border-radius:6px;padding:5px 9px;background:#050505;color:#fff;text-transform:none;font-size:.95rem;line-height:1.1}.source-summary-list button:hover,.source-summary-list button:focus{background:#fff;color:#000}.source-attendance-panel{width:min(680px,calc(100vw - 20px))}.report-total-stack{display:grid;gap:3px;text-align:right}.report-total-stack small{font-size:.52em}.monthly-summary-total{margin:34px auto 18px}@media(max-width:680px){.segmented-control{grid-template-columns:1fr}.source-summary-list{display:grid}.source-summary-list button{width:100%}.report-total-stack{text-align:left}}.success-card h2,.online-checkin-card h2{border-radius:8px;padding:10px 12px;background:#34004d;color:#fff}.online-checkin-card div{display:block;grid-template-columns:none}.online-checkin-card .form-stack,.online-checkin-card .contact-location-grid,.online-checkin-card .email-domain-buttons{display:grid}.online-checkin-card dl>div{display:grid;grid-template-columns:120px 1fr;gap:8px}@media(max-width:760px){.online-checkin-page{align-content:start}.online-checkin-copy{padding:24px 18px 18px}.online-checkin-copy img{width:92px;height:92px}.online-checkin-copy h1{font-size:2.4rem}.online-checkin-copy p{margin:0;font-size:1rem}.online-checkin-card{align-self:start;margin-top:8px;margin-bottom:24px}}.online-viewer-shell,.online-viewer-shell main{min-height:0}.online-viewer-shell{padding:0;background:#120018}.online-viewer-shell .online-checkin-page{min-height:auto}.online-viewer-shell .splash-screen{position:absolute}.audit-log-page .summary-instructions{font-family:Times New Roman,Times,serif}.audit-log-editor{width:min(980px,calc(100% - 52px));min-height:68svh;max-height:78svh;margin:0 auto 28px;overflow:auto;border:4px solid #111;border-radius:8px;padding:18px 22px;background:#fff;color:#000;font-family:Times New Roman,Times,serif;font-size:19px;line-height:1.35;outline:4px solid #fff;white-space:normal}.audit-log-editor:focus{outline:4px solid #8a00c4}.audit-log-entry{border-bottom:2px solid #d4d4d4;padding:0 0 16px;margin:0 0 18px}.audit-log-entry h2{margin:0 0 10px;border:0;border-radius:0;padding:0;background:transparent;color:#000;text-transform:none;font-family:Times New Roman,Times,serif;font-size:24px;font-weight:900;line-height:1.2}.audit-log-entry p{margin:6px 0;color:#000;font-family:Times New Roman,Times,serif;font-size:19px;line-height:1.35}.audit-log-entry strong{font-weight:900}.audit-session,.audit-date-group{margin:0 0 28px;padding:0 0 18px;border-bottom:2px solid #d4d4d4}.audit-session-header{display:flex;justify-content:space-between;gap:18px;margin:0 0 12px;color:#000;font-family:Times New Roman,Times,serif;font-size:24px;font-weight:900;line-height:1.2;text-transform:uppercase}.audit-session-header strong:last-child{text-align:right;text-transform:none}.audit-date-group h2,.audit-date-group h3{margin:14px 0 8px;border:0;border-radius:0;padding:0;background:transparent;color:#000;text-align:left;text-transform:uppercase;font-family:Times New Roman,Times,serif;font-size:24px;font-weight:900;line-height:1.2}.audit-date-group h3{margin-left:28px}.audit-session-row{width:100%;min-height:0;display:grid;grid-template-columns:110px minmax(0,1fr);align-items:start;gap:16px;margin:5px 0;border:0;border-radius:0;padding:0 0 0 28px;background:transparent;color:#000;text-align:left;text-transform:none;font-family:Times New Roman,Times,serif;font-size:19px;font-weight:400;line-height:1.35;box-shadow:none}.audit-session-row strong,.audit-row-time{font-weight:900}.audit-row-time{font-size:22px}.audit-detail-entry{cursor:pointer;text-decoration:none}.audit-detail-entry:hover>span:last-child{text-decoration:underline}.audit-inline-link{display:inline;min-height:0;border:0;border-radius:0;padding:0;background:transparent;color:#000;text-transform:none;font-family:Times New Roman,Times,serif;font-size:19px;line-height:1.35;box-shadow:none;vertical-align:baseline}.audit-inline-link:hover{text-decoration:underline}.audit-change-modal,.audit-change-modal p{font-family:Times New Roman,Times,serif;color:#fff}.audit-change-detail-list{display:grid;gap:8px}.audit-change-detail-list p{margin:0;overflow-wrap:anywhere}.sunday-school-shell{min-height:100svh;background:radial-gradient(circle at 50% 12%,rgba(138,0,196,.28),transparent 32%),linear-gradient(120deg,#050505,#240032 62%,#050505);color:#fff}.sunday-school-page{width:min(1050px,100%);display:grid;gap:18px;margin:0 auto;padding:16px 0 34px}.sunday-school-header{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:18px}.sunday-school-logo{width:clamp(84px,14vw,150px);height:clamp(84px,14vw,150px);object-fit:contain}.sunday-school-header .report-title{width:100%;margin:0}.sunday-school-header p{margin:0;text-align:center;color:#f5e8ff;font-size:clamp(1rem,2vw,1.35rem);font-weight:900}.sunday-school-card{width:min(560px,calc(100% - 24px));display:grid;gap:14px;justify-self:center;border:4px solid #fff;border-radius:8px;padding:18px;background:#080808;color:#fff}.sunday-school-card h2{border-color:#fff;background:#2a0039;color:#fff}.sunday-school-table-wrap{width:100%;overflow-x:auto;border:4px solid #fff;border-radius:8px;background:#050505}.sunday-school-table{width:100%;border-collapse:collapse;table-layout:fixed}.sunday-school-table th,.sunday-school-table td{border:3px solid #fff;padding:10px;text-align:center;color:#fff}.sunday-school-table th{background:#2a0039;text-transform:uppercase;font-size:clamp(1.05rem,2vw,1.55rem);font-weight:900}.sunday-school-table th:first-child,.sunday-school-table td:first-child{width:42%;text-align:left}.sunday-school-table td:first-child{background:#111;font-size:clamp(1.25rem,3vw,2rem);line-height:1.05}.sunday-school-table td:first-child strong,.sunday-school-table td:first-child span{display:block}.sunday-school-table td:first-child span{margin-top:5px}.status-toggle{width:100%;min-width:62px;min-height:64px;border:4px solid #fff;border-radius:8px;padding:0;background:#1a1a1a;color:#fff;font-size:clamp(1rem,2.5vw,1.6rem);font-weight:900}.status-toggle.active{background:#7b00b8;box-shadow:inset 0 0 0 5px #fff;color:#fff}.status-toggle:not(.active):hover{background:#330047}@media(max-width:720px){.sunday-school-header{grid-template-columns:1fr;justify-items:center}.sunday-school-header .report-title{font-size:clamp(1.6rem,7vw,2.2rem)}.sunday-school-table th,.sunday-school-table td{padding:7px 5px}.sunday-school-table th:first-child,.sunday-school-table td:first-child{width:38%}.status-toggle{min-width:46px;min-height:58px}}.sunday-school-shell{min-height:100svh;padding:0;background:radial-gradient(circle at 58% 33%,rgba(124,0,154,.42),transparent 28%),linear-gradient(115deg,#080009,#21002c 58%,#060008)}.sunday-school-shell main{width:100%;max-width:none;margin:0}.sunday-school-page{width:100%;min-height:100svh;align-content:start;gap:clamp(16px,2.2vh,28px);padding:clamp(10px,1.5vw,22px) clamp(16px,1.5vw,24px) 0;background:radial-gradient(circle at 58% 33%,rgba(124,0,154,.34),transparent 28%),linear-gradient(115deg,#080009,#21002c 58%,#060008)}.sunday-school-header{position:relative;grid-template-columns:minmax(190px,17vw) minmax(0,1fr) minmax(190px,17vw);gap:clamp(12px,2vw,30px);align-items:start}.sunday-school-logo{width:min(255px,16vw);height:auto;max-height:220px;object-fit:contain}.sunday-school-header .report-title{min-height:clamp(96px,12vw,150px);display:flex;align-items:center;justify-content:center;border:clamp(7px,.9vw,12px) solid #fff;border-radius:clamp(16px,2vw,34px);padding:clamp(12px,2vw,28px);background:#2a0039;font-size:clamp(2.1rem,4.35vw,4.95rem);letter-spacing:.035em;line-height:1;text-wrap:balance}.sunday-school-top-logout{justify-self:end;align-self:end;min-width:min(340px,20vw);min-height:clamp(68px,8vw,92px);border:4px solid #fff;border-radius:18px;background:#b4000d;font-size:clamp(1.5rem,2.8vw,3rem)}.sunday-school-date-line{margin:clamp(18px,4vh,54px) 0 clamp(22px,5vh,68px);text-align:center;color:#fff;font-size:clamp(2rem,4.4vw,4.6rem);line-height:1.05}.sunday-school-date-line strong{font-weight:900}.sunday-school-date-line sup{font-size:.48em;line-height:0}.sunday-school-main-menu{width:min(560px,58vw);display:grid;gap:clamp(30px,5vh,64px);justify-self:center}.sunday-school-main-menu button{min-height:clamp(140px,15vh,160px);border:8px solid #fff;border-radius:18px;background:#7700b8;color:#fff;font-size:clamp(2rem,2.75vw,3.1rem);line-height:1.25}.sunday-school-main-menu .sunday-school-logout-button{background:#b4000d}.sunday-school-nav{display:none}.sunday-school-attendance-actions{width:100%;display:grid;grid-template-columns:minmax(190px,310px) minmax(260px,360px) minmax(360px,560px);justify-content:space-between;margin:0 0 clamp(18px,3vh,34px);padding:0 4px}.sunday-school-attendance-actions button{min-height:clamp(72px,8vh,92px);border:6px solid #fff;border-radius:16px;background:#7700b8;font-size:clamp(1.6rem,2.6vw,2.8rem);line-height:1}.sunday-school-attendance-actions .sunday-school-add-button{background:#fff;color:#7300b2;border-color:#7300b2}.sunday-school-attendance-actions .sunday-school-save-button{background:green;color:#fff}.sunday-school-table-wrap{border:4px solid #fff;border-radius:0;overflow:auto;background:#050505}.sunday-school-table{table-layout:fixed}.sunday-school-table th,.sunday-school-table td{border:4px solid #fff;padding:clamp(8px,1vw,14px);vertical-align:middle}.sunday-school-table th{background:#2a0039;font-size:clamp(1.25rem,2.3vw,2.45rem);line-height:1}.sunday-school-table th:first-child,.sunday-school-table td:first-child{width:42%}.sunday-school-table th:nth-child(2),.sunday-school-table th:nth-child(3),.sunday-school-table th:nth-child(4),.sunday-school-table td:nth-child(2),.sunday-school-table td:nth-child(3),.sunday-school-table td:nth-child(4){width:14%}.sunday-school-table th:nth-child(5),.sunday-school-table td:nth-child(5){width:14%}.sunday-school-table td:first-child{font-size:clamp(2rem,3.65vw,4rem);line-height:1.18}.sunday-school-table td:first-child strong{display:block}.status-toggle{width:clamp(78px,8vw,128px);min-width:0;min-height:clamp(78px,8vw,128px);margin:0 auto;border:clamp(8px,1vw,13px) solid #7600b8;border-radius:999px;background:#fff;padding:0}.status-toggle span{display:block;width:54%;height:54%;border-radius:999px;margin:auto;background:transparent}.status-toggle.active{background:#fff;box-shadow:none}.status-toggle.active span{background:#7600b8}.sunday-school-table td:nth-child(5) .status-toggle{width:clamp(120px,12vw,190px);min-height:clamp(70px,7vw,102px);border:4px solid #fff;border-radius:10px;background:#171717;color:#fff;font-size:clamp(1.25rem,2.4vw,2.3rem)}.sunday-school-class-list{width:min(1120px,calc(100% - 32px));display:grid;grid-template-columns:minmax(280px,420px) minmax(0,1fr);gap:22px;justify-self:center}.sunday-school-list-panel h2{font-size:clamp(1.55rem,3vw,2.5rem)}.sunday-school-list-panel button{justify-content:flex-start;text-align:left;font-size:clamp(1.2rem,2vw,1.8rem)}@media(max-width:900px){.sunday-school-header{grid-template-columns:1fr;justify-items:center}.sunday-school-logo{width:min(220px,52vw)}.sunday-school-top-logout{justify-self:center}.sunday-school-main-menu{width:min(560px,92vw)}.sunday-school-attendance-actions,.sunday-school-class-list{grid-template-columns:1fr}.sunday-school-table{min-width:760px}}.sunday-school-detail-panel{width:min(960px,calc(100% - 32px));justify-self:center}.sunday-school-detail-record-row{display:grid;grid-template-columns:minmax(170px,1fr) minmax(90px,120px) minmax(280px,auto);align-items:center}.sunday-school-record-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.sunday-school-record-actions button{min-height:44px;padding:8px 12px;font-size:.9rem}@media(max-width:720px){.sunday-school-detail-record-row{grid-template-columns:1fr}.sunday-school-record-actions{justify-content:stretch}.sunday-school-record-actions button{flex:1}}.kiosk-current-date{position:absolute;left:34%;right:34%;top:41.2%;z-index:1;margin:0;border:3px solid #fff;border-radius:10px;padding:.45em .7em;background:#14001d;color:#fff;text-align:center;text-transform:uppercase;font-size:clamp(.82rem,2vw,1.45rem);font-weight:900;line-height:1.05;box-shadow:0 0 14px #000a}.sunday-school-page{--sunday-school-date-reference-width:min(1320px, calc(100vw - 32px) )}.sunday-school-date-line{width:var(--sunday-school-date-reference-width);justify-self:center}.sunday-school-member-actions{width:var(--sunday-school-date-reference-width);justify-content:flex-start;margin:0;justify-self:center;padding:0 4px}.sunday-school-member-actions button{min-width:min(310px,100%);min-height:clamp(72px,8vh,92px);border:6px solid #fff;border-radius:16px;background:#7700b8;font-size:clamp(1.6rem,2.6vw,2.8rem);line-height:1}.sunday-school-class-list{width:var(--sunday-school-date-reference-width)}.sunday-school-table-wrap{width:100%;overflow-x:hidden}.sunday-school-table th{padding:clamp(6px,.8vw,12px) clamp(2px,.8vw,10px);font-size:clamp(.7rem,2vw,2.15rem);line-height:1.05;overflow-wrap:normal;word-break:normal}.sunday-school-table th:first-child,.sunday-school-table td:first-child{width:30%}.sunday-school-table th:nth-child(2),.sunday-school-table th:nth-child(3),.sunday-school-table th:nth-child(4),.sunday-school-table td:nth-child(2),.sunday-school-table td:nth-child(3),.sunday-school-table td:nth-child(4){width:16.5%}.sunday-school-table th:nth-child(5),.sunday-school-table td:nth-child(5){width:20.5%}.sunday-school-table td:first-child{font-size:clamp(.95rem,3vw,3.2rem);overflow-wrap:anywhere}.status-toggle{width:clamp(34px,7vw,104px);min-height:clamp(34px,7vw,104px);border-width:clamp(4px,.8vw,10px)}.sunday-school-table td:nth-child(5) .status-toggle{width:100%;min-height:clamp(40px,7vw,88px);font-size:clamp(.72rem,1.7vw,1.55rem);padding:0 2px}@media(max-width:900px){.sunday-school-table{min-width:0}.sunday-school-page{padding-left:clamp(6px,2vw,16px);padding-right:clamp(6px,2vw,16px);--sunday-school-date-reference-width: calc(100vw - clamp(12px,4vw,32px)) }.sunday-school-header .report-title{font-size:clamp(1.55rem,6.4vw,3rem)}.sunday-school-date-line{margin:clamp(10px,2vh,22px) auto;font-size:clamp(1.2rem,5vw,2.4rem)}.sunday-school-attendance-actions,.sunday-school-member-actions{grid-template-columns:1fr}.sunday-school-attendance-actions button,.sunday-school-member-actions button{width:100%;min-width:0}.sunday-school-table th,.sunday-school-table td{border-width:2px;padding:6px 2px}.status-toggle{width:clamp(32px,9vw,58px);min-height:clamp(32px,9vw,58px)}}@media(max-width:520px){.sunday-school-table th{font-size:clamp(.62rem,3.2vw,.82rem)}.sunday-school-table td:first-child{font-size:clamp(.82rem,4vw,1.1rem)}.status-toggle{width:clamp(28px,8.5vw,42px);min-height:clamp(28px,8.5vw,42px);border-width:3px}.status-toggle span{width:50%;height:50%}.sunday-school-table td:nth-child(5) .status-toggle{min-height:34px;font-size:.66rem}.kiosk-current-date{left:34.5%;right:34.5%;top:41%;border-width:2px;padding:.35em .25em;font-size:clamp(.52rem,2.7vw,.82rem)}}.new-user-signup-page{min-height:100svh;height:100svh;display:block;padding:20px clamp(16px,4vw,48px) 28px;overflow-y:scroll;overflow-x:hidden;scrollbar-color:#8d8d8d #050505;scrollbar-gutter:stable;scrollbar-width:auto}.new-user-signup-page::-webkit-scrollbar{width:18px}.new-user-signup-page::-webkit-scrollbar-track{background:#050505}.new-user-signup-page::-webkit-scrollbar-thumb{border:3px solid #050505;border-radius:999px;background:#8d8d8d}.new-user-signup-page .form-back-button{position:sticky;top:0;z-index:10;width:auto;min-height:56px;margin:0 0 12px;border:4px solid #8d8d8d;border-radius:10px;padding:10px 18px;background:#050505;color:#fff;font-size:clamp(1rem,1.5vw,1.2rem)}.new-user-signup-panel{width:min(1348px,calc(100vw - 64px));min-height:calc(100svh - 40px);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:clamp(42px,7vw,98px);row-gap:clamp(18px,3vh,34px);align-content:start;border:6px solid #8d8d8d;border-radius:20px;padding:clamp(22px,2.8vw,34px) clamp(24px,3.2vw,40px) clamp(18px,3vw,34px);background:#000}.new-user-signup-panel h1{grid-column:1 / -1;min-height:112px;display:flex;align-items:center;margin:0 0 clamp(4px,1vh,12px);border:0;border-radius:42px;padding:16px 32px;background:#530078;font-size:clamp(3.2rem,5vw,4.2rem);line-height:1;letter-spacing:.14em}.new-user-signup-panel label{gap:6px;color:#fff;text-transform:uppercase;font-size:clamp(1.7rem,2.7vw,2.25rem);line-height:1.08;font-weight:900}.new-user-signup-panel input{height:82px;border:6px solid #8d8d8d;border-radius:20px;padding:12px 22px;background:#070707;font-size:clamp(1.8rem,2.6vw,2.3rem);font-weight:800}.new-user-signup-panel .contact-address-label,.new-user-signup-panel .contact-email-label,.new-user-signup-panel .contact-location-grid,.new-user-signup-panel .email-domain-buttons,.new-user-signup-panel .new-user-save-instruction,.new-user-signup-panel button[type=submit]{grid-column:1 / -1}.new-user-signup-panel .contact-location-grid{grid-template-columns:minmax(0,1.36fr) minmax(92px,.28fr) minmax(0,.98fr);gap:clamp(42px,6vw,86px)}.new-user-signup-panel .email-domain-buttons{width:100%;justify-self:center;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin-top:6px}.new-user-signup-panel .email-domain-buttons button{min-height:78px;flex-direction:column;gap:2px;border:2px solid #3f3f46;border-radius:8px;padding:12px 14px;background:#242424;color:#fff;font-size:clamp(1.25rem,1.75vw,1.55rem);font-weight:900;line-height:1}.new-user-signup-panel .email-domain-at{display:block;font-size:1.12em}.new-user-signup-panel .email-domain-name{display:block}.new-user-signup-panel .new-user-save-instruction{width:100%;justify-self:center;margin:0;color:#fff;text-align:center;font-size:clamp(1.45rem,2vw,1.8rem);font-weight:800;line-height:1.3}.new-user-signup-panel button[type=submit]{width:100%;min-height:82px;justify-self:center;margin-top:0;border-radius:8px;background:#8a00c4;font-size:clamp(1.35rem,1.9vw,1.7rem)}@media(max-width:820px){.new-user-signup-page{padding:14px 12px 20px}.new-user-signup-panel{width:100%;min-height:auto;grid-template-columns:1fr;row-gap:16px;border-width:4px;padding:14px 12px 18px}.new-user-signup-panel h1{min-height:72px;border-radius:24px;padding:12px 20px;font-size:clamp(2rem,12vw,3rem);letter-spacing:.08em}.new-user-signup-panel label{font-size:1.25rem}.new-user-signup-panel input{height:58px;border-width:4px;border-radius:14px;font-size:1.25rem}.new-user-signup-panel .contact-location-grid,.new-user-signup-panel .email-domain-buttons,.new-user-signup-panel .new-user-save-instruction{grid-template-columns:1fr;gap:12px;width:100%}.new-user-signup-panel .new-user-save-instruction{font-size:1rem}.new-user-signup-panel button[type=submit]{width:100%}}.sunday-school-shell{overflow-x:hidden}.sunday-school-page{width:100%;max-width:100%;overflow-x:hidden;--sunday-school-date-reference-width: 100%;padding-left:clamp(12px,1.5vw,22px);padding-right:clamp(12px,1.5vw,22px)}.sunday-school-header{width:100%;grid-template-columns:minmax(112px,16vw) minmax(0,1fr) minmax(128px,18vw);gap:clamp(10px,1.4vw,18px)}.sunday-school-header .report-title{letter-spacing:0;font-size:clamp(2rem,4.1vw,4.4rem);padding:clamp(10px,1.6vw,24px)}.sunday-school-top-logout{width:100%;min-width:0;min-height:clamp(58px,7vw,86px);padding:8px 10px;font-size:clamp(1.2rem,2.1vw,2.25rem);white-space:nowrap}.sunday-school-date-line{width:100%;max-width:100%;margin:clamp(14px,3vh,40px) 0 clamp(18px,4vh,48px);font-size:clamp(1.75rem,4vw,4.1rem)}.sunday-school-attendance-actions,.sunday-school-member-actions{width:100%;max-width:100%;display:grid;gap:clamp(10px,1.5vw,18px);justify-self:stretch;margin:0 0 clamp(18px,3vh,34px);padding:0}.sunday-school-attendance-actions{grid-template-columns:minmax(0,.82fr) minmax(0,1fr) minmax(0,1.25fr)}.sunday-school-attendance-actions button,.sunday-school-member-actions button{width:100%;min-width:0;min-height:clamp(66px,7.5vh,90px);padding:8px 12px;font-size:clamp(1.25rem,2.15vw,2.35rem);line-height:1.05;white-space:nowrap}.sunday-school-table-wrap{width:100%;max-width:100%;overflow-x:hidden}.sunday-school-table{width:100%;min-width:0}.sunday-school-table th,.sunday-school-table td{overflow:hidden}.sunday-school-table .status-toggle.active span{background:#7600b8}.sunday-school-table .status-toggle{background:#fff;border-color:#7600b8}.sunday-school-table .status-toggle:not(.active):hover{background:#fff}.sunday-school-table .status-toggle.active,.sunday-school-table .status-toggle.active:hover{background:#7600b8;border-color:#7600b8}.sunday-school-table .status-toggle.active span,.sunday-school-table .status-toggle.active:hover span{background:#7600b8}.member-name-with-icons{display:inline-flex;align-items:center;gap:10px;min-width:0}.member-type-icons{display:inline-flex;align-items:center;gap:5px;flex:0 0 auto}.member-type-icon{width:clamp(28px,3vw,42px);height:clamp(28px,3vw,42px);object-fit:contain}.member-type-icon-placeholder{display:inline-block;visibility:hidden}.member-row-note{min-height:60px;display:inline-flex;align-items:center;justify-content:center;border:4px solid #fff;padding:6px 10px;background:#111;color:#fff;font-weight:900;text-transform:uppercase}.sunday-school-help-list{width:100%;display:grid;gap:18px}.sunday-school-help-card{width:100%;max-width:980px;justify-self:center}.sunday-school-help-card p,.sunday-school-help-card li{color:#fff;font-size:clamp(1rem,1.8vw,1.3rem);line-height:1.35}.sunday-school-guest-settings{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.78fr);align-items:start;gap:clamp(22px,4vw,56px);padding:0 clamp(8px,2vw,34px) 36px}.sunday-school-guest-copy{display:grid;gap:clamp(28px,6vh,72px);color:#fff;text-align:center}.sunday-school-guest-copy p{margin:0;font-size:clamp(1.6rem,3.2vw,2.9rem);font-weight:500;line-height:1.34}.sunday-school-guest-controls{display:grid;gap:clamp(14px,2.3vh,28px)}.sunday-school-guest-control{display:grid;gap:10px;border:6px solid #fff;border-radius:18px;padding:10px 14px;background:#7700b8}.sunday-school-guest-control span{color:#fff;text-align:center;text-transform:uppercase;font-size:clamp(1.45rem,2.6vw,2.75rem);font-weight:900;line-height:1.05}.sunday-school-guest-control input{min-height:54px;border:3px solid #fff;background:#120018;color:#fff;text-align:center;font-size:clamp(1rem,1.8vw,1.35rem);font-weight:900}.sunday-school-copy-button{min-height:clamp(94px,12vh,138px);border:6px solid #fff;border-radius:16px;background:#1f00b8;color:#fff;font-size:clamp(1.35rem,2.35vw,2.4rem);line-height:1.18}.sunday-school-reset-button{min-height:clamp(70px,8vh,96px);border:6px solid #fff;border-radius:16px;background:#b4000d;color:#fff;font-size:clamp(1.15rem,2vw,1.9rem);line-height:1.12}.sunday-school-class-list{width:100%;max-width:100%;grid-template-columns:1fr;justify-self:stretch}.sunday-school-list-panel{width:100%;max-width:100%;justify-self:stretch}.sunday-school-list-panel h2{width:100%;font-size:clamp(1.7rem,3vw,3rem)}.sunday-school-list-panel button{width:100%;min-height:clamp(64px,7vh,88px);justify-content:flex-start;border:4px solid #fff;background:#171717;padding:10px 18px;font-size:clamp(1.45rem,2.7vw,2.6rem);line-height:1.05}.sunday-school-detail-record-row{grid-template-columns:minmax(170px,1fr) minmax(90px,120px) minmax(0,auto)}.sunday-school-detail-record-row:not(:has(.sunday-school-record-actions)){grid-template-columns:minmax(170px,1fr) minmax(90px,120px)}@media(max-width:900px){.sunday-school-header{grid-template-columns:1fr;justify-items:center}.sunday-school-logo{width:min(180px,44vw)}.sunday-school-top-logout{width:min(340px,100%)}.sunday-school-attendance-actions,.sunday-school-member-actions{grid-template-columns:1fr}.sunday-school-attendance-actions button,.sunday-school-member-actions button{white-space:normal}.sunday-school-table th,.sunday-school-table td{border-width:2px;padding:6px 2px}.sunday-school-guest-settings{grid-template-columns:1fr}.sunday-school-guest-copy p{font-size:clamp(1.15rem,5vw,1.8rem)}}
