@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/fonts/nunito-variable-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-primary:#667eea;--color-primary-hover:#5a6fd6;--color-success:#28a745;--color-success-hover:#218838;--color-success-gradient:linear-gradient(135deg, #4ecdc4, #44b8b0);--color-accent:#4ecdc4;--color-danger:#dc3545;--color-danger-hover:#c82333;--color-warning:#ffc107;--color-warning-hover:#e0a800;--color-cancel:#6c757d;--color-cancel-hover:#5a6268;--bg-gradient:linear-gradient(160deg, #e8f4fd 0%, #fef3e2 100%);--color-card-bg:#fff;--color-bg-subtle:#f8f9fa;--color-bg-muted:#e9ecef;--color-overlay:#00000080;--color-body-bg:#f8f9fa;--color-text:#333;--color-text-muted:#6c757d;--color-text-inverse:#fff;--color-border:#dee2e6;--color-chore-bg:#fff;--color-chore-bg-alt:linear-gradient(135deg, #fff5f5, #fff);--color-leaderboard-bg:#fffdf5;--color-leaderboard-row-alt:#fffdf5;--color-leaderboard-highlight:#f0f3ff;--color-badge-earned-bg:#fff9c4;--color-badge-earned-border:#ffe082;--color-badge-locked-bg:#f5f5f5;--color-badge-locked-border:#e0e0e0;--color-poll-bg:linear-gradient(135deg, #f3e5f5, #fff);--color-poll-option-bg:#f8f9fa;--color-poll-option-border:#e0e0e0;--color-points-positive:#28a745;--color-points-balance:#ff6b6b;--color-streak:#e65100;--color-subtext:#666;--color-action-btn-bg:transparent;--color-action-btn-border:#e0e0e0;--color-action-btn-text:#555;--color-progress-toast-bg:#d4edda;--color-progress-toast-text:#155724;--color-pending-bg:#fff3cd;--color-pending-text:#e65100;--color-completed-bg:#d4edda;--color-completed-text:#28a745;--color-text-secondary:#666;--space-xs:4px;--space-sm:8px;--space-md:18px;--space-lg:24px;--space-xl:32px;--space-section:20px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-card:20px;--radius-full:50%;--font-family:"Nunito", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-md:1rem;--font-size-lg:1.25rem;--font-size-xl:1.5rem;--font-weight-normal:400;--font-weight-semibold:600;--font-weight-bold:700;--shadow-sm:0 2px 4px #0000000d;--shadow-md:0 4px 12px #0000001a;--shadow-lg:0 8px 24px #00000026;--transition-fast:.15s ease;--transition-normal:.25s ease;--app-max-width:480px;--touch-target-min:44px;--touch-target-kiosk:56px;--z-loading-bar:1000;--z-modal-overlay:1100;--z-modal-content:1110;--z-alert:1150}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scrollbar-gutter:stable;overscroll-behavior:none}body{font-family:var(--font-family);background:var(--bg-gradient);color:var(--color-text);overscroll-behavior-y:contain;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;font-size:clamp(14px,3.5vw,16px)}body.kid-theme{-webkit-user-select:none;user-select:none}body.kid-theme input,body.kid-theme textarea{-webkit-user-select:text;user-select:text}body.kid-theme .btn,body.kid-theme button[class*=btn]{border-radius:25px;min-width:44px;min-height:44px;transition:transform .15s,box-shadow .15s}body.kid-theme .btn:active,body.kid-theme button[class*=btn]:active{transform:scale(.93)}body.kid-theme .btn-success,body.kid-theme button[data-variant=success]{background:linear-gradient(135deg,#4ecdc4,#44b8b0);box-shadow:0 3px 8px #4ecdc44d}body.kid-theme .btn-success:active,body.kid-theme button[data-variant=success]:active{box-shadow:0 0 16px #4ecdc480}.section-chores{background:linear-gradient(135deg,#fff5f5,#fff);border-left:4px solid #ff6b6b}.section-rewards{border-left:4px solid #4ecdc4}.section-wishlist{border-left:4px solid #ffe66d}.section-activity{border-left:4px solid #c8e6c9}.section-polls{background:linear-gradient(135deg,#f3e5f5,#fff);border-left:4px solid #9c27b0}.leaderboard-row:nth-child(2n){background:#fffdf5}@keyframes tapBounce{0%{transform:scale(1)}50%{transform:scale(.92)}to{transform:scale(1)}}h1,h2,h3,h4,h5,h6{line-height:1.3;font-weight:var(--font-weight-bold)}a{color:var(--color-primary);text-decoration:none}button{cursor:pointer;font-family:inherit}input,textarea,select{font-family:inherit;font-size:inherit}@media (width<=400px){body{font-size:14px}.container{padding:10px}.modal{padding:18px}.login-container{margin:30px auto}.grid{grid-template-columns:repeat(auto-fill,minmax(100%,1fr))}.reward-card{padding:16px 12px}}@media (width<=768px){body{font-size:clamp(14px,3.5vw,16px)}.grid{grid-template-columns:repeat(auto-fill,minmax(45%,1fr))}.join-code-display .code{font-size:2em}.header{flex-direction:column;align-items:flex-start}.pending-banner{z-index:10;position:sticky;top:0}.admin-view .btn-sm{min-height:var(--touch-target-min);min-width:var(--touch-target-min)}}@media (width>=769px) and (orientation:landscape){body{font-size:16px}:root{--app-max-width:1100px}.container{max-width:var(--app-max-width);padding:20px 32px}.grid{gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.card{padding:20px}.modal{max-width:520px}.member-content-grid{gap:var(--space-md);grid-template-columns:1fr 1fr;display:grid}.member-content-grid>.member-content-full{grid-column:1/-1}.admin-header{padding:18px 28px}}@media (display-mode:standalone){button,[role=button]{min-height:var(--touch-target-kiosk);min-width:var(--touch-target-kiosk);font-size:16px}.btn-sm{min-width:48px;min-height:48px}.chore-action-btn{min-height:var(--touch-target-kiosk);padding:14px 22px}input,select,textarea{min-height:var(--touch-target-kiosk)}a{min-height:var(--touch-target-kiosk);min-width:var(--touch-target-kiosk)}}@media (prefers-reduced-motion:no-preference){@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes confettiFall{to{opacity:0;transform:translateY(110vh)rotate(720deg)}}@keyframes tapBounce{0%{transform:scale(1)}50%{transform:scale(.92)}to{transform:scale(1)}}@keyframes milestoneGlow{0%,to{box-shadow:0 0 8px #ffe64d4d}50%{box-shadow:0 0 20px #ffe64d99,0 0 40px #ff6b6b26}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes pulse{0%{transform:scale(1)}to{transform:scale(1.15)}}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes codeGlow{0%,to{box-shadow:0 0 6px #667eea33}50%{box-shadow:0 0 16px #667eea80,0 0 30px #667eea26}}@keyframes balanceBounce{0%{transform:scale(1)}30%{transform:scale(1.2)}60%{transform:scale(.95)}to{transform:scale(1)}}@keyframes checkPop{0%{transform:scale(0)}50%{transform:scale(1.3)}to{transform:scale(1)}}@keyframes balloonRise{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-110vh)}}@keyframes slideOut{0%{opacity:1}to{opacity:0;transform:translate(100%)}}@keyframes hintPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.03)}}@keyframes hotFlicker{0%,to{text-shadow:0 0 4px #e651004d}50%{text-shadow:0 0 12px #e6510099,0 0 20px #ff98004d}}@keyframes urgencyPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(1.08)}}@keyframes progressCelebrate{0%{background-position:0%}to{background-position:200%}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}[data-theme=purple]{--color-primary:#667eea;--color-primary-hover:#5a6fd6;--color-success:#4ecdc4;--color-success-gradient:linear-gradient(135deg, #4ecdc4, #44b8b0);--color-accent:#4ecdc4;--bg-gradient:linear-gradient(160deg, #e8f4fd 0%, #fef3e2 100%)}[data-theme=pink]{--color-primary:#e91e63;--color-primary-hover:#c2185b;--color-success:#f48fb1;--color-success-gradient:linear-gradient(135deg, #f48fb1, #e91e63);--color-accent:#f48fb1;--bg-gradient:linear-gradient(160deg, #fce4ec 0%, #fff0f5 100%)}[data-theme=green]{--color-primary:#4caf50;--color-primary-hover:#388e3c;--color-success:#81c784;--color-success-gradient:linear-gradient(135deg, #81c784, #4caf50);--color-accent:#81c784;--bg-gradient:linear-gradient(160deg, #e8f5e9 0%, #f1f8e9 100%)}[data-theme=blue]{--color-primary:#1976d2;--color-primary-hover:#1565c0;--color-success:#64b5f6;--color-success-gradient:linear-gradient(135deg, #64b5f6, #1976d2);--color-accent:#64b5f6;--bg-gradient:linear-gradient(160deg, #e3f2fd 0%, #e8eaf6 100%)}[data-theme=orange]{--color-primary:#f57c00;--color-primary-hover:#e65100;--color-success:#f57c00;--color-success-gradient:linear-gradient(135deg, #ffb74d, #f57c00);--color-accent:#ffb74d;--bg-gradient:linear-gradient(160deg, #fff3e0 0%, #fbe9e7 100%)}[data-theme=red]{--color-primary:#d32f2f;--color-primary-hover:#b71c1c;--color-success:#ef5350;--color-success-gradient:linear-gradient(135deg, #ef5350, #d32f2f);--color-accent:#ef5350;--bg-gradient:linear-gradient(160deg, #ffebee 0%, #fce4ec 100%)}[data-theme=teal]{--color-primary:#00897b;--color-primary-hover:#00695c;--color-success:#4db6ac;--color-success-gradient:linear-gradient(135deg, #4db6ac, #00897b);--color-accent:#4db6ac;--bg-gradient:linear-gradient(160deg, #e0f2f1 0%, #e0f7fa 100%)}[data-theme=yellow]{--color-primary:#e68a00;--color-primary-hover:#cc7a00;--color-success:#e68a00;--color-success-gradient:linear-gradient(135deg, #f9a825, #e68a00);--color-accent:#fdd835;--bg-gradient:linear-gradient(160deg, #fffde7 0%, #fff9c4 100%)}[data-theme=dark]{--color-primary:#9fa8da;--color-primary-hover:#7986cb;--color-success:#a5d6a7;--color-success-gradient:linear-gradient(135deg, #a5d6a7, #81c784);--color-accent:#80cbc4;--color-danger:#ff8a80;--color-warning:#ffcc80;--bg-gradient:linear-gradient(160deg, #1a2327 0%, #263238 100%);--color-card-bg:#2e3d44;--color-bg-subtle:#37474f;--color-bg-muted:#455a64;--color-body-bg:#1a2327;--color-text:#f5f5f5;--color-text-muted:#cfd8dc;--color-text-secondary:#b0bec5;--color-text-inverse:#fff;--color-border:#546e7a;--color-overlay:#000000b3;--shadow-sm:0 2px 4px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 8px 24px #00000080;--color-chore-bg:#2e3d44;--color-chore-bg-alt:linear-gradient(135deg, #2e3d44, #37474f);--color-leaderboard-bg:#2e3d44;--color-leaderboard-row-alt:#263238;--color-leaderboard-highlight:#1a3a4a;--color-badge-earned-bg:#3e4a2e;--color-badge-earned-border:#6d8a3e;--color-badge-locked-bg:#2a3439;--color-badge-locked-border:#546e7a;--color-poll-bg:linear-gradient(135deg, #2e2840, #2e3d44);--color-poll-option-bg:#37474f;--color-poll-option-border:#546e7a;--color-points-positive:#a5d6a7;--color-points-balance:#ffcc80;--color-streak:#ffcc80;--color-subtext:#b0bec5;--color-action-btn-bg:#455a64;--color-action-btn-border:#78909c;--color-action-btn-text:#fff;--color-progress-toast-bg:#1b5e20;--color-progress-toast-text:#c8e6c9;--color-pending-bg:#4a3800;--color-pending-text:#ffcc02;--color-completed-bg:#1b3d1b;--color-completed-text:#a5d6a7}@media (prefers-color-scheme:dark){:root:not([data-theme]){--color-primary:#9fa8da;--color-primary-hover:#7986cb;--color-success:#a5d6a7;--color-success-gradient:linear-gradient(135deg, #a5d6a7, #81c784);--color-accent:#80cbc4;--color-danger:#ff8a80;--color-warning:#ffcc80;--bg-gradient:linear-gradient(160deg, #1a2327 0%, #263238 100%);--color-card-bg:#2e3d44;--color-bg-subtle:#37474f;--color-bg-muted:#455a64;--color-body-bg:#1a2327;--color-text:#f5f5f5;--color-text-muted:#cfd8dc;--color-text-secondary:#b0bec5;--color-text-inverse:#fff;--color-border:#546e7a;--color-overlay:#000000b3;--shadow-sm:0 2px 4px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 8px 24px #00000080;--color-chore-bg:#2e3d44;--color-chore-bg-alt:linear-gradient(135deg, #2e3d44, #37474f);--color-leaderboard-bg:#2e3d44;--color-leaderboard-row-alt:#263238;--color-leaderboard-highlight:#1a3a4a;--color-badge-earned-bg:#3e4a2e;--color-badge-earned-border:#6d8a3e;--color-badge-locked-bg:#2a3439;--color-badge-locked-border:#546e7a;--color-poll-bg:linear-gradient(135deg, #2e2840, #2e3d44);--color-poll-option-bg:#37474f;--color-poll-option-border:#546e7a;--color-points-positive:#a5d6a7;--color-points-balance:#ffcc80;--color-streak:#ffcc80;--color-subtext:#b0bec5;--color-action-btn-bg:#455a64;--color-action-btn-border:#78909c;--color-action-btn-text:#fff;--color-progress-toast-bg:#1b5e20;--color-progress-toast-text:#c8e6c9;--color-pending-bg:#4a3800;--color-pending-text:#ffcc02;--color-completed-bg:#1b3d1b;--color-completed-text:#a5d6a7}}[data-theme=dark] button:disabled,[data-theme=dark] button[disabled]{opacity:.35;filter:grayscale(.4);cursor:not-allowed}@media (prefers-color-scheme:dark){:root:not([data-theme]) button:disabled,:root:not([data-theme]) button[disabled]{opacity:.35;filter:grayscale(.4);cursor:not-allowed}}[data-theme=dark] input,[data-theme=dark] textarea,[data-theme=dark] select{background:var(--color-bg-subtle);color:var(--color-text);border-color:var(--color-border)}[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:var(--color-text-secondary)}@media (prefers-color-scheme:dark){:root:not([data-theme]) input,:root:not([data-theme]) textarea,:root:not([data-theme]) select{background:var(--color-bg-subtle);color:var(--color-text);border-color:var(--color-border)}:root:not([data-theme]) input::placeholder,:root:not([data-theme]) textarea::placeholder{color:var(--color-text-secondary)}}
