@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";:root{--dark: #12545a;--accent: #FF6700;--bg: #ffffff;--text: #333333;--border: #f0f0f0;--light-bg: #f8fafa;--shadow: rgba(18, 84, 90, .08)}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;width:100%}body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.5}a{color:inherit;text-decoration:none}main{min-height:calc(100vh - 56px)}.container{max-width:100%;margin:0 auto;padding:16px}.pub-nav,.patient-nav,.doctor-nav{height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;color:#fff}.pub-nav,.patient-nav,.doctor-nav{background:var(--dark)}.brand{font-weight:800}.nav-links{display:flex;gap:12px}.btn{display:inline-block;padding:10px 14px;border-radius:8px;font-weight:600;border:none;cursor:pointer;transition:all .2s}.btn-primary{background:var(--dark);color:#fff}.btn-primary:hover{background:#0e3d42}.btn-accent{background:var(--accent);color:#fff}.btn-accent:hover{background:#e55a00}.btn-outline{background:transparent;color:var(--dark);border:1px solid var(--border)}.btn-outline:hover{background:var(--light-bg)}.hero{padding:48px 16px;background:var(--bg)}.card{background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:16px;box-shadow:0 2px 8px var(--shadow)}h1,h2,h3,h4,h5,h6{color:var(--dark)}.text-muted{color:#666}.text-accent{color:var(--accent)}.text-dark{color:var(--dark)}@media (max-width: 768px){.container{padding:12px}.nav-links{gap:8px}.btn{padding:8px 12px;font-size:14px}}@media (max-width: 480px){.hero{padding:32px 12px}.nav-links{flex-direction:column;gap:4px}}:root{--primary-color: #2563eb;--primary-dark: #1d4ed8;--primary-light: #3b82f6;--secondary-color: #64748b;--accent-color: #f59e0b;--text-dark: #1e293b;--text-medium: #475569;--text-light: #64748b;--bg-light: #f8fafc;--bg-white: #ffffff;--border-color: #e2e8f0;--border-light: #f1f5f9;--shadow-light: 0 1px 3px rgba(0, 0, 0, .05);--shadow-medium: 0 4px 6px -1px rgba(0, 0, 0, .08);--shadow-heavy: 0 10px 15px -3px rgba(0, 0, 0, .1);--success-color: #10b981;--warning-color: #f59e0b;--error-color: #ef4444;--border-radius: 8px;--border-radius-lg: 12px;--transition: all .3s cubic-bezier(.4, 0, .2, 1);--transition-fast: all .15s ease-out}*{box-sizing:border-box}.register-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);padding:24px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;position:relative;overflow-x:hidden}.register-container:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary-color),var(--accent-color),var(--primary-color));background-size:200% 100%;animation:shimmer 3s infinite linear}.register-container.success-screen{background:linear-gradient(135deg,#f0fdf4,#f1f5f9)}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.register-card,.success-card{background:var(--bg-white);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-heavy);max-width:800px;width:100%;overflow:hidden;border:1px solid var(--border-light);transform:translateY(0);transition:var(--transition);position:relative;z-index:1}.register-card:hover,.success-card:hover{box-shadow:0 20px 25px -5px #0000001f;transform:translateY(-2px)}.register-card.professional,.success-card.professional{border-top:4px solid var(--primary-color)}@keyframes cardEntrance{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.register-card,.success-card{animation:cardEntrance .6s cubic-bezier(.25,.46,.45,.94) both}.professional-header{padding:32px 40px 28px;display:flex;justify-content:space-between;align-items:flex-start;background:var(--bg-white);position:relative;overflow:hidden}.professional-header:after{content:"";position:absolute;bottom:0;left:40px;right:40px;height:1px;background:linear-gradient(90deg,transparent,var(--border-color),transparent)}.logo-section{flex:1;position:relative}.logo-image{height:52px;width:auto;margin-bottom:8px;display:block;filter:drop-shadow(0 2px 4px rgba(0,0,0,.08));transition:var(--transition)}.logo-image:hover{transform:scale(1.02)}.logo-text{font-size:32px;font-weight:800;color:var(--primary-color);margin:0 0 6px;letter-spacing:-.5px;background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;position:relative;display:inline-block}.logo-text:after{content:"";position:absolute;bottom:-4px;left:0;width:40px;height:3px;background:var(--accent-color);border-radius:2px}.tagline{font-size:13px;color:var(--text-light);margin:0;font-weight:500;letter-spacing:.3px;opacity:.9}.clinic-section{text-align:right;flex:1;position:relative}.clinic-section h3{font-size:17px;font-weight:700;color:var(--text-dark);margin:0 0 8px;position:relative;display:inline-block}.clinic-section h3:after{content:"";position:absolute;bottom:-3px;right:0;width:60%;height:2px;background:var(--accent-color);border-radius:2px}.clinic-section p{font-size:13px;color:var(--text-medium);margin:0;line-height:1.6}.info-header{padding:20px 40px;background:var(--bg-light);border-bottom:1px solid var(--border-light);display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;position:relative}.info-item{display:flex;flex-direction:column;position:relative;padding-left:16px}.info-item:before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:3px;background:var(--primary-color);border-radius:2px;opacity:.6}.info-label{font-size:12px;font-weight:600;color:var(--text-light);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.info-value{font-size:14px;font-weight:600;color:var(--text-dark)}.form-title-section{padding:28px 40px 20px;border-bottom:1px solid var(--border-light);position:relative;background:linear-gradient(135deg,#fafbff,#fff)}.form-title-section:before{content:"";position:absolute;top:0;left:0;width:60px;height:4px;background:linear-gradient(90deg,var(--primary-color),var(--accent-color));border-radius:0 0 4px 4px}.form-title-section h2{font-size:24px;font-weight:700;color:var(--text-dark);margin:0 0 10px;display:flex;align-items:center;position:relative}.form-title-section h2:before{content:"";display:inline-block;width:8px;height:24px;background:var(--primary-color);margin-right:12px;border-radius:4px;box-shadow:0 2px 8px #2563eb4d}.doctor-name{font-size:15px;color:var(--text-medium);margin:0;font-weight:500;display:flex;align-items:center;padding-left:20px}.doctor-name:before{content:"👨‍⚕️";margin-right:8px;font-size:16px;opacity:.8}.register-form{padding:32px 40px}.form-group{margin-bottom:24px;position:relative;animation:formGroupEntrance .5s ease-out both}@keyframes formGroupEntrance{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.form-group:nth-child(1){animation-delay:.1s}.form-group:nth-child(2){animation-delay:.2s}.form-group:nth-child(3){animation-delay:.3s}.form-group:nth-child(4){animation-delay:.4s}.form-group:nth-child(5){animation-delay:.5s}.form-group label{display:block;margin-bottom:10px;font-weight:600;color:var(--text-dark);font-size:14px;display:flex;align-items:center;transition:var(--transition-fast)}.form-group label:after{content:"";flex-grow:1;height:1px;background:linear-gradient(90deg,var(--text-light),transparent);margin-left:12px;opacity:.2}.form-group input,.form-group select,.form-group textarea{width:100%;padding:14px 16px;border:2px solid var(--border-color);border-radius:var(--border-radius);font-size:15px;transition:var(--transition);font-family:inherit;color:var(--text-dark);background:var(--bg-white);position:relative;box-shadow:0 1px 2px #00000008}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 4px #2563eb1f;transform:translateY(-1px)}.form-group input:hover,.form-group select:hover,.form-group textarea:hover{border-color:#cbd5e1}.form-group textarea{resize:vertical;min-height:90px;line-height:1.5}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.checkbox-group{margin-top:28px;padding:20px;background:var(--bg-light);border-radius:var(--border-radius);border:2px solid var(--border-light);transition:var(--transition);position:relative;overflow:hidden}.checkbox-group:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--accent-color)}.checkbox-group:focus-within{border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb14;transform:translateY(-1px)}.checkbox-group label{display:flex;align-items:flex-start;cursor:pointer;font-weight:500;color:var(--text-medium);font-size:14px;line-height:1.6;transition:var(--transition);position:relative;z-index:1}.checkbox-group label:hover{color:var(--text-dark)}.checkbox-group input[type=checkbox]{width:18px;height:18px;margin-right:12px;margin-top:3px;cursor:pointer;flex-shrink:0;accent-color:var(--primary-color);transform:scale(1);transition:var(--transition-fast)}.checkbox-group input[type=checkbox]:hover{transform:scale(1.1)}.submit-btn{width:100%;padding:16px;background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));color:#fff;border:none;border-radius:var(--border-radius);font-size:16px;font-weight:700;cursor:pointer;transition:var(--transition);margin-top:12px;position:relative;overflow:hidden;letter-spacing:.5px;box-shadow:0 4px 12px #2563eb4d}.submit-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .7s}.submit-btn:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-dark),var(--primary-color));box-shadow:0 6px 20px #2563eb66;transform:translateY(-2px)}.submit-btn:hover:not(:disabled):before{left:100%}.submit-btn:active:not(:disabled){transform:translateY(0)}.submit-btn:disabled{background:#cbd5e1;cursor:not-allowed;box-shadow:none;transform:none}.confirmation-details.professional-layout{padding:32px 40px}.highlight-boxes{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:32px}.highlight-box{background:linear-gradient(135deg,#f8fafc,#f1f5f9);padding:24px;border-radius:var(--border-radius);text-align:center;border:2px solid var(--border-light);position:relative;overflow:hidden;transition:var(--transition);box-shadow:var(--shadow-light)}.highlight-box:before{content:"";position:absolute;top:0;left:0;width:5px;height:100%;background:var(--accent-color);transition:var(--transition)}.highlight-box:hover{transform:translateY(-3px);box-shadow:var(--shadow-medium);border-color:var(--primary-light)}.highlight-box:hover:before{width:6px;background:var(--primary-color)}.highlight-box label{display:block;font-size:13px;font-weight:700;color:var(--text-light);margin-bottom:12px;text-transform:uppercase;letter-spacing:.8px}.queue-number{font-size:46px;font-weight:800;color:var(--primary-color);letter-spacing:-1px;text-shadow:0 2px 4px rgba(0,0,0,.1);position:relative;display:inline-block;animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.queue-number:after{content:"";position:absolute;bottom:-6px;left:10%;width:80%;height:3px;background:var(--accent-color);border-radius:2px;transform:scaleX(.8)}.booking-ref{font-size:24px;font-weight:700;color:var(--primary-color);letter-spacing:1.8px;font-family:Courier New,monospace;background:var(--bg-white);padding:10px 16px;border-radius:6px;display:inline-block;border:2px dashed var(--border-color);box-shadow:0 2px 8px #0000000d}.section{margin-bottom:28px;padding-bottom:24px;border-bottom:1px solid var(--border-light);position:relative;animation:sectionEntrance .6s ease-out both}@keyframes sectionEntrance{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.section:nth-child(1){animation-delay:.2s}.section:nth-child(2){animation-delay:.3s}.section:nth-child(3){animation-delay:.4s}.section:last-of-type{border-bottom:none}.section-title{font-size:16px;font-weight:700;color:var(--primary-color);margin:0 0 16px;text-transform:uppercase;letter-spacing:.8px;display:flex;align-items:center;position:relative}.section-title:before{content:"";display:inline-block;width:6px;height:18px;background:var(--primary-color);margin-right:12px;border-radius:3px;box-shadow:0 2px 4px #2563eb4d}.section-content{padding-left:0}.detail-line{display:flex;align-items:baseline;margin-bottom:12px;font-size:15px;padding:8px 0;border-bottom:1px dashed var(--border-light);transition:var(--transition-fast)}.detail-line:hover{background:#fafbff;border-radius:4px;padding:8px 12px;margin:0 -12px 12px}.detail-line:last-child{margin-bottom:0;border-bottom:none}.detail-line .label{font-weight:600;color:var(--text-medium);min-width:160px;position:relative;flex-shrink:0}.detail-line .label:after{content:":";position:absolute;right:12px}.detail-line .value{color:var(--text-dark);font-weight:500;flex:1}.detail-line .value.small{font-size:14px;color:var(--text-light);font-style:italic}.status-badge{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:var(--success-color);padding:6px 14px;border-radius:20px;font-size:13px;font-weight:700;display:inline-flex;align-items:center;box-shadow:0 2px 4px #0000001a;border:1px solid #a7f3d0}.status-badge:before{content:"✓";margin-right:6px;font-size:12px}.instructions-box{background:linear-gradient(135deg,#fffbeb,#fef3c7);border:2px solid #fcd34d;border-radius:var(--border-radius);padding:24px;margin-top:28px;position:relative;overflow:hidden;box-shadow:0 4px 12px #f59e0b1a;animation:instructionsEntrance .6s ease-out .5s both}@keyframes instructionsEntrance{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.instructions-box:before{content:"";position:absolute;top:0;left:0;width:6px;height:100%;background:var(--warning-color)}.instructions-box h4{font-size:15px;font-weight:700;color:#92400e;margin:0 0 14px;text-transform:uppercase;letter-spacing:.8px;display:flex;align-items:center}.instructions-box h4:before{content:"💡";display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:var(--warning-color);color:#fff;border-radius:50%;font-size:13px;font-weight:700;margin-right:12px}.instructions-box ul{margin:0;padding-left:0;list-style:none}.instructions-box li{font-size:14px;color:#78350f;line-height:1.6;margin-bottom:10px;position:relative;padding-left:20px}.instructions-box li:before{content:"→";color:var(--warning-color);font-weight:700;position:absolute;left:0;font-size:14px}.instructions-box li:last-child{margin-bottom:0}.success-actions{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:0 40px 32px;animation:buttonsEntrance .6s ease-out .7s both}@keyframes buttonsEntrance{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.btn-download,.btn-primary{padding:16px;border:none;border-radius:var(--border-radius);font-size:15px;font-weight:700;cursor:pointer;transition:var(--transition);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;gap:10px;letter-spacing:.5px}.btn-download{background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));color:#fff;box-shadow:0 4px 12px #2563eb4d}.btn-download:hover{background:linear-gradient(135deg,var(--primary-dark),var(--primary-color));box-shadow:0 6px 20px #2563eb66;transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg,#f8fafc,#e2e8f0);color:var(--text-dark);border:2px solid var(--border-color);box-shadow:0 2px 8px #0000000d}.btn-primary:hover{background:linear-gradient(135deg,#e2e8f0,#cbd5e1);box-shadow:0 4px 12px #0000001a;transform:translateY(-2px);border-color:var(--primary-light)}.professional-footer{background:var(--bg-light);padding:20px 40px;text-align:center;font-size:13px;color:var(--text-light);border-top:1px solid var(--border-light);position:relative}.professional-footer:before{content:"";position:absolute;top:0;left:40px;right:40px;height:1px;background:linear-gradient(90deg,transparent,var(--border-color),transparent)}.professional-footer p{margin:0 0 8px;line-height:1.6}.professional-footer p:last-child{margin:0}.professional-footer .small{font-size:12px;color:var(--text-light);opacity:.8}.success-icon{font-size:72px;text-align:center;margin:32px 0 24px;animation:successIcon 1s cubic-bezier(.25,.46,.45,.94) both;color:var(--success-color);filter:drop-shadow(0 4px 12px rgba(16,185,129,.3))}@keyframes successIcon{0%{transform:scale(0) rotate(-180deg);opacity:0}60%{transform:scale(1.1) rotate(10deg)}80%{transform:scale(.95) rotate(-5deg)}to{transform:scale(1) rotate(0);opacity:1}}.success-card h1{text-align:center;color:var(--text-dark);margin:0 0 16px;font-size:28px;font-weight:800;padding:0 40px;background:linear-gradient(135deg,var(--primary-color),var(--accent-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:titleEntrance .8s ease-out .3s both}@keyframes titleEntrance{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.success-message{text-align:center;color:var(--text-medium);font-size:16px;line-height:1.7;padding:0 40px;max-width:600px;margin:0 auto 32px;animation:messageEntrance .8s ease-out .5s both}@keyframes messageEntrance{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.loading-spinner{display:inline-block;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;margin-right:10px}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 1024px){.register-card,.success-card{max-width:90%}}@media (max-width: 768px){.register-container{padding:16px}.professional-header{flex-direction:column;gap:20px;padding:24px 24px 20px}.clinic-section{text-align:left;width:100%}.register-form,.confirmation-details.professional-layout,.success-actions,.form-title-section,.info-header,.professional-footer{padding-left:24px;padding-right:24px}.form-row,.highlight-boxes,.success-actions,.info-header{grid-template-columns:1fr;gap:16px}.queue-number{font-size:38px}.booking-ref{font-size:20px}.success-card h1{font-size:26px;padding:0 24px}.success-message{padding:0 24px;font-size:15px}.logo-text{font-size:28px}.form-title-section h2{font-size:22px}.professional-header:after,.professional-footer:before{left:24px;right:24px}}@media (max-width: 480px){.register-container{padding:12px}.logo-text{font-size:24px}.register-card,.success-card{border-radius:12px;box-shadow:var(--shadow-heavy)}.success-actions{flex-direction:column}.professional-header{padding:20px 20px 16px}.register-form,.confirmation-details.professional-layout,.success-actions,.form-title-section,.info-header,.professional-footer{padding-left:20px;padding-right:20px}.logo-image{height:44px}.success-icon{font-size:60px}.queue-number{font-size:32px}.booking-ref{font-size:18px;padding:8px 12px}.detail-line{flex-direction:column;align-items:flex-start}.detail-line .label{min-width:auto;margin-bottom:4px}.detail-line .label:after{content:""}}@media (max-width: 360px){.logo-text{font-size:22px}.form-title-section h2{font-size:20px}.success-card h1{font-size:24px}.queue-number{font-size:28px}.professional-header,.register-form,.confirmation-details.professional-layout,.success-actions,.form-title-section,.info-header,.professional-footer{padding-left:16px;padding-right:16px}}@media print{.success-actions,.btn-download,.btn-primary{display:none!important}.register-container{background:#fff;padding:0}.success-card{box-shadow:none;border:1px solid #000;max-width:100%;margin:0}.register-card:hover,.success-card:hover,.highlight-box:hover{transform:none;box-shadow:none}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.form-group input:focus-visible,.form-group select:focus-visible,.form-group textarea:focus-visible,.submit-btn:focus-visible,.btn-download:focus-visible,.btn-primary:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}
