*,*:before,*:after{box-sizing:border-box}html{overflow-x:hidden;width:100%;box-sizing:border-box}body{margin:0;padding:0;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:#fff;min-height:100vh;max-height:100vh;overflow:hidden;overflow-x:hidden;width:100%;max-width:100%;box-sizing:border-box;word-wrap:break-word;overflow-wrap:break-word}.wrapper{display:flex;flex-direction:column;min-height:100vh;width:100%;max-width:100%;overflow-x:hidden;box-sizing:border-box}.page-content{flex:1;display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 60px);max-height:calc(100vh - 60px);overflow-y:auto;overflow-x:hidden;width:100%;max-width:100%;box-sizing:border-box}.profile-container{background:#fff;border-radius:20px;box-shadow:0 20px 40px #0000001a;width:90%;max-width:800px;margin:0 auto;display:flex;flex-direction:column;overflow-x:hidden;box-sizing:border-box}.profile-header{background:linear-gradient(135deg,#01386a,#025aa5);color:#fff;padding:40px;display:flex;align-items:center;gap:30px;box-sizing:border-box;width:100%;max-width:100%;overflow-x:hidden}.profile-picture-section{display:flex;flex-direction:column;align-items:center;gap:15px}.profile-picture-container{position:relative;width:120px;height:120px;border-radius:50%;overflow:hidden;border:4px solid rgba(255,255,255,.3)}.profile-picture-container img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.upload-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.profile-picture-container:hover .upload-overlay{opacity:1}.upload-btn{color:#fff;font-size:24px;cursor:pointer;padding:10px;border-radius:50%;background:#fff3;transition:background .3s ease}.upload-btn:hover{background:#ffffff4d}.picture-info{text-align:center;font-size:14px}.picture-info p{margin:5px 0;opacity:.9}.file-info{font-size:12px;opacity:.7}.profile-info{flex:1}.profile-info h1{margin:0 0 10px;font-size:2.5rem;font-weight:600}.profile-info p{margin:5px 0;opacity:.9;font-size:1.1rem}#userHandle{color:gold;font-weight:500}.profile-tabs{display:flex;background:#f8f9fa;border-bottom:1px solid #e9ecef;width:100%;max-width:100%;box-sizing:border-box;overflow-x:hidden}.tab-btn{flex:1;padding:20px;border:none;background:none;font-size:16px;font-weight:500;color:#6c757d;cursor:pointer;transition:all .3s ease;border-bottom:3px solid transparent;box-sizing:border-box;min-width:0}.tab-btn:hover{background:#e9ecef;color:#495057}.tab-btn.active{color:#01386a;border-bottom-color:#01386a;background:#fff}.tab-content{flex:1;overflow:visible;overflow-x:hidden;padding:30px;box-sizing:border-box;width:100%;max-width:100%}.tab-panel{display:none}.tab-panel.active{display:block}.form-section{margin-bottom:40px;width:100%;max-width:100%;box-sizing:border-box;overflow-x:hidden}.form-section h2{color:#01386a;margin-bottom:25px;font-size:1.5rem;font-weight:600}.form-group{margin-bottom:20px;width:100%;max-width:100%;box-sizing:border-box}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#495057}.form-group input,.form-group textarea{width:100%;max-width:100%;padding:12px 15px;border:2px solid #e9ecef;border-radius:8px;font-size:16px;transition:border-color .3s ease;box-sizing:border-box}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#01386a}.form-group small{display:block;margin-top:5px;font-size:14px;color:#6c757d}.password-strength{margin-top:10px}.strength-bar{height:4px;background:#e9ecef;border-radius:2px;overflow:hidden;margin-bottom:5px}.strength-fill{height:100%;width:0%;transition:all .3s ease}.strength-fill.weak{width:25%;background:#dc3545}.strength-fill.fair{width:50%;background:#ffc107}.strength-fill.good{width:75%;background:#28a745}.strength-fill.strong{width:100%;background:#20c997}.strength-text{font-size:14px;color:#6c757d}.btn{padding:12px 24px;border:none;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-block;text-align:center}.btn-primary{background:#01386a;color:#fff}.btn-primary:hover{background:#025aa5;transform:translateY(-2px);box-shadow:0 4px 12px #01386a4d}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover{background:#5a6268}.activity-section{width:100%;max-width:100%;box-sizing:border-box;overflow-x:hidden}.activity-section h2{color:#01386a;margin-bottom:25px}.activity-filters{display:flex;gap:10px;margin-bottom:25px;flex-wrap:wrap}.filter-btn{padding:8px 16px;border:2px solid #e9ecef;background:#fff;border-radius:20px;cursor:pointer;transition:all .3s ease;font-size:14px}.filter-btn:hover,.filter-btn.active{border-color:#01386a;background:#01386a;color:#fff}.activity-list{max-height:400px;overflow-y:auto}.activity-item{display:flex;align-items:center;padding:15px;border-bottom:1px solid #e9ecef;transition:background .3s ease}.activity-item:hover{background:#f8f9fa}.activity-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-right:15px;font-size:16px;color:#fff}.activity-icon.login{background:#28a745}.activity-icon.profile{background:#007bff}.activity-icon.security{background:#dc3545}.activity-details{flex:1}.activity-title{font-weight:500;margin-bottom:5px;color:#495057}.activity-time{font-size:14px;color:#6c757d}.modal{display:none;position:fixed;z-index:2000;left:0;top:0;width:100%;height:100%;background-color:#00000080;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-content{background-color:#fff;margin:10% auto;padding:0;border-radius:15px;width:90%;max-width:500px;box-shadow:0 20px 40px #0003;animation:modalSlideIn .3s ease;box-sizing:border-box;overflow-x:hidden}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-50px)}to{opacity:1;transform:translateY(0)}}.modal-header{padding:20px 25px;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0;color:#01386a}.close{color:#aaa;font-size:28px;font-weight:700;cursor:pointer;transition:color .3s ease}.close:hover{color:#000}.modal-body{padding:25px}.modal-footer{padding:20px 25px;border-top:1px solid #e9ecef;display:flex;gap:10px;justify-content:flex-end}.message-container{position:fixed;top:80px;left:50%;transform:translate(-50%);z-index:1500;max-width:400px;width:90%;box-sizing:border-box;overflow-x:hidden}.message{padding:15px 20px;border-radius:8px;margin-bottom:10px;font-weight:500;animation:messageSlideIn .3s ease}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.message.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.message.info{background:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}@media (max-width: 768px){html,body{overflow-x:hidden;width:100%;max-width:100%}.page-content{align-items:flex-start;justify-content:center;width:100%;max-width:100%;overflow-x:hidden}.profile-container{width:100%;max-width:100%;margin:0;border-radius:15px;box-sizing:border-box}.profile-header{padding:25px 20px;flex-direction:column;text-align:center;gap:20px;width:100%;max-width:100%;box-sizing:border-box}.profile-info h1{font-size:2rem}.profile-tabs{flex-direction:column}.tab-btn{padding:15px;border-bottom:1px solid #e9ecef;border-right:none}.tab-btn.active{border-bottom-color:#01386a;border-right:3px solid #01386A}.tab-content{flex:1;overflow:visible;overflow-x:hidden;padding:20px;width:100%;max-width:100%;box-sizing:border-box}.activity-filters{justify-content:center}.modal-content{margin:5% auto;width:95%}.modal-footer{flex-direction:column}.message-container{left:20px;right:20px;max-width:none;transform:none}}@media (max-width: 480px){.profile-picture-container{width:100px;height:100px}.profile-info h1{font-size:1.5rem}.form-section h2{font-size:1.3rem}.btn{width:100%;margin-bottom:10px}.tab-content{padding:15px;width:100%;max-width:100%;box-sizing:border-box}.profile-container{width:100%;max-width:100%;margin:0}.profile-header{padding:20px 15px;width:100%;max-width:100%}}@media (min-width: 1200px){.profile-container{max-width:1000px;margin:0 auto}.page-content{justify-content:center;align-items:center}}@media (min-width: 1600px){.profile-container{max-width:1200px}}.bookings-section{padding:0}.bookings-section h2{color:#01386a;font-size:2rem;font-weight:700;margin-bottom:2rem;display:flex;align-items:center;gap:15px}.bookings-section h2 i{color:#ffd52f}.booking-filters{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap;justify-content:center}.filter-btn{padding:.75rem 1.5rem;border:2px solid #e9ecef;background:#fff;color:#6c757d;border-radius:25px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.filter-btn:hover{border-color:#ffd52f;color:#01386a;transform:translateY(-2px);box-shadow:0 4px 15px #ffd52f33}.filter-btn.active{background:linear-gradient(135deg,#01386a,#025aa5);color:#fff;border-color:#01386a;box-shadow:0 4px 15px #01386a4d}.filter-btn i{font-size:1.1rem}.booking-category{display:none}.booking-category.active{display:block}.booking-category h3{color:#01386a;font-size:1.5rem;font-weight:700;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:3px solid #f0f0f0}.bookings-list{display:grid;gap:1.5rem}.booking-card{background:linear-gradient(135deg,#fff,#f8f9fa);border:2px solid #e9ecef;border-radius:15px;padding:1.5rem;transition:all .3s ease;position:relative;overflow:hidden}.booking-card:before{content:"";position:absolute;top:0;left:0;bottom:0;width:5px;background:linear-gradient(135deg,#ffd52f,#ffc107)}.booking-card.unpaid:before{background:linear-gradient(135deg,#dc3545,#c82333)}.booking-card.completed:before{background:linear-gradient(135deg,#28a745,#20c997)}.booking-card:hover{border-color:#ffd52f;box-shadow:0 8px 25px #0000001a;transform:translateY(-3px)}.booking-card-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #f0f0f0}.booking-card-title{flex:1}.booking-card-title h4{color:#01386a;font-size:1.3rem;font-weight:700;margin-bottom:.5rem;display:flex;align-items:center;gap:10px}.booking-card-title h4 i{color:#ffd52f}.booking-reference{font-size:.9rem;color:#6c757d;font-family:Courier New,monospace;font-weight:600}.booking-status-badge{padding:.5rem 1rem;border-radius:20px;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.booking-status-badge.paid{background:linear-gradient(135deg,#28a745,#20c997);color:#fff}.booking-status-badge.unpaid{background:linear-gradient(135deg,#dc3545,#c82333);color:#fff}.booking-status-badge.completed{background:linear-gradient(135deg,#6c757d,#495057);color:#fff}.booking-card-body{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1.5rem}.booking-detail-item{display:flex;flex-direction:column;gap:.3rem}.booking-detail-label{font-size:.85rem;color:#6c757d;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.booking-detail-value{color:#01386a;font-weight:700;font-size:1rem;display:flex;align-items:center;gap:8px}.booking-detail-value i{color:#ffd52f}.booking-card-footer{display:flex;gap:1rem;flex-wrap:wrap}.booking-btn{padding:.75rem 1.5rem;border:none;border-radius:10px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px;font-size:.9rem}.booking-btn-primary{background:linear-gradient(135deg,#ffd52f,#ffc107);color:#01386a;box-shadow:0 4px 15px #ffd52f4d}.booking-btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ffd52f66}.booking-btn-secondary{background:linear-gradient(135deg,#6c757d,#495057);color:#fff;box-shadow:0 4px 15px #6c757d33}.booking-btn-secondary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #6c757d4d}.booking-btn-danger{background:linear-gradient(135deg,#dc3545,#c82333);color:#fff;box-shadow:0 4px 15px #dc354533}.booking-btn-danger:hover{transform:translateY(-2px);box-shadow:0 6px 20px #dc35454d}.empty-bookings{text-align:center;padding:3rem;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:15px;border:2px dashed #dee2e6}.empty-bookings i{font-size:4rem;color:#dee2e6;margin-bottom:1rem}.empty-bookings h4{color:#01386a;font-size:1.3rem;margin-bottom:.5rem;font-weight:700}.empty-bookings p{color:#6c757d;font-size:1rem;margin-bottom:1.5rem}.empty-bookings .btn{background:linear-gradient(135deg,#ffd52f,#ffc107);color:#01386a;padding:1rem 2rem;border:none;border-radius:25px;font-weight:700;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:10px}.empty-bookings .btn:hover{transform:translateY(-3px);box-shadow:0 8px 20px #ffd52f4d}@media (max-width: 768px){.booking-card-body{grid-template-columns:1fr}.booking-card-header{flex-direction:column;gap:1rem}.booking-card-footer{flex-direction:column}.booking-btn{width:100%;justify-content:center;box-sizing:border-box}.booking-card,.bookings-section{width:100%;max-width:100%;box-sizing:border-box}}
