*{margin:0;padding:0;box-sizing:border-box}:root{--primary-bg:#ffffff;--secondary-bg:#ffffff;--accent-bg:#f5f7fa;--border-color:#d1d9e0;--text-primary:#1a1a1a;--text-secondary:#333333;--text-muted:#666666;--success-color:#28a745;--warning-color:#ffc107;--danger-color:#dc3545;--info-color:#007bff;--gradient-primary:linear-gradient(135deg, #4a90e2 0%, #357abd 100%);--gradient-light:linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);--gradient-card:linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);--shadow-sm:0 2px 4px rgba(0, 0, 0, 0.15);--shadow-md:0 4px 8px rgba(0, 0, 0, 0.15);--shadow-lg:0 8px 16px rgba(0, 0, 0, 0.15);--shadow-xl:0 16px 24px rgba(0, 0, 0, 0.2);--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--border-radius:0.5rem;--border-radius-lg:1rem;--border-radius-xl:1.5rem}.fishing-weather-dashboard,.fishing-weather-dashboard *{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,sans-serif!important;box-sizing:border-box!important;line-height:1.4!important}.fishing-weather-dashboard{width:100%!important;max-width:1400px!important;margin:0 auto!important;padding:var(--spacing-md)!important;background:var(--primary-bg)!important;color:var(--text-primary)!important;position:relative!important;border:2px solid var(--border-color)!important;border-radius:var(--border-radius-lg)!important;box-shadow:var(--shadow-lg)!important;z-index:1!important}.dashboard-header{background:var(--gradient-primary)!important;border-radius:var(--border-radius-xl)!important;padding:var(--spacing-xl)!important;margin-bottom:var(--spacing-xl)!important;box-shadow:var(--shadow-lg)!important;display:flex!important;justify-content:space-between!important;align-items:center!important;position:relative!important;overflow:hidden!important;border:1px solid #2c7be5!important}.dashboard-header::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(255,255,255,.1);backdrop-filter:blur(10px)}.location-info,.weather-summary{position:relative;z-index:2}.location-title{font-size:2.5rem!important;font-weight:800!important;color:#ffffff!important;margin-bottom:var(--spacing-xs)!important;text-shadow:0 2px 4px rgba(0,0,0,.5)!important;line-height:1.2!important}.current-time{font-size:1.1rem!important;color:rgba(255,255,255,.95)!important;font-weight:500!important;text-shadow:0 1px 2px rgba(0,0,0,.3)!important}.main-temp-display{display:flex!important;align-items:center!important;gap:var(--spacing-lg)!important}.main-weather-icon{width:100px!important;height:100px!important;filter:drop-shadow(0 4px 8px rgba(0,0,0,.3))!important}.current-temperature{font-size:4rem!important;font-weight:900!important;color:#ffffff!important;line-height:1!important;text-shadow:0 2px 4px rgba(0,0,0,.5)!important}.weather-condition{font-size:1.3rem!important;color:rgba(255,255,255,.95)!important;font-weight:600!important;text-transform:capitalize!important;margin-top:var(--spacing-sm)!important;text-shadow:0 1px 2px rgba(0,0,0,.3)!important}.weather-grid{display:grid!important;grid-template-columns:repeat(4,1fr)!important;grid-template-rows:repeat(2,1fr)!important;gap:var(--spacing-sm)!important;margin-bottom:var(--spacing-xl)!important;min-height:160px!important}.weather-card{background:var(--gradient-card)!important;border-radius:var(--border-radius-lg)!important;padding:var(--spacing-sm)!important;box-shadow:var(--shadow-md)!important;border:2px solid var(--border-color)!important;transition:all 0.3s ease!important;position:relative!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;justify-content:flex-start!important;min-height:100px!important}.weather-card:hover{transform:translateY(-4px)!important;box-shadow:var(--shadow-xl)!important;border-color:var(--info-color)!important}.card-header{display:flex!important;align-items:center!important;gap:var(--spacing-xs)!important;margin-bottom:var(--spacing-xs)!important;position:relative!important;z-index:2!important}.card-icon{width:32px!important;height:32px!important;filter:drop-shadow(0 2px 4px rgba(0,0,0,.15))!important}.card-title{font-size:0.9rem!important;font-weight:700!important;color:var(--text-primary)!important;text-transform:uppercase!important;letter-spacing:0.5px!important}.card-content{position:relative!important;z-index:2!important;flex:1!important;display:flex!important;flex-direction:column!important;justify-content:flex-start!important}.card-value{font-size:1.5rem!important;font-weight:800!important;color:var(--text-primary)!important;margin-bottom:var(--spacing-xs)!important;line-height:1!important}.card-subtitle{font-size:0.85rem!important;color:var(--text-secondary)!important;margin-bottom:var(--spacing-xs)!important;font-weight:600!important}.card-details{font-size:0.8rem!important;color:var(--text-muted)!important;font-weight:500!important}.forecast-section{background:var(--secondary-bg)!important;border-radius:var(--border-radius-xl)!important;padding:var(--spacing-xl)!important;box-shadow:var(--shadow-lg)!important;border:2px solid var(--border-color)!important;margin-bottom:var(--spacing-xl)!important}.forecast-title{font-size:1.8rem!important;font-weight:700!important;color:var(--text-primary)!important;margin-bottom:var(--spacing-lg)!important;text-align:center!important;padding-bottom:var(--spacing-md)!important;border-bottom:3px solid var(--border-color)!important}.forecast-timeline{display:grid!important;grid-template-columns:repeat(8,1fr)!important;gap:var(--spacing-sm)!important;overflow-x:auto!important;padding:var(--spacing-md) 0!important}.forecast-item{background:var(--gradient-light)!important;border-radius:var(--border-radius)!important;padding:var(--spacing-md)!important;text-align:center!important;box-shadow:var(--shadow-sm)!important;border:2px solid var(--border-color)!important;transition:all 0.3s ease!important;min-width:100px!important;display:flex!important;flex-direction:column!important;justify-content:space-between!important;min-height:140px!important}.forecast-item:hover{transform:translateY(-2px)!important;box-shadow:var(--shadow-md)!important;background:var(--gradient-card)!important;border-color:var(--info-color)!important}.forecast-time{font-size:0.9rem!important;color:var(--text-muted)!important;font-weight:600!important;margin-bottom:var(--spacing-sm)!important}.forecast-icon{width:40px!important;height:40px!important;margin:0 auto var(--spacing-sm)!important;display:block!important;filter:drop-shadow(0 2px 4px rgba(0,0,0,.15))!important}.forecast-temp{font-size:1.3rem!important;font-weight:700!important;color:var(--text-primary)!important;margin-bottom:var(--spacing-sm)!important}.forecast-details{font-size:0.8rem!important;color:var(--text-muted)!important;line-height:1.3!important;flex-grow:1!important;display:flex!important;align-items:center!important;justify-content:center!important}.loading-overlay{position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;background:rgba(255,255,255,.98)!important;display:flex!important;align-items:center!important;justify-content:center!important;z-index:1000!important;backdrop-filter:blur(8px)!important}.loading-content{text-align:center!important;padding:var(--spacing-xl)!important;background:var(--secondary-bg)!important;border-radius:var(--border-radius-xl)!important;box-shadow:var(--shadow-xl)!important;border:2px solid var(--border-color)!important}.loading-spinner{width:60px!important;height:60px!important;border:4px solid var(--border-color)!important;border-top:4px solid var(--info-color)!important;border-radius:50%!important;animation:spin 1s linear infinite!important;margin:0 auto var(--spacing-lg)!important}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.loading-message{font-size:1.1rem!important;color:var(--text-secondary)!important;font-weight:600!important}.error-panel{position:fixed!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important;background:var(--secondary-bg)!important;border-radius:var(--border-radius-xl)!important;padding:var(--spacing-xl)!important;box-shadow:var(--shadow-xl)!important;border:3px solid var(--danger-color)!important;z-index:1001!important;min-width:300px!important;text-align:center!important}.error-title{font-size:1.5rem!important;font-weight:700!important;color:var(--danger-color)!important;margin-bottom:var(--spacing-md)!important}.error-message{font-size:1rem!important;color:var(--text-secondary)!important;margin-bottom:var(--spacing-lg)!important;line-height:1.5!important}.error-retry{background:var(--danger-color)!important;color:white!important;border:none!important;border-radius:var(--border-radius)!important;padding:var(--spacing-md) var(--spacing-lg)!important;font-size:1rem!important;font-weight:600!important;cursor:pointer!important;transition:all 0.3s ease!important}.error-retry:hover{background:#c82333!important;transform:translateY(-1px)!important}.weather-card.success{border-left:6px solid var(--success-color)!important}.weather-card.warning{border-left:6px solid var(--warning-color)!important}.weather-card.danger{border-left:6px solid var(--danger-color)!important}.weather-card.info{border-left:6px solid var(--info-color)!important}@media (min-width:1200px){.forecast-timeline{grid-template-columns:repeat(8,1fr)!important;gap:var(--spacing-md)!important}.forecast-item{min-width:120px!important;padding:var(--spacing-lg)!important}}@media (max-width:1199px) and (min-width:768px){.forecast-timeline{grid-template-columns:repeat(4,1fr)!important;grid-template-rows:repeat(2,1fr)!important;gap:var(--spacing-md)!important}.forecast-item{min-width:100px!important;padding:var(--spacing-md)!important}}@media (max-width:767px){.forecast-timeline{grid-template-columns:repeat(2,1fr)!important;grid-template-rows:repeat(4,1fr)!important;gap:var(--spacing-sm)!important}.forecast-item{min-width:80px!important;padding:var(--spacing-sm)!important;min-height:120px!important}.forecast-temp{font-size:1.1rem!important}.forecast-details{font-size:0.7rem!important}}@media (max-width:480px){.forecast-timeline{grid-template-columns:1fr!important;max-height:400px!important;overflow-y:auto!important}.forecast-item{min-width:100%!important;padding:var(--spacing-sm)!important;min-height:80px!important;display:grid!important;grid-template-columns:auto 1fr auto auto!important;align-items:center!important;text-align:left!important;gap:var(--spacing-sm)!important}.forecast-time{margin:0!important;font-size:0.8rem!important}.forecast-icon{width:30px!important;height:30px!important;margin:0!important}.forecast-temp{font-size:1rem!important;margin:0!important}.forecast-details{font-size:0.7rem!important;margin:0!important;text-align:right!important}}@media (max-width:1200px){.weather-grid{grid-template-columns:repeat(3,1fr)!important;grid-template-rows:repeat(3,1fr)!important;min-height:420px!important}}@media (max-width:900px){.weather-grid{grid-template-columns:repeat(2,1fr)!important;grid-template-rows:repeat(4,1fr)!important;min-height:280px!important}.weather-card{min-height:90px!important}}@media (max-width:768px){.fishing-weather-dashboard{padding:var(--spacing-sm)!important}.dashboard-header{flex-direction:column!important;gap:var(--spacing-lg)!important;text-align:center!important;padding:var(--spacing-lg)!important}.location-title{font-size:2rem!important}.current-temperature{font-size:3rem!important}.main-weather-icon{width:80px!important;height:80px!important}.weather-grid{grid-template-columns:1fr!important;grid-template-rows:repeat(8,1fr)!important;gap:var(--spacing-md)!important;min-height:auto!important}.card-value{font-size:1.5rem!important}.weather-card{min-height:90px!important}.forecast-section{padding:var(--spacing-lg)!important}}@media (max-width:480px){.fishing-weather-dashboard{padding:var(--spacing-xs)!important}.dashboard-header{padding:var(--spacing-md)!important}.location-title{font-size:1.5rem!important}.current-temperature{font-size:2.5rem!important}.main-weather-icon{width:60px!important;height:60px!important}.card-value{font-size:1.3rem!important}.weather-card{padding:var(--spacing-xs)!important;min-height:80px!important}}@keyframes fadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{from{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.fishing-weather-dashboard{animation:fadeIn 0.6s ease-out!important}.weather-card{animation:slideIn 0.5s ease-out!important}.weather-card:nth-child(1){animation-delay:0.1s}.weather-card:nth-child(2){animation-delay:0.2s}.weather-card:nth-child(3){animation-delay:0.3s}.weather-card:nth-child(4){animation-delay:0.4s}.weather-card:nth-child(5){animation-delay:0.5s}.weather-card:nth-child(6){animation-delay:0.6s}.weather-card:nth-child(7){animation-delay:0.7s}.weather-card:nth-child(8){animation-delay:0.8s}.forecast-item{animation:slideIn 0.5s ease-out!important}.forecast-item:nth-child(1){animation-delay:0.1s}.forecast-item:nth-child(2){animation-delay:0.2s}.forecast-item:nth-child(3){animation-delay:0.3s}.forecast-item:nth-child(4){animation-delay:0.4s}.forecast-item:nth-child(5){animation-delay:0.5s}.forecast-item:nth-child(6){animation-delay:0.6s}.forecast-item:nth-child(7){animation-delay:0.7s}.forecast-item:nth-child(8){animation-delay:0.8s}.forecast-timeline::-webkit-scrollbar{height:6px!important;width:6px!important}.forecast-timeline::-webkit-scrollbar-track{background:var(--accent-bg)!important;border-radius:3px!important}.forecast-timeline::-webkit-scrollbar-thumb{background:var(--info-color)!important;border-radius:3px!important}.forecast-timeline::-webkit-scrollbar-thumb:hover{background:#0056b3!important}.hidden{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;z-index:-9999!important}.loading-overlay.hidden,.loading-overlay.force-hidden,#loading-overlay.hidden,#loading-overlay.force-hidden{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;z-index:-9999!important;position:absolute!important;top:-9999px!important;left:-9999px!important}.fade-in{opacity:0!important;animation:fadeIn 0.5s ease-out forwards!important}.slide-in{opacity:0!important;transform:translateX(-20px)!important;animation:slideIn 0.5s ease-out forwards!important}.weather-card:hover .card-icon{transform:scale(1.1)!important;transition:transform 0.3s ease!important}.weather-card:hover .card-value{color:var(--info-color)!important;transition:color 0.3s ease!important}.forecast-item:hover .forecast-icon{transform:scale(1.2)!important;transition:transform 0.3s ease!important}.dashboard-header{background-image:radial-gradient(circle at 20% 50%,rgba(255,255,255,.15) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,255,255,.15) 0%,transparent 50%),var(--gradient-primary)!important}.weather-card{background-image:radial-gradient(circle at 10% 20%,rgba(255,255,255,.5) 0%,transparent 20%),var(--gradient-card)!important}.fishing-weather-dashboard p,.fishing-weather-dashboard h1,.fishing-weather-dashboard h2,.fishing-weather-dashboard h3,.fishing-weather-dashboard div,.fishing-weather-dashboard span{margin:0!important;padding:0!important;border:none!important;outline:none!important;background:transparent!important;font-style:normal!important;text-decoration:none!important;list-style:none!important}.wp-block .fishing-weather-dashboard,.entry-content .fishing-weather-dashboard,article .fishing-weather-dashboard,main .fishing-weather-dashboard{border:2px solid var(--border-color)!important;background:var(--primary-bg)!important;box-shadow:var(--shadow-lg)!important}.wp-block .fishing-weather-dashboard *,.entry-content .fishing-weather-dashboard *,article .fishing-weather-dashboard *,main .fishing-weather-dashboard *{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif!important;box-sizing:border-box!important}@media (prefers-color-scheme:dark){:root{--primary-bg:#1a1a1a;--secondary-bg:#2d2d2d;--accent-bg:#3d3d3d;--border-color:#4d4d4d;--text-primary:#ffffff;--text-secondary:#e0e0e0;--text-muted:#b0b0b0}}