/* Touch-friendly controls and complete park view on narrow or short displays. */
button,select{min-height:44px}dialog{max-height:calc(100dvh - 28px);overflow-y:auto}#scene{height:100dvh}header{padding-top:max(18px,env(safe-area-inset-top))}
@media(max-width:700px){
 header{padding:14px 16px}.brand{font-size:17px}.sky{top:90px;left:16px}.room{top:90px;right:16px}.room button{min-height:40px}.room select{min-height:40px}
 nav{display:grid;grid-template-columns:repeat(3,1fr);border-radius:22px}nav button{padding:9px 8px;font-size:12px;min-height:44px}.status{margin-bottom:8px}footer{bottom:max(12px,env(safe-area-inset-bottom));max-width:420px}#actions{display:flex;justify-content:center;gap:5px}#actions[hidden]{display:none}#actions button{margin:0;padding:8px 12px;min-height:44px}
 #sand{padding:20px 14px}#sand p{font-size:11px}.sand-tools{flex-wrap:wrap}.sand-tools button{flex:1;min-width:130px}#toast{bottom:240px}.sky small{font-size:9px}.sky h1{font-size:20px}
}
@media(min-width:701px) and (max-width:1050px) and (orientation:portrait){.sky{top:130px;left:25px}.room{right:25px}.sky h1{font-size:27px}footer{bottom:25px}nav button{font-size:13px;padding:14px 19px}}
@media(max-height:500px) and (orientation:landscape){
 header{padding:10px 20px}.brand{font-size:16px}.brand small{display:none}.top button{padding:7px 13px}.sky{top:65px;left:20px;padding:8px 12px}.sky h1{font-size:18px;margin:5px 0}.sky p,.sky small,.skyline,.sky .eyebrow{display:none}.room{top:65px;right:20px}.room label{display:none}footer{bottom:8px}.status{display:none}nav{padding:3px}nav button{padding:8px 14px}#actions{position:fixed;bottom:58px;left:50%;transform:translateX(-50%);width:max-content}dialog{padding:20px 28px}.intro-sun{font-size:35px;margin:8px}.sub{display:none}dialog h2{font-size:25px;margin:8px 0}dialog p{font-size:12px}.primary{margin:12px 0}#drawing{max-height:170px}#toast{bottom:115px}
}
@media(max-width:360px){.brand{font-size:15px}.brand small{letter-spacing:1px}.sunmark{font-size:25px}.top button{padding:8px}.sky{max-width:54%;padding:8px}.sky h1{font-size:17px}.room select{max-width:125px}.sky .eyebrow{font-size:9px;letter-spacing:1px}}

.paths{position:fixed;top:52%;left:12px;right:12px;justify-content:space-between;background:none;border:0;backdrop-filter:none;pointer-events:none;padding:0}.paths>div{display:flex;gap:6px}.paths button{pointer-events:auto;background:#fff9edcc;min-height:44px;padding:10px 12px}.room #zone-label{font-size:11px}#map-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:5px}#map-grid button{padding:8px;min-width:44px;min-height:44px;border-radius:8px}#map-place{font-size:11px}@media(max-width:700px){.paths{top:56%;left:6px;right:6px;display:flex;grid-template-columns:none}.paths button{font-size:10px;padding:8px}.paths>div{gap:3px}.room #zone-label{font-size:9px;max-width:130px}#map{padding:20px 12px}}@media(max-height:500px){.paths{top:45%}.room{top:65px}.room #zone-label{display:none}}
