.weather-graphics{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:20px;box-shadow:0 8px 32px #0000001a;margin:0 auto;max-width:600px;padding:30px;text-align:center}.weather-display{margin-bottom:30px}.main-weather-icon{animation:pulse 2s ease-in-out infinite;font-size:4rem;margin-bottom:15px}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.temperature-message{color:#ffffffe6;font-size:1.3rem;font-weight:500;text-shadow:1px 1px 2px #0000004d}.graphics-container{background:#ffffff0d;border-radius:15px;margin:30px 0;min-height:150px;overflow:hidden;position:relative}.seasonal-elements,.time-elements{align-items:center;display:flex;flex-wrap:wrap;height:100%;justify-content:space-around;position:absolute;width:100%}.seasonal-elements>div,.time-elements>div{animation:float 3s ease-in-out infinite;font-size:2.5rem;margin:10px}.seasonal-elements>div:nth-child(2n){animation-delay:-1s}.seasonal-elements>div:nth-child(3n){animation-delay:-2s}.time-elements>div:nth-child(2n){animation-delay:-1.5s}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.spring-elements .flower{animation:sway 4s ease-in-out infinite}.spring-elements .butterfly{animation:flutter 2s ease-in-out infinite}@keyframes sway{0%,to{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}@keyframes flutter{0%,to{transform:translateX(0) rotate(0deg)}25%{transform:translateX(10px) rotate(5deg)}75%{transform:translateX(-10px) rotate(-5deg)}}.summer-elements .sun{animation:rotate 10s linear infinite}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.autumn-elements .leaf{animation:fall 4s ease-in-out infinite}@keyframes fall{0%{transform:translateY(-20px) rotate(0deg)}to{transform:translateY(20px) rotate(1turn)}}.winter-elements .snowflake{animation:snow 6s linear infinite}@keyframes snow{0%{transform:translateY(-20px) rotate(0deg)}to{transform:translateY(20px) rotate(180deg)}}.night-elements .star{animation:twinkle 2s ease-in-out infinite}@keyframes twinkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.weather-info{border-top:1px solid #fff3;display:flex;justify-content:space-around;margin-top:25px;padding-top:20px}.season-indicator,.time-indicator{align-items:center;display:flex;flex-direction:column;gap:5px}.label{color:#ffffffb3;font-size:.9rem;letter-spacing:1px;text-transform:uppercase}.value{color:#fffffff2;font-size:1.1rem;font-weight:600}@media (max-width:768px){.weather-graphics{padding:20px}.main-weather-icon{font-size:3rem}.temperature-message{font-size:1.1rem}.seasonal-elements>div,.time-elements>div{font-size:2rem;margin:5px}.weather-info{flex-direction:column;gap:15px}}.weather-forecast-container{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:linear-gradient(135deg,#ffffff1a,#fff3);border:1px solid #fff3;border-radius:20px;box-shadow:0 8px 32px #0000001a;margin:2rem 0;padding:2rem;transition:all .3s ease}.weather-forecast-container:hover{box-shadow:0 12px 40px #00000026;transform:translateY(-2px)}.forecast-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.forecast-header h2{color:#333;color:var(--text-primary,#333);font-size:1.5rem;font-weight:600;margin:0}.forecast-scroll-container{margin-bottom:1rem;overflow-x:auto;overflow-y:hidden;padding-bottom:1rem}.forecast-scroll-container::-webkit-scrollbar{height:8px}.forecast-scroll-container::-webkit-scrollbar-track{background:#ffffff1a;border-radius:4px}.forecast-scroll-container::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:4px}.forecast-scroll-container::-webkit-scrollbar-thumb:hover{background:#ffffff80}.forecast-grid{display:flex;gap:1rem;min-width:-webkit-max-content;min-width:max-content;padding:.5rem 0}.forecast-item{backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background:#ffffff26;border:1px solid #fff3;border-radius:15px;min-width:120px;padding:1rem;text-align:center;transition:all .3s ease}.forecast-item:hover{background:#ffffff40;box-shadow:0 6px 20px #0000001a;transform:translateY(-3px)}.forecast-item.current-hour{background:#ffffff4d;border:2px solid #fff6;transform:scale(1.05)}.forecast-time{color:#333;color:var(--text-primary,#333);font-size:.9rem;font-weight:600;margin-bottom:.5rem}.forecast-icon{align-items:center;display:flex;font-size:2rem;height:2.5rem;justify-content:center;margin:.5rem 0}.forecast-temp{color:#333;color:var(--text-primary,#333);font-size:1.2rem;font-weight:700;margin-bottom:.5rem}.forecast-details{color:#666;color:var(--text-secondary,#666);font-size:.75rem;line-height:1.3}.forecast-details>div{margin-bottom:.2rem}.feels-like{font-weight:500}.humidity,.precipitation,.wind{align-items:center;display:flex;gap:.2rem;justify-content:center}.loading-spinner-small{animation:spin 1s linear infinite;border:3px solid #ffffff4d;border-radius:50%;border-top-color:#333;border-top:3px solid var(--text-primary,#333);height:30px;margin:1rem auto;width:30px}.refresh-btn,.retry-btn{backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background:#fff3;border:1px solid #ffffff4d;border-radius:10px;color:#333;color:var(--text-primary,#333);cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .3s ease}.refresh-btn:hover,.retry-btn:hover{background:#ffffff4d;box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.forecast-warning{background:#ffc10733;border:1px solid #ffc10766;border-radius:10px;color:#333;color:var(--text-primary,#333);font-size:.85rem;margin-top:1rem;padding:.75rem;text-align:center}.weather-forecast-container.error{text-align:center}.weather-forecast-container.error p{color:#666;color:var(--text-secondary,#666);margin:1rem 0}.spring .weather-forecast-container{background:linear-gradient(135deg,#90ee901a,#98fb9833)}.summer .weather-forecast-container{background:linear-gradient(135deg,#ffd7001a,#ffa50033)}.autumn .weather-forecast-container{background:linear-gradient(135deg,#ff8c001a,#cd853f33)}.winter .weather-forecast-container{background:linear-gradient(135deg,#add8e61a,#b0c4de33)}.night .weather-forecast-container{background:linear-gradient(135deg,#1919701a,#483d8b33)}.night .forecast-header h2,.night .forecast-temp,.night .forecast-time{color:#e0e0e0;color:var(--text-primary-night,#e0e0e0)}.night .forecast-details{color:#b0b0b0;color:var(--text-secondary-night,#b0b0b0)}.night .refresh-btn,.night .retry-btn{background:#ffffff1a;border-color:#fff3;color:#e0e0e0;color:var(--text-primary-night,#e0e0e0)}@media (max-width:768px){.weather-forecast-container{margin:1.5rem 0;padding:1.5rem}.forecast-header h2{font-size:1.3rem}.forecast-item{min-width:100px;padding:.8rem}.forecast-icon{font-size:1.5rem;height:2rem}.forecast-temp{font-size:1.1rem}}.cat-gallery{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:20px;box-shadow:0 8px 32px #0000001a;padding:30px}.gallery-header{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:25px}.gallery-header h2{color:#fff;font-size:2rem;margin:0;text-shadow:2px 2px 4px #0000004d}.refresh-cats-btn,.retry-btn{background:#fff3;border:1px solid #ffffff4d;border-radius:25px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:12px 20px;transition:all .3s ease}.refresh-cats-btn:hover,.retry-btn:hover{background:#ffffff4d;box-shadow:0 4px 12px #0003;transform:translateY(-2px)}.cats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-top:20px}.cat-card{background:#ffffff26;border:1px solid #fff3;border-radius:15px;overflow:hidden;transition:all .3s ease}.cat-card:hover{background:#fff3;box-shadow:0 12px 24px #0003;transform:translateY(-5px)}.cat-image-container{height:200px;overflow:hidden;position:relative;width:100%}.cat-image{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.cat-card:hover .cat-image{transform:scale(1.05)}.cat-info{padding:15px;text-align:center}.cat-number{color:#ffffffe6;font-size:1rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.error-cats,.loading-cats{color:#ffffffe6;padding:40px 20px;text-align:center}.cat-loader{animation:bounce 1.5s ease-in-out infinite;font-size:3rem;margin-bottom:15px}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.loading-cats p{font-size:1.2rem;margin:0}.error-cats p{color:#fffc;font-size:1.1rem;margin-bottom:20px}@media (max-width:768px){.cat-gallery{padding:20px}.gallery-header{flex-direction:column;text-align:center}.gallery-header h2{font-size:1.8rem}.cats-grid{gap:15px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.cat-image-container{height:180px}}@media (max-width:480px){.cats-grid{grid-template-columns:1fr}.cat-image-container{height:220px}}.dashboard-container{color:#333;min-height:100vh;padding:20px}.dashboard-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:15px;box-shadow:0 8px 32px #0000001a;margin-bottom:30px;padding:20px;text-align:center}.dashboard-header h1{color:#fff;font-size:2.5rem;margin-bottom:10px;text-shadow:2px 2px 4px #0000004d}.refresh-indicator{align-items:center;color:#ffffffe6;display:flex;font-size:.9rem;gap:15px;justify-content:center}.refresh-btn{background:#fff3;border:none;border-radius:50%;cursor:pointer;font-size:1.2rem;height:40px;transition:all .3s ease;width:40px}.refresh-btn:hover{background:#ffffff4d;transform:rotate(180deg)}.dashboard-main{display:flex;flex-direction:column;gap:30px;margin:0 auto;max-width:1200px}.temperature-section{display:flex;justify-content:center}.temperature-card{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#ffffff26;border:1px solid #fff3;border-radius:25px;box-shadow:0 12px 48px #00000026;min-width:350px;padding:40px;text-align:center}.temperature-display{margin-bottom:20px}.temperature-value{color:#fff;display:block;font-size:4rem;font-weight:700;margin-bottom:10px;text-shadow:3px 3px 6px #0000004d}.sensor-info{color:#fffc;display:block;font-size:1rem;letter-spacing:1px;text-transform:uppercase}.date-display{color:#ffffffe6;font-size:1.1rem;font-weight:500}.graphics-section{display:flex;justify-content:center;margin:20px 0}.cats-section{margin-top:40px}.error,.loading{align-items:center;color:#fff;display:flex;flex-direction:column;justify-content:center;min-height:100vh;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:50px;margin-bottom:20px;width:50px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error button{background:#fff3;border:1px solid #ffffff4d;border-radius:25px;color:#fff;cursor:pointer;font-size:1rem;margin-top:20px;padding:12px 24px;transition:all .3s ease}.error button:hover{background:#ffffff4d;transform:translateY(-2px)}@media (max-width:768px){.dashboard-header h1{font-size:2rem}.temperature-card{min-width:auto;padding:30px 20px;width:100%}.temperature-value{font-size:3rem}.refresh-indicator{flex-direction:column;gap:10px}}*{box-sizing:border-box;margin:0;padding:0}body{background:linear-gradient(135deg,#667eea,#764ba2);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.App,body{min-height:100vh;transition:all .5s ease}body.spring{background:linear-gradient(135deg,#a8e6cf,#dcedc1)}body.summer{background:linear-gradient(135deg,#ffd89b,#ff8a80)}body.autumn{background:linear-gradient(135deg,#d299c2,#fef9d7)}body.winter{background:linear-gradient(135deg,#e6ddd4,#d5def5)}body.day{filter:brightness(1.1) saturate(1.2)}body.night{background:linear-gradient(135deg,#2c3e50,#34495e);filter:brightness(.8) saturate(.9)}body.spring.night{background:linear-gradient(135deg,#2d5a27,#1a4d1a)}body.summer.night{background:linear-gradient(135deg,#1e3a8a,#1e40af)}body.autumn.night{background:linear-gradient(135deg,#7c2d12,#a16207)}body.winter.night{background:linear-gradient(135deg,#1f2937,#374151)}@media (max-width:768px){body{font-size:14px}}html{scroll-behavior:smooth}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#ffffff1a}::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff80}
/*# sourceMappingURL=main.f5a67b34.css.map*/