#lang-fab-wrap{display:none!important}.page{background:var(--ecru);flex-direction:column;min-height:100dvh;display:flex}.dorm-header{background:var(--white);border-bottom:1px solid var(--ecru-dark);align-items:center;gap:14px;padding:52px 20px 14px;display:flex}.page-intro{color:var(--ink-muted);background:var(--white);border-bottom:1px solid var(--ecru-dark);padding:8px 20px;font-size:13px;line-height:1.6}.back-btn{background:var(--ecru);width:36px;height:36px;color:var(--ink-soft);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;text-decoration:none;display:flex}.header-icon{font-size:26px}.header-title{color:var(--ink);margin:0;font-family:Playfair Display,serif;font-size:22px}.header-sub{color:var(--ink-muted);margin:2px 0 0;font-size:13px}.filters-bar{background:var(--white);border-bottom:1px solid var(--ecru-dark);z-index:100;flex-direction:column;gap:8px;padding:10px 16px;display:flex;position:sticky;top:0}.filter-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.filter-chips,.dept-chips{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:6px;display:flex;overflow-x:auto}.filter-chips::-webkit-scrollbar{display:none}.dept-chips::-webkit-scrollbar{display:none}.fchip{border:1.5px solid var(--ecru-dark);background:var(--white);color:var(--ink-muted);cursor:pointer;white-space:nowrap;border-radius:20px;flex-shrink:0;padding:5px 13px;font-family:inherit;font-size:12px;font-weight:500}.fchip.active{background:var(--moss);border-color:var(--moss);color:#fff}.dchip{border:2px solid var(--ecru-dark);background:var(--ecru);color:var(--ink);cursor:pointer;white-space:nowrap;border-radius:20px;flex-shrink:0;padding:5px 12px;font-family:inherit;font-size:12px;font-weight:500;transition:all .15s}.dchip:hover{border-color:var(--moss);color:var(--moss);background:var(--moss-pale)}.dchip.active{border-color:var(--moss);color:var(--moss);background:var(--moss-pale);font-weight:700}.dchip[data-dept=""]{--dc:#888}.select-wrap{align-items:center;display:flex;position:relative}.select-wrap svg:first-child{pointer-events:none;color:var(--ink-muted);position:absolute;left:10px}.select-wrap select{appearance:none;border:1.5px solid var(--ecru-dark);background:var(--white);color:var(--ink);cursor:pointer;border-radius:20px;padding:6px 30px 6px 28px;font-family:inherit;font-size:12px}.search-wrap{background:var(--ecru);border:1px solid var(--ecru-dark);border-radius:20px;flex:1;align-items:center;gap:7px;min-width:140px;padding:6px 12px;display:flex}.search-input{color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:13px}.search-input::placeholder{color:var(--ink-muted)}.search-clear{cursor:pointer;color:var(--ink-muted);background:0 0;border:none;padding:0;font-size:14px}.body-wrap{flex-direction:column;display:flex}.map-col{position:relative}#dorm-map{width:100%;height:320px;display:block}.map-spinner{background:var(--ecru);z-index:500;color:var(--ink-muted);pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:10px;font-size:13px;display:flex;position:absolute;inset:0}.spinner{border:3px solid var(--ecru-dark);border-top-color:var(--moss);border-radius:50%;width:26px;height:26px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.list-col{background:var(--ecru-dark);flex-direction:column;display:flex}.list-top-bar{background:var(--white);border-bottom:1px solid var(--ecru-dark);padding:10px 16px 8px}.results-count{color:var(--ink-muted);font-size:13px;font-weight:500}.cards-wrap{background:var(--ecru-dark);flex-direction:column;gap:8px;padding:10px;display:flex}.empty-msg{text-align:center;color:var(--ink-muted);padding:32px;font-size:14px}.hcard{background:var(--white);border:1.5px solid var(--ecru-dark);border-radius:12px;flex-direction:column;gap:4px;padding:11px 13px;transition:box-shadow .15s,border-color .15s,transform .15s;display:flex;box-shadow:0 1px 4px #0000000f,0 3px 12px #00000012}.hcard:hover{border-color:var(--moss);transform:translateY(-1px);box-shadow:0 4px 18px #00000021}.hcard-photo-wrap{border-radius:10px 10px 0 0;flex-shrink:0;width:calc(100% + 26px);height:120px;margin:-11px -13px 8px;overflow:hidden}.hcard-photo{object-fit:cover;width:100%;height:100%;transition:transform .35s;display:block}.hcard:hover .hcard-photo{transform:scale(1.04)}.hcard-content{display:contents}.hcard-top{flex-wrap:nowrap;align-items:center;gap:6px;display:flex;overflow:hidden}.hcard-badge{letter-spacing:.02em;white-space:nowrap;border-radius:20px;flex-shrink:0;padding:2px 9px;font-size:11px;font-weight:700}.hcard-stars{color:#f59e0b;white-space:nowrap;letter-spacing:.05em;margin-left:auto;font-size:11px;font-weight:700}.hcard-name{color:var(--ink);font-size:14px;font-weight:700;line-height:1.3}.hcard-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.hcard-loc{color:var(--ink-muted);font-size:12px}.hcard-dept-chip{white-space:nowrap;border:1.5px solid;border-radius:10px;flex-shrink:0;padding:1px 7px;font-size:10px;font-weight:700}.hcard-footer{border-top:1px solid var(--ecru-dark);flex-wrap:wrap;align-items:center;gap:6px;margin-top:3px;padding-top:6px;display:flex}.hcard-btn{color:var(--moss);background:var(--moss-pale);white-space:nowrap;border:1px solid #4a7a504d;border-radius:8px;padding:3px 10px;font-size:11px;font-weight:600;text-decoration:none;transition:background .12s}.hcard-btn:hover{background:#4a7a502e}.hcard-btn-cta{color:#fff!important;background:#3a9a5c!important;border-color:#2e7a48!important}.hcard-btn-reserve{color:#fff!important;background:#e07b3a!important;border-color:#c96a2a!important}.hcard-btn-maps{color:#1a73e8;background:var(--moss-pale);border-color:#c5d8f8}.hcard-btn-maps:hover{background:#dbeafe}html.dark .hcard-btn-maps{color:#6ba3f5;background:#6ba3f51a;border-color:#6ba3f54d}.hcard-map-btn{border:1px solid var(--ecru-dark);background:var(--ecru);cursor:pointer;color:var(--ink-soft);white-space:nowrap;border-radius:8px;margin-left:auto;padding:3px 10px;font-family:inherit;font-size:11px;transition:background .12s}.hcard-map-btn:hover{background:var(--ecru-dark);color:var(--ink)}.list-pagination{background:var(--white);justify-content:center;align-items:center;gap:8px;padding:8px 12px;display:flex}.list-pagination:not(:empty){border-top:1px solid var(--ecru-dark)}#list-pagination-top:not(:empty){border-top:none;border-bottom:1px solid var(--ecru-dark)}.pag-btn{border:1.5px solid var(--ecru-dark);background:var(--white);cursor:pointer;color:var(--ink-soft);border-radius:20px;padding:4px 13px;font-family:inherit;font-size:12px}.pag-btn:hover:not(:disabled){background:var(--ecru)}.pag-btn:disabled{opacity:.35;cursor:default}.pag-info{color:var(--ink-muted);font-size:12px}.osm-credit{text-align:center;color:var(--ink-muted);background:var(--white);padding:6px 16px 12px;font-size:10px}.osm-credit a{color:var(--moss)}@media (width<=899px){.dorm-header{padding:44px 14px 10px}.dorm-header h1{font-size:20px}.filters-bar{gap:6px;padding:8px 10px;overflow-x:auto}.fchips-row{flex-wrap:nowrap;padding-bottom:2px;overflow-x:auto}.fchip{padding:4px 10px;font-size:11px}.select-wrap select{font-size:11px}.search-wrap input{font-size:13px}.cards-wrap{gap:6px;padding:8px}.hcard{padding:9px 11px}.hcard-photo-wrap{width:calc(100% + 22px);height:100px;margin:-9px -11px 7px}.hcard-name{font-size:13px}}@media (width>=900px){[data-layout=split] .body-wrap{flex-direction:row;height:calc(100vh - 152px);overflow:hidden}[data-layout=split] .map-col{flex:1;height:100%}[data-layout=split] #dorm-map{width:100%;height:100%}[data-layout=split] .list-col{border-left:1px solid var(--ecru-dark);box-sizing:border-box;flex-direction:column;flex-shrink:0;width:380px;height:100%;display:flex;overflow:hidden auto}[data-layout=split] .cards-wrap{box-sizing:border-box;flex:1;grid-template-columns:1fr;padding:10px;overflow:hidden auto}[data-layout=split] .list-pagination,[data-layout=split] .osm-credit{flex-shrink:0}}[data-layout=map-top] #dorm-map{height:300px}html.dark .fchip,html.dark .dchip,html.dark .deptchip,html.dark .tchip,html.dark .cchip{color:#eee8dc!important;background:#3a3830!important;border-color:#4a4640!important}html.dark .fchip:hover,html.dark .dchip:hover,html.dark .deptchip:hover,html.dark .tchip:hover,html.dark .cchip:hover{color:#7abf5a!important;background:#1e2e14!important;border-color:#5a7a3a!important}html.dark .fchip.active,html.dark .dchip.active,html.dark .deptchip.active,html.dark .tchip.active,html.dark .cchip.active{color:#fff!important;background:#5a7a3a!important;border-color:#5a7a3a!important}
