.qpf-desk{max-width:var(--maxw)}.qpf-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:12px 0 24px}.qpf-heading h1{font-size:clamp(30px,4vw,46px);letter-spacing:-.035em;margin:6px 0}.qpf-eyebrow{color:#04663d;font-size:12px;letter-spacing:.1em;font-weight:900;text-transform:uppercase;margin:0}.qpf-back{font-weight:800;border:1px solid #bbcbbf;padding:10px 14px;white-space:nowrap;text-decoration:none}.qpf-controls{gap:16px;align-items:end;padding:14px}.qpf-controls label{font-size:12px;font-weight:800;text-transform:uppercase;display:grid;gap:5px;min-width:0}.qpf-controls input,.qpf-controls select{font:600 14px Overpass,sans-serif;min-height:38px;max-width:100%;text-transform:none}.qpf-controls input{width:200px}.qpf-controls button{min-height:38px}.qpf-status{font-size:12px;color:#58685e;min-height:20px;margin:12px 0}.qpf-source-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.qpf-source-cards button{display:grid;gap:6px;text-align:left;padding:17px 20px;border:1px solid #b9cabe;border-top:4px solid #04663d;background:#fff;cursor:pointer;color:#17251d;min-width:0}.qpf-source-cards button[aria-pressed=true]{box-shadow:inset 0 0 0 2px #04663d}.qpf-source-tag{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#04663d}.qpf-source-cards b{font-size:18px}.qpf-amount{font:900 42px/1.1 Overpass,sans-serif;-webkit-text-stroke:0}.qpf-source-cards button>span:last-child{font-size:12px;line-height:1.4;color:#55665d}.qpf-source-note,.qpf-footnote{font-size:12px;line-height:1.6;color:#59675e;margin:12px 0 20px}.qpf-mapbox{height:780px;background:#e3ded4}.qpf-map-actions{display:flex;gap:11px;align-items:center;flex-wrap:wrap;padding:10px 14px;border-bottom:1px solid #d7dfd7;font-size:12px}.qpf-map-actions label{display:flex;gap:5px;align-items:center}.qpf-map-actions button{min-height:34px}.qpf-map-actions select,.qpf-verification select{font:600 12px Overpass,sans-serif;min-height:32px}.qpf-map-actions>span{margin-left:auto;font-size:12px;color:#55665d}.qpf-cell-tip{position:absolute;left:14px;top:14px;max-width:calc(100% - 70px);padding:9px 12px;background:#fffffff0;border:1px solid #afbeb4;border-left:4px solid #04663d;pointer-events:none;z-index:2;font-size:12px;color:#17372b}.qpf-cell-tip b{font-size:18px;font-variant-numeric:tabular-nums}.qpf-legend{display:flex;gap:25px;align-items:center;padding:15px}.qpf-legend>div{flex:1;max-width:700px}.qpf-legend b{font-size:12px;display:block;margin-bottom:6px}.qpf-legend p{font-size:12px;line-height:1.5;color:#55665d;max-width:330px;margin:0}.qpf-legend #qpf-ramp{display:flex;height:17px;border:1px solid #a6b5ac}.qpf-legend #qpf-ramp i{flex:1}.qpf-legend #qpf-ticks{display:flex;justify-content:space-between;font-size:12px;font-weight:700;margin-top:5px;color:#55665d}.qpf-verification>.ph{gap:16px;flex-wrap:wrap}.qpf-verification>.ph label{font-size:12px;display:flex;gap:6px;align-items:center}.qpf-score-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;padding:18px}.qpf-score-grid span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.035em;color:#55665d;font-weight:800}.qpf-score-grid b{display:block;font-size:28px;line-height:1.4;letter-spacing:-.035em;font-variant-numeric:tabular-nums}.qpf-verification>p{padding:0 18px 15px;font-size:12px;color:#55665d;margin:0;line-height:1.6}.qpf-timeline{display:flex;gap:8px;overflow-x:auto;padding:14px}.qpf-timeline button{flex:0 0 108px;display:grid;gap:6px;padding:10px;background:#fff;border:1px solid #c0cec4;cursor:pointer;color:#17251d;font:700 12px Overpass,sans-serif}.qpf-timeline button[aria-pressed=true]{outline:2px solid #04663d;outline-offset:-2px}.qpf-timeline button[data-future=true]{border-top:4px solid #176b99}.qpf-timeline canvas{width:86px;height:86px;border:1px solid #c3cfc5}.qpf-timeline small{font:600 12px Overpass,sans-serif;color:#55665d}.qpf-bottom{display:grid;grid-template-columns:1fr 1fr;gap:14px}.qpf-bottom h2{font-size:16px;margin:0 0 10px}.qpf-cell-details,.qpf-method{padding:18px;font-size:12px;line-height:1.7}.qpf-cell-details strong{display:block;font-size:34px;font-weight:900}.qpf-cell-details dl{display:grid;grid-template-columns:145px 1fr;gap:3px 10px}.qpf-cell-details dt{color:#55665d}.qpf-cell-details dd{margin:0;font-variant-numeric:tabular-nums}.qpf-method p{margin:0 0 10px;color:#55665d}.qpf-method summary{font-weight:800;cursor:pointer}.qpf-method a{font-weight:700}.qpf-desk button:focus-visible,.qpf-desk a:focus-visible{outline:3px solid #126ca3;outline-offset:3px}.qpf-desk .fs-map-expanded .qpf-mapbox{height:auto!important}
@media(max-width:1050px){.qpf-controls{gap:10px}.qpf-score-grid{grid-template-columns:repeat(3,1fr)}.qpf-bottom{grid-template-columns:1fr}.qpf-mapbox{height:680px}.qpf-controls label{flex:1;min-width:155px}.qpf-controls input{width:100%}.qpf-source-cards{gap:8px}.qpf-source-cards button{padding:15px}.qpf-amount{font-size:36px}}
@media(max-width:600px){.qpf-heading{display:block}.qpf-back{display:inline-block;margin-top:10px}.qpf-controls select{width:100%;min-width:0}.qpf-controls label{flex:1;min-width:135px}.qpf-source-cards{grid-template-columns:1fr}.qpf-source-cards button{grid-template-columns:1fr auto;gap:4px 12px}.qpf-source-tag,.qpf-source-cards b,.qpf-source-cards button>span:last-child{grid-column:1}.qpf-amount{grid-column:2;grid-row:1/4;align-self:center;font-size:34px}.qpf-source-cards b{font-size:16px}.qpf-mapbox{height:570px}.qpf-map-actions{gap:9px;font-size:12px}.qpf-map-actions>span{width:100%;margin-left:0}.qpf-cell-tip{left:8px;top:8px;font-size:12px}.qpf-legend{display:block}.qpf-legend p{max-width:none;margin-top:10px}.qpf-score-grid{grid-template-columns:repeat(2,1fr);gap:14px;padding:15px}.qpf-score-grid b{font-size:27px}.qpf-cell-details dl{grid-template-columns:110px 1fr}}

/* Bold page amounts: paint black outlines behind Ryan’s colors. Map glyphs are unchanged. */
.qpf-desk .qpf-amount,.qpf-desk .qpf-score-grid b,.qpf-desk .qpf-timeline span[style],.qpf-desk .qpf-cell-details strong,.qpf-desk .scores-depth,.qpf-desk .qpf-pale-number{font-family:Overpass,sans-serif;font-weight:900}
/* rain amounts are filled chips in the palette colour (set inline as `color`), with ink or white
   figures chosen for contrast, instead of coloured text with an outline */
.qpf-desk .qpf-amount[style*="color"],.qpf-desk .qpf-score-grid b[style*="color"],.qpf-desk .qpf-timeline span[style*="color"],.qpf-desk .qpf-cell-details strong[style*="color"],.qpf-desk .scores-depth[style*="color"]{display:inline-block;background:currentColor;-webkit-text-fill-color:#fff;padding:.08em .4em;border-radius:3px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.2);line-height:1.25}
.qpf-desk .qpf-pale-number[style*="color"]{-webkit-text-fill-color:#14140f}
