#scene{touch-action:none}header a,.controls button,#close-selection{min-width:44px;min-height:44px}#tryon-search{position:fixed;z-index:11;top:84px;left:72px;display:flex;align-items:center;gap:5px;background:#fffdf8;padding:5px;border-radius:9px;box-shadow:0 2px 10px #142b1a20}#tryon-search label{position:absolute;clip:rect(0,0,0,0)}#tryon-search input{width:108px;min-height:44px;padding:8px;border:1px solid #deded4;border-radius:5px;font:inherit;font-size:12px}#tryon-search button{min-height:44px;border:0;background:#284f3b;color:white;border-radius:5px;font-size:12px;padding:8px}#tryon-banner{position:fixed;left:72px;top:150px;max-width:min(460px,calc(100% - 88px));z-index:11;background:#fffdf3;color:#244c39;padding:12px 16px;border-radius:8px;font-size:12px;line-height:1.5;box-shadow:0 2px 14px #142b1a20}#selection{top:84px;bottom:24px;right:24px;width:380px;max-height:calc(100% - 110px);overflow:auto;overscroll-behavior:contain;background:#fffdf8;padding:24px;border:1px solid #deded4;border-radius:14px;box-shadow:0 12px 50px #142b1a25}#selection h2{font-family:Georgia,serif;font-size:34px;font-weight:400;letter-spacing:-1px;margin-top:6px}#selection .eyebrow{font-size:9px;max-width:260px;line-height:1.5}#selection .tryon-kind{font-size:12px;color:#5e685d;margin:7px 0 18px}.tryon-metrics{display:grid;grid-template-columns:1fr 1fr;padding:14px 0;border-top:1px solid #dddcd0;border-bottom:1px solid #dddcd0;gap:15px}.tryon-metrics strong{font-size:24px;font-weight:500;display:block}.tryon-metrics span{font-size:10px;line-height:1.5;display:block;color:#5e685d}.tryon-intro{font-family:Georgia,serif;font-size:20px;margin:20px 0 12px}.tryon-carousel{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x proximity;padding:2px 0 10px}.tryon-carousel button{flex:0 0 128px;padding:0;border:1px solid #deded4;border-radius:8px;overflow:hidden;background:#fff;scroll-snap-align:center;text-align:left;color:#284535}.tryon-carousel button[aria-pressed=true]{border:2px solid #28563f;background:#e8eee4}.tryon-carousel img{display:block;width:100%;height:74px;object-fit:cover}.tryon-carousel span{display:block;min-height:40px;font-size:11px;font-weight:600;padding:7px}.tryon-actions{display:grid;grid-template-columns:1fr 1.15fr;align-items:end;gap:8px;margin:12px 0}.tryon-actions label{font-size:10px;color:#556254}.tryon-actions select{display:block;width:100%;min-height:44px;padding:8px 4px;border:1px solid #ccd3c8;background:#fff;font:inherit;font-size:12px;border-radius:6px;margin-top:4px}#tryon-place{min-height:44px;padding:10px;border:0;border-radius:6px;background:#28533d;color:#fff;font-size:12px}#tryon-result{font-size:12px;line-height:1.5;margin:12px 0;padding:10px 12px;background:#f1efe5;border-radius:6px}#tryon-result[data-fit=true]{background:#e6efe3;color:#23452e}.tryon-share{display:flex;gap:7px}.tryon-share button,.tryon-share a{display:flex;align-items:center;justify-content:center;min-height:44px;border:1px solid #ccd3c8;border-radius:6px;padding:8px;font:inherit;font-size:11px;background:transparent;text-decoration:none;color:#284535;flex:1}#tryon-house{min-height:44px;display:flex;align-items:center;justify-content:space-between;color:#254d38;text-decoration:none;font-size:13px;border-bottom:1px solid #deded4;margin:8px 0}.tryon-source,#selection details{font-size:10px;line-height:1.6;color:#63705f}#selection details summary{cursor:pointer;min-height:44px;display:flex;align-items:center}#selection details p{font-size:11px;line-height:1.6}#selection a{color:#28533d}.tryon-legacy{display:flex;align-items:center;min-height:44px;font-size:11px;line-height:1.5;margin-top:10px}body.tryon-focused #scene{width:calc(100% - 420px)}body.tryon-focused #sources,body.tryon-focused #hint{display:none}body.tryon-focused #north{right:440px}#close-selection{top:10px;right:10px}#selection .tryon-source{font-weight:400}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #be8344;outline-offset:2px}
@media(max-width:700px){#selection{top:auto;bottom:0;left:0;right:0;width:100%;height:52%;max-height:52%;border-radius:18px 18px 0 0;padding:17px 20px;padding-bottom:max(20px,env(safe-area-inset-bottom))}#selection h2{font-size:29px}.tryon-metrics{padding:10px 0}.tryon-metrics strong{font-size:21px}.tryon-intro{font-size:18px;margin:14px 0 10px}.tryon-carousel img{height:65px}.tryon-carousel button{flex-basis:120px}body.tryon-focused #scene{width:100%;height:48%}body.tryon-focused #north{right:16px}#tryon-banner{top:150px;font-size:11px;padding:9px 12px}body.tryon-focused #tryon-banner{display:none}#sources{font-size:8px}#tryon-search{top:80px}body.tryon-focused .controls{top:80px}body.tryon-focused #tryon-search{top:80px}}
@media(max-width:700px){#selection .eyebrow{max-width:calc(100% - 44px);font-size:8px;letter-spacing:.06em}#selection .tryon-kind{margin:5px 0 10px}.tryon-metrics{padding:8px 0}.tryon-metrics span{font-size:9px;line-height:1.3}.tryon-intro{margin:11px 0 8px}.tryon-carousel img{height:55px}.tryon-carousel span{min-height:31px;padding:5px;font-size:10px}.tryon-actions{margin:8px 0}#tryon-result{margin:8px 0;padding:8px 10px}}

.tryon-metrics{grid-template-columns:1fr}.tryon-metrics strong small{font:inherit;font-size:16px}.tryon-metrics div>small{display:block;color:#63705f;font-size:10px;line-height:1.45;margin-top:5px}.tryon-metrics span{font-weight:600;font-size:11px}
body.tryon-video{background:#182b20}body.tryon-video>*:not(#scene){display:none!important}body.tryon-video #scene{width:min(100vw,56.25vh);height:min(100vh,177.7778vw);left:50%;top:50%;transform:translate(-50%,-50%);right:auto;bottom:auto}

#selection .lotcta{display:flex;align-items:center;justify-content:center;min-height:44px;background:#25d366;color:white;font-size:13px;font-weight:700;text-decoration:none;border-radius:8px;margin-top:12px;padding:11px}

.tryon-assumed{font-size:11px;line-height:1.5;padding:10px;background:#f3e9cf;color:#614e25;border-radius:6px}body.tryon-focused #tryon-banner{display:none}

body.tryon-video>#viewer-3d{display:block!important}body.tryon-video #viewer-3d>*:not(#scene){display:none!important}

.tryon-next{display:flex;gap:8px;margin:10px 0}.tryon-next button{flex:1;min-height:44px;border:1px solid #28533d;background:#28533d;color:#fffdf8;border-radius:7px;font:inherit;font-size:13px}.tryon-next button+button{background:transparent;color:#28533d}

body>#selection{position:fixed;z-index:20;box-sizing:border-box;font-family:system-ui,sans-serif;color:#284535}body>#selection[hidden]{display:none}body>#selection .eyebrow{letter-spacing:.08em;text-transform:uppercase}body>#selection #close-selection{position:absolute}

#tryon-estudio{position:fixed;bottom:35px;left:50%;transform:translateX(-50%);z-index:12;min-height:44px;padding:12px 18px;background:#fffdf8;color:#28533d;border:1px solid #ccd3c8;border-radius:9px;text-decoration:none;font:600 13px system-ui;white-space:nowrap}.tryon-focused #tryon-estudio{display:none}

body.tryon-focused #sun-panel{right:auto;left:72px;top:150px;width:300px;max-width:calc(100vw - 88px);max-height:calc(100vh - 180px);overflow:auto}@media(max-width:700px){body.tryon-focused #sun-panel{max-height:calc(48vh - 160px)}}

/* Gesture surfaces do not select text; typing and editing keep native selection. */
body,canvas,#map,#viewer-3d,button,a,label{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}
canvas,#scene{touch-action:none}
input,textarea,[contenteditable=true]{user-select:text!important;-webkit-user-select:text!important;-webkit-touch-callout:default}

#tryon-sun{width:100%;min-height:44px;padding:10px;border:1px solid #b8cbb5;border-radius:8px;background:#eef3e8;color:#284535;font:600 12px system-ui}

.has-tryon-sun #sun-panel{display:none!important}
body.fleet-sun-only #sun-panel{display:block!important;position:fixed;left:auto!important;right:24px!important;top:auto!important;bottom:24px;width:360px;max-height:35vh;z-index:100;overflow:auto}
.fleet-sun-only>#viewer-3d>*:not(#scene),.fleet-sun-only>header,.fleet-sun-only>.controls,.fleet-sun-only>#selection,.fleet-sun-only>#tryon-search,.fleet-sun-only>#tryon-banner,.fleet-sun-only>.switcher,.fleet-sun-only>.sun-ui,.fleet-sun-only>#hint,.fleet-sun-only>#north,.fleet-sun-only>#sources{display:none!important}
.fleet-sun-only #scene{width:100%!important;height:100%!important}
.has-tryon-sun #sun-panel #sun-toggle,.has-tryon-sun #sun-panel #sun-play,.has-tryon-sun #sun-panel .sun-presets,.has-tryon-sun #sun-panel [data-season=otono]{display:none!important}
.fleet-sun-only #sun-body{display:block!important}.fleet-sun-only .sun-seasons{display:flex}.fleet-sun-only .sun-seasons button{flex:1;min-height:44px}
#fleet-sun-close{min-width:44px;min-height:44px;border:1px solid #b9caba;border-radius:50%;background:#f5f7ee;color:#213d43;font:26px system-ui}#fleet-sun-angle{font:12px system-ui;padding:10px 0}
@media(max-width:700px){body.fleet-sun-only #sun-panel{left:0!important;right:0!important;bottom:0;width:100%;max-width:none;max-height:35svh;border-radius:18px 18px 0 0;padding-bottom:max(12px,env(safe-area-inset-bottom))}}

/* WebKit native menulists ignore min-height alone; explicit size keeps touch targets usable. */
select#tryon-dorms,select#dorms{height:44px!important;min-height:44px!important;box-sizing:border-box;appearance:none;-webkit-appearance:none;font-size:16px;line-height:normal;padding:9px 30px 9px 9px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%23284535' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:12px 8px}
#sun-toggle,#fleet-sun-close{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important}
#sun-panel.is-collapsed{height:auto!important;min-height:0!important;max-height:64px!important;padding-bottom:8px!important}
#sun-panel [data-season],#sun-time{height:44px;min-height:44px;touch-action:manipulation}#sun-time{touch-action:none}
/* Attribution stays quiet, but its entire padded area is a touch target. */
#selection .tryon-source a,#selection details a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;box-sizing:border-box;padding:8px 6px;vertical-align:middle}
