:root{color-scheme:light;--ink:#073c49;--muted:#61777d;--line:#dbe5e7;--paper:#f3f7f8;--accent:#d7f574;--white:#fff;font:16px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,label.logo{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}header,main{max-width:1160px;margin:auto}header{padding:32px 28px;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;gap:12px;align-items:center}.brand strong{font-size:30px;letter-spacing:-1.6px;line-height:1}.brand strong span{color:#589394}.brand small{display:block;font-size:10px;letter-spacing:2px;margin-top:7px}.logo{border:1px solid var(--line);background:white;width:50px;height:50px;border-radius:50%;display:grid;place-items:center;font-size:22px;font-weight:750;cursor:pointer;overflow:hidden}.logo img{width:100%;height:100%;object-fit:cover}[hidden]{display:none!important}.local-badge{font-size:12px;display:flex;align-items:center;gap:7px}.local-badge i{height:6px;width:6px;background:#678f62;border-radius:50%}main{padding:0 28px}.location-row{display:flex;justify-content:space-between;align-items:center;padding:15px 0 28px;border-top:1px solid var(--line)}.location-row label{font-size:11px;letter-spacing:1.8px;display:block;color:var(--muted)}.location-row select{font-size:25px;letter-spacing:-.5px;font-weight:650;padding:0 32px 0 0;width:auto;background:transparent;border:0;color:var(--ink)}.text-button{border:0;background:transparent;color:var(--ink);font-size:14px;padding:10px}.layout{display:grid;grid-template-columns:440px 1fr;gap:22px}.panel{background:var(--white);border:1px solid var(--line);border-radius:20px;padding:28px}.eyebrow{display:flex;align-items:center;gap:9px;font-size:10px;letter-spacing:1.5px;font-weight:650}.step{display:inline-grid;place-items:center;border:1px solid currentColor;opacity:.7;border-radius:50%;width:24px;height:24px;font-size:10px;flex-shrink:0}.eyebrow #clock{margin-left:auto;letter-spacing:0;color:var(--muted)}h1{font-size:28px;line-height:1.2;letter-spacing:-1.1px;margin:26px 0 8px}h2{font-size:24px;line-height:1.2;letter-spacing:-.7px;margin:24px 0 8px}.intro{color:var(--muted);font-size:14px;margin:0 0 23px}.source-note{border-left:2px solid #b7d5d8;padding:0 0 0 12px;font-size:12px;color:var(--muted);margin-bottom:24px}.source-note button{padding:2px 0;font-size:12px;color:var(--ink);border:0;border-bottom:1px solid;background:none}.height-inputs{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{font-size:14px}input,select{border:1px solid var(--line);border-radius:10px;padding:12px;width:100%;color:var(--ink);background:white}.number-wrap{display:flex;align-items:baseline;border:1px solid var(--line);border-radius:12px;margin-top:8px;padding-right:16px;background:#f9fbfb}.number-wrap input{width:100%;border:0;background:transparent;font-size:34px;font-weight:600;padding:12px;letter-spacing:-1px}.number-wrap b{font-size:18px;font-weight:400;color:var(--muted)}input::placeholder{color:#afc1c6}.number-wrap:focus-within{outline:2px solid var(--ink)}input:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #4792a4;outline-offset:3px}fieldset{border:0;padding:0;margin:24px 0}legend{padding:0;margin-bottom:10px;font-size:14px}.power-options{display:grid;grid-template-columns:repeat(5,1fr);gap:5px}.power-options label{position:relative;cursor:pointer}.power-options input{position:absolute;opacity:0;width:1px}.power-options span{display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:9px;height:63px;color:#7a999f;font-size:17px}.power-options small{font-size:10px;margin-top:5px;color:var(--ink)}.power-options input:checked+span{background:var(--ink);border-color:var(--ink);color:var(--accent)}.power-options input:checked+span small{color:white}.power-options input:focus-visible+span{outline:2px solid #4792a4;outline-offset:3px}.primary{background:var(--ink);border:0;color:white;border-radius:11px;padding:16px 18px;font-size:15px;font-weight:600;display:flex;justify-content:space-between;width:100%}.primary span{color:var(--accent)}.form-foot{font-size:11px;color:var(--muted);text-align:center;margin-bottom:0}#message{font-size:13px;margin:10px 0 0}.evolution{background:var(--ink);color:white;border:0;display:flex;flex-direction:column}.evolution .intro{color:#bad0d6}.evolution .eyebrow{color:#aecbd0}.estimate-label{margin-left:auto;color:var(--accent);font-size:9px;letter-spacing:1px}.result-heading{display:flex;justify-content:space-between;gap:12px;align-items:center}.result-heading h2{font-size:28px;margin-top:26px}.result-heading #horizon{font-size:12px;color:var(--accent);white-space:nowrap}.empty-state{padding:34px 10px;text-align:center;color:#b6d0d5}.empty-state svg{width:85%;height:85px;fill:none;stroke:#43818c;stroke-width:1.5}.empty-state strong{font-weight:500;display:block;color:white;margin-top:23px}.empty-state p{font-size:14px;margin:10px 0}.forecast-foot{margin-top:auto;padding-top:18px;border-top:1px solid #35616c;font-size:11px;color:#b6d0d5}.return-strip{display:flex;align-items:center;gap:18px;padding:27px 0;margin-top:12px}.return-strip h2{font-size:18px;margin:0 0 5px}.return-strip p{font-size:13px;color:var(--muted);margin:0}.secondary{margin-left:auto;border:1px solid var(--line);background:white;padding:12px 18px;border-radius:10px;font-size:14px;color:var(--ink);white-space:nowrap}.secondary span{margin-left:18px}.details{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}summary{cursor:pointer;padding:20px 0;font-size:14px}summary>span{float:right;font-size:12px;color:var(--muted)}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding-bottom:25px}.detail-grid h3{font-size:16px}.detail-grid p{font-size:13px;color:var(--muted)}.text-link{color:var(--ink);cursor:pointer;font-size:13px}.source-item{padding:9px 0;border-bottom:1px solid var(--line);font-size:13px}.source-item a{color:var(--ink)}.source-item small{display:block;color:var(--muted)}footer{display:flex;justify-content:space-between;padding:22px 0;font-size:11px;color:var(--muted)}.muted{margin-left:12px}.timeline{overflow:auto;margin:16px -4px 18px}.timeline table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:13px}.timeline th{text-align:left;color:#abc8d0;font-weight:400;font-size:11px}.timeline td,.timeline th{padding:10px 7px;border-bottom:1px solid #2f5a65}.timeline td:nth-child(2){color:var(--accent);font-weight:650}.chart{width:100%;height:130px;overflow:visible}.chart text{fill:#bad0d6;font-size:11px}.chart .line{fill:none;stroke:var(--accent);stroke-width:2.5}.chart .max{fill:none;stroke:#8cb7c0;stroke-width:1.5;stroke-dasharray:4 5}.chart .grid{stroke:#35616c;stroke-width:1}.legend-chart{display:flex;gap:20px;font-size:11px;color:#bbd2d8}.legend-chart b{color:var(--accent)}dialog{border:1px solid var(--line);border-radius:18px;padding:28px;max-width:460px;width:calc(100% - 30px);color:var(--ink)}dialog::backdrop{background:#062d3bcc;backdrop-filter:blur(3px)}.dialog-top{display:flex;align-items:center;justify-content:space-between}.dialog-top h2{margin:0}dialog p{font-size:14px;color:var(--muted)}dialog label{display:block;margin:15px 0}dialog label input,dialog label select{margin-top:5px}dialog .height-inputs label{margin:0}#feedback-message{color:var(--ink)}@media(min-width:1300px){header{padding-top:42px}.location-row{padding-bottom:32px}.panel{min-height:490px}}@media(max-width:900px){.layout{grid-template-columns:1fr 1.15fr}.panel{padding:22px}h1,.result-heading h2{font-size:24px}.eyebrow{font-size:9px;letter-spacing:1px}.estimate-label{display:none}.power-options small{font-size:9px}}@media(max-width:700px){header{padding:20px}.brand strong{font-size:27px}main{padding:0 16px}.location-row{padding:14px 3px 20px}.layout{grid-template-columns:1fr;gap:16px}.panel{padding:23px;border-radius:16px}.observe h1{margin-top:20px}.source-note{margin-bottom:18px}.intro{margin-bottom:18px}.return-strip{flex-wrap:wrap;gap:12px;padding:25px 4px}.return-strip>div{flex:1}.secondary{margin-left:36px}.detail-grid{grid-template-columns:1fr;gap:6px}summary>span{display:none}footer{gap:15px}.muted{display:none}.empty-state{padding:15px 0 25px}.evolution{min-height:390px}.power-options small{font-size:11px}.estimate-label{display:block}.eyebrow{font-size:10px}.number-wrap input{font-size:32px}}@media(prefers-reduced-motion:no-preference){button{transition:background .15s,transform .15s}.primary:hover{background:#155364}.secondary:hover{background:#e9f1f3}}
/* Keep controls legible outdoors, including narrow screens. */
.brand small,.location-row label,.eyebrow,.step,.estimate-label,.power-options small,.form-foot,.forecast-foot,.legend-chart,.timeline th,footer{font-size:12px}.power-options small{font-size:11px}.eyebrow{letter-spacing:.6px}.source-note,.return-strip p,.detail-grid p,.text-link,.source-item{font-size:14px}.brand small{letter-spacing:1px}.source-item small{font-size:12px}
.logo{width:70px;height:70px;border:0;border-radius:0;background:transparent;overflow:visible}.logo img{object-fit:contain}.period-overview{border-top:1px solid #35616c;padding-top:15px}.period-overview strong{font-size:14px}.period-overview p{font-size:13px;color:#c8dce1;line-height:1.6;margin:10px 0}.period-overview b{color:var(--accent)}.period-outlook summary{font-size:13px;padding:8px 0;color:var(--accent)}.period-outlook p,.period-disclaimer{font-size:12px;line-height:1.5;color:#bed2d8}.period-outlook .timeline{margin-top:0}.period-outlook .timeline td{font-weight:400;color:white}.evolution .intro{margin-bottom:12px}
.camera-link{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;color:var(--ink);border-radius:6px;flex-shrink:0}.camera-link:hover{background:#e7f0f1}.power-switch{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:16px;font-size:12px}.power-switch>span{margin-right:auto;color:#c6dce1}.power-switch button{font-size:12px;padding:8px 10px;border-radius:7px;border:1px solid #547c84;color:white;background:transparent}.power-switch button[aria-pressed=true]{background:var(--accent);color:var(--ink);border-color:var(--accent)}#forecast-content .timeline{max-height:365px;overflow:auto}#forecast-content thead{position:sticky;top:0;background:var(--ink)}.calibration-note a{color:var(--accent)}.forecast-foot p{margin:10px 0}.timeline{overscroll-behavior:contain}
#reset-observation{display:block;margin:14px auto 0;font-size:13px}#feedback-dialog{width:min(880px,94vw);max-width:880px;max-height:90vh;overflow:auto}#feedback-dialog textarea{box-sizing:border-box;width:100%;font:inherit;border:1px solid #c6d4d6;border-radius:8px;padding:10px;background:#fff;color:#073c49}#feedback-dialog .mail-table{max-height:340px;overflow:auto;margin:18px 0}.mail-table th,.mail-table td{white-space:normal;min-width:120px;vertical-align:top}.mail-table td:last-child{min-width:220px}.mail-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}#mail-preview{white-space:pre-wrap;font:12px/1.6 monospace;overflow-wrap:anywhere}#feedback-dialog input{box-sizing:border-box;width:100%}
.wind-cell{display:inline-flex;flex-direction:column;align-items:center;gap:3px;min-width:45px}.wind-cell svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.wind-cell small{display:block;font-size:10px;line-height:1.2;font-weight:500;white-space:nowrap;color:#e0ecee}.wind-cell.east{color:#16834a}.wind-cell.west{color:#ce3838}.wind-cell.north-south{color:#d47b09}
