*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f5f7fb;color:#182435;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;font-variant-numeric:tabular-nums}.site-header{height:86px;background:#fff;border-bottom:1px solid #e7ebf1;display:flex;align-items:center;gap:25px;padding:0 max(24px,calc((100vw - 1280px)/2))}.brand{display:flex;align-items:center;text-decoration:none;font-size:23px;font-weight:750;color:#17283e;letter-spacing:-.7px}.brand-sc{color:#4d5ee5}.brand-mark{display:grid;place-items:center;width:34px;height:34px;background:#4d5ee5;color:white;border-radius:10px;font-size:21px;margin-right:11px}.header-label{font-size:10px;letter-spacing:2px;color:#8e99a8;border-left:1px solid #e6eaf0;padding-left:25px}.update-pill{margin-left:auto;font-size:12px;color:#647184;display:flex;align-items:center;gap:8px}.live-dot{width:7px;height:7px;border-radius:50%;background:#21a788;display:inline-block}main{max-width:1280px;margin:0 auto;padding:45px 24px 26px}.eyebrow{font-size:11px;letter-spacing:3px;color:#5a69df;font-weight:700}.intro h1{font-size:34px;letter-spacing:-.8px;font-weight:650;margin:13px 0}.intro p{color:#7a8697;font-size:14px;margin:0}.controls{display:flex;align-items:center;gap:14px;margin-top:31px;flex-wrap:wrap}.range-control{display:flex;gap:3px;padding:4px;background:#e9edf4;border-radius:10px}button,select{font:inherit}button{cursor:pointer;border:0}button:focus-visible,select:focus-visible,summary:focus-visible,canvas:focus-visible{outline:3px solid #b3bbff;outline-offset:3px}.range-control button{background:none;color:#768297;padding:9px 15px;border-radius:7px;font-size:12px}.range-control .active{background:white;color:#4454d9;box-shadow:0 1px 4px #263b5b0d;font-weight:650}.timezone-control{display:flex;gap:10px;align-items:center;margin-left:auto;color:#7a8697;font-size:12px}.timezone-control select{color:#435269;background:transparent;border:1px solid #dce3ed;border-radius:8px;padding:10px 8px;font-size:12px}.refresh-button{background:white;border:1px solid #dce3ed;border-radius:8px;color:#556279;font-size:12px;padding:10px 13px}.refresh-button span{font-size:16px;margin-left:5px}.refresh-button:disabled{opacity:.6;cursor:wait}.connection-status{color:#909bac;font-size:11px;margin:16px 2px}.notice{padding:12px 16px;border:1px solid #edd6a1;background:#fff9eb;color:#86632c;border-radius:9px;margin-top:15px;font-size:12px}.stations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.station-card{min-width:0;background:white;border:1px solid #e2e7f0;border-radius:17px;padding:24px 24px 12px;box-shadow:0 4px 16px #263b5b03}.station-heading{display:flex;align-items:flex-start;gap:12px}.city{font-size:21px;font-weight:650;margin:0;letter-spacing:.2px}.city-en{font-size:12px;font-weight:450;color:#9ca5b3;letter-spacing:0;margin-left:8px}.airport{font-size:11px;color:#8995a6;margin-top:7px}.station-status{margin-left:auto;font-size:10px;color:#278a74;background:#edf9f5;border-radius:20px;padding:5px 9px;white-space:nowrap}.station-status.delayed,.station-status.unavailable{color:#a17729;background:#fff6e6}.temperature-row{margin:23px 0 17px;display:flex;align-items:flex-end;justify-content:space-between;gap:15px}.temperature-value{font-size:45px;font-weight:550;letter-spacing:-1.8px;line-height:1}.temperature-unit{font-size:21px;color:#a0aabb;vertical-align:top;display:inline-block;padding-top:4px;margin-left:5px;letter-spacing:0}.observed-label{font-size:10px;color:#9da7b4;text-align:right;line-height:1.7}.observed-time{font-size:12px;color:#59687d}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #f0f2f6;border-bottom:1px solid #f0f2f6;padding:14px 0;gap:7px}.metric-label{display:block;font-size:10px;color:#9ba6b5;margin-bottom:7px}.metric-value{font-size:13px;color:#4c5b71;white-space:nowrap}.chart-top{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#96a1b1;margin-top:17px}.chart-legend{display:flex;align-items:center;gap:5px}.legend-line{width:15px;height:2px;background:#5969e6}.canvas-wrap{position:relative;margin-top:8px;height:225px;width:100%}canvas{display:block;width:100%;height:100%;touch-action:pan-y;cursor:crosshair}.chart-readout{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#68768b;background:#f7f9fc;border-radius:7px;padding:9px 11px;font-size:10px;min-height:34px}.chart-readout strong{color:#4254d6;font-size:12px;font-weight:600}.sample-note{font-size:10px;color:#a2acba;margin:10px 0}.records{border-top:1px solid #f0f2f6;margin-top:11px}.records summary{list-style:none;cursor:pointer;color:#7d899b;font-size:11px;padding:12px 1px}.records summary::-webkit-details-marker{display:none}.records summary::after{content:'＋';float:right;color:#8a96a8}.records[open] summary::after{content:'−'}.table-scroll{max-height:235px;overflow:auto}table{border-collapse:collapse;width:100%;font-size:10px;white-space:nowrap}th{font-weight:500;color:#9ba5b5;background:#fafbfd;position:sticky;top:0}th,td{padding:9px 6px;text-align:right;border-bottom:1px solid #f1f3f7}th:first-child,td:first-child{text-align:left}td{color:#647389}.empty-chart{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#9ba5b5;font-size:12px;pointer-events:none}.station-card[data-empty=false] .empty-chart{display:none}footer{text-align:center;padding:30px 4px 10px;color:#98a3b3;font-size:10px;line-height:1.9}footer p{margin:4px 0}footer span{display:block;margin-top:20px;font-size:9px;letter-spacing:2px;color:#b3bdcb}[hidden]{display:none!important}@media(min-width:1350px){.canvas-wrap{height:248px}}@media(max-width:760px){.site-header{height:68px;padding:0 19px}.header-label{display:none}.brand{font-size:21px}.brand-mark{height:30px;width:30px;font-size:19px}main{padding:30px 15px 20px}.intro{padding:0 4px}.intro h1{font-size:27px}.intro p{font-size:12px}.controls{gap:10px;margin-top:24px}.range-control{width:100%;justify-content:space-between}.range-control button{flex:1;padding:10px 6px}.timezone-control{margin-left:0;flex:1}.timezone-control select{flex:1;max-width:200px}.stations{grid-template-columns:1fr;gap:17px}.station-card{padding:21px 17px 9px}.temperature-value{font-size:43px}.city{font-size:20px}.canvas-wrap{height:220px}.metrics{gap:5px}.metric-value{font-size:12px}.connection-status{font-size:10px;line-height:1.7}.update-pill{font-size:10px}.chart-readout{font-size:10px;flex-wrap:wrap}.sample-note{line-height:1.7}footer{font-size:10px;text-align:left;padding:23px 6px}footer span{text-align:center}}
