html,body{height:100%}html{overflow-y:scroll}body{min-height:100vh;min-height:100dvh}.flashes{position:fixed;top:20%;left:50%;transform:translate(-50%, -50%);z-index:10}@media only screen and (max-width:767px){.flashes{width:90%}}.card-hover{transition:transform .2s ease,box-shadow .2s ease}.card-hover:hover{overflow-y:visible;transform:translateY(-3px);box-shadow:0 4px 8px rgba(0,0,0,0.2) !important}.text-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.text-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.glightbox-container .gslide-description{position:absolute;bottom:0;left:0;width:100%;max-width:100% !important;max-height:40%;margin:0;padding:0;background:linear-gradient(to top, rgb(0 0 0 / 60%), rgb(0 0 0 / 50%), rgb(0 0 0 / 20%));color:#fff;pointer-events:none}.glightbox-container .gdesc-inner{text-align:center;padding:16px 20px;font-size:1.4rem;line-height:1.45;pointer-events:auto}.glightbox-container .gslide-media,.glightbox-container .ginner-container{position:relative}.image-upload .drop-zone-area input[type="file"]{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;z-index:2}.image-upload .drop-zone-area{border-style:dashed !important;cursor:pointer}.site-header{background:#315377;padding-top:10px}.top-bar{color:white;font-size:.9rem;margin-bottom:10px}.custom-navbar{padding-top:0;padding-bottom:0;min-height:72px}.custom-navbar .navbar-brand-wrapper,.custom-navbar .navbar-toggler-wrapper,.custom-navbar #navbarContent{background-color:#f5f2eb}@media (min-width:992px){.custom-navbar #navbarContent{border-radius:12px 0 0 0}}@media (max-width:991px){.custom-navbar .navbar-toggler-wrapper{height:stretch;flex-grow:1;border-radius:12px 0 0 0;display:flex;justify-content:end;align-items:center;padding-right:12px}}.custom-navbar .navbar-brand{background:#315377;padding:10px 24px 10px 0;border-radius:0 0 20px 0;display:flex;align-items:center;gap:5px;margin-right:0}.custom-navbar .navbar-brand .logo-wrapper{position:relative;height:52px;width:auto}.custom-navbar .navbar-brand .logo-wrapper img{height:95px;margin-top:-40px}@media (min-width:992px){.custom-navbar .navbar-nav{height:72px}}@media (min-width:992px){.custom-navbar .nav-item{display:flex;align-items:center}}@media (min-width:992px){.custom-navbar .nav-item+.nav-item{border-left:1px solid #d7d7d7}}.custom-navbar .nav-link{font-weight:600;color:#404040;padding-left:1.6rem;padding-right:1.6rem}@media (min-width:992px){.custom-navbar .nav-link{height:72px;display:flex;align-items:center}}.custom-navbar .nav-link:hover{background:#ece7dd}.custom-navbar .nav-link.active{background:white;color:#1f3e60}.brand-title{font-size:2rem;font-weight:700;color:white}.brand-subtitle{color:rgba(255,255,255,0.8);font-size:.85rem}@media (min-width:768px){.messenger-shell{height:calc(100vh - 260px);min-height:420px}}@media (min-width:768px){.messenger-conversation-list{overflow-y:auto}}.messenger-chat-inner{min-height:0}.account-settings-nav .list-group-item i{width:1.25rem;text-align:center}.account-settings-card{border:none;box-shadow:0 1px 3px rgba(0,0,0,0.08)}.account-settings-avatar-preview{width:96px;height:96px;border-radius:50%;object-fit:cover;border:2px solid #fff;box-shadow:0 0 0 1px rgba(0,0,0,0.08)}.admin-shell{min-height:calc(100vh - 200px)}.admin-sidebar .list-group-item i{width:1.25rem;text-align:center}.admin-main{background:#f8f9fa}.admin-card{border:none;box-shadow:0 1px 3px rgba(0,0,0,0.08);height:100%}.admin-card-count{font-size:2rem;font-weight:600}.zw-rating-widget{display:flex;flex-direction:column;gap:.5rem}.zw-rating-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.zw-rating-row-label{min-width:180px;font-size:.875rem}.zw-rating-stars{display:flex;gap:.25rem}.zw-rating-star{cursor:pointer;margin:0;line-height:1}.zw-rating-star input{position:absolute;opacity:0;width:0;height:0}.zw-rating-star i{font-size:1.25rem;color:var(--bs-warning)}.zw-rating-star input:focus-visible+i{outline:2px solid var(--bs-primary);outline-offset:2px;border-radius:50%}.zw-rating-summary ul li{font-size:.8125rem}