#footer{background-color: #fff;border-top: 1px solid #eee;padding-top: 3rem;padding-bottom: 0;color: #333;font-size: 0.9rem}#footer a{color: #333}#footer a:hover{color: var(--tiwall-blue, #3399dd)}.footer-content .about .footer-logo img{max-width: 80px;margin-bottom: 0.5rem}.footer-content .footer-namad-link{display: inline-flex;align-items: center;justify-content: center;min-width: 48px;min-height: 48px;padding: 4px}.footer-content .about .footer-brand-name{color: #333;font-weight: 700;font-size: 1.25rem}.footer-content .about .footer-brand-name:hover{color: var(--tiwall-blue, #3399dd)}.footer-content p, .footer-content a{color: #333;text-decoration: none}.footer-content .contact-block a, .footer-content .footer-phone{transition: color 0.3s ease;color: #333}.footer-content .contact-block a:hover, .footer-content .footer-phone:hover, .footer-content .helpful-links a:hover{color: var(--tiwall-blue, #3399dd)}.footer-content .sub-footer{text-align: center;margin-top: 2rem;padding: 2rem 0;border-top: 1px solid #eee}.footer-content .sub-footer p{margin: 0;color: #444;font-size: 0.9rem}.footer-content .sub-footer .footer-site-name{font-weight: 600;color: #333}.footer-content .sub-footer .footer-link{color: var(--tiwall-blue, #3399dd);text-decoration: underline;text-underline-offset: 2px}.footer-content .sub-footer .footer-link:hover{text-decoration: underline}.footer-content .footer-social-list{list-style: none;padding: 0;margin: 0;display: flex;justify-content: center;align-items: center;gap: 0.75rem}.footer-content .footer-social-list li{margin: 0}.footer-content .footer-social-list a{display: inline-block;min-width: 48px;min-height: 48px;padding: 10px;box-sizing: border-box;transition: transform 0.2s ease-in-out}.footer-content .footer-social-list a:hover{transform: scale(1.15)}.footer-content .footer-social-list svg{width: 28px;height: 28px;display: block}.footer-content .text-primary{color: #1a7bb8 !important}.profile-edit-modal .modal-header{background: #2c3e50;color: #222;border-bottom: none;border-top-left-radius: 12px;border-top-right-radius: 12px;position: relative;justify-content: center;align-items: center;padding: 1rem 2.75rem}.profile-edit-modal .modal-header .modal-title{margin: 0;font-weight: 700;font-size: 1.125rem;color: #f8f9fb}.profile-edit-modal .modal-header .btn-close{position: absolute;right: 18px;top: 50%;transform: translateY(-50%);opacity: 0.75}.profile-edit-modal .modal-header .btn-close:hover, .profile-edit-modal .modal-header .btn-close:focus{opacity: 1}.profile-edit-modal .modal-content{border-radius: 12px;overflow: hidden;border: none}.profile-edit-modal .modal-body{background: #f8f9fb;padding: 1.75rem}.profile-edit-modal #user-form{display: block}.profile-edit-modal #user-form .row > [class*="col"], .profile-edit-modal #user-form .form-group, .profile-edit-modal #user-form .mb-3{margin-bottom: 1rem !important}.profile-edit-modal #user-form input, .profile-edit-modal #user-form select, .profile-edit-modal #user-form textarea{padding: 0.75rem 0.9rem;border-radius: 10px}.profile-edit-modal #user-form .btn-primary{background-color: #1f6feb;border-color: #1f6feb}.profile-edit-modal #user-form .btn-primary:disabled{opacity: 0.65}.profile-edit-modal-overlay{position: fixed;top: 24px;left: 50%;transform: translateX(-50%);z-index: 2100;min-width: 260px;max-width: 90%;padding: 0.85rem 1.4rem;border-radius: 12px;color: #fff;background: rgba(31, 111, 235, 0.95);box-shadow: 0 18px 32px rgba(0, 0, 0, 0.2);text-align: center;transition: opacity 0.25s ease}.profile-edit-modal-overlay.error{background: rgba(220, 53, 69, 0.95)}#profile-edit-modal, #frontend-profile-modal .modal{z-index: 20010}@media (max-width: 991px){#profile-edit-modal.modal, #frontend-profile-modal .modal{overflow-x: hidden !important;overflow-y: auto !important;-webkit-overflow-scrolling: touch;padding: max(0.6rem, env(safe-area-inset-top, 0px)) 0.6rem max(0.6rem, env(safe-area-inset-bottom, 0px))}#profile-edit-modal .modal-dialog, #frontend-profile-modal .modal-dialog{margin: 0 auto;max-width: calc(100vw - 1.2rem);width: 100%;max-height: calc(100vh - 1.2rem);max-height: calc(100dvh - 1.2rem)}#profile-edit-modal .modal-content, #profile-edit-modal .profile-edit-modal, #frontend-profile-modal .modal-content{max-height: calc(100vh - 1.2rem);max-height: calc(100dvh - 1.2rem);display: flex;flex-direction: column;overflow: hidden}#profile-edit-modal .modal-body, #frontend-profile-modal .modal-body{overflow-y: auto;-webkit-overflow-scrolling: touch;flex: 1 1 auto;min-height: 0}}.pwa-install-banner{position: fixed;left: 0;right: 0;bottom: 0;z-index: 1040;padding: 0 1rem calc(1rem + env(safe-area-inset-bottom, 0px));pointer-events: none;transform: translateY(calc(110% + 1rem));transition: transform 0.35s ease}.pwa-install-banner:not([hidden]){transform: translateY(0)}body.pwa-install-banner-visible{padding-bottom: calc(88px + env(safe-area-inset-bottom, 0px))}.pwa-install-inner{position: relative;display: flex;align-items: center;gap: 0.75rem;width: fit-content;max-width: min(960px, calc(100vw - 2rem));margin: 0 auto;padding: 0.55rem 2.15rem 0.7rem 0.85rem;background: linear-gradient(135deg, var(--tiwall-dark-blue, #2c3e50) 0%, #1a5276 100%);color: #fff;border-radius: 14px;box-shadow: 0 8px 32px rgba(0, 0, 0, 0.22);pointer-events: auto}.pwa-install-icon{flex-shrink: 0;width: 44px;height: 44px;border-radius: 10px;background: #fff;object-fit: contain}.pwa-install-content{flex: 0 1 auto;min-width: 0}.pwa-install-title{display: block;font-size: 0.95rem;font-weight: 700;margin-bottom: 0.15rem}.pwa-install-desc{display: block;font-size: 0.8rem;opacity: 0.9;line-height: 1.45}.pwa-install-ios-hint, .pwa-install-android-hint{margin: 0.35rem 0 0;font-size: 0.78rem;line-height: 1.5;opacity: 0.95}.pwa-install-ios-hint .bi, .pwa-install-android-hint .bi{margin-left: 0.25rem}.pwa-install-actions{display: flex;align-items: center;gap: 0.35rem;flex-shrink: 0}.pwa-install-action{white-space: nowrap;min-height: 40px;padding: 0.35rem 0.85rem;font-size: 0.85rem;font-weight: 600}.pwa-install-later{white-space: nowrap;min-height: 40px;padding: 0.25rem 0.5rem;font-size: 0.8rem;text-decoration: none}.pwa-install-later:hover{color: #fff !important;text-decoration: underline}.pwa-install-close{position: absolute;top: 0.3rem;right: 0.3rem;z-index: 1;display: inline-flex;align-items: center;justify-content: center;min-width: 32px;min-height: 32px;padding: 0;border: none;background: transparent;color: rgba(255, 255, 255, 0.75);cursor: pointer;border-radius: 8px;transition: color 0.2s ease, background 0.2s ease}.pwa-install-close:hover, .pwa-install-close:focus{color: #fff;background: rgba(255, 255, 255, 0.12)}@media (max-width: 575.98px){.pwa-install-inner{flex-wrap: wrap;width: 100%;max-width: calc(100vw - 2rem)}.pwa-install-actions{width: 100%;justify-content: flex-end;padding-top: 0.25rem}}