/* Full-viewport exploration: the architecture is the main surface. */
html,body{width:100%;height:100%;overflow:hidden}body{background:#f8efd9}.topbar{position:fixed;inset:0 0 auto;z-index:12;height:94px;background:linear-gradient(#faf1de99,transparent);padding:0 27px;pointer-events:none}.topbar>*{pointer-events:auto}.brand{color:#fff4d6;background:#213b2ee8;backdrop-filter:blur(18px);padding:12px 17px;border:1px solid #e2c88855;border-radius:13px;box-shadow:0 4px 20px #34422c15;font-size:19px}.brand-symbol{height:34px;width:32px;font-size:24px}.brand small{font-size:8px}.breadcrumb{display:none}.header-right{gap:10px;align-items:center}.language{background:#fff8eae8;backdrop-filter:blur(16px);border:1px solid #be9c604d;color:#3c4a2b;height:45px;box-shadow:0 4px 16px #6e592410}.language:hover{background:#fff9df}.toggle-spaces{height:45px;display:flex;align-items:center;gap:10px;padding:0 16px;border-radius:30px;background:#294331ed;backdrop-filter:blur(15px);color:#fff2cf;border:1px solid #c8b16b5c;font-size:14px;box-shadow:0 4px 16px #203c261f}.toggle-spaces small{font-size:11px;background:#eccd7130;padding:4px 6px;border-radius:5px;color:#f1cf82}.menu-cells{font-size:25px;line-height:1;color:#ebc973}.workspace{position:fixed;inset:0;width:100%;height:100svh;display:block;min-height:0}.explorer{position:absolute;inset:0;height:100%;min-height:0;max-height:none;width:100%;background:radial-gradient(ellipse at 90% 0,#f3d38855,transparent 46%),#f8efd9}.project-heading{top:113px;left:32px;max-width:300px;z-index:5;background:linear-gradient(110deg,#f8efd9b3,transparent);padding:0 18px 18px 0}.project-heading h1{font-size:clamp(29px,3vw,43px);line-height:1.04;margin:11px 0;letter-spacing:-1.3px}.project-heading .eyebrow{font-size:10px;letter-spacing:1.1px}.project-heading .line{height:13px;width:12px}.project-heading p{font-size:13px;color:#87724c;max-width:200px}.map-viewport,html[lang=ar] .map-viewport{inset:0;border:0;border-radius:0;background:none;box-shadow:none;overflow:hidden;touch-action:pan-y;z-index:2}.map-scene{top:50%;left:50%}.plan-image{filter:sepia(.2) saturate(.88);mask-image:linear-gradient(90deg,transparent,#000 1.5%,#000 98.5%,transparent),linear-gradient(0deg,transparent,#000 2%,#000 98%,transparent)}.map-footer{position:fixed;bottom:24px;left:30px;right:30px;z-index:7;pointer-events:none;align-items:center}.overview-meta{background:#fff7e6d9;border:1px solid #cdb58155;backdrop-filter:blur(15px);padding:11px 16px;border-radius:10px;max-width:170px;box-shadow:0 5px 25px #4539160c}.meta-number{font-size:31px}.overview-meta>span:last-child{font-size:10px}.explore-hint{background:#263f2deb;color:#f7e9c2;border:1px solid #c5a45160;border-radius:30px;padding:10px 18px;backdrop-filter:blur(18px);font-size:13px}.hint-hex{background:#d6b8632e;color:#eacc76;width:26px;height:29px}.honeycomb-accent{width:260px;height:174px;top:-76px;right:22%;opacity:.3}.honey-glow{right:15%;top:0}.garden-bee.bee-one{right:31%;top:93px;width:35px;height:35px}.garden-bee.bee-two{left:47%;bottom:33px;width:27px;height:27px}.honey-atmosphere{z-index:3}.honey-atmosphere,.project-heading{pointer-events:none}.map-entry{display:none!important}.marker{width:35px;height:37px;font-size:12px}.marker::before{inset:-3px}.marker.active{filter:drop-shadow(0 0 8px #cb982ba0)}.room-outline{cursor:pointer}.room-outline.active{fill:#dca02b42;stroke:#bb8427}.entering-room .map-viewport,.entering-room .map-footer{pointer-events:none}.entering-room .project-heading{opacity:1}.entering-room .marker:not(.active){opacity:1}
.spaces-panel{position:fixed;inset:18px 18px 18px auto;margin:0;width:340px;height:calc(100svh - 36px);max-height:none;max-width:calc(100vw - 28px);padding:65px 25px 26px;border:1px solid #cebe8455;border-radius:18px;box-shadow:-20px 0 100px #12251945;overflow:auto;scrollbar-width:thin;background:#2b432ff5;backdrop-filter:blur(24px);color:#f8ebca}.spaces-panel:not([open]){display:none}.spaces-panel[open]{display:block;animation:spaces-slide .4s cubic-bezier(.2,.7,.3,1)}.spaces-panel::backdrop{background:#1028195a;backdrop-filter:blur(4px)}.close-spaces{position:absolute;top:16px;right:18px;width:35px;height:35px;font-size:25px;border:1px solid #dbc88e55;border-radius:50%;color:#eed39a}.close-spaces:hover{background:#f6d68820}.panel-heading h2{font-size:27px}.featured{height:165px}.room-link{min-height:47px}.panel-foot{margin-top:24px}#room-list{display:block}.room-link .name{font-size:14px}.panel-heading .eyebrow{font-size:11px}
.room-dialog{background:#162417;height:100svh}.room-backdrop{opacity:0}.room-image-viewport,.info-hidden .room-image-viewport{position:absolute;inset:0;overflow:hidden;transition:none;max-height:none}.room-canvas{max-height:none}.room-canvas>img{border-radius:0;object-fit:fill}.room-gradient{z-index:1;background:linear-gradient(180deg,#0b1b1988,transparent 23%,transparent 66%,#11281dd4)}.info-hidden .room-gradient{opacity:1}.room-topbar{z-index:5;top:25px;left:27px;right:27px;gap:15px}.back-map{background:#172f26a3;border-color:#e5efda70;box-shadow:0 4px 20px #10261920;font-size:14px}.room-topbar>button:last-child{background:#1a3126a8;backdrop-filter:blur(16px);border-color:#ffffff7a;width:45px;height:45px}.room-topbar>button[aria-pressed=true]:last-child{background:#e6c77c;color:#263b26;border-color:#f7d998}.room-location{display:flex;align-items:center;gap:11px;background:#192f23b0;backdrop-filter:blur(16px);padding:10px 18px 10px 10px;border:1px solid #ffffff38;border-radius:30px;box-shadow:0 5px 25px #142b1830;font-size:15px}.room-location>span:first-child{width:28px;height:30px;display:grid;place-items:center;color:#ffe0a0;background:#dbc17d26;clip-path:polygon(50% 0,94% 25%,94% 75%,50% 100%,6% 75%,6% 25%);font-size:12px}.room-info{position:absolute;left:28px;top:101px;width:310px;max-width:calc(100vw - 56px);max-height:calc(100svh - 280px);padding:25px;overflow:auto;z-index:5;background:#183326db;backdrop-filter:blur(24px);border:1px solid #e2cca359;border-radius:13px;box-shadow:0 12px 50px #0b261e30}.room-info h2{font-size:36px;margin:16px 0 15px}.room-info>p{font-size:15px;line-height:1.7}.room-kicker{font-size:10px}.room-view-note{font-size:11px}.room-info.collapsed{opacity:0;transform:translateY(-9px);pointer-events:none}.material-tags{display:flex}.material-tags span{font-size:11px}.version-switch{margin-top:18px}.version-switch button{font-size:13px;padding:8px 10px}.minimap{top:98px;right:28px;width:127px;padding-bottom:26px;opacity:.9;border:1px solid #ebd7a76b;background:#fffaeeea;z-index:4;box-shadow:0 5px 25px #193b2b35}.minimap small{font-size:9px}.info-hidden .minimap{opacity:.9}.room-zoom{right:28px;bottom:148px;background:#1b3524b3;border-color:#f6e4b76b}.view-controls{bottom:62px;gap:15px;max-width:calc(100% - 140px);z-index:4}.filmstrip{background:#172f27ab;border-color:#e1d5a655;backdrop-filter:blur(25px);border-radius:12px;gap:8px;padding:6px}.thumb{width:83px;min-width:83px;height:53px;opacity:.68}.thumb.active{border-color:#ffdc8a}.view-arrow{background:#163626ba;backdrop-filter:blur(14px);width:38px;height:38px;border-color:#f2e8c693}.room-footer{bottom:22px;left:29px;right:29px;z-index:5;text-shadow:0 1px 4px #001c1b;font-size:12px;color:#fff2d9}.room-footer>span:first-child{color:#f7de9f}.room-footer>button{background:#203c2da6;padding:7px 15px;border:1px solid #f1dfb44d;border-radius:30px;backdrop-filter:blur(16px)}.room-footer>span:nth-child(2){display:block}.detail-card{z-index:8;bottom:165px;right:90px;background:#fff8e9ed}.detail-point{width:31px;height:31px;box-shadow:0 0 0 8px #f6c57035;border-color:#fff3c3;background:#f5ce75}.detail-point::after{font-size:13px}.image-error{position:absolute;z-index:10;background:#203f2de8;padding:25px;border-radius:14px;color:#fff3d8}.room-image-viewport[aria-busy=true]::after{content:'';position:absolute;left:calc(50% - 15px);top:calc(50% - 15px);width:30px;height:30px;border:2px solid #ffffff55;border-top-color:#f6cb72;border-radius:50%;animation:image-spin .8s linear infinite;pointer-events:none}
/* Generated four-pose bee sprite; each pose changes the wings while the body stays aligned. */
.bee-flier{display:block;position:relative;aspect-ratio:1}.bee-sprite{position:absolute;inset:0;background-image:url('assets/bee-flight.webp');background-size:400% 100%;background-repeat:no-repeat;animation:wingbeat .16s steps(4) infinite}.bee-body{position:absolute;width:52px;height:52px;filter:drop-shadow(0 3px 3px #25201038)}.hovering .bee-sprite{animation-duration:.12s}.garden-bee.bee-one .bee-sprite{animation-duration:.18s}.garden-bee.bee-two .bee-sprite{animation-duration:.14s}.bee-cursor .pollen{z-index:-1}.travel-shell{position:fixed;inset:0;z-index:2147483645;overflow:hidden;pointer-events:auto}.travel-shell>svg{position:absolute;inset:0;width:100%;height:100%}.travel-label{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;color:#f5dc9a;text-align:center;padding:24px;opacity:0;transform:translateY(8px);transition:opacity .12s,transform .3s}.travel-shell.covered .travel-label{opacity:1;transform:none}.travel-label>span:not(.travel-bee){font-size:12px;letter-spacing:2px}.travel-label strong{font:48px/1.1 var(--serif);color:#fff1ca}.travel-label .travel-bee{width:70px;height:70px;margin-bottom:10px;filter:drop-shadow(0 4px 10px #071e1370)}.travel-label i{width:90px;height:1px;background:linear-gradient(90deg,transparent,#e0b861,transparent);margin-top:10px}.travel-shell[hidden]{display:none!important}
@keyframes wingbeat{to{background-position-x:133.333333%}}@keyframes image-spin{to{transform:rotate(360deg)}}@keyframes spaces-slide{from{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}
@media(min-width:1600px){.project-heading{left:42px;top:125px}.project-heading h1{font-size:47px}.topbar{padding:0 35px}.spaces-panel{width:380px;padding:66px 31px 28px}.featured{height:185px}.view-controls{bottom:72px}.thumb{width:96px;min-width:96px;height:60px}}
@media(max-width:1050px){.project-heading{top:103px;left:25px;max-width:240px}.project-heading h1{font-size:34px}.project-heading p{max-width:180px;font-size:12px}.project-heading .eyebrow{font-size:9px}.room-footer>span:nth-child(2){display:none}.room-info{max-height:calc(100svh - 250px)}.thumb{width:72px;min-width:72px;height:47px}.room-location{font-size:14px}}
@media(max-width:800px){.topbar{height:84px;padding:0 17px}.brand{padding:10px 12px;gap:8px;font-size:17px;border-radius:11px}.brand small{font-size:7px;letter-spacing:1px}.brand-symbol{width:27px;height:30px;font-size:22px}.header-right{gap:6px}.language{min-width:43px;height:40px;padding:8px;font-size:13px}.toggle-spaces{padding:0 11px;gap:7px;height:40px;font-size:13px}.toggle-spaces small{display:none}.menu-cells{font-size:22px}.workspace,.explorer{height:100svh;min-height:0;max-height:none}.project-heading{top:93px;left:20px;max-width:230px;padding-bottom:9px;background:linear-gradient(110deg,#f8efd9d9,transparent)}.project-heading h1{font-size:29px;line-height:1.04;margin:7px 0 0;letter-spacing:-.8px;white-space:normal}.project-heading .eyebrow{font-size:9px}.project-heading p{display:none}.honeycomb-accent{right:-58px;top:-14px;width:170px;height:112px;opacity:.2}.garden-bee.bee-one{right:17%;top:133px;width:31px;height:31px}.garden-bee.bee-two{display:none}.map-footer{bottom:18px;left:18px;right:18px;gap:10px;align-items:flex-end}.overview-meta{padding:8px 11px;gap:8px;max-width:125px;border-radius:8px}.meta-number{font-size:26px}.overview-meta>span:last-child{font-size:9px;letter-spacing:.6px;max-width:65px}.explore-hint{max-width:173px;padding:10px 12px;font-size:11px;gap:8px;line-height:1.5;border-radius:24px}.hint-hex{width:23px;min-width:23px;height:25px}.marker{width:33px;height:35px;font-size:11px}.spaces-panel{inset:10px 10px 10px auto;width:330px;height:calc(100svh - 20px);max-width:calc(100vw - 20px);border-radius:15px;padding:59px 23px 24px}.featured{height:165px}.panel-heading h2{font-size:26px}.room-link{min-height:47px}.room-link .name{font-size:14px}#room-list{display:block}.room-topbar{left:17px;right:17px;top:19px;gap:7px;align-items:flex-start}.back-map{font-size:12px;padding:10px 12px;gap:7px;height:42px}.room-topbar>button:last-child{width:41px;height:41px;flex-shrink:0}.room-location{position:absolute;top:53px;left:0;font-size:14px;padding:6px 12px 6px 7px;gap:8px;border-radius:24px;max-width:calc(100vw - 135px)}.room-location>span:first-child{height:25px;width:24px;font-size:11px;flex-shrink:0}.room-location>span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.room-topbar{justify-content:space-between}.room-image-viewport,.info-hidden .room-image-viewport{inset:0}.room-gradient{background:linear-gradient(180deg,#0b241578,transparent 27%,transparent 73%,#082619d6)}.room-info{left:18px;top:128px;bottom:auto;width:310px;max-width:calc(100vw - 36px);max-height:calc(100svh - 320px);padding:20px}.room-info h2{font-size:30px;margin:13px 0}.room-info>p{font-size:14px;line-height:1.7;max-height:none;overflow:visible}.room-kicker{font-size:10px}.material-tags{display:flex}.material-tags span{font-size:10px}.version-switch{margin-top:15px}.version-switch button{font-size:12px;padding:7px 9px}.room-view-note{display:none}.minimap{top:81px;right:17px;width:91px;padding-bottom:20px}.minimap small{font-size:7px;bottom:6px;left:6px}.room-zoom{right:17px;bottom:149px}.room-zoom button{width:34px;height:35px;font-size:23px}.view-controls{bottom:65px;gap:6px;max-width:calc(100% - 28px);width:max-content}.filmstrip{padding:5px;gap:6px}.thumb{width:62px;min-width:62px;height:42px}.thumb span{font-size:10px}.view-arrow{width:31px;min-width:31px;height:34px;font-size:16px}.room-footer{left:18px;right:18px;bottom:19px;font-size:10px;gap:8px}.room-footer>button{font-size:12px;padding:5px 10px;gap:7px}.room-footer>button>span:last-child{font-size:18px}.detail-card{left:18px;right:auto;bottom:143px;max-width:300px;width:calc(100% - 36px);padding:22px}.detail-card h3{font-size:24px}.detail-card p{font-size:14px}.detail-point{width:30px;height:30px}.travel-label strong{font-size:35px}.travel-label>span:not(.travel-bee){font-size:10px;letter-spacing:1.4px}}
@media(max-width:370px){.topbar{padding:0 12px}.brand{font-size:15px;padding:9px 10px}.brand small{font-size:6px}.toggle-spaces{padding:0 9px}.menu-cells{display:none}.project-heading{left:17px;font-size:27px}.explore-hint{max-width:155px;font-size:10px}.overview-meta{max-width:111px}.room-location{max-width:calc(100vw - 131px);font-size:12px}.back-map{font-size:11px}}
html[lang=ar] .project-heading h1{font-size:38px;line-height:1.25}html[lang=ar] .room-location{direction:rtl}html[lang=ar] .travel-label strong{font-family:Tahoma,Arial,sans-serif;font-size:38px}html[lang=ar] .room-info h2{font-size:30px}html[lang=ar] .map-viewport{inset:0}
@media(max-width:800px){html[lang=ar] .project-heading h1{font-size:26px;line-height:1.3}html[lang=ar] .project-heading{max-width:190px}html[lang=ar] .room-info h2{font-size:27px}html[lang=ar] .travel-label strong{font-size:30px}}
@media(max-height:650px) and (min-width:801px){.project-heading{top:100px}.project-heading h1{font-size:30px}.project-heading p{display:none}.room-info{top:89px;max-height:calc(100svh - 230px)}.minimap{width:100px;top:86px}.room-topbar{top:19px}.view-controls{bottom:54px}.thumb{height:40px;width:65px;min-width:65px}.room-footer{bottom:12px}.room-zoom{bottom:123px}}
@media(prefers-reduced-motion:reduce){.bee-sprite,.spaces-panel[open]{animation:none}.travel-shell{display:none!important}}

.garden-bee.bee-flier{position:absolute}

/* One continuous backdrop, matched to the floorplan render rather than multiplied over yellow. */
:root{--plan-background:#f0e9e3}
body,.explorer{background:var(--plan-background)}
.topbar,.project-heading{background:transparent}
.honey-glow{display:none}
.plan-image{mix-blend-mode:normal;filter:sepia(.2) saturate(.88);mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent),linear-gradient(0deg,transparent,#000 3%,#000 97%,transparent);mask-composite:intersect}
.map-camera{position:absolute;inset:0;transform:perspective(1700px) rotateX(0) rotateY(0) scale(1);transform-origin:50% 50%;transition:transform .85s cubic-bezier(.2,.7,.2,1),transform-origin .85s cubic-bezier(.2,.7,.2,1);will-change:transform}
@media(prefers-reduced-motion:reduce){.map-camera{transform:none!important;transition:none;will-change:auto}}

/* Regions remain clickable; only the honeycomb anchor lights up. */
#room-outlines .room-outline{fill:transparent;stroke:none;animation:none;transition:none}
.room-preview{position:absolute;z-index:8;width:210px;max-width:calc(100% - 24px);overflow:hidden;border:1px solid #c9ae785e;border-radius:12px;background:#fff9ee;box-shadow:0 12px 32px #28312424,0 2px 7px #5e481414;pointer-events:none;opacity:0;visibility:hidden;transform:translateY(7px) scale(.97);transition:opacity .2s ease,transform .3s cubic-bezier(.2,.7,.2,1),visibility .2s}
.room-preview.visible{opacity:1;visibility:visible;transform:translateY(0) scale(1)}
.room-preview>img{display:block;width:100%;height:118px;object-fit:cover;background:#e7dfd3}
.room-preview-caption{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 12px;color:#2c4432}
.room-preview-caption strong{font-size:13px;line-height:1.4;font-weight:600}
.room-preview-caption>span{color:#b0802c;font-size:17px;flex-shrink:0}
html[lang=ar] .room-preview-caption strong{line-height:1.6}
@media(prefers-reduced-motion:reduce){.room-preview{transition:none;transform:none}}

/* A small, crisp vector character with a restrained golden sparkle trail. */
.bee-cursor .bee-body{width:48px;height:56px;z-index:2;filter:drop-shadow(0 2px 1.5px #32291f26);transform-origin:center}
.bee-cartoon{display:block;width:100%;height:100%;user-select:none;pointer-events:none;transition:transform .14s ease}
.travel-label .travel-bee{display:block;width:64px;height:76px;flex-shrink:0}
.bee-cursor.pressed .bee-cartoon{transform:scale(.91)}
.bee-cursor .cursor-dot{z-index:3;width:3px;height:3px;margin:-1.5px;background:#b3842a;box-shadow:0 0 0 1px #fff7;opacity:.65}
.bee-cursor.hovering .cursor-dot{width:6px;height:6px;margin:-3px;border:1px solid #b3842a;background:#f3cf7740;opacity:.8}
.bee-sparkle{position:absolute;z-index:1;width:var(--size);height:var(--size);margin:calc(var(--size) * -.5);background:radial-gradient(circle,#fff2bb 0 16%,#e7b44a 38%,#c99631 100%);clip-path:polygon(50% 0,62% 37%,100% 50%,62% 63%,50% 100%,38% 63%,0 50%,38% 37%);animation:gold-sparkle var(--life) ease-out forwards;pointer-events:none;will-change:transform,opacity}
.bee-sparkle.grain{clip-path:none;border-radius:50%;background:#dcac49;opacity:.55}
@keyframes gold-sparkle{0%{opacity:0;transform:translate3d(0,0,0) rotate(-12deg) scale(.35)}18%{opacity:.85;transform:translate3d(0,2px,0) rotate(0) scale(1)}55%{opacity:.5}100%{opacity:0;transform:translate3d(var(--drift-x),var(--drift-y),0) rotate(var(--twist)) scale(.15)}}
@media(prefers-reduced-motion:reduce){.bee-sparkle{display:none}.bee-cartoon{transition:none}}

/* Display the supplied logo without its surrounding transparent canvas. */
.topbar .brand{padding:9px 0;flex-shrink:0;background:none;border:0;border-radius:0;box-shadow:none;backdrop-filter:none}
.brand-logo{position:relative;display:block;width:76px;aspect-ratio:936/650;overflow:hidden}
.brand-logo img{position:absolute;display:block;width:189.31624%;max-width:none;height:auto;left:-44.65812%;top:-86.15385%;filter:brightness(0)}
@media(max-width:800px){.topbar .brand{padding:8px 0}.brand-logo{width:62px}}
