.page-hero{background:linear-gradient(135deg,var(--color-primary) 0%,#0f3640 100%);color:var(--color-white);padding:var(--spacing-16) 0;text-align:center}.page-hero h1{color:var(--color-white);margin-bottom:var(--spacing-4)}.lead{font-size:var(--font-size-xl);opacity:.9}.booking-layout{display:grid;grid-template-columns:2fr 1fr;gap:var(--spacing-12)}.booking-form{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--spacing-8);box-shadow:var(--shadow-lg)}.form-step h2{margin-bottom:var(--spacing-2)}.form-subtitle{color:var(--color-gray-600);margin-bottom:var(--spacing-6)}.form-step.hidden{display:none}.slots-container{display:grid;gap:var(--spacing-4)}.day-slots{border:2px solid var(--color-gray-100);border-radius:var(--radius-lg);padding:var(--spacing-4)}.day-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-3);padding-bottom:var(--spacing-3);border-bottom:1px solid var(--color-gray-100)}.day-name{font-weight:600;color:var(--color-primary)}.day-date{font-size:var(--font-size-sm);color:var(--color-gray-600)}.slot-list{display:flex;flex-wrap:wrap;gap:var(--spacing-2)}.slot-btn{padding:14px 24px;border:2px solid #e2e8f0;border-radius:12px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);cursor:pointer;font-family:var(--font-family);font-size:var(--font-size-base);font-weight:600;color:#374151;box-shadow:0 2px 4px #0000000a;transition:all .2s ease;position:relative;overflow:hidden}.slot-btn:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#1a4d5c1a,#2d8a4e1a);opacity:0;transition:opacity .2s ease}.slot-btn:hover{border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 6px 16px #1a4d5c1f}.slot-btn:hover:before{opacity:1}.slot-btn.selected{border-color:transparent;background:linear-gradient(135deg,#2d8a4e,#4aa367);color:#fff;box-shadow:0 6px 20px #2d8a4e59;transform:translateY(-2px)}.slot-btn.selected:before{display:none}.slot-btn.available{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-color:#10b981;color:#065f46}.slot-btn.available:hover{background:linear-gradient(135deg,#d1fae5,#a7f3d0);transform:translateY(-2px);box-shadow:0 6px 16px #10b98133}.slot-btn.on-hold{background:linear-gradient(135deg,#fffbeb,#fef3c7);border-color:#f59e0b;color:#b45309}.slot-btn.on-hold:hover{background:linear-gradient(135deg,#fef3c7,#fde68a);transform:translateY(-2px);box-shadow:0 6px 16px #f59e0b33}.slot-btn.booked{background:#f3f4f6;border-color:#d1d5db;color:#9ca3af;cursor:not-allowed;opacity:.7}.slot-btn.booked:hover{transform:none;box-shadow:none}.slot-btn.booked:after{content:"✕";margin-left:6px;font-size:10px}.slots-legend{display:flex;gap:20px;margin-bottom:16px;padding:12px 16px;background:#f9fafb;border-radius:8px;font-size:13px}.legend-item{display:flex;align-items:center;gap:8px;color:#6b7280}.legend-dot{width:12px;height:12px;border-radius:4px}.legend-dot.available{background:#10b981}.legend-dot.on-hold{background:#f59e0b}.legend-dot.booked{background:#d1d5db}.selected-slot-display{background:linear-gradient(135deg,#2d8a4e1a,#4aa3671a);border:2px solid var(--color-secondary);border-radius:var(--radius-md);padding:var(--spacing-4);margin-bottom:var(--spacing-6);display:flex;align-items:center;gap:var(--spacing-3)}.selected-slot-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--color-primary);flex-shrink:0}.selected-slot-text{min-width:0}.meeting-type-fieldset{border:none;padding:0;margin:0 0 var(--spacing-4)}.resume-group{margin-bottom:var(--spacing-4)}.file-upload{position:relative}.file-upload input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.file-upload-label{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-5);border:2px dashed var(--color-gray-300);border-radius:var(--radius-md);background:var(--color-off-white);text-align:center;transition:all var(--transition-fast)}.file-upload:hover .file-upload-label{border-color:var(--color-primary);background:#1a4d5c0d}.file-text{font-weight:500;color:var(--color-gray-800)}.file-hint{font-size:var(--font-size-sm);color:var(--color-gray-500);margin-top:var(--spacing-1)}.file-name{margin-top:var(--spacing-2);font-size:var(--font-size-sm);color:var(--color-secondary);font-weight:500}.form-row,.meeting-type-options{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-4)}.meeting-type-option{cursor:pointer}.meeting-type-option input{display:none}.meeting-type-option .option-content{display:flex;gap:var(--spacing-3);padding:var(--spacing-4);border:2px solid var(--color-gray-200);border-radius:var(--radius-md);transition:all var(--transition-fast)}.meeting-type-option:hover .option-content{border-color:var(--color-primary)}.meeting-type-option input:checked+.option-content{border-color:var(--color-secondary);background:#2d8a4e1a}.option-icon{font-size:1.5rem}.option-content div{display:flex;flex-direction:column;gap:2px}.option-content strong{color:var(--color-gray-800);font-size:var(--font-size-base)}.option-content span{color:var(--color-gray-600);font-size:var(--font-size-xs)}.form-actions{display:flex;justify-content:space-between;gap:var(--spacing-4);margin-top:var(--spacing-6);padding-top:var(--spacing-6);border-top:1px solid var(--color-gray-100)}.confirmation-content{text-align:center;padding:var(--spacing-8)}.confirmation-icon{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-accent) 100%);color:var(--color-white);font-size:2.5rem;display:flex;align-items:center;justify-content:center;margin:0 auto var(--spacing-6)}.confirmation-icon.pending{background:linear-gradient(135deg,#f59e0b,#fbbf24)}.confirmation-content h2{color:var(--color-secondary);margin-bottom:var(--spacing-4)}.confirmation-content p{color:var(--color-gray-600);max-width:400px;margin:0 auto var(--spacing-6)}.confirmation-note{background:var(--color-off-white);padding:var(--spacing-4);border-radius:var(--radius-md);margin-bottom:var(--spacing-6);font-size:var(--font-size-sm);color:var(--color-gray-600)}.booking-sidebar{position:sticky;top:100px}.sidebar-card{background:var(--color-off-white);border-radius:var(--radius-lg);padding:var(--spacing-6);margin-bottom:var(--spacing-4)}.sidebar-card h3{font-size:var(--font-size-base);color:var(--color-primary);margin-bottom:var(--spacing-4)}.sidebar-card p{font-size:var(--font-size-sm);color:var(--color-gray-600)}.meeting-info{list-style:none}.meeting-info li{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-2) 0;font-size:var(--font-size-sm)}.info-icon{font-size:1.2rem}@media(max-width:768px){.booking-layout,.form-row{grid-template-columns:1fr}.booking-sidebar{position:static}}.busy-message{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--spacing-12);box-shadow:var(--shadow-lg);text-align:center}.busy-icon{font-size:4rem;margin-bottom:var(--spacing-6)}.busy-message h2{color:var(--color-primary);margin-bottom:var(--spacing-4)}.busy-message p{color:var(--color-gray-600);max-width:400px;margin:0 auto var(--spacing-6)}.busy-actions{display:flex;gap:var(--spacing-4);justify-content:center;flex-wrap:wrap}.slots-loading{padding:var(--spacing-8)}.skeleton-slots-grid{display:flex;flex-direction:column;gap:24px}.skeleton-day{background:var(--color-off-white);padding:16px 20px;border-radius:var(--radius-lg)}.slots-loading p{color:var(--color-gray-600)}.no-slots{text-align:center;padding:var(--spacing-8);background:var(--color-off-white);border-radius:var(--radius-lg)}.no-slots p{color:var(--color-gray-600)}
