@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&display=swap";@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;700&display=swap";@import"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/css/all.min.css";@tailwind base;@tailwind components;@tailwind utilities;:root{font-family:Outfit,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;color:#1f2933;background-color:#9fbac3;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}@layer base{*,*:before,*:after{@apply box-border;}}body{@apply m-0 min-h-screen bg-[#9fbac3] text-slate-900 antialiased;}#root{@apply min-h-screen;}.results-page{min-height:100vh;width:100%;display:flex;justify-content:center;align-items:center;padding:48px 24px;background-color:#a5bfcc;font-family:Outfit,sans-serif;color:#fff;box-sizing:border-box}.results-page *{box-sizing:border-box}.dashboard-container{width:min(1280px,100%);display:flex;flex-direction:column;gap:1.5rem}.page-header{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.logo{font-weight:900;font-size:clamp(2.5rem,6vw,3.5rem);letter-spacing:.12em;margin:0;text-shadow:0 0 15px rgba(173,216,230,.65)}.header-controls{display:flex;align-items:center;gap:12px}.selected-date{padding:.65rem 1.25rem;border-radius:999px;background:#ffffff47;border:1px solid rgba(255,255,255,.35);font-size:.95rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:#fff}.back-button{border:1px solid rgba(255,255,255,.5);background:#fff3;color:#0c2135;font-size:.7rem;font-weight:700;letter-spacing:.28em;text-transform:uppercase;padding:.65rem 1.5rem;border-radius:999px;cursor:pointer;transition:background .2s ease,color .2s ease}.back-button:hover{background:#ffffffd9;color:#0c2135}.condition-switch{display:flex;flex-wrap:wrap;gap:.75rem}.condition-switch button{border:1px solid rgba(255,255,255,.25);background:#ffffff2e;color:#fff;font-size:.7rem;font-weight:700;letter-spacing:.28em;text-transform:uppercase;padding:.6rem 1.2rem;border-radius:999px;cursor:pointer;transition:background .2s ease,border .2s ease}.condition-switch button:hover:not(:disabled){background:#ffffff52}.condition-switch button.is-active{background:#0c2135eb;border-color:#0c2135eb;color:#fff}.condition-switch button:disabled:not(.is-active){opacity:.6;cursor:not-allowed}.status-banner{border-radius:1.25rem;padding:1rem 1.2rem;font-size:.85rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;background:#ffffff3d;border:1px solid rgba(255,255,255,.35);color:#0c2135}.status-banner strong{font-weight:800}.card{background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.25);border-radius:1rem;padding:1.5rem 2rem;box-shadow:0 8px 32px #0000001f}.card-label{color:#ecf1f3b3;font-weight:500;letter-spacing:.32em;font-size:.75rem;text-transform:uppercase;margin-bottom:.6rem}.card-main-text{margin:0;color:#fff;font-weight:400;font-size:clamp(2.4rem,4vw,3.6rem)}.card-footer-text{color:#ecf1f3b3;font-size:.85rem;margin-top:.6rem}.location-card .card-content{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.weather-display{display:flex;align-items:center;gap:1rem}.weather-icon{width:52px;height:52px;color:#fff}.forecast-icon{width:28px;height:28px}.temperature-text{font-size:clamp(2.5rem,5vw,3.2rem);font-weight:700}.temp-toggle{color:#fff9;font-size:.85rem;font-weight:600;letter-spacing:.18em}.temp-toggle .active{color:#fff}.condition-card .card-content{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem}.card-side-text{font-size:clamp(2.4rem,5vw,3.4rem);font-weight:700}.metric-line{margin-top:.9rem;display:flex;align-items:center;gap:.6rem;font-size:.95rem;color:#0c2135c7}.metric-line svg{width:20px;height:20px}.histogram-card .card-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.dropdown-button{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem 1rem;border-radius:999px;border:1px solid rgba(255,255,255,.35);background:#ffffff1f;color:#fffc;font-size:.75rem;font-weight:600;letter-spacing:.24em;text-transform:uppercase}.chart-container{display:flex;gap:1.25rem;height:140px}.y-axis{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;justify-content:space-between;color:#ecf1f399;font-size:.75rem;text-align:right}.chart-area{position:relative;flex:1;border-radius:24px;padding:12px;background:linear-gradient(180deg,#ffffff38,#fff0);border:1px solid rgba(255,255,255,.25)}.chart-area svg{width:100%;height:100%}.forecast-bar{display:flex;gap:.65rem;overflow-x:auto;padding-bottom:.4rem}.forecast-bar .day{flex:1 0 120px;background:#ffffff1a;border:1px solid rgba(255,255,255,.25);border-radius:1rem;padding:.85rem .65rem;text-align:center;color:#fff;display:flex;flex-direction:column;align-items:center;gap:.45rem;transition:background .2s ease,transform .2s ease}.forecast-bar .day.active{background:#ecf1f3;color:#0c2135;font-weight:700}.forecast-bar .day svg{width:30px;height:30px;stroke:currentColor}.info-tags{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem}.info-tag{padding:.45rem 1.2rem;border-radius:999px;background:#ffffff2e;border:1px solid rgba(255,255,255,.35);color:#fff;font-size:.7rem;font-weight:600;letter-spacing:.24em;text-transform:uppercase}.page-footer{text-align:center;width:100%;color:#fff9;font-size:.85rem;margin-top:1.25rem;letter-spacing:.24em;text-transform:uppercase}.placeholder-card{border:2px dashed rgba(255,255,255,.3);background:#ffffff1f;padding:2rem;border-radius:1rem;text-align:center;color:#fffc;letter-spacing:.12em;text-transform:uppercase;font-weight:600}@media (max-width: 960px){.results-page{padding:32px 16px}.dashboard-container{gap:1.1rem}.card{padding:1.3rem 1.4rem}.chart-container{flex-direction:column;height:auto}.y-axis{flex-direction:row;justify-content:space-between;font-size:.65rem}.chart-area{height:160px}.forecast-bar .day{flex:1 0 90px}}@media (max-width: 640px){.page-header{flex-direction:column;align-items:flex-start}.header-controls{align-self:stretch}.condition-switch{justify-content:flex-start}.location-card .card-content{flex-direction:column;align-items:flex-start}}.main-page{min-height:100vh;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 16px 48px;background-color:#a5bfcc;font-family:Outfit,sans-serif;color:#fff;box-sizing:border-box}.main-page main{width:100%;max-width:1112px;display:flex;flex-direction:column;align-items:center;position:relative}.main-page .main-title{font-size:clamp(4rem,12vw,8rem);font-weight:700;margin:0;color:#fff;text-shadow:0 0 15px rgba(173,216,230,.9)}.search-form{margin-top:48px;width:100%;position:relative;display:flex;justify-content:center}.search-box{display:flex;align-items:center;width:100%;background-color:#fff;border-radius:15px;box-shadow:0 0 20px #0000001a;height:72px;padding:0;transition:box-shadow .2s ease,border-radius .2s ease}.search-form:focus-within .search-box{border-radius:15px 15px 0 0;box-shadow:0 0 20px #00000026}#location-input::-webkit-search-cancel-button{display:none}#location-input::-ms-clear{display:none}#location-input{flex-grow:1;height:100%;border:none;outline:none;background:transparent;color:#333;font-size:clamp(1.5rem,3vw,2rem);font-family:Outfit,sans-serif;padding:0 25px}#location-input::placeholder{color:#3339}.search-button-inner{width:72px;height:72px;border:none;background:transparent;color:#333;font-size:40px;cursor:pointer;display:flex;align-items:center;justify-content:center;margin-right:15px}.search-button-inner:focus-visible{outline:2px solid #ffffff;outline-offset:2px}.suggestions-panel{display:none;position:absolute;top:100%;left:0;width:100%;background-color:#fff;border-radius:0 0 20px 20px;box-shadow:0 10px 20px #00000026;padding:10px 0;z-index:10}.suggestions-panel.is-open{display:block}.suggestions-panel ul{list-style:none;margin:0;padding:0}.suggestions-panel li{display:flex;align-items:center;gap:12px;padding:12px 25px;font-size:clamp(1.25rem,3vw,2rem);color:#333;cursor:pointer;transition:background-color .2s ease}.suggestions-panel li i{color:#a5bfcc;font-size:25px}.suggestions-panel li:hover,.suggestions-panel li:focus{background-color:#f0f0f0}.suggestion-item.is-placeholder,.suggestion-item.is-hint{color:#333333a6;cursor:default;font-style:italic;pointer-events:none}.suggestion-item.is-placeholder:hover,.suggestion-item.is-placeholder:focus,.suggestion-item.is-hint:hover,.suggestion-item.is-hint:focus{background-color:transparent}.suggestion-item.is-error{color:#b34747;font-weight:600}.app-footer-bottom{margin-top:auto;width:100%;text-align:center;padding-top:40px}.app-footer-bottom .small-text{color:#ffffffb3;font-size:1rem;margin:0}.location-error{margin-top:20px;color:#ffd7d7;font-size:.95rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}@media (max-width: 768px){.search-form{margin-top:32px}.search-box{height:60px}.search-button-inner{width:60px;height:60px;font-size:32px;margin-right:10px}}.search-status{margin-top:20px;font-size:1rem;color:#ffffffd9}.last-location{margin-top:16px;padding:12px 18px;border-radius:18px;background:#ffffff2e;border:1px solid rgba(255,255,255,.28);color:#fff;font-size:.95rem;display:inline-flex;flex-wrap:wrap;gap:8px;justify-content:center;list-style:none}.meta-chip{padding:6px 12px;border-radius:999px;background:#ffffff40;border:1px solid rgba(255,255,255,.35);font-weight:500}.calendar-page{min-height:100vh;width:100%;background-color:#a5bfcc;color:#fff;display:flex;flex-direction:column;align-items:center;padding:48px 24px 56px;box-sizing:border-box;font-family:Outfit,sans-serif;gap:32px}.calendar-header{width:100%;max-width:1120px;display:flex;align-items:flex-start;justify-content:space-between;gap:32px}.calendar-heading{font-size:.9rem;letter-spacing:.18em;text-transform:uppercase;opacity:.75;margin-bottom:.5rem}.calendar-location{font-size:clamp(2rem,4vw,3rem);font-weight:700;margin:0 0 .75rem}.calendar-meta{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}.calendar-meta li{background:#ffffff29;border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:8px 14px;font-size:.85rem}.calendar-back{align-self:center;padding:10px 18px;border-radius:999px;border:1px solid rgba(255,255,255,.45);background:#fff3;color:#fff;font-size:.95rem;cursor:pointer;transition:background .2s ease,border-color .2s ease}.calendar-back:hover{background:#ffffff4d;border-color:#fff9}.calendar-content{width:100%;max-width:1120px;display:flex;flex-wrap:wrap;gap:32px;align-items:stretch;justify-content:center}.calendar-widget{flex:1 1 520px;display:flex;justify-content:center}.calendar-sidebar{flex:1 1 320px;background:#ffffff2e;border-radius:24px;padding:28px 32px;border:1px solid rgba(255,255,255,.32);display:flex;flex-direction:column;gap:18px}.calendar-sidebar-title{font-size:1.1rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;opacity:.8}.calendar-selected{font-size:1.05rem;line-height:1.5;font-weight:500}.calendar-actions{display:flex;gap:12px;flex-wrap:wrap}.calendar-primary,.calendar-secondary{flex:1 1 140px;padding:12px 18px;border-radius:999px;border:none;font-size:.95rem;cursor:pointer;transition:transform .2s ease,background .2s ease}.calendar-primary{background:#0c2135;color:#fff}.calendar-primary:disabled{opacity:.45;cursor:default}.calendar-secondary{background:#ffffff40;color:#fff;border:1px solid rgba(255,255,255,.4)}.calendar-secondary:disabled{opacity:.45;cursor:default}.calendar-primary:not(:disabled):hover{transform:translateY(-1px);background:#132c46}.calendar-secondary:not(:disabled):hover{transform:translateY(-1px);background:#ffffff59}@media (max-width: 900px){.calendar-header{flex-direction:column;align-items:flex-start}.calendar-back{align-self:flex-start}.calendar-content{flex-direction:column}.calendar-widget,.calendar-sidebar{flex:1 1 auto;width:100%}}.cwx-calendar{width:100%;max-width:540px;background:#ffffff38;border-radius:28px;padding:28px 32px;border:1px solid rgba(255,255,255,.35);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 18px 38px #0000001f;display:flex;flex-direction:column;gap:18px;color:#0c2135}.cwx-calendar__header{display:flex;align-items:center;justify-content:space-between;color:#0c2135}.cwx-calendar__month{font-size:1.25rem;font-weight:600;text-transform:capitalize}.cwx-calendar__nav{width:44px;height:44px;border-radius:50%;border:1px solid rgba(12,33,53,.18);background:#ffffff8c;display:grid;place-items:center;color:#0c2135bf;cursor:pointer;transition:background .2s ease,color .2s ease}.cwx-calendar__nav:hover{background:#ffffffe6;color:#0c2135}.cwx-calendar__weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;color:#0c21358c;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.cwx-calendar__weekday,.cwx-calendar__cell{display:flex;align-items:center;justify-content:center}.cwx-calendar__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.cwx-calendar__cell{height:52px;border-radius:18px;border:1px solid rgba(12,33,53,.12);background:#fff9;color:#0c2135cc;font-size:.95rem;font-weight:600;cursor:pointer;transition:transform .2s ease,background .2s ease,border .2s ease}.cwx-calendar__cell:hover{background:#ffffffd9;transform:translateY(-1px)}.cwx-calendar__cell.is-selected{background:#0c2135;color:#fff;border-color:#0c2135;box-shadow:0 12px 22px #0c213540}.cwx-calendar__cell.is-today{border-color:#0c213566;font-weight:700}.cwx-calendar__cell--empty{background:transparent;border:none;cursor:default}
