:root{--flag-navy: #0d3351;--flag-blue: #1f5d88;--flag-red: #d94a4a;--flag-red-deep: #b62d2d;--flag-green: #214d3a;--flag-green-soft: #3d6d59;--flag-sky: #dfeef7;--flag-sand: #f4efe7;--flag-ice: #f7fafc;--flag-ink: #102333;--page-overlay: rgba(255, 255, 255, .4);--season-background-image: url(/red-bay-summer.jpg);--panel-soft: rgba(255, 255, 255, .76);--accent: 13, 51, 81;--accent-light: 31, 93, 136;--accent-dark: 16, 35, 51;--accent-gradient: linear-gradient( 135deg, #d94a4a 0%, #1f5d88 40%, #f7fafc 100% )}*,*:before,*:after{box-sizing:border-box}html{font-family:system-ui,sans-serif;background:linear-gradient(180deg,#eef5fb,#f8fafb)}body{position:relative;isolation:isolate;margin:0;min-width:0;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(180deg,var(--page-overlay),rgba(255,255,255,.64)),var(--season-background-image);background-size:cover;background-position:center;background-repeat:no-repeat}code{font-family:Menlo,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New,monospace}main{margin-inline:auto;padding:1rem;width:1080px;max-width:100%;color:var(--flag-navy);font-size:20px;line-height:1.6;font-weight:600}@media (max-width: 768px){main{font-size:16px;padding:.75rem}}@media (max-width: 480px){main{font-size:14px;padding:.5rem}}.text-gradient{background-image:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-size:400%;background-position:0%}h1{font-size:4rem;font-weight:800;line-height:1;text-align:center;margin-top:.5em;margin-bottom:.75em;font-family:Cinzel,sans-serif;color:#0d3351eb;letter-spacing:-.04em}@media (max-width: 768px){h1{font-size:2.5rem}}@media (max-width: 480px){h1{font-size:2rem}}h1 .welcome-text{font-size:.8em}.instructions{margin-bottom:1rem;border:1px solid rgba(13,51,81,.12);color:var(--flag-navy);padding:1.5rem;border-radius:8px;box-shadow:0 10px 25px #0d33510f;font-weight:600}@media (max-width: 768px){.instructions{padding:1rem}}@media (max-width: 480px){.instructions{padding:.75rem}}.navbar{margin:.5rem 0;padding:.4rem;background:#dfeef7e6;border:1px solid #003057;border-radius:8px;box-shadow:0 10px 25px #0d33510f}.app-toast-container{position:fixed;right:1rem;bottom:1rem;display:flex;flex-direction:column;gap:.5rem;z-index:5000;pointer-events:none;max-width:min(460px,calc(100vw - 2rem))}.app-toast{opacity:0;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease;background:#fffffff5;color:#001428;border:1px solid rgba(0,20,40,.18);border-left:4px solid rgb(100,200,120);border-radius:8px;padding:.65rem .85rem;box-shadow:0 8px 20px #00000040;font-size:.92rem;line-height:1.35;pointer-events:auto}.app-toast.show{opacity:1;transform:translateY(0)}.app-toast-action{margin-left:.75rem;padding:0;border:0;background:transparent;color:#003057;font:inherit;font-weight:700;text-decoration:underline;cursor:pointer}@media (max-width: 600px){.app-toast-container{right:.6rem;left:.6rem;bottom:.6rem;max-width:none}.app-toast{font-size:.88rem}}.navbar{margin:.5rem 0;padding:.4rem}.navbar ul{list-style:none;padding:0;margin:0;display:flex;gap:0;flex-wrap:wrap}.navbar li{flex:1;min-width:150px}.navbar a{display:block;padding:.75rem 1rem;background:#ffffffb8;color:#0d3351e6;text-decoration:none;border:1px solid rgba(13,51,81,.22);border-left:2px solid rgba(13,51,81,.85);border-radius:0;transition:all .2s;text-align:center;font-size:1rem;font-weight:700}.navbar li:first-child a{border-left:1px solid rgba(13,51,81,.22)}@media (max-width: 768px){.navbar a{font-size:.9rem;padding:.6rem .75rem}.navbar li{min-width:120px}}@media (max-width: 480px){.navbar a{font-size:.85rem;padding:.5rem .6rem}.navbar ul{flex-direction:column;gap:.25rem}.navbar li{min-width:auto}}.navbar a:hover{background:#dfeef7f2;border-color:#1f5d8866;transform:translateY(-2px)}.navbar a.active{background:linear-gradient(135deg,var(--flag-red),var(--flag-red-deep));border-color:#b62d2dbf;color:#fff;font-weight:700;pointer-events:none;cursor:default}.navbar a.active:hover{transform:none}.top-right-controls{position:fixed;top:1rem;right:20px;z-index:1000;display:flex;gap:.75rem;align-items:center;max-width:calc(100vw - 40px)}.season-selector select{padding:.5rem .75rem;background:#003057e6;color:#fff;border:1px solid rgba(100,200,120,.6);border-radius:4px;font-size:.9rem;cursor:pointer;transition:all .2s}.season-selector select:hover{background:#228b22e6;border-color:#64c878cc}.season-selector select:focus{outline:none;border-color:#64c878}.login-btn{padding:.5rem 1rem;background:linear-gradient(135deg,var(--flag-blue),var(--flag-navy));color:#fff;border:1px solid rgba(13,51,81,.18);border-radius:4px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.login-btn:hover{background:#157347;border-color:#146c43}.signup-btn{padding:.5rem 1rem;background:#003057e6;color:#fff;border:1px solid #198754;border-radius:4px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.signup-btn:hover{background:#157347;border-color:#146c43}.auth-section{display:flex;align-items:center;gap:.5rem;min-width:0}.user-section{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;background:#003057e6;border:1px solid rgba(100,200,120,.6);border-radius:4px;min-width:0;max-width:100%}.user-name{color:#fff;font-size:.9rem;font-weight:500;cursor:help;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-identity{display:grid;min-width:0}.user-organizations{color:#ffffffc7;font-size:.72rem;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logout-btn{padding:.4rem .75rem;background:#8b2222e6;color:#fff;border:1px solid rgba(220,100,100,.6);border-radius:4px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s}.logout-btn:hover{background:#b43232e6;border-color:#dc6464}@media (max-width: 768px){.top-right-controls{top:.5rem;right:20px;left:auto;max-width:calc(100vw - 40px);flex-direction:column;justify-content:flex-end;align-items:flex-end;gap:.5rem}.auth-section{max-width:100%;justify-content:flex-end}.user-section{padding:.4rem .5rem;gap:.5rem}.logout-btn{flex:0 0 auto}}.login-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;z-index:2000;align-items:flex-start;justify-content:center;padding-top:2rem}.login-modal.active{display:flex}.login-modal.login-required{z-index:10000;align-items:center;padding:1rem;background:#051826eb}.login-modal-content{background:linear-gradient(135deg,#f7fafcfa,#dfeef7f5);border:1px solid rgba(13,51,81,.14);border-radius:8px;padding:2rem;width:90%;max-width:400px;position:relative;margin:2rem auto;max-height:85vh;overflow-y:auto;color:var(--flag-ink)}.close-btn{position:absolute;top:.5rem;right:.5rem;background:none;border:none;color:#fff;font-size:2rem;cursor:pointer;line-height:1;padding:.25rem .5rem}.close-btn:hover{color:#64c878}.login-modal-content h2{color:var(--flag-navy);margin-bottom:1.5rem;text-align:center}.login-required-message{margin:-.75rem 0 1.25rem;color:#334155;text-align:center}body.admin-page:not(.admin-authenticated) .admin-workspace,body.admin-page:not(.admin-authenticated) .top-right-controls{visibility:hidden}.admin-workspace{display:grid;grid-template-columns:minmax(13rem,16rem) minmax(0,1fr);gap:1rem;width:min(96vw,1500px);min-height:calc(100vh - 7rem);margin:2rem auto 1.5rem;align-items:start}.admin-navigation-toggle{display:none}.admin-sidebar{position:static;width:100%;height:auto;max-height:none;overflow:hidden;background:#fff;border:1px solid rgba(13,51,81,.12);border-radius:14px;box-shadow:0 18px 40px #081d2d2e}.admin-sidebar-heading{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:.6rem .75rem;padding:1.1rem 1rem 1rem;background:linear-gradient(135deg,#0d3351,#1f5d88);border-bottom:4px solid transparent;border-image:linear-gradient(90deg,#fff 0 33.3%,#1f8a3b 33.3% 66.6%,#1d4ed8 66.6%) 1}.admin-sidebar-brand{display:grid;gap:.15rem;flex:1 0 auto}.admin-sidebar-eyebrow{color:#a9d1ea;font-size:.64rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.admin-sidebar-title{color:#fff;font-family:Cinzel,serif;font-size:1.1rem;font-weight:700;letter-spacing:.02em}.admin-site-link{flex:0 0 auto;padding:.3rem .65rem;color:#fff;border:1px solid rgba(255,255,255,.35);border-radius:999px;font-size:.72rem;font-weight:600;text-decoration:none;white-space:nowrap;transition:background .15s}.admin-site-link:hover,.admin-site-link:focus-visible{background:#ffffff29}.admin-organization-thumbnails:not([hidden]){display:grid;gap:.45rem;padding:.9rem .75rem .15rem}.admin-organization-heading{padding:0 .15rem;color:#64748b;font-size:.64rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.admin-organization-card{display:flex;align-items:center;gap:.7rem;padding:.55rem .65rem;background:linear-gradient(180deg,#f8fbfd,#eef4f8);border:1px solid #e2e8f0;border-radius:10px}.admin-organization-card img,.admin-organization-initials{flex:0 0 44px;width:44px;height:44px;border-radius:8px}.admin-organization-card img{padding:3px;object-fit:contain;background:#fff;border:1px solid #e2e8f0}.admin-organization-initials{display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#1f5d88,#0d3351);font-size:.9rem;font-weight:700;letter-spacing:.04em}.admin-organization-name{display:-webkit-box;overflow:hidden;color:#0d3351;font-size:.88rem;font-weight:700;line-height:1.25;-webkit-line-clamp:2;-webkit-box-orient:vertical}.admin-sidebar .admin-dropdown{display:grid;gap:2px;padding:.6rem}.admin-sidebar .admin-dropdown>a,.admin-sidebar-group>a{display:flex;align-items:center;gap:.7rem;padding:.55rem .7rem;color:#334155;border-radius:8px;text-decoration:none;font-size:.9rem;font-weight:500;transition:background .15s,color .15s}.admin-sidebar .admin-dropdown a:before{content:"";flex:0 0 18px;width:18px;height:18px;background:currentColor;opacity:.7;-webkit-mask:var(--admin-nav-icon) center / contain no-repeat;mask:var(--admin-nav-icon) center / contain no-repeat}.admin-sidebar .admin-dropdown a:hover{color:#0d3351;background:#eef4f8}.admin-sidebar .admin-dropdown a.active{color:#fff;background:#0d3351;box-shadow:0 4px 12px #0d335140}.admin-sidebar .admin-dropdown a.active:before{opacity:1}.admin-sidebar .admin-dropdown a:focus-visible{outline:2px solid #1f5d88;outline-offset:2px}#accommodations-menu-item{--admin-nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 19V6M3 15h18v4M21 15v-3a3 3 0 0 0-3-3h-7v6'/%3E%3Ccircle cx='7' cy='11' r='2'/%3E%3C/svg%3E")}#activities-menu-item{--admin-nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 20l6-11 4 6 3-4 5 9z'/%3E%3C/svg%3E")}#attractions-menu-item{--admin-nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l2.6 5.6 6.1.7-4.5 4.2 1.2 6L12 16.6l-5.4 2.9 1.2-6-4.5-4.2 6.1-.7z'/%3E%3C/svg%3E")}#services-menu-item{--admin-nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='7' width='18' height='13' rx='2'/%3E%3Cpath d='M8 7V5a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2M3 13h18'/%3E%3C/svg%3E")}#events-admin-menu-item,#events-self-menu-item{--admin-nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3C/svg%3E")}#cruise-admin-menu-item,#cruise-self-menu-item{--admin-nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 15l2 5h14l2-5zM6 15V9h12v6M12 4v5M9 9V6h6v3'/%3E%3C/svg%3E")}#bus-tour-admin-menu-item,#bus-tour-self-menu-item{--admin-nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='3' width='16' height='14' rx='2'/%3E%3Cpath d='M4 11h16M7 17v3M17 17v3'/%3E%3C/svg%3E")}#marine-vessels-menu-item{--admin-nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='5' r='2'/%3E%3Cpath d='M12 7v14M5 12H3a9 9 0 0 0 18 0h-2M8 10h8'/%3E%3C/svg%3E")}#communities-menu-item{--admin-nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11l9-7 9 7v9a1 1 0 0 1-1 1h-5v-6H9v6H4a1 1 0 0 1-1-1z'/%3E%3C/svg%3E")}#organizations-menu-item{--admin-nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='3' width='16' height='18' rx='1'/%3E%3Cpath d='M9 7h1M14 7h1M9 11h1M14 11h1M9 15h1M14 15h1M10 21v-3h4v3'/%3E%3C/svg%3E")}#facilities-menu-item{--admin-nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-12a7 7 0 0 1 14 0c0 5.8-7 12-7 12z'/%3E%3Ccircle cx='12' cy='9' r='2.5'/%3E%3C/svg%3E")}#contacts-menu-item{--admin-nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21a8 8 0 0 1 16 0'/%3E%3C/svg%3E")}#images-menu-item{--admin-nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='16' rx='2'/%3E%3Ccircle cx='9' cy='10' r='2'/%3E%3Cpath d='M21 16l-5-5-9 9'/%3E%3C/svg%3E")}#users-menu-item{--admin-nav-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3.5'/%3E%3Cpath d='M2 20a7 7 0 0 1 14 0M16 4.5a3.5 3.5 0 0 1 0 7M22 20a7 7 0 0 0-4-6.3'/%3E%3C/svg%3E")}.admin-sidebar-group{display:grid;gap:2px;margin:.4rem 0;padding:.45rem 0;border-block:1px solid #e2e8f0}.admin-sidebar-label{padding:.3rem .7rem;color:#64748b;font-size:.64rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.admin-sidebar-separator{height:1px;margin:.4rem .3rem;background:#e2e8f0}.admin-main-panel{grid-column:2;min-width:0;min-height:calc(100vh - 7rem);background:#f7fafcb8;border:1px solid rgba(13,51,81,.16);border-radius:6px;box-shadow:0 8px 24px #0d335114}.admin-panel-empty{display:grid;min-height:24rem;padding:2rem;place-content:center;text-align:center}.admin-panel-empty[hidden]{display:none}.admin-panel-empty h1{margin:.25rem 0 .5rem;color:#0d3351;font-family:Cinzel,serif;font-size:2rem}.admin-panel-eyebrow{margin:0;color:#b42318;font-size:.75rem;font-weight:800;text-transform:uppercase}body.admin-page .admin-main-panel>:is(.activities-modal,.accommodations-modal,.services-modal,.attractions-modal,.images-modal,.facilities-modal,.organizations-modal,.communities-modal,.users-modal){display:none;position:static;width:100%;height:auto;min-height:0;padding:0;overflow:visible;background:transparent}body.admin-page .admin-main-panel>:is(.activities-modal,.accommodations-modal,.services-modal,.attractions-modal,.images-modal,.facilities-modal,.organizations-modal,.communities-modal,.users-modal).active{display:block}body.admin-page .admin-main-panel :is(.activities-modal-content,.accommodations-modal-content,.services-modal-content,.attractions-modal-content,.images-modal-content,.facilities-modal-content,.organizations-modal-content,.communities-modal-content,.users-modal-content){width:100%;max-width:none;max-height:none;margin:0;padding:1.25rem;overflow:visible;border:0;border-radius:0;box-shadow:none;background:transparent;color:#18364d}body.admin-page .admin-main-panel .close-btn{display:none}@media (max-width: 800px){.admin-workspace{display:block;width:calc(100vw - 1rem);margin-top:8.5rem}.admin-navigation-toggle{display:inline-flex;align-items:center;min-height:2.5rem;margin-bottom:.5rem;padding:.5rem .8rem;color:#fff;background:#0d3351;border:0;border-radius:4px;font:inherit;font-weight:700}.admin-sidebar{display:none;position:static;width:auto;max-height:none;margin-bottom:.75rem}.admin-workspace.navigation-open .admin-sidebar{display:block}.admin-main-panel{min-height:calc(100vh - 12rem)}.admin-panel-empty h1{font-size:1.5rem}body.admin-page .admin-main-panel :is(.activities-modal-content,.accommodations-modal-content,.services-modal-content,.attractions-modal-content,.images-modal-content,.facilities-modal-content,.organizations-modal-content,.communities-modal-content,.users-modal-content){padding:.85rem}}.auth-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:1px solid rgba(100,200,120,.3)}.tab-btn{flex:1;padding:.75rem;background:transparent;border:none;border-bottom:2px solid transparent;color:#fff9;font-size:1rem;cursor:pointer;transition:all .2s}.tab-btn:hover{color:#ffffffe6}.tab-btn.active{color:#64c878;border-bottom-color:#64c878}.tab-content{display:none}.tab-content.active{display:block}.login-form{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.login-form input{padding:.75rem;background:#fff;border:1px solid rgba(100,200,120,.4);border-radius:4px;color:var(--flag-navy);font-size:1rem}.login-form input::placeholder{color:var(--flag-navy)}.login-form input:focus{outline:none;border-color:#64c878}.login-turnstile{display:flex;justify-content:center;min-height:65px}.login-turnstile-status{margin:-.5rem 0 0;color:var(--flag-red-deep);font-size:.85rem;text-align:center}.login-turnstile-status:empty{display:none}.submit-btn{padding:.75rem;background:linear-gradient(135deg,var(--flag-red),var(--flag-red-deep));color:#fff;border:1px solid rgba(182,45,45,.35);border-radius:4px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.submit-btn:hover{background:#157347;border-color:#146c43}button[id$=-add-btn]{background:#198754;border-color:#198754;color:#fff}button[id$=-add-btn]:hover{background:#157347;border-color:#146c43}.submit-btn:disabled{background:#50505080;border-color:#78787866;cursor:not-allowed;opacity:.6}.submit-btn:disabled:hover{background:#50505080}.divider{text-align:center;margin:1.5rem 0;position:relative}.divider:before,.divider:after{content:"";position:absolute;top:50%;width:40%;height:1px;background:#64c8784d}.divider:before{left:0}.divider:after{right:0}.divider span{color:#fff9;padding:0 1rem}.social-login{display:flex;flex-direction:column;gap:.75rem}.social-btn{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.75rem;background:#ffffff1a;border:1px solid rgba(100,200,120,.4);border-radius:4px;color:#fff;font-size:.95rem;cursor:pointer;transition:all .2s}.social-btn:hover{background:#ffffff26;border-color:#64c87899}.social-btn svg{flex-shrink:0}.signup-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;z-index:2000;align-items:center;justify-content:center;overflow-y:auto}.signup-modal.active{display:flex}.signup-modal-content{background:linear-gradient(135deg,#001428f2,#003057f2);border:1px solid rgba(100,200,120,.5);border-radius:8px;padding:2rem;width:90%;max-width:500px;position:relative;margin:2rem auto;max-height:85vh;overflow-y:auto}.signup-modal-content h2{color:#64c878;margin-bottom:1.5rem;text-align:center}.signup-title{font-size:2rem;color:#64c878;margin-bottom:1.5rem;text-align:center;font-family:Cinzel,serif}.signup-form{display:flex;flex-direction:column;gap:1rem}.form-row{display:flex;gap:1rem}.form-group{flex:1;display:flex;flex-direction:column;gap:.25rem}.form-group label{color:#ffffffe6;font-size:.9rem;font-weight:500}.form-group input,.form-group select{padding:.75rem;background:#ffffff1a;border:1px solid rgba(100,200,120,.4);border-radius:4px;color:#fff;font-size:1rem}.form-group input::placeholder{color:#fff9}.form-group input:focus,.form-group select:focus{outline:none;border-color:#64c878}.password-hint{color:#fff9;font-size:.75rem;margin-top:.25rem}.admin-menu{position:relative}.admin-menu .admin-submenu{display:none;position:absolute;top:100%;left:0;background:linear-gradient(135deg,#001428fa,#003057fa);border:1px solid rgba(100,200,120,.5);border-radius:4px;min-width:160px;padding:.5rem 0;z-index:1000;list-style:none;margin:0}.admin-menu:hover .admin-submenu{display:block}.admin-menu .admin-submenu li{margin:0}.admin-menu .admin-submenu a{display:block;padding:.75rem 1.25rem;color:#fff;text-decoration:none;transition:all .2s}.admin-menu .admin-submenu a:hover{background:#64c87833;padding-left:1.5rem}.admin-toggle{cursor:pointer}.facilities-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:2000;align-items:flex-start;justify-content:center;overflow-y:auto}.facilities-modal.active{display:flex}.facilities-modal-content{background:linear-gradient(135deg,#001428f2,#003057f2);border:1px solid rgba(100,200,120,.5);border-radius:8px;padding:2rem;width:90%;max-width:700px;max-height:85vh;overflow-y:auto;position:relative;margin:2rem auto}.facilities-modal-content h2{color:var(--flag-navy);margin:0 0 1rem;font-family:Cinzel,serif;font-size:1.35rem}.facilities-modal-content h3{color:#64c878;margin:1.5rem 0 1rem;font-size:1.2rem;font-family:Cinzel,serif}.facilities-form-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid rgba(100,200,120,.3)}.facilities-form .form-group{margin-bottom:1rem}.facilities-form label{display:block;color:#ffffffe6;margin-bottom:.5rem;font-size:.9rem}.facilities-form input,.facilities-form select{width:100%;padding:.75rem;background:#ffffff1a;border:1px solid rgba(100,200,120,.4);border-radius:4px;color:#fff;font-size:1rem}.facilities-form input::placeholder,.facilities-form select::placeholder{color:#fff9}.facilities-form input:focus,.facilities-form select:focus{outline:none;border-color:#64c878}.facilities-form select{cursor:pointer}.facilities-form select option{background:#001428;color:#fff}.facilities-list{max-height:300px;overflow-y:auto}.facility-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;margin-bottom:.5rem;background:#ffffff0d;border:1px solid rgba(100,200,120,.3);border-radius:4px}.facility-info{flex:1}.facility-name{color:#fff;font-weight:500;margin-bottom:.25rem}.facility-details{color:#ffffffb3;font-size:.85rem}.facility-buttons,.organization-buttons{display:flex;gap:.5rem}.edit-facility-btn,.edit-organization-btn{padding:.4rem .75rem;background:#22558be6;color:#fff;border:1px solid rgba(100,150,220,.6);border-radius:4px;font-size:.85rem;cursor:pointer;transition:all .2s}.edit-facility-btn:hover,.edit-organization-btn:hover{background:#326eb4e6;border-color:#6496dc}.delete-facility-btn,.delete-organization-btn{padding:.4rem .75rem;background:#8b2222e6;color:#fff;border:1px solid rgba(220,100,100,.6);border-radius:4px;font-size:.85rem;cursor:pointer;transition:all .2s}.delete-facility-btn:hover,.delete-organization-btn:hover{background:#b43232e6;border-color:#dc6464}.no-facilities-message{color:#ffffffb3;text-align:center;font-style:italic}.activities-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;z-index:2000;align-items:flex-start;justify-content:center;overflow-y:auto}.activities-modal.active{display:flex}.activities-modal-content{background:linear-gradient(135deg,#f7fafcfa,#dfeef7f5);border:1px solid rgba(13,51,81,.18);border-radius:8px;padding:2rem;width:90%;max-width:800px;max-height:85vh;overflow-y:auto;position:relative;margin:2rem auto;color:var(--flag-ink)}.activities-modal-content h2{color:var(--flag-navy);margin:0 0 1.5rem;font-family:Cinzel,serif}.activities-modal-content h3{color:var(--flag-navy);margin:1.5rem 0 1rem;font-size:1.2rem;font-family:Cinzel,serif}.activities-form-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid rgba(100,200,120,.3)}.activities-form .form-group{margin-bottom:1rem}.activities-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.activities-form label{display:block;color:var(--flag-navy);margin-bottom:.5rem;font-size:.9rem}.activities-form input,.activities-form select,.activities-form textarea{width:100%;padding:.75rem;background:#fffc;border:1px solid rgba(13,51,81,.25);border-radius:4px;color:var(--flag-ink);font-size:1rem;font-family:inherit}.activities-form textarea{resize:vertical;min-height:100px}.activities-form input::placeholder,.activities-form textarea::placeholder{color:#0d33518c}.activities-form input:focus,.activities-form select:focus,.activities-form textarea:focus{outline:none;border-color:#64c878}.activities-form select{cursor:pointer}.activities-form select option{background:#001428;color:#fff}.activities-list{max-height:300px;overflow-y:auto}.activity-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;margin-bottom:.5rem;background:#ffffff0d;border:1px solid rgba(100,200,120,.3);border-radius:4px}.activity-thumb{width:64px;height:64px;flex-shrink:0;object-fit:cover;border-radius:4px;background:#ffffff1a}.activity-info{flex:1;min-width:0}.activity-name{color:var(--flag-navy);font-weight:600;margin-bottom:.25rem}.activity-details{color:var(--flag-ink);font-size:.85rem}.activity-buttons{display:flex;gap:.5rem}.edit-activity-btn{padding:.4rem .75rem;background:#22558be6;color:#fff;border:1px solid rgba(100,150,220,.6);border-radius:4px;font-size:.85rem;cursor:pointer;transition:all .2s}.edit-activity-btn:hover{background:#326eb4e6;border-color:#6496dc}.delete-activity-btn{padding:.4rem .75rem;background:#8b2222e6;color:#fff;border:1px solid rgba(220,100,100,.6);border-radius:4px;font-size:.85rem;cursor:pointer;transition:all .2s}.delete-activity-btn:hover{background:#b43232e6;border-color:#dc6464}.no-activities-message{color:var(--flag-ink);text-align:center;padding:1rem;font-style:italic}.accommodations-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;z-index:2000;align-items:center;justify-content:center;overflow-y:auto}.accommodations-modal.active{display:flex}.accommodations-modal-content{background:linear-gradient(135deg,#f7fafcfa,#dfeef7f5);border:1px solid rgba(13,51,81,.18);border-radius:8px;padding:2rem;width:90%;max-width:800px;max-height:85vh;overflow-y:auto;position:relative;margin:2rem auto;color:var(--flag-ink)}.accommodations-modal-content h2{color:var(--flag-navy);margin:0 0 1.5rem;font-family:Cinzel,serif}.accommodations-modal-content h3{color:var(--flag-navy);margin:1.5rem 0 1rem;font-size:1.2rem;font-family:Cinzel,serif}.services-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;z-index:2000;align-items:center;justify-content:center;overflow-y:auto}.services-modal.active{display:flex}.services-modal-content{background:linear-gradient(135deg,#f7fafcfa,#dfeef7f5);border:1px solid rgba(13,51,81,.18);border-radius:8px;padding:2rem;width:90%;max-width:700px;max-height:85vh;overflow-y:auto;position:relative;margin:2rem auto;color:var(--flag-ink)}.services-modal-content h2{color:var(--flag-navy);margin:0 0 1.5rem;font-family:Cinzel,serif}.services-modal-content h3{color:var(--flag-navy);margin:1.5rem 0 1rem;font-size:1.2rem;font-family:Cinzel,serif}.accommodations-form-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid rgba(100,200,120,.3)}.accommodations-form .form-group,.accommodations-form .checkbox-group{margin-bottom:1rem}.accommodations-form .checkbox-group label{display:flex;align-items:center;gap:.5rem;cursor:pointer;color:#fff;margin-bottom:0;width:auto}.accommodations-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.accommodations-form label{display:block;color:var(--flag-navy);margin-bottom:.5rem;font-size:.9rem}.accommodations-form input,.accommodations-form select,.accommodations-form textarea{width:100%;padding:.75rem;background:#fffc;border:1px solid rgba(13,51,81,.25);border-radius:4px;color:var(--flag-ink);font-size:1rem;font-family:inherit}.accommodations-form input::placeholder,.accommodations-form textarea::placeholder{color:#0d33518c}.accommodations-form input:focus,.accommodations-form select:focus,.accommodations-form textarea:focus{outline:none;border-color:#64c878}.accommodations-form input[readonly]{background:#ffffff0d;cursor:not-allowed;opacity:.7}.accommodations-form select{cursor:pointer}.accommodations-form .checkbox-group{margin-bottom:1rem}.accommodations-form .checkbox-group label{display:flex!important;align-items:center;gap:.5rem;cursor:pointer;color:#fff!important;margin-bottom:0!important;width:auto}.accommodations-form .checkbox-group input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:rgb(100,200,120);margin:0}.accommodations-form .checkbox-group span{font-weight:500;color:#ffffffe6}.accommodations-list{max-height:300px;overflow-y:auto}.accommodation-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;margin-bottom:.5rem;background:#ffffff0d;border:1px solid rgba(100,200,120,.3);border-radius:4px}.accommodation-info{flex:1}.accommodations-actions{display:flex;gap:.5rem}.accommodations-actions .edit-btn{padding:.4rem .75rem;background:#22558be6;color:#fff;border:1px solid rgba(100,150,220,.6);border-radius:4px;font-size:.85rem;cursor:pointer;transition:all .2s}.accommodations-actions .edit-btn:hover{background:#326eb4e6;border-color:#6496dc}.accommodations-actions .delete-btn{padding:.4rem .75rem;background:#8b2222e6;color:#fff;border:1px solid rgba(220,100,100,.6);border-radius:4px;font-size:.85rem;cursor:pointer;transition:all .2s}.accommodations-actions .delete-btn:hover{background:#b43232e6;border-color:#dc6464}.no-items-message{color:#ffffffb3;text-align:center;padding:1rem;font-style:italic}.loading-message{color:#ffffffb3;text-align:center;padding:1rem}.organizations-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;z-index:2000;align-items:center;justify-content:center;overflow-y:auto}.organizations-modal.active{display:flex}.organizations-modal-content{background:linear-gradient(135deg,#f7fafcfa,#dfeef7f5);border:1px solid rgba(13,51,81,.18);border-radius:8px;padding:2rem;width:90%;max-width:700px;max-height:85vh;overflow-y:auto;position:relative;margin:2rem auto;color:var(--flag-ink)}.organizations-modal-content h2{color:var(--flag-navy);margin:0 0 1rem;font-family:Cinzel,serif;font-size:1.35rem}.organizations-modal-content h3{color:var(--flag-navy);margin:1.5rem 0 1rem;font-size:1.2rem;font-family:Cinzel,serif}.organizations-form-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid rgba(100,200,120,.3)}.organizations-form .form-group{margin-bottom:1rem}.organizations-form .form-row{display:flex;flex-wrap:wrap;gap:1rem}.organizations-form .form-row .form-group{flex:1 1 160px;min-width:0}.organizations-form label{display:block;color:var(--flag-navy);margin-bottom:.5rem;font-size:.9rem}.organizations-form input,.organizations-form select{width:100%;padding:.75rem;background:#fffc;border:1px solid rgba(13,51,81,.25);border-radius:4px;color:var(--flag-ink);font-size:1rem}.organizations-form input::placeholder{color:#0d33518c}.organizations-form input:focus,.organizations-form select:focus{outline:none;border-color:#64c878}.organizations-form select{cursor:pointer}.organizations-form select option{background:#001428;color:#fff}.validation-hint{display:block;font-size:.8rem;margin-top:.25rem}.contact-display{font-size:.9rem;font-style:italic}.organizations-list{max-height:300px;overflow-y:auto}.organization-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;margin-bottom:.5rem;background:#ffffff0d;border:1px solid rgba(100,200,120,.3);border-radius:4px}.organization-info{flex:1}.organization-name{color:#fff;font-weight:500;margin-bottom:.25rem}.organization-details{color:#ffffffb3;font-size:.85rem}.no-organizations-message{color:#ffffffb3;text-align:center;padding:1rem;font-style:italic}.communities-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;z-index:2000;align-items:center;justify-content:center;overflow-y:auto}.communities-modal.active{display:flex}.communities-modal-content{background:linear-gradient(135deg,#f7fafcfa,#dfeef7f5);border:1px solid rgba(13,51,81,.18);border-radius:8px;padding:2rem;width:90%;max-width:700px;max-height:85vh;overflow-y:auto;position:relative;margin:2rem auto;color:var(--flag-ink)}.communities-modal-content h2{color:var(--flag-navy);margin:0 0 1rem;font-family:Cinzel,serif;font-size:1.35rem}.communities-modal-content h3{color:var(--flag-navy);margin:1.5rem 0 1rem;font-size:1.2rem;font-family:Cinzel,serif}.communities-form-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid rgba(100,200,120,.3)}.communities-form .form-group{margin-bottom:1rem}.communities-form .form-row{display:flex;flex-wrap:wrap;gap:1rem}.communities-form .form-row .form-group{flex:1 1 160px;min-width:0}.communities-form label{display:block;color:var(--flag-navy);margin-bottom:.5rem;font-size:.9rem}.communities-form input,.communities-form select{width:100%;padding:.75rem;background:#fffc;border:1px solid rgba(13,51,81,.25);border-radius:4px;color:var(--flag-ink);font-size:1rem}.communities-form input::placeholder{color:#0d33518c}.communities-form input:focus,.communities-form select:focus{outline:none;border-color:#64c878}.communities-form select{cursor:pointer}.communities-form select option{background:#001428;color:#fff}.communities-list{max-height:300px;overflow-y:auto}.community-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;margin-bottom:.5rem;background:#ffffff0d;border:1px solid rgba(100,200,120,.3);border-radius:4px}.community-info{flex:1}.community-name{color:#fff;font-weight:500;margin-bottom:.25rem}.community-details{color:#ffffffb3;font-size:.85rem}.community-buttons{display:flex;gap:.5rem}.edit-community-btn,.delete-community-btn{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background-color .3s}.edit-community-btn{background-color:#198754;color:#fff}.edit-community-btn:hover{background-color:#157347}.delete-community-btn{background-color:#dc3545cc;color:#fff}.delete-community-btn:hover{background-color:#dc3545}.no-communities-message{color:#ffffffb3;text-align:center;padding:1rem;font-style:italic}.users-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;z-index:2000;align-items:center;justify-content:center;overflow-y:auto}.users-modal.active{display:flex}.users-modal-content{background:linear-gradient(135deg,#f7fafcfa,#dfeef7f5);border:1px solid rgba(13,51,81,.18);border-radius:8px;padding:2rem;width:90%;max-width:800px;max-height:85vh;overflow-y:auto;position:relative;margin:2rem auto;color:var(--flag-ink)}.users-modal-content h2{color:var(--flag-navy);margin:0 0 1rem;font-family:Cinzel,serif;font-size:1.35rem}.users-modal-content h3{color:var(--flag-navy);margin:1.5rem 0 1rem;font-size:1.2rem;font-family:Cinzel,serif}.users-form-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid rgba(100,200,120,.3)}.users-form .form-group{margin-bottom:1rem}.users-form .form-row{display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:0}.users-form .form-row .form-group{flex:1;margin-bottom:1rem;min-width:0}.users-form .form-row.user-location-row .form-group{flex:1 1 160px}.users-form .form-row input,.users-form .form-row select{width:100%;box-sizing:border-box}.heading2{font-size:2rem;color:#64c878;margin:0;font-family:Cinzel,serif;text-align:center}.heading3{font-size:1.4rem;color:#64c878;margin:0;font-family:Cinzel,serif}@media (max-width: 768px){.users-form .form-row{flex-direction:column;gap:0}.heading2{font-size:1.3rem}.heading3{font-size:.95rem}}.users-form label{display:block;color:#ffffffe6;margin-bottom:.5rem;font-size:.9rem}.users-form input,.users-form select{width:100%;padding:.75rem;background:#ffffff1a;border:1px solid rgba(100,200,120,.4);border-radius:4px;color:#fff;font-size:1rem}.users-form input::placeholder{color:#fff9}.users-form input:focus,.users-form select:focus{outline:none;border-color:#64c878}.users-form select{cursor:pointer}.users-form select option{background:#001428;color:#fff}.users-list{max-height:400px;overflow-y:auto}.user-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;margin-bottom:.5rem;background:#ffffff0d;border:1px solid rgba(100,200,120,.3);border-radius:4px}.user-info{flex:1}.user-name{color:#fff;font-weight:500;margin-bottom:.25rem}.user-details{color:#ffffffb3;font-size:.85rem}.user-buttons{display:flex;gap:.5rem}.edit-user-btn,.delete-user-btn{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background-color .3s}.edit-user-btn{background-color:#198754;color:#fff}.edit-user-btn:hover{background-color:#157347}.delete-user-btn{background-color:#dc3545cc;color:#fff}.delete-user-btn:hover{background-color:#dc3545}.no-users-message{color:#ffffffb3;text-align:center;padding:1rem;font-style:italic}.services-form .form-group{margin-bottom:1.25rem;margin-top:3px}.services-modal{overflow:hidden}.services-modal-content{padding:1rem!important;width:94%!important;max-width:820px!important;max-height:85vh!important;overflow-y:auto!important;color:var(--flag-ink)}.services-modal-content h2,.services-modal-content h3,.services-modal-content label,.services-modal-content .close-btn{color:var(--flag-navy)!important}.services-form input:not([type=button]):not([type=submit]),.services-form select,.services-form textarea{background:#fff!important;color:var(--flag-ink)!important}.services-form input[readonly]{background:#e5e7eb!important;color:#4b5563!important;cursor:not-allowed}.services-form input::placeholder,.services-form textarea::placeholder{color:#102333a6!important}label[for=service-parking],label[for=service-pet-friendly],label[for=service-wheelchair-accessible],label[for=service-featured],label[for=service-active]{color:var(--flag-navy)!important}.services-form select,.accommodations-form select,select,.services-form select option,.accommodations-form select option,select option{color:#000!important;background:#fff!important}.services-list-section{margin-top:1.25rem}.services-list-section h3{color:var(--flag-navy)}.services-list{max-height:300px;overflow-y:auto}body.admin-page .admin-main-panel .services-modal-content{max-height:none!important;overflow:visible!important}body.admin-page .admin-main-panel .services-list{max-height:none;overflow:visible}.service-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;margin-bottom:.5rem;background:#ffffff0d;border:1px solid rgba(100,200,120,.3);border-radius:4px}.service-thumb{width:64px;height:64px;flex-shrink:0;object-fit:cover;border-radius:4px;background:#ffffff1a}.service-info{flex:1;min-width:0}.service-name{color:var(--flag-navy);font-weight:500;margin-bottom:.25rem}.service-details{color:var(--flag-ink);font-size:.85rem}.service-buttons{display:flex;gap:.5rem}.edit-service-btn{padding:.4rem .75rem;background:#22558be6;color:#fff;border:1px solid rgba(100,150,220,.6);border-radius:4px;font-size:.85rem;cursor:pointer;transition:all .2s}.edit-service-btn:hover{background:#326eb4e6;border-color:#6496dc}.delete-service-btn{padding:.4rem .75rem;background:#8b2222e6;color:#fff;border:1px solid rgba(220,100,100,.6);border-radius:4px;font-size:.85rem;cursor:pointer;transition:all .2s}.delete-service-btn:hover{background:#b43232e6;border-color:#dc6464}.no-services-message{color:var(--flag-ink);text-align:center;padding:1rem}.image-upload-section{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.5rem}.image-upload-section input[type=file]{color:var(--flag-ink);font-size:.85rem;flex:1 1 auto;min-width:160px;padding:.35rem .5rem;background:#fffc;border:1px solid rgba(13,51,81,.25);border-radius:4px}.image-upload-section input[type=file]::file-selector-button{padding:.4rem .9rem;margin-right:.75rem;background:#22558be6;color:#fff;border:1px solid rgba(100,150,220,.6);border-radius:4px;font-size:.85rem;cursor:pointer;transition:all .2s}.image-upload-section input[type=file]::file-selector-button:hover{background:#326eb4e6;border-color:#6496dc}.image-upload-btn{padding:.4rem .75rem;background:#22558be6;color:#fff;border:1px solid rgba(100,150,220,.6);border-radius:4px;font-size:.85rem;cursor:pointer;transition:all .2s}.image-upload-btn:hover{background:#326eb4e6;border-color:#6496dc}.image-upload-btn:disabled{opacity:.6;cursor:default}.image-upload-status{color:var(--flag-ink);font-size:.8rem}.services-form .form-group{margin-bottom:1rem}.services-form .form-row{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.services-form .form-row .form-group{flex:1 1 200px;min-width:0;margin-bottom:0}.services-form .form-row.service-location-row .form-group{flex:1 1 120px}.services-form .form-row.service-name-row .form-group{flex:1 1 150px}.services-form textarea{width:100%;padding:.75rem;background:#fff;border:1px solid rgba(100,200,120,.4);border-radius:4px;color:var(--flag-ink);font-size:1rem;font-family:inherit;resize:vertical;box-sizing:border-box}.services-form textarea::placeholder{color:#102333a6}.services-form textarea:focus{outline:none;border-color:#64c878}.services-form h3{margin:1.75rem 0 1rem;padding-top:1.25rem;border-top:1px solid rgba(100,200,120,.2)}.services-form .checkbox-row{display:flex;flex-wrap:wrap;gap:.6rem .75rem;margin-bottom:1.25rem}.services-form .checkbox-item{display:flex;align-items:center;gap:.5rem;flex:1 1 160px;min-width:150px;padding:.55rem .75rem;background:#ffffff0d;border:1px solid rgba(100,200,120,.25);border-radius:4px}.services-form .checkbox-item input[type=checkbox]{flex:0 0 auto;width:1rem;height:1rem;margin:0;cursor:pointer;accent-color:rgb(100,200,120)}.services-form .checkbox-item label{margin:0;cursor:pointer;color:var(--flag-navy);font-size:.9rem;line-height:1.2}.services-form .submit-btn{margin-top:.5rem;margin-right:.5rem}@media (max-width: 560px){.services-form .form-row .form-group{flex:1 1 100%}}.services-modal,.accommodations-modal,.activities-modal,.attractions-modal,.images-modal{align-items:flex-start;justify-content:center;padding:2.5vh 0;box-sizing:border-box}.services-modal-content,.accommodations-modal-content,.activities-modal-content,.attractions-modal-content,.images-modal-content{max-height:85vh;overflow-y:auto;margin:0 auto}.services-form .form-group,.accommodations-form .form-group,.activities-form .form-group{margin-bottom:.6rem}.services-form .form-row,.accommodations-form .form-row,.activities-form .form-row{gap:.75rem;margin-bottom:.6rem}.services-form label,.accommodations-form label,.activities-form label{margin-bottom:.25rem;font-size:.85rem}.services-form input,.services-form select,.services-form textarea,.accommodations-form input,.accommodations-form select,.accommodations-form textarea,.activities-form input,.activities-form select,.activities-form textarea{padding:.5rem;font-size:.9rem}.services-form textarea,.accommodations-form textarea,.activities-form textarea{min-height:70px}.services-form h3,.accommodations-modal-content h3,.activities-modal-content h3,.services-modal-content h3{margin:.9rem 0 .6rem;padding-top:.6rem;font-size:1.05rem}.services-form-section,.accommodations-form-section,.activities-form-section{margin-bottom:.5rem;padding-bottom:.5rem}.accommodations-edit-status,.activities-edit-status,.attractions-edit-status,.events-edit-status,.cruises-edit-status,.bus-tours-edit-status,.services-edit-status,.communities-edit-status,.organizations-edit-status,.facilities-edit-status,.contacts-edit-status,.users-edit-status{margin-bottom:.75rem;padding:.65rem .8rem;color:#0d3351;background:#ffd60a33;border-left:4px solid #d8a600;font-size:.9rem;font-weight:700}.accommodations-form-actions,.activities-form-actions,.attractions-form-actions,.events-form-actions,.cruises-form-actions,.bus-tours-form-actions,.services-form-actions,.communities-form-actions,.organizations-form-actions,.facilities-form-actions,.contacts-form-actions,.users-form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:.75rem}#contact-province-state-other{margin-top:.5rem}#contact-organizations{min-height:7rem}#contact-organizations-help{display:block;margin-top:.25rem;color:#4b5563;font-size:.8rem}.contact-validation-summary{margin-top:.75rem;padding:.65rem .8rem;color:#7a271a;background:#fef3f2;border-left:4px solid #d92d20;font-size:.875rem;line-height:1.45}.contact-validation-summary[hidden]{display:none}.form-validation-summary{margin-top:.75rem;padding:.65rem .8rem;color:#7a271a;background:#fef3f2;border-left:4px solid #d92d20;font-size:.875rem;line-height:1.45}.event-organization-error[hidden]{display:none}.events-form .form-row.event-notes-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.75rem}.events-form .event-notes-row .form-group{min-width:0}.events-form .form-row.event-summary-description-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.75rem}.events-form .event-summary-description-row .form-group{min-width:0}body.admin-page :is(#events-modal,#cruises-modal,#bus-tours-modal,#marine-vessels-modal,#attractions-modal,#contacts-modal) .attractions-modal-content h2{margin-bottom:1rem;font-size:1.35rem}@media (max-width: 600px){.events-form .form-row.event-notes-row,.events-form .form-row.event-summary-description-row{grid-template-columns:minmax(0,1fr)}}.bus-tours-form .form-row.bus-tour-schedule-row{display:grid;grid-template-columns:9.5rem 7.5rem 9.5rem 7.5rem 9rem;gap:.75rem;max-width:40rem}.bus-tours-form .bus-tour-schedule-row .form-group{flex:none;min-width:0;width:auto}.bus-tours-form .form-row.bus-tour-financial-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;max-width:38rem}.bus-tours-form .bus-tour-financial-row .form-group{flex:none;min-width:0;width:auto}.bus-tours-form .form-row.bus-tour-vehicle-row{display:grid;grid-template-columns:7rem 9rem 10rem minmax(10rem,1fr);gap:.75rem;max-width:38rem}.bus-tours-form .bus-tour-vehicle-row .form-group{flex:none;min-width:0;width:auto}.bus-tours-form .bus-tour-vehicle-row .form-group:has(#bus-tour-accessible-bus){align-self:end}.bus-tours-form .form-row.bus-tour-location-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;max-width:38rem}.bus-tours-form .bus-tour-location-row .form-group{flex:none;min-width:0;width:auto}.bus-tours-form .form-row.bus-tour-notes-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.75rem}.bus-tours-form .bus-tour-notes-row .form-group{min-width:0}.cruises-form .form-row.cruise-schedule-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;max-width:42rem}.cruises-form .cruise-schedule-row .form-group{flex:none;min-width:0;width:auto}.cruises-form .form-row.cruise-capacity-row{display:grid;grid-template-columns:8rem 10rem 11rem 8rem;gap:.75rem;max-width:40rem}.cruises-form .cruise-capacity-row .form-group{flex:none;min-width:0;width:auto}.cruises-form .form-row.cruise-notes-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.75rem}.cruises-form .cruise-notes-row .form-group{min-width:0}.cruises-form .form-row.cruise-emergency-contact-row{display:grid;grid-template-columns:minmax(12rem,1.2fr) minmax(8rem,.8fr) minmax(12rem,1fr);gap:.75rem;max-width:40rem}.cruises-form .cruise-emergency-contact-row .form-group{flex:none;min-width:0;width:auto}@media (max-width: 600px){.bus-tours-form .form-row.bus-tour-schedule-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);max-width:100%}.bus-tours-form .bus-tour-schedule-row .form-group{width:auto}.bus-tours-form .form-row.bus-tour-financial-row{grid-template-columns:repeat(2,minmax(0,1fr));max-width:100%}.bus-tours-form .bus-tour-financial-row .form-group{width:auto}.bus-tours-form .form-row.bus-tour-vehicle-row{grid-template-columns:repeat(2,minmax(0,1fr));max-width:100%}.bus-tours-form .bus-tour-vehicle-row .form-group{width:auto}.bus-tours-form .form-row.bus-tour-location-row{grid-template-columns:repeat(2,minmax(0,1fr));max-width:100%}.bus-tours-form .bus-tour-location-row .form-group{width:auto}.bus-tours-form .form-row.bus-tour-notes-row{grid-template-columns:minmax(0,1fr)}.cruises-form .form-row.cruise-schedule-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);max-width:100%}.cruises-form .cruise-schedule-row .form-group{width:auto}.cruises-form .form-row.cruise-capacity-row{grid-template-columns:repeat(2,minmax(0,1fr));max-width:100%}.cruises-form .cruise-capacity-row .form-group{width:auto}.cruises-form .form-row.cruise-notes-row{grid-template-columns:minmax(0,1fr)}.cruises-form .form-row.cruise-emergency-contact-row{grid-template-columns:minmax(0,1fr);max-width:100%}.cruises-form .cruise-emergency-contact-row .form-group{width:auto}}.event-organization-error{margin:0 1.25rem .75rem;padding:.7rem .85rem;color:#7a271a;background:#fef3f2;border-left:4px solid #d92d20;font-size:.875rem;line-height:1.45}.event-organization-error[hidden],.form-validation-summary[hidden]{display:none}.field-character-count{display:block;margin-top:.25rem;color:#4b5563;font-size:.8rem;text-align:right}.activities-form .form-row.community-location-row{display:grid!important;grid-template-columns:1.25fr 1fr .9fr 1fr;gap:.65rem}.activities-form .form-row.community-location-row label{white-space:nowrap}@media (max-width: 720px){.activities-form .form-row.community-location-row{grid-template-columns:1fr}.activities-form .form-row.community-location-row label{white-space:normal}}.accommodations-form-actions>button,.activities-form-actions>button,.attractions-form-actions>button,.events-form-actions>button,.cruises-form-actions>button,.bus-tours-form-actions>button,.services-form-actions>button,.communities-form-actions>button,.organizations-form-actions>button,.facilities-form-actions>button,.contacts-form-actions>button,.users-form-actions>button{flex:1 1 11rem;min-height:2.75rem;margin:0;padding:.6rem 1rem;font-family:inherit;font-size:1rem;font-weight:600;line-height:1.2}.accommodations-form .accommodations-cancel-edit-btn,.activities-form .activities-cancel-edit-btn,.attractions-form .attractions-cancel-edit-btn,.attractions-form .events-cancel-edit-btn,.attractions-form .cruises-cancel-edit-btn,.attractions-form .bus-tours-cancel-edit-btn,.services-form .services-cancel-edit-btn,.communities-form .communities-cancel-edit-btn,.organizations-form .organizations-cancel-edit-btn,.facilities-form .facilities-cancel-edit-btn,.attractions-form .contacts-cancel-edit-btn,.users-form .users-cancel-edit-btn{color:#fff;background:#b42318;border:1px solid #8f1c14;border-radius:6px;cursor:pointer}.accommodations-form .accommodations-cancel-edit-btn:hover,.activities-form .activities-cancel-edit-btn:hover,.attractions-form .attractions-cancel-edit-btn:hover,.attractions-form .events-cancel-edit-btn:hover,.attractions-form .cruises-cancel-edit-btn:hover,.attractions-form .bus-tours-cancel-edit-btn:hover,.services-form .services-cancel-edit-btn:hover,.communities-form .communities-cancel-edit-btn:hover,.organizations-form .organizations-cancel-edit-btn:hover,.facilities-form .facilities-cancel-edit-btn:hover,.attractions-form .contacts-cancel-edit-btn:hover,.users-form .users-cancel-edit-btn:hover{background:#8f1c14}.communities-form-section,.facilities-form-section,.organizations-form-section,.users-form-section{margin-bottom:.5rem;padding-bottom:.5rem}.activities-list-section,.services-list-section,.accommodations-list-section,.communities-list-section,.facilities-list-section,.organizations-list-section,.users-list-section{margin-top:.5rem}.activities-list-section h3,.services-list-section h3,.accommodations-list-section h3,.attractions-list-section h3,.communities-list-section h3,.facilities-list-section h3,.organizations-list-section h3,.users-list-section h3{margin:.9rem 0 .6rem;padding-top:.6rem;color:var(--flag-navy);font-family:Cinzel,serif;font-size:1.05rem;border-top:1px solid rgba(13,51,81,.14)}.users-form-section{margin-bottom:.125rem;padding-bottom:.25rem}.users-list-section{margin-top:.125rem}.services-list-section{margin-top:.25rem}.services-modal-content,.accommodations-modal-content,.activities-modal-content{padding:1.25rem!important}.services-modal-content h2,.accommodations-modal-content h2,.activities-modal-content h2{margin:0 0 1rem;font-size:1.35rem}.image-upload-section{flex-wrap:nowrap}@media (max-width: 560px){.image-upload-section{flex-wrap:wrap}}.field-invalid,input.field-invalid{border-color:#e05a5a!important;color:#ffb3b3!important}.field-valid,input.field-valid{border-color:#4caf50!important;color:#bff0c2!important}.attractions-modal,.images-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:2000;overflow-y:auto}.attractions-modal.active,.images-modal.active{display:flex}.attractions-modal-content,.images-modal-content{background:linear-gradient(135deg,#f7fafcfa,#dfeef7f5);border:1px solid rgba(13,51,81,.18);border-radius:8px;padding:1.25rem;width:92%;max-width:820px;position:relative;color:var(--flag-ink)}.attractions-modal-content h2,.images-modal-content h2{color:var(--flag-navy);margin:0 0 1rem;font-family:Cinzel,serif;font-size:1.35rem}.attractions-modal-content h3,.images-modal-content h3{color:var(--flag-navy);margin:.9rem 0 .6rem;padding-top:.6rem;font-size:1.05rem;font-family:Cinzel,serif;border-top:1px solid rgba(13,51,81,.14)}.attractions-form .form-group{margin-bottom:.6rem}.attractions-form .form-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:.6rem}.attractions-form .form-row .form-group{flex:1 1 200px;min-width:0;margin-bottom:0}.attractions-form .form-row.contact-organizations-notes-row .form-group{flex:1 1 220px}.attractions-form label{display:block;color:var(--flag-navy);margin-bottom:.25rem;font-size:.85rem}.attractions-form input,.attractions-form select,.attractions-form textarea{width:100%;padding:.5rem;background:#fffc;border:1px solid rgba(13,51,81,.25);border-radius:4px;color:var(--flag-ink);font-size:.9rem;font-family:inherit;box-sizing:border-box}.attractions-form textarea{resize:vertical;min-height:70px}.attractions-form input::placeholder,.attractions-form textarea::placeholder{color:#0d33518c}.attractions-form input:focus,.attractions-form select:focus,.attractions-form textarea:focus{outline:none;border-color:#64c878;box-shadow:0 0 0 2px #64c8781f}.attractions-form .checkbox-row,.accommodations-form .checkbox-row,.facilities-form .checkbox-row{display:flex;flex-wrap:wrap;gap:.6rem .75rem;margin-bottom:.75rem}.attractions-form .checkbox-item,.accommodations-form .checkbox-item,.activities-form .checkbox-item,.facilities-form .checkbox-item{display:flex;align-items:center;gap:.5rem;flex:1 1 160px;min-width:150px;padding:.5rem .6rem;background:#ffffff0d;border:1px solid rgba(100,200,120,.25);border-radius:4px}.attractions-form .checkbox-item input[type=checkbox],.accommodations-form .checkbox-item input[type=checkbox],.activities-form .checkbox-item input[type=checkbox],.facilities-form .checkbox-item input[type=checkbox]{width:1rem;height:1rem;margin:0;cursor:pointer;accent-color:rgb(100,200,120)}.attractions-form .checkbox-item label,.accommodations-form .checkbox-item label,.activities-form .checkbox-item label{margin:0;cursor:pointer;color:var(--flag-navy);font-size:.9rem}#activity-min-participants,#activity-max-participants,#activity-cost-per-person,#activity-min-age{padding:.35rem .5rem;font-size:.82rem;line-height:1.2;min-height:2rem}.activities-form .form-row .form-group.compact-field{flex:0 0 210px;max-width:240px}.activities-form .form-row.activity-metrics-row{display:flex;flex-wrap:wrap;gap:.75rem}.activities-form .form-row.activity-metrics-row .form-group.compact-field{flex:1 1 10rem;max-width:none}.accommodations-form input,.accommodations-form select,.accommodations-form textarea{box-sizing:border-box;min-width:0}.accommodations-form .form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.accommodations-form .form-row.accommodations-capacity-row,.accommodations-form .form-row.accommodations-rates-row{grid-template-columns:repeat(3,minmax(0,1fr))}.accommodations-form .accommodations-rates-row input[type=number]{width:min(100%,9rem);padding:.4rem .5rem}.accommodations-form .form-group{min-width:0;margin-bottom:.35rem}.accommodations-form .form-row,.accommodations-form .checkbox-row{margin-bottom:.35rem}.accommodations-form h3{margin-top:.4rem;margin-bottom:.4rem}.accommodations-form label{margin-bottom:.2rem}.accommodations-form input[type=number]{width:min(100%,11rem)}@media (max-width: 768px){.activities-form .form-row .form-group.compact-field{flex:1 1 100%;max-width:none}.accommodations-form .form-row.accommodations-capacity-row{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr))}.accommodations-form .form-row.accommodations-rates-row{grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr))}}#accommodations-add-btn,#activity-add-btn,#attraction-add-btn,#bus-tour-add-btn,#community-add-btn,#contact-add-btn,#cruise-add-btn,#event-add-btn,#facility-add-btn,#org-add-btn,#service-add-btn,#user-add-btn{margin:0;padding:.75rem;background:#198754;border:1px solid #198754;border-radius:4px;color:#fff;font-size:1rem;font-weight:600}#accommodations-add-btn:hover,#activity-add-btn:hover,#attraction-add-btn:hover,#bus-tour-add-btn:hover,#community-add-btn:hover,#contact-add-btn:hover,#cruise-add-btn:hover,#event-add-btn:hover,#facility-add-btn:hover,#org-add-btn:hover,#service-add-btn:hover,#user-add-btn:hover{background:#157347;border-color:#146c43}button.submit-btn[id$=-save-changes-btn]{background:#198754;border-color:#198754;color:#fff}button.submit-btn[id$=-save-changes-btn]:not(:disabled):hover{background:#157347;border-color:#146c43}.attractions-list-section{margin-top:1.25rem}.attractions-list-section h3{color:var(--flag-navy)}#marine-vessels-modal :is(label,h2,h3,p,.image-name-field label,.image-upload-status){color:var(--flag-navy)}#marine-vessels-modal .event-item{align-items:center;gap:.75rem}#marine-vessels-modal .event-name,#marine-vessels-modal .event-details{color:var(--flag-navy)}.attractions-list{max-height:300px;overflow-y:auto}.attraction-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;margin-bottom:.5rem;background:#ffffff0d;border:1px solid rgba(100,200,120,.3);border-radius:4px}.attraction-thumb{width:64px;height:64px;flex-shrink:0;object-fit:cover;border-radius:4px;background:#ffffff1a}.organization-item .attraction-thumb{object-fit:contain;margin-right:.75rem}.attraction-info{flex:1;min-width:0}.attraction-name{color:var(--flag-navy);font-weight:600;margin-bottom:.25rem}.attraction-details{color:var(--flag-ink);font-size:.85rem}.attraction-buttons{display:flex;gap:.5rem}.edit-attraction-btn{padding:.4rem .75rem;background:#22558be6;color:#fff;border:1px solid rgba(100,150,220,.6);border-radius:4px;font-size:.85rem;cursor:pointer;transition:all .2s}.edit-attraction-btn:hover{background:#326eb4e6;border-color:#6496dc}.delete-attraction-btn{padding:.4rem .75rem;background:#8b2222e6;color:#fff;border:1px solid rgba(220,100,100,.6);border-radius:4px;font-size:.85rem;cursor:pointer;transition:all .2s}.delete-attraction-btn:hover{background:#b43232e6;border-color:#dc6464}.accommodation-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;margin-bottom:.5rem;background:#ffffff0d;border:1px solid rgba(100,200,120,.3);border-radius:4px}.accommodation-thumb{width:64px;height:64px;flex-shrink:0;object-fit:cover;border-radius:4px;background:#ffffff1a}.accommodation-info{flex:1;min-width:0}.accommodation-name{color:var(--flag-navy);font-weight:700;margin-bottom:.25rem}.accommodation-details{color:var(--flag-ink);font-weight:400;font-size:.85rem}.event-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;margin-bottom:.5rem;background:#ffffff0d;border:1px solid rgba(100,200,120,.3);border-radius:4px}#events-modal .events-list-column-headings,#events-modal #events-list .event-item{display:grid;grid-template-columns:64px minmax(0,1fr) 11rem 8.5rem;align-items:center;gap:.75rem}#events-modal .events-list-column-headings{position:sticky;top:0;z-index:1;padding:.45rem .75rem;border:1px solid transparent;background:var(--flag-white, #fff);color:var(--flag-navy);font-size:.82rem;font-weight:700}#events-modal .events-list-scroll{scrollbar-gutter:stable}#events-modal #events-list .event-buttons{justify-content:center;white-space:nowrap}#events-modal .events-list-event-heading{grid-column:1 / 3}#events-modal .events-list-column-headings span:nth-child(2),#events-modal .events-list-column-headings span:nth-child(3){text-align:center}#events-modal .event-thumb-placeholder{display:block}#events-modal .event-intro-popup-column{display:flex;justify-content:center}#events-modal .event-intro-popup-column input{width:1.1rem;height:1.1rem;cursor:pointer}#events-modal .event-intro-popup-column input:disabled{cursor:not-allowed}#events-modal .event-intro-popup-column input:focus-visible{outline:2px solid var(--flag-sky);outline-offset:2px}@media (max-width: 600px){#events-modal .events-list-column-headings,#events-modal #events-list .event-item{grid-template-columns:48px minmax(0,1fr) 7rem;gap:.4rem}#events-modal .events-list-column-headings span:nth-child(3){display:none}#events-modal #events-list .event-thumb{width:48px;height:48px}#events-modal #events-list .event-buttons{grid-column:2 / 4;justify-content:flex-end}}:is(#bus-tours-modal,#cruises-modal) .event-item-pending{background:#fff4cc;border-color:#d6b656}#cruises-modal .event-item-cancelled{background:#f8d7da;border-color:#e0a3a9}:is(#bus-tours-modal,#cruises-modal) .event-item-active{background:#c8ddc8;border-color:#6b936b}.event-thumb{width:64px;height:64px;flex-shrink:0;object-fit:cover;border-radius:4px;background:#ffffff1a}.contact-profile-thumb{width:44px;height:44px;flex:0 0 44px;object-fit:cover;border:1px solid rgba(13,51,81,.18);border-radius:50%;background:#ffffffa6}.contact-profile-preview{width:96px;height:96px;margin-top:.5rem;object-fit:cover;border:1px solid rgba(13,51,81,.18);border-radius:4px}.event-info{flex:1;min-width:0}.event-name{color:var(--flag-navy);font-weight:700;margin-bottom:.25rem}#events-modal .event-name,#cruises-modal .event-name,#bus-tours-modal .event-name{font-size:.98rem;line-height:1.25}.event-details{color:var(--flag-ink);font-weight:400;font-size:.85rem}.event-buttons{display:flex;gap:.5rem}.edit-event-btn{padding:.4rem .75rem;background:#22558be6;color:#fff;border:1px solid rgba(100,150,220,.6);border-radius:4px;font-size:.85rem;cursor:pointer;transition:all .2s}.edit-event-btn:hover{background:#326eb4e6;border-color:#6496dc}.delete-event-btn{padding:.4rem .75rem;background:#8b2222e6;color:#fff;border:1px solid rgba(220,100,100,.6);border-radius:4px;font-size:.85rem;cursor:pointer;transition:all .2s}.delete-event-btn:hover{background:#b43232e6;border-color:#dc6464}.images-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem}.images-toolbar label{color:var(--flag-navy);font-size:.9rem}.images-toolbar select{padding:.5rem;border-radius:4px;color:var(--flag-ink);background:#ffffffd9;border:1px solid rgba(13,51,81,.25)}.images-modal-content,.images-modal-content p,.images-modal-content label,.images-modal-content .images-status,.images-modal-content .image-upload-status,.images-modal-content .loading-message,.images-modal-content .no-items-message{color:var(--flag-ink)}#facilities-modal .facilities-modal-content{background:linear-gradient(135deg,#f7fafcfa,#dfeef7f5);border-color:#0d33512e}#communities-modal .communities-modal-content,#organizations-modal .organizations-modal-content,#facilities-modal .facilities-modal-content,#contacts-modal .attractions-modal-content,#users-modal .users-modal-content{color:var(--flag-ink)}#communities-modal :is(h2,h3,label,.community-name),#organizations-modal :is(h2,h3,label,.organization-name),#facilities-modal :is(h2,h3,label,.facility-name),#contacts-modal :is(h2,h3,label,.event-name),#users-modal :is(h2,h3,label,.user-name){color:var(--flag-navy)!important}#communities-modal .community-name,#organizations-modal .organization-name,#facilities-modal .facility-name,#contacts-modal .event-name{font-size:.98rem;line-height:1.25}#communities-modal :is(.community-details,.loading-message,.no-communities-message),#organizations-modal :is(.organization-details,.loading-message,.no-organizations-message,.validation-hint,.contact-display),#facilities-modal :is(.facility-details,.loading-message,.no-facilities-message),#contacts-modal :is(.event-details,.loading-message,.no-items-message),#users-modal :is(.user-details,.loading-message,.no-users-message){color:var(--flag-ink)!important}#facility-organization-search{color:var(--flag-navy)!important}#facilities-modal .facilities-form :is(input,select,textarea){background:#fff!important;color:var(--flag-ink)!important}#facilities-modal .facilities-form :is(input,select)::placeholder{color:#102333a6!important}#facilities-modal .facilities-form .checkbox-item label{color:var(--flag-ink)!important}:is(.activities-modal,.services-modal,.attractions-modal,.accommodations-modal,.communities-modal,.organizations-modal,.facilities-modal,.users-modal,.images-modal) :is(.no-items-message,.no-activities-message,.no-services-message,.no-communities-message,.no-organizations-message,.no-facilities-message,.no-users-message){color:var(--flag-navy)!important}#users-modal .users-form :is(input,select,textarea){background:#fff!important;color:var(--flag-ink)!important}#users-modal .users-form :is(input,textarea)::placeholder{color:#102333a6!important}#users-modal .password-input-wrapper{position:relative;width:100%}#users-modal .password-input-wrapper input{box-sizing:border-box;padding-right:3rem}#users-modal .password-visibility-toggle{position:absolute;top:50%;right:.5rem;display:inline-flex;width:2rem;height:2rem;padding:0;align-items:center;justify-content:center;transform:translateY(-50%);background:transparent;border:0;color:var(--flag-navy);cursor:pointer}#users-modal .password-visibility-toggle svg{width:1.15rem;height:1.15rem}#user-cancel-edit-btn{margin-left:.5rem;padding:.75rem;background:#fff;border:1px solid var(--flag-navy);border-radius:4px;color:var(--flag-navy);font-size:1rem;font-weight:600;cursor:pointer}#user-cancel-edit-btn:hover{background:#e8eef3}#facility-name{max-width:480px;box-sizing:border-box;background:#fff!important;color:var(--flag-ink)!important}#facility-name::placeholder{color:#102333a6!important}.image-name-field{display:flex;flex-direction:column;gap:.25rem;min-width:180px}.image-name-field label{color:var(--flag-navy);font-size:.82rem;font-weight:600}.image-name-field input,.image-tile-name-input{box-sizing:border-box;width:100%;padding:.5rem;color:var(--flag-ink);background:#ffffffe0;border:1px solid rgba(13,51,81,.25);border-radius:4px}.selected-image-preview{width:140px;height:100px;margin-top:.6rem;overflow:hidden;background:#ffffffb3;border:1px solid rgba(13,51,81,.2);border-radius:6px}.selected-image-preview img{display:block;width:100%;height:100%;object-fit:cover}.image-choice-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:.55rem;max-height:190px;margin-top:.65rem;padding:.55rem;overflow-y:auto;background:#ffffff85;border:1px solid rgba(13,51,81,.14);border-radius:6px}.image-choice-grid:empty{display:none}.image-choice{display:grid;grid-template-rows:64px auto;gap:.35rem;min-width:0;padding:.35rem;color:var(--flag-ink);text-align:left;background:#ffffffdb;border:2px solid transparent;border-radius:6px;cursor:pointer}.image-choice:hover,.image-choice.selected{border-color:var(--flag-green)}.image-choice img{width:100%;height:64px;object-fit:cover;border-radius:4px}.image-choice span{overflow:hidden;font-size:.72rem;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.images-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;max-height:55vh;overflow-y:auto}.image-tile{position:relative;border:1px solid rgba(100,200,120,.3);border-radius:6px;overflow:hidden;background:#ffffff0d}.image-tile img{width:100%;height:110px;object-fit:cover;display:block}.image-tile-controls{display:grid;gap:.4rem;padding:.5rem}.image-tile-controls label{display:grid;gap:.25rem;color:var(--flag-navy);font-size:.72rem;font-weight:600}.image-rename-btn{padding:.4rem .6rem;color:#fff;background:var(--flag-blue);border:1px solid var(--flag-navy);border-radius:4px;cursor:pointer}.image-rename-btn:hover:not(:disabled){background:var(--flag-navy)}.image-rename-btn:disabled{opacity:.55;cursor:wait}.image-tile .image-delete-btn{position:absolute;top:.35rem;right:.35rem;padding:.25rem .5rem;background:#8b2222e6;color:#fff;border:1px solid rgba(220,100,100,.6);border-radius:4px;font-size:.75rem;cursor:pointer}.image-tile .image-delete-btn:hover{background:#b43232f2}.images-status{color:#fffc;font-size:.85rem;margin-top:.5rem}#bus-tours-modal .attractions-form fieldset{border:1px solid rgba(100,200,120,.3);border-radius:4px;padding:1rem;margin-bottom:1.25rem;background:#ffffff7a}#bus-tours-modal .attractions-form legend{color:var(--flag-navy);font-weight:600;font-size:1rem;padding:0 .5rem;margin-left:-.5rem}.attractions-form label input[type=checkbox]{vertical-align:middle;margin-right:.4rem;margin-top:0;height:1rem;width:1rem;flex-shrink:0}:is(#login-modal,#activities-modal,#accommodations-modal,#services-modal,#attractions-modal,#events-modal,#contacts-modal,#cruises-modal,#bus-tours-modal,#marine-vessels-modal,#facilities-modal,#organizations-modal,#communities-modal,#users-modal) form :is(input,select,textarea):required:invalid:not([type=checkbox]):not([type=radio]){background:#bfdbfe!important}:is(#login-modal,#activities-modal,#accommodations-modal,#services-modal,#attractions-modal,#events-modal,#contacts-modal,#cruises-modal,#bus-tours-modal,#marine-vessels-modal,#facilities-modal,#organizations-modal,#communities-modal,#users-modal) form :is(input,select,textarea):required:valid:not([type=checkbox]):not([type=radio]){background:#bfdbfe!important}#contacts-modal form :is(input,select,textarea):not(:required):not([type=checkbox]):not([type=radio]){background:#fff!important}#bus-tours-form :is(input,select,textarea):not(:required):not([type=checkbox]):not([type=radio]){background:#fff!important}#bus-tours-form input:autofill,#bus-tours-form input:-webkit-autofill{-webkit-text-fill-color:var(--flag-ink);box-shadow:0 0 0 1000px #fff inset!important}#bus-tours-form input:required:autofill,#bus-tours-form input:required:-webkit-autofill{box-shadow:0 0 0 1000px #bfdbfe inset!important}#subscriber-form :is(input,textarea)::placeholder{color:#334155;opacity:1}#cruises-form input[type=datetime-local][readonly]{background:#e5e7eb!important;color:#4b5563;cursor:not-allowed}:root{--flag-navy: #0d3351;--flag-blue: #1f5d88;--flag-red: #d94a4a;--flag-red-deep: #b62d2d;--flag-sky: #dfeef7;--flag-ice: #f7fafc;--flag-ink: #102333}.site-footer[data-astro-cid-sckkx6r4]{text-align:center;padding:1rem;font-size:.85rem;color:var(--flag-ice);background:linear-gradient(135deg,var(--flag-navy),var(--flag-blue))}.post-load-popup-overlay[data-astro-cid-sckkx6r4]{position:fixed;inset:0;width:100%;height:100vh;height:100dvh;background:#081d2d94;backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:1rem}.post-load-popup[data-astro-cid-sckkx6r4]{position:relative;background:linear-gradient(135deg,#e8f3f8fa,#d2e8f2f5),radial-gradient(circle at 20% 20%,rgba(255,255,255,.55),transparent 28%),repeating-linear-gradient(135deg,rgba(255,255,255,.1) 0,rgba(255,255,255,.1) 2px,transparent 2px,transparent 8px);background-blend-mode:overlay,screen,normal;color:var(--flag-ink);width:94%;max-width:520px;max-height:calc(100vh - 2rem);overflow-y:auto;border:2px solid rgba(13,51,81,.9);border-radius:16px;padding:1.5rem;box-shadow:0 20px 40px #0d335124}.post-load-popup[data-astro-cid-sckkx6r4] h2[data-astro-cid-sckkx6r4]{margin-top:0;color:var(--flag-navy)}.post-load-popup[data-astro-cid-sckkx6r4] .form-group[data-astro-cid-sckkx6r4]{margin-bottom:.75rem}.post-load-popup[data-astro-cid-sckkx6r4] .form-row[data-astro-cid-sckkx6r4]{display:flex;gap:.75rem}.post-load-popup[data-astro-cid-sckkx6r4] .form-row[data-astro-cid-sckkx6r4] .form-group[data-astro-cid-sckkx6r4]{flex:1}.post-load-popup[data-astro-cid-sckkx6r4] label[data-astro-cid-sckkx6r4]{display:block;margin-bottom:.25rem;font-size:.9rem;color:var(--flag-navy)}.post-load-popup[data-astro-cid-sckkx6r4] input[data-astro-cid-sckkx6r4][type=text],.post-load-popup[data-astro-cid-sckkx6r4] input[data-astro-cid-sckkx6r4][type=email],.post-load-popup[data-astro-cid-sckkx6r4] select[data-astro-cid-sckkx6r4]{width:100%;padding:.5rem;border-radius:4px;border:1px solid rgba(13,51,81,.2);background:#fff;color:var(--flag-ink);box-sizing:border-box}.post-load-popup[data-astro-cid-sckkx6r4] select[data-astro-cid-sckkx6r4] option[data-astro-cid-sckkx6r4]{color:#000}.post-load-popup[data-astro-cid-sckkx6r4] .subscriber-consent[data-astro-cid-sckkx6r4]{display:flex;align-items:flex-start;gap:.5rem;margin:.75rem 0}.post-load-popup[data-astro-cid-sckkx6r4] .subscriber-consent[data-astro-cid-sckkx6r4] label[data-astro-cid-sckkx6r4]{margin:0;font-size:.85rem;color:var(--flag-ink)}.subscriber-turnstile[data-astro-cid-sckkx6r4]{margin:.75rem 0}.subscriber-success[data-astro-cid-sckkx6r4][hidden],.subscriber-reopen-tab[data-astro-cid-sckkx6r4][hidden]{display:none}.subscriber-success[data-astro-cid-sckkx6r4]{text-align:center;padding:1rem .25rem .25rem}.subscriber-reopen-tab[data-astro-cid-sckkx6r4]{position:fixed;top:0;left:0;z-index:1500;padding:.55rem .85rem;color:#fff;background:var(--flag-navy);border:1px solid rgba(255,255,255,.8);border-left:0;border-radius:0 6px 6px 0;font-weight:700;cursor:pointer;box-shadow:0 8px 20px #0d335138}.subscriber-reopen-tab[data-astro-cid-sckkx6r4]:hover{background:var(--flag-blue)}.post-load-popup[data-astro-cid-sckkx6r4] .submit-btn[data-astro-cid-sckkx6r4]{display:inline-block;margin-top:.5rem;padding:.6rem 1rem;background:#198754;color:#fff;border:1px solid #198754;border-radius:4px;font-weight:600;cursor:pointer;text-decoration:none}.post-load-popup[data-astro-cid-sckkx6r4] .submit-btn[data-astro-cid-sckkx6r4]:hover{background:#157347;border-color:#146c43}.post-load-popup[data-astro-cid-sckkx6r4] .close-btn[data-astro-cid-sckkx6r4]{position:absolute;top:.5rem;right:.75rem;background:none;border:none;color:var(--flag-navy);font-size:1.5rem;cursor:pointer}.post-load-popup[data-astro-cid-sckkx6r4].subscriber-popup{width:100%;max-width:580px;max-height:calc(100dvh - 2rem);padding:0;border:1px solid rgba(255,255,255,.45);border-radius:20px;background:#fff;box-shadow:0 24px 80px #05182659}.subscriber-hero[data-astro-cid-sckkx6r4]{position:relative;overflow:hidden;padding:2rem 2rem 1.5rem;background:var(--flag-navy)}.subscriber-hero[data-astro-cid-sckkx6r4]:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#072031eb,#07203161)}.subscriber-hero-image[data-astro-cid-sckkx6r4]{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 45%}.subscriber-hero-copy[data-astro-cid-sckkx6r4]{position:relative;z-index:1}.subscriber-eyebrow[data-astro-cid-sckkx6r4]{color:#dcecf0;font-size:.7rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.subscriber-popup[data-astro-cid-sckkx6r4] .subscriber-hero[data-astro-cid-sckkx6r4] h2[data-astro-cid-sckkx6r4]{margin:.5rem 0 .6rem;color:#fff;font-size:clamp(1.8rem,5vw,2.3rem);font-weight:750;line-height:1.1;letter-spacing:-.04em}.subscriber-hero[data-astro-cid-sckkx6r4] p[data-astro-cid-sckkx6r4]{margin:0;color:#e2edf3;font-size:.9rem;line-height:1.6}.subscriber-popup[data-astro-cid-sckkx6r4] #subscriber-form[data-astro-cid-sckkx6r4],.subscriber-popup[data-astro-cid-sckkx6r4] .subscriber-success[data-astro-cid-sckkx6r4]{padding:1.5rem 2rem .85rem}.subscriber-form-intro[data-astro-cid-sckkx6r4]{margin:0 0 .75rem;color:#43596a;font-size:.9rem;line-height:1.6}.subscriber-required-note[data-astro-cid-sckkx6r4]{margin:0 0 1rem;color:#526778;font-size:.72rem}.subscriber-popup[data-astro-cid-sckkx6r4] .form-group[data-astro-cid-sckkx6r4]{min-width:0;margin-bottom:.85rem}.subscriber-popup[data-astro-cid-sckkx6r4] label[data-astro-cid-sckkx6r4]{margin-bottom:.4rem;font-size:.8rem;font-weight:650}.subscriber-optional[data-astro-cid-sckkx6r4]{color:#627482;font-size:.7rem;font-weight:400}.subscriber-popup[data-astro-cid-sckkx6r4] input[data-astro-cid-sckkx6r4][type=text],.subscriber-popup[data-astro-cid-sckkx6r4] input[data-astro-cid-sckkx6r4][type=email],.subscriber-popup[data-astro-cid-sckkx6r4] select[data-astro-cid-sckkx6r4]{min-height:44px;padding:.7rem .8rem;border:1px solid #cad5dd;border-radius:8px;background:#fff;font:inherit;font-size:.9rem;transition:border-color .15s,box-shadow .15s}.subscriber-popup[data-astro-cid-sckkx6r4] input[data-astro-cid-sckkx6r4]:focus-visible,.subscriber-popup[data-astro-cid-sckkx6r4] select[data-astro-cid-sckkx6r4]:focus-visible{outline:2px solid var(--flag-blue);outline-offset:2px;border-color:var(--flag-blue);box-shadow:0 0 0 4px #1f5d881a}.subscriber-popup[data-astro-cid-sckkx6r4] .subscriber-consent[data-astro-cid-sckkx6r4]{gap:.65rem;padding:.85rem;margin:.2rem 0 .5rem;border:1px solid #e1e9e7;border-radius:8px;background:#f3f7f5}.subscriber-consent[data-astro-cid-sckkx6r4] input[data-astro-cid-sckkx6r4]{flex:0 0 auto;width:1rem;height:1rem;margin:.15rem 0 0;accent-color:#216148}.subscriber-popup[data-astro-cid-sckkx6r4] .subscriber-consent[data-astro-cid-sckkx6r4] label[data-astro-cid-sckkx6r4]{color:#3d564c;font-size:.76rem;font-weight:400;line-height:1.6;cursor:pointer}.subscriber-popup[data-astro-cid-sckkx6r4] .submit-btn[data-astro-cid-sckkx6r4]{display:flex;align-items:center;justify-content:center;gap:.75rem;width:100%;min-height:48px;margin:.25rem 0 0;padding:.6rem 1rem;border:1px solid #216148;border-radius:9px;background:#216148;font-size:.95rem;font-weight:700;box-shadow:0 4px 12px #21614826}.subscriber-popup[data-astro-cid-sckkx6r4] .submit-btn[data-astro-cid-sckkx6r4]:hover{background:#184b36;border-color:#184b36}.subscriber-popup[data-astro-cid-sckkx6r4] .subscriber-turnstile[data-astro-cid-sckkx6r4]{margin:.5rem 0}.subscriber-popup[data-astro-cid-sckkx6r4] .subscriber-turnstile[data-astro-cid-sckkx6r4]:empty{display:none}.subscriber-popup[data-astro-cid-sckkx6r4] .close-btn[data-astro-cid-sckkx6r4]{z-index:2;top:.75rem;right:.75rem;display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid rgba(255,255,255,.4);border-radius:50%;background:#0720318c;color:#fff;line-height:1}.subscriber-popup[data-astro-cid-sckkx6r4] .close-btn[data-astro-cid-sckkx6r4]:hover{background:var(--flag-navy)}.subscriber-popup[data-astro-cid-sckkx6r4] button[data-astro-cid-sckkx6r4]:focus-visible{outline:3px solid #81b9df;outline-offset:3px}@media (min-width: 481px) and (max-height: 800px){.subscriber-hero[data-astro-cid-sckkx6r4]{padding:1.5rem 2rem 1rem}.subscriber-popup[data-astro-cid-sckkx6r4] #subscriber-form[data-astro-cid-sckkx6r4]{padding-top:1rem}}@media (max-width: 480px){.subscriber-hero[data-astro-cid-sckkx6r4]{padding:2.75rem 1.25rem 1.5rem}.subscriber-popup[data-astro-cid-sckkx6r4] #subscriber-form[data-astro-cid-sckkx6r4],.subscriber-popup[data-astro-cid-sckkx6r4] .subscriber-success[data-astro-cid-sckkx6r4]{padding:1.25rem 1.25rem .85rem}.subscriber-popup[data-astro-cid-sckkx6r4] .form-row[data-astro-cid-sckkx6r4]{flex-direction:column;gap:0}}
