.loading-container{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;min-height:400px;width:100%}.loading-spinner{width:50px;height:50px;border:4px solid rgba(255,255,255,.1);border-top:4px solid #ffffff;border-radius:50%;animation:spin 1s linear infinite}.loading-text{margin-top:20px;color:#fff;font-size:14px;font-weight:500;opacity:.8}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fade-in{animation:fadeIn .3s ease-in}html,body{margin:0;padding:0;height:100%;font-family:Roobert,sans-serif;background-color:#000;color:#fff;width:100%;overflow:hidden}body{display:flex}:root{--primary-color: #00acdf;--secondary-color: #FFBF00;--background-color: #1A1A1A;--text-color: #FFFFFF;--highlight-color: #FFD700;--gray-color: #808080;--success-color: #28a745;--error-color: #dc3545;--body-background: black}*{scrollbar-width:thin;scrollbar-color:rgba(80,80,80,.6) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent!important;border-radius:10px}::-webkit-scrollbar-thumb{background:rgba(80,80,80,.6);border-radius:10px;border:1px solid rgba(30,30,30,.1);transition:background .3s ease}::-webkit-scrollbar-thumb:hover{background:rgba(100,100,100,.8)}::-webkit-scrollbar-corner{background:transparent}.Roobert-thin{font-family:Roobert,sans-serif;font-weight:100;font-style:normal}.Roobert-light{font-family:Roobert,sans-serif;font-weight:300;font-style:normal}.Roobert-regular{font-family:Roobert,sans-serif;font-weight:400;font-style:normal}.Roobert-medium{font-family:Roobert,sans-serif;font-weight:500;font-style:normal}.Roobert-bold{font-family:Roobert,sans-serif;font-weight:700;font-style:normal}.Roobert-black{font-family:Roobert,sans-serif;font-weight:900;font-style:normal}.Roobert-thin-italic{font-family:Roobert,sans-serif;font-weight:100;font-style:italic}.Roobert-light-italic{font-family:Roobert,sans-serif;font-weight:300;font-style:italic}.Roobert-regular-italic{font-family:Roobert,sans-serif;font-weight:400;font-style:italic}.Roobert-medium-italic{font-family:Roobert,sans-serif;font-weight:500;font-style:italic}.Roobert-bold-italic{font-family:Roobert,sans-serif;font-weight:700;font-style:italic}.Roobert-black-italic{font-family:Roobert,sans-serif;font-weight:900;font-style:italic}#fixed-sidebar{width:80px;height:calc(100vh - 40px);background-color:#1b1b1b80;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;box-shadow:0 0 15px #0000004d,0 8px 32px #0000004d,0 0 1px #ffffff1a;position:fixed;z-index:2;left:20px;top:20px;border-radius:16px;border:1px solid rgba(255,255,255,.05);transition:all .3s ease}#fixed-sidebar.expanded{border-radius:16px 0 0 16px;transition:border-radius 0s}#fixed-sidebar img{width:80%;margin-top:20px;margin-bottom:20px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}#fixed-sidebar .icon{width:40px;height:40px;margin:20px 0;cursor:pointer;transition:all .3s ease;filter:drop-shadow(0 2px 3px rgba(0,0,0,.2))}#fixed-sidebar .icon:hover{opacity:1;transform:scale(1.1);cursor:pointer}#fixed-sidebar .icon.active{opacity:1;transform:scale(1.1);filter:brightness(1.2) drop-shadow(0 0 3px rgba(255,255,255,.3))}.icon-container{width:40px;padding:10px;background-color:#323232b3;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);border-radius:25px;display:flex;flex-direction:column;align-items:center;gap:20px;margin-top:20px;box-shadow:0 4px 10px #0000004d,inset 0 0 0 1px #ffffff0d;border:1px solid rgba(255,255,255,.05)}.icon-container .icon{width:40px;height:40px;cursor:pointer;transition:transform .3s ease,filter .3s ease}.icon-container .icon:hover{transform:scale(1.1);filter:brightness(1.2)}.bottom-items{position:absolute;bottom:10px;width:100%;display:flex;flex-direction:column;align-items:center}#form-icon{margin-bottom:15px}.feedback-button{width:50px;height:200px;background-color:#00acdf26;border:2px solid var(--primary-color);border-radius:25px;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;transition:all .3s ease;padding:15px 0;margin-bottom:15px}.feedback-button:hover{background-color:#00acdf4d;transform:translateY(-2px);box-shadow:0 4px 12px #00acdf66}.feedback-button:active{transform:translateY(0);box-shadow:0 2px 6px #00acdf4d}.feedback-text{writing-mode:vertical-rl;text-orientation:upright;color:var(--text-color);font-size:12px;font-weight:600;letter-spacing:2px;-webkit-user-select:none;user-select:none}.feedback-arrow{color:var(--text-color);font-size:20px;font-weight:700;-webkit-user-select:none;user-select:none}.beta-badge{background-color:#fff;color:#000;font-size:11px;font-family:Roobert,sans-serif;font-weight:700;padding:4px 10px;border-radius:12px;text-align:center;margin:8px 0;-webkit-user-select:none;user-select:none}.version-number{color:#fff;font-size:12px;font-family:Roobert,sans-serif;opacity:.6;font-weight:500}.bottom-items:hover .version-number{opacity:.8;transition:opacity .3s ease}#expand-sidebar{width:600px;height:calc(100vh - 40px);background-color:#292929d9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);overflow-x:hidden;clip-path:inset(0 100% 0 0);transition:clip-path .5s cubic-bezier(.16,1,.3,1);position:fixed;z-index:3;color:#fff;left:100px;top:20px;border-radius:0 16px 16px 0;box-shadow:5px 0 20px #0006,0 8px 32px #0000004d,0 0 0 1px #ffffff0d;border:1px solid rgba(255,255,255,.1);border-left:none;overflow-y:auto!important;-webkit-overflow-scrolling:touch}#expand-sidebar.open{clip-path:inset(0 0 0 0);height:calc(100vh - 40px)!important;overflow-y:auto!important}#expand-sidebar .closebtn{text-decoration:none;position:sticky;top:10px;right:10px;font-size:14px;font-weight:700;cursor:pointer;background-color:#0000004d;color:#fff;padding:8px;border-radius:50%;z-index:10;line-height:1;display:flex;align-items:center;justify-content:center;width:16px;height:16px;transition:all .2s ease;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);box-shadow:0 2px 5px #0003;border:1px solid rgba(255,255,255,.1);margin-left:auto;float:right}#expand-sidebar .closebtn:hover{background-color:#ffffff26;transform:scale(1.1)}#expand-sidebar::-webkit-scrollbar{width:6px}#expand-sidebar::-webkit-scrollbar-track{background:transparent!important;border-radius:10px;margin:20px 3px 16px 0}#expand-sidebar::-webkit-scrollbar-thumb{background:rgba(80,80,80,.6);border-radius:10px;border:1px solid rgba(30,30,30,.1);transition:background .3s ease}#expand-sidebar::-webkit-scrollbar-thumb:hover{background:rgba(100,100,100,.8)}#expand-sidebar::-webkit-scrollbar-corner{background:transparent}#expand-sidebar *::-webkit-scrollbar-track,#expand-sidebar::-webkit-scrollbar-track,#sidebar-content::-webkit-scrollbar-track,#sidebar-content *::-webkit-scrollbar-track{background:transparent!important;background-color:transparent!important;background-image:none!important}#expand-sidebar,#expand-sidebar *{scrollbar-color:rgba(80,80,80,.6) transparent!important}.product-list-container::-webkit-scrollbar-track,.mammals-list-container::-webkit-scrollbar-track,.all-species-container-wrapper::-webkit-scrollbar-track,.longest-fish-container::-webkit-scrollbar-track,.search-results::-webkit-scrollbar-track{background:transparent!important;background-color:transparent!important}#sidebar-content{position:relative;min-height:100%;width:100%;padding-bottom:30px}#map{height:100%;width:100%;position:absolute;top:0;left:0;transition:transform .5s cubic-bezier(.16,1,.3,1);z-index:1}.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon,.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon,.mapboxgl-ctrl-compass-arrow .mapboxgl-ctrl-icon{filter:invert(100%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(100%) contrast(100%)}.mapboxgl-ctrl{background-color:#292929!important;border:none!important;box-shadow:none!important}.mapboxgl-ctrl button{background-color:#292929!important;color:#fff!important;border:none!important}.mapboxgl-ctrl-bottom-left{bottom:0!important;left:auto!important;right:0!important}.mapboxgl-ctrl-attrib{background-color:#00000080!important;color:#fff!important;font-size:11px!important;padding:2px 6px!important;border-radius:3px!important}.mapboxgl-ctrl-bottom-right{bottom:40px!important;right:0!important;display:flex!important;flex-direction:column!important;gap:10px!important}.mapboxgl-ctrl-group{margin:0!important}.mapboxgl-ctrl-geocoder{position:absolute!important;top:15px!important;right:15px!important;background-color:#1a1a1ae6!important;border-radius:20px!important;box-shadow:0 2px 8px #0000004d!important;width:450px!important;max-width:none!important;min-width:450px!important;height:36px!important;z-index:1000!important;transition:all .2s ease!important;border:1px solid rgba(255,255,255,.1)!important;backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important}.mapboxgl-ctrl-geocoder:hover{background-color:#1a1a1af2!important;border-color:#fff3!important}.mapboxgl-ctrl-geocoder input{height:34px!important;padding:0 80px 0 40px!important;width:calc(100% - 120px)!important;color:#fff!important;background-color:transparent!important;border:none!important;font-family:Roobert,sans-serif;font-size:14px;outline:none!important;line-height:34px!important}.mapboxgl-ctrl-geocoder input::placeholder{color:#888!important}.mapboxgl-ctrl-geocoder .mapboxgl-ctrl-geocoder--input{color:#fff!important}.mapboxgl-ctrl-geocoder .suggestions{background-color:#1a1a1af2!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:16px!important;backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important;box-shadow:0 4px 12px #0006!important;z-index:999999!important;position:absolute!important;top:calc(100% + 4px)!important;left:0!important;right:0!important;width:100%!important;list-style:none!important;padding:0!important;margin:0!important}.mapboxgl-ctrl-geocoder .suggestions>li{margin:0!important;padding:0!important;border-bottom:1px solid rgba(255,255,255,.05)!important;list-style:none!important}.mapboxgl-ctrl-geocoder .suggestions>li:last-child{border-bottom:none!important}.mapboxgl-ctrl-geocoder .suggestions>li:first-child>a{border-radius:16px 16px 0 0!important}.mapboxgl-ctrl-geocoder .suggestions>li:last-child>a{border-radius:0 0 16px 16px!important}.mapboxgl-ctrl-geocoder .suggestions>li:only-child>a{border-radius:16px!important}.mapboxgl-ctrl-geocoder .suggestions>li>a{color:#fff!important;background-color:transparent!important;padding:12px 16px!important;display:block!important;text-decoration:none!important;transition:background-color .2s ease!important;font-family:Roobert,sans-serif!important;font-size:14px!important;line-height:1.4!important}.mapboxgl-ctrl-geocoder .suggestions>.active>a,.mapboxgl-ctrl-geocoder .suggestions>li>a:hover{color:#fff!important;background-color:#ffffff1a!important}.mapboxgl-ctrl-geocoder:focus-within{background-color:#1a1a1af2!important;border-color:#ffffff4d!important;outline:none!important}.mapboxgl-ctrl-geocoder--icon-search{position:absolute!important;top:50%!important;left:12px!important;transform:translateY(-50%)!important;fill:#888!important;width:16px!important;height:16px!important}.mapboxgl-ctrl-geocoder--icon-close{margin:0!important;padding:0!important;fill:#ccc!important;width:14px!important;height:14px!important;transition:fill .2s ease!important;opacity:1!important;visibility:visible!important;display:block!important;flex-shrink:0!important}.mapboxgl-ctrl-geocoder .mapboxgl-ctrl-geocoder--button:hover .mapboxgl-ctrl-geocoder--icon-close{fill:#fff!important}.mapboxgl-ctrl-geocoder{overflow:visible!important}.mapboxgl-ctrl-geocoder .mapboxgl-ctrl-geocoder--button{background-color:transparent!important;border:none!important;cursor:pointer!important;padding:0!important;margin:0!important;border-radius:50%!important;transition:all .2s ease!important;width:20px!important;height:20px!important;display:flex!important;align-items:center!important;justify-content:center!important;position:absolute!important;right:75px!important;top:50%!important;transform:translateY(-50%)!important;z-index:25!important;opacity:1!important;visibility:visible!important}.mapboxgl-ctrl-geocoder .mapboxgl-ctrl-geocoder--button svg,.mapboxgl-ctrl-geocoder .mapboxgl-ctrl-geocoder--button .mapboxgl-ctrl-geocoder--icon-close{position:static!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;margin:0!important;padding:0!important;transform:none!important}.mapboxgl-ctrl-geocoder .mapboxgl-ctrl-geocoder--button:hover{background-color:#ffffff26!important}.mapboxgl-ctrl-geocoder .mapboxgl-ctrl-geocoder--button{right:100px!important;top:50%!important;transform:translateY(-50%)!important;padding:0!important;margin:0!important;opacity:1!important;visibility:visible!important;display:flex!important;align-items:center!important;justify-content:center!important;z-index:25!important}.stars-filled{color:#ff0}.stars-empty{color:#555}.stars-crossed-out{text-decoration:line-through;color:#555}.popup-type-badge{margin:2px;padding:2px 6px;border-radius:12px;font-size:11px;color:#fff;display:inline-block;background-color:var(--spot-type-color, #666)}.mapboxgl-ctrl-geocoder--suggestion-title{font-family:Roobert,sans-serif!important;font-weight:600!important;font-size:14px!important;color:#fff!important;margin-bottom:2px!important}.mapboxgl-ctrl-geocoder--suggestion-address{font-family:Roobert,sans-serif!important;font-weight:400!important;font-size:12px!important;color:#ffffffb3!important;opacity:.8!important}.mapboxgl-ctrl-geocoder--powered-by,.mapboxgl-ctrl-geocoder .suggestions[style*="display: none"],body.programmatic-search .mapboxgl-ctrl-geocoder .suggestions{display:none!important}.mapboxgl-ctrl-geocoder .suggestions[style*="display: none"],.mapboxgl-ctrl-geocoder .suggestions.hidden-suggestions{display:none!important;visibility:hidden!important;opacity:0!important;height:0!important;overflow:hidden!important}.reset-button{position:absolute!important;right:5px!important;top:50%!important;transform:translateY(-50%)!important;padding:4px 10px!important;background-color:var(--primary-color)!important;color:#fff!important;border:none!important;border-radius:12px!important;cursor:pointer!important;font-size:11px!important;font-family:Roobert,sans-serif!important;font-weight:700!important;z-index:20!important;height:24px!important;box-shadow:0 2px 4px #0000004d!important;margin-left:8px!important;transition:all .2s ease!important;backdrop-filter:blur(4px)!important;-webkit-backdrop-filter:blur(4px)!important;display:block!important;visibility:visible!important;opacity:1!important}.reset-button:hover{background-color:#0095c0;transform:translateY(-50%) translateY(-1px)}.reset-button:active{transform:translateY(-50%) translateY(1px)}#map-legend{position:absolute;top:22px;left:50%;transform:translate(-50%);background-color:#1a1a1ae6;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:20px;display:flex;align-items:center;gap:24px;z-index:10;border:1px solid rgba(255,255,255,.1);box-shadow:0 2px 8px #0000004d;height:38px;transition:all .2s ease;box-sizing:border-box;padding:0 20px}#map-legend:hover{background-color:#1a1a1af2;border-color:#fff3}.legend-item{display:flex;align-items:center;gap:8px}.legend-icon-stack{display:flex;align-items:center;position:relative;width:44px;height:20px}.legend-icon{width:20px;height:20px;object-fit:contain}.stacked-icon{position:absolute;width:20px;height:20px}.stacked-icon:nth-child(1){left:0;z-index:3}.stacked-icon:nth-child(2){left:12px;z-index:2}.stacked-icon:nth-child(3){left:24px;z-index:1}.legend-label{color:#fff;font-size:13px;font-family:Roobert,sans-serif;font-weight:500;white-space:nowrap}#reef-overlay-indicator{position:absolute;top:75px;right:25px;background-color:#1a1a1ae6;border-radius:20px;padding:8px 16px;display:flex;align-items:center;gap:8px;z-index:10;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 2px 8px #0000004d;transition:all .2s ease;width:fit-content;margin-right:0}#reef-overlay-indicator:hover{background-color:#1a1a1af2;border-color:#fff3}.reef-indicator-light{width:12px;height:12px;border-radius:50%;background-color:#80808080;border:1px solid rgba(255,255,255,.2);transition:all .3s ease;box-shadow:inset 0 1px 2px #0000004d}.reef-indicator-light.active{background-color:#f88379;box-shadow:0 0 8px #f8837999,inset 0 1px 2px #ffffff4d;border-color:#f88379cc}.reef-indicator-label{font-family:Roobert,sans-serif;font-size:13px;font-weight:500;color:#ffffffe6;white-space:nowrap;letter-spacing:.3px}.mapboxgl-popup-content{background:transparent!important;border-radius:8px!important;padding:0!important;box-shadow:none!important;border:none!important}.mapboxgl-popup-tip{border-top-color:#000000e6!important;border-bottom-color:#000000e6!important}.popup-container{background:rgba(0,0,0,.9);padding:15px;border-radius:8px;color:#fff;font-family:Roobert,sans-serif;min-width:240px;max-width:300px;box-shadow:0 4px 20px #0000004d;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:fadeInScale .2s ease-out;position:relative}.popup-container:before{content:"Click elsewhere to close";position:absolute;bottom:-25px;left:50%;transform:translate(-50%);font-size:10px;color:#ffffff80;white-space:nowrap;pointer-events:none;font-family:Roobert,sans-serif}.popup-title{margin:0 0 12px;font-size:16px;font-weight:600;color:#fff;text-align:center;border-bottom:1px solid rgba(255,255,255,.2);padding-bottom:8px}.popup-category-container{display:flex;justify-content:flex-start;margin:8px 0}.popup-category-badge{font-family:Roobert,sans-serif;font-size:10px;color:#fff;padding:5px 10px;border-radius:12px;text-transform:uppercase;font-weight:700;display:inline-block;background-color:var(--category-color, #666)}.popup-section-title{margin:15px 0 5px;font-size:13px;color:#fffc;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.popup-rating{margin-bottom:8px;font-size:13px;color:#ffffffe6}.popup-buttons{display:flex;gap:8px;margin-top:15px}.popup-button{background:rgba(255,255,255,.05);color:#fff;padding:10px 12px;border:1px solid rgba(255,255,255,.2);border-radius:6px;cursor:pointer;font-weight:500;text-align:center;text-decoration:none;transition:all .2s ease;flex:1;font-size:12px;font-family:Roobert,sans-serif}.popup-button:hover{background:rgba(255,255,255,.1);border-color:#ffffff4d;transform:translateY(-1px)}.fish-popup-container{position:fixed;top:130px;right:15px;width:300px;height:calc(100% - 300px);background-color:#1a1a1ae6;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:20px;border:1px solid rgba(255,255,255,.1);box-shadow:0 2px 8px #0000004d;overflow-y:auto;z-index:1000;transition:all .3s ease;padding:0}.fish-popup-container::-webkit-scrollbar{width:6px}.fish-popup-container::-webkit-scrollbar-track{background:transparent;border-radius:10px;margin:20px 3px 20px 0}.fish-popup-container::-webkit-scrollbar-thumb{background:rgba(255,255,255,.2);border-radius:10px;transition:background .2s ease}.fish-popup-container::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.3)}.fish-popup-container::-webkit-scrollbar-corner{background:transparent}.fish-popup-container:hover{background-color:#1a1a1af2;border-color:#fff3}.fish-popup-content{color:#fff;padding:0;font-family:Roobert,sans-serif;position:relative}.fish-popup-hero-image-wrapper{position:relative;width:100%;background:rgba(26,26,26,.9);border-radius:20px 20px 0 0;overflow:hidden}.fish-popup-hero-image{width:100%;height:auto;max-height:300px;object-fit:contain;display:block;margin:0}.fish-popup-hero-image-wrapper:after{content:"";position:absolute;bottom:0;left:0;right:0;height:60px;background:linear-gradient(to bottom,rgba(26,26,26,0),rgba(26,26,26,.9));pointer-events:none}.fish-popup-header{position:sticky;top:0;z-index:1001;background-color:#1a1a1ae6;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);margin:0;padding:15px 15px 10px;border-bottom:1px solid rgba(255,255,255,.1)}.fish-popup-close-btn{position:absolute;top:15px;right:15px;font-size:18px;cursor:pointer;color:#fff;background-color:#0009;border:1px solid rgba(255,255,255,.3);width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease;padding:0;margin:0;z-index:1002;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.fish-popup-close-btn:hover{background-color:#fff3;color:#fff;border-color:#ffffff80;transform:scale(1.1)}.fish-popup-title{color:#fff;font-family:Roobert,sans-serif;font-size:22px;font-weight:600;margin:0;padding:0;border:none;line-height:32px;text-transform:capitalize}.fish-popup-image{width:calc(100% - 30px);border-radius:8px;margin:15px;box-shadow:0 2px 6px #0000004d;border:1px solid rgba(255,255,255,.1);display:block}.fish-popup-text{color:#b4b4b4;font-family:Roobert,sans-serif;font-size:14px;margin-bottom:12px;line-height:1.4}.fish-popup-text strong{color:#fff;font-weight:600}.fish-popup-section{margin-bottom:20px;padding:0 15px}.fish-popup-section:last-child{padding-bottom:20px}.fish-popup-danger{display:inline-block;padding:4px 12px;border-radius:12px;color:#fff;font-weight:600;text-transform:uppercase;font-size:11px;margin-left:5px;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.fish-popup-danger.harmless{background-color:var(--gray-color)}.fish-popup-danger.venomous,.fish-popup-danger.venemous{background-color:indigo}.fish-popup-danger.poisonous{background-color:#7cb342}.fish-popup-danger.harmful{background-color:#ff3a3a}.fish-popup-danger.unknown{background-color:#000}.login-prompt-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(0,0,0,.8),rgba(0,50,80,.6));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:center;z-index:9999;font-family:Roobert,sans-serif;animation:fadeIn .3s ease-out}.login-prompt-content,.login-prompt-modal{background:linear-gradient(145deg,rgba(26,26,26,.95),rgba(35,35,35,.95));padding:40px 35px;border-radius:16px;max-width:420px;width:90%;text-align:center;position:relative;box-shadow:0 20px 40px #0006,0 0 0 1px #ffffff1a,inset 0 1px #ffffff1a;border:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:slideInScale .4s cubic-bezier(.175,.885,.32,1.275)}.login-prompt-close{position:absolute;right:15px;top:15px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:18px;color:#fff9;cursor:pointer;transition:all .2s ease;font-family:Roobert,sans-serif}.login-prompt-close:hover{background:rgba(255,255,255,.1);color:#fff;transform:scale(1.1);border-color:#fff3}.login-prompt-icon{width:60px;height:60px;margin:0 auto 20px;background:linear-gradient(135deg,var(--primary-color),#5cadff);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:28px;color:#fff;box-shadow:0 8px 16px #00acdf4d;animation:pulse 2s infinite}.login-prompt-content h3,.login-prompt-modal h3{margin:0 0 15px;color:#fff;font-size:24px;font-weight:600;font-family:Roobert,sans-serif;letter-spacing:-.5px}.login-prompt-content p,.login-prompt-modal p{color:#ffffffbf;margin-bottom:30px;font-size:15px;line-height:1.5;font-family:Roobert,sans-serif;font-weight:400}.login-prompt-buttons{display:flex;justify-content:center;gap:12px;margin-top:25px}.login-prompt-login-btn{background:linear-gradient(135deg,var(--primary-color),#5cadff);color:#fff;border:none;padding:14px 28px;border-radius:10px;cursor:pointer;font-family:Roobert,sans-serif;font-weight:600;font-size:14px;text-transform:uppercase;letter-spacing:.5px;transition:all .3s ease;box-shadow:0 4px 12px #00acdf4d,0 2px 4px #0003;position:relative;overflow:hidden}.login-prompt-login-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.login-prompt-login-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00acdf66,0 4px 8px #0000004d}.login-prompt-login-btn:hover:before{left:100%}.login-prompt-login-btn:active{transform:translateY(0)}.login-prompt-cancel-btn{background:rgba(255,255,255,.05);color:#fffc;border:1px solid rgba(255,255,255,.2);padding:14px 28px;border-radius:10px;cursor:pointer;font-family:Roobert,sans-serif;font-weight:500;font-size:14px;text-transform:uppercase;letter-spacing:.5px;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.login-prompt-cancel-btn:hover{background:rgba(255,255,255,.1);color:#fff;border-color:#ffffff4d;transform:translateY(-1px);box-shadow:0 4px 12px #0003}.login-prompt-cancel-btn:active{transform:translateY(0)}@keyframes slideInScale{0%{opacity:0;transform:scale(.8) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes pulse{0%,to{transform:scale(1);box-shadow:0 8px 16px #00acdf4d}50%{transform:scale(1.05);box-shadow:0 12px 24px #00acdf66}}@keyframes fadeOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}.form-group{margin-bottom:20px;text-align:left;width:100%;max-width:320px;margin-left:auto;margin-right:auto;box-sizing:border-box}.form-group label{display:block;margin-bottom:6px;font-weight:500;color:#fff;font-size:14px;text-align:left;font-family:Roobert,sans-serif}.form-group input{width:100%;box-sizing:border-box;padding:12px 14px;border:1px solid #555;border-radius:6px;background-color:#444;color:#fff;transition:all .2s ease;font-size:14px;text-align:left;margin-left:0;margin-right:0}.form-group input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #2196f34d}.form-group input::placeholder{color:#999;text-align:left;opacity:.7}.error-border{border:1px solid #ff5a5a!important;box-shadow:0 0 0 1px #ff5a5a33!important}.disabled-input{background-color:#28282880!important;color:#ffffff80!important;cursor:not-allowed!important;border:1px solid rgba(255,255,255,.2)!important;-webkit-text-fill-color:rgba(255,255,255,.5)!important;opacity:.8;-webkit-user-select:none;user-select:none}.validation-message{font-family:Roobert,sans-serif;font-size:12px;margin-top:4px;padding-left:2px;line-height:1.4;font-weight:400;display:none}.validation-message.error{display:block;color:#ff5a5a;animation:fadeIn .3s ease}.validation-message.success{display:block;color:#5aff8f;animation:fadeIn .3s ease}.form-checkbox{display:flex;align-items:flex-start;margin-bottom:20px;gap:10px;font-family:Roobert,sans-serif;color:#ffffffd9;font-size:14px;line-height:1.5}.form-checkbox input[type=checkbox]{margin-top:3px;-moz-appearance:none;appearance:none;-webkit-appearance:none;width:18px;height:18px;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.3);border-radius:4px;cursor:pointer;position:relative;flex-shrink:0}.form-checkbox input[type=checkbox]:checked{background-color:#3d8edfcc;border-color:#3d8edfe6}.form-checkbox input[type=checkbox]:checked:after{content:"✓";position:absolute;color:#fff;font-size:14px;top:50%;left:50%;transform:translate(-50%,-50%)}.form-checkbox label{cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:400;color:#ffffffd9}.form-checkbox a{color:#5cadff;text-decoration:none;transition:color .2s ease}.form-checkbox a:hover{color:#8bc5ff;text-decoration:underline}.form-checkbox.error{animation:shake .5s cubic-bezier(.36,.07,.19,.97) both}.form-checkbox.error input[type=checkbox]{border-color:#ff5a5a;box-shadow:0 0 0 1px #ff5a5a80}.login-button{width:100%;max-width:320px;padding:12px;border:none;border-radius:6px;cursor:pointer;font-size:15px;font-weight:500;transition:all .2s ease;margin-bottom:12px;display:flex;justify-content:center;align-items:center;gap:8px;margin-left:auto;margin-right:auto;background-color:var(--primary-color);color:#fff}.login-button:hover{background-color:#1976d2;transform:translateY(-1px)}.back-button{display:block;width:fit-content;margin:20px auto 0;padding:8px 15px;background-color:transparent;color:#fffc;border:1px solid rgba(255,255,255,.3);border-radius:6px;font-family:Roobert,sans-serif;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;text-align:center;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.back-button:hover{background-color:#ffffff1a;color:#fff;transform:translateY(-2px);box-shadow:0 2px 8px #00000026}.back-button:active{transform:translateY(0);box-shadow:none}.forgot-password-button{background:none;border:none;color:var(--primary-color);cursor:pointer;font-size:14px;padding:0;display:block;width:100%;max-width:320px;text-align:center;margin-top:10px;margin-left:auto;margin-right:auto;font-family:Roobert,sans-serif}.forgot-password-button:hover{text-decoration:underline}.sidebar-login{padding:20px;color:#fff;font-family:Roobert,sans-serif;max-width:360px;margin:0 auto;text-align:center;box-sizing:border-box}.login-title{margin-top:0;margin-bottom:24px;text-align:center;font-weight:600;color:#fff;font-size:1.5rem}.form-tabs{display:flex;margin-bottom:24px;border-bottom:1px solid #555;justify-content:center;margin-left:auto;margin-right:auto}.form-tab{flex:1;padding:12px 8px;background:none;border:none;cursor:pointer;font-size:15px;font-weight:500;color:#ccc;position:relative;transition:all .2s ease;text-align:center;font-family:Roobert,sans-serif}.form-tab:hover,.form-tab.active{color:var(--primary-color)}.form-tab.active:after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:2px;background-color:var(--primary-color)}.profile-section{font-family:Roobert,sans-serif;color:#fff;padding:10px 15px}.profile-header{text-align:center;padding:20px 0;display:flex;flex-direction:column;align-items:center;justify-content:center}.avatar-container{width:80px;height:80px;border-radius:50%;overflow:hidden;margin:0 auto 15px;display:flex;align-items:center;justify-content:center;background-color:#3b82f6;border:4px solid white;box-shadow:0 2px 8px #0000001a}.avatar-container img{width:100%;height:100%;object-fit:cover}.avatar-initial{font-size:32px;color:#fff;font-weight:500;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.profile-name{font-size:22px;font-weight:600;margin:5px 0;color:#fff;text-align:center;width:100%}.profile-email{font-size:14px;color:#666;margin:0 0 15px;text-align:center;width:100%;word-break:break-all}.profile-tabs{display:flex;border-bottom:1px solid #ddd;margin-bottom:5px;margin-left:10px;margin-right:10px}.profile-tab{flex:1;padding:10px;background:none;border:none;color:#fff9;font-size:15px;cursor:pointer;transition:all .2s;border-bottom:2px solid transparent;outline:none;font-family:Roobert,sans-serif;font-weight:700}.profile-tab.active{color:#fff;border-bottom-color:#008cff}.profile-tab:hover{color:#fff}#profile-content{padding:5px 0}.favorites-container{margin-left:10px;margin-right:10px}.favorites-container .product-list{margin-top:0;margin-left:0;margin-right:0}.removed-products-banners{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.removed-product-banner{background:linear-gradient(135deg,#d32f2f 0%,#c62828 100%);border:2px solid #ff5252;border-radius:12px;padding:16px;display:flex;align-items:center;gap:12px;box-shadow:0 4px 12px #d32f2f4d;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.removed-banner-icon{font-size:28px;flex-shrink:0;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.removed-banner-content{flex:1;min-width:0}.removed-banner-message{color:#fff;font-family:Roobert,sans-serif;font-size:14px;line-height:1.5;margin:0}.removed-banner-message strong{font-weight:600;text-decoration:underline}.removed-banner-ok-btn{background:rgba(255,255,255,.95);color:#c62828;border:none;border-radius:8px;padding:8px 20px;font-family:Roobert,sans-serif;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;flex-shrink:0;box-shadow:0 2px 6px #00000026}.removed-banner-ok-btn:hover{background:#ffffff;transform:scale(1.05);box-shadow:0 4px 10px #00000040}.removed-banner-ok-btn:active{transform:scale(.98)}.settings-form{padding:20px 15px;max-width:100%;font-family:Roobert,sans-serif}.settings-form .form-group{margin-bottom:25px}.settings-form .form-group:last-of-type{margin-bottom:25px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.1)}.settings-form label{display:block;margin-bottom:6px;font-weight:700;font-family:Roobert,sans-serif}.settings-button{display:inline-block;background:none;border:none;color:#fff;text-decoration:underline;font-size:15px;padding:5px 0;margin:10px 0;cursor:pointer;transition:opacity .2s;font-family:Roobert,sans-serif;text-align:center;width:auto}.settings-button:hover{opacity:.8}.settings-button-primary{color:#fff;font-weight:500}.settings-actions{display:flex;justify-content:space-between;align-items:center;margin-top:20px}.logout-button-blue{display:block;width:30%;margin:30px auto 0;padding:12px 20px;background-color:var(--primary-color);color:#fff;border-radius:6px;font-family:Roobert,sans-serif;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;text-align:center;border:none}.logout-button-blue:hover{transform:translateY(-2px)}.logout-button-blue:active{transform:translateY(0);box-shadow:none}.checkbox-group{display:flex;align-items:center;margin-top:5px}.checkbox-group input[type=checkbox]{margin:0 8px 0 0;padding:0;width:auto;height:auto;flex:0 0 auto}.checkbox-group label{margin:0;padding:0;font-weight:400;display:inline;line-height:1}.favorites-list{margin-top:15px}.favorite-item{display:flex;align-items:center;padding:15px;margin-bottom:15px;background-color:#1e1e1eb3;border-radius:8px;transition:all .2s ease;border:1px solid rgba(255,255,255,.1);position:relative;overflow:hidden}.favorite-item:hover{background-color:#282828e6;transform:translateY(-2px);box-shadow:0 4px 8px #00000026;border-color:#fff3}.favorite-item:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(to bottom,#3d8edf,#5cadff);opacity:.8}.favorite-info{flex:1;overflow:hidden;padding-left:15px}.favorite-name{font-weight:600;font-size:16px;color:#fff;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:Roobert,sans-serif}.favorite-type{font-size:14px;color:#fff9;margin:0;font-family:Roobert,sans-serif}.favorite-actions{display:flex;gap:8px}.view-favourites-detail-button,.remove-favorite-btn{background-color:transparent;border:1px solid rgba(255,255,255,.2);color:#fffc;border-radius:4px;padding:6px 10px;font-size:13px;cursor:pointer;transition:all .2s ease;font-family:Roobert,sans-serif;white-space:nowrap}.view-favourites-detail-button{background-color:var(--primary-color);color:#fffffff2}.view-favourites-detail-button:hover{background-color:#3d8edf80;border-color:#3d8edfb3;transform:translateY(-1px);box-shadow:0 2px 5px #0003}.remove-favorite-btn:hover{background-color:#f443364d;color:#f44336}.no-favorites{text-align:center;color:#fff9;font-style:italic;padding:20px 0;font-family:Roobert,sans-serif;background-color:#1e1e1e80;border-radius:8px;border:1px dashed rgba(255,255,255,.2)}.experiences-title{font-size:22px;font-weight:900;color:#fff;text-align:center;margin-bottom:15px;text-transform:uppercase;letter-spacing:1px;font-family:Roobert,sans-serif}.image-carousel{position:relative;max-width:100%;margin-left:5px;margin-right:5px;margin-top:5px}.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);background-color:#00000080;color:#fff;border:none;cursor:pointer;padding:10px;border-radius:4px;font-size:18px;z-index:10;transition:background-color .3s ease}.carousel-btn:hover{background-color:#000000b3}#prevBtn{left:10px}#nextBtn{right:10px}.carousel-img{width:100%;height:400px;object-fit:cover;object-position:center;border-radius:10px;transition:transform .3s ease}.spot-types-list{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;align-items:center}.spot-type-item{display:flex;align-items:center;gap:6px;padding:4px 8px;background-color:#ffffff1a;border-radius:12px;border:1px solid rgba(255,255,255,.2);font-family:Roobert,sans-serif;font-size:12px;color:#fff;font-weight:500;transition:all .2s ease}.spot-type-item:hover{background-color:#ffffff26;border-color:#ffffff4d;transform:translateY(-1px)}.spot-type-symbol{font-size:14px;line-height:1}.spot-type-name{text-transform:capitalize;font-weight:600;letter-spacing:.3px}.benefits-container{display:flex;justify-content:center;align-items:center;margin:20px 10px;padding-left:0;gap:20px}.benefit-item{font-family:Roobert,sans-serif;font-size:14px;color:var(--text-color);margin:0}.checkmark{color:var(--primary-color);margin-right:5px}.details-container{display:flex;justify-content:space-between;margin:20px 10px;gap:10px}.description-container{flex:1 1 50%;max-width:calc(50% - 5px);padding:15px;background-color:var(--background-color);border:2px solid transparent;border-radius:10px;box-shadow:0 4px 8px #0000001a;box-sizing:border-box}.info-container{flex:1 1 50%;max-width:calc(50% - 5px);background-color:var(--background-color);border:2px solid white;border-radius:10px;padding:15px;box-shadow:0 4px 8px #0003;display:flex;flex-direction:column;gap:15px;align-items:center;box-sizing:border-box}.tour-description{font-family:Roobert,sans-serif;font-size:18px;color:#fff;font-weight:700;margin-bottom:15px;margin-top:0;text-transform:uppercase;letter-spacing:.5px}.price-display{margin:15px 0;padding:15px;background:linear-gradient(135deg,rgba(0,172,223,.1),rgba(0,172,223,.05));border:1px solid rgba(0,172,223,.3);border-radius:12px;font-family:Roobert,sans-serif;text-align:center;box-shadow:0 4px 8px #0000001a;transition:all .3s ease}.price-display:hover{border-color:#00acdf80;box-shadow:0 6px 12px #00000026}.price-container{display:flex;align-items:baseline;justify-content:center;gap:8px;margin-bottom:5px}.starting-price{font-size:12px;color:#fff;opacity:.7;font-weight:600;font-family:Roobert,sans-serif;letter-spacing:1px}.price-amount{font-size:32px;color:#fff;font-weight:700;font-family:Roobert,sans-serif;text-shadow:0 2px 4px rgba(0,0,0,.3)}.currency{font-size:16px;color:#fff;opacity:.8;font-weight:600;font-family:Roobert,sans-serif;margin-left:4px}.per-person{font-size:11px;color:#fff;opacity:.6;font-weight:500;font-family:Roobert,sans-serif;letter-spacing:.5px;text-transform:uppercase}.price-display.no-price{background:linear-gradient(135deg,rgba(255,191,0,.15),rgba(255,191,0,.05));border-color:#ffbf0066;animation:pulse-glow 2s ease-in-out infinite}.price-display.no-price:hover{border-color:#ffbf0099}.price-placeholder{font-size:24px;color:var(--secondary-color);font-weight:600;font-family:Roobert,sans-serif;text-shadow:0 2px 4px rgba(0,0,0,.3)}.price-cta{font-size:12px;color:var(--secondary-color);font-weight:500;font-family:Roobert,sans-serif;opacity:.9;font-style:italic}.learn-more-btn-container{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;text-align:center}.learn-more-btn{padding:12px 24px;background:linear-gradient(45deg,#0080bf,#1a9fd9);color:#fff;border:none;border-radius:20px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;font-family:Roobert,sans-serif;font-weight:600;font-size:13px;letter-spacing:.5px;text-transform:uppercase;box-shadow:0 3px 10px #0000004d;flex:1}.learn-more-btn:hover{background:linear-gradient(45deg,#1a9fd9,#33b3e6);transform:translateY(-2px);box-shadow:0 5px 15px #0006}.powered-by{display:flex;align-items:center;justify-content:center;margin-top:5px;opacity:.5;font-size:10px;font-weight:700;text-transform:uppercase;font-family:Roobert,sans-serif}.powered-by span{margin-right:5px}.viator-logo{height:18px}.experiences-subtitle{color:#fff;opacity:.5;font-family:Roobert,sans-serif;font-size:14px;margin-top:-10px;margin-bottom:15px;font-weight:400;text-align:center}.product-default-title{font-family:Roobert,sans-serif;font-size:22px;font-weight:900;color:#fff;text-align:left;margin-bottom:15px;margin-left:10px;text-transform:uppercase;letter-spacing:1px;margin-top:0}.product-country{font-family:Roobert,sans-serif;font-size:10px;color:#b4b4b4;margin-left:10px;margin-top:20px;margin-bottom:0}.product-title{font-family:Roobert,sans-serif;font-size:24px;color:#fff;margin-left:10px;max-width:530px;word-wrap:break-word;word-break:break-word;overflow-wrap:break-word;white-space:normal;font-weight:700;margin-top:0}.product-labels{font-family:Roobert,sans-serif;display:flex;gap:10px;margin-left:10px;margin-top:-20px}.product-label,.product-badge{font-family:Roobert,sans-serif;font-size:10px;color:#fff;padding:5px 10px;border-radius:12px;text-transform:uppercase;font-weight:700;background-color:var(--gray-color)}.activity-length,.product-label.activity-length,.product-badge.activity-length{background-color:var(--gray-color)!important}.spot-details{color:#fff;padding:0 10px 10px}.spot-title{font-family:Roobert,sans-serif;font-size:24px;color:#fff;margin-left:10px;max-width:530px;word-wrap:break-word;word-break:break-word;overflow-wrap:break-word;white-space:normal;font-weight:700;margin-top:0;margin-bottom:20px}.spot-info{margin:20px 10px}.spot-id{font-family:Roobert,sans-serif;font-size:16px;color:#fff;margin-bottom:15px;font-weight:500}.spot-description{font-family:Roobert,sans-serif;font-size:14px;color:#ccc;line-height:1.5;margin-bottom:20px}.spot-actions{margin:20px 10px}.spot-details-btn{font-family:Roobert,sans-serif;background-color:var(--primary-color);color:#fff;border:none;padding:12px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px}.spot-details-btn:hover{background-color:#0096c7;transform:translateY(-2px);box-shadow:0 4px 12px #00acdf4d}.spot-location{font-family:Roobert,sans-serif;font-size:12px;color:#ccc;margin-left:10px;margin-top:20px;margin-bottom:0;text-transform:uppercase;letter-spacing:.5px}.spot-labels{font-family:Roobert,sans-serif;display:flex;gap:10px;margin-left:10px;margin-top:-20px;flex-wrap:wrap}.spot-label{font-family:Roobert,sans-serif;font-size:10px;color:#fff;padding:5px 10px;border-radius:12px;text-transform:uppercase;font-weight:700;background-color:var(--gray-color)}.difficulty-level{background-color:var(--secondary-color)!important;color:#000!important}.spot-image-container{margin:20px 10px;text-align:center;position:relative;display:inline-block}.spot-image{width:100%;max-width:540px;height:200px;object-fit:cover;border-radius:8px;background-color:#333}.placeholder-overlay{position:absolute;top:10px;right:10px;background-color:#fff;color:#000;padding:4px 8px;border-radius:4px 4px 4px 12px;font-size:10px;font-weight:700;box-shadow:0 1px 3px #0003;z-index:10}.placeholder-text{display:block;white-space:nowrap}.spot-benefits-container,.spot-details-container{margin:20px 10px}.spot-description-container{margin-bottom:30px}.spot-description-title{font-family:Roobert,sans-serif;font-size:14px;color:#fff;font-weight:700;margin-bottom:10px;text-transform:uppercase;letter-spacing:.5px}.spot-info-container{background-color:#ffffff0d;border-radius:12px;padding:20px;margin-bottom:20px}.spot-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:25px}.spot-info-list{display:flex;flex-direction:column;gap:15px;margin-bottom:25px}.spot-info-item{font-family:Roobert,sans-serif;font-size:14px;color:#fff;line-height:1.4}.spot-info-item strong{color:var(--primary-color);display:block;margin-bottom:5px;font-size:12px;text-transform:uppercase;letter-spacing:.5px}.spot-actions-container{display:flex;gap:10px;flex-wrap:wrap}.spot-action-btn{font-family:Roobert,sans-serif;border:none;padding:12px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px;flex:1;min-width:120px}.spot-action-btn.primary{background-color:var(--primary-color);color:#fff}.spot-action-btn.primary:hover{background-color:#0096c7;transform:translateY(-2px);box-shadow:0 4px 12px #00acdf4d}.spot-action-btn.secondary{background-color:transparent;color:var(--primary-color);border:2px solid var(--primary-color)}.spot-action-btn.secondary:hover{background-color:var(--primary-color);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #00acdf4d}.spot-info-display{width:100%}.spot-info-section{margin-bottom:25px;padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,.1)}.spot-info-section:last-child{border-bottom:none;margin-bottom:0}.spot-section-title{font-family:Roobert,sans-serif;font-size:18px;color:#fff;font-weight:700;margin-bottom:15px;margin-top:0;text-transform:uppercase;letter-spacing:.5px}.reef-composition{display:grid;grid-template-columns:1fr 1fr;gap:10px}.reef-item{font-family:Roobert,sans-serif;font-size:13px;color:#fff;background-color:#ffffff0d;padding:8px 12px;border-radius:6px;border-left:3px solid var(--primary-color)}.species-info{display:grid;grid-template-columns:1fr 1fr;gap:8px}.species-item{font-family:Roobert,sans-serif;font-size:12px;color:#fff;background-color:#00acdf1a;padding:6px 10px;border-radius:4px;text-align:center;border:1px solid rgba(0,172,223,.2)}.rating-breakdown{display:flex;flex-direction:column;gap:8px}.rating-item{font-family:Roobert,sans-serif;font-size:14px;color:#fff;background-color:#ffd7001a;padding:8px 12px;border-radius:6px;border-left:3px solid var(--highlight-color);display:flex;justify-content:space-between;align-items:center}.view-more-btn{background:none;border:none;color:var(--primary-color);text-decoration:underline;cursor:pointer;font-family:Roobert,sans-serif;font-size:14px;margin-left:5px;transition:color .3s ease}.view-more-btn:hover{color:#0096c7}.description-ellipsis{color:#ccc}@media (max-width: 600px){.spot-info-grid{grid-template-columns:1fr;gap:10px}.spot-actions-container{flex-direction:column}.spot-action-btn{flex:none;min-width:auto}.reef-composition,.species-info{grid-template-columns:1fr}.spot-section-title{font-size:16px}}.tabs-container{display:flex;justify-content:center;align-items:center;padding:5px;gap:10px}.tabs{display:flex;gap:6px;padding:8px;border-radius:8px;background:rgba(51,51,51,.7)}.tab-selector{display:none}.tab-primary{font-size:12px;font-weight:600;color:#fff;background-color:#333;padding:8px 12px;border-radius:6px;cursor:pointer;transition:all .2s ease-in-out;text-align:center;font-family:Roobert,sans-serif}.tab-primary:hover{background-color:#444}.tab-selector:checked+.tab-primary{background-color:#007bff;box-shadow:0 0 8px #007bff80}.refresh-products-btn{background-color:#333;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;padding:8px 12px;transition:all .2s ease-in-out;font-family:Roobert,sans-serif;font-weight:600;min-width:40px;height:36px;display:flex;align-items:center;justify-content:center}.refresh-products-btn:hover:not(:disabled){background-color:#444}.refresh-products-btn:active:not(:disabled){transform:translateY(1px)}.refresh-products-btn:disabled{background-color:#222;cursor:not-allowed;opacity:.6}.product-list{color:#fff;margin-top:20px;margin-left:10px;margin-right:10px}.product-list-container{width:100%;max-width:100%;position:relative;z-index:5;padding:20px 10px 10px;background-color:#1e1e1e80;border-radius:8px;height:600px;margin-bottom:20px!important;border:1px solid rgba(255,255,255,.1);box-shadow:0 4px 8px #0003;overflow-y:auto;overflow-x:hidden;box-sizing:border-box}.product-list-container::-webkit-scrollbar-track{background:transparent}.product-list-container:empty{display:none}.product-list-container:not(:has(*)){display:none}.product-list-empty{display:none!important}.empty-state-container{padding:40px 20px;text-align:center}.empty-state-icon{font-size:48px;margin-bottom:15px}.empty-state-title{color:#fff;font-family:Roobert,sans-serif;font-size:18px;font-weight:500;margin-bottom:10px}.empty-state-description{color:#b4b4b4;font-family:Roobert,sans-serif;font-size:14px;line-height:1.5}.product-list-item{margin-bottom:15px;padding:12px;background-color:#1a1a1ae6;border-radius:10px;display:flex;align-items:center;font-family:Roobert,sans-serif;transition:all .2s ease-in-out;box-shadow:0 4px 6px #0000001a;border:1px solid rgba(255,255,255,.05)}.product-list-item:hover{transform:translateY(-2px);box-shadow:0 6px 12px #00000026;background-color:#1e1e1ef2;border-color:#ffffff1a}.product-info-list{flex:1;padding-right:10px}.product-title-list{font-family:Roobert,sans-serif;margin:0;font-size:16px;font-weight:900;color:#fff;text-align:left;letter-spacing:.2px;line-height:1.2}.product-type-container{display:flex;flex-direction:row;align-items:center;gap:10px;margin:5px 0}.product-rating-list{margin:0;font-size:14px;color:#b4b4b4;text-align:left;display:flex;align-items:center}.product-buttons-list{margin-top:10px;display:flex;gap:10px;align-items:center}.product-button-list{padding:8px 12px;border:none;border-radius:6px;cursor:pointer;font-family:Roobert,sans-serif;font-weight:700;color:#fff;transition:all .2s ease;font-size:13px;display:flex;align-items:center;justify-content:center}.product-button-list:hover{transform:translateY(-1px);filter:brightness(110%)}.view-details-button{background-color:transparent;color:#fffc;border:1px solid rgba(255,255,255,.8);box-shadow:0 2px 4px #00000026}.view-details-button:hover{background-color:#ffffff1a;border-color:#ffffffe6;color:#ffffffe6}.product-image{width:100px;height:100px;border-radius:10px;object-fit:cover;margin-left:10px;flex-shrink:0;box-shadow:0 2px 5px #0003;border:1px solid rgba(255,255,255,.1);transition:all .2s ease}.product-list-item:hover .product-image{transform:scale(1.02);box-shadow:0 3px 7px #0000004d}.favourite-click{font-size:20px;width:38px;height:38px;margin-left:10px;position:relative;cursor:pointer;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.1);border-radius:50%;transition:all .3s ease-in-out;z-index:10;overflow:visible}.favourite-click i{font-size:18px!important;color:#c3c3c3!important;display:inline-block!important;width:auto!important;height:auto!important;opacity:1!important;visibility:visible!important;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(.85);transition:color .3s ease-in-out}.favourite-click .fa-solid{color:#ff0!important}.favourite-click:hover{opacity:.8;background-color:#fff3;transform:scale(1.05)}.favourite-click:active{transform:scale(.93) translateY(2px)}.fish-default-sidebar{display:flex;flex-direction:column;align-items:center;text-align:center;width:100%;padding-left:5px;padding-right:5px;box-sizing:border-box;position:relative;overflow:visible!important;height:auto!important}.error-container{background-color:#dc35451a;border:1px solid var(--error-color);border-radius:8px;padding:15px;margin:10px;color:var(--error-color);text-align:center}.species-tabs{display:flex;justify-content:center;margin:15px 0;gap:5px}.species-tab{padding:8px 15px;margin:0 5px;background-color:#444;color:#fff;border:none;border-radius:4px;cursor:pointer;font-family:Roobert,sans-serif;font-weight:600;transition:all .2s ease}.species-tab:hover{background-color:#555}.species-tab.active{background-color:#0080bf}.no-species-message,.no-data-message{text-align:center;padding:20px;color:#666;font-style:italic;font-family:Roobert,sans-serif}.loading{text-align:center;padding:20px;color:#888;font-family:Roobert,sans-serif}.rarity-summary{margin-top:10px;margin-left:10px;margin-right:10px;max-width:560px;background-color:#1a1a1a;border-radius:8px;padding:20px 50px 20px 20px;box-shadow:0 4px 10px #0000004d}.rarity-content{display:flex;justify-content:space-between;align-items:center;height:100%}.rarity-content.flex-start{justify-content:flex-start;gap:10px}.rarity-text{flex:1;padding-right:20px}.rarity-text.compact{flex:0 0 35%;max-width:35%;padding-right:0}.rarity-stat{margin:10px 0}.rarity-label{font-family:Roobert,sans-serif;font-size:14px;color:#d3d3d3;margin:0;line-height:1.2;font-weight:400}.rarity-label-with-info{display:flex;align-items:center;gap:8px}.reptile-rarity-content.flex-start{justify-content:flex-start;gap:10px}.reptile-rarity-text.compact{flex:0 0 35%;max-width:35%}.reptile-rarity-chart-container.no-margin{margin-left:0}.reptile-tabs-container{display:flex;overflow-x:auto;gap:8px;margin:15px 0;padding-bottom:5px;justify-content:center}.reptile-category-tab{flex:0 0 auto;padding:8px 15px;background-color:#444;color:#fff;border:none;border-radius:4px;cursor:pointer;white-space:nowrap;font-weight:700}.reptile-category-tab.active{background-color:#0080bf}.reptile-card{background:linear-gradient(135deg,rgba(0,128,191,.1) 0%,rgba(0,0,0,.4) 100%);margin-bottom:20px;border-radius:12px;overflow:hidden;box-shadow:0 4px 15px #0080bf33;transition:all .3s ease;position:relative}.reptile-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0080bf4d}.reptile-type-stripe{position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--type-color) 0%,var(--rarity-color) 100%)}.reptile-card-header{display:flex;padding:15px;align-items:center;position:relative}.reptile-image-container{width:90px;height:90px;overflow:hidden;border-radius:8px;margin-right:15px;flex-shrink:0;box-shadow:0 2px 8px #0000004d}.reptile-image-container img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.reptile-image-container img:hover{transform:scale(1.1)}.reptile-card-title{display:flex;flex-direction:column;justify-content:center;flex:1}.reptile-card-title h4{margin:0 0 8px;color:#fff;font-size:16px;text-shadow:1px 1px 2px rgba(0,0,0,.5)}.reptile-card-title p{margin:0 0 10px;color:#ccc;font-size:12px;font-style:italic}.reptile-card-badges{display:flex;gap:8px;flex-wrap:wrap}.reptile-card-badges .rarity-badge{padding:4px 12px;border-radius:15px;font-size:11px;font-weight:700;background:linear-gradient(45deg,var(--rarity-color),var(--rarity-color-bright));color:#fff;text-shadow:1px 1px 1px rgba(0,0,0,.5);box-shadow:0 2px 4px #0000004d}.reptile-card-badges .type-badge{padding:4px 12px;border-radius:15px;font-size:11px;font-weight:700;background:linear-gradient(45deg,var(--type-color),var(--type-color-bright));color:#fff;text-shadow:1px 1px 1px rgba(0,0,0,.5);box-shadow:0 2px 4px #0000004d}.reptile-decorative-divider{height:2px;background:linear-gradient(90deg,transparent 0%,var(--type-color) 20%,var(--rarity-color) 50%,var(--type-color) 80%,transparent 100%);margin:0 15px}.reptile-card-details{padding:15px;text-align:center;background:rgba(0,0,0,.2)}.reptile-details-btn{display:inline-block;margin:0 auto;padding:10px 20px;background:linear-gradient(45deg,var(--type-color),var(--type-color-bright));color:#fff;border:none;border-radius:20px;font-weight:700;font-size:12px;cursor:pointer;transition:all .3s ease;box-shadow:0 3px 10px #0000004d;text-transform:uppercase;letter-spacing:.5px}.reptile-details-btn:hover{transform:translateY(-2px);box-shadow:0 5px 15px #0006;background:linear-gradient(45deg,var(--type-color-bright),var(--type-color-brighter))}.reptile-details-btn.enhanced{display:inline-block;margin:0 auto;padding:10px 20px;background:linear-gradient(45deg,#0080bf,#1a9fd9);color:#fff;border:none;border-radius:20px;font-weight:700;font-size:12px;cursor:pointer;transition:all .3s ease;box-shadow:0 3px 10px #0000004d;text-transform:uppercase;letter-spacing:.5px}.reptile-details-btn.enhanced:hover{transform:translateY(-2px);box-shadow:0 5px 15px #0006;background:linear-gradient(45deg,#1a9fd9,#33b3e6)}.fish-default-tabs{border:1px solid rgba(0,157,255,.5);border-radius:8px;padding:15px}.fish-default-species-row{display:flex;align-items:center;margin-bottom:15px}.fish-default-species-row h3{color:#fff;margin:0;font-size:14px;min-width:100px}.fish-default-row-container{flex:1}.fish-default-divider{border:0;height:1px;background:rgba(0,157,255,.2);margin:0 0 15px}.fish-default-tab-content{margin-top:20px}.fish-default-habitat-fill{width:var(--habitat-percentage)}.filter-section{margin:20px 10px}.products-section{margin:30px 10px 20px}.product-star-rating-filled{color:#ff0}.product-star-rating-empty{color:#555}.fish-search-container.expanded{margin-bottom:250px}.search-results-container{position:absolute;top:calc(100% + 8px);left:0;right:0;width:100%;min-width:100%;max-height:400px;overflow-y:auto;overflow-x:hidden;z-index:999;background-color:#1a1a1af2;border-radius:16px;border:1px solid rgba(255,255,255,.1);display:none;box-shadow:0 4px 15px #0000004d;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:fadeInDown .2s ease-out;box-sizing:border-box}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.search-results-container::-webkit-scrollbar{width:6px}.search-results-container::-webkit-scrollbar-track{background:transparent}.search-results-container::-webkit-scrollbar-thumb{background:rgba(255,255,255,.2);border-radius:3px}.search-results-container::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.3)}.loading-container{text-align:center;padding:20px;color:#fff}.loading-dots{display:flex;justify-content:center;margin-bottom:10px}.dot{width:10px;height:10px;margin:0 5px;background-color:#00a3ff;border-radius:50%;display:inline-block;animation:dotPulse 1.4s infinite ease-in-out}.dot:nth-child(1){animation-delay:0s}.dot:nth-child(2){animation-delay:.2s}.dot:nth-child(3){animation-delay:.4s}@keyframes dotPulse{0%,80%,to{transform:scale(0);opacity:0}40%{transform:scale(1);opacity:1}}.rarity-value{font-family:Roobert,sans-serif;color:#fff;margin:0;line-height:1;font-weight:700}.rarity-total{font-size:60px}.rarity-common{font-size:48px}.rarity-uncommon{font-size:36px}.rarity-rare{font-size:24px}.info-button{background-color:transparent;border:none;color:var(--primary-color);cursor:pointer;font-size:14px;margin-left:5px}.rarity-chart-container{width:300px;height:300px;display:flex;justify-content:center;align-items:center}.rarity-chart-container.no-margin{margin-left:0}.habitat-chart-container{margin-top:10px;margin-left:10px;margin-right:10px;max-width:560px;background-color:#1a1a1a;border-radius:8px;padding:20px;box-shadow:0 4px 10px #0000004d;display:flex;justify-content:center;align-items:center}.habitat-chart{width:100%;max-width:100%;height:350px;display:block;margin:0 auto}.fish-card{min-width:160px;width:160px;background-color:#1a1a1a;border-radius:12px;padding:10px;text-align:center;box-shadow:0 4px 10px #0003;display:flex;flex-direction:column;align-items:center;justify-content:space-between;height:230px;flex-shrink:0}.fish-card.longest-fish{position:relative;display:flex;flex-direction:column;min-height:240px;box-sizing:border-box;padding-bottom:10px}.fish-card.dangerous-fish{position:relative;display:flex;flex-direction:column;min-height:280px;box-sizing:border-box;padding-bottom:80px}.fish-card img{width:100%!important;min-width:140px!important;height:120px!important;border-radius:8px;object-fit:contain!important;margin-bottom:6px;display:block}.fish-card img.longest-fish-image,.fish-card img.dangerous-fish-image{width:100%;height:auto;object-fit:cover;max-height:100px}.fish-name{font-family:Roobert,sans-serif;font-size:15px;color:#fff;margin:6px 0 2px;font-weight:700;width:100%;overflow:visible;white-space:normal;word-break:break-all;word-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;text-align:center;min-height:28px;line-height:14px}.fish-name.longest-fish-name,.fish-name.dangerous-fish-name{margin:8px 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.fish-length{font-family:Roobert,sans-serif;font-size:13px;color:#b4b4b4;font-weight:700;margin:2px 0 6px}.fish-length.longest-fish-length{margin:4px 0}.fish-card-bottom{margin-top:auto;display:flex;flex-direction:column;align-items:center;gap:12px;width:100%;position:absolute;bottom:10px;left:0;right:0}.danger-badge{margin:4px 0 20px}.fish-rarity{font-family:Roobert,sans-serif;font-size:9px;color:#fff;padding:2px 8px;border-radius:10px;display:inline-block;margin-bottom:4px;text-transform:uppercase;font-weight:700}.fish-rarity.common{background-color:var(--gray-color)}.fish-rarity.uncommon{background-color:#4caf50}.fish-rarity.rare{background-color:#2196f3}.view-details-btn{font-family:Roobert,sans-serif;font-size:10px;padding:5px 0;width:90%;background-color:#353935;color:#fff;border:none;border-radius:5px;cursor:pointer;transition:background-color .2s}.view-details-btn:hover{background-color:#4a4e4a}.fish-details-btn{font-family:Roobert,sans-serif;font-size:10px;padding:5px 30px;background-color:#353935;color:#fff;border:none;border-radius:5px;cursor:pointer;transition:background-color .2s}.fish-details-btn:hover{background-color:#4a4e4a}.fish-details-btn.enhanced{display:inline-block;margin:0 auto;padding:6px 12px;background:linear-gradient(45deg,#0080bf,#1a9fd9);color:#fff;border:none;border-radius:15px;font-weight:700;font-size:10px;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 6px #0000004d;text-transform:uppercase;letter-spacing:.3px}.fish-details-btn.enhanced:hover{transform:translateY(-2px);box-shadow:0 4px 10px #0006;background:linear-gradient(45deg,#1a9fd9,#33b3e6)}.fish-details-btn.enhanced.species-list{padding:10px 20px;border-radius:20px;font-size:12px;box-shadow:0 3px 10px #0000004d;letter-spacing:.5px}.fish-details-btn.enhanced.species-list:hover{box-shadow:0 5px 15px #0006}.fish-type-tabs{display:flex;gap:10px;font-family:Roobert,sans-serif;font-weight:700;font-size:14px;justify-content:center;margin:20px 0}.mammal-category-tab{flex:0 0 auto;padding:8px 15px;background-color:#444;color:#fff;border:none;border-radius:4px;cursor:pointer;white-space:nowrap;font-weight:700}.mammal-card{background:linear-gradient(135deg,rgba(0,128,191,.1) 0%,rgba(0,0,0,.4) 100%);margin-bottom:20px;border-radius:12px;overflow:hidden;box-shadow:0 4px 15px #0080bf33;transition:all .3s ease;position:relative}.mammal-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0080bf4d}.mammal-type-stripe{position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--type-color) 0%,var(--rarity-color) 100%)}.mammal-image-container{width:90px;height:90px;overflow:hidden;border-radius:8px;margin-right:15px;flex-shrink:0;box-shadow:0 2px 8px #0000004d}.mammal-image-container img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.mammal-image-container img:hover{transform:scale(1.1)}.mammal-card-title h4{margin:0 0 8px;color:#fff;font-size:16px;text-shadow:1px 1px 2px rgba(0,0,0,.5)}.mammal-card-title p{margin:0 0 10px;color:#ccc;font-size:12px;font-style:italic}.mammal-card-badges{display:flex;gap:8px;flex-wrap:wrap}.mammal-card-badges .rarity-badge{padding:4px 12px;border-radius:15px;font-size:11px;font-weight:700;background:linear-gradient(45deg,var(--rarity-color),var(--rarity-color-bright));color:#fff;text-shadow:1px 1px 1px rgba(0,0,0,.5);box-shadow:0 2px 4px #0000004d}.mammal-card-badges .type-badge{padding:4px 12px;border-radius:15px;font-size:11px;font-weight:700;background:linear-gradient(45deg,var(--type-color),var(--type-color-bright));color:#fff;text-shadow:1px 1px 1px rgba(0,0,0,.5);box-shadow:0 2px 4px #0000004d}.mammal-decorative-divider{height:2px;background:linear-gradient(90deg,transparent 0%,var(--type-color) 20%,var(--rarity-color) 50%,var(--type-color) 80%,transparent 100%);margin:0 15px 10px}.mammal-decorative-divider.no-chart{margin:0 15px}.mammal-season-chart-container{width:100%;margin:0 0 10px;height:200px;display:flex;justify-content:center;align-items:center}.mammal-season-chart{width:100%;max-width:100%}.mammal-card-details{padding:15px;text-align:center;background:rgba(0,0,0,.2)}.mammal-details-btn{display:inline-block;margin:0 auto;padding:10px 20px;background:linear-gradient(45deg,var(--type-color),var(--type-color-bright));color:#fff;border:none;border-radius:20px;font-weight:700;font-size:12px;cursor:pointer;transition:all .3s ease;box-shadow:0 3px 10px #0000004d;text-transform:uppercase;letter-spacing:.5px}.mammal-details-btn:hover{transform:translateY(-2px);box-shadow:0 5px 15px #0006;background:linear-gradient(45deg,var(--type-color-bright),var(--type-color-brighter))}.fish-type-tab{padding:10px 20px;background-color:#1a1a1a;color:#fff;border:none;border-radius:8px;cursor:pointer;font-family:Roobert,sans-serif;font-size:14px;transition:background-color .3s ease}.fish-type-tab.active{background-color:var(--primary-color)}.fish-type-tab:hover{background-color:#0056b3}.danger-badge{background-color:#ff3a3a;color:#fff;border-radius:15px;padding:3px 8px;font-size:11px;font-weight:700;margin:4px 0;display:inline-block;text-transform:uppercase}.danger-badge.venomous,.danger-badge.venemous{background-color:indigo}.danger-badge.poisonous{background-color:#7cb342}.danger-badge.harmful{background-color:#ff3a3a}.danger-badge.harmless{background-color:var(--gray-color)}.danger-badge.unknown{background-color:#000}.longest-fish-container{display:flex;overflow-x:auto;overflow-y:hidden;flex-wrap:nowrap;gap:12px;padding:16px;background-color:#333;border-radius:0;visibility:visible!important;opacity:1!important;scrollbar-width:thin;scrollbar-color:#555 transparent}.dangerous-carousel{display:flex;overflow-x:auto;gap:10px;padding:10px;background-color:#333;border-radius:0}.dangerous-fish-card{min-width:120px;background-color:#1a1a1a;border-radius:12px;padding:10px;text-align:center;box-shadow:0 4px 10px #0003;display:flex;flex-direction:column;justify-content:space-between;height:100%}.dangerous-fish-card img{width:100%;border-radius:8px;max-height:120px;object-fit:cover}.fish-danger-level{font-family:Roobert,sans-serif;font-size:10px;color:tomato;margin-bottom:5px}.fish-search-container{position:relative;margin:0 10px 20px;width:calc(100% - 20px);z-index:50}.fish-search-input{width:100%;max-width:100%;height:36px;padding:0 16px;border-radius:20px;border:1px solid rgba(255,255,255,.1);background-color:#1a1a1ae6;color:#fff;font-family:Roobert,sans-serif;font-size:14px;outline:none;transition:all .2s ease;box-sizing:border-box;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:block}.fish-search-input:hover{background-color:#1a1a1af2;border-color:#fff3}.fish-search-input:focus{background-color:#1a1a1af2;border-color:#ffffff40;box-shadow:0 2px 8px #0000004d}.fish-search-input::placeholder{color:#888}.species-search-container{margin:15px 10px 10px}.species-search-input{width:100%;padding:8px 16px;border:1px solid rgba(255,255,255,.3);border-radius:20px;background-color:#1a1a1ae6;color:#fff;font-family:Roobert,sans-serif;font-size:12px;font-weight:500;outline:none;transition:all .2s ease;box-sizing:border-box}.species-search-input:hover{border-color:#ffffff80;background-color:#232323e6}.species-search-input:focus{border-color:#ffffff80;background-color:#232323e6}.species-search-input::placeholder{color:#ffffff80;font-style:italic}.species-filter-container{display:flex;gap:10px;margin:10px 10px 15px;align-items:center;justify-content:flex-start}.species-filter-dropdown{padding:8px 28px 8px 16px;border:1px solid rgba(255,255,255,.3);border-radius:20px;background-color:#1a1a1ae6;background-image:url('data:image/svg+xml;charset=US-ASCII,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 4 5"><path fill="white" d="M2 0L0 2h4zm0 5L0 3h4z"/></svg>');background-repeat:no-repeat;background-position:right 8px center;background-size:8px;color:#fff;font-family:Roobert,sans-serif;font-size:12px;font-weight:500;cursor:pointer;outline:none;transition:all .2s ease;min-width:120px;appearance:none;-webkit-appearance:none;-moz-appearance:none}.species-filter-dropdown:hover{border-color:#ffffff80;background-color:#232323e6}.search-result-item{display:grid;grid-template-columns:70px 1fr auto;gap:12px;padding:12px 16px;transition:background .15s ease;border-bottom:1px solid rgba(255,255,255,.05);align-items:center;width:100%;box-sizing:border-box}.search-result-item:first-child{border-radius:16px 16px 0 0}.search-result-item:last-child{border-bottom:none;border-radius:0 0 16px 16px}.search-result-item:only-child{border-radius:16px}.search-result-item:hover{background-color:#ffffff14}.search-result-item img{width:70px;height:45px;border-radius:8px;object-fit:contain;background-color:#0006;border:1px solid rgba(255,255,255,.1)}.search-result-text{display:flex;flex-direction:column;gap:3px;min-width:0}.search-result-name{font-family:Roobert,sans-serif;color:#fff;font-size:13px;margin:0;font-weight:600;letter-spacing:.2px;line-height:1.3}.search-result-scientific{font-family:Roobert,sans-serif;color:#999;font-size:11px;margin:0;font-weight:400;font-style:italic;letter-spacing:.1px;line-height:1.3}.search-result-buttons{display:flex;gap:6px;align-items:center;justify-content:flex-end}.details-btn{padding:6px 12px;background-color:#007bff;color:#fff;border:none;border-radius:6px;cursor:pointer;font-family:Roobert,sans-serif;font-size:11px;font-weight:600;transition:all .2s ease;white-space:nowrap}.details-btn:hover{background-color:#06c;transform:translateY(-1px);box-shadow:0 2px 8px #007bff4d}.search-placeholder{padding:15px;color:#888;text-align:center;font-family:Roobert,sans-serif;font-size:13px}.fish-default-tabs{display:flex;flex-direction:column;gap:8px;padding:8px;background-color:#1a1a1af2;border-radius:8px;margin:0 8px 16px}.fish-row,.mammal-row,.reptile-row{display:flex;flex-wrap:wrap;gap:4px;width:100%;justify-content:center}.fish-default-tab{display:flex;align-items:center;padding:6px;background-color:transparent;border:none;border-radius:4px;cursor:pointer;transition:all .2s ease;min-width:40px;max-width:40px;overflow:hidden;color:#fff}.fish-default-tab:hover{background-color:#ffffff1a}.fish-default-tab.active{background-color:#fff3;max-width:200px;outline:2px solid #007BFF;outline-offset:-2px}.fish-default-tab-icon{width:24px;height:24px;margin-right:8px;object-fit:contain;flex-shrink:0;filter:brightness(0) invert(1)}.tab-label{font-size:14px;font-family:Roobert,sans-serif;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:0;width:0;font-weight:700;transition:opacity .2s ease,width .2s ease}.fish-default-tab.active .tab-label{opacity:1;width:auto}.fish-default-tab-content{font-family:Roobert,sans-serif;background:#1A1A1A;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);width:100%;padding:2px;border-radius:10px;box-shadow:0 4px 8px #0003;border:1px solid #007BFF;transition:all .3s ease-in-out;height:236px;margin-top:8px}.fish-default-tab-panel{display:none}.fish-default-tab-panel.active{display:block}.fish-default-content-container{display:flex;align-items:center;gap:5px;padding:5px;width:100%;flex-wrap:wrap}.fish-default-image{width:180px;height:180px;max-width:200px;max-height:200px;border-radius:8px;object-fit:cover;flex-shrink:0}.fish-default-text-container{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0;max-width:60%;overflow-wrap:break-word;word-wrap:break-word;text-align:left;max-height:200px}.fish-default-species-count{font-size:12px;font-weight:700;color:#fff;overflow-wrap:break-word;text-align:center}.fish-default-description{font-size:12px;color:#bbb;line-height:1.5;overflow-wrap:break-word;text-align:center;max-width:95%}.fish-default-size-range{font-size:12px;font-weight:700;color:#fff;overflow-wrap:break-word;text-align:center}.fish-default-habitat-bar{width:100%;height:25px;background:linear-gradient(90deg,#004080,#0059b3,#007BFF);border-radius:10px;overflow:hidden;display:flex;position:relative;font-size:8px;color:#fff;margin-top:5px;box-shadow:inset 0 0 10px #00000080}.fish-default-habitat-fill{height:100%;display:flex;align-items:center;justify-content:center;white-space:nowrap;font-weight:700;transition:width .3s ease-in-out;position:relative;background:rgba(255,255,255,.2)}.fish-default-habitat-text{font-size:8px;color:#fff;padding:0 5px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fish-default-habitat-fill:nth-child(1){background:rgba(255,255,255,.15)}.fish-default-habitat-fill:nth-child(2){background:rgba(255,255,255,.25)}.fish-default-habitat-fill:nth-child(3){background:rgba(255,255,255,.35)}.fish-default-habitat-fill:nth-child(4){background:rgba(255,255,255,.45)}.species-filter-grid{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;align-items:center;width:100%;max-width:100%;padding:8px;background-color:#1a1a1ae6;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:20px;border:1px solid rgba(255,255,255,.1);min-height:55px;overflow-y:hidden;box-sizing:border-box}.species-filter-image{width:50px;height:50px;border-radius:50%;object-fit:cover;position:relative;transition:transform .2s ease-in-out;cursor:pointer}.species-filter-image-container{position:relative;display:inline-flex;flex-direction:column;align-items:center;gap:4px}.species-remove-btn{position:absolute;top:-5px;right:-5px;width:20px;height:20px;background:rgba(220,53,69,.9);color:#fff;font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;border-radius:50%;opacity:0;transition:opacity .3s ease-in-out;cursor:pointer;z-index:10;border:2px solid rgba(255,255,255,.2)}.species-filter-image-container:hover .species-remove-btn{opacity:1}.species-rarity-dropdown{width:85px;padding:3px 6px;background-color:#1a1a1af2;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:8px;font-family:Roobert,sans-serif;font-size:10px;font-weight:600;text-align:center;cursor:pointer;outline:none;transition:all .2s ease;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.species-rarity-dropdown:hover{border-color:#fff6;background-color:#232323f2}.species-rarity-dropdown:focus{border-color:#0080bf;box-shadow:0 0 0 2px #0080bf33}.species-rarity-dropdown option{background-color:#1a1a1a;color:#fff;padding:4px}.add-fish-btn{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.6);padding:6px 12px;font-size:11px;font-family:Roobert,sans-serif;font-weight:600;border-radius:6px;cursor:pointer;transition:all .2s ease;white-space:nowrap}.add-fish-btn:hover{background:rgba(255,255,255,.15);border-color:#fff;transform:translateY(-1px);box-shadow:0 2px 8px #fff3}.add-fish-btn:active{transform:translateY(0);opacity:.9}.fish-filter-title{font-family:Roobert,sans-serif;font-size:10px;font-weight:900;color:#555;text-align:left;width:100%;margin-bottom:3px;padding-left:0}.fish-filter-divider{width:100%;height:2px;background-color:#555;border:none;margin-bottom:10px}.species-placeholder{font-family:Roobert,sans-serif;color:#ffffff80;font-size:13px;text-align:center;margin:0;font-style:italic}.product-type-filter-container{display:flex;justify-content:center;align-items:center;padding:5px 0;gap:10px;margin:10px 0 0}.product-type-filter-title{display:none}.product-type-filter-buttons{display:flex;gap:6px;padding:8px;border-radius:8px;background:rgba(51,51,51,.7)}.product-type-filter-btn{font-size:12px;font-weight:600;color:#fff;background-color:#333;padding:8px 12px;border-radius:6px;border:none;cursor:pointer;transition:all .2s ease-in-out;text-align:center;font-family:Roobert,sans-serif}.product-type-filter-btn:hover{background-color:#444}.product-type-filter-btn.active{background-color:#007bff;box-shadow:0 0 8px #007bff80}.species-search-container{margin:15px 10px}.species-search-container input{width:95%;padding:8px 12px;border-radius:20px;border:none;background-color:#1a1a1a;color:#fff;font-family:Roobert,sans-serif;font-size:14px;outline:none;transition:all .3s ease}.species-search-container input:focus{background-color:#1a1a1a;box-shadow:0 0 0 2px var(--primary-color)}.species-search-container input::placeholder{color:#888}.all-species-container-wrapper{max-height:600px;overflow-y:auto;margin:10px;padding:5px;background-color:#1a1a1a;border-radius:10px;scrollbar-width:thin;scrollbar-color:var(--primary-color) #333}.all-species-container{display:flex;flex-direction:column;gap:15px;padding:10px 5px}.species-card{background:linear-gradient(145deg,#222,#1a1a1a);border-radius:12px;overflow:hidden;box-shadow:0 4px 15px #0000004d;margin-bottom:5px;border-left:3px solid var(--primary-color);transition:transform .2s ease,box-shadow .2s ease}.species-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0006}.species-card-header{display:flex;padding:12px;background-color:#0003;align-items:center}.species-image-container{max-width:100px;max-height:80px;border-radius:10px;overflow:hidden;border:2px solid #333;display:inline-flex;align-items:center;justify-content:center;background-color:#000}.species-card-header img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:8px}.species-card-title{display:flex;flex-direction:column;justify-content:center;margin-left:12px;flex:1}.species-card-badges{display:flex;gap:8px;flex-wrap:wrap}.species-card-details{padding:12px 15px;display:flex;flex-direction:column;gap:8px}.species-detail{display:flex;justify-content:space-between;align-items:center;padding:5px 0;border-bottom:1px solid rgba(255,255,255,.1)}.detail-label{font-family:Roobert,sans-serif;font-size:12px;color:#888;font-weight:500}.detail-value{font-family:Roobert,sans-serif;font-size:12px;color:#fff;font-weight:600}.species-details-btn{font-family:Roobert,sans-serif;font-size:12px;font-weight:600;padding:8px 0;margin-top:8px;background-color:var(--primary-color);color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background-color .2s ease;text-transform:uppercase;letter-spacing:1px}.species-details-btn:hover{background-color:#0095c0}.rarity-badge{font-family:Roobert,sans-serif;font-size:10px;color:#fff;padding:2px 8px;border-radius:12px;text-transform:uppercase;font-weight:600;letter-spacing:.5px}.rarity-badge.common{background-color:var(--gray-color)}.rarity-badge.uncommon{background-color:#4caf50}.rarity-badge.rare{background-color:#2196f3}.ratings-container{margin-top:10px;margin-left:10px;margin-right:10px;max-width:560px;background-color:#1a1a1a;border-radius:8px;padding:20px;display:flex;justify-content:space-around;align-items:center;box-shadow:0 4px 10px #0000004d}.rating-section-global{flex:1;text-align:center;position:relative;max-width:100px;max-height:100px}.rating-section-avg-species{flex:1;text-align:center;position:relative;max-width:150px;max-height:150px;margin-left:50px;margin-right:50px}.rating-section-diversity{flex:1;text-align:center;position:relative;max-width:100px;max-height:100px}.rating-section canvas{width:100%;height:100%;max-width:100%;max-height:100%}.rating-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;width:100%;pointer-events:none;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center}.rating-score{font-family:Roobert,sans-serif;margin:0;text-align:center;font-weight:700;font-size:1.5em}.rating-label{font-family:Roobert,sans-serif;margin:0;text-align:center;font-weight:400;font-size:.8em}.rating-section-global .rating-score,.rating-section-diversity .rating-score{font-size:32px}.rating-section-avg-species .rating-score{font-size:40px}.rating-section-global .rating-label,.rating-section-diversity .rating-label{font-size:10px}.rating-section-avg-species .rating-label{font-size:12px}.rating-stars{color:var(--highlight-color);font-size:20px}.fa-star{color:var(--highlight-color)}.error-message{color:#ff5252;margin-bottom:15px;font-size:14px;border-radius:4px;padding:8px 12px;background-color:#e5393533;display:flex;align-items:center;justify-content:center;text-align:center;margin-left:auto;margin-right:auto}.error-message:empty{display:none}.error-message:before{content:"⚠️";margin-right:8px}.success-message{color:#69f0ae;margin-bottom:15px;font-size:14px;border-radius:4px;padding:8px 12px;background-color:#43a04733;display:flex;align-items:center;justify-content:center;text-align:center;margin-left:auto;margin-right:auto;background-color:var(--success-color);animation:fadeIn .3s ease-in-out}.success-message:empty{display:none}.success-message:before{content:"✅";margin-right:8px}.success-message p{margin:5px 0}.success-message strong{font-weight:600}.success-message small{font-size:12px;opacity:.9}#reset-error{color:var(--error-color);font-size:14px;margin:10px 0;padding:8px;background-color:#dc35451a;border-left:3px solid var(--error-color);border-radius:2px;display:none}#reset-error:not(:empty){display:block}.reset-instructions{color:#ffffffd9;font-family:Roobert,sans-serif;font-size:12px;line-height:1.5;margin:5px 0 20px;text-align:center;font-weight:400;padding:0 10px;letter-spacing:.2px}.warning-banner{font-family:Roobert,sans-serif;font-size:9px;background-color:#1a1a1a;color:#fff;font-weight:700;text-align:center;padding:10px;border-radius:8px;margin:5px 10px}.watching-details-container{display:flex;flex-direction:column;justify-content:center;align-items:center;height:auto;text-align:center;background-color:#343a40;padding:20px;border-radius:10px;box-shadow:0 4px 8px #0000001a;margin:20px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.watching-details-bold-text{font-family:Roobert,sans-serif;font-size:18px;color:#fff;font-weight:700;margin-bottom:10px}.watching-details-regular-text{font-family:Roobert,sans-serif;font-size:14px;color:#fff;font-weight:400;opacity:.6;margin-bottom:10px}.watching-learn-more-btn{margin-top:10px;padding:12px 25px;background-color:#007bff;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:700;transition:background-color .3s ease}.watching-learn-more-btn:hover{background-color:#0056b3}.signup-confirmation-container{background-color:var(--primary-color);color:#fff;border-radius:8px;padding:20px;width:100%;box-sizing:border-box;text-align:center}.signup-confirmation-icon-wrapper{margin-bottom:15px}.signup-confirmation-icon{font-size:48px}.signup-confirmation-title{margin:10px 0;font-size:20px;font-weight:500}.signup-confirmation-content{margin:15px 0}.signup-confirmation-email-label{margin:0 0 5px}.signup-confirmation-email-display{background-color:#fff3;padding:8px;border-radius:4px;word-break:break-all;margin:0 auto;text-align:center;display:inline-block;max-width:100%}.signup-confirmation-button{width:100%;background-color:#fff;color:var(--primary-color);border:none;padding:10px;border-radius:4px;font-weight:700;cursor:pointer;margin:15px 0;font-family:Roobert,sans-serif}.signup-confirmation-button:hover{background-color:#f0f0f0}.signup-confirmation-info-box{background-color:#0003;border-radius:6px;padding:10px;margin-top:15px;text-align:left}.signup-confirmation-info-text{margin:0;font-size:14px}.signup-confirmation-info-icon{margin-right:8px}.feature-selection-popup-container{background:rgba(0,0,0,.9);padding:15px;border-radius:8px;color:#fff;font-family:Roobert,sans-serif;min-width:300px;max-width:100%;box-shadow:0 4px 20px #0000004d;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.feature-selection-list{max-height:400px;overflow-y:auto;margin-top:10px}.feature-selection-list::-webkit-scrollbar{width:6px}.feature-selection-list::-webkit-scrollbar-track{background:rgba(255,255,255,.05);border-radius:3px}.feature-selection-list::-webkit-scrollbar-thumb{background:rgba(255,255,255,.2);border-radius:3px}.feature-selection-list::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.3)}.feature-selection-title{color:#fff;font-size:14px;font-weight:600;margin-bottom:12px;text-align:center;border-bottom:1px solid rgba(255,255,255,.2);padding-bottom:8px}.feature-selection-option{display:flex;align-items:center;padding:10px;margin:6px 0;background:rgba(255,255,255,.05);border-radius:6px;cursor:pointer;transition:all .2s ease;border:1px solid transparent}.feature-selection-option:hover{background:rgba(255,255,255,.1);border-color:#ffffff4d;transform:translateY(-1px)}.feature-selection-color{width:8px;height:100%;border-radius:4px;margin-right:12px;flex-shrink:0;min-height:45px}.feature-selection-content{flex:1;min-width:0}.feature-selection-option-title{color:#fff;font-size:13px;font-weight:500;margin-bottom:4px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical;line-clamp:2;-webkit-line-clamp:2}.feature-selection-category{color:#ffffffb3;font-size:11px;font-weight:400;margin-bottom:3px;text-transform:capitalize}.feature-selection-rating{color:#fffc;font-size:11px;font-weight:400}.global-sub-title{font-family:Roobert,sans-serif;font-size:18px;font-weight:900;color:#fff;text-align:center;margin-bottom:15px;margin-left:10px;text-transform:uppercase;letter-spacing:1px;margin-top:15px}.paragraph-text{font-family:Roobert,sans-serif;font-size:13px;color:#d3d3d3;line-height:1.5;margin-left:10px;max-width:530px;word-wrap:break-word;word-break:break-word;overflow-wrap:break-word;white-space:normal;display:inline}.description-ellipsis{opacity:.5;font-size:14px;margin-left:2px}.view-more-btn{background:transparent;border:none;color:#007bff;font-size:14px;font-family:Roobert,sans-serif;cursor:pointer;opacity:.7;transition:opacity .3s ease-in-out;text-decoration:underline;margin-left:4px;display:inline}.view-more-btn:hover{opacity:1}.input-note{display:block;font-family:Roobert,sans-serif;font-size:12px;color:#ffffff80;margin-top:6px;font-style:italic;padding-left:2px}.error-link{color:var(--primary-color);text-decoration:underline;font-weight:500;transition:color .2s ease}.error-link:hover{color:var(--highlight-color);text-decoration:none}@keyframes fadeInScale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes shake{10%,90%{transform:translate(-1px)}20%,80%{transform:translate(2px)}30%,50%,70%{transform:translate(-2px)}40%,60%{transform:translate(2px)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse-glow{0%,to{box-shadow:0 4px 8px #0000001a,0 0 #ffbf004d}50%{box-shadow:0 6px 12px #00000026,0 0 0 4px #ffbf001a}}.spot-category-dive{background-color:#0071af!important}.spot-category-snorkel{background-color:#1792d5!important}.spot-difficulty-easy{background-color:#50c878!important;color:#fff!important}.spot-difficulty-medium{background-color:orange!important;color:#fff!important}.spot-difficulty-hard{background-color:#dc3545!important;color:#fff!important}.spot-type-reef{background-color:#4a90e2!important}.spot-type-wreck{background-color:#8b4513!important}.spot-type-drift{background-color:#20b2aa!important}.spot-type-cave{background-color:#2f4f4f!important}.spot-type-wall{background-color:#6a5acd!important}.spot-type-beach{background-color:#f4a460!important}.spot-type-ocean{background-color:#4682b4!important}.spot-type-pinnacle{background-color:#9370db!important}.spot-type-channel{background-color:#5f9ea0!important}.spot-type-archaeological{background-color:peru!important}.spot-type-cavern{background-color:#483d8b!important}.spot-type-sandy-bottom{background-color:#deb887!important;color:#000!important}.spot-type-sea-loch{background-color:#2e8b57!important}.spot-type-muck{background-color:#8b7355!important}.spot-type-fjord{background-color:#4169e1!important}.spot-type-river{background-color:#4682b4!important}.spot-type-spring{background-color:#40e0d0!important;color:#000!important}.popup-type-badge{margin:2px;padding:2px 6px;border-radius:12px;font-size:11px;color:#fff;display:inline-block;font-weight:600;text-transform:capitalize}@media (max-width: 480px){#fixed-sidebar{left:10px;top:10px;height:calc(100vh - 20px);width:70px}#expand-sidebar{left:80px;top:10px;height:calc(100vh - 20px);width:calc(100vw - 100px);max-width:520px}.favorite-item{flex-direction:column;align-items:flex-start}.favorite-info{margin-bottom:10px;width:100%}.favorite-actions{width:100%;justify-content:flex-end}.mapboxgl-ctrl-geocoder{width:calc(100vw - 40px)!important;max-width:320px!important;min-width:280px!important;top:10px!important;right:10px!important}#reef-overlay-indicator{top:55px;right:25px;padding:6px 12px;font-size:12px;z-index:10!important}.reef-indicator-light{width:10px;height:10px}.reef-indicator-label{font-size:11px}.mapboxgl-ctrl-geocoder .suggestions{top:calc(100% + 4px)!important;left:0!important;right:0!important;width:100%!important;z-index:999999!important}.fish-popup-container{top:120px!important;right:10px!important;width:calc(100vw - 20px)!important;max-width:280px!important;height:calc(100% - 280px)!important}.fish-popup-close-btn{top:20px!important;right:15px!important}.fish-default-content-container{flex-direction:column;text-align:center}.fish-default-image{width:100%;max-width:250px}.fish-default-text-container{max-width:100%;text-align:center}}body #expand-sidebar{scrollbar-width:none!important;-ms-overflow-style:none!important}body #expand-sidebar::-webkit-scrollbar{display:none!important;width:0!important;background:transparent!important}body #expand-sidebar *::-webkit-scrollbar{display:none!important;width:0!important;background:transparent!important}body #expand-sidebar::-webkit-scrollbar-track,body #expand-sidebar *::-webkit-scrollbar-track,body #sidebar-content::-webkit-scrollbar-track,body #sidebar-content *::-webkit-scrollbar-track,body div#expand-sidebar::-webkit-scrollbar-track,body div#expand-sidebar div::-webkit-scrollbar-track,body div#expand-sidebar *::-webkit-scrollbar-track,html body #expand-sidebar::-webkit-scrollbar-track,html body #expand-sidebar *::-webkit-scrollbar-track{background:transparent!important;background-color:transparent!important;background-image:none!important;border:none!important;box-shadow:none!important;outline:none!important;display:none!important;visibility:hidden!important;opacity:0!important;width:0!important;height:0!important}body #expand-sidebar::-webkit-scrollbar,body #expand-sidebar *::-webkit-scrollbar{background:transparent!important;width:6px!important}body #expand-sidebar,body #expand-sidebar *,body #sidebar-content,body #sidebar-content *{scrollbar-color:rgba(80,80,80,.6) transparent!important;scrollbar-width:thin!important}@supports (-webkit-scrollbar-track-piece:start){body #expand-sidebar::-webkit-scrollbar-track-piece,body #expand-sidebar *::-webkit-scrollbar-track-piece{background:transparent!important;display:none!important}}body #expand-sidebar:focus::-webkit-scrollbar-track,body #expand-sidebar:hover::-webkit-scrollbar-track,body #expand-sidebar *:focus::-webkit-scrollbar-track,body #expand-sidebar *:hover::-webkit-scrollbar-track{background:transparent!important;background-color:transparent!important}.mammal-card{background-color:#1a1a1a;border-radius:12px;margin-bottom:15px;box-shadow:0 4px 10px #0003;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.mammal-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0006}.mammal-card-header{display:flex;padding:15px;align-items:center;position:relative}.mammal-image-container{width:80px;height:80px;border-radius:10px;overflow:hidden;border:2px solid #333;display:flex;align-items:center;justify-content:center;background-color:#000;margin-right:15px}.mammal-image-container img{width:100%;height:100%;object-fit:cover}.mammal-card-title{display:flex;flex-direction:column;justify-content:center;flex:1}.mammal-card-title h3{color:#fff;font-family:Roobert,sans-serif;font-size:16px;font-weight:600;margin:0 0 5px}.mammal-card-title p{color:#b4b4b4;font-family:Roobert,sans-serif;font-size:13px;margin:0;font-style:italic}.mammal-card-badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.type-badge{font-family:Roobert,sans-serif;font-size:10px;color:#fff;padding:2px 8px;border-radius:12px;text-transform:uppercase;font-weight:600;background-color:var(--primary-color)}.mammals-list-container{max-height:600px;overflow-y:auto;padding:10px}.mammals-list-container::-webkit-scrollbar-track{background:transparent}.mammal-category-tab{flex:0 0 auto;padding:8px 15px;background-color:#444;color:#fff;border:none;border-radius:4px;cursor:pointer;font-family:Roobert,sans-serif;font-weight:600;transition:all .2s ease;margin:0 2px}.mammal-category-tab:hover{background-color:#555}.mammal-category-tab.active{background-color:#0080bf}.mammal-tabs-container{display:flex;overflow-x:auto;gap:8px;margin:15px 0;padding-bottom:5px;justify-content:center}.custom-chart-tooltip{background-color:#1a1a1ae6!important;border-radius:4px!important;padding:8px 12px!important;color:#fff!important;font-family:Roobert,sans-serif!important;font-size:12px!important;border:1px solid #444!important}.species-carousel{display:flex;overflow-x:auto;gap:10px;padding:10px}.species-item{min-width:150px;background-color:#f0f0f0;border-radius:8px;padding:10px;text-align:center;box-shadow:0 2px 5px #0000001a}.coverage-summary-container{background-color:var(--background-color);border-radius:10px;padding:20px;margin:20px 10px;box-shadow:0 4px 8px #0003}.coverage-title{font-family:Roobert,sans-serif;font-size:18px;color:#fff;font-weight:700;margin-bottom:15px;margin-top:0;text-transform:uppercase;letter-spacing:.5px;text-align:center}.coverage-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}.coverage-item{position:relative;background:linear-gradient(135deg,rgba(0,172,223,.1),rgba(0,172,223,.05));border-radius:10px;padding:15px;border:1px solid rgba(0,172,223,.2);transition:all .3s ease;overflow:hidden;background-size:cover;background-position:center;background-repeat:no-repeat}.coverage-item[data-coverage=flat_coral_reef]{background:url(../assets/ocean_geo_images/flat_coral_reef_geo.jpg);background-size:cover;background-position:right center;background-repeat:no-repeat}.coverage-item[data-coverage=sloped_coral_reef]{background:url(../assets/ocean_geo_images/sloped_coral_reef_geo.jpg);background-size:cover;background-position:right center;background-repeat:no-repeat}.coverage-item[data-coverage=coral_mound]{background:url(../assets/ocean_geo_images/coral_mount_geo.jpg);background-size:cover;background-position:right center;background-repeat:no-repeat}.coverage-item[data-coverage=deep_lagoon]{background:url(../assets/ocean_geo_images/deep_lagoon_geo.jpg);background-size:cover;background-position:right center;background-repeat:no-repeat}.coverage-item[data-coverage=shallow_lagoon]{background:url(../assets/ocean_geo_images/shallow_lagoon_geo.jpg);background-size:cover;background-position:right center;background-repeat:no-repeat}.coverage-item[data-coverage=deep_sandy_bottom]{background:url(../assets/ocean_geo_images/deep_sandy_bottom_geo.jpg);background-size:cover;background-position:right center;background-repeat:no-repeat}.coverage-item[data-coverage=deep_rocky_bottom]{background:url(../assets/ocean_geo_images/deep_rocky_bottom_geo.jpg);background-size:cover;background-position:right center;background-repeat:no-repeat}.coverage-item[data-coverage=deep_mixed_bottom]{background:url(../assets/ocean_geo_images/deep_mixed_bottom_geo.jpg);background-size:cover;background-position:right center;background-repeat:no-repeat}.coverage-item:after{content:"";position:absolute;top:0;left:0;right:25%;bottom:0;background:linear-gradient(to right,rgba(26,26,26,.95) 0%,rgba(26,26,26,.9) 50%,rgba(26,26,26,.6) 75%,rgba(26,26,26,.2) 90%,transparent 100%);pointer-events:none;z-index:1}.coverage-item .coverage-name,.coverage-item .coverage-value{position:relative;z-index:2}.coverage-item:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(to bottom,var(--primary-color),rgba(0,172,223,.6))}.coverage-item:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00acdf33;border-color:#00acdf66}.coverage-name{font-family:Roobert,sans-serif;font-size:13px;color:#ffffffe6;font-weight:500;margin-bottom:8px;line-height:1.3}.coverage-value{font-family:Roobert,sans-serif;font-size:20px;color:var(--primary-color);font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.3)}.coverage-item:has(.coverage-name:contains("Deep Rocky/Reef Bottom")),.coverage-item[data-type=deep-rocky]{background:linear-gradient(135deg,rgba(139,69,19,.2),rgba(139,69,19,.1));border-color:#8b45134d}.coverage-item[data-type=deep-rocky]:before{background:linear-gradient(to bottom,#8B4513,rgba(139,69,19,.6))}.coverage-item[data-type=deep-rocky]:hover{box-shadow:0 6px 20px #8b451333;border-color:#8b451380}.coverage-item[data-type=deep-rocky] .coverage-value{color:peru}@media (max-width: 600px){.coverage-list{grid-template-columns:1fr}}.location-stats-section{margin-top:20px}.location-description{margin-bottom:20px}.location-description-text{color:#ccc;font-size:14px;line-height:1.5;margin:10px 0}.stats-section-title{color:#fff;font-size:16px;font-weight:700;margin:15px 0 10px;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:5px}.stats-subtitle{color:#aaa;font-size:12px;margin:5px 0 15px;font-style:italic}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:15px 0}.stat-item{background:rgba(255,255,255,.05);border-radius:8px;padding:10px;display:flex;flex-direction:column;align-items:center;text-align:center;border:1px solid rgba(255,255,255,.1)}.stat-label{color:#aaa;font-size:11px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.stat-value{color:#fff;font-size:16px;font-weight:700}.month-selector{margin:20px 0;padding:15px;background:rgba(255,255,255,.05);border-radius:8px;border:1px solid rgba(255,255,255,.1)}.month-selector label{color:#fff;font-size:14px;display:block;margin-bottom:8px;font-weight:700}.month-selector select{width:100%;padding:8px 12px;background:rgba(0,0,0,.3);color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:6px;font-size:14px;cursor:pointer}.month-selector select:focus{outline:none;border-color:#fff6}.month-selector select option{background:#1a1a1a;color:#fff}.stats-loading{color:#aaa;text-align:center;padding:20px;font-style:italic}.stats-note{margin-top:15px;padding:10px;background:rgba(255,255,255,.03);border-radius:6px;border-left:3px solid rgba(255,255,255,.1)}.stats-note p{margin:0;color:#888;font-size:12px;line-height:1.4}@media (max-width: 768px){.stats-grid{grid-template-columns:1fr;gap:8px}.stat-item{padding:8px}.stat-value{font-size:14px}}.top-locations-title{text-align:center!important;letter-spacing:1px;font-weight:900!important;margin-top:20px!important;margin-bottom:20px!important}.top-locations-dark-container{background-color:transparent;border-radius:0;padding:0 20px;margin:20px 0;box-shadow:none}.categories-month-selector{margin:0 20px 20px;padding:0;border:none;background-color:transparent;box-shadow:none}.categories-month-selector select{position:relative!important;width:100%;padding:8px 30px 8px 12px;background-color:#1a1a1a;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:6px;font-size:14px;font-family:Roobert,sans-serif;cursor:pointer;z-index:1;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23FFFFFF' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right 8px center;background-repeat:no-repeat;background-size:16px}.categories-month-selector select:focus{outline:none;border-color:#fff6;box-shadow:0 0 0 2px #ffffff1a}.categories-month-selector select option{background:#1a1a1a;color:#fff;padding:8px}.categories-month-selector label{font-family:Roobert,sans-serif;font-size:12px;color:#b0bec5;display:block;margin-bottom:5px;font-weight:500}.categories-country-selector{margin:0 20px 20px;padding:0;border:none;background-color:transparent;box-shadow:none}.categories-country-selector select{position:relative!important;width:100%;padding:8px 30px 8px 12px;background-color:#1a1a1a;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:6px;font-size:14px;font-family:Roobert,sans-serif;cursor:pointer;z-index:1;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23FFFFFF' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right 8px center;background-repeat:no-repeat;background-size:16px}.categories-country-selector select:focus{outline:none;border-color:#fff6;box-shadow:0 0 0 2px #ffffff1a}.categories-country-selector select option{background:#1a1a1a;color:#fff;padding:8px}.categories-country-selector label{font-family:Roobert,sans-serif;font-size:12px;color:#b0bec5;display:block;margin-bottom:5px;font-weight:500}.location-placeholder-image{margin:20px 0;border-radius:12px;overflow:hidden}.placeholder-image-container{background:linear-gradient(135deg,#1a1a1a 0%,#2d3338 100%);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:40px 20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;position:relative}.placeholder-image-icon{font-size:48px;opacity:.7}.placeholder-image-text{color:#b0bec5;font-size:14px;font-family:Roobert,sans-serif;margin:0;font-weight:500}.location-default-image{margin:20px 0;border-radius:12px;overflow:hidden;position:relative;height:280px;background:linear-gradient(135deg,#0a4a6b 0%,#1e7ba8 50%,#2d8fb8 100%);display:flex;align-items:center;justify-content:center}.location-default-image[style*=background-image]{background-blend-mode:normal}.location-default-image[style*=background-image]:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(10,74,107,.3) 0%,rgba(30,123,168,.2) 50%,rgba(45,143,184,.1) 100%);z-index:1}.location-default-image .placeholder-overlay{z-index:2}.location-default-image .placeholder-overlay{position:absolute;top:10px;right:10px;background-color:#fffffff2;color:#333;padding:4px 8px;border-radius:4px;font-size:10px;font-weight:700;font-family:Roobert,sans-serif;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 4px #0003}.location-default-image .default-image-content{text-align:center;display:flex;flex-direction:column;align-items:center;gap:15px;color:#fff}.location-default-image .default-image-icon{font-size:64px;opacity:.8;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.location-default-image .default-image-text{color:#ffffffe6;font-size:16px;font-family:Roobert,sans-serif;margin:0;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.3)}.jellyfish-warning-banner{background-color:#d32f2f;color:#fff;padding:12px 20px;border-radius:8px;display:flex;align-items:center;gap:10px;margin-bottom:20px;font-weight:600;box-shadow:0 2px 8px #d32f2f4d}.jellyfish-icon{font-size:20px}.jellyfish-text{font-family:Roobert,sans-serif;font-size:14px;flex:1}.stats-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px;margin:0 20px 20px}.location-details-container{margin:0 20px}.location-month-selector{margin:0 20px 20px;padding:0;border:none;background-color:transparent;box-shadow:none}.location-month-selector select{position:relative!important;width:100%;padding:8px 30px 8px 12px;background-color:#1a1a1a;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:6px;font-size:14px;font-family:Roobert,sans-serif;cursor:pointer;z-index:1;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23FFFFFF' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right 8px center;background-repeat:no-repeat;background-size:16px}.location-month-selector select:focus{outline:none;border-color:#fff6;box-shadow:0 0 0 2px #ffffff1a}.location-month-selector select option{background:#1a1a1a;color:#fff;padding:8px}.location-month-selector label{font-family:Roobert,sans-serif;font-size:12px;color:#b0bec5;display:block;margin-bottom:5px;font-weight:500}.enhanced-stat-card{background-color:#1a1a1a;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:20px;display:flex;align-items:center;gap:15px;transition:all .2s ease}.enhanced-stat-card:hover{background-color:#2d3338;border-color:#ffffff26}.stat-card-icon{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;color:#fff;flex-shrink:0}.stat-card-info{flex:1}.stat-card-label{font-family:Roobert,sans-serif;font-size:14px;color:#b0bec5;margin-bottom:4px;font-weight:500}.stat-card-value{font-family:Roobert,sans-serif;font-size:18px;font-weight:700;line-height:1.2}.categories-container{margin:0;padding:0}.categories-header{margin-bottom:20px}.categories-list{display:flex;flex-direction:column}.category-winner-item{display:flex;align-items:flex-start;gap:15px;padding:20px;background-color:#1a1a1a;border:none;border-radius:10px;transition:all .2s ease;margin-bottom:15px;box-shadow:0 4px 8px #0000001a}.category-winner-item:last-child{margin-bottom:0}.category-winner-item.category-no-data{opacity:.6}.location-search-btn{width:32px;height:32px;border-radius:50%;background-color:#ffffff1a;border:2px solid rgba(255,255,255,.2);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;flex-shrink:0;font-size:14px;position:absolute;right:0;top:50%;transform:translateY(-50%)}.location-search-btn:hover{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff;transform:translateY(-50%)}.location-search-btn:active{transform:scale(.95)}.category-icon{font-size:20px;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}.category-info{flex:1}.category-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;position:relative;padding-right:40px}.category-title{font-family:Roobert,sans-serif;font-size:16px;font-weight:700;color:#fff;margin:0;flex:1}.category-value{font-family:Roobert,sans-serif;font-size:14px;font-weight:700;margin-left:10px}.category-location{margin-bottom:10px}.category-location .location-name{font-family:Roobert,sans-serif;font-size:14px;font-weight:600;color:#b0bec5}.category-stats-badges{margin:10px 0;flex-wrap:wrap}.category-stats-badges .product-badge{font-size:9px;padding:3px 8px;margin-right:5px;margin-bottom:5px}.location-description-short{font-family:Roobert,sans-serif;font-size:12px;color:#b0bec5;line-height:1.4;margin:10px 0 0}.no-data-message{font-family:Roobert,sans-serif;font-size:12px;color:#90a4ae;font-style:italic;margin:0}.no-locations-message{padding:20px;text-align:center}@media (max-width: 768px){.category-winner-item{padding:12px;gap:12px}.category-icon{width:35px;height:35px;font-size:18px}.category-title{font-size:14px}.category-value{font-size:12px}.category-stats-badges .product-badge{font-size:8px;padding:2px 6px}}.spot-summary-section{margin-top:40px}.spot-summary-stats{display:flex;flex-direction:column;gap:15px}.spot-summary-container-unified{background:#1b1b1b;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:20px;margin:0 10px;display:flex;flex-direction:column;gap:20px}.spot-overview-header{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;margin-bottom:20px}.spot-overview-icon{font-size:48px;margin-bottom:15px}.spot-overview-icon.hidden{display:none}.spot-overview-info{display:flex;flex-direction:column;align-items:center}.spot-overview-title{font-family:Roobert,sans-serif;font-size:18px;font-weight:500;color:#fff;margin:0 0 10px}.spot-overview-title.stats-title{font-size:14px;color:#b4b4b4;margin:0 0 5px;text-transform:uppercase;letter-spacing:1px}.spot-overview-description{color:#b4b4b4;font-family:Roobert,sans-serif;font-size:14px;margin-top:10px;line-height:1.5}.spot-overview-count{font-family:Roobert,sans-serif;font-size:32px;font-weight:700;color:#00a3ff;line-height:1}.spot-category-breakdown{display:grid;grid-template-columns:1fr 1fr;gap:15px}.spot-category-item{display:flex;align-items:center;gap:10px;background:rgba(0,0,0,.3);padding:12px 15px;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.spot-category-item .category-icon{font-size:24px}.spot-category-item .category-icon-img{width:28px;height:28px;object-fit:contain}.spot-category-item .category-label{flex:1;font-family:Roobert,sans-serif;font-size:13px;color:#fff}.spot-category-item .category-value{font-family:Roobert,sans-serif;font-size:18px;font-weight:700;color:#00a3ff}.spot-stat-card{display:flex;align-items:flex-start;gap:15px;background:rgba(0,0,0,.2);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:15px}.spot-stat-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:12px;font-size:24px;flex-shrink:0}.spot-stat-info{flex:1}.spot-stat-label{font-family:Roobert,sans-serif;font-size:13px;color:#b4b4b4;margin-bottom:5px;text-transform:uppercase;letter-spacing:.5px}.spot-stat-value{font-family:Roobert,sans-serif;font-size:28px;font-weight:700;line-height:1.2;margin-bottom:5px}.spot-stat-range{font-family:Roobert,sans-serif;font-size:12px;color:#888}.spot-section-title{font-family:Roobert,sans-serif;font-size:14px;color:#fff;margin:0 0 15px;display:flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:1px}.spot-section-title .section-icon{font-size:18px}.spot-side-by-side-container{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding-top:15px;border-top:1px solid rgba(255,255,255,.1)}@media (max-width: 768px){.spot-side-by-side-container{grid-template-columns:1fr}}.spot-difficulty-section{display:flex;flex-direction:column;gap:10px}.spot-difficulty-bars{display:flex;flex-direction:column;gap:12px}.difficulty-bar-container{display:flex;flex-direction:column;gap:6px}.difficulty-bar-label{display:flex;justify-content:space-between;align-items:center}.difficulty-name{font-family:Roobert,sans-serif;font-size:13px;color:#fff;font-weight:500}.difficulty-count{font-family:Roobert,sans-serif;font-size:12px;color:#b4b4b4}.difficulty-bar-track{height:8px;background:rgba(255,255,255,.1);border-radius:4px;overflow:hidden}.difficulty-bar-fill{height:100%;border-radius:4px;transition:width .5s ease}.spot-types-section{padding-top:20px;border-top:1px solid rgba(255,255,255,.1)}.spot-types-horizontal{display:flex;flex-wrap:wrap;gap:15px;margin-top:10px;justify-content:center}.spot-type-item{display:flex;align-items:center;background:rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:8px 12px}.spot-type-info{display:flex;align-items:center;gap:8px}.spot-type-name{font-family:Roobert,sans-serif;font-size:13px;color:#fff;text-transform:capitalize}.spot-type-count{font-family:Roobert,sans-serif;font-size:14px;color:#00a3ff;font-weight:700;min-width:20px;text-align:right}.spot-access-section,.spot-access-list{display:flex;flex-direction:column;gap:10px}.spot-access-item{display:flex;align-items:center;gap:10px;padding:8px 12px;background:rgba(255,255,255,.05);border-radius:6px;transition:background .3s ease}.spot-access-item:hover{background:rgba(255,255,255,.08)}.access-dot{width:8px;height:8px;background:#00A3FF;border-radius:50%;flex-shrink:0}.access-name{flex:1;font-family:Roobert,sans-serif;font-size:13px;color:#fff}.access-count{font-family:Roobert,sans-serif;font-size:12px;color:#b4b4b4}
