/* Temporary construction marks. Every reveal is scoped to the active opening,
   so removing one body class restores the original page, including its layout. */
#loader.bean-entrance{--bean-wash:1;--bean-chrome:1;position:fixed;inset:0;z-index:100;overflow:hidden;background:transparent;transform:none;transition:none;pointer-events:auto;touch-action:pan-y;color:#e5e9ec;font:10px/1.45 Arial,Helvetica,sans-serif;letter-spacing:.07em;isolation:isolate;}
#loader.bean-entrance[hidden]{display:none!important}
.bean-entrance-pending #loader.bean-entrance[hidden]{display:block!important;background:#050609}
.bean-entrance-pending #loader .loader-mark{color:#e5e9ec}
.bean-entrance-pending #loader .loader-count{color:#979da3}
.bean-entrance-meta,.bean-entrance-bottom{z-index:3}
.bean-entrance-guides{z-index:2}
.bean-entrance-wash{position:absolute;inset:0;z-index:-1;background:#050609;opacity:var(--bean-wash);pointer-events:none}
.bean-entrance-meta{position:absolute;top:max(20px,env(safe-area-inset-top,0px));left:50%;display:grid;grid-template-columns:44px 1fr 48px;align-items:center;gap:15px;width:356px;max-width:calc(100% - 40px);padding:13px 16px 15px;background:#07090dcf;border:1px solid #d1e0ec21;transform:translateX(-50%);opacity:var(--bean-chrome);pointer-events:none}
.bean-entrance-mark{font-size:34px;line-height:1;letter-spacing:-.15em;font-weight:400;align-self:start;margin-top:-3px}
.bean-entrance-index{display:block;font-size:8px;letter-spacing:.16em;color:#cbd1d7;white-space:nowrap}
.bean-entrance-status{display:block;margin-top:5px;color:#858f99;font-size:10px;letter-spacing:.015em}
.bean-entrance-count{align-self:center;justify-self:end;white-space:nowrap;font-variant-numeric:tabular-nums}
.bean-entrance-count b{font-weight:400;font-size:19px;letter-spacing:-.035em}
.bean-entrance-count>span{margin-left:3px;color:#6e7782;font-size:8px}
.bean-entrance-progress{position:absolute;left:0;right:0;bottom:-1px;height:1px;background:#a9bed1;transform:scaleX(var(--bean-load,0));transform-origin:left;transition:transform 180ms ease}
.bean-entrance-bottom{position:absolute;left:22px;right:22px;bottom:calc(34px + env(safe-area-inset-bottom,0px));display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:8px;letter-spacing:.12em;opacity:1}
.bean-entrance-bottom>span{color:#929aa3;opacity:var(--bean-chrome);text-shadow:0 1px 8px #000}
#bean-entrance-skip{display:flex;align-items:center;justify-content:center;gap:18px;min-width:132px;min-height:44px;padding:10px 14px;border:1px solid #d1e0ec38;border-radius:0;background:#07090dcf;color:#d1d7dd;font:inherit;letter-spacing:.12em;cursor:pointer;touch-action:manipulation;pointer-events:auto}
#bean-entrance-skip:hover{background:#171d24;border-color:#b6c5d475}
#bean-entrance-skip:focus-visible{outline:2px solid #b4d1ed;outline-offset:4px}
#bean-entrance-skip svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.2}
.bean-entrance-guides{position:absolute;inset:0;overflow:hidden;pointer-events:none;user-select:none;-webkit-user-select:none}
.bean-build-box{position:absolute;opacity:0;border:1px solid #a0bdd575;transform:scaleX(var(--bean-box-draw,0));transform-origin:0 0;box-shadow:0 0 0 1px #05060944;will-change:opacity,transform;pointer-events:none}
.bean-build-label{position:absolute;left:-1px;top:-19px;display:flex;align-items:center;gap:16px;height:18px;padding:1px 5px;background:#0a1019db;color:#adc4d8;font:7px/1.2 Arial,Helvetica,sans-serif;letter-spacing:.1em;white-space:nowrap}
.bean-build-label b{font-weight:400;color:#72899d;font-variant-numeric:tabular-nums}
.bean-build-box>i,.bean-section-frame>i{position:absolute;width:5px;height:5px;border:1px solid #bbd0e1;background:#0a1017}
.bean-build-box>i:nth-of-type(1),.bean-section-frame>i:nth-of-type(1){left:-3px;top:-3px}
.bean-build-box>i:nth-of-type(2),.bean-section-frame>i:nth-of-type(2){right:-3px;top:-3px}
.bean-build-box>i:nth-of-type(3),.bean-section-frame>i:nth-of-type(3){right:-3px;bottom:-3px}
.bean-build-box>i:nth-of-type(4),.bean-section-frame>i:nth-of-type(4){left:-3px;bottom:-3px}
.bean-build-cursor{position:absolute;left:0;top:0;width:18px;height:24px;color:#e8edf1;opacity:0;filter:drop-shadow(0 1px 3px #0008);will-change:transform,opacity;pointer-events:none}
.bean-build-cursor:nth-of-type(3n){color:#b9cfe2}
.bean-build-cursor svg{display:block;width:100%;height:100%}
.bean-alignment{position:absolute;display:block;background:#adc9e54d;opacity:0;pointer-events:none}
.bean-alignment-horizontal{left:0;right:0;height:1px}
.bean-alignment-vertical{top:0;bottom:0;width:1px}
.bean-entrance-cross{position:absolute;color:#a9bac857;font:14px/1 Arial,Helvetica,sans-serif;opacity:var(--bean-chrome);pointer-events:none}
.bean-cross-one{left:calc(50% - 3px);top:28%}.bean-cross-two{left:24%;top:62%}.bean-cross-three{right:21%;top:47%}
body.bean-assembling [data-bean-entry]{opacity:var(--bean-entry-alpha,0)!important;clip-path:inset(0 var(--bean-entry-clip,100%) 0 0);will-change:opacity,clip-path;transition:none!important;pointer-events:none!important}
body.bean-assembling [data-bean-entry="street"],body.bean-assembling [data-bean-entry="figure"],body.bean-assembling [data-bean-entry="navigation"]{clip-path:inset(var(--bean-entry-clip,100%) 0 0 0)}
body.bean-cinematic [data-bean-entry="street"]{clip-path:none}
#loader.is-returning .bean-entrance-guides,#loader.is-reduced .bean-entrance-guides{display:none}
.bean-section-frame{position:fixed;z-index:91;opacity:0;border:1px solid #9db5ca80;box-sizing:border-box;pointer-events:none;user-select:none;-webkit-user-select:none}
.bean-section-frame>span{position:absolute;top:-2px;left:calc(var(--bean-section-progress,0)*100%);display:block;width:14px;height:19px;color:#d2e0ed;filter:drop-shadow(0 1px 2px #0009)}
.bean-section-frame svg{width:100%;height:100%}
@media(max-width:600px){
 .bean-entrance-meta{top:max(18px,env(safe-area-inset-top,0px));width:300px;max-width:calc(100% - 30px);grid-template-columns:35px 1fr 42px;gap:10px;padding:12px 12px 13px}
 .bean-entrance-mark{font-size:29px}.bean-entrance-index{font-size:7px;letter-spacing:.1em}.bean-entrance-status{font-size:9px}.bean-entrance-count b{font-size:17px}
 .bean-entrance-bottom{left:15px;right:15px;bottom:calc(20px + env(safe-area-inset-bottom,0px));gap:8px}
 .bean-entrance-bottom>span{max-width:140px;font-size:7px;line-height:1.7}
 #bean-entrance-skip{min-width:120px;gap:12px;font-size:8px}
 .bean-build-label{font-size:6px;gap:10px;top:-17px;height:16px}.bean-build-cursor{width:15px;height:20px}
 .bean-build-box>i{width:4px;height:4px}.bean-entrance-cross{font-size:12px}
}
@media(max-height:440px){
 .bean-entrance-meta{top:12px;left:50%;width:300px;padding:8px 12px}.bean-entrance-bottom{bottom:10px}
 .bean-entrance-mark{font-size:26px}.bean-entrance-status{margin-top:3px}.bean-entrance-count b{font-size:16px}
}
@media(prefers-reduced-motion:reduce){
 .bean-entrance-guides,.bean-section-frame{display:none!important}
 .bean-entrance-progress{transition:none}
 body.bean-assembling [data-bean-entry]{clip-path:none!important;opacity:1!important;will-change:auto}
}
.no-motion .bean-entrance-guides,.no-motion .bean-section-frame{display:none!important}
.no-motion body.bean-assembling [data-bean-entry]{clip-path:none!important;opacity:1!important;will-change:auto}
