/* Custom styles for Hotel Royal Orchid - © 2025 Anshuman Singh */
.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}html{scroll-behavior:smooth}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#d97706;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#b45309}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.btn-primary{background-color:#d97706;color:#fff;padding-left:1.5rem;padding-right:1.5rem;padding-top:.75rem;padding-bottom:.75rem;border-radius:.5rem;font-weight:600;transition-duration:.3s}.btn-primary:hover{background-color:#b45309;transform:scale(1.05)}.btn-secondary{background-color:#1f2937;color:#fff;padding-left:1.5rem;padding-right:1.5rem;padding-top:.75rem;padding-bottom:.75rem;border-radius:.5rem;font-weight:600;transition-duration:.3s}.btn-secondary:hover{background-color:#111827;transform:scale(1.05)}.card-hover{transition-duration:.3s;transform:translateX(0) translateY(0) rotate(0) skewX(0) skewY(0) scaleX(1) scaleY(1);transform-origin:center}.card-hover:hover{transform:scale(1.05);box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04)}.form-input{width:100%;padding-left:1rem;padding-right:1rem;padding-top:.75rem;padding-bottom:.75rem;border-width:1px;border-color:#d1d5db;border-radius:.5rem;transition-duration:.3s}.form-input:focus{--tw-ring-color:rgb(251 191 36 / 1);--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);border-color:transparent}.alert-success{background-color:#dcfce7;border-width:1px;border-color:#4ade80;color:#166534;padding-left:1rem;padding-right:1rem;padding-top:.75rem;padding-bottom:.75rem;border-radius:.5rem}.alert-error{background-color:#fecaca;border-width:1px;border-color:#f87171;color:#7f1d1d;padding-left:1rem;padding-right:1rem;padding-top:.75rem;padding-bottom:.75rem;border-radius:.5rem}.alert-warning{background-color:#fef3c7;border-width:1px;border-color:#f59e0b;color:#92400e;padding-left:1rem;padding-right:1rem;padding-top:.75rem;padding-bottom:.75rem;border-radius:.5rem}.alert-info{background-color:#dbeafe;border-width:1px;border-color:#60a5fa;color:#1e40af;padding-left:1rem;padding-right:1rem;padding-top:.75rem;padding-bottom:.75rem;border-radius:.5rem}.nav-link{color:#374151;transition-duration:.3s;position:relative}.nav-link:hover{color:#d97706}.nav-link::after{content:'';position:absolute;bottom:0;left:0;width:0;height:2px;background-color:#d97706;transition:all .3s}.nav-link:hover::after{width:100%}.room-card{background-color:#fff;border-radius:1rem;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);overflow:hidden;transition-duration:.3s}.room-card:hover{box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);transform:scale(1.05)}.room-image{width:100%;height:16rem;object-fit:cover;transition-duration:.3s}.room-card:hover .room-image{transform:scale(1.1)}.price-tag{font-size:1.5rem;line-height:2rem;font-weight:700;color:#d97706}.status-badge{display:inline-flex;align-items:center;padding-left:.625rem;padding-right:.625rem;padding-top:.125rem;padding-bottom:.125rem;border-radius:9999px;font-size:.75rem;line-height:1rem;font-weight:500}.status-confirmed{background-color:#dcfce7;color:#166534}.status-pending{background-color:#fef3c7;color:#92400e}.status-cancelled{background-color:#fecaca;color:#7f1d1d}.status-available{background-color:#dcfce7;color:#166534}.status-maintenance{background-color:#fecaca;color:#7f1d1d}.gradient-primary{background:linear-gradient(135deg,#d97706 0%,#b45309 100%)}.gradient-secondary{background:linear-gradient(135deg,#1f2937 0%,#374151 100%)}.text-shadow{text-shadow:2px 2px 4px rgba(0,0,0,.5)}.back-to-top{position:fixed;bottom:2rem;right:2rem;background-color:#d97706;color:#fff;width:3rem;height:3rem;border-radius:9999px;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);z-index:40;transition-duration:.3s}.back-to-top:hover{background-color:#b45309}.spinner{width:2rem;height:2rem;border-width:4px;border-color:#d97706;border-top-color:transparent;border-radius:9999px;animation:spin 1s linear infinite}@media print{.no-print{display:none!important}.print-break{page-break-after:always}}@media (prefers-color-scheme:dark){.dark-mode-support{background-color:#111827;color:#fff}}@media (max-width:768px){.mobile-optimized{font-size:.875rem;line-height:1.25rem}.mobile-full{width:100%}}@keyframes fadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .5s ease-in}@keyframes slideInLeft{from{opacity:0;transform:translateX(-50px)}to{opacity:1;transform:translateX(0)}}.slide-in-left{animation:slideInLeft .5s ease-out}@keyframes slideInRight{from{opacity:0;transform:translateX(50px)}to{opacity:1;transform:translateX(0)}}.slide-in-right{animation:slideInRight .5s ease-out}.prose{color:#374151;line-height:1.75}.prose h2{color:#111827;font-weight:700;font-size:1.5em;margin-top:2em;margin-bottom:1em;border-bottom:2px solid #f3f4f6;padding-bottom:.5em}.prose h3{color:#1f2937;font-weight:600;font-size:1.25em;margin-top:1.5em;margin-bottom:.5em}.prose p{margin-bottom:1em}.prose ul{margin-bottom:1em;padding-left:1.5em}.prose li{margin-bottom:.5em;position:relative}.prose li::before{content:"•";color:#d97706;font-weight:700;position:absolute;left:-1em}.prose strong{color:#111827;font-weight:600}@media print{.prose{font-size:12pt;line-height:1.4}.prose h2{page-break-after:avoid}.prose h3{page-break-after:avoid}.no-print{display:none!important}}