:root{--primary-color:#0c2045;--secondary-color:#f33;--background-color:#f7f7f7;--surface-color:#fff;--text-primary:#222;--text-secondary:#888;--border-radius:24px;--border-radius-sm:12px;--transition:all .3s cubic-bezier(.25, .8, .25, 1);--shadow:0 10px 30px #0000000d;--shadow-hover:0 15px 35px #f333;--success-color:#34c759;--error-color:#ff3b30;--font-family:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--background-color);color:var(--text-primary);-webkit-font-smoothing:antialiased;line-height:1.5}h1,h2,h3,h4,h5,h6{color:var(--primary-color);letter-spacing:-.5px;font-weight:700}.header h1{color:#fff;letter-spacing:-.5px;white-space:nowrap;margin:0;font-size:1.4rem}.header h1 span{color:#fff;opacity:1;text-shadow:0 0 10px #ffd700e6,0 0 20px #ffd70099;margin-left:4px;font-weight:900}.app-container{background:var(--background-color);flex-direction:column;max-width:1200px;min-height:100vh;margin:0 auto;display:flex;position:relative;overflow-x:hidden;box-shadow:0 0 50px #0000001a}.header{background-color:var(--secondary-color);color:#fff;box-shadow:var(--shadow);z-index:10;border-bottom-right-radius:30px;border-bottom-left-radius:30px;justify-content:space-between;align-items:center;padding:1.5rem 2rem 2.5rem;display:flex;position:relative}.header-title-container{align-items:center;gap:.8rem;display:flex}.header-logo{background:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:70px;min-width:70px;height:70px;min-height:70px;margin-top:-12px;margin-bottom:-12px;display:flex;overflow:hidden;box-shadow:0 4px 10px #0000001a}.header-logo img{object-fit:contain;width:90%;height:90%}.header h1{color:#fff;align-items:center;gap:.5rem;margin:0;font-size:1.4rem;display:flex}.header h1 span{color:#fcc}.header button.secondary{color:#fff;box-shadow:none;background-color:#fff3;border-radius:20px;padding:.5rem 1rem;font-size:.85rem}.main-content{z-index:20;flex:1;margin-top:-1.5rem;padding:1.5rem;position:relative}.card{background:var(--surface-color);border-radius:var(--border-radius);box-shadow:var(--shadow);border:none;margin-bottom:1.5rem;padding:1.5rem}button{background-color:var(--secondary-color);color:#fff;border-radius:var(--border-radius-sm);cursor:pointer;transition:var(--transition);text-transform:uppercase;letter-spacing:1px;border:none;padding:1rem 1.5rem;font-size:1rem;font-weight:700}button:hover{box-shadow:var(--shadow-hover);background-color:#e62e2e;transform:translateY(-2px)}input,select,textarea{border-radius:var(--border-radius-sm);width:100%;font-family:var(--font-family);transition:var(--transition);color:var(--text-primary);background:#fcfcfc;border:1px solid #eee;margin-bottom:1.25rem;padding:1rem 1.25rem;font-size:.95rem}input:focus,select:focus,textarea:focus{border-color:var(--secondary-color);background:#fff;outline:none;box-shadow:0 0 0 4px #ff33331a}.form-group label{color:var(--primary-color);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem;font-size:.85rem;font-weight:600;display:block}.auth-main{width:100%;min-height:100vh}.auth-container{background:var(--primary-color);flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:100vh;padding:1.5rem;display:flex}.auth-logo-container{opacity:0;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:240px;height:240px;margin-bottom:2.5rem;animation:1s cubic-bezier(.25,.8,.25,1) forwards logoBounce;display:flex;overflow:hidden;transform:translateY(-50px);box-shadow:0 15px 35px #0000004d}.auth-logo-container img{object-fit:contain;width:95%;height:95%}@keyframes logoBounce{0%{opacity:0;transform:translateY(-50px)scale(.8)}60%{opacity:1;transform:translateY(10px)scale(1.05)}to{opacity:1;transform:translateY(0)scale(1)}}.auth-card{border-radius:var(--border-radius);opacity:0;background:#fff;width:100%;max-width:400px;padding:2.5rem 1.5rem;animation:.6s cubic-bezier(.25,.8,.25,1) .2s forwards slideUp;box-shadow:0 20px 40px #0000004d}.auth-card h2{text-align:center;color:var(--primary-color);margin-bottom:2rem;font-size:1.5rem}.schedule-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;display:grid}.time-slot{border-radius:var(--border-radius-sm);transition:var(--transition);background:#fff;border:1px solid #eee;border-left-width:4px;flex-direction:column;padding:1.25rem;display:flex}.time-slot.available{border-left-color:var(--success-color)}.time-slot.occupied{border-left-color:var(--error-color);background-color:#fff9f9}.time-slot h4{color:var(--primary-color);margin-bottom:.25rem;font-size:1.1rem}.tabs-container{scrollbar-width:none;gap:.5rem;margin-bottom:1.5rem;padding-bottom:.5rem;display:flex;overflow-x:auto}.tabs-container::-webkit-scrollbar{display:none}.tab-button{color:var(--text-secondary);white-space:nowrap;text-transform:none;letter-spacing:0;background:0 0;border:1px solid #ddd;border-radius:20px;padding:.5rem 1.25rem;font-size:.9rem;font-weight:600}.tab-button:hover{box-shadow:none;background:#f0f0f0;transform:none}.tab-button.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.5s cubic-bezier(.25,.8,.25,1) forwards slideUp}@media (width<=500px){.header{padding:1rem .5rem 2rem}.header-logo{width:50px;min-width:50px;height:50px;min-height:50px;margin-top:-5px;margin-bottom:-5px}.header-title-container{gap:.5rem}.header h1{font-size:1.1rem}.header h1 span{margin-left:4px}.header button.secondary{min-width:max-content;padding:.6rem .8rem;font-size:.75rem}}
