:root{--primary:#2563eb;--primary-hover:#1d4ed8;--secondary:#059669;--bg-color:#f8fafc;--surface:#fff;--surface-border:#e2e8f0;--text-main:#1e293b;--text-muted:#64748b;--accent:#3b82f6;color:var(--text-main);background:var(--bg-color);justify-content:center;place-items:center;min-height:100vh;margin:0;font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5;display:flex}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:100%;min-height:100vh;margin:0}#root{box-sizing:border-box;width:100%;max-width:1200px;margin:0 auto;padding:2rem}.app-container{flex-direction:column;align-items:center;width:100%;animation:.6s ease-out fadeIn;display:flex}.header{text-align:center;margin-bottom:3rem}.header h1{color:var(--primary);letter-spacing:-1px;margin:0;font-size:3rem;font-weight:800}.header p{color:var(--text-muted);margin-top:.5rem;font-size:1.2rem}.glass-panel{background:var(--surface);border:1px solid var(--surface-border);border-radius:24px;width:100%;max-width:600px;padding:2.5rem;transition:transform .3s;box-shadow:0 20px 40px -15px #0000000d}.modalities{grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2rem;display:grid}.modality-card{text-align:center;cursor:pointer;background:#f1f5f9;border:2px solid #0000;border-radius:16px;padding:2rem 1rem;transition:all .3s}.modality-card:hover{background:#e2e8f0;transform:translateY(-5px)}.modality-card.selected{border-color:var(--accent);color:var(--primary);background:#eff6ff}.modality-icon{margin-bottom:1rem;font-size:3.5rem}.modality-title{font-size:1.25rem;font-weight:700}.schedule-section{animation:.4s ease-out slideUp}.section-title{text-align:center;color:var(--text-main);margin-bottom:1.5rem;font-size:1.5rem;font-weight:700}.days-tabs{justify-content:center;gap:1rem;margin-bottom:2rem;display:flex}.day-tab{cursor:pointer;color:var(--text-muted);background:#f1f5f9;border:2px solid #0000;border-radius:99px;padding:.75rem 2.5rem;font-weight:600;transition:all .2s}.day-tab:hover{background:#e2e8f0}.day-tab.active{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 4px 15px #2563eb4d}.slots-grid{grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:2rem;display:grid}.slot-btn{cursor:pointer;color:var(--text-main);background:#f1f5f9;border:2px solid #0000;border-radius:12px;padding:1.25rem;font-size:1.1rem;font-weight:600;transition:all .2s}.slot-btn:hover{background:#e2e8f0;transform:scale(1.02)}.slot-btn.selected{border-color:var(--secondary);color:var(--secondary);background:#ecfdf5}.form-section{animation:.4s ease-out slideUp}.input-group{margin-bottom:1.5rem}.input-group label{color:var(--text-main);margin-bottom:.5rem;font-size:1rem;font-weight:600;display:block}.input-group input{border:2px solid var(--surface-border);width:100%;color:var(--text-main);box-sizing:border-box;background:#f8fafc;border-radius:12px;padding:1.2rem;font-family:inherit;font-size:1.1rem;transition:border-color .3s}.input-group input:focus{border-color:var(--accent);background:#fff;outline:none}.submit-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:12px;width:100%;margin-top:1rem;padding:1.2rem;font-size:1.1rem;font-weight:700;transition:all .3s;box-shadow:0 10px 20px -5px #2563eb66}.submit-btn:hover{background:var(--primary-hover);transform:translateY(-2px);box-shadow:0 15px 25px -5px #2563eb80}.submit-btn:active{transform:translateY(1px)}.submit-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.success-state{text-align:center;animation:.5s cubic-bezier(.175,.885,.32,1.275) zoomIn}.success-icon{color:var(--secondary);margin-bottom:1rem;font-size:5rem}.back-btn{border:2px solid var(--surface-border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:99px;margin-top:2rem;padding:1rem 2rem;font-weight:600;transition:all .2s}.back-btn:hover{color:var(--text-main);background:#f1f5f9}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes zoomIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}
