:root{--safety-ink:#083744;--safety-green:#15705b;--safety-amber:#e8a61f;--safety-red:#b42318;--safety-paper:#f4f0e6}
.uptrail-safety-section{background:linear-gradient(150deg,#eef4ef 0,#f8f4e9 52%,#e8f0ed 100%)}
.uptrail-weather{overflow:hidden;color:var(--safety-ink);border:1px solid rgba(8,55,68,.12);border-radius:30px;background:rgba(255,255,255,.88);box-shadow:0 24px 70px rgba(8,55,68,.1)}
.uptrail-weather>header{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:clamp(24px,4vw,44px);border-bottom:1px solid rgba(8,55,68,.1)}
.uptrail-weather>header span,.uptrail-booking-safety>span,.uptrail-safety-account>span{color:#b6780c;font-size:12px;font-weight:900;letter-spacing:.18em}
.uptrail-weather h2{margin:7px 0 8px;font-family:"Bricolage Grotesque",sans-serif;font-size:clamp(28px,4vw,46px);line-height:1}.uptrail-weather header p{margin:0;color:#527078}
.uptrail-weather header label{display:grid;gap:7px;min-width:190px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.uptrail-weather select{padding:12px 38px 12px 14px;border:1px solid #bdd0ca;border-radius:12px;background:#fff;color:var(--safety-ink);font:inherit}
.uptrail-weather__trail{display:flex;gap:16px;padding:14px clamp(24px,4vw,44px);background:#edf6ef}.uptrail-weather__trail b{white-space:nowrap}.uptrail-weather__trail.is-caution{background:#fff6dc}.uptrail-weather__trail.is-danger,.uptrail-weather__trail.is-closed{background:#fff0ed;color:#8e241b}.uptrail-weather__trail.is-unknown{background:#f3f4f2;color:#68747a}
.uptrail-weather__result{padding:clamp(24px,4vw,44px)}.uptrail-weather__result[aria-busy=true]{opacity:.62}
.uptrail-weather__summary{display:flex;align-items:center;gap:18px;margin-bottom:24px}.uptrail-weather__summary>strong{display:grid;place-items:center;width:82px;height:82px;border:8px solid #39a87d;border-radius:50%;font-size:18px}.uptrail-weather__summary.is-caution>strong{border-color:var(--safety-amber)}.uptrail-weather__summary.is-danger>strong{border-color:var(--safety-red)}.uptrail-weather__summary div{display:grid;gap:5px}.uptrail-weather__summary b{font-size:22px}.uptrail-weather__summary span{color:#527078}
.uptrail-weather__metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.uptrail-weather__metrics div{display:grid;gap:8px;padding:15px;border-radius:14px;background:#edf4f1}.uptrail-weather__metrics span{font-size:12px;color:#60777c}.uptrail-weather__metrics b{font-size:18px}.uptrail-weather__warning{color:#8c4d04;font-weight:750}.uptrail-weather__gear{color:#176147}.uptrail-weather__result>small{display:block;margin-top:18px;color:#6c7c7e;line-height:1.55}.uptrail-weather>footer{padding:14px 44px;color:#738387;font-size:11px;border-top:1px solid rgba(8,55,68,.08)}
.uptrail-weather--compact{margin:22px 0;border-radius:18px;box-shadow:none}.uptrail-weather--compact .uptrail-weather__result{padding:20px}.uptrail-weather--compact .uptrail-weather__summary>strong{width:62px;height:62px;border-width:6px;font-size:14px}.uptrail-weather--compact .uptrail-weather__metrics{grid-template-columns:repeat(2,1fr)}
.uptrail-booking-safety{margin:30px 0;padding:clamp(20px,4vw,30px);border:1px solid #b8d0c7;border-radius:24px;background:linear-gradient(145deg,#f4f8f5,#fffaf0);color:var(--safety-ink)}.uptrail-booking-safety h3{margin:7px 0;font-size:25px}.uptrail-booking-safety>p{color:#587078}.uptrail-booking-safety details{margin-top:18px;padding:17px;border:1px solid #d5e1dc;border-radius:16px;background:#fff}.uptrail-booking-safety summary{font-weight:850;cursor:pointer}.uptrail-safety-fields{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:18px}.uptrail-safety-fields label{display:grid;gap:6px;font-size:13px;font-weight:750}.uptrail-safety-fields input,.uptrail-safety-fields select,.uptrail-safety-fields textarea,.uptrail-sos-dialog textarea{width:100%;padding:11px;border:1px solid #c8d6d1;border-radius:10px;background:#fff;font:inherit}.uptrail-safety-consent{display:flex!important;align-items:flex-start;gap:9px;margin:16px 0;font-size:12px!important;font-weight:600!important}.uptrail-safety-consent input{width:auto!important;margin-top:3px}.uptrail-booking-safety form>button{padding:11px 17px;border:0;border-radius:99px;background:var(--safety-green);color:#fff;font-weight:850}.uptrail-safety-success{margin:12px 0;padding:12px;border-radius:12px;background:#e7f7ec;color:#17613f;font-weight:750}
.uptrail-sos-panel{display:flex;align-items:center;gap:10px;margin-top:22px;padding:18px;border-radius:18px;background:#ebf1ef}.uptrail-sos-panel>div{flex:1}.uptrail-sos-panel p{margin:3px 0 0;color:#5b7277;font-size:13px}.uptrail-sos-panel a,.uptrail-sos-panel button{padding:10px 13px;border:1px solid #c5d5d0;border-radius:99px;background:#fff;color:var(--safety-ink);font-weight:800;text-decoration:none}.uptrail-sos-panel button{border-color:#a42b20;background:#b42318;color:#fff}.uptrail-sos-panel.is-locked{opacity:.78}
.uptrail-sos-dialog{width:min(92vw,600px);padding:clamp(24px,5vw,42px);border:0;border-radius:28px;color:#fff;background:linear-gradient(145deg,#641b17,#a52b21);box-shadow:0 40px 120px rgba(40,0,0,.45)}.uptrail-sos-dialog::backdrop{background:rgba(4,20,26,.82);backdrop-filter:blur(6px)}.uptrail-sos-dialog>form{position:absolute;top:16px;right:16px}.uptrail-sos-dialog>form button{width:38px;height:38px;border:1px solid rgba(255,255,255,.25);border-radius:50%;color:#fff;background:transparent;font-size:24px}.uptrail-sos-dialog>span{font-size:11px;font-weight:900;letter-spacing:.2em}.uptrail-sos-dialog h2{margin:8px 0;font-size:34px}.uptrail-sos-dialog>p{line-height:1.6}.uptrail-sos-dialog label{display:grid;gap:7px}.uptrail-sos-dialog textarea{color:#142e35}.uptrail-sos-dialog>div{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.uptrail-sos-dialog a,.uptrail-sos-dialog [data-sos-send]{padding:11px 15px;border:0;border-radius:99px;background:#fff;color:#6f1712;font-weight:900;text-decoration:none}.uptrail-sos-dialog [data-sos-send]{background:#ffcd55}.uptrail-sos-dialog [data-sos-send]:disabled{opacity:.5}.uptrail-sos-dialog [data-sos-status]{font-weight:750}.uptrail-sos-dialog [data-sos-status].is-success{color:#d3ffd9}.uptrail-sos-dialog [data-sos-status].is-error{color:#ffdf74}
.uptrail-safety-account{margin:24px 0;padding:28px;border-radius:24px;background:#edf4f1;color:var(--safety-ink)}.uptrail-safety-account h2{margin:7px 0}.uptrail-safety-account article{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:14px;padding:14px 0;border-top:1px solid #cddbd6}.uptrail-safety-account article div{display:grid}.uptrail-safety-account article small{color:#657b80}.uptrail-safety-account article a{font-weight:800;color:#12624e}
@media(max-width:760px){.uptrail-weather>header{align-items:stretch;flex-direction:column}.uptrail-weather__trail{align-items:flex-start;flex-direction:column}.uptrail-weather__metrics{grid-template-columns:repeat(2,1fr)}.uptrail-weather>footer{padding:14px 24px}.uptrail-safety-fields{grid-template-columns:1fr}.uptrail-sos-panel{align-items:stretch;flex-direction:column}.uptrail-sos-panel a,.uptrail-sos-panel button{text-align:center}.uptrail-safety-account article{grid-template-columns:1fr}.uptrail-safety-account article a{justify-self:start}}
@media(max-width:420px){.uptrail-weather__metrics{grid-template-columns:1fr}.uptrail-weather__summary{align-items:flex-start}.uptrail-weather__summary b{font-size:18px}}
@media(prefers-reduced-motion:reduce){.uptrail-weather,.uptrail-sos-dialog{scroll-behavior:auto}}
