.planner-body{background:linear-gradient(180deg,rgba(228,245,255,.5),rgba(255,255,255,.94) 55%),url("./assets/home-cycling-stresa.jpg") center top/cover fixed;color:#12344d}.planner{width:min(900px,100%);margin:0 auto;padding:max(18px,env(safe-area-inset-top)) 16px 48px;box-sizing:border-box}.planner-hero{margin:20px 0 8px;padding:36px 28px 28px;border:1px solid rgba(255,255,255,.75);border-radius:30px;background:linear-gradient(110deg,rgba(7,104,166,.96),rgba(16,139,181,.9) 54%,rgba(255,255,255,.8));box-shadow:0 16px 34px rgba(13,60,96,.18);color:#fff}.planner-hero h1{margin:7px 0;font-size:clamp(34px,7vw,48px);letter-spacing:-.045em}.planner-hero p{max-width:640px;margin:0;font-size:18px;font-weight:650;line-height:1.35}.planner-hero .virgilio__badge{background:#ffdb39;color:#063469}.planner-status{margin:15px 0 9px;padding:12px;border:1px solid #c7e2ef;border-radius:15px;background:#f5fcff;color:#174a67;font-weight:800}.planner-secondary{border:1px solid #a7cbe0;background:#fff;color:#075b93}.planner-search{box-sizing:border-box;width:100%;margin:17px 0 8px;padding:13px 14px;border:1px solid #9fc8dc;border-radius:16px;background:#fff;color:#173f65;font:inherit;font-weight:700}.planner-results{display:grid;gap:6px;max-height:188px;overflow:auto}.planner-result{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:9px 11px;border:1px solid #d3e5ee;border-radius:13px;background:#f8fcff;color:#174a67}.planner-result small{display:block;color:#587489}.planner-result button{border:0;border-radius:10px;background:#0878ba;color:#fff;padding:8px 10px;font:inherit;font-weight:800}.planner-voice-status{margin-top:9px}.planner-map{height:min(50vh,430px);min-height:280px;margin-top:12px;border:1px solid #a4cedf;border-radius:20px;overflow:hidden;box-shadow:0 10px 22px rgba(13,60,96,.13)}.planner-map-marker{display:grid;place-items:center;width:28px;height:28px;border:2px solid #fff;border-radius:50%;background:#168544;box-shadow:0 3px 8px rgba(10,57,42,.35);font-size:15px}.planner-stops-heading{margin:15px 0 0;color:#07396c;font-size:15px;font-weight:850}.planner-stops{display:grid;gap:8px;margin-top:7px}.planner-stop{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:10px 12px;border:1px solid #c7decb;border-radius:15px;background:#f7fff8}.planner-stop strong{display:block;color:#164c31}.planner-stop small{color:#4b6e57}.planner-stop__actions{display:flex;gap:5px}.planner-stop button{min-width:31px;border:1px solid #a9cbb3;border-radius:9px;background:#fff;color:#175b36;font:inherit;font-weight:900}.planner-options{display:grid;gap:16px;margin-top:16px}.planner-options fieldset{border:0;padding:0;margin:0}.planner-options legend{padding:0 0 8px;color:#07396c;font-size:16px;font-weight:800}.planner-build{width:100%;margin-top:19px;min-height:54px;font-size:17px}.planner-note{margin:9px 0 0;color:#567087;font-size:13px;line-height:1.35}.planner-map .leaflet-popup-content{font-family:system-ui,sans-serif}.planner-map .leaflet-popup-content button{margin-top:7px;border:0;border-radius:9px;background:#0878ba;color:#fff;padding:7px 9px;font-weight:800}.planner-quick-start-screen{display:none}.planner-quick-start .planner>:not(.planner-quick-start-screen){display:none}.planner-quick-start .planner{min-height:100dvh;display:grid;place-items:center}.planner-quick-start .planner-quick-start-screen{display:grid;justify-items:center;gap:12px;width:min(440px,100%);padding:38px 26px;border:1px solid rgba(255,255,255,.85);border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(220,245,255,.96));box-shadow:0 20px 46px rgba(13,60,96,.2);text-align:center}.planner-quick-start-screen__icon{display:grid;place-items:center;width:70px;height:70px;border-radius:50%;background:linear-gradient(135deg,#ffdb39,#f2ad16);box-shadow:0 8px 18px rgba(177,118,0,.25);font-size:34px}.planner-quick-start-screen h1{margin:0;color:#083f70;font-size:clamp(25px,7vw,34px)}.planner-quick-start-screen p{margin:0;color:#35617e;font-size:16px;font-weight:700;line-height:1.42}@media(max-width:520px){.planner{padding:max(12px,env(safe-area-inset-top)) 12px 34px}.planner-hero{padding:27px 21px 23px;border-radius:25px}.planner-hero p{font-size:16px}.planner-map{min-height:250px}.planner-options .virgilio-choice-grid{grid-template-columns:1fr 1fr}.planner-quick-start .planner{padding:22px}.planner-quick-start .planner-quick-start-screen{padding:31px 21px}}
