html:has(.drop-experience){height:100%;overflow:hidden;overscroll-behavior:none}
body.experience-page:has(.drop-experience){height:100dvh;min-height:0;overflow:hidden;overscroll-behavior:none}
.experience-page:has(.drop-experience)>.site-header{flex:0 0 54px;margin:0 auto}
.experience-main:has(.drop-experience){flex:1;min-height:0;display:flex;flex-direction:column;padding:6px 24px 10px;overflow:hidden}
.experience-main:has(.drop-experience) .experience-breadcrumb{position:static;flex:0 0 30px;min-height:30px;padding:2px 0;margin:0 0 5px}
.experience-main:has(.drop-experience) .experience-heading{margin:0 0 9px;flex:0 0 auto}
.experience-main:has(.drop-experience) .experience-heading h1{font-size:21px;line-height:1.3;margin:0}
.experience-main:has(.drop-experience) .experience-heading p{display:none}
.experience-page:has(.drop-experience)>.site-footer{flex:0 0 26px;min-height:26px;max-height:26px;padding:0 24px;margin:0 auto;gap:14px;overflow:hidden;flex-wrap:nowrap;font-size:8px}
.experience-page:has(.drop-experience)>.site-footer .brand{display:none}
.experience-page:has(.drop-experience)>.site-footer>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.drop-experience{flex:1;min-height:0;display:flex;flex-direction:column;color:#e8ead9;font-family:inherit}
.drop-experience *{box-sizing:border-box}
.drop-experience [hidden]{display:none!important}
.drop-experience button{font:inherit;cursor:pointer;min-height:44px;touch-action:manipulation;user-select:none;-webkit-user-select:none}
.drop-experience button:focus-visible,.drop-experience input:focus-visible,.drop-stage:focus-visible{outline:2px solid #e3bf81;outline-offset:-3px}
.drop-experience .sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.drop-theatre{flex:1;min-height:0;display:flex;flex-direction:column;background:#071f27;border:1px solid #294448;border-radius:14px;overflow:hidden;isolation:isolate}
.drop-stage{position:relative;flex:1;min-height:0;overflow:hidden;touch-action:none;cursor:grab;background:#071f27}
.drop-stage:active{cursor:grabbing}
.drop-stage canvas{display:block;width:100%;height:100%;touch-action:none}
.drop-story{position:absolute;top:30px;left:36px;max-width:405px;pointer-events:none;text-shadow:0 2px 20px #00121baa}
.drop-eyebrow{display:flex;gap:18px;align-items:center;color:#a4c5bc;font:9px ui-monospace,monospace;letter-spacing:1.5px}
.drop-eyebrow>span:first-child{color:#cebc8c;white-space:nowrap}
.drop-story h2{font-family:Georgia,'Noto Serif SC',serif;font-weight:400;letter-spacing:.025em;font-size:clamp(22px,2.2vw,34px);line-height:1.5;margin:14px 0 9px;color:#f0eedc;text-wrap:balance}
.drop-story p{font-size:11px;line-height:1.9;max-width:330px;margin:0;color:#a9c4ba;text-wrap:pretty}
.drop-tools{position:absolute;top:20px;right:22px;display:flex;gap:5px}
.drop-tools button,.drop-zoom button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid #c1dfc222;border-radius:7px;background:#08232b9c;color:#d0dfc9;font:18px ui-monospace,monospace;backdrop-filter:blur(12px)}
.drop-tools button:first-child{font:14px Georgia,serif}
.drop-tools button[aria-pressed=false]{color:#7b9c94;background:#041a2180}
.drop-tools button:hover,.drop-zoom button:hover{background:#28473c;border-color:#b6cd9c77}
.drop-start{position:absolute;left:0;right:0;bottom:87px;text-align:center;color:#c6d3b1;font-size:10px;letter-spacing:2px;pointer-events:none;text-shadow:0 1px 7px #001b21}
.drop-start-mark{display:block;margin-bottom:9px;font-size:22px;color:#d9cb9b;animation:drop-invite 3s ease-in-out infinite}
@keyframes drop-invite{50%{transform:translateY(6px);opacity:.4}}
.drop-scale{position:absolute;left:36px;bottom:30px;pointer-events:none;font:10px ui-monospace,monospace;color:#c1d2bd}
.drop-scale>span{display:block;font-size:8px;letter-spacing:2px;color:#7fa59c;margin-bottom:10px}
.drop-scale-bar{position:relative;height:22px;border-top:1px solid #d2dfc2;min-width:30px;max-width:240px}
.drop-scale-bar:before,.drop-scale-bar:after{content:'';position:absolute;top:-4px;height:7px;width:1px;background:#d2dfc2}
.drop-scale-bar:before{left:0}.drop-scale-bar:after{right:0}
.drop-scale-bar b{font-size:10px;font-weight:400;position:absolute;top:6px;left:0;white-space:nowrap}
.drop-scale small{display:block;font-size:8px;color:#789e95;letter-spacing:.5px}
.drop-location{position:absolute;right:35px;bottom:28px;display:grid;grid-template-columns:38px auto;column-gap:10px;align-items:center;font:8px ui-monospace,monospace;letter-spacing:1px;pointer-events:none;color:#90afa3}
.drop-location svg{grid-row:span 2;width:33px;height:43px}
.drop-location svg path{fill:#89bfa60a;stroke:#80ac9e7a;stroke-width:1}
.drop-location svg circle{fill:none;stroke:#d1c99e;stroke-width:.7}
.drop-location svg circle:last-child{fill:#ded7ac;stroke:none}
.drop-location b{font-size:11px;color:#d7d9ba;font-weight:400;letter-spacing:.4px}
.drop-view-note{position:absolute;bottom:9px;left:0;right:0;text-align:center;font:8px ui-monospace,monospace;letter-spacing:1px;color:#71968e;pointer-events:none}
.drop-zoom{position:absolute;right:24px;top:50%;transform:translateY(-30%);display:grid;gap:5px}
.drop-zoom button{font-size:20px}
.drop-zoom button[data-reset]{font-size:25px;color:#d9c494;margin-top:5px}
.drop-annotations{position:absolute;inset:0;pointer-events:none}
.drop-annotation{position:absolute;transform:translate(-50%,-50%);pointer-events:auto;display:flex;align-items:center;gap:7px;white-space:nowrap;background:#0a252c9e;border:1px solid #bcdbc338;border-radius:20px;padding:0 12px;color:#d3dfc7;font-size:10px!important;backdrop-filter:blur(8px);box-shadow:0 1px 14px #07191e2b}
.drop-annotation i{width:4px;height:4px;border-radius:50%;background:var(--specimen-color,#c9d6b3);box-shadow:0 0 8px #d2dfb866}
.drop-annotation:hover,.drop-annotation[aria-pressed=true]{color:#fff5d6;border-color:#d3c08a9c;background:#29473c}
.drop-inspector{position:absolute;right:86px;bottom:110px;width:276px;background:#092630ed;border:1px solid #b7d0b43d;border-radius:10px;padding:20px;backdrop-filter:blur(16px);box-shadow:0 12px 35px #00131940;cursor:auto}
.drop-inspector>button[data-dismiss]{position:absolute;top:0;right:0;width:44px;height:44px;background:none;border:0;color:#a8c3b5;font-size:20px}
.drop-inspector>span{display:block;font:8px ui-monospace,monospace;letter-spacing:1px;color:#a2b39a;margin:0 20px 11px 0}
.drop-inspector h3{font-size:19px;font-family:Georgia,'Noto Serif SC',serif;font-weight:400;color:#eee7ca;margin:0 0 9px}
.drop-inspector p{font-size:11px;line-height:1.9;color:#aac5b6;margin:0}
.drop-inspector>button[data-enter]{font-size:11px;padding:7px 0 0;background:transparent;color:#e3cf98;border:0;border-bottom:1px solid #e3cf9836;margin-top:8px}
.drop-chapters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:0 18px;border-top:1px solid #b1d2bc1f;border-bottom:1px solid #b1d2bc1f;background:#091f26}
.drop-chapters button{border:0;position:relative;display:flex;gap:11px;align-items:center;justify-content:center;background:none;color:#809e91;font-size:10px;padding:8px 3px;line-height:1.4}
.drop-chapters button span{font:8px ui-monospace,monospace;color:#8da69a70}
.drop-chapters button[aria-pressed=true]{color:#e0d9ad}
.drop-chapters button[aria-pressed=true]:after{position:absolute;bottom:0;left:20%;right:20%;height:2px;background:#d1bf8b;content:''}
.drop-transport{display:flex;gap:15px;align-items:center;padding:10px 22px;background:#0a222a;flex:0 0 auto}
.drop-transport>[data-play]{width:42px;min-width:42px;height:44px;background:#c1cc9b0a;border:1px solid #a9c4a64d;border-radius:50%;color:#ded5a5;font-size:13px}
.drop-transport label{flex:1;min-width:0;font-size:9px;letter-spacing:1px;color:#9cb8aa}
.drop-transport input{width:100%;display:block;height:18px;margin:5px 0 0;accent-color:#c8c392;cursor:ew-resize}
.drop-task-trigger{border:0;background:transparent;color:#b4c5aa;font-size:10px!important;display:flex;align-items:center;gap:9px;white-space:nowrap;padding:0 0 0 9px}
.drop-task-trigger>span{font:9px ui-monospace,monospace;border:1px solid #c4cfac33;padding:5px;border-radius:4px;color:#dcce9f}
.drop-dialog{width:min(650px,calc(100vw - 28px));max-height:85dvh;padding:0;border:1px solid #739183;border-radius:13px;background:#edf0e5;color:#2b473e;box-shadow:0 20px 90px #0006}
.drop-dialog::backdrop{background:#04151bbf;backdrop-filter:blur(5px)}
.drop-dialog-heading{display:flex;justify-content:space-between;align-items:center;padding:12px 19px;border-bottom:1px solid #b5c9b34d}
.drop-dialog-heading h2{font-size:18px;font-weight:500;margin:0}
.drop-dialog-heading button{width:44px;height:44px;background:none;border:0;color:#3d6052;font-size:24px}
.drop-dialog-content{padding:8px 22px 23px;max-height:calc(85dvh - 70px);overflow:auto;overscroll-behavior:contain}
.drop-dialog-content p{font-size:12px;line-height:1.9}
.drop-sources{display:grid;gap:10px;font-size:11px;padding:12px 0}
.drop-sources a{color:#366a56;text-decoration:underline}
.drop-task-list{padding:0;list-style:none;margin:18px 0}
.drop-task-list li{display:flex;align-items:center;gap:12px;padding:17px 0;border-bottom:1px solid #b7c7ac66}
.drop-task-check{color:#879c73;font-size:19px}
.drop-task-list li.complete .drop-task-check{color:#3f7c5f}
.drop-task-list li>div{flex:1;min-width:0}
.drop-task-list b{font-size:12px;font-weight:500}
.drop-task-list p{font-size:10px;margin:4px 0;color:#6d806a}
.drop-task-list button,.drop-print{background:#d8e2cf;border:1px solid #a0b89b66;color:#355740;border-radius:6px;padding:5px 12px;font-size:10px!important}
.drop-task-footnote{font-size:10px!important;color:#71836e}
.drop-theatre:fullscreen{border:0;border-radius:0;width:100vw;height:100dvh}
.drop-expanded .drop-theatre{position:fixed;inset:0;z-index:10000;border:0;border-radius:0}
@media(max-width:700px){
 .experience-main:has(.drop-experience){padding:4px 10px 7px}
 .experience-main:has(.drop-experience) .experience-breadcrumb{font-size:10px;flex-basis:29px;min-height:29px;margin-bottom:3px}
 .experience-main:has(.drop-experience) .experience-heading{margin-bottom:7px}
 .experience-main:has(.drop-experience) .experience-heading h1{font-size:18px}
 .experience-page:has(.drop-experience)>.site-footer{padding:0 12px;flex-basis:23px;min-height:23px;max-height:23px;font-size:7px}
 .drop-theatre{border-radius:10px}
 .drop-story{top:20px;left:18px;right:17px;max-width:none}
 .drop-eyebrow{font-size:7px;letter-spacing:1px;gap:10px;max-width:calc(100% - 55px)}
 .drop-story h2{font-size:22px;line-height:1.45;margin:11px 0 7px;max-width:calc(100% - 15px)}
 .drop-story p{font-size:10px;line-height:1.8;max-width:260px}
 .drop-tools{top:auto;bottom:92px;right:12px;flex-direction:row;gap:4px}
 .drop-tools button{width:36px;min-width:44px;height:44px;background:#08232bcc;font-size:17px}
 .drop-zoom{right:12px;top:auto;bottom:36px;transform:none;display:flex;gap:4px}
 .drop-zoom button{width:44px;height:44px;background:#08232bcc}
 .drop-zoom button[data-reset]{margin:0}
 .drop-scale{left:18px;bottom:32px}
 .drop-scale-bar{max-width:125px}
 .drop-scale>span{font-size:7px;letter-spacing:1px;margin-bottom:8px}
 .drop-scale small{font-size:7px;max-width:155px}
 .drop-location{right:14px;bottom:auto;top:145px;grid-template-columns:26px auto;gap:5px;font-size:7px;letter-spacing:.5px}
 .drop-location svg{width:24px;height:32px}
 .drop-location b{font-size:9px}
 .drop-start{bottom:90px;font-size:8px;letter-spacing:1px}
 .drop-start-mark{font-size:18px;margin-bottom:5px}
 .drop-view-note{font-size:6px;letter-spacing:.7px;bottom:10px}
 .drop-chapters{padding:0 4px}
 .drop-chapters button{display:flex;flex-direction:column;gap:3px;font-size:8px;padding:8px 1px;min-height:48px}
 .drop-chapters button span{font-size:7px}
 .drop-transport{padding:8px 11px;gap:9px}
 .drop-transport label{font-size:8px;letter-spacing:.3px}
 .drop-task-trigger{font-size:9px!important;gap:5px;padding-left:0}
 .drop-task-trigger>span{font-size:8px;padding:4px}
 .drop-annotation{font-size:9px!important;gap:5px;padding:0 10px;background:#0a252ccc}
 .drop-inspector{left:14px;right:66px;bottom:94px;width:auto;padding:15px;max-height:180px;overflow:auto}
 .drop-inspector h3{font-size:17px;margin-bottom:6px}
 .drop-inspector p{font-size:10px;line-height:1.8}
 .drop-inspector>span{font-size:7px;margin-bottom:7px}
 .drop-stage:has(.drop-inspector:not([hidden])) .drop-tools{display:none}
 .drop-dialog-content{padding:5px 16px 18px}
 .drop-task-list li{gap:9px}
 .drop-task-list b{font-size:11px}
 .drop-task-list button{padding:4px 8px}
}
@media(max-height:550px){
 .experience-page:has(.drop-experience)>.site-header,.experience-page:has(.drop-experience)>.site-footer{display:none}
 .experience-main:has(.drop-experience){padding:6px 10px}
 .experience-main:has(.drop-experience) .experience-breadcrumb{display:none}
 .experience-main:has(.drop-experience) .experience-heading{display:none}
 .drop-story{top:13px;left:22px;max-width:340px}
 .drop-story h2{font-size:21px;margin:5px 0}
 .drop-story p{font-size:9px;line-height:1.5}
 .drop-tools{top:10px;right:12px;bottom:auto;flex-direction:row}
 .drop-tools button{height:44px}
 .drop-chapters button{min-height:44px;flex-direction:row;gap:5px}
 .drop-transport{padding:4px 12px}
 .drop-location{display:none}
 .drop-zoom{top:auto;bottom:22px;right:12px;transform:none;display:flex;gap:4px}
 .drop-zoom button[data-reset]{margin:0}
 .drop-inspector{max-height:155px;bottom:80px}
}
@media(prefers-reduced-motion:reduce){.drop-start-mark{animation:none}}

/* The reference cell now lies horizontally; molecular controls describe real state changes. */
.drop-story h2{margin-top:0}
.drop-exchange{display:block;pointer-events:auto;position:absolute;bottom:auto;top:137px;left:36px;width:370px;max-width:calc(100% - 120px);padding:0;cursor:auto;font-size:10px;color:#b2cbbd}
.drop-mechanism-tabs{display:flex;gap:5px}
.drop-mechanism-tabs button{flex:1;min-width:0;padding:5px 8px;border:1px solid #a8c6b442;border-radius:6px;color:#9fbdb3;background:#09262deb;font-size:10px}
.drop-mechanism-tabs button[aria-pressed=true]{border-color:#d7c491a8;color:#f0deb0;background:#30463d}
.drop-mechanism-steps{display:flex;gap:12px;margin:10px 0 7px;font-size:9px;color:#78988f}
.drop-mechanism-steps span[aria-current]{color:#ebd8a2}
.drop-mechanism-steps span+span:before{content:'›';margin-right:12px;color:#698e85}
.drop-exchange p{font-size:10px;line-height:1.7;margin:0;min-height:34px;max-width:360px}
.drop-mechanism-time{display:flex;align-items:center;gap:10px;margin-top:2px}
.drop-mechanism-time input{flex:1;min-width:0;height:30px;accent-color:#c8b583;cursor:ew-resize;touch-action:pan-x}
.drop-mechanism-time button{padding:0 7px;background:none;border:0;font-size:10px;color:#dbc99d}
.drop-exchange small{display:block;font:7px ui-monospace,monospace;letter-spacing:.5px;color:#789a90}
@media(max-width:700px){
 .drop-tools{top:15px;bottom:auto;right:12px}
 .drop-story{right:65px}
 .drop-story h2{font-size:21px;max-width:none;margin-top:0}
 .drop-story p{max-width:245px}
 .drop-exchange{top:132px;left:18px;width:calc(100% - 36px);max-width:none}
 .drop-exchange p{font-size:9px;min-height:31px}
 .drop-mechanism-steps{gap:7px;font-size:8px;margin:7px 0 5px}
 .drop-mechanism-steps span+span:before{margin-right:7px}
 .drop-experience[data-membrane=true] .drop-location{display:none}
}
@media(max-height:550px) and (min-width:701px){
 .drop-experience[data-membrane=true] .drop-story{max-width:245px}
 .drop-experience[data-membrane=true] .drop-story h2{font-size:19px}
 .drop-exchange{top:14px;left:auto;right:74px;width:310px;max-width:44%}
 .drop-exchange p{font-size:9px;min-height:30px}
 .drop-mechanism-tabs button{min-height:36px}
 .drop-mechanism-time button{min-height:30px}
}
