:root{--primary: #f97316;--primary-light: #fdba74;--secondary: #3b82f6;--accent: #fcd34d;--background: #f8fafc;--surface: rgba(255, 255, 255, .85);--surface-border: rgba(0, 0, 0, .1);--text-primary: #1e293b;--text-secondary: #475569;--success: #10b981}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--background);color:var(--text-primary);min-height:100vh;display:flex;flex-direction:column;background-image:linear-gradient(#fff6,#fff9),url(/Kindness-Carnival-Signup/bg.png);background-size:cover;background-position:center;background-attachment:fixed;overflow-x:hidden}#root{display:flex;flex-direction:column;min-height:100vh;width:100%}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px #8b5cf666}50%{box-shadow:0 0 40px #ec489999}}.animate-fade-in{animation:fadeIn .8s ease-out forwards}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.app-container{max-width:800px;margin:0 auto;padding:3rem 1.5rem;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1}.glass-card{background:var(--surface);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--surface-border);border-radius:24px;padding:2.5rem;width:100%;box-shadow:0 25px 50px -12px #00000026;position:relative;overflow:hidden}.glass-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary),var(--secondary),var(--accent))}.header{text-align:center;margin-bottom:2.5rem}.title{font-size:3.5rem;font-weight:800;line-height:1.1;margin-bottom:1rem;background:linear-gradient(135deg,var(--primary),var(--secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.02em}.subtitle{font-size:1.1rem;color:var(--text-secondary);line-height:1.6;max-width:600px;margin:0 auto}.slots-grid{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:2rem}@media (min-width: 640px){.slots-grid{grid-template-columns:repeat(2,1fr)}.slots-grid .cleanup-slot{grid-column:span 2}}.slot-card{background:#ffffff80;border:1px solid var(--surface-border);border-radius:16px;padding:1.5rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;gap:.5rem;position:relative;overflow:hidden}.slot-card:hover{transform:translateY(-4px);background:#ffffff14;border-color:var(--primary-light);box-shadow:0 10px 25px -5px #0000001a}.slot-card.selected{background:#8b5cf626;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary)}.slot-icon{color:var(--primary);margin-bottom:.5rem}.slot-title{font-size:1.2rem;font-weight:600;color:var(--text-primary)}.slot-time{font-size:.95rem;color:var(--secondary);display:flex;align-items:center;gap:.3rem}.slot-spots{font-size:.85rem;color:var(--text-secondary);margin-top:auto;padding-top:1rem}.form-container{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--surface-border)}.form-group{margin-bottom:1.5rem}.form-label{display:block;margin-bottom:.5rem;font-size:.95rem;font-weight:500;color:var(--text-primary)}.form-input{width:100%;background:#ffffffb3;border:1px solid rgba(0,0,0,.1);border-radius:12px;padding:1rem;color:var(--text-primary);font-size:1rem;font-family:inherit;transition:all .2s ease}.form-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #3b82f640;background:#fffffff2}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:1rem 2rem;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden;z-index:1}.btn:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,var(--secondary),var(--primary));z-index:-1;transition:opacity .3s ease;opacity:0}.btn:hover:before{opacity:1}.btn:hover{transform:translateY(-2px);box-shadow:0 10px 20px -10px var(--secondary)}.btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.btn-secondary{background:#ffffff0d;border:1px solid var(--surface-border);color:var(--text-secondary)}.btn-secondary:before{display:none}.btn-secondary:hover{background:#ffffff1a;color:#fff;box-shadow:none}.success-container{text-align:center;padding:2rem 0}.success-icon{width:80px;height:80px;background:#10b9811a;color:var(--success);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;animation:pulse-glow 2s infinite}.error-message{color:#ef4444;background:#ef44441a;padding:1rem;border-radius:8px;margin-bottom:1.5rem;font-size:.95rem;border:1px solid rgba(239,68,68,.2)}.field-error{color:#ef4444;font-size:.85rem;margin-top:.5rem;margin-left:.25rem;font-weight:500}.back-btn{background:none;border:none;color:var(--text-secondary);display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.9rem;margin-bottom:1.5rem;padding:0;transition:color .2s}.back-btn:hover{color:#fff}.spinner{width:20px;height:20px;border:3px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}
