/* Alo's warm coral theme. Shared layout and all listing behavior stay in style.css. */
:root{--alo-coral:#e96755;--alo-action:#c9493a;--alo-action-hover:#b83f32;--alo-soft:#fff0ea;--alo-ink:#292524;--alo-muted:#736964;--alo-line:#ede5df;--alo-paper:#fff9f5}
body:has(.app-shell){background:#f4efeb;color:var(--alo-ink);font-family:-apple-system,BlinkMacSystemFont,'DM Sans','Noto Sans KR','Noto Sans',Arial,sans-serif}
.app-shell,.bottom-nav,.language-dialog,.photo-dialog,.toast{--ink:var(--alo-ink);--green:var(--alo-action);--mint:var(--alo-soft);--pale:#fff0ea;--paper:var(--alo-paper);--muted:var(--alo-muted);--line:var(--alo-line);--shadow:0 8px 30px #54382d09}
.app-shell{background:var(--alo-paper);box-shadow:0 0 60px #513d3006}
.site-header{height:72px;background:#fffdfbf2;border-color:var(--alo-line);backdrop-filter:blur(20px)}
.brand img{width:75px;height:46px}.language-button{min-height:44px;padding:10px 13px;border:1px solid var(--alo-line);background:#fff;color:var(--alo-ink);font-weight:600;border-radius:15px}.language-button:hover{box-shadow:0 3px 12px #5b382c09;transform:none;background:#fff7f2}
.hero{color:var(--alo-ink);background:var(--alo-paper);padding:30px clamp(20px,5vw,42px) 27px;isolation:auto}
.hero::before,.hero::after{display:none}.hero-inner{min-height:0;padding:0}.hero h1{color:var(--alo-ink);font-size:clamp(32px,4.4vw,46px);font-weight:750;letter-spacing:-.055em;line-height:1.3;margin:0 0 18px;animation:none;text-shadow:none}.hero h1 em{color:var(--alo-action);font-weight:inherit}
.hero .trust-line{animation:none;background:#fff0e9;border:0;color:#8d493b;box-shadow:none;border-radius:999px;padding:8px 11px;margin:0;font-size:11px;font-weight:600;line-height:1.7}.trust-icon{background:var(--alo-action);flex-shrink:0}
.simple-regions{gap:8px;margin:0 0 12px}.simple-regions button{background:#fff;border-color:var(--alo-line);color:#685c56;min-height:46px;padding:11px 17px;border-radius:15px;font-weight:600}.simple-regions button[aria-pressed=true]{background:var(--alo-action);border-color:var(--alo-action);color:white;box-shadow:0 4px 12px #c9493a15}.simple-regions button:hover{border-color:#d68a7b}.simple-regions button:active{transform:scale(.98)}
.simple-conditions{border-color:var(--alo-line);border-radius:17px;background:#fff;box-shadow:none;margin-bottom:27px}.simple-conditions>summary{color:#554943;padding:14px 17px;min-height:48px;font-weight:600}.simple-conditions>summary>span:last-child{color:#a28073;font-size:18px;transition:transform .18s}.simple-conditions[open]>summary>span:last-child{transform:rotate(45deg)}.simple-conditions[open]>summary{border-color:var(--alo-line)}.simple-conditions:has(.voice-interpretation:not([hidden]))>summary{color:var(--alo-action)}
.simple-condition-content .field>span{color:#6c5d55;font-size:13px;line-height:1.65}.simple-condition-content select{max-width:100%;background:#fffdfb;color:var(--alo-ink);border-color:var(--alo-line);border-radius:12px;font-size:14px;min-height:48px}.simple-search.voice-section{border-top-color:var(--alo-line);background:none;box-shadow:none}.simple-search textarea{background:#fffdfb;color:var(--alo-ink);border-color:var(--alo-line);min-height:50px!important;height:50px;font-size:14px;box-shadow:none}.simple-search textarea::placeholder{color:#86766d}.voice-input-row textarea:focus{outline:2px solid #e9a293;border-color:var(--alo-action)}.simple-search #voiceMic{color:var(--alo-action);background:var(--alo-soft);min-width:50px;min-height:50px}.simple-search #voiceMic:hover{background:#ffe3d8;transform:none}.simple-search #voiceMic.listening{background:var(--alo-action);color:#fff}.simple-search #voiceSubmit{background:var(--alo-action);min-height:48px;border-radius:13px;font-weight:650;font-size:14px}.simple-search #voiceSubmit:hover{background:var(--alo-action-hover)}.simple-search #voiceSubmit:disabled{opacity:.55;cursor:wait}
.voice-interpretation{border-color:var(--alo-line);background:#fffdfb}.voice-interpretation strong{color:#6b4e43}.voice-chips span{background:var(--alo-soft);color:#914435}.voice-interpretation p,.simple-active{color:var(--alo-muted)}.simple-active button{color:var(--alo-action);font-weight:600}
.rooms-section h2{color:var(--alo-ink);font-size:24px;letter-spacing:-.035em;font-weight:750}.count-pill{background:#fff0e9;color:#a44334;font-weight:650;padding:7px 11px}
.room-list{gap:22px}.room-card{border:1px solid #efe7e0;background:white;border-radius:23px;box-shadow:0 5px 24px #53372d06;animation:none;transition:box-shadow .18s}.room-card:hover{transform:none;box-shadow:0 7px 25px #53372d0c}.room-photo-wrap{background:#f1e9e2;aspect-ratio:4/3}.room-photo-wrap img{transition:none}.listing-check{background:#fffffff2;color:#51443b;font-size:10px;font-weight:600;border-radius:10px;padding:7px 9px;box-shadow:0 2px 9px #4e342710}.listing-check i{background:var(--alo-coral);box-shadow:0 0 0 3px #e9675519}.listing-type{color:white;background:#332a25bd;border-radius:8px;font-size:11px;backdrop-filter:blur(8px)}
.save-button{color:#75665c;background:#fffffff5;border:1px solid #ffffffa6;box-shadow:0 2px 10px #3a241712;width:44px;height:44px}.save-button.is-saved{color:var(--alo-action);background:#fff6f1}.room-photo-wrap .photo-detail:focus-visible{background:var(--alo-action)}
.room-card .card-content{padding:20px}.card-title{color:var(--alo-ink);font-size:18px;font-weight:700;line-height:1.55;letter-spacing:-.025em;margin-bottom:7px}.card-location{color:#82746c;font-size:12px;margin-bottom:14px;line-height:1.6}.price-line strong{color:var(--alo-ink);font-size:clamp(17px,2.7vw,21px);font-weight:750;line-height:1.6;letter-spacing:-.025em}.card-utility{color:#81736b;font-size:12px;line-height:1.7}.listing-highlights span,.card-tags span{background:#f6f2ee;color:#736052;border-radius:8px;font-weight:550;padding:6px 9px}.listing-open{color:var(--alo-action);border-top-color:#f0e9e3;font-weight:650;min-height:48px;font-size:13px;margin-top:13px;padding:15px 0 2px}.listing-open span{font-size:18px}.verified-label{color:var(--alo-action)}.verified-label::before{background:var(--alo-soft)}
.bottom-nav{background:#fffdfbf2;border-top:1px solid var(--alo-line);box-shadow:0 -4px 20px #51322104;backdrop-filter:blur(20px)}.bottom-nav button{color:#897c74;font-size:11px;font-weight:550;min-height:50px}.bottom-nav button.nav-active{color:var(--alo-action)}.bottom-nav .nav-active .nav-icon{animation:none}.bottom-nav button.nav-active::before{background:var(--alo-soft)}
.back-button{color:#63564e;min-height:44px;font-weight:600}.detail-title{color:var(--alo-ink);font-size:clamp(25px,4vw,32px);line-height:1.45;font-weight:750;letter-spacing:-.04em}.detail-location{color:var(--alo-muted);line-height:1.7}.detail-photos{background:#f1e9e2;border-radius:20px}.gallery-arrow{color:#55453b}.detail-photos .photo-count{background:#302721b8}.detail-price{border-color:var(--alo-line);background:white;border-radius:18px}.detail-price-row{border-color:var(--alo-line);color:#796a61}.detail-price-row strong{color:var(--alo-ink)}.detail-price-row.total strong{color:var(--alo-action)}.simple-cost{color:var(--alo-muted);font-size:13px;line-height:1.8}.fact-grid span{background:#f7f2ed;color:#63564e;border-color:var(--alo-line)}.detail-block{border-color:var(--alo-line)}.detail-block>h3{font-weight:700}.detail-actions button{background:#fff;border-color:var(--alo-line);color:#6b584c;min-height:46px;border-radius:13px}.detail-actions button:hover{background:#fff3ec}
.viewing-room .detail-inquiry-bar{background:#fffdfbf0;border-color:var(--alo-line);box-shadow:0 -5px 24px #68412c08}.detail-inquiry-bar a{background:var(--alo-action);color:white;border-radius:15px;min-height:52px;font-weight:700;font-size:15px}.detail-inquiry-bar a:hover{background:var(--alo-action-hover);transform:none}.detail-inquiry-bar a:active{transform:scale(.99)}
.sibling-campus{background:#fff3ec;border-color:#f2dfd3;border-radius:17px}.sibling-colleges label{color:#7b6659}.sibling-colleges select{background:#fffdfb;color:var(--alo-ink);border-color:#ebdcd0;min-height:48px}.sibling-campus p,.sibling-detail>p{color:#806b5e}.sibling-campus a{color:var(--alo-action);text-underline-offset:3px}.sibling-note{color:#8a796d!important}.campus-card-fact{background:#ffe9dd;color:#994536;font-weight:650}.sibling-nearby{border-color:var(--alo-line);background:var(--alo-line)}.sibling-nearby>div{background:#fffdfb;color:#736052}.sibling-nearby strong{color:#9b4838}.room-map-frame{border-color:var(--alo-line);background:#f7f2ed}.map-address,.map-note,.map-status{color:var(--alo-muted)}.map-links a{border-color:var(--alo-line);background:white}.map-links a:hover{background:var(--alo-soft)}
.empty-state{color:var(--alo-muted);border-color:var(--alo-line);background:#fffdfb}.empty-state h3{color:var(--alo-ink)}.empty-inquiry,.primary-link{background:var(--alo-action);color:white;min-height:48px;border-radius:13px}.plain-link{color:var(--alo-action);min-height:44px}.outline-button{color:var(--alo-action);border-color:#e0b2a3;background:#fff;min-height:46px}.simple-view h1,.guide-step h3{color:var(--alo-ink)}.guide-step{border-color:var(--alo-line);background:#fffdfb;box-shadow:none}.step-number{background:var(--alo-soft);color:var(--alo-action)}.guide-cta{background:#fff0e7}.footer{background:var(--alo-paper);color:#948478;border-top:1px solid var(--alo-line)}
.dialog-backdrop{background:#2e201f66;backdrop-filter:blur(8px)}.language-dialog{background:#fffcf9;color:var(--alo-ink);border:1px solid #ffffffb3;box-shadow:0 24px 90px #43241e26}.dialog-kicker{color:var(--alo-action)}.language-grid button{background:#fff;border-color:var(--alo-line);color:var(--alo-ink);min-height:72px;border-radius:15px}.language-grid button[aria-pressed=true]{background:var(--alo-soft);border-color:var(--alo-action);color:#a34435}.language-grid button .language-copy strong,.language-grid button .language-copy small{color:inherit;line-height:1.6}.language-grid button:hover{border-color:#d99280;transform:none}.language-flag{font-size:22px!important}.dialog-close{background:#f6eee8;color:#705e51}.photo-dialog{background:#211d1bf5}.toast{background:#302723;color:#fff}
.app-shell :is(button,a,select,textarea):focus-visible,.bottom-nav button:focus-visible,.language-dialog button:focus-visible{outline:3px solid #bc4838;outline-offset:3px}.photo-viewer:focus-visible{outline-color:var(--alo-action);outline-offset:-4px}
html:lang(vi) .app-shell,html:lang(vi) .bottom-nav,html:lang(vi) .language-dialog{font-family:-apple-system,BlinkMacSystemFont,'DM Sans','Noto Sans',Arial,sans-serif;letter-spacing:normal}
html:lang(vi) :is(.hero h1,.card-title,.detail-title){line-height:1.5;letter-spacing:-.025em}
html:lang(zh) .app-shell,html:lang(zh) .bottom-nav,html:lang(zh) .language-dialog{font-family:-apple-system,BlinkMacSystemFont,'PingFang SC','Microsoft YaHei','Noto Sans CJK SC',sans-serif;letter-spacing:normal}
html:lang(zh) :is(.hero h1,.card-title,.detail-title){line-height:1.5;letter-spacing:-.01em;font-style:normal}
@media(max-width:600px){.hero{padding:25px 20px 24px}.hero h1{font-size:31px}.hero .trust-line{font-size:10px;padding:7px 10px}.simple-regions{gap:7px}.simple-regions button{font-size:12px;padding:10px 10px;min-height:45px}.room-list{gap:19px}.room-card{border-radius:21px}.room-card .card-content{padding:18px}.card-title{font-size:17px}.rooms-section h2{font-size:23px}.price-line strong{font-size:18px}.simple-condition-content .field{grid-template-columns:minmax(85px,100px) minmax(0,1fr)}.simple-condition-content select{font-size:13px}.simple-search textarea{font-size:13px}.sibling-nearby>div{font-size:12px}.detail-title{font-size:26px}.language-grid button .language-copy strong{font-size:12px}.language-grid button .language-copy small{font-size:11px}}
@media(min-width:780px){body:has(.app-shell){padding:20px 0 0}.app-shell{border:1px solid var(--alo-line);border-bottom:0;border-radius:26px 26px 0 0;overflow:clip}.bottom-nav{border-left:1px solid var(--alo-line);border-right:1px solid var(--alo-line)}}
@media(prefers-reduced-motion:reduce){.simple-conditions>summary>span:last-child,.room-card{transition:none}}
/* Clear KRW amounts and native-language rental wording. */
.locale-currency-note{font-size:11px;color:#8a786c;line-height:1.7;margin:-9px 0 18px}.locale-prices{margin:15px 0 10px;display:grid;gap:8px}.locale-prices>div{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.locale-prices span{font-size:12px;color:#7c695d;flex-shrink:0}.locale-prices strong{font-size:18px;color:#3a302b;letter-spacing:-.025em;text-align:right;line-height:1.5;overflow-wrap:anywhere}.locale-prices .locale-total strong{font-size:22px;color:#a94334;font-weight:750}.locale-prices small{color:#8b7768;font-size:11px;line-height:1.7}.locale-inquiry-hint{font-size:10px;line-height:1.65;color:#877469;margin:7px 0 0;text-align:center;width:100%}.viewing-room .detail-inquiry-bar:has(.locale-inquiry-hint:not([hidden])){flex-wrap:wrap;gap:0}.viewing-room .detail-inquiry-bar:has(.locale-inquiry-hint:not([hidden])) a{flex-basis:100%}.simple-cost{overflow-wrap:anywhere}html:lang(vi) .simple-condition-content .field{grid-template-columns:minmax(75px,95px) minmax(0,1fr)}@media(max-width:380px){.locale-prices strong{font-size:16px}.locale-prices .locale-total strong{font-size:20px}.locale-prices span{font-size:11px}}
.expanded-regions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.expanded-regions button{min-width:0;padding:9px 7px;font-size:11px;min-height:43px;border-radius:12px;line-height:1.5;overflow-wrap:anywhere}.life-cultures{display:flex;flex-wrap:wrap;gap:7px;margin:17px 0}.life-cultures button{background:#fffdfb;border:1px solid #eadfd6;border-radius:999px;min-height:42px;padding:9px 13px;font:inherit;font-size:12px;color:#7b6355}.life-cultures button[aria-pressed=true]{color:white;background:#c9493a;border-color:#c9493a}.life-place{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid #eee3db;background:#fffdfb;border-radius:15px;padding:16px;margin:9px 0}.life-place>div{min-width:0}.life-place h4{font-size:15px;line-height:1.6;margin:0 0 3px;color:#3e302a}.life-original{display:block;font-size:11px;color:#8a776a;margin-bottom:4px}.life-place small{font-size:10px;color:#a45a44;line-height:1.6}.life-place p{font-size:11px;line-height:1.8;color:#8a776a;margin:5px 0 0;overflow-wrap:anywhere}.life-place a{flex-shrink:0;font-size:11px;line-height:1.7;color:#ad4735;padding:10px 0;max-width:75px}.life-note{font-size:11px!important;color:#9c8778!important;line-height:1.9!important}.life-scope{font-size:12px;color:#8d6e5c}.life-other{margin:15px 0}.life-other summary{font-size:12px;color:#96755f;padding:12px 0;cursor:pointer}.life-more{border:1px solid #ebdace!important;border-radius:12px!important;padding:11px 15px!important;min-height:44px;background:#fffaf6!important;color:#ac4d37!important;font-size:12px!important}.life-more:disabled{opacity:.5}.detail-block.life-places>h3{font-size:18px;line-height:1.7}.life-place a:focus-visible,.life-other summary:focus-visible{outline:3px solid #bc4838;outline-offset:3px}@media(max-width:380px){.expanded-regions button{font-size:10px}.life-place{padding:13px;gap:8px}.life-place h4{font-size:14px}}

.map-status{background:#faf4ee}.map-status button{color:#ac4d37;border-color:#ebdace;background:#fffdfb}
