.weather-page{min-height:100vh;background:var(--paper,#f7f7ef)}.weather-header{display:flex;justify-content:space-between;align-items:center;padding-top:24px;padding-bottom:24px;border-bottom:1px solid #dce0d3}.weather-main{max-width:1180px;padding-top:32px;padding-bottom:64px}.weather-main h1{font-size:clamp(30px,5vw,54px);margin:24px 0 8px}.weather-sub{font-size:19px;color:#596451}.weather-controls{margin:28px 0;padding:24px;background:white;border:1px solid #dce0d3;border-radius:20px}.weather-controls label{display:grid;gap:8px;font-weight:600}.weather-page input,.weather-page select{padding:12px;border:1px solid #cbd2c0;border-radius:9px;background:white;color:#24301c;min-width:0}.weather-controls form{display:flex;gap:10px;margin:16px 0}.weather-controls input{flex:1}.weather-controls small{display:block;color:#596451;line-height:1.6}.weather-matches{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.weather-matches button,.weather-status button,.weather-tabs button{padding:11px 17px;border:1px solid #cbd2c0;border-radius:24px;background:white;color:#24301c;cursor:pointer}.weather-tabs{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:26px 0}.weather-tabs .active{background:#263c1c;color:white;border-color:#263c1c}.weather-location{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.weather-location h2{font-size:28px}.weather-location small{font-size:15px;font-weight:400}.weather-location>span,.weather-updated{font-size:14px;color:#596451}.weather-now{display:flex;justify-content:space-between;gap:24px;padding:28px;background:#e9f1db;border-radius:20px;margin:20px 0}.weather-now strong{display:block;font-size:clamp(38px,7vw,66px);margin:12px 0}.weather-now p{margin:9px 0}.weather-week{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin:20px 0}.weather-week button{display:flex;flex-direction:column;align-items:center;gap:11px;padding:20px 12px;border:1px solid #dce0d3;background:white;border-radius:18px;cursor:pointer;color:#263c1c}.weather-week button:hover{border-color:#617c3b}.weather-week small{font-size:12px}.weather-symbol{font-size:36px}.weather-table-wrap{overflow:auto;background:white;border-radius:16px;border:1px solid #dce0d3}.weather-table-wrap table{width:100%;border-collapse:collapse;min-width:420px}.weather-table-wrap td,.weather-table-wrap th{text-align:left;padding:13px 18px;border-bottom:1px solid #e9ecdf}.weather-table-wrap th{background:#edf1e5}.weather-status{padding:40px 20px;text-align:center;background:white;border-radius:18px}.weather-warning{padding:14px;background:#fff0cc;border-radius:12px}.weather-source{margin-top:32px;font-size:13px;color:#596451;line-height:1.7}.weather-source a{text-decoration:underline}.weather-link{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;font-weight:600;color:inherit}.weather-page button:focus-visible,.weather-page input:focus-visible,.weather-page select:focus-visible{outline:3px solid #83a841;outline-offset:3px}@media(max-width:600px){.weather-controls{padding:16px}.weather-controls form{display:grid;grid-template-columns:1fr auto}.weather-controls form select{grid-column:1/-1}.weather-controls .button{padding:11px}.weather-now{padding:20px;flex-wrap:wrap}.weather-week{grid-template-columns:repeat(2,minmax(0,1fr))}.weather-main{padding-top:20px}.weather-location h2{font-size:24px}}.weather-page .logo{font-size:27px;font-weight:800;color:#263c1c;text-decoration:none;letter-spacing:-1px}.weather-page .logo-dot{color:#668c35}.weather-detected{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin:.25rem 0 1rem}.weather-detected p{margin:0}.weather-locate{border:1px solid;border-radius:999px;padding:.35rem .9rem;background:transparent;cursor:pointer;font:inherit}.weather-locate:disabled{opacity:.6;cursor:default}