:root{font-family:Nunito,sans-serif;color:#07326e;background:radial-gradient(circle at top,rgba(255,255,255,.7),transparent 30%),linear-gradient(180deg,#cdeeff,#97d0fb 48%,#75b7f6);line-height:1.5;font-weight:700;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--blue-900: #0a3f96;--blue-800: #114db4;--blue-700: #1660da;--blue-300: #bfe6ff;--sky-100: #eff9ff;--yellow: #ffd133;--yellow-strong: #ffbd00;--red: #f33b2d;--white: #ffffff;--shadow: 0 24px 60px rgba(5, 60, 140, .18)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select{font:inherit}button{border:0;cursor:pointer}a{color:inherit}#root{min-height:100vh}.loading-shell{display:grid;place-items:center}.app-shell{position:relative;overflow:hidden;min-height:100vh;padding:20px 24px 40px}.background-bubbles:before,.background-bubbles:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:radial-gradient(circle at 10% 16%,rgba(255,255,255,.8) 0 10px,transparent 11px),radial-gradient(circle at 88% 10%,rgba(255,255,255,.65) 0 18px,transparent 19px),radial-gradient(circle at 75% 24%,rgba(255,255,255,.42) 0 10px,transparent 11px),radial-gradient(circle at 14% 62%,rgba(255,255,255,.52) 0 14px,transparent 15px),radial-gradient(circle at 84% 70%,rgba(255,255,255,.55) 0 12px,transparent 13px)}.hero-card,.panel{position:relative;z-index:1;width:100%}.loading-screen{position:relative;z-index:1;display:grid;place-items:center;min-height:calc(100vh - 60px)}.loading-card{width:min(100%,540px);padding:36px 28px;border-radius:34px;text-align:center;background:linear-gradient(150deg,#ffffffd1,#fffffff5),linear-gradient(135deg,#5caef9,#d7f4ff);border:3px solid rgba(255,255,255,.75);box-shadow:var(--shadow)}.loading-logo{width:min(280px,72vw);height:auto;margin:0 auto 18px;display:block;filter:drop-shadow(0 18px 34px rgba(10,63,150,.18))}.loading-card h1{margin:16px 0 10px;font-family:Barlow Condensed,sans-serif;font-size:clamp(2.4rem,6vw,4.4rem);line-height:.94;text-transform:uppercase;color:var(--blue-900)}.loading-card p{margin:0 auto;max-width:420px;color:#0a3f96c7}.loading-dots{display:inline-flex;gap:10px;margin-top:22px}.loading-dots span{width:12px;height:12px;border-radius:999px;background:linear-gradient(180deg,var(--yellow),var(--red));animation:kilat-bounce 1.05s infinite ease-in-out}.loading-dots span:nth-child(2){animation-delay:.12s}.loading-dots span:nth-child(3){animation-delay:.24s}.action-loading-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:35;display:grid;place-items:center;padding:20px;background:#0723563d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.action-loading-card{width:min(100%,360px);padding:24px 22px;border-radius:28px;text-align:center;background:#fffffff5;box-shadow:0 24px 60px #053c8c2e;border:2px solid rgba(255,255,255,.7)}.action-loading-logo{display:block;width:min(180px,50vw);height:auto;margin:0 auto 14px}.action-loading-card strong{display:block;font-family:Barlow Condensed,sans-serif;font-size:1.8rem;color:var(--blue-900);text-transform:uppercase}.action-loading-card p{margin:8px 0 0;color:#0a3f96c7}.toast-stack{position:fixed;top:20px;right:20px;z-index:40;display:grid;gap:12px;width:min(100% - 28px,360px)}.toast-item{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:18px;background:#fffffff5;border:2px solid rgba(17,77,180,.08);box-shadow:0 20px 40px #053c8c2e}.toast-item.success{border-color:#12a3593d}.toast-item.error{border-color:#f33b2d38}.toast-item.info{border-color:#114db433}.toast-item strong{display:block;font-family:Barlow Condensed,sans-serif;font-size:1.15rem;color:var(--blue-900);text-transform:uppercase}.toast-item p{margin:4px 0 0;color:#0a3f96c7}.toast-close{flex:0 0 auto;padding:0;background:transparent;color:#0a3f96b8;font-size:1.35rem;line-height:1}@keyframes kilat-bounce{0%,80%,to{transform:translateY(0);opacity:.45}40%{transform:translateY(-7px);opacity:1}}.hero-card{display:grid;grid-template-columns:1.3fr .9fr;gap:28px;padding:36px;border-radius:34px;background:linear-gradient(140deg,#ffffffbf,#ffffffeb),linear-gradient(150deg,#5caef9,#d7f4ff);box-shadow:var(--shadow);border:3px solid rgba(255,255,255,.7)}.hero-card:after{content:"";position:absolute;z-index:0;right:-80px;bottom:-110px;width:420px;height:220px;background:linear-gradient(180deg,var(--yellow) 0%,#ffcf1f 100%);border-radius:50% 0 0;transform:rotate(-6deg);box-shadow:inset 0 10px #fff6}.hero-brand,.hero-offer,.offer-card,.panel,.member-card{position:relative;z-index:1}.brand-pill,.offer-label,.eyebrow,.status-badge,.member-card-kicker{font-family:Barlow Condensed,sans-serif;letter-spacing:.04em}.brand-pill{display:inline-flex;padding:8px 16px;border-radius:999px;background:var(--blue-900);color:var(--white);font-size:1.1rem}.hero-brand h1{margin:18px 0 10px;font-family:Barlow Condensed,sans-serif;font-size:clamp(2.8rem,6vw,5rem);line-height:.92;color:var(--blue-900);text-transform:uppercase}.hero-brand p{max-width:640px;margin:0;color:#0a3f96d6;font-size:1rem}.hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px}.hero-stats div,.member-list-item,.firebase-note,.activity-item{background:#ffffffd1;border:2px solid rgba(17,77,180,.08);box-shadow:0 14px 30px #0a3f961a}.hero-stats div{padding:18px;border-radius:22px}.hero-stats strong{display:block;font-family:Barlow Condensed,sans-serif;font-size:2rem;color:var(--blue-700)}.hero-stats span{color:#07326ec2;font-size:.9rem}.hero-offer{display:flex;align-items:center;justify-content:center}.login-layout,.portal-nav{position:relative;z-index:1;width:100%}.login-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:22px}.login-card,.portal-session-card,.metric-card,.attendance-item,.portal-tab{background:#ffffffd6;border:2px solid rgba(17,77,180,.08);box-shadow:0 14px 30px #0a3f961a}.login-card{padding:28px;border-radius:30px}.login-card h1{margin:18px 0 12px;font-family:Barlow Condensed,sans-serif;font-size:clamp(2.3rem,5vw,4rem);line-height:.94;text-transform:uppercase;color:var(--blue-900)}.login-card p,.portal-session-card p{margin:0;color:#0a3f96c7}.login-hero{min-height:100%}.login-brand-panel{display:grid;place-items:center;text-align:center;min-height:100%;padding:18px}.login-brand-logo{width:min(320px,72%);height:auto;margin-bottom:18px;filter:drop-shadow(0 20px 34px rgba(10,63,150,.16))}.login-brand-panel h2{margin:14px 0 8px;font-family:Barlow Condensed,sans-serif;font-size:clamp(2.3rem,5vw,4.2rem);line-height:.95;color:var(--blue-900);text-transform:uppercase}.login-brand-panel p{max-width:420px;margin:0;color:#0a3f96c7}.portal-hero{grid-template-columns:1.35fr .65fr;gap:18px;padding:22px 24px;border-radius:26px}.hero-collapse-toggle{display:none;align-items:center;justify-content:center;width:100%;margin-bottom:14px;padding:12px 16px;border-radius:18px;background:#114db414;color:var(--blue-900);font-family:Barlow Condensed,sans-serif;font-size:1.05rem;text-transform:uppercase;letter-spacing:.04em}.portal-hero .brand-pill{padding:6px 12px;font-size:.92rem}.portal-hero .hero-brand h1{margin:10px 0 6px;font-size:clamp(2rem,3.5vw,3rem)}.portal-hero .hero-brand p{max-width:520px;font-size:.92rem}.portal-hero .hero-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}.portal-hero .hero-stats div{padding:12px 14px;border-radius:16px}.portal-hero .hero-stats strong{font-size:1.45rem}.portal-hero .hero-stats span{font-size:.82rem}.portal-session-card{padding:16px 18px;border-radius:20px}.portal-session-card strong{display:block;margin:6px 0 8px;font-family:Barlow Condensed,sans-serif;font-size:1.45rem;line-height:.95;color:var(--blue-900);text-transform:uppercase}.portal-session-card .offer-label{font-size:1.05rem}.portal-session-card p{font-size:.88rem}.session-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}.role-line{margin-top:8px;text-transform:capitalize}.portal-nav{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.portal-tab{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 18px;border-radius:18px;font-family:Barlow Condensed,sans-serif;font-size:1.1rem;text-transform:uppercase;transition:transform .18s ease,background .18s ease}.portal-tab.active{background:linear-gradient(135deg,#0a3f96eb,#1660daeb);color:var(--white)}.portal-tab-icon{display:inline-flex;width:20px;height:20px;flex:0 0 auto}.portal-tab-icon svg{width:100%;height:100%}.offer-card{width:min(100%,360px);padding:28px 24px;border-radius:28px;background:var(--white);box-shadow:0 24px 50px #0a3f9626;border:3px dashed rgba(32,128,255,.28);text-align:center}.offer-label{display:block;color:var(--blue-900);font-size:1.4rem}.offer-card strong{display:block;font-family:Barlow Condensed,sans-serif;text-transform:uppercase;color:var(--blue-900);font-size:3rem;line-height:.9}.offer-card .offer-accent{color:var(--red)}.offer-card p{margin:16px 0 0;color:#0a3f96bf}.dashboard-grid{display:grid;grid-template-columns:1.4fr .9fr;gap:22px;width:100%;margin:18px 0 0}.panel{padding:24px;border-radius:30px;background:#ebf9ffdb;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.loyalty-preview{grid-row:span 2}.members-grid{grid-template-columns:minmax(420px,.95fr) minmax(560px,1.25fr)}.members-grid .loyalty-preview{grid-row:auto}.dropoff-intake-panel{position:sticky;top:18px;align-self:start}.overview-panel{grid-column:span 2}.summary-panel{align-self:start}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.eyebrow{display:inline-block;font-size:1rem;color:var(--blue-700);text-transform:uppercase}.panel-heading h2,.form-title h3,.member-card h3{margin:0;font-family:Barlow Condensed,sans-serif;text-transform:uppercase}.panel-heading h2{font-size:2rem;color:var(--blue-900)}.status-badge{padding:10px 16px;border-radius:999px;background:#114db414;color:var(--blue-900);font-size:1rem}.status-badge.ready{background:#f33b2d1f;color:#b4190d}.member-card{padding:26px;border-radius:28px;background:linear-gradient(170deg,#ffffffe6,#cdeeffb3),linear-gradient(90deg,var(--blue-700),#77c8ff);border:3px solid rgba(255,255,255,.8)}.member-card-top,.member-card-footer,.action-row,.member-list-item,.activity-item{display:flex;align-items:center;justify-content:space-between;gap:16px}.member-card-kicker{margin:0 0 10px;color:var(--blue-700);font-size:1.05rem;text-transform:uppercase}.member-card h3{font-size:2.2rem;color:var(--blue-900)}.member-card-top p,.member-card-footer p,.member-card-footer span,.member-id-block span{margin:0;color:#07326ebd}.member-id-block{min-width:132px;padding:16px;border-radius:20px;background:#ffffffe0;text-align:right}.member-id-block strong{display:block;font-family:Barlow Condensed,sans-serif;font-size:1.5rem;white-space:nowrap;color:var(--blue-900)}.stamp-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:24px 0}.stamp-grid.compact{grid-template-columns:repeat(5,minmax(0,1fr));margin:0}.double-stamp-board{display:grid;gap:14px;margin:22px 0}.stamp-row{padding:14px 14px 16px;border-radius:24px;background:#ffffff75;border:1px solid rgba(255,255,255,.6)}.stamp-row.complete{background:#ffd13329;border-color:#ffd13380}.stamp-row-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.stamp-row-label{font-family:Barlow Condensed,sans-serif;font-size:1.2rem;text-transform:uppercase;letter-spacing:.04em;color:var(--blue-900)}.stamp-row-state{padding:5px 12px;border-radius:999px;background:#114db41a;color:var(--blue-700);font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.stamp-row-state.unlocked{background:#d69e0033;color:#9a6a00}.member-progress{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}.member-progress-stat{padding:14px 16px;border-radius:20px;background:#ffffffd1;border:1px solid rgba(255,255,255,.7)}.member-progress-stat span{display:block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#07326e99;margin-bottom:2px}.member-progress-stat strong{display:flex;align-items:baseline;gap:6px;font-family:Barlow Condensed,sans-serif;font-size:2.1rem;line-height:1;color:var(--blue-900)}.member-progress-stat strong i{font-style:normal;font-size:.78rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:#07326e8c}.member-progress-stat.reward-ready{background:#ffd13333;border-color:#ffd1338c}.member-progress-stat.reward-ready strong{color:#9a6a00}.member-progress-stat.reward-ready strong i{color:#9a6a00cc}.member-progress-track{grid-column:1 / -1;padding:14px 16px;border-radius:20px;background:#ffffffd1;border:1px solid rgba(255,255,255,.7)}.member-progress-track-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:#07326ea8}.member-progress-bar{height:10px;border-radius:999px;background:#114db41f;overflow:hidden}.member-progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--blue-700),#77c8ff);transition:width .3s ease}.stamp-slot,.reward-slot{position:relative;display:grid;place-items:center;aspect-ratio:1 / 1;min-height:0;padding:10px 6px;border-radius:999px;border:3px solid rgba(17,77,180,.4);border-style:dashed;text-align:center;background:#ffffffb8;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:default;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}.stamp-slot.clickable,.reward-slot.clickable{cursor:pointer}.stamp-slot.clickable:hover,.reward-slot.clickable:hover{transform:translateY(-2px);box-shadow:0 14px 30px #0a3f961f}.stamp-slot:disabled,.reward-slot:disabled{opacity:1}.stamp-slot span,.reward-slot span{font-family:Barlow Condensed,sans-serif;font-size:1.9rem;line-height:1;color:#07326e66}.stamp-slot small,.reward-slot small{font-size:.6rem;letter-spacing:.03em;color:#07326e80}.stamp-next-hint{position:absolute;bottom:10px;font-style:normal;font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--blue-700)}.stamp-mark{display:inline-flex;align-items:center;justify-content:center;width:74%;height:74%;border:2px solid rgba(243,59,45,.82);border-radius:999px;background:#f33b2d14;font-family:Barlow Condensed,sans-serif;font-size:1.15rem;letter-spacing:.06em;color:#b4190d;transform:rotate(-11deg)}.stamp-slot.filled{border-style:solid;border-color:#f33b2d8c;background:#f33b2d0d}.stamp-slot.next-step{border-style:solid;border-color:var(--blue-700);background:#1660da14;animation:stamp-pulse 1.8s ease-in-out infinite}@keyframes stamp-pulse{0%,to{box-shadow:0 0 #1660da47}50%{box-shadow:0 0 0 7px #1660da00}}.reward-slot{border-style:solid;border-color:#d69e008c}.reward-slot span{color:#9a6a00;font-size:1.05rem;letter-spacing:.02em}.reward-slot small{margin-top:2px;font-size:.58rem;color:#9a6a00d9}.reward-slot.active{background:#ffd13347;border-color:#d69e00d9;box-shadow:inset 0 0 0 6px #ffd1333d}.member-card-footer{align-items:flex-start;flex-wrap:wrap}.action-row{margin-top:18px}.export-actions{align-items:stretch;flex-wrap:wrap}.action-row.stacked{flex-direction:column;align-items:stretch}.under-card-actions{margin-top:20px}.undo-confirm-form{padding:18px;border-radius:22px;background:#ffffffb8;border:2px solid rgba(17,77,180,.08)}.primary-btn,.ghost-btn,.member-list-item,.portal-tab{transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.primary-btn,.ghost-btn,.wa-btn{padding:14px 20px;border-radius:18px;font-family:Barlow Condensed,sans-serif;font-size:1.2rem;text-transform:uppercase}.primary-btn{background:linear-gradient(180deg,var(--yellow),var(--yellow-strong));color:var(--blue-900);box-shadow:0 18px 30px #ffbd0047}.ghost-btn{background:#114db41a;color:var(--blue-900)}.wa-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:linear-gradient(180deg,#25d366,#1da851);color:#fff;box-shadow:0 18px 30px #25d36647;text-decoration:none}.primary-btn:hover,.ghost-btn:hover,.wa-btn:hover,.member-list-item:hover{transform:translateY(-2px)}.primary-btn:disabled,.ghost-btn:disabled,.wa-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.field-label{display:grid;gap:8px;color:var(--blue-900);margin-bottom:16px}.field-label input,.field-label select,.field-label textarea{width:100%;padding:14px 16px;border:2px solid rgba(17,77,180,.12);border-radius:16px;background:#ffffffe0;color:var(--blue-900);outline:none}.field-label input:focus,.field-label select:focus,.field-label textarea:focus{border-color:#1660da80;box-shadow:0 0 0 4px #1660da1f}.field-label textarea{resize:vertical;min-height:132px}.search-input.found{border-color:#12a35973;background:#e8fff1eb}.search-input.missing{border-color:#f33b2d61;background:#ffefedeb}.search-section{margin-bottom:16px;padding:18px;border-radius:24px;background:linear-gradient(135deg,#0e62d61f,#79d5ff47);border:2px solid rgba(22,96,218,.16);box-shadow:inset 0 1px #ffffff8c}.search-label{margin-bottom:0}.full-width{width:100%}.create-member-form{margin-top:18px;padding:20px;border-radius:24px;background:#ffffffb3}.toggle-field{display:flex;align-items:center;justify-content:space-between;gap:16px}.toggle-field input[type=checkbox]{width:22px;height:22px}.export-form{margin-top:20px}.export-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.attendance-filter-form{margin-top:0;padding:0;background:transparent}.attendance-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.self-service-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.attendance-filter-actions{margin-top:8px}.form-title{margin-bottom:12px}.form-title h3{font-size:1.8rem;color:var(--blue-900)}.form-title p,.firebase-note p{margin:6px 0 0;color:#07326ec2}.firebase-note{margin-top:18px;padding:18px;border-radius:22px}.firebase-note code{padding:2px 6px;border-radius:8px;background:#114db414;color:var(--blue-900)}.template-preview-text{white-space:pre-wrap;line-height:1.55}.print-template-preview{font-family:Courier New,monospace;font-size:.92rem}.search-feedback{margin-top:16px;padding:16px 18px;border-radius:22px;border:2px solid rgba(17,77,180,.08)}.search-feedback strong{display:block;margin-bottom:6px;font-family:Barlow Condensed,sans-serif;font-size:1.35rem;text-transform:uppercase}.search-feedback p{margin:0;color:#07326ec7}.search-feedback.found{background:#e8fff1e0;border-color:#12a35938}.search-feedback.found strong{color:#127843}.search-feedback.missing{background:#ffefede6;border-color:#f33b2d33}.search-feedback.missing strong{color:#b4190d}.member-login-form{padding:20px;border-radius:24px;background:#ffffffb3}.member-list{display:grid;gap:12px}.pagination-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding-top:12px;border-top:1px dashed rgba(17,77,180,.16)}.pagination-summary{color:#07326ec2;text-align:center}.staff-account-list{display:grid;gap:12px;margin-top:18px}.dropoff-list{display:grid;gap:14px}.self-service-results-panel{align-self:start}.self-service-list{display:grid;gap:14px}.self-service-item{border-radius:22px;background:#ffffffb8;border:1px solid rgba(17,77,180,.08);overflow:hidden}.self-service-item summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;cursor:pointer;list-style:none}.self-service-item summary::-webkit-details-marker{display:none}.self-service-item summary strong{display:block;color:var(--blue-900)}.self-service-item summary span,.self-service-item summary em{color:#07326eb8}.self-service-meta{display:grid;gap:10px;padding:0 20px 20px}.self-service-meta p{margin:0}.self-service-raw{margin:4px 0 0;padding:14px;border-radius:18px;background:#09378014;color:#07326ee0;font-size:.9rem;overflow:auto}.dropoff-search-section{margin-bottom:16px}.quick-filter-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.quick-filter-chip{padding:10px 14px;border-radius:999px;background:#114db414;color:var(--blue-900);font-family:Barlow Condensed,sans-serif;font-size:1rem;text-transform:uppercase;letter-spacing:.04em}.quick-filter-chip.active{background:linear-gradient(135deg,#0a3f96eb,#1660daeb);color:var(--white);box-shadow:0 14px 24px #0a3f962e}.dropoff-card{padding:18px;border-radius:24px;background:#ffffffd1;border:2px solid rgba(17,77,180,.08);box-shadow:0 14px 30px #0a3f961a}.dropoff-card-top,.dropoff-status-row,.dropoff-metrics{display:flex;gap:10px;align-items:center;justify-content:space-between}.dropoff-card-top strong{display:block;font-family:Barlow Condensed,sans-serif;font-size:1.6rem;color:var(--blue-900)}.dropoff-card-top p,.dropoff-meta p{margin:0;color:#07326ec2}.dropoff-metrics{flex-wrap:wrap;margin:14px 0 12px}.dropoff-metrics span{padding:10px 12px;border-radius:14px;background:#114db414;color:var(--blue-900)}.dropoff-metrics span.payment-chip{font-weight:700}.dropoff-metrics span.payment-chip.paid{background:#16a34a24;color:#15803d}.dropoff-metrics span.payment-chip.unpaid{background:#dc26261f;color:#b91c1c}.dropoff-priority-chip{background:#f59e0b29!important;color:#b45309!important;font-weight:700}.payment-chip{display:inline-flex;align-items:center;padding:8px 14px;border-radius:999px;font-weight:700;font-family:Barlow Condensed,sans-serif;font-size:1rem;text-transform:uppercase;letter-spacing:.03em}.payment-chip.paid{background:#16a34a24;color:#15803d}.payment-chip.unpaid{background:#dc26261f;color:#b91c1c}button.payment-chip.toggle{border:1px solid transparent;cursor:pointer;transition:filter .15s ease,box-shadow .15s ease,transform .05s ease}button.payment-chip.toggle.unpaid{border-color:#dc262659}button.payment-chip.toggle.paid{border-color:#16a34a59}button.payment-chip.toggle:hover{filter:brightness(.97);box-shadow:0 4px 12px #0a3f961f}button.payment-chip.toggle:active{transform:translateY(1px)}.dropoff-card-top{align-items:flex-start}.dropoff-card-chips{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex-shrink:0}.dropoff-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px}.dropoff-meta p span{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:#07326e80;margin-bottom:1px}.dropoff-status-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:16px}.status-step{display:flex;align-items:center;gap:7px;padding:10px 12px;border-radius:14px;background:#114db40f;color:#07326e9e;font-family:Barlow Condensed,sans-serif;font-size:.95rem;text-transform:uppercase;letter-spacing:.02em;transition:background .15s ease,color .15s ease}.status-step-dot{width:9px;height:9px;border-radius:999px;background:#0a3f9638;flex-shrink:0}.status-step.done{background:#1660da1a;color:var(--blue-900)}.status-step.done .status-step-dot{background:#1660dab3}.status-step.active{background:linear-gradient(135deg,#0a3f96f2,#1660daf2);color:var(--white);box-shadow:0 8px 18px #0a3f963d}.status-step.active .status-step-dot{background:var(--white)}.pricing-rules-card{padding:14px 16px;border-radius:18px;background:#0e62d612;border:1px dashed rgba(22,96,218,.28);margin-bottom:4px}.pricing-rules-caption{display:block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--blue-900);margin-bottom:4px}.pricing-rules-card p{margin:0;color:#07326ec7}.dropoff-form-row{display:grid;grid-template-columns:1fr 1.4fr;gap:14px;align-items:start}.segmented-toggle{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:5px;border-radius:16px;background:#114db414;margin-top:8px}.segmented-option{padding:11px 12px;border-radius:12px;background:transparent;color:#07326e99;font-weight:700;font-family:Barlow Condensed,sans-serif;font-size:1.05rem;text-transform:uppercase;letter-spacing:.03em;transition:background .15s ease,color .15s ease}.segmented-option.active.paid{background:var(--white);color:#15803d;box-shadow:0 6px 14px #16a34a2e}.segmented-option.active.unpaid{background:var(--white);color:#b91c1c;box-shadow:0 6px 14px #dc262629}.dropoff-price-summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border-radius:20px;background:linear-gradient(135deg,#0a3f9612,#1660da1a);border:1px solid rgba(22,96,218,.16)}.dropoff-price-caption{display:block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#07326e99}.dropoff-price-summary strong{display:block;font-family:Barlow Condensed,sans-serif;font-size:1.9rem;line-height:1.05;color:var(--blue-900)}.dropoff-price-summary em{font-style:normal;font-size:.8rem;color:#07326ead}.dropoff-status-row{flex-wrap:wrap;justify-content:flex-start;margin-top:16px}.dropoff-print-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.dropoff-history{display:grid;gap:8px;margin-top:16px;padding-top:14px;border-top:1px dashed rgba(17,77,180,.18)}.print-history{margin-top:12px}.dropoff-history-item{display:grid;grid-template-columns:1fr auto auto;gap:10px;padding:10px 12px;border-radius:14px;background:#114db40f}.dropoff-history-item strong,.dropoff-history-item span,.dropoff-history-item em{color:var(--blue-900);font-style:normal}.status-toggle{padding:10px 12px;border-radius:14px;background:#114db414;color:var(--blue-900);font-family:Barlow Condensed,sans-serif;font-size:1rem;text-transform:uppercase}.status-toggle.active{background:linear-gradient(135deg,#0a3f96eb,#1660daeb);color:var(--white)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:20px;background:#0723566b;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal-card{width:min(100%,540px);padding:24px;border-radius:28px;background:#fffffff7;box-shadow:0 28px 80px #0a3f9638}.modal-card h2{margin:8px 0 10px;font-family:Barlow Condensed,sans-serif;font-size:2rem;color:var(--blue-900);text-transform:uppercase}.modal-card p{margin:0;color:#07326ec7}.modal-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}.modal-summary-item{padding:12px 14px;border-radius:16px;background:#114db414}.modal-summary-item strong,.modal-summary-item span{display:block}.modal-summary-item strong{font-family:Barlow Condensed,sans-serif;color:var(--blue-900);text-transform:uppercase}.modal-summary-item span{color:#07326ec7}.modal-link-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.staff-account-item{display:flex;justify-content:space-between;gap:16px;padding:16px;border-radius:22px;background:#ffffffd1;border:2px solid rgba(17,77,180,.08);box-shadow:0 14px 30px #0a3f961a}.staff-account-item strong,.staff-account-item span,.staff-account-item em{display:block}.staff-account-item span,.staff-account-item em{color:#07326eb8;font-style:normal;text-transform:capitalize}.staff-account-meta{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.status-chip{display:inline-flex;padding:8px 12px;border-radius:999px;font-family:Barlow Condensed,sans-serif;text-transform:uppercase;letter-spacing:.04em}.status-chip.active{background:#12a35924;color:#127843}.status-chip.inactive{background:#f33b2d1f;color:#b4190d}.compact-btn{padding:10px 14px;font-size:1rem}.overview-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.overview-stats.single-column{grid-template-columns:1fr}.metric-card{padding:18px;border-radius:22px}.metric-card strong{display:block;font-family:Barlow Condensed,sans-serif;font-size:1.8rem;color:var(--blue-900)}.metric-card span{color:#07326ec2}.member-list-item{width:100%;padding:16px;border-radius:22px;color:var(--blue-900);text-align:left}.member-list-item.selected{background:linear-gradient(135deg,#0a3f96eb,#1660daeb);color:var(--white)}.member-list-item.selected strong,.member-list-item.selected span,.member-list-item.selected em{color:inherit}.member-list-item strong,.member-list-item span,.member-list-item em{display:block}.member-list-item span,.member-list-item em{font-style:normal;color:#07326eb8}.member-list-item small,.mini-count{color:#07326eb8}.member-list-meta{text-align:right}.member-list-meta small{display:block;margin-top:3px}.activity-list,.attendance-list{display:grid;gap:12px}.attendance-item{display:flex;justify-content:space-between;gap:16px;padding:16px;border-radius:22px}.attendance-item strong{display:block;font-family:Barlow Condensed,sans-serif;font-size:1.3rem;color:var(--blue-900)}.attendance-item span,.attendance-item em{color:#07326eb8;font-style:normal}.attendance-meta{text-align:right}.activity-item{justify-content:flex-start;padding:14px 16px;border-radius:20px}.activity-item p{margin:0;color:var(--blue-900)}.activity-dot{width:12px;height:12px;flex:0 0 auto;border-radius:999px;background:linear-gradient(180deg,var(--yellow),var(--red))}.member-id-block small{display:block;margin-top:4px;color:#07326ec7}.member-portal-card,.empty-state{padding:18px;border-radius:22px;background:#ffffffc7;border:2px solid rgba(17,77,180,.08)}.member-portal-card strong,.empty-state h3{display:block;margin:0 0 6px;font-family:Barlow Condensed,sans-serif;font-size:1.8rem;color:var(--blue-900);text-transform:uppercase}.member-portal-card span,.member-portal-card p,.empty-state p,.login-error{margin:0;color:#07326ec2}.member-portal-card p{margin-top:4px}.member-portal-card.muted{margin-top:14px}.seal-history-card{max-height:220px;overflow-y:auto}.seal-history-list{display:grid;gap:8px;margin-top:12px}.seal-history-item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:10px 14px;border-radius:14px;background:#114db40f}.seal-history-item .seal-history-label{font-family:Barlow Condensed,sans-serif;font-size:1.05rem;text-transform:uppercase;letter-spacing:.02em;color:var(--blue-900)}.seal-history-item .seal-history-detail{font-size:.86rem;color:#07326ea8}.seal-history-item .seal-history-staff{font-size:.82rem;font-weight:700;color:var(--blue-700);white-space:nowrap}.portal-progress{display:grid;gap:8px;margin-top:14px}.portal-progress span{padding:10px 12px;border-radius:14px;background:#114db414;color:var(--blue-900)}.login-error{margin:12px 0 0;color:#b4190d}.activity-grid,.attendance-grid{grid-template-columns:1fr}.admin-workspace{display:grid;gap:22px;width:100%;margin:18px 0 0}.admin-topbar{position:relative;z-index:1;display:grid;gap:20px;padding:24px;border-radius:30px;background:#ebf9ffdb;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.admin-topbar-text h2{margin:6px 0 0;font-family:Barlow Condensed,sans-serif;font-size:2.1rem;line-height:1;text-transform:uppercase;color:var(--blue-900)}.admin-topbar-text p{margin:8px 0 0;color:#07326ec2;font-weight:600}.admin-subnav{display:grid;grid-template-columns:repeat(auto-fit,minmax(186px,1fr));gap:12px}.admin-subnav-tab{display:grid;gap:4px;padding:14px 16px;border-radius:20px;text-align:left;background:#ffffffa8;border:2px solid rgba(17,77,180,.1);transition:transform .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease}.admin-subnav-tab:hover{transform:translateY(-2px);background:#ffffffeb;box-shadow:0 14px 30px #0a3f9624}.admin-subnav-label{font-family:Barlow Condensed,sans-serif;font-size:1.12rem;text-transform:uppercase;letter-spacing:.02em;color:var(--blue-900)}.admin-subnav-desc{font-size:.8rem;font-weight:600;color:#07326ea8}.admin-subnav-tab.active{background:linear-gradient(135deg,#0a3f96f0,#1660daf0);border-color:transparent;box-shadow:0 16px 34px #0a3f963d}.admin-subnav-tab.active .admin-subnav-label,.admin-subnav-tab.active .admin-subnav-desc{color:var(--white)}.admin-panel{width:100%}.admin-dropoff-panel .dropoff-list{max-height:70vh;overflow-y:auto;padding-right:4px}.config-form{margin-top:0;padding:0;background:transparent;display:grid;gap:18px}.settings-group{display:grid;gap:16px;padding:22px;border-radius:24px;background:#ffffffb3;border:1px solid rgba(17,77,180,.08);box-shadow:inset 0 1px #fff9}.settings-group-head h3{margin:0;font-family:Barlow Condensed,sans-serif;font-size:1.45rem;text-transform:uppercase;color:var(--blue-900)}.settings-group-head p{margin:6px 0 0;color:#07326ebd;font-weight:600}.settings-group-head code{padding:2px 6px;border-radius:8px;background:#114db414;color:var(--blue-900)}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}.settings-grid .field-label{margin-bottom:0}.seal-rows-readout{display:flex;flex-direction:column;justify-content:center;gap:4px;padding:14px 16px;border-radius:18px;background:#0e62d612;border:1px solid rgba(22,96,218,.18)}.seal-rows-readout strong{font-size:1.15rem;color:var(--blue-900);line-height:1.1}.seal-rows-readout em{font-style:normal;font-size:.78rem;color:#0a3f96b3}.settings-hint{padding:14px 16px;border-radius:18px;background:#0e62d612;border:1px dashed rgba(22,96,218,.28)}.settings-hint strong{display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:#07326eb3}.settings-hint-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.settings-hint-tags code{padding:3px 9px;border-radius:9px;background:#ffffffdb;border:1px solid rgba(17,77,180,.12);color:var(--blue-700);font-size:.8rem}.template-block{display:grid;gap:14px;align-items:start}.template-block .field-label{margin-bottom:0}.template-sample{padding:14px 16px;border-radius:18px;background:#eff9ffdb;border:1px solid rgba(17,77,180,.1)}.template-sample-caption{display:block;margin-bottom:8px;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:#07326e99}.template-sample .template-preview-text{margin:0;color:var(--blue-900)}.settings-footer{position:sticky;bottom:8px;display:flex;justify-content:flex-end;padding:14px;border-radius:22px;background:#ebf9ffeb;border:1px solid rgba(17,77,180,.1);box-shadow:0 14px 30px #0a3f9629;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.settings-footer .primary-btn{min-width:220px}@media (min-width: 900px){.template-block{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}}@media (max-width: 980px){.hero-card,.dashboard-grid,.login-layout,.portal-hero,.members-grid{grid-template-columns:1fr}.dropoff-intake-panel{position:static}.portal-hero .hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.loyalty-preview{grid-row:auto}.overview-panel{grid-column:auto}.overview-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.export-filter-grid,.attendance-filter-grid{grid-template-columns:1fr}.self-service-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dropoff-print-row,.modal-summary{grid-template-columns:1fr}}@media (max-width: 720px){.app-shell{padding:18px 14px 104px}.hero-card,.panel,.member-card{padding:20px}.hero-stats,.stamp-grid,.stamp-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.stamp-grid{gap:10px}.reward-slot{grid-column:span 2;aspect-ratio:auto;min-height:88px;border-radius:26px}.member-card-top,.member-card-footer,.action-row,.panel-heading,.member-list-item,.session-actions,.attendance-item,.staff-account-item,.dropoff-card-top,.dropoff-status-row,.dropoff-metrics{flex-direction:column;align-items:flex-start}.member-id-block,.member-list-meta,.attendance-meta,.staff-account-meta{text-align:left}.primary-btn,.ghost-btn,.wa-btn,.portal-tab,.compact-btn{width:100%}.overview-stats,.admin-subnav{grid-template-columns:1fr}.settings-footer{position:static;padding:12px}.settings-footer .primary-btn{min-width:0}.admin-dropoff-panel .dropoff-list{max-height:none}.portal-hero .hero-stats{grid-template-columns:1fr}.self-service-filter-grid,.self-service-item summary{grid-template-columns:1fr}.portal-tab{justify-content:center}.hero-collapse-toggle{display:inline-flex}.portal-hero.mobile-collapsed .hero-brand p,.portal-hero.mobile-collapsed .hero-stats,.portal-hero.mobile-collapsed .backend-warning,.portal-hero.mobile-collapsed .portal-session-card{display:none}.portal-hero.mobile-collapsed .hero-brand h1{margin-bottom:0;font-size:clamp(2.2rem,10vw,3.5rem)}.dropoff-history-item{grid-template-columns:1fr}.dropoff-card-chips{flex-direction:row;align-items:center;flex-wrap:wrap}.dropoff-form-row{grid-template-columns:1fr}.dropoff-status-track{grid-template-columns:repeat(2,minmax(0,1fr))}.dropoff-meta{grid-template-columns:1fr}.self-service-item summary{flex-direction:column;align-items:flex-start}.pagination-row{flex-direction:column;align-items:stretch}.pagination-summary{order:-1}.attendance-filter-actions{width:100%}.loading-card{padding:28px 20px;border-radius:26px}.loading-logo{width:min(220px,76vw)}.login-brand-logo{width:min(240px,72vw)}.toast-stack{top:auto;right:14px;bottom:92px;left:14px;width:auto}.portal-nav{position:fixed;right:12px;bottom:max(12px,env(safe-area-inset-bottom));left:12px;z-index:16;margin-top:0;padding:10px;gap:8px;flex-wrap:nowrap;justify-content:space-between;border-radius:26px;background:#fffffff0;border:2px solid rgba(17,77,180,.1);box-shadow:0 18px 40px #0a3f962e;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.portal-tab{flex:1 1 0;min-width:0;width:auto;gap:6px;padding:10px 8px;border-radius:18px;font-size:.86rem;line-height:1;flex-direction:column}.portal-tab span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.portal-tab-icon{width:18px;height:18px}.stamp-mark{font-size:1rem}}
