.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.mkt-shell{min-height:100vh;display:flex;flex-direction:column;background:var(--cream-bg);color:var(--text)}.mkt-nav{display:flex;align-items:center;gap:1.5rem;padding:1rem 1.5rem;border-bottom:1px solid var(--outline);background:var(--warm-surface);flex-wrap:wrap}.mkt-logo{font-weight:800;font-size:1.2rem;text-decoration:none;margin-right:auto;display:inline-block;transform-origin:left center;animation:mkt-logo-breathe-color 11s ease-in-out infinite,mkt-logo-breathe-scale 11s ease-in-out infinite}@keyframes mkt-logo-breathe-color{0%{color:#16a34a}25%{color:#eab308}50%{color:#ea580c}75%{color:#dc2626}to{color:#16a34a}}@keyframes mkt-logo-breathe-scale{0%,to{transform:scale(1)}50%{transform:scale(1.015)}}@media(prefers-reduced-motion:reduce){.mkt-logo{animation:none;color:var(--sky-teal-dark)}}.mkt-nav-links{display:flex;gap:1.1rem;flex-wrap:wrap}.mkt-nav-link{color:var(--muted);text-decoration:none;font-weight:600;font-size:.92rem;padding:.3rem 0;border-bottom:2px solid transparent}.mkt-nav-link:hover,.mkt-nav-link.active{color:var(--sky-teal-dark);border-bottom-color:var(--sky-teal)}.mkt-login-btn{background:var(--sky-teal);color:#fff;text-decoration:none;font-weight:700;padding:.5rem 1.1rem;border-radius:999px;font-size:.9rem;white-space:nowrap}.mkt-login-btn:hover{background:var(--sky-teal-dark)}.mkt-subnav{display:flex;gap:1rem;flex-wrap:wrap;padding:.65rem 1.5rem;background:var(--mist);border-bottom:1px solid var(--outline)}.mkt-subnav-link{color:var(--muted-sage);text-decoration:none;font-size:.85rem;font-weight:600;padding:.2rem .6rem;border-radius:999px}.mkt-subnav-link:hover,.mkt-subnav-link.active{background:var(--sky-teal);color:#fff}.mkt-main{flex:1;width:100%;max-width:780px;margin:0 auto;padding:2rem 1.5rem 3rem}.mkt-page-head{margin-bottom:1.5rem}.mkt-eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:700;color:var(--sage);margin:0 0 .4rem}.mkt-hero{text-align:left;margin-bottom:2rem}.mkt-hero h1,.mkt-page-head h1{font-size:clamp(1.6rem,4vw,2.3rem);line-height:1.2;margin:0 0 .75rem}.mkt-lede{font-size:1.05rem;color:var(--muted-sage);max-width:60ch}.mkt-cta{display:inline-block;margin-top:1rem;background:var(--sky-teal);color:#fff;text-decoration:none;font-weight:700;padding:.7rem 1.4rem;border-radius:999px}.mkt-cta:hover{background:var(--sky-teal-dark)}.mkt-section{margin:1.75rem 0}.mkt-section h2{font-size:1.3rem;margin:0 0 .6rem}.mkt-section h3{font-size:1.05rem;margin:1.1rem 0 .4rem}.mkt-section p{margin:0 0 .9rem}.mkt-list{margin:0 0 .9rem;padding-left:1.3rem;display:flex;flex-direction:column;gap:.5rem}.mkt-note{font-size:.85rem;color:var(--muted-sage);font-style:italic}.mkt-callout{background:var(--mist);border-left:3px solid var(--sky-teal);border-radius:12px;padding:1.1rem 1.3rem;margin:1.75rem 0}.mkt-callout h2{font-size:1.1rem;margin:0 0 .5rem}.mkt-callout p{margin:0}.mkt-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1rem}.mkt-card{background:var(--warm-surface);border:1px solid var(--outline);border-radius:14px;padding:1.1rem}.mkt-card h3{margin:0 0 .4rem;font-size:1rem}.mkt-card p{margin:0;font-size:.9rem;color:var(--muted-sage)}.mkt-steps{list-style:none;margin:0 0 1.5rem;padding:0;counter-reset:mkt-step;display:flex;flex-direction:column;gap:1.3rem}.mkt-steps>li{counter-increment:mkt-step;position:relative;padding-left:2.6rem}.mkt-steps>li:before{content:counter(mkt-step);position:absolute;left:0;top:0;width:1.9rem;height:1.9rem;border-radius:50%;background:var(--sky-teal);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;font-size:.9rem}.mkt-steps h2{font-size:1.1rem;margin:0 0 .4rem}.mkt-steps p{margin:0}.mkt-table-wrap{overflow-x:auto;margin-bottom:1.5rem}.mkt-table{border-collapse:collapse;width:100%;min-width:560px;font-size:.9rem}.mkt-table th,.mkt-table td{border:1px solid var(--outline);padding:.6rem .75rem;text-align:left;vertical-align:top}.mkt-table th{background:var(--mist);font-weight:700}.mkt-table-subhead{font-weight:500;font-size:.8rem;color:var(--muted)}.mkt-faq-list{display:flex;flex-direction:column;gap:.6rem}.mkt-faq-item{background:var(--warm-surface);border:1px solid var(--outline);border-radius:12px;padding:.85rem 1.1rem}.mkt-faq-item summary{cursor:pointer;font-weight:700;list-style:none}.mkt-faq-item summary::-webkit-details-marker{display:none}.mkt-faq-item summary:before{content:"+ ";color:var(--sky-teal)}.mkt-faq-item[open] summary:before{content:"− "}.mkt-faq-item p{margin:.6rem 0 0;color:var(--muted-sage)}.mkt-footer{border-top:1px solid var(--outline);padding:1.5rem;text-align:center;font-size:.78rem;color:var(--muted-sage)}.mkt-footer p{margin:.25rem 0}.mkt-footer-links a{color:var(--muted-sage)}@media(max-width:640px){.mkt-nav{gap:.75rem}.mkt-nav-links{gap:.7rem;order:3;width:100%}}.app-shell{max-width:880px;margin:0 auto;padding:0 1.25rem 3rem}body:has(.dashboard-shell){background:transparent}#root:has(.dashboard-shell){background:transparent}.dashboard-shell{position:relative;z-index:0;max-width:none;width:100%;min-height:100vh;height:auto;margin:0;padding:.5rem .75rem 1.25rem;display:flex;flex-direction:column;overflow:visible;background:transparent;--dash-glass: rgba(255, 255, 255, .58);--dash-glass-strong: rgba(255, 255, 255, .88);--dash-glass-border: rgba(15, 23, 42, .14);--dash-glass-blur: blur(10px) saturate(1.12);--dash-accent: #0f766e;--dash-accent-deep: #065f46}.dashboard-shell>:not(.ambient-backdrop):not(.ambient-fx-overlay){position:relative;z-index:1}.ambient-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden}.ambient-sky-layer{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,var(--ambient-sky-top) 0%,var(--ambient-sky-mid) 38%,var(--ambient-sky-horizon) 68%,color-mix(in srgb,var(--ambient-sky-horizon) 75%,var(--ambient-ground)) 100%);transition:background 1.2s ease}.ambient-ground-layer{position:absolute;left:0;right:0;bottom:0;height:32%;background:linear-gradient(0deg,color-mix(in srgb,var(--ambient-ground) 85%,transparent) 0%,transparent 92%)}.ambient-fx-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none;overflow:hidden}.ambient-fx-overlay .ambient-rain-field{opacity:calc(.3 + var(--ambient-rain-density) * .4)}.ambient-fx-overlay .ambient-dust-field,.ambient-fx-overlay .ambient-pollen-field{opacity:calc(.12 + var(--ambient-dust, 0) * .5)}.ambient-fx-overlay .ambient-pollen-field{opacity:calc(.1 + var(--ambient-pollen, 0) * .45)}.ambient-mist-layer{position:absolute;top:0;right:0;bottom:0;left:0;opacity:calc(var(--ambient-humid) * .55 + var(--ambient-rain) * .45);background:radial-gradient(ellipse 90% 55% at 50% 100%,rgba(226,232,240,.35),transparent 70%)}.ambient-particle-field{position:absolute;top:0;right:0;bottom:0;left:0}.ambient-dust-field{opacity:calc(.15 + var(--ambient-dust) * .85)}.ambient-pollen-field{opacity:calc(.1 + var(--ambient-pollen) * .8)}.ambient-particle{position:absolute;border-radius:50%;animation:ambient-float linear infinite}.ambient-dust-particle{width:3px;height:3px;background:#a16207d9;box-shadow:0 0 4px #b4783c59}.ambient-pollen-particle{width:4px;height:4px;background:#65a30dbf;box-shadow:0 0 5px #bef26459}.ambient-breeze-field{position:absolute;top:-10%;right:-10%;bottom:-10%;left:-10%;opacity:calc(var(--ambient-cold) * .9)}.ambient-breeze-streak{position:absolute;left:-20%;width:38%;height:2px;border-radius:999px;background:linear-gradient(90deg,transparent,rgba(186,230,253,.85),transparent);animation:ambient-breeze-slide linear infinite}.ambient-night .ambient-breeze-streak{background:linear-gradient(90deg,transparent,rgba(148,163,184,.75),transparent)}.ambient-has-rain .ambient-mist-layer{opacity:calc(.35 + var(--ambient-rain) * .55)}.ambient-has-rain .ambient-sky-layer{filter:saturate(.82)}.ambient-raining-now.ambient-daytime .ambient-sky-layer{filter:saturate(.88) brightness(1.02)}.ambient-raining-now:not(.ambient-daytime) .ambient-sky-layer{filter:saturate(.55) brightness(.88)}.ambient-rained-recent.ambient-daytime .ambient-sky-layer{filter:saturate(.9) brightness(1)}.ambient-rain-field{position:absolute;top:-15%;right:-5%;bottom:-15%;left:-5%;opacity:calc(.4 + var(--ambient-rain-density) * .5);pointer-events:none}.ambient-rain-drop{position:absolute;top:-12%;width:2.5px;border-radius:999px;background:#e2e8f0e0;transform:skew(calc(-1 * var(--ambient-rain-slant)));animation:ambient-rain-fall linear infinite}.ambient-rain-drizzle{width:1.6px;background:#e2e8f099;animation-name:ambient-rain-drift}.ambient-rain-thunderstorm{width:2.75px}.ambient-rain-cyclone{width:3px;transform:skew(-55deg)}.ambient-rain-splash{position:absolute;left:0;right:0;bottom:0;height:18%;background:linear-gradient(0deg,rgba(148,163,184,.22) 0%,rgba(148,163,184,.08) 40%,transparent 100%);animation:ambient-rain-splash-pulse 2.4s ease-in-out infinite}.ambient-ripple-field{position:absolute;left:0;right:0;bottom:2%;height:20%;pointer-events:none}.ambient-rain-ripple{position:absolute;bottom:0;width:22px;height:8px;border:1.5px solid rgba(226,232,240,.65);border-radius:50%;animation:ambient-ripple-expand linear infinite}@keyframes ambient-ripple-expand{0%{transform:scale(.2);opacity:0}15%{opacity:.8}to{transform:scale(1.6);opacity:0}}.ambient-night .ambient-rain-drop{background:#94a3b8bf}@keyframes ambient-rain-fall{0%{transform:translateY(-8vh) skew(calc(-1 * var(--ambient-rain-slant)));opacity:0}8%{opacity:1}92%{opacity:1}to{transform:translateY(115vh) skew(calc(-1 * var(--ambient-rain-slant)));opacity:0}}@keyframes ambient-rain-drift{0%{transform:translateY(-8vh) translate(0) skew(calc(-1 * var(--ambient-rain-slant)));opacity:0}10%{opacity:.8}90%{opacity:.8}to{transform:translateY(115vh) translate(-4vw) skew(calc(-1 * var(--ambient-rain-slant)));opacity:0}}.ambient-storm-cyclone .ambient-rain-drop{animation-name:ambient-rain-blast}@keyframes ambient-rain-blast{0%{transform:translateY(-8vh) translate(-30vw) skew(-55deg);opacity:0}8%{opacity:1}90%{opacity:1}to{transform:translateY(90vh) translate(60vw) skew(-55deg);opacity:0}}.ambient-debris-field{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.ambient-debris-particle{position:absolute;left:-8%;width:5px;height:2px;border-radius:2px;background:#7871578c;animation:ambient-debris-blow linear infinite}@keyframes ambient-debris-blow{0%{transform:translate(0) rotate(0);opacity:0}10%{opacity:.8}to{transform:translate(120vw) rotate(340deg);opacity:0}}@keyframes ambient-rain-splash-pulse{0%,to{opacity:.65}50%{opacity:1}}.ambient-lightning-flash{position:absolute;top:0;right:0;bottom:0;left:0;background:#e2e8f0d9;opacity:0;animation:ambient-lightning-strike 7s ease-out infinite}.ambient-storm-cyclone .ambient-lightning-flash{animation-duration:5s}@keyframes ambient-lightning-strike{0%,91%,to{opacity:0}92%{opacity:.8}93%{opacity:.1}94%{opacity:.6}96%{opacity:0}}.ambient-mood-label{position:absolute;right:.75rem;bottom:.45rem;margin:0;font-size:.62rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:color-mix(in srgb,var(--deep-forest) 55%,white);opacity:.55}.ambient-night .ambient-mood-label{color:#e2e8f0a6}.ambient-risk-high .ambient-sky-layer{filter:saturate(.72) brightness(.92) sepia(.12)}.ambient-risk-high .ambient-ground-layer{background:linear-gradient(0deg,color-mix(in srgb,#7f1d1d 90%,transparent) 0%,rgba(220,38,38,.18) 55%,transparent 92%)!important}.ambient-risk-high:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse 120% 80% at 50% 100%,rgba(127,29,29,.42),transparent 68%)}.ambient-risk-mid .ambient-ground-layer{background:linear-gradient(0deg,color-mix(in srgb,#c2410c 55%,transparent) 0%,transparent 92%)!important}.ambient-risk-low .ambient-sky-layer{filter:saturate(1.08) brightness(1.03)}.ambient-risk-low .ambient-ground-layer{background:linear-gradient(0deg,color-mix(in srgb,#059669 72%,transparent) 0%,rgba(52,211,153,.12) 50%,transparent 92%)!important}.ambient-risk-low:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse 90% 55% at 50% 100%,rgba(16,185,129,.14),transparent 70%)}.ambient-cloud-layer{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.ambient-cloud{position:absolute;border-radius:999px;background:radial-gradient(ellipse at 30% 35%,rgba(255,255,255,.92),rgba(255,255,255,.5) 55%,transparent 78%);filter:blur(2px);animation:ambient-cloud-drift linear infinite}.ambient-night .ambient-cloud{background:radial-gradient(ellipse at 30% 35%,rgba(203,213,225,.55),rgba(100,116,139,.32) 55%,transparent 78%)}@keyframes ambient-cloud-drift{0%{transform:translate(-25%)}to{transform:translate(125%)}}.ambient-star-field{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;animation:ambient-star-field-fade-in 1.4s ease forwards}@keyframes ambient-star-field-fade-in{to{opacity:1}}.ambient-star{position:absolute;border-radius:50%;background:#fff;box-shadow:0 0 3px #fffc;animation:ambient-star-twinkle ease-in-out infinite}@keyframes ambient-star-twinkle{0%,to{opacity:.25}50%{opacity:1}}.ambient-planet{position:absolute;width:6px;height:6px;border-radius:50%}.ambient-planet-warm{background:radial-gradient(circle at 35% 35%,#fed7aa,#ea580c 70%);box-shadow:0 0 6px #fb923cb3}.ambient-planet-cool{background:radial-gradient(circle at 35% 35%,#e0f2fe,#38bdf8 70%);box-shadow:0 0 6px #38bdf8b3}.ambient-shooting-star{position:absolute;top:12%;left:-6%;width:3px;height:3px;border-radius:50%;background:#fff;box-shadow:0 0 6px 2px #ffffffe6;animation:ambient-shooting-star-cycle 26s linear infinite}.ambient-shooting-star:before{content:"";position:absolute;top:50%;right:100%;width:90px;height:1.5px;transform:translateY(-50%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.85))}@keyframes ambient-shooting-star-cycle{0%,89%{opacity:0;transform:translate(0)}90%{opacity:1;transform:translate(0)}96%{opacity:1;transform:translate(220px,90px)}97%,to{opacity:0;transform:translate(220px,90px)}}@keyframes ambient-float{0%{transform:translate(0)}50%{transform:translate(12px,-18px)}to{transform:translate(-8px,-36px)}}@keyframes ambient-breeze-slide{0%{transform:translate(0)}to{transform:translate(165%)}}.dashboard-shell .guidance-card,.dashboard-shell .zone-summary,.dashboard-shell .symptom-checkin,.dashboard-shell .symptom-panel,.dashboard-shell .trend-card,.dashboard-shell .add-pin-form-inline,.dashboard-shell .dash-bottom>*,.dashboard-shell .place-switch-card{background:var(--dash-glass)!important;border:1px solid var(--dash-glass-border)!important;backdrop-filter:var(--dash-glass-blur);-webkit-backdrop-filter:var(--dash-glass-blur);box-shadow:none!important}.dashboard-shell .scroll-region,.dashboard-shell .scroll-region-body,.dashboard-shell .dash-section{background:transparent!important;border:none!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.dashboard-shell .virtual-home{background:#ffffff08!important;border:1px solid var(--dash-glass-border)!important;backdrop-filter:var(--dash-glass-blur);-webkit-backdrop-filter:var(--dash-glass-blur);box-shadow:none!important}.zone-status-ribbon{display:block;padding:.28rem .75rem;font-size:.62rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;text-align:center;background:transparent;border-bottom:1px solid var(--dash-glass-border)}.dashboard-shell.dash-sky-day .zone-summary.status-avoid .zone-status-ribbon,.dashboard-shell.dash-sky-overcast .zone-summary.status-avoid .zone-status-ribbon,.dashboard-shell:not(.dash-sky-night) .zone-summary.status-avoid .zone-status-ribbon{color:#dc2626}.dashboard-shell.dash-sky-day .zone-summary.status-avoid .zone-plain-verdict,.dashboard-shell.dash-sky-overcast .zone-summary.status-avoid .zone-plain-verdict,.dashboard-shell:not(.dash-sky-night) .zone-summary.status-avoid .zone-plain-verdict{color:#b91c1c!important;text-shadow:var(--dash-text-shadow)}.dashboard-shell.dash-sky-day .zone-summary.status-avoid .zone-plain-action,.dashboard-shell.dash-sky-overcast .zone-summary.status-avoid .zone-plain-action,.dashboard-shell:not(.dash-sky-night) .zone-summary.status-avoid .zone-plain-action,.dashboard-shell.dash-sky-day .zone-summary.status-avoid .driver-name,.dashboard-shell.dash-sky-overcast .zone-summary.status-avoid .driver-name,.dashboard-shell:not(.dash-sky-night) .zone-summary.status-avoid .driver-name{color:#991b1b!important;text-shadow:var(--dash-text-shadow)}.dashboard-shell.dash-sky-day .zone-summary.status-avoid .section-label,.dashboard-shell.dash-sky-overcast .zone-summary.status-avoid .section-label,.dashboard-shell:not(.dash-sky-night) .zone-summary.status-avoid .section-label{color:#dc2626!important}.dashboard-shell.dash-sky-day .zone-summary.status-avoid .comfort-meter-hard,.dashboard-shell.dash-sky-overcast .zone-summary.status-avoid .comfort-meter-hard,.dashboard-shell:not(.dash-sky-night) .zone-summary.status-avoid .comfort-meter-hard{color:#dc2626!important;font-weight:800}.dashboard-shell.dash-sky-day .zone-summary.status-avoid .pulse-ring-score,.dashboard-shell.dash-sky-overcast .zone-summary.status-avoid .pulse-ring-score,.dashboard-shell:not(.dash-sky-night) .zone-summary.status-avoid .pulse-ring-score{color:#dc2626!important}.dashboard-shell.dash-sky-day .zone-summary.status-caution .zone-status-ribbon,.dashboard-shell.dash-sky-overcast .zone-summary.status-caution .zone-status-ribbon,.dashboard-shell:not(.dash-sky-night) .zone-summary.status-caution .zone-status-ribbon{color:#ea580c}.dashboard-shell.dash-sky-day .zone-summary.status-caution .zone-plain-verdict,.dashboard-shell.dash-sky-overcast .zone-summary.status-caution .zone-plain-verdict,.dashboard-shell:not(.dash-sky-night) .zone-summary.status-caution .zone-plain-verdict{color:#c2410c!important;text-shadow:var(--dash-text-shadow)}.dashboard-shell.dash-sky-day .zone-summary.status-caution .zone-plain-action,.dashboard-shell.dash-sky-overcast .zone-summary.status-caution .zone-plain-action,.dashboard-shell:not(.dash-sky-night) .zone-summary.status-caution .zone-plain-action,.dashboard-shell.dash-sky-day .zone-summary.status-caution .driver-name,.dashboard-shell.dash-sky-overcast .zone-summary.status-caution .driver-name,.dashboard-shell:not(.dash-sky-night) .zone-summary.status-caution .driver-name{color:#9a3412!important;text-shadow:var(--dash-text-shadow)}.dashboard-shell.dash-sky-day .zone-summary.status-caution .section-label,.dashboard-shell.dash-sky-overcast .zone-summary.status-caution .section-label,.dashboard-shell:not(.dash-sky-night) .zone-summary.status-caution .section-label{color:#ea580c!important}.dashboard-shell.dash-sky-day .zone-summary.status-caution .comfort-meter-easy,.dashboard-shell.dash-sky-overcast .zone-summary.status-caution .comfort-meter-easy,.dashboard-shell:not(.dash-sky-night) .zone-summary.status-caution .comfort-meter-easy{color:#15803d!important}.dashboard-shell.dash-sky-day .zone-summary.status-caution .comfort-meter-hard,.dashboard-shell.dash-sky-overcast .zone-summary.status-caution .comfort-meter-hard,.dashboard-shell:not(.dash-sky-night) .zone-summary.status-caution .comfort-meter-hard{color:#dc2626!important}.dashboard-shell.dash-sky-day .zone-summary.status-safe .zone-status-ribbon,.dashboard-shell.dash-sky-overcast .zone-summary.status-safe .zone-status-ribbon,.dashboard-shell:not(.dash-sky-night) .zone-summary.status-safe .zone-status-ribbon{color:#059669}.dashboard-shell.dash-sky-day .zone-summary.status-safe .zone-plain-verdict,.dashboard-shell.dash-sky-overcast .zone-summary.status-safe .zone-plain-verdict,.dashboard-shell:not(.dash-sky-night) .zone-summary.status-safe .zone-plain-verdict{color:#047857!important;text-shadow:var(--dash-text-shadow);font-weight:800}.dashboard-shell.dash-sky-day .zone-summary.status-safe .zone-plain-action,.dashboard-shell.dash-sky-overcast .zone-summary.status-safe .zone-plain-action,.dashboard-shell:not(.dash-sky-night) .zone-summary.status-safe .zone-plain-action,.dashboard-shell.dash-sky-day .zone-summary.status-safe .driver-name,.dashboard-shell.dash-sky-overcast .zone-summary.status-safe .driver-name,.dashboard-shell:not(.dash-sky-night) .zone-summary.status-safe .driver-name{color:#065f46!important;text-shadow:var(--dash-text-shadow)}.dashboard-shell.dash-sky-day .zone-summary.status-safe .section-label,.dashboard-shell.dash-sky-overcast .zone-summary.status-safe .section-label,.dashboard-shell:not(.dash-sky-night) .zone-summary.status-safe .section-label{color:#059669!important}.dashboard-shell.dash-sky-day .zone-summary.status-safe .comfort-meter-easy,.dashboard-shell.dash-sky-overcast .zone-summary.status-safe .comfort-meter-easy,.dashboard-shell:not(.dash-sky-night) .zone-summary.status-safe .comfort-meter-easy{color:#047857!important;font-weight:800}.dashboard-shell.dash-sky-day .zone-summary.status-safe .pulse-ring-score,.dashboard-shell.dash-sky-overcast .zone-summary.status-safe .pulse-ring-score,.dashboard-shell:not(.dash-sky-night) .zone-summary.status-safe .pulse-ring-score{color:#047857!important}.dashboard-shell.dash-sky-night .zone-summary.status-avoid .zone-status-ribbon{color:#fca5a5}.dashboard-shell.dash-sky-night .zone-summary.status-avoid .zone-plain-verdict{color:#f87171!important;text-shadow:var(--dash-text-shadow)}.dashboard-shell.dash-sky-night .zone-summary.status-avoid .zone-plain-action,.dashboard-shell.dash-sky-night .zone-summary.status-avoid .driver-name{color:#fecaca!important;text-shadow:var(--dash-text-shadow)}.dashboard-shell.dash-sky-night .zone-summary.status-avoid .section-label{color:#fca5a5!important}.dashboard-shell.dash-sky-night .zone-summary.status-avoid .comfort-meter-hard{color:#f87171!important;font-weight:800}.dashboard-shell.dash-sky-night .zone-summary.status-avoid .pulse-ring-score{color:#f87171!important}.dashboard-shell.dash-sky-night .zone-summary.status-caution .zone-status-ribbon{color:#fdba74}.dashboard-shell.dash-sky-night .zone-summary.status-caution .zone-plain-verdict{color:#fb923c!important;text-shadow:var(--dash-text-shadow)}.dashboard-shell.dash-sky-night .zone-summary.status-caution .zone-plain-action,.dashboard-shell.dash-sky-night .zone-summary.status-caution .driver-name{color:#fed7aa!important;text-shadow:var(--dash-text-shadow)}.dashboard-shell.dash-sky-night .zone-summary.status-caution .section-label{color:#fdba74!important}.dashboard-shell.dash-sky-night .zone-summary.status-safe .zone-status-ribbon{color:#6ee7b7}.dashboard-shell.dash-sky-night .zone-summary.status-safe .zone-plain-verdict{color:#34d399!important;text-shadow:var(--dash-text-shadow)}.dashboard-shell.dash-sky-night .zone-summary.status-safe .zone-plain-action,.dashboard-shell.dash-sky-night .zone-summary.status-safe .driver-name{color:#a7f3d0!important;text-shadow:var(--dash-text-shadow)}.dashboard-shell.dash-sky-night .zone-summary.status-safe .section-label{color:#6ee7b7!important}.dashboard-shell.dash-sky-night .zone-summary.status-safe .comfort-meter-easy{color:#6ee7b7!important;font-weight:800}.dashboard-shell.dash-sky-night .zone-summary.status-safe .pulse-ring-score{color:#34d399!important}.dashboard-shell .zone-summary.status-avoid .comfort-meter-fill{background:linear-gradient(90deg,#fca5a5,#ef4444,#b91c1c)!important}.dashboard-shell .zone-summary.status-caution .comfort-meter-fill{background:linear-gradient(90deg,#86efac,#fbbf24,#ef4444)!important}.dashboard-shell .zone-summary.status-safe .comfort-meter-fill{background:linear-gradient(90deg,#34d399,#fde047,#f87171)!important}.dashboard-shell .zone-summary.status-safe .comfort-meter-hard,.dashboard-shell .zone-summary.status-caution .comfort-meter-hard{color:#dc2626!important}.dashboard-shell .zone-summary .zone-score-footnote,.dashboard-shell .zone-summary .zone-meta,.dashboard-shell .zone-summary .confidence-pill,.dashboard-shell .zone-summary .updated-at,.dashboard-shell .zone-summary .zone-not-aqi{color:var(--dash-text-muted)!important}.dashboard-shell .zone-summary .comfort-meter-easy{color:var(--dash-text-muted)}.dashboard-shell .zone-summary.status-avoid .pulse-ring-fg{stroke:#ef4444!important}.dashboard-shell .zone-summary.status-caution .pulse-ring-fg{stroke:#f97316!important}.dashboard-shell .zone-summary.status-safe .pulse-ring-fg{stroke:#10b981!important}.dashboard-shell .zone-summary .driver-impact.impact-high{color:#fff!important;background:#dc2626!important}.dashboard-shell .zone-summary .driver-impact.impact-medium{color:#78350f!important;background:#fde68a!important}.dashboard-shell .zone-summary.status-safe .driver-impact.impact-low,.dashboard-shell .zone-summary.status-safe .driver-impact.impact-slight{color:#065f46!important;background:#10b98138!important}.dashboard-shell.dash-sky-night .zone-summary.status-safe .driver-impact.impact-low,.dashboard-shell.dash-sky-night .zone-summary.status-safe .driver-impact.impact-slight{color:#a7f3d0!important;background:#10b9812e!important}.dashboard-shell .highlight-box,.dashboard-shell .nearby-source-row,.dashboard-shell .drift-card,.dashboard-shell .app-only-block,.dashboard-shell .window-row,.dashboard-shell .guidance-activities{background:var(--dash-glass-inset, rgba(255, 248, 235, .08))!important;border:1px solid var(--dash-glass-border);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.dashboard-shell .symptom-tag,.dashboard-shell .symptom-chip,.dashboard-shell .impact-badge,.dashboard-shell .window-chip,.dashboard-shell .confidence-pill,.dashboard-shell .level-pill,.dashboard-shell .vh-env-chip,.dashboard-shell .refresh-btn{background:var(--dash-glass)!important;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.dashboard-shell .symptom-chip{color:var(--dash-text)!important;border-color:var(--dash-glass-border)!important;text-shadow:var(--dash-text-shadow);font-weight:600}.dashboard-shell .symptom-chip:hover{border-color:color-mix(in srgb,var(--dash-accent) 55%,var(--dash-glass-border))!important}.dashboard-shell .symptom-chip.selected{color:var(--dash-accent-deep)!important;background:color-mix(in srgb,var(--dash-accent) 24%,var(--dash-glass))!important;border-color:var(--dash-accent)!important}.dashboard-shell .place-switch-card.active{background:color-mix(in srgb,var(--dash-accent) 14%,var(--dash-glass))!important;border-color:color-mix(in srgb,var(--dash-accent) 55%,var(--dash-glass-border))!important}.dashboard-shell .app-bar{background:transparent;border-bottom-color:var(--dash-glass-border)}.dashboard-shell .scroll-region-hint{background:#ffffff1f;border-color:var(--dash-glass-border)}.dashboard-shell.dash-sky-day,.dashboard-shell.dash-sky-overcast{--dash-glass: rgba(255, 255, 255, .58);--dash-glass-strong: rgba(255, 255, 255, .88);--dash-glass-border: rgba(15, 23, 42, .14);--dash-glass-inset: rgba(255, 255, 255, .74);--dash-text: #0f172a;--dash-text-muted: #334155;--dash-text-strong: #020617;--dash-accent: #0f766e;--dash-accent-deep: #065f46;--dash-text-shadow: none;color:var(--dash-text)}.dashboard-shell.dash-sky-night{--dash-glass: rgba(15, 23, 42, .72);--dash-glass-strong: rgba(15, 23, 42, .9);--dash-glass-border: rgba(255, 255, 255, .16);--dash-glass-inset: rgba(15, 23, 42, .82);--dash-text: #f8fafc;--dash-text-muted: #cbd5e1;--dash-text-strong: #ffffff;--dash-accent: #fbbf24;--dash-accent-deep: #f59e0b;--dash-text-shadow: none;color:var(--dash-text)}.dashboard-shell{--dash-glass-inset: rgba(255, 255, 255, .74);--dash-text: #0f172a;--dash-text-muted: #334155;--dash-text-strong: #020617;--dash-accent: #0f766e;--dash-accent-deep: #065f46;--dash-text-shadow: none;font-family:var(--font-ui);color:var(--dash-text);font-weight:500;font-feature-settings:"tnum" 1,"lnum" 1;-webkit-font-smoothing:antialiased}.dashboard-shell .brand-text h1,.dashboard-shell .guidance-card h2,.dashboard-shell .trend-card h3,.dashboard-shell .nearby-name{color:var(--dash-text-strong);font-weight:800;text-shadow:var(--dash-text-shadow)}.dashboard-shell .section-label,.dashboard-shell .dash-tile-compact h2{color:var(--dash-accent-deep);font-weight:800;text-shadow:var(--dash-text-shadow)}.dashboard-shell .brand-text p,.dashboard-shell .symptom-hint,.dashboard-shell .ambient-mood-chip,.dashboard-shell .place-switch-meta,.dashboard-shell .place-switch-remove,.dashboard-shell .model-badge-meta,.dashboard-shell .zone-metric-name,.dashboard-shell .score-badge-max,.dashboard-shell .zone-not-aqi,.dashboard-shell .updated-at,.dashboard-shell .nearby-source-top,.dashboard-shell .nearby-detail,.dashboard-shell .vh-env-chip-label,.dashboard-shell .muted-inline,.dashboard-shell .source-footnote{color:var(--dash-text-muted);font-weight:600;text-shadow:var(--dash-text-shadow)}.dashboard-shell .zone-place-name,.dashboard-shell .zone-headline,.dashboard-shell .driver-name,.dashboard-shell .driver-row,.dashboard-shell .guidance-card p,.dashboard-shell .guidance-card li,.dashboard-shell .bullet-list,.dashboard-shell .nearby-impact-reason,.dashboard-shell .trend-card,.dashboard-shell .guidance-emphasis{color:var(--dash-text);font-weight:600;text-shadow:var(--dash-text-shadow)}.dashboard-shell .place-switch-add,.dashboard-shell .driver-points,.dashboard-shell .nearby-count-label,.dashboard-shell .ambient-mood-chip strong,.dashboard-shell .scroll-region-hint{color:var(--dash-accent);font-weight:700;text-shadow:var(--dash-text-shadow)}.dashboard-shell .refresh-btn{color:var(--dash-accent-deep)!important;border-color:color-mix(in srgb,var(--dash-accent) 45%,var(--dash-glass-border))!important}.dashboard-shell .place-switch-add{border-color:color-mix(in srgb,var(--dash-accent) 50%,var(--dash-glass-border));color:var(--dash-accent)}.dashboard-shell .place-switch-name{color:var(--dash-text-strong);font-weight:700;text-shadow:var(--dash-text-shadow)}.dashboard-shell .place-switch-score{font-weight:700;text-shadow:var(--dash-text-shadow)}.place-switch-stale-badge{margin-left:.4rem;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:#fff;background:var(--zone-caution);border-radius:999px;padding:.1rem .4rem;vertical-align:middle}.dashboard-shell .weather-alerts .alert-row strong{font-weight:800}.dashboard-shell .zone-status-label,.dashboard-shell .nearby-name{text-shadow:var(--dash-text-shadow)}.dashboard-shell .weather-alerts .alert-row,.dashboard-shell .ventilation-card .highlight-box,.dashboard-shell .rain-mask-alert{background:var(--dash-glass-inset)!important;border:1px solid var(--dash-glass-border)!important;border-radius:10px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);box-shadow:none!important;margin-top:.4rem;padding:.5rem .65rem;color:var(--dash-text)}.dashboard-shell.dash-sky-night .weather-alerts .alert-row,.dashboard-shell.dash-sky-night .ventilation-card .highlight-box,.dashboard-shell.dash-sky-night .rain-mask-alert{background:var(--dash-glass-inset)!important;border-color:var(--dash-glass-border)!important}.dashboard-shell .weather-alerts .alert-row strong,.dashboard-shell .weather-alerts .alert-row span,.dashboard-shell .rain-mask-alert p,.dashboard-shell .ventilation-card .highlight-box p{color:inherit;text-shadow:var(--dash-text-shadow)}.dashboard-shell .scroll-region-hint{background:color-mix(in srgb,var(--dash-accent) 10%,var(--dash-glass))!important;border-color:color-mix(in srgb,var(--dash-accent) 35%,var(--dash-glass-border))!important}.dashboard-shell .vh-env-strip{background:var(--dash-glass-strong)!important;border-color:var(--dash-glass-border)!important}.dashboard-shell .vh-env-chip{border-color:color-mix(in srgb,var(--dash-accent) 35%,var(--dash-glass-border))!important}.dashboard-shell .symptom-tag{color:var(--dash-accent-deep)!important;background:color-mix(in srgb,var(--dash-accent) 14%,var(--dash-glass))!important}.dashboard-shell.dash-sky-night .symptom-tag,.dashboard-shell.dash-sky-night .symptom-chip.selected{color:var(--dash-accent)!important}.dashboard-shell.dash-sky-day .pin-local-time-header,.dashboard-shell.dash-sky-day .pin-local-time-meta,.dashboard-shell.dash-sky-day .ambient-mood-time .pin-local-time,.dashboard-shell.dash-sky-overcast .pin-local-time-header,.dashboard-shell.dash-sky-overcast .pin-local-time-meta,.dashboard-shell.dash-sky-overcast .ambient-mood-time .pin-local-time{color:var(--dash-text-strong)}.dashboard-shell.dash-sky-night .pin-local-time-header,.dashboard-shell.dash-sky-night .pin-local-time-meta,.dashboard-shell.dash-sky-night .ambient-mood-time .pin-local-time,.dashboard-shell.dash-sky-night .scroll-region-hint,.dashboard-shell.dash-sky-night .section-label,.dashboard-shell.dash-sky-night .dash-tile-compact h2{color:var(--dash-accent)}.dashboard-shell.dash-sky-day .scroll-region-hint,.dashboard-shell.dash-sky-overcast .scroll-region-hint{color:var(--dash-accent-deep)}.dashboard-shell .symptom-checkin,.dashboard-shell .symptom-panel{color:var(--dash-text)}.dashboard-shell .symptom-checkin h2,.dashboard-shell .symptom-panel h2{color:var(--dash-text-strong);text-shadow:var(--dash-text-shadow)}.dashboard-shell .symptom-panel .muted-inline{color:var(--dash-text);text-shadow:var(--dash-text-shadow)}.dashboard-shell .symptom-checkin .primary.checkin-submit{background:linear-gradient(135deg,var(--dash-accent-deep),var(--dash-accent))!important;color:#1a1206!important;box-shadow:0 4px 14px #d4a01761!important}.dashboard-shell .symptom-checkin .ghost-btn.checkin-clear{color:var(--dash-accent)!important;border-color:color-mix(in srgb,var(--dash-accent) 42%,var(--dash-glass-border))!important;text-shadow:var(--dash-text-shadow)}.dashboard-shell .symptom-checkin.checkin-success{background:color-mix(in srgb,var(--dash-accent) 12%,var(--dash-glass))!important;border-color:color-mix(in srgb,var(--dash-accent) 45%,var(--dash-glass-border))!important}.dashboard-shell .trend-neutral{background:#ffffff1f!important;color:var(--dash-text-muted)!important}.dashboard-bar{margin-bottom:.45rem;padding:.35rem 0 .4rem;flex-shrink:0}.dashboard-bar-right{display:flex;align-items:center;gap:.5rem}.ambient-mood-chip{margin:0 0 .4rem;font-size:.78rem;color:var(--muted)}.dashboard-shell .ambient-mood-chip{font-size:.82rem}.dashboard-shell .vh-env-chip-label,.dashboard-shell .zone-metric-name{font-size:.56rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;line-height:1.25}.dashboard-shell .vh-env-chip-value{font-size:.92rem;font-weight:800;letter-spacing:-.04em;font-variant-numeric:tabular-nums lining-nums;line-height:1.1}.dashboard-shell .zone-status-label{font-size:1.05rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.dashboard-shell .pulse-ring-score{font-weight:800;letter-spacing:-.05em;font-variant-numeric:tabular-nums lining-nums}.dashboard-shell .pulse-ring-max{font-size:.58rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.dashboard-shell .driver-points{font-weight:800;font-variant-numeric:tabular-nums lining-nums;letter-spacing:-.02em}.dashboard-shell .place-switch-score{font-weight:800;letter-spacing:-.03em;font-variant-numeric:tabular-nums lining-nums}.dashboard-shell .brand-text h1{font-size:1.28rem;font-weight:800;letter-spacing:-.03em}.ambient-mood-chip strong{color:var(--sky-teal-dark)}.ambient-mood-time{color:var(--muted);font-weight:400}.pin-local-time{font-weight:700;white-space:nowrap}.pin-local-time-label{font-weight:600;opacity:.9}.pin-local-tz{font-weight:600;opacity:.88}.pin-local-time-header{font-size:.78rem;padding:.28rem .55rem;border-radius:8px;background:var(--dash-glass);border:1px solid var(--dash-glass-border);color:var(--dash-text-strong);text-shadow:var(--dash-text-shadow, none)}.pin-local-time-meta{color:var(--dash-text-strong);text-shadow:var(--dash-text-shadow, none)}.dashboard-shell .ambient-mood-time .pin-local-time{color:var(--dash-text-strong);text-shadow:var(--dash-text-shadow)}.dashboard-shell .ambient-mood-sun{color:var(--dash-text-muted);font-weight:500}.model-badge{display:flex;flex-direction:column;align-items:flex-end;gap:.15rem}.model-badge-pill{display:inline-flex;align-items:center;gap:.35rem;background:linear-gradient(135deg,#0d9488,#059669);color:#fff;font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:.3rem .55rem;border-radius:8px;box-shadow:0 2px 10px #0d948859}.model-badge-dot{width:6px;height:6px;border-radius:50%;background:#bbf7d0;box-shadow:0 0 6px #86efac}.model-badge-meta{font-size:.62rem;color:var(--muted);max-width:180px;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-banner{margin-bottom:.35rem;padding:.4rem .65rem;font-size:.78rem}.place-switcher{flex-shrink:0;margin-bottom:.4rem}.place-switcher-row{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem .75rem}.place-switcher-cards{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.place-switch-card{display:flex;align-items:stretch;border-radius:10px;border:1.5px solid var(--outline);background:var(--surface);overflow:hidden}.place-switch-card.active{border-color:var(--sky-teal);box-shadow:0 0 0 1px color-mix(in srgb,var(--sky-teal) 25%,transparent)}.place-switch-card.status-avoid.active{border-color:#ef4444!important}.place-switch-card.status-caution.active{border-color:#f97316!important}.place-switch-card.status-safe.active{border-color:#22c55e!important}.place-switch-card.status-avoid .place-switch-score{color:#dc2626;font-weight:800}.dashboard-shell.dash-sky-night .place-switch-card.status-avoid .place-switch-score{color:#f87171}.place-switch-card.status-caution .place-switch-score{color:#ea580c;font-weight:800}.dashboard-shell.dash-sky-night .place-switch-card.status-caution .place-switch-score{color:#fb923c}.place-switch-card.status-safe .place-switch-score{color:#16a34a;font-weight:800}.dashboard-shell.dash-sky-night .place-switch-card.status-safe .place-switch-score{color:#34d399}.place-switch-main{display:flex;align-items:center;gap:.45rem;border:none;background:transparent;padding:.3rem .55rem;font:inherit;color:inherit}.place-switch-name{font-size:.78rem;font-weight:600}.place-switch-score{font-size:.95rem;font-weight:800;line-height:1}.place-switch-remove{border:none;background:transparent;color:var(--muted);padding:0 .35rem;font-size:1rem}.place-switch-add{border:1px dashed var(--outline);background:transparent;color:var(--sky-teal-dark);border-radius:10px;padding:.35rem .65rem;font-size:.75rem;font-weight:600}.place-switch-meta{margin:0;font-size:.68rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.add-pin-form-inline{flex-shrink:0;margin-bottom:.35rem;padding:.5rem;border:1px dashed var(--outline);border-radius:10px;display:grid;grid-template-columns:1fr 1.2fr;gap:.5rem;align-items:start}.add-pin-fields{display:grid;grid-template-columns:1fr 1fr;gap:.35rem;align-items:end}.add-pin-fields label{font-size:.72rem}.add-pin-fields .primary{grid-column:span 2;padding:.4rem;font-size:.8rem}.add-pin-section{grid-column:span 2;display:flex;flex-direction:column;gap:.3rem;padding:.5rem 0;border-top:1px solid var(--outline)}.add-pin-section-title{margin:0;font-size:.78rem;font-weight:700}.add-pin-section-hint{margin:0;font-size:.68rem;color:var(--muted)}.add-pin-choice-row{display:flex;flex-wrap:wrap;gap:.35rem}.add-pin-choice{border:1.5px solid var(--outline);background:var(--surface);color:var(--text);border-radius:999px;padding:.3rem .7rem;font-size:.72rem;font-weight:600}.add-pin-choice.active{border-color:var(--sky-teal);background:color-mix(in srgb,var(--sky-teal) 12%,var(--warm-surface));color:var(--sky-teal-dark)}.add-pin-subfield{display:flex;flex-direction:column;gap:.15rem;font-size:.72rem;max-width:220px}.compass-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:.3rem;max-width:260px}.compass-picker-btn{border:1.5px solid var(--outline);background:var(--surface);color:var(--text);border-radius:8px;padding:.3rem .4rem;font-size:.72rem;font-weight:700}.compass-picker-btn.active{border-color:var(--sky-teal);background:color-mix(in srgb,var(--sky-teal) 14%,var(--warm-surface));color:var(--sky-teal-dark)}.dashboard-grid{flex:1;display:grid;grid-template-columns:minmax(200px,22%) minmax(280px,1fr) minmax(220px,28%);grid-template-rows:auto auto auto auto auto auto;gap:10px;overflow:visible;align-items:stretch}.dash-col-left{grid-column:1;grid-row:1}.dash-col-center{grid-column:2;grid-row:1}.dash-col-right{grid-column:3;grid-row:1}.dash-col{display:flex;flex-direction:column;gap:10px;min-width:0}.dash-col-left>*:last-child,.dash-col-right>*:last-child,.dash-col-center>*:last-child{flex:1;display:flex;flex-direction:column}.dash-col-left>*:last-child>.scroll-region-body,.dash-col-right>*:last-child>.scroll-region-body{flex:1;display:flex;flex-direction:column}.dash-scroll-left .trend-card,.dash-col-right .guidance-card{flex:1;display:flex;flex-direction:column;justify-content:center}.dash-section{grid-column:1 / -1}.dash-section-activities{grid-row:2}.dash-section-nearby{grid-row:3}.dash-section-indoor{grid-row:4}.dash-col-left .zone-summary,.dash-col-left .trend-card{margin-bottom:0}.dash-scroll-left .scroll-region-body{display:flex;flex-direction:column;gap:10px;padding:.15rem .35rem .15rem .15rem;max-height:100%;overflow-y:auto}.dash-scroll-left .trend-card{min-height:5.5rem}.dash-scroll-left .scroll-region-body::-webkit-scrollbar{width:8px}.dash-scroll-left .scroll-region-body::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--dash-accent) 60%,var(--outline));border-radius:6px;border:1px solid transparent}.dash-scroll-left .guidance-card{margin:0}.dash-col-center{justify-content:flex-start}.dash-col-center .virtual-home{margin:0;height:auto;width:100%;display:flex;flex-direction:column;padding:.35rem .45rem .3rem;border-radius:12px;border:1px solid var(--dash-glass-border, rgba(255, 255, 255, .28))}.dash-col-center .virtual-home-compact .vh-hint-one{display:none}.dash-col-center .virtual-home-compact .vh-env-overlay{position:static;width:100%;margin:.4rem 0 0;padding:0;pointer-events:auto}.dash-col-center .virtual-home-compact .vh-env-strip{width:100%}.dash-col-center .vh-stage{flex:0 0 auto;width:100%;height:auto;margin:0;aspect-ratio:16 / 9;display:flex;align-items:stretch;justify-content:center;overflow:hidden;border-radius:14px;background:#0408122e;box-shadow:inset 0 0 0 1px #ffffff12,0 10px 36px #02061747}.dash-col-center .vh-side-rail{flex:1 1 0;min-width:0;height:100%;display:flex;align-items:stretch;justify-content:center;padding:.3rem .28rem}.dash-col-center .vh-side-stack{width:100%;max-width:5.75rem}.dash-col-center .vh-side-stack-spread{height:100%;display:grid;grid-template-rows:1fr 1fr 1fr;padding:.15rem 0}.dash-col-center .vh-side-slot{display:flex;min-height:0}.dash-col-center .vh-side-slot-top{align-items:flex-start}.dash-col-center .vh-side-slot-mid{align-items:center}.dash-col-center .vh-side-slot-bot{align-items:flex-end}.dash-col-center .vh-side-left .vh-side-slot{justify-content:flex-end}.dash-col-center .vh-side-right .vh-side-slot{justify-content:flex-start}.dash-col-center .vh-side-chip{width:100%;min-width:3.25rem;max-width:5.75rem;padding:.34rem .42rem;text-align:center}.dash-col-center .vh-side-chip .vh-env-chip-value{font-size:clamp(.88rem,1.75vw,1.12rem);font-weight:800;letter-spacing:-.04em;font-variant-numeric:tabular-nums lining-nums;line-height:1.1;white-space:normal;word-break:break-word}.dash-col-center .vh-side-chip .vh-env-wind-value{font-size:clamp(.72rem,1.35vw,.86rem);font-weight:800;letter-spacing:-.03em}.dash-col-center .vh-side-chip .vh-env-chip-label{font-size:clamp(.5rem,.95vw,.56rem);font-weight:700;letter-spacing:.11em;text-transform:uppercase}.dashboard-shell .dash-col-center .vh-side-rail .vh-side-chip{background:#ffffff1a!important;border:1px solid rgba(255,255,255,.22)!important;box-shadow:inset 0 1px #ffffff24,0 4px 18px #02061738;backdrop-filter:blur(10px) saturate(1.15);-webkit-backdrop-filter:blur(10px) saturate(1.15)}.dashboard-shell.dash-sky-day .dash-col-center .vh-side-rail .vh-side-chip,.dashboard-shell.dash-sky-overcast .dash-col-center .vh-side-rail .vh-side-chip,.dashboard-shell:not(.dash-sky-night) .dash-col-center .vh-side-rail .vh-side-chip{background:#ffffff24!important;border-color:#0f172a2e!important}.dashboard-shell.dash-sky-day .dash-col-center .vh-side-rail .vh-side-chip .vh-env-chip-label,.dashboard-shell.dash-sky-overcast .dash-col-center .vh-side-rail .vh-side-chip .vh-env-chip-label,.dashboard-shell:not(.dash-sky-night) .dash-col-center .vh-side-rail .vh-side-chip .vh-env-chip-label{color:#0f172a!important;text-shadow:0 0 10px rgba(255,255,255,.95),0 1px 3px rgba(255,255,255,.85),0 1px 2px rgba(0,0,0,.35)!important}.dashboard-shell.dash-sky-day .dash-col-center .vh-side-rail .vh-side-chip .vh-env-chip-value,.dashboard-shell.dash-sky-overcast .dash-col-center .vh-side-rail .vh-side-chip .vh-env-chip-value,.dashboard-shell:not(.dash-sky-night) .dash-col-center .vh-side-rail .vh-side-chip .vh-env-chip-value{color:#020617!important;text-shadow:0 0 12px rgba(255,255,255,.98),0 1px 4px rgba(255,255,255,.9),0 2px 6px rgba(0,0,0,.4)!important}.dashboard-shell.dash-sky-day .dash-col-center .vh-side-rail .vh-side-chip.vh-env-good .vh-env-chip-value,.dashboard-shell.dash-sky-overcast .dash-col-center .vh-side-rail .vh-side-chip.vh-env-good .vh-env-chip-value{color:#047857!important}.dashboard-shell.dash-sky-day .dash-col-center .vh-side-rail .vh-side-chip.vh-env-moderate .vh-env-chip-value,.dashboard-shell.dash-sky-overcast .dash-col-center .vh-side-rail .vh-side-chip.vh-env-moderate .vh-env-chip-value{color:#b45309!important}.dashboard-shell.dash-sky-day .dash-col-center .vh-side-rail .vh-side-chip.vh-env-poor .vh-env-chip-value,.dashboard-shell.dash-sky-overcast .dash-col-center .vh-side-rail .vh-side-chip.vh-env-poor .vh-env-chip-value{color:#b91c1c!important}.dashboard-shell.dash-sky-night .dash-col-center .vh-side-rail .vh-side-chip{background:#080f1e52!important;border-color:#ffffff3d!important}.dashboard-shell.dash-sky-night .dash-col-center .vh-side-rail .vh-side-chip .vh-env-chip-label{color:#f8fafce6!important;text-shadow:0 0 8px rgba(0,0,0,.95),0 1px 4px rgba(0,0,0,.9),0 0 2px rgba(0,0,0,1)!important}.dashboard-shell.dash-sky-night .dash-col-center .vh-side-rail .vh-side-chip .vh-env-chip-value{color:#fff!important;text-shadow:0 0 12px rgba(0,0,0,.95),0 2px 6px rgba(0,0,0,.92),0 0 2px rgba(0,0,0,1)!important}.dashboard-shell.dash-sky-night .dash-col-center .vh-side-rail .vh-side-chip.vh-env-good .vh-env-chip-value{color:#5eead4!important}.dashboard-shell.dash-sky-night .dash-col-center .vh-side-rail .vh-side-chip.vh-env-moderate .vh-env-chip-value{color:#fbbf24!important}.dashboard-shell.dash-sky-night .dash-col-center .vh-side-rail .vh-side-chip.vh-env-poor .vh-env-chip-value{color:#fca5a5!important}.dashboard-shell .dash-col-center .vh-side-rail .vh-side-chip.vh-env-good{border-color:#34d3998c!important}.dashboard-shell .dash-col-center .vh-side-rail .vh-side-chip.vh-env-moderate{border-color:#fbbf2499!important}.dashboard-shell .dash-col-center .vh-side-rail .vh-side-chip.vh-env-poor{border-color:#f87171a6!important}.dashboard-shell .dash-col-center .vh-side-rail .vh-side-chip.vh-env-status-safe{border-color:#2dd4bf99!important}.dashboard-shell.dash-sky-day .dash-col-center .vh-side-rail .vh-side-chip.vh-env-status-safe .vh-env-chip-value,.dashboard-shell.dash-sky-overcast .dash-col-center .vh-side-rail .vh-side-chip.vh-env-status-safe .vh-env-chip-value{color:#0f766e!important}.dashboard-shell.dash-sky-night .dash-col-center .vh-side-rail .vh-side-chip.vh-env-status-safe .vh-env-chip-value{color:#5eead4!important}.dashboard-shell .dash-col-center .vh-side-rail .vh-side-chip.vh-env-status-caution{border-color:#fbbf24a6!important}.dashboard-shell.dash-sky-day .dash-col-center .vh-side-rail .vh-side-chip.vh-env-status-caution .vh-env-chip-value,.dashboard-shell.dash-sky-overcast .dash-col-center .vh-side-rail .vh-side-chip.vh-env-status-caution .vh-env-chip-value{color:#c2410c!important}.dashboard-shell.dash-sky-night .dash-col-center .vh-side-rail .vh-side-chip.vh-env-status-caution .vh-env-chip-value{color:#fbbf24!important}.dashboard-shell .dash-col-center .vh-side-rail .vh-side-chip.vh-env-status-avoid{border-color:#ef4444b3!important}.dashboard-shell.dash-sky-day .dash-col-center .vh-side-rail .vh-side-chip.vh-env-status-avoid .vh-env-chip-value,.dashboard-shell.dash-sky-overcast .dash-col-center .vh-side-rail .vh-side-chip.vh-env-status-avoid .vh-env-chip-value{color:#b91c1c!important}.dashboard-shell.dash-sky-night .dash-col-center .vh-side-rail .vh-side-chip.vh-env-status-avoid .vh-env-chip-value{color:#f87171!important}.dash-col-center .virtual-home-compact .vh-env-overlay{display:none}.vh-windows-strip{margin-top:.45rem;padding:.45rem .5rem .5rem;border-radius:10px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(10px) saturate(1.12);-webkit-backdrop-filter:blur(10px) saturate(1.12)}.vh-windows-strip-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.25rem .5rem;margin-bottom:.4rem}.vh-windows-strip-title{font-size:.62rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.vh-windows-strip-hint{font-size:.58rem;font-weight:600;opacity:.88}.vh-windows-compass{display:grid;grid-template-columns:repeat(4,1fr);gap:.35rem}.vh-window-cell{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.35rem .25rem;border-radius:8px;background:#ffffff0f;border:1px solid rgba(255,255,255,.14);text-align:center;min-width:0}.vh-window-compass{font-size:.95rem;font-weight:800;letter-spacing:-.02em;line-height:1}.vh-window-pill{font-size:.52rem!important;font-weight:800!important;letter-spacing:.06em;text-transform:uppercase;padding:.12rem .35rem!important}.vh-window-label{font-size:.52rem;font-weight:600;line-height:1.25;opacity:.92;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.vh-window-cell.vh-window-good{border-color:#34d39973}.vh-window-cell.vh-window-moderate{border-color:#fbbf2480}.vh-window-cell.vh-window-poor{border-color:#f871718c}.vh-windows-note{margin:.4rem 0 0;font-size:.68rem;font-weight:600;line-height:1.35}.dashboard-shell.dash-sky-day .vh-windows-strip,.dashboard-shell.dash-sky-overcast .vh-windows-strip,.dashboard-shell:not(.dash-sky-night) .vh-windows-strip{background:#ffffff24;border-color:#0f172a24}.dashboard-shell.dash-sky-day .vh-windows-strip-title,.dashboard-shell.dash-sky-overcast .vh-windows-strip-title,.dashboard-shell:not(.dash-sky-night) .vh-windows-strip-title,.dashboard-shell.dash-sky-day .vh-windows-note,.dashboard-shell.dash-sky-overcast .vh-windows-note,.dashboard-shell:not(.dash-sky-night) .vh-windows-note{color:#0f172a;text-shadow:0 0 8px rgba(255,255,255,.9),0 1px 2px rgba(255,255,255,.75)}.dashboard-shell.dash-sky-day .vh-windows-strip-hint,.dashboard-shell.dash-sky-overcast .vh-windows-strip-hint,.dashboard-shell:not(.dash-sky-night) .vh-windows-strip-hint{color:#334155;text-shadow:0 0 6px rgba(255,255,255,.85)}.dashboard-shell.dash-sky-day .vh-window-compass,.dashboard-shell.dash-sky-overcast .vh-window-compass,.dashboard-shell:not(.dash-sky-night) .vh-window-compass{color:#020617;text-shadow:0 0 8px rgba(255,255,255,.92)}.dashboard-shell.dash-sky-day .vh-window-label,.dashboard-shell.dash-sky-overcast .vh-window-label,.dashboard-shell:not(.dash-sky-night) .vh-window-label{color:#1e293b;text-shadow:0 0 6px rgba(255,255,255,.8)}.dashboard-shell.dash-sky-night .vh-windows-strip{background:#080f1e4d;border-color:#fff3}.dashboard-shell.dash-sky-night .vh-windows-strip-title,.dashboard-shell.dash-sky-night .vh-windows-note{color:#f8fafc;text-shadow:0 1px 4px rgba(0,0,0,.9)}.dashboard-shell.dash-sky-night .vh-windows-strip-hint,.dashboard-shell.dash-sky-night .vh-window-label{color:#e2e8f0eb;text-shadow:0 1px 3px rgba(0,0,0,.85)}.dashboard-shell.dash-sky-night .vh-window-compass{color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.9)}.dash-col-center .vh-map-square{height:100%;width:auto;aspect-ratio:1 / 1;max-width:100%;flex:0 0 auto;display:flex;align-items:center;justify-content:center}.dash-col-center .vh-map-square .vh-wind-canvas{flex:0 0 auto;aspect-ratio:1 / 1}.dash-col-center .vh-wind-canvas,.dash-col-center .vh-plan-svg{display:block;width:100%;height:100%;max-width:none;max-height:none;border-radius:0;box-shadow:none}.dash-col-center .vh-env-strip-compact .vh-env-chip{min-width:2.85rem;padding:.18rem .3rem}.dash-col-center .vh-env-strip-compact .vh-env-chip-label{font-size:.54rem}.dash-col-center .vh-env-strip-compact .vh-env-chip-value{font-size:.62rem}.dash-bottom{grid-column:1 / -1;grid-row:5;display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem;align-items:stretch}.dash-bottom>.symptom-checkin,.dash-bottom>.symptom-panel{display:flex;flex-direction:column}.dash-site-footer{grid-column:1 / -1;grid-row:6;display:flex;flex-direction:column;gap:.65rem}.vh-windows-strip-pending{min-height:3.35rem;visibility:hidden;pointer-events:none}.weather-alerts-empty{min-height:4.25rem}.dash-tile{margin:0;min-height:0;overflow:hidden}.dash-tile-compact{padding:.45rem .55rem!important;border-radius:10px!important;font-size:.88rem}.dash-tile-compact h2{margin:0 0 .3rem;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.dash-tile-compact .guidance-card,.dash-tile-compact.guidance-card{box-shadow:none}.dash-clamp-1{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.dash-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dash-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:0;font-size:.78rem;line-height:1.35}.dash-delta{margin:0;font-size:.72rem;font-weight:600}.zone-summary-compact{margin-bottom:0}.zone-summary-compact .zone-summary-inner{padding:.55rem .65rem}.zone-summary-compact .zone-plain-verdict{font-size:.92rem;font-weight:800;line-height:1.2}.zone-summary-compact.status-avoid .zone-plain-verdict{font-size:1.02rem;letter-spacing:-.01em}.zone-summary-compact.status-safe .zone-plain-verdict{font-size:.98rem}.zone-summary-compact .zone-status-ribbon{padding:.22rem .5rem;font-size:.58rem}.zone-summary-compact .zone-plain-action{font-size:.78rem;margin-top:.25rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.zone-summary-compact .comfort-meter{margin-top:.4rem}.zone-summary-compact .comfort-meter-track{height:5px}.zone-summary-compact .zone-score-footnote{font-size:.58rem}.zone-summary-compact .pulse-ring-wrap{width:72px;height:72px}.zone-summary-compact .pulse-ring-score{font-size:1.72rem;font-weight:800;letter-spacing:-.06em}.zone-summary-compact .zone-headline{font-size:.84rem;margin:.25rem 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.zone-summary-compact .zone-drivers{margin-top:.35rem}.zone-summary-compact .driver-row{font-size:.8rem;padding:.1rem 0}.zone-summary-compact .zone-meta{margin-top:.3rem;font-size:.65rem}.trend-card{margin-bottom:0;padding:.45rem .55rem;border-radius:10px}.trend-card h3{font-size:.72rem;margin:0}.trend-card-compact .trend-sparkline{height:36px}.trend-card-compact .trend-header{margin-bottom:.2rem}.trend-card-compact .trend-badge{font-size:.62rem}.dashboard-shell .weather-alerts .alert-row{font-size:.84rem;line-height:1.45;font-weight:600}.dashboard-shell .weather-alerts .alert-row strong{font-size:.8rem;font-weight:800}.dash-bottom .dash-tile-compact{border-radius:12px}.nearby-count-label{margin:.25rem 0 .5rem;font-size:.72rem;font-weight:600;color:var(--sky-teal-dark)}.dashboard-shell .nearby-count-label{color:var(--dash-accent)}.nearby-panel-full .nearby-impact-reason{font-size:.82rem;line-height:1.45}.scroll-region{display:flex;flex-direction:column;min-height:0}.scroll-region-body{overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable;padding-right:.15rem;border-radius:12px}.scroll-region-body:focus-visible{outline:2px solid var(--sky-teal);outline-offset:2px}.scroll-region-body::-webkit-scrollbar{width:10px}.scroll-region-body::-webkit-scrollbar-track{background:color-mix(in srgb,var(--mist) 80%,transparent);border-radius:0 12px 12px 0}.scroll-region-body::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--sky-teal) 55%,var(--outline));border-radius:8px;border:2px solid var(--surface)}.scroll-region-body{scrollbar-width:thin;scrollbar-color:var(--sky-teal) var(--mist)}.scroll-region-hint{margin:.35rem 0 0;padding:.3rem .5rem;font-size:.72rem;font-weight:700;color:var(--sky-teal-dark);text-align:center;background:color-mix(in srgb,var(--sky-teal) 8%,var(--surface));border-radius:8px;border:1px dashed color-mix(in srgb,var(--sky-teal) 35%,var(--outline))}.dash-scroll-indoor .guidance-card,.dash-scroll-left .guidance-card,.dash-scroll-alerts .guidance-card,.dash-scroll-exposure .guidance-card{margin:0 0 .5rem;border:1px solid var(--dash-glass-border)!important;border-radius:12px;background:var(--dash-glass)!important;backdrop-filter:var(--dash-glass-blur);-webkit-backdrop-filter:var(--dash-glass-blur);box-shadow:none!important}.dash-scroll-indoor .scroll-region-body,.dash-scroll-left .scroll-region-body,.dash-scroll-alerts .scroll-region-body,.dash-scroll-exposure .scroll-region-body,.dash-scroll-nearby-details .scroll-region-body{padding:.65rem .75rem}.window-row-compact{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.35rem}.window-chip{font-size:.62rem;font-weight:700;text-transform:uppercase;padding:.15rem .35rem;border-radius:6px;background:var(--mist)}.symptom-chips-compact{gap:.25rem!important}.symptom-chips-compact .symptom-chip{padding:.2rem .4rem!important;font-size:.68rem!important}.dashboard-shell .symptom-checkin .checkin-submit{padding:.35rem .5rem;font-size:.75rem;margin-top:.35rem}.dashboard-loading,.dashboard-empty{flex:1;width:100%;min-height:min(58vh,480px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;font-size:.85rem;text-align:center}.dashboard-loading.loading-state{padding:0}@media(max-width:1100px){.dashboard-grid{grid-template-columns:1fr}.dash-col-left,.dash-col-center,.dash-col-right{grid-column:1}.dash-col-center{grid-row:1}.dash-col-left{grid-row:2}.dash-col-right{grid-row:3}.dash-section-activities{grid-row:4}.dash-section-nearby{grid-row:5}.dash-section-indoor{grid-row:6}.dash-bottom{grid-row:7;grid-template-columns:1fr}.dash-site-footer{grid-row:8}}.app-bar{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 0 .75rem;border-bottom:1px solid color-mix(in srgb,var(--outline) 35%,transparent);margin-bottom:1.5rem}.brand{display:flex;align-items:center;gap:.65rem}.brand-icon{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,var(--sky-teal),var(--sage));display:grid;place-items:center;color:#fff;font-weight:700;font-size:1.1rem;box-shadow:0 4px 14px #0d948840}.brand-text h1{margin:0;font-size:1.15rem;font-weight:700;letter-spacing:-.02em;animation:brand-breathe-color 11s ease-in-out infinite,brand-breathe-scale 11s ease-in-out infinite;transform-origin:left center}@keyframes brand-breathe-color{0%{color:#16a34a}25%{color:#eab308}50%{color:#ea580c}75%{color:#dc2626}to{color:#16a34a}}@keyframes brand-breathe-scale{0%,to{transform:scale(1)}50%{transform:scale(1.015)}}@media(prefers-reduced-motion:reduce){.brand-text h1{animation:none}}.brand-text p{margin:0;font-size:.75rem;color:var(--muted)}.refresh-btn{background:var(--surface);border:1px solid var(--outline);color:var(--sky-teal-dark);border-radius:999px;padding:.45rem 1rem;font-size:.85rem;font-weight:600}.refresh-btn:disabled{opacity:.5}.zone-summary{background:color-mix(in srgb,var(--zone-tint) 14%,var(--surface));border:1px solid color-mix(in srgb,var(--zone-tint) 28%,var(--outline));border-radius:20px;margin-bottom:1.25rem;overflow:hidden}.zone-summary-inner{padding:1.25rem 1.35rem}.zone-summary-top{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.zone-summary-copy{flex:1;min-width:0}.zone-plain-verdict{margin:0;font-size:1.05rem;font-weight:800;line-height:1.25;color:var(--zone-tint);letter-spacing:-.02em}.zone-summary.status-safe .comfort-meter-easy{color:#047857}.zone-summary.status-safe .comfort-meter-hard{color:#b91c1c}.zone-plain-action{margin:.35rem 0 0;font-size:.84rem;line-height:1.45;color:var(--text)}.zone-score-block{flex-shrink:0;text-align:center}.zone-score-footnote{margin:.15rem 0 0;font-size:.62rem;font-weight:600;color:var(--muted);letter-spacing:.02em}.comfort-meter{display:flex;align-items:center;gap:.4rem;margin-top:.55rem}.comfort-meter-label{font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);flex-shrink:0}.comfort-meter-track{position:relative;flex:1;height:6px;border-radius:999px;background:color-mix(in srgb,var(--outline) 55%,transparent);overflow:visible}.comfort-meter-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#94a3b8,#f59e0b,#ef4444);opacity:.85}.comfort-meter-thumb{position:absolute;top:50%;width:10px;height:10px;margin-left:-5px;transform:translateY(-50%);border-radius:50%;background:var(--text);border:2px solid var(--surface);box-shadow:0 1px 4px #00000040}.driver-impact{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:.1rem .35rem;border-radius:4px}.driver-impact.impact-high{color:var(--zone-avoid);background:color-mix(in srgb,var(--zone-avoid) 12%,transparent)}.driver-impact.impact-medium{color:var(--zone-caution);background:color-mix(in srgb,var(--zone-caution) 12%,transparent)}.driver-impact.impact-low,.driver-impact.impact-slight{color:var(--muted);background:color-mix(in srgb,var(--outline) 30%,transparent)}.zone-status-label{margin:0;font-size:1.2rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--zone-tint)}.zone-metric-name{margin:.15rem 0 0;font-size:.56rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.11em}.zone-place-name{margin:.35rem 0 0;font-size:.9rem;color:var(--text)}.score-badge{text-align:right;flex-shrink:0}.score-badge-value{display:block;font-size:2.65rem;font-weight:800;line-height:1;color:var(--zone-tint);letter-spacing:-.05em;font-variant-numeric:tabular-nums lining-nums}.score-badge-max{font-size:.75rem;color:var(--muted)}.zone-not-aqi{margin:1rem 0 .5rem;font-size:.8rem;color:var(--muted);line-height:1.45}.zone-headline{margin:0;font-size:1rem;line-height:1.5}.zone-drivers{margin-top:1rem;padding-top:.85rem;border-top:1px solid color-mix(in srgb,var(--outline) 40%,transparent)}.section-label{margin:0 0 .5rem;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.driver-row{display:flex;justify-content:space-between;padding:.35rem 0;font-size:.9rem}.driver-name{color:var(--text)}.driver-points{font-weight:600;color:var(--sky-teal-dark)}.zone-meta{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin-top:1rem;align-items:center}.confidence-pill{font-size:.75rem;font-weight:600;background:var(--mist);color:var(--sky-teal-dark);padding:.25rem .65rem;border-radius:999px}.updated-at{font-size:.75rem;color:var(--muted)}.scale-legend{background:var(--mist);border-radius:12px;padding:.75rem 1rem;font-size:.8rem;color:var(--muted-sage);margin-bottom:1.25rem;line-height:1.45}.locations-panel{background:var(--surface);border:1px solid color-mix(in srgb,var(--outline) 50%,transparent);border-radius:16px;padding:1.1rem 1.25rem;margin-bottom:1.25rem;box-shadow:0 2px 12px #1a2e280a}.locations-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.85rem}.locations-header h2{margin:0;font-size:.95rem;font-weight:700}.ghost-btn{background:transparent;border:1px solid var(--outline);color:var(--sky-teal-dark);border-radius:999px;padding:.4rem .9rem;font-size:.82rem;font-weight:600}.place-chips{display:flex;flex-wrap:wrap;gap:.5rem}.place-chip-wrap{display:flex;align-items:center}.place-chip{border:1.5px solid var(--outline);background:var(--bg);color:var(--text);border-radius:999px;padding:.45rem 1rem;font-size:.88rem;font-weight:500;transition:border-color .15s,background .15s}.place-chip.active{border-color:var(--sky-teal);background:color-mix(in srgb,var(--sky-teal) 12%,var(--warm-surface));color:var(--sky-teal-dark);font-weight:600}.chip-remove{background:none;border:none;color:var(--muted);font-size:1.2rem;padding:0 .35rem 0 .15rem;line-height:1}.add-pin-form{margin-top:1rem;padding-top:1rem;border-top:1px dashed var(--outline)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}label{display:flex;flex-direction:column;gap:.35rem;font-size:.8rem;font-weight:600;color:var(--muted)}label.full{margin-top:.75rem}label.full:first-child{margin-top:0}input{background:var(--bg);border:1px solid var(--outline);border-radius:12px;padding:.7rem .85rem;color:var(--text);font-size:.95rem}input:focus{outline:2px solid color-mix(in srgb,var(--sky-teal) 40%,transparent);border-color:var(--sky-teal)}.primary{margin-top:1rem;width:100%;border:none;border-radius:12px;padding:.85rem;background:linear-gradient(135deg,var(--sky-teal),var(--sky-teal-dark));color:#fff;font-weight:700;font-size:.95rem;box-shadow:0 4px 14px #0d94884d}.primary:disabled{opacity:.55;box-shadow:none}.section-title{margin:0 0 .85rem;font-size:1rem;font-weight:700}.metrics-grid{margin-bottom:1.25rem}.metrics-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.65rem}.metric-card{background:var(--surface);border:1px solid color-mix(in srgb,var(--outline) 45%,transparent);border-radius:14px;padding:.85rem 1rem;border-left:3px solid var(--outline)}.metric-card.metric-good{border-left-color:var(--zone-safe)}.metric-card.metric-moderate{border-left-color:var(--zone-caution)}.metric-card.metric-poor{border-left-color:var(--zone-avoid)}.metric-card.metric-neutral{border-left-color:var(--outline)}.metric-label{margin:0;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.metric-value{margin:.25rem 0 0;font-size:1.15rem;font-weight:700}.metric-note{margin:.2rem 0 0;font-size:.72rem;color:var(--muted)}.symptom-panel{background:var(--surface);border:1px solid color-mix(in srgb,var(--outline) 50%,transparent);border-radius:16px;padding:1.1rem 1.25rem;margin-bottom:1.5rem}.symptom-panel h2{margin:0 0 .35rem;font-size:.95rem}.symptom-hint{margin:0 0 .75rem;font-size:.82rem;color:var(--muted)}.symptom-routes{margin:0;padding-left:1.15rem;font-size:.9rem;line-height:1.55}.symptom-routes li+li{margin-top:.35rem}.source-footnote{margin:-.5rem 0 1.25rem;font-size:.78rem;color:var(--muted);text-align:center}.loading-state{display:flex;align-items:center;gap:.75rem;padding:2rem 0;color:var(--muted)}.spinner{width:22px;height:22px;border:2.5px solid var(--mist);border-top-color:var(--sky-teal);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;padding:2.5rem 1.5rem;background:var(--surface);border-radius:16px;border:1px dashed var(--outline)}.empty-state h2{margin:0 0 .5rem;font-size:1.1rem}.empty-state p{margin:0;color:var(--muted);font-size:.9rem}.error-banner{background:color-mix(in srgb,var(--zone-avoid) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--zone-avoid) 35%,transparent);border-radius:12px;padding:.85rem 1rem;color:#991b1b;font-size:.88rem;margin-bottom:1rem}.error-inline{color:var(--zone-avoid);font-size:.88rem;margin:.5rem 0 0}.paywall-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;background:color-mix(in srgb,var(--zone-caution) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--zone-caution) 35%,transparent);border-radius:12px;padding:.85rem 1rem;font-size:.88rem;margin-bottom:1rem}.paywall-banner p{margin:0}.paywall-pay-btn{border:none;border-radius:999px;padding:.5rem 1.1rem;background:var(--sky-teal);color:#fff;font-weight:600;white-space:nowrap}.paywall-coming-soon{color:var(--muted);font-size:.82rem;white-space:nowrap}.route-paywall-card{max-width:420px;margin:3rem auto;background:var(--surface);border:1px solid color-mix(in srgb,var(--zone-caution) 35%,transparent);border-radius:16px;padding:1.5rem;text-align:center;display:flex;flex-direction:column;gap:.9rem;align-items:center}.route-paywall-card h2{margin:0}.stale-score-card{background:var(--surface);border:1px solid color-mix(in srgb,var(--muted) 25%,transparent);border-radius:12px;padding:1rem;margin-bottom:1rem}.stale-score-value{margin:0 0 .6rem;font-size:.95rem}.app-footer{text-align:center;font-size:.78rem;color:var(--muted);padding-top:1rem}.word-glossary{margin-top:0;max-width:52rem;margin-left:auto;margin-right:auto;border-radius:12px;border:1px solid var(--dash-glass-border);background:var(--dash-glass-strong)!important;backdrop-filter:var(--dash-glass-blur);-webkit-backdrop-filter:var(--dash-glass-blur);overflow:hidden}.word-glossary-summary{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.5rem .65rem;padding:.75rem 1rem;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}.word-glossary-summary::-webkit-details-marker{display:none}.word-glossary-kicker{font-size:.58rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--dash-text-muted)}.word-glossary-title{font-size:.82rem;font-weight:700;color:var(--dash-text-strong);text-align:left}.word-glossary-chevron{width:.45rem;height:.45rem;border-right:2px solid var(--dash-text-muted);border-bottom:2px solid var(--dash-text-muted);transform:rotate(45deg);transition:transform .2s ease;margin-right:.15rem}.word-glossary[open] .word-glossary-chevron{transform:rotate(225deg);margin-top:.2rem}.word-glossary-body{padding:0 1rem 1rem;border-top:1px solid var(--dash-glass-border)}.word-glossary-intro{margin:.75rem 0 .65rem;font-size:.74rem;line-height:1.55;color:var(--dash-text-muted);text-align:center}.word-glossary-list{margin:0;display:grid;gap:.55rem}.word-glossary-item{padding:.55rem .65rem;border-radius:8px;background:var(--dash-glass-inset, rgba(255, 255, 255, .08));border:1px solid var(--dash-glass-border)}.word-glossary-item dt{margin:0;font-size:.76rem;font-weight:800;color:var(--dash-accent-deep, #065f46)}.word-glossary-item dd{margin:.25rem 0 0;font-size:.72rem;line-height:1.5;color:var(--dash-text)}.dashboard-shell.dash-sky-night .word-glossary-item dt{color:#fde68a}.dashboard-shell.dash-sky-night .word-glossary-item dd{color:var(--dash-text-muted)}.legal-disclaimer{margin-top:.65rem;padding:.85rem 1rem 1rem;border-radius:12px;border:1px solid var(--dash-glass-border);background:var(--dash-glass-strong)!important;backdrop-filter:var(--dash-glass-blur);-webkit-backdrop-filter:var(--dash-glass-blur);text-align:center;max-width:52rem;margin-left:auto;margin-right:auto}.legal-disclaimer-kicker{margin:0 0 .35rem;font-size:.62rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--dash-text-muted)}.legal-disclaimer-lead{margin:0 0 .5rem;font-size:.82rem;font-weight:700;line-height:1.45;color:var(--dash-text-strong)}.legal-disclaimer p{margin:0;font-size:.74rem;line-height:1.55;color:var(--dash-text)}.legal-disclaimer p+p{margin-top:.45rem}.dashboard-shell.dash-sky-night .legal-disclaimer-lead{color:var(--dash-text)}.dashboard-shell.dash-sky-night .legal-disclaimer p{color:var(--dash-text-muted)}.app-tabs{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1rem}.app-view-nav{position:relative;z-index:1}.app-tab{border:1.5px solid var(--outline);background:var(--surface);color:var(--text);border-radius:999px;padding:.4rem .85rem;font-size:.82rem;font-weight:600}.app-tab.active{border-color:var(--sky-teal);background:color-mix(in srgb,var(--sky-teal) 12%,var(--warm-surface));color:var(--sky-teal-dark)}.app-tab-link{display:inline-block;text-decoration:none}.place-header{margin-bottom:1rem}.place-header-name{margin:0;font-size:1.1rem}.place-header-meta,.place-header-model{margin:.2rem 0 0;font-size:.82rem;color:var(--muted)}.operating-hint{margin:0 0 1rem;font-size:.9rem;color:var(--muted-sage)}.guidance-card{background:var(--surface);border:1px solid color-mix(in srgb,var(--outline) 50%,transparent);border-radius:16px;padding:1.1rem 1.25rem;margin-bottom:1.25rem;box-shadow:0 2px 12px #1a2e280a}.guidance-card h2{margin:0 0 .5rem;font-size:.95rem}.guidance-activities{background:color-mix(in srgb,var(--sky-teal) 8%,var(--warm-surface))}.guidance-emphasis{margin:.5rem 0;font-weight:600;font-size:.9rem}.bullet-list{margin:.25rem 0 .75rem;padding-left:1.15rem;font-size:.88rem;line-height:1.5}.bullet-list li+li{margin-top:.3rem}.symptom-tags{display:flex;flex-wrap:wrap;gap:.35rem}.symptom-tag{background:var(--mist);color:var(--sky-teal-dark);font-size:.78rem;padding:.2rem .55rem;border-radius:999px}.metric-sections{margin-bottom:1.25rem}.metric-section-card{background:var(--surface);border:1px solid color-mix(in srgb,var(--outline) 45%,transparent);border-radius:14px;padding:.85rem 1rem;margin-bottom:.65rem}.metric-section-card h3{margin:0 0 .65rem;font-size:.9rem}.metric-tile{padding:.55rem 0;border-top:1px solid color-mix(in srgb,var(--outline) 30%,transparent)}.metric-tile:first-of-type{border-top:none}.metric-tile-top{display:flex;justify-content:space-between;align-items:center}.level-pill{font-size:.68rem;font-weight:700;text-transform:uppercase;padding:.15rem .45rem;border-radius:6px}.level-good{color:var(--zone-safe);background:color-mix(in srgb,var(--zone-safe) 12%,transparent)}.level-moderate{color:var(--zone-caution);background:color-mix(in srgb,var(--zone-caution) 12%,transparent)}.level-poor{color:var(--zone-avoid);background:color-mix(in srgb,var(--zone-avoid) 12%,transparent)}.level-unknown{color:var(--muted);background:var(--mist)}.metric-good{border-left:3px solid var(--zone-safe);padding-left:.5rem}.metric-moderate{border-left:3px solid var(--zone-caution);padding-left:.5rem}.metric-poor{border-left:3px solid var(--zone-avoid);padding-left:.5rem}.ventilation-card .highlight-box{background:var(--mist);border-radius:12px;padding:.75rem 1rem;margin:.5rem 0 .75rem}.window-row{display:flex;justify-content:space-between;align-items:center;padding:.35rem 0;font-size:.88rem}.history-calendar-header{display:flex;align-items:center;justify-content:center;gap:1rem;font-weight:600;margin-bottom:.5rem}.history-calendar-header .ghost-btn{padding:.2rem .6rem;font-size:1rem}.history-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.25rem}.history-calendar-weekdays{margin-bottom:.25rem;text-align:center;font-size:.75rem;color:var(--muted);font-weight:600}.history-calendar-blank{visibility:hidden}.history-calendar-day{position:relative;aspect-ratio:1;border:1px solid transparent;border-radius:8px;background:var(--mist);font-size:.82rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.history-calendar-day:hover{border-color:var(--sky-teal)}.history-calendar-day.is-today{font-weight:700;color:var(--sky-teal-dark)}.history-calendar-day.selected{background:color-mix(in srgb,var(--sky-teal) 20%,var(--warm-surface));border-color:var(--sky-teal)}.history-calendar-dot{position:absolute;bottom:4px;width:5px;height:5px;border-radius:999px}.history-calendar-dot.dot-symptom{background:var(--zone-caution, #e08a1e)}.history-calendar-dot.dot-journal{background:var(--sky-teal)}.history-day-detail{margin-top:.9rem;padding-top:.75rem;border-top:1px solid color-mix(in srgb,var(--outline) 35%,transparent)}.history-day-detail h3{margin:0 0 .4rem;font-size:.95rem}.history-day-entry+.history-day-entry{margin-top:.6rem;padding-top:.6rem;border-top:1px dashed color-mix(in srgb,var(--outline) 35%,transparent)}.history-day-symptoms{margin:0;font-size:.9rem}.history-day-journal{margin:.35rem 0 0;font-size:.88rem;font-style:italic;color:var(--muted)}.app-only-block{margin-top:.75rem;padding:.75rem;background:var(--mist);border-radius:10px;font-size:.88rem}.muted-inline{color:var(--muted);font-size:.88rem}.operating-card{background:color-mix(in srgb,var(--sky-teal) 6%,var(--surface))}@keyframes tabEnter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.tab-panel-enter{animation:tabEnter .35s ease-out}@keyframes breatheRing{0%,to{transform:scale(1);opacity:.35}50%{transform:scale(1.06);opacity:.15}}.pulse-ring-wrap{position:relative;width:120px;height:120px;flex-shrink:0}.pulse-ring-svg{width:100%;height:100%;transform:rotate(-90deg)}.pulse-ring-bg{fill:none;stroke:color-mix(in srgb,var(--outline) 40%,transparent);stroke-width:8}.pulse-ring-fg{fill:none;stroke-width:8;stroke-linecap:round;transition:stroke-dashoffset .6s ease-out}.pulse-ring-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.pulse-ring-score{font-size:2.15rem;font-weight:800;line-height:1;letter-spacing:-.05em;font-variant-numeric:tabular-nums lining-nums}.pulse-ring-max{font-size:.72rem;color:var(--muted)}.pulse-ring-breathe{position:absolute;top:8px;right:8px;bottom:8px;left:8px;border-radius:50%;background:color-mix(in srgb,var(--zone-tint, var(--sky-teal)) 20%,transparent);animation:breatheRing 3.5s ease-in-out infinite;pointer-events:none}.status-safe .pulse-ring-breathe{background:color-mix(in srgb,var(--zone-safe) 18%,transparent)}.status-caution .pulse-ring-breathe{background:color-mix(in srgb,var(--zone-caution) 18%,transparent)}.status-avoid .pulse-ring-breathe{background:color-mix(in srgb,var(--zone-avoid) 18%,transparent)}.engagement-hero{border-radius:16px;padding:1rem 1.15rem;margin-bottom:1rem;background:linear-gradient(135deg,color-mix(in srgb,var(--sky-teal) 14%,var(--surface)),var(--surface));border:1px solid color-mix(in srgb,var(--sky-teal) 25%,var(--outline))}.engagement-greeting{margin:0;font-size:1rem}.engagement-stats{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.55rem;align-items:center}.engagement-pill{font-size:.75rem;font-weight:600;padding:.25rem .6rem;border-radius:999px;background:var(--mist);color:var(--sky-teal-dark)}.engagement-pill.streak{background:color-mix(in srgb,var(--warm-coral) 15%,var(--mist));color:#c2410c}.delta-good{font-size:.8rem;font-weight:600;color:var(--zone-safe)}.delta-warn{font-size:.8rem;font-weight:600;color:var(--zone-caution)}.dashboard-shell.dash-sky-night .dash-col-left .delta-good{color:#fde68a;text-shadow:0 1px 4px rgba(0,0,0,.8)}.dashboard-shell.dash-sky-night .dash-col-left .delta-warn{color:#fca5a5;text-shadow:0 1px 4px rgba(0,0,0,.8)}.trend-card{background:var(--surface);border:1px solid color-mix(in srgb,var(--outline) 45%,transparent);border-radius:16px;padding:1rem 1.15rem;margin-bottom:1.25rem}.trend-header{display:flex;justify-content:space-between;align-items:center;gap:.5rem;flex-wrap:wrap}.trend-card h3{margin:0;font-size:.95rem}.trend-badge{font-size:.72rem;font-weight:700;padding:.2rem .5rem;border-radius:6px}.trend-good{background:color-mix(in srgb,var(--zone-safe) 15%,transparent);color:var(--zone-safe)}.trend-poor{background:color-mix(in srgb,var(--zone-avoid) 12%,transparent);color:var(--zone-avoid)}.trend-neutral{background:var(--mist);color:var(--muted)}.trend-sparkline{width:100%;height:64px;margin:.65rem 0 .35rem}.trend-line{fill:none;stroke:var(--sky-teal);stroke-width:2.5;stroke-linejoin:round}.trend-dot{fill:var(--sky-teal-dark)}.driver-explorer{margin-bottom:1.25rem}.driver-card{width:100%;text-align:left;background:var(--surface);border:1px solid color-mix(in srgb,var(--outline) 45%,transparent);border-radius:14px;padding:.75rem 1rem;margin-bottom:.5rem;transition:border-color .2s,box-shadow .2s,transform .15s}.driver-card:hover{border-color:var(--sky-teal)}.driver-card.open{border-color:var(--sky-teal);box-shadow:0 4px 16px #0d94881f;transform:translateY(-1px)}.driver-card-top{display:flex;justify-content:space-between;margin-bottom:.4rem}.driver-bar-track{height:6px;background:var(--mist);border-radius:999px;overflow:hidden}.driver-bar-fill{height:100%;background:linear-gradient(90deg,var(--sky-teal),var(--sage));border-radius:999px;transition:width .6s ease-out}.driver-tip{margin:.65rem 0 0;font-size:.85rem;color:var(--muted-sage);line-height:1.45}.symptom-checkin{background:var(--surface);border-radius:16px;padding:1.15rem 1.25rem;margin-bottom:1.25rem;border:1px solid color-mix(in srgb,var(--outline) 50%,transparent);transition:background .3s}.symptom-checkin.checkin-success{background:color-mix(in srgb,var(--zone-safe) 10%,var(--surface));border-color:var(--zone-safe)}.symptom-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin:.75rem 0 1rem}.symptom-chip{display:inline-flex;align-items:center;gap:.35rem;border:1.5px solid var(--outline);background:var(--bg);border-radius:999px;padding:.5rem .85rem;font-size:.85rem;font-weight:500;transition:all .15s}.symptom-chip:hover{border-color:var(--sky-teal)}.symptom-chip.selected{border-color:var(--sky-teal);background:color-mix(in srgb,var(--sky-teal) 14%,var(--warm-surface));color:var(--sky-teal-dark);font-weight:600;transform:scale(1.02)}.chip-emoji{font-size:1rem}.checkin-clear{margin-top:.5rem;width:100%}.checkin-journal-field{margin:.25rem 0 .85rem;position:relative}.checkin-journal-field textarea{font-family:inherit;width:100%;padding:.6rem .75rem;border-radius:10px;border:1.5px solid var(--outline);background:var(--bg);resize:vertical}.checkin-journal-count{position:absolute;right:.4rem;bottom:-1.1rem;font-size:.72rem;color:var(--muted)}.symptom-checkin.checkin-logged{background:color-mix(in srgb,var(--zone-safe) 8%,var(--surface));border-color:color-mix(in srgb,var(--zone-safe) 40%,var(--outline))}.location-scoreboard{margin-bottom:1rem}.scoreboard-row{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.25rem}.scoreboard-card{flex:1;min-width:88px;border:2px solid var(--outline);border-radius:14px;padding:.65rem .5rem;background:var(--surface);text-align:center;transition:transform .15s,border-color .15s}.scoreboard-card:hover{transform:translateY(-2px)}.scoreboard-card.active{border-color:var(--sky-teal);box-shadow:0 4px 12px #0d948826}.scoreboard-name{display:block;font-size:.72rem;font-weight:600;color:var(--muted)}.scoreboard-score{display:block;font-size:1.5rem;font-weight:800;line-height:1.2}.scoreboard-label{font-size:.65rem;color:var(--muted);text-transform:uppercase}.wind-compass{display:flex;align-items:center;gap:1.25rem;background:var(--mist);border-radius:16px;padding:1rem 1.25rem;margin-bottom:1.25rem}.compass-dial{position:relative;width:100px;height:100px;border-radius:50%;border:2px solid var(--outline);background:var(--surface);flex-shrink:0;transition:transform .8s ease-out}.compass-arrow{position:absolute;top:12px;left:50%;transform:translate(-50%);font-size:1.25rem;color:var(--sky-teal);font-weight:700}.compass-n,.compass-e,.compass-s,.compass-w{position:absolute;font-size:.65rem;font-weight:700;color:var(--muted)}.compass-n{top:4px;left:50%;transform:translate(-50%)}.compass-s{bottom:4px;left:50%;transform:translate(-50%)}.compass-e{right:6px;top:50%;transform:translateY(-50%)}.compass-w{left:6px;top:50%;transform:translateY(-50%)}.refresh-btn.spinning{opacity:.7}.live-clock{font-size:.75rem;color:var(--muted)}.app-tab{transition:transform .12s,background .15s}.app-tab:active{transform:scale(.96)}@media(max-width:520px){.field-row{grid-template-columns:1fr}.score-badge-value{font-size:2rem}}.map-pin-picker{margin-bottom:.75rem}.map-pin-canvas{width:100%;border-radius:14px;border:1px solid var(--outline);overflow:hidden;z-index:0}.bw-map-pin{background:transparent;border:none}.bw-pin-head{width:18px;height:18px;margin:0 auto;border-radius:50% 50% 50% 0;background:var(--sky-teal);transform:rotate(-45deg);box-shadow:0 2px 6px #00000040}.bw-pin-stem{width:4px;height:10px;margin:-2px auto 0;background:var(--sky-teal-dark);border-radius:2px}select{background:var(--bg);border:1px solid var(--outline);border-radius:12px;padding:.7rem .85rem;color:var(--text);font-size:.95rem}input[type=range]{padding:0;accent-color:var(--sky-teal)}.place-header-area{margin:.15rem 0 0;font-size:.85rem;color:var(--sky-teal);font-weight:600}.osm-scan-pending{margin:.5rem 0 0;padding:.55rem .75rem;border-radius:10px;font-size:.8rem;font-weight:600;color:var(--sky-teal-dark);background:color-mix(in srgb,var(--sky-teal) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--sky-teal) 35%,var(--outline))}.osm-scan-pending:before{content:"◌ ";opacity:.85}.osm-scan-progress{margin:.4rem 0 0;height:5px;border-radius:999px;overflow:hidden;background:color-mix(in srgb,var(--sky-teal) 16%,var(--surface))}.osm-scan-progress-fill{height:100%;width:40%;border-radius:999px;background:linear-gradient(90deg,transparent,var(--sky-teal),transparent);animation:osm-scan-slide 1.3s ease-in-out infinite}@keyframes osm-scan-slide{0%{transform:translate(-120%)}to{transform:translate(320%)}}@media(prefers-reduced-motion:reduce){.osm-scan-progress-fill{animation:none;width:100%;background:var(--sky-teal);opacity:.5}}.premise-confidence .shielding-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem;margin-top:1rem}.shield-cell{background:var(--mist);border-radius:10px;padding:.5rem .65rem;font-size:.75rem}.shield-side{font-weight:700;margin-right:.35rem}.shield-bar{display:inline-block;height:4px;background:var(--sky-teal);border-radius:2px;vertical-align:middle;margin:0 .35rem;max-width:60%}.shield-high .shield-bar{background:#0d9488}.shield-mid .shield-bar{background:#f59e0b}.shield-low .shield-bar{background:#94a3b8}.weather-alerts .alert-row{display:flex;flex-direction:column;gap:.2rem;padding:.65rem .85rem;border-radius:10px;margin-top:.5rem;background:var(--mist)}.alert-alert{border-left:3px solid #dc2626}.alert-watch{border-left:3px solid #f59e0b}.nearby-source-list{display:flex;flex-direction:column;gap:.65rem;margin-top:.75rem}.nearby-source-row{background:var(--mist);border-radius:12px;padding:.75rem .9rem;border-left:3px solid transparent}.nearby-impact-high{border-left-color:#dc2626}.nearby-impact-moderate{border-left-color:#f59e0b}.nearby-impact-shield{border-left-color:#14b8a6}.nearby-source-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.impact-badge{flex-shrink:0;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.2rem .45rem;border-radius:999px;white-space:nowrap}.impact-high{background:#fee2e2;color:#991b1b}.impact-moderate{background:#fef3c7;color:#92400e}.impact-low,.impact-none{background:#e2e8f0;color:#475569}.impact-shield{background:#ccfbf1;color:#0f766e}.nearby-impact-reason{margin:.35rem 0 0;font-size:.82rem;line-height:1.45;color:var(--ink)}.nearby-source-top{display:flex;justify-content:space-between;font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);margin-bottom:.25rem}.nearby-num-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.1rem;height:1.1rem;padding:0 .2rem;border-radius:999px;background:var(--sky-teal);color:#fff;font-size:.62rem;font-weight:700;text-transform:none;letter-spacing:normal;margin-right:.15rem}.nearby-detail{margin:.15rem 0 0;font-size:.72rem;color:var(--muted)}.nearby-name{margin:0;font-weight:700;font-size:.92rem}.drift-card{margin-top:.65rem;padding:.75rem .9rem;border-radius:12px;background:var(--mist);border-left:3px solid #f59e0b}.drift-alert{border-left-color:#dc2626}.drift-none{border-left-color:#94a3b8}.nsm-wrap{margin:.75rem 0 .9rem;display:flex;flex-direction:column;align-items:center;gap:.5rem}.nsm-row{display:flex;flex-direction:column;align-items:center;gap:.6rem;width:100%}.nsm-svg-wrap{order:1;width:100%;max-width:520px}.nsm-svg{width:100%;max-width:520px;aspect-ratio:1;display:block}.nsm-annot-col{order:2;display:flex;flex-direction:row;flex-wrap:wrap;gap:.4rem .9rem;width:100%;list-style:none;margin:0;padding:0}@media(min-width:640px){.nsm-row{flex-direction:row;align-items:center;justify-content:center}.nsm-svg-wrap{order:2;flex:0 0 auto;width:auto}.nsm-annot-col{order:1;flex-direction:column;flex-wrap:nowrap;width:auto;flex:1 1 170px;max-width:200px;gap:.55rem}.nsm-annot-col:last-of-type{order:3}}.nsm-annot-item{display:flex;align-items:flex-start;gap:.4rem}.nsm-annot-num{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:1.15rem;height:1.15rem;border-radius:999px;color:#fff;font-size:.65rem;font-weight:700;margin-top:.05rem}.nsm-annot-text{display:flex;flex-direction:column;line-height:1.3;min-width:0}.nsm-annot-text strong{color:var(--dash-text-strong, var(--text));text-shadow:var(--dash-text-shadow);font-size:.76rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:170px}.nsm-annot-meta{font-size:.68rem;color:var(--dash-text-muted, var(--muted))}.nsm-ring{fill:none;stroke:var(--dash-text-muted, var(--outline));stroke-opacity:.55;stroke-width:1.25;stroke-dasharray:3 3}.nsm-ring-label,.nsm-compass{paint-order:stroke;stroke-width:3px;stroke-linejoin:round;stroke:#ffffffd9;text-anchor:middle}.dashboard-shell.dash-sky-night .nsm-ring-label,.dashboard-shell.dash-sky-night .nsm-compass{stroke:#0f172abf}.nsm-ring-label{font-size:8px;fill:var(--dash-text-muted, var(--muted))}.nsm-compass{font-size:11px;font-weight:700;fill:var(--dash-text-muted, var(--muted))}.nsm-wind-wedge{fill:color-mix(in srgb,#38bdf8 22%,transparent);stroke:none}.nsm-wind-axis{stroke:color-mix(in srgb,#38bdf8 55%,transparent);stroke-width:1.5;stroke-dasharray:3 3}.nsm-wind-arrow{fill:#38bdf8;animation:nsm-wind-flow 1.8s linear infinite}@keyframes nsm-wind-flow{0%{transform:translateY(0);opacity:0}12%{opacity:1}85%{opacity:1}to{transform:translateY(calc(-1 * var(--nsm-wind-travel)));opacity:0}}.nsm-wind-speed-label{font-size:9.5px;font-weight:700;fill:#38bdf8;text-anchor:middle}.nsm-home{fill:var(--sky-teal);stroke:var(--surface);stroke-width:2}.nsm-home-label{font-size:9px;font-weight:700;fill:var(--dash-text-strong, var(--text));text-anchor:middle}.nsm-marker{stroke:var(--surface);stroke-width:1}.nsm-marker-pulse{animation:nsm-pulse 2.2s ease-in-out infinite;transform-box:fill-box;transform-origin:center}@keyframes nsm-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.4)}}.nsm-marker-num{font-size:8.5px;font-weight:700;fill:#fff;stroke:#0f172aa6;stroke-width:2px;paint-order:stroke;text-anchor:middle;pointer-events:none}.nsm-label-leader{stroke:var(--dash-text-muted, var(--muted));stroke-opacity:.7;stroke-width:1px}.nsm-marker-num-bg{stroke:#ffffffd9;stroke-width:1px}.dashboard-shell.dash-sky-night .nsm-marker-num-bg{stroke:#0f172abf}.nsm-drift-particle{animation:nsm-drift 2.6s linear infinite}@keyframes nsm-drift{0%{transform:translate(0);opacity:0}15%{opacity:.9}to{transform:translate(var(--nsm-dx),var(--nsm-dy));opacity:0}}.nsm-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem .9rem;font-size:.7rem;color:var(--dash-text-muted, var(--muted))}.nsm-legend-item{display:inline-flex;align-items:center;gap:.3rem}.nsm-swatch{display:inline-block;width:8px;height:8px;border-radius:50%}.virtual-home{background:var(--surface);border:1px solid color-mix(in srgb,var(--outline) 50%,transparent);border-radius:20px;padding:1rem 1rem .85rem;margin-bottom:1.25rem;color:var(--text);box-shadow:0 4px 18px #0f172a0f}.virtual-home-compact{margin-bottom:.85rem}.virtual-home-compact .vh-kicker{display:none}.vh-stage{position:relative;width:100%;aspect-ratio:16 / 9;display:flex;align-items:stretch;justify-content:center;overflow:hidden;border-radius:14px;background:#04081229}.vh-side-rail{flex:1 1 0;min-width:0;height:100%;display:flex;align-items:stretch;justify-content:center;padding:.3rem .28rem}.vh-side-stack{width:100%;max-width:5.75rem}.vh-side-stack-spread{height:100%;display:grid;grid-template-rows:1fr 1fr 1fr;padding:.15rem 0}.vh-side-slot{display:flex;min-height:0}.vh-side-slot-top{align-items:flex-start}.vh-side-slot-mid{align-items:center}.vh-side-slot-bot{align-items:flex-end}.vh-side-left .vh-side-slot{justify-content:flex-end}.vh-side-right .vh-side-slot{justify-content:flex-start}.vh-side-chip{width:100%;min-width:3.25rem;max-width:5.75rem;padding:.34rem .42rem;text-align:center}.vh-side-chip .vh-env-chip-value{font-size:clamp(.88rem,1.75vw,1.12rem);font-weight:800;letter-spacing:-.04em;font-variant-numeric:tabular-nums lining-nums;line-height:1.1;white-space:normal;word-break:break-word}.vh-side-chip .vh-env-wind-value{font-size:clamp(.72rem,1.35vw,.86rem);font-weight:800;letter-spacing:-.03em}.vh-side-chip .vh-env-chip-label{font-weight:700;letter-spacing:.11em;text-transform:uppercase}.vh-map-square{height:100%;width:auto;aspect-ratio:1 / 1;max-width:100%;flex:0 0 auto;display:flex;align-items:center;justify-content:center}.vh-map-square .vh-wind-canvas{flex:0 0 auto;aspect-ratio:1 / 1}.vh-plan-svg,.vh-wind-canvas{display:block;width:100%;height:100%;border-radius:14px;box-shadow:0 6px 24px #0f172a1a}.vh-wind-canvas{background:transparent}.vh-home-flow-img{animation:vh-flow-shimmer 4.5s ease-in-out infinite}@keyframes vh-flow-shimmer{0%,to{opacity:.92}50%{opacity:1}}.vh-env-overlay{position:absolute;left:0;right:0;bottom:.55rem;padding:0 .45rem;pointer-events:none}.virtual-home-compact .vh-env-overlay{position:static;width:100%;margin:.4rem 0 0;padding:0;pointer-events:auto}.vh-env-strip{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:center;padding:.45rem .4rem;border-radius:12px;background:color-mix(in srgb,var(--surface) 82%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid color-mix(in srgb,var(--outline) 55%,transparent);box-shadow:0 4px 16px #0f172a1f}.vh-env-strip-compact{gap:.28rem;padding:.35rem .3rem}.vh-env-chip{display:flex;flex-direction:column;align-items:center;min-width:3.6rem;padding:.28rem .45rem;border-radius:8px;background:var(--mist);border:1px solid var(--outline)}.vh-env-chip-label{font-size:.56rem;font-weight:700;text-transform:uppercase;letter-spacing:.11em;color:var(--muted);line-height:1.25}.vh-env-chip-value{font-size:.92rem;font-weight:800;letter-spacing:-.04em;font-variant-numeric:tabular-nums lining-nums;color:var(--text);line-height:1.1;white-space:nowrap}.vh-env-strip-compact .vh-env-chip-value{font-size:.66rem}.vh-env-good{border-color:#86efac;background:color-mix(in srgb,#ecfdf5 70%,var(--mist))}.vh-env-moderate{border-color:#fcd34d;background:color-mix(in srgb,#fffbeb 70%,var(--mist))}.vh-env-poor{border-color:#fca5a5;background:color-mix(in srgb,#fef2f2 70%,var(--mist))}.vh-env-neutral{border-color:var(--outline)}.vh-env-status-safe{border-color:#5eead4;background:color-mix(in srgb,#f0fdfa 75%,var(--mist))}.vh-env-status-caution{border-color:#fcd34d;background:color-mix(in srgb,#fffbeb 75%,var(--mist))}.vh-env-status-avoid{border-color:#fca5a5;background:color-mix(in srgb,#fef2f2 75%,var(--mist))}.vh-svg-compass{font-size:13px;font-weight:800;fill:#475569;font-family:system-ui,sans-serif}.vh-flow-arrow{animation:vh-flow-drift linear infinite;transform-box:fill-box;transform-origin:center center}@keyframes vh-flow-drift{0%{transform:translateY(calc(var(--vh-flow-span, 200px) * -.5));opacity:0}8%{opacity:1}92%{opacity:1}to{transform:translateY(calc(var(--vh-flow-span, 200px) * .5));opacity:0}}.vh-wall-upwind{animation:vh-wall-pulse 2.2s ease-in-out infinite}@keyframes vh-wall-pulse{0%,to{stroke-opacity:.75}50%{stroke-opacity:1}}.vh-star{animation:vh-star-twinkle 2.8s ease-in-out infinite}@keyframes vh-star-twinkle{0%,to{opacity:.25}50%{opacity:.85}}.vh-legend-line{margin:.65rem 0 0;text-align:center;font-size:.8rem;font-weight:700;color:var(--sky-teal-dark)}.vh-legend-sep{margin:0 .4rem;color:var(--muted);font-weight:500}.vh-sun,.vh-moon{animation:vh-sun-pulse 3s ease-in-out infinite}@keyframes vh-sun-pulse{0%,to{opacity:.85}50%{opacity:1}}.vh-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.75rem}.vh-chip{font-size:.72rem;font-weight:700;padding:.3rem .55rem;border-radius:999px;background:var(--mist);border:1px solid var(--outline);color:var(--text)}.vh-chip-wind{background:color-mix(in srgb,var(--sky-teal) 18%,var(--surface));border-color:color-mix(in srgb,var(--sky-teal) 45%,var(--outline));color:var(--sky-teal-dark)}.vh-chip-upwind{border-color:#fca5a5;background:#fef2f2;color:#b91c1c}.vh-chip-lee{border-color:#99f6e4;background:#f0fdfa;color:#0f766e}.vh-chip-cross{border-color:#fcd34d;background:#fffbeb;color:#b45309}.vh-hint-one{margin:.35rem 0 0;font-size:.72rem;color:var(--muted)}.text-details-fold{margin-bottom:1rem;border-radius:14px;background:var(--mist);padding:.5rem .85rem}.text-details-fold summary{cursor:pointer;font-size:.82rem;font-weight:700;color:var(--muted);list-style:none;-webkit-user-select:none;user-select:none}.text-details-fold summary::-webkit-details-marker{display:none}.text-details-fold[open] summary{margin-bottom:.65rem;color:var(--sky-teal-dark)}@media(prefers-reduced-motion:reduce){.vh-svg-arrow,.vh-sun,.vh-moon,.vh-flow-arrow,.vh-wall-upwind,.vh-star,.vh-home-flow-img{animation:none!important}}.route-exposure-page{max-width:720px;margin:0 auto;padding:1rem}.route-drawer-actions{display:flex;gap:.5rem;margin:.5rem 0 1rem}.route-drawer-actions button{border:1.5px solid var(--outline);background:var(--surface);color:var(--text);border-radius:999px;padding:.35rem .8rem;font-size:.82rem}.route-form{display:flex;flex-wrap:wrap;gap:.85rem;align-items:end;margin:1rem 0}.route-form label{display:flex;flex-direction:column;gap:.3rem;font-size:.82rem;color:var(--muted)}.route-form input,.route-form select{border:1.5px solid var(--outline);border-radius:.5rem;padding:.4rem .6rem;background:var(--surface);color:var(--text)}.route-start-toggle{flex-direction:row!important;align-items:center;gap:.4rem!important}.route-form button{border:none;border-radius:999px;padding:.55rem 1.1rem;background:var(--sky-teal);color:#fff;font-weight:600}.route-form button:disabled{opacity:.5}.route-error{color:var(--zone-avoid);font-size:.85rem}.route-summary-card{background:var(--surface);border:1px solid var(--outline);border-radius:.75rem;padding:.85rem 1rem;margin-bottom:.75rem}.route-summary-card h3{margin:0 0 .4rem;font-size:1rem}.route-summary-card p{margin:.25rem 0;font-size:.85rem;color:var(--muted)}.route-scale-note{font-style:italic}.route-map-legend{display:flex;align-items:center;flex-wrap:wrap;gap:.3rem}.route-legend-dot{display:inline-block;width:.7rem;height:.7rem;border-radius:50%;margin-left:.4rem}.route-legend-dot:first-child{margin-left:0}.route-profile-strip{display:flex;align-items:flex-end;gap:2px;height:90px;border:1px solid var(--outline);border-radius:.5rem;padding:.5rem;background:var(--surface)}.route-profile-bar{flex:1;min-width:3px;border-radius:2px 2px 0 0}.consent-gate{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;background:#0f172a99}.consent-gate-panel{background:var(--surface);border:1px solid var(--outline);border-radius:1rem;padding:1.5rem;max-width:640px;width:100%;max-height:92vh;overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.consent-gate-panel h2{margin:0}.auth-back-home{align-self:flex-start;color:var(--muted);font-size:.9rem;text-decoration:none;margin-bottom:-.5rem}.auth-back-home:hover{text-decoration:underline}.consent-scroll{flex-shrink:0}.consent-scroll .scroll-region-body{border:1px solid var(--outline);border-radius:.5rem;padding:.75rem 1rem;font-size:.85rem;color:var(--text)}.consent-document h3{margin:0 0 .15rem}.consent-effective-date{margin:0 0 .75rem;font-size:.78rem;color:var(--muted);font-style:italic}.consent-section{margin-bottom:.85rem}.consent-section h4{margin:0 0 .25rem;font-size:.92rem}.consent-section p{margin:0 0 .4rem;line-height:1.5}.consent-checkbox-row{display:flex;align-items:flex-start;gap:.5rem;font-size:.85rem;line-height:1.4}.consent-checkbox-row input{margin-top:.2rem;flex-shrink:0}.consent-gate-panel button{border:none;border-radius:999px;padding:.65rem 1.2rem;background:var(--sky-teal);color:#fff;font-weight:600}.consent-gate-panel button:disabled{opacity:.5}.consent-version-note{margin:0;font-size:.72rem;color:var(--muted);text-align:right}.auth-form{display:flex;flex-direction:column;gap:.9rem}.auth-field{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;font-weight:600}.auth-field input{font-weight:400;font-size:.95rem;padding:.6rem .75rem;border-radius:10px;border:1px solid var(--border, #d8dee4)}.auth-mode-toggle{background:none;border:none;color:var(--sky-teal);font-size:.85rem;font-weight:600;text-align:center;padding:.4rem;cursor:pointer}.admin-shell{max-width:1000px;margin:0 auto;padding:1.5rem;font-family:inherit}.admin-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.admin-header h1{font-size:1.4rem;margin:0}.admin-tabs{display:flex;gap:.5rem;margin-bottom:1.25rem;border-bottom:1px solid color-mix(in srgb,var(--muted) 25%,transparent)}.admin-tab{background:none;border:none;border-bottom:2px solid transparent;padding:.6rem .9rem;font-weight:600;color:var(--muted);cursor:pointer}.admin-tab.active{color:var(--sky-teal);border-bottom-color:var(--sky-teal)}.admin-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;margin-bottom:1.5rem}.admin-stat-card{background:var(--surface);border:1px solid color-mix(in srgb,var(--muted) 20%,transparent);border-radius:12px;padding:.9rem;display:flex;flex-direction:column;gap:.2rem}.admin-stat-value{font-size:1.5rem;font-weight:700}.admin-stat-label{font-size:.78rem;color:var(--muted)}.admin-stat-ok .admin-stat-value{color:var(--zone-safe, #1a7f4b)}.admin-stat-bad .admin-stat-value{color:var(--zone-avoid, #b91c1c)}.admin-table{width:100%;border-collapse:collapse;font-size:.85rem;margin-bottom:1.25rem}.admin-table th,.admin-table td{text-align:left;padding:.5rem .6rem;border-bottom:1px solid color-mix(in srgb,var(--muted) 15%,transparent)}.admin-table-row-clickable{cursor:pointer}.admin-table-row-clickable:hover{background:color-mix(in srgb,var(--sky-teal) 8%,transparent)}.admin-search-row{display:flex;gap:.5rem;margin-bottom:1rem}.admin-search-row input{flex:1;padding:.5rem .75rem;border-radius:8px;border:1px solid color-mix(in srgb,var(--muted) 30%,transparent)}.admin-user-detail{background:var(--surface);border:1px solid color-mix(in srgb,var(--muted) 20%,transparent);border-radius:12px;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.admin-user-detail textarea{font-family:inherit;padding:.5rem .75rem;border-radius:8px;border:1px solid color-mix(in srgb,var(--muted) 30%,transparent)}.admin-tuning-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.6rem}.admin-tuning-field input{width:100%;padding:.4rem .6rem;border-radius:8px;border:1px solid color-mix(in srgb,var(--muted) 30%,transparent)}:root{--sky-teal: #0d9488;--sky-teal-dark: #0f766e;--sage: #059669;--warm-coral: #f97316;--cream-bg: #f8faf5;--warm-surface: #fffbf7;--mist: #e8f5f0;--deep-forest: #1a2e28;--muted-sage: #4a635c;--outline: #94b8ac;--zone-safe: #16a34a;--zone-caution: #ea580c;--zone-avoid: #dc2626;--bg: var(--cream-bg);--surface: var(--warm-surface);--surface2: var(--mist);--text: var(--deep-forest);--muted: var(--muted-sage);--accent: var(--sky-teal);--safe: var(--zone-safe);--caution: var(--zone-caution);--avoid: var(--zone-avoid);--font-ui: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-metric-tracking: -.04em;--font-label-tracking: .11em;font-family:var(--font-ui);color:var(--text);background:var(--bg);line-height:1.45;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"tnum" 1,"lnum" 1;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100vh;overflow-x:hidden;overflow-y:auto;background:var(--cream-bg)}button{font-family:inherit;cursor:pointer}input{font-family:inherit}code{font-size:.85em;background:var(--mist);padding:.15rem .4rem;border-radius:6px;color:var(--sky-teal-dark)}
