.construction-intro[hidden]{display:none!important}.construction-intro{position:fixed;inset:0;z-index:200;background:#d5d2bc;overflow:hidden;color:#355f60;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.intro-scene{position:absolute;width:100%;height:100%;inset:0}.intro-top{position:absolute;z-index:2;top:26px;left:36px;right:36px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:2.5px}.intro-top i{font-style:normal;margin:0 12px;opacity:.4}.intro-top button{background:#f5f2e488;border-color:#799d8d44;color:#416966;font-size:12px;padding:10px 16px;letter-spacing:0}.intro-bottom{position:absolute;z-index:2;left:36px;right:36px;bottom:22px;display:flex;align-items:center;gap:24px;font-size:11px;color:#eaf0dd;letter-spacing:.3px;padding:12px 18px;border-radius:10px;background:#355c6099}.intro-bottom>span:first-child{flex:1}.intro-bottom button{background:none;border:0;font-size:11px;color:#eff2de;padding:8px 0}.intro-timeline{width:100px;height:2px;background:#dbe2c844;overflow:hidden}.intro-timeline i{height:100%;display:block;background:#e1eac6;transform-origin:left;transform:scaleX(0)}.sign-name,.sign-glow,.sign-lit,.mount-caption,.mount-light{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.brand .brand-mark{background:#f3f7f0;border:0;padding:4px;width:42px;height:42px;flex:0 0 42px}.brand-mark img{display:block;width:100%;height:100%;object-fit:contain}.brand small{font-size:7px;letter-spacing:1.4px;line-height:1.6}.login:before{display:none}.login-logo{display:block;width:64px;height:64px;object-fit:contain;margin-bottom:24px}.intro-replay{background:none;border:0;padding:0;color:#8fa99d;font-size:11px;cursor:pointer;margin-top:14px}.login .intro-replay{display:inline-flex;width:auto;color:#496e60;margin-top:20px}.intro-replay:hover{box-shadow:none;text-decoration:underline}.nav-support .intro-replay{display:block}.intro-evening{background:#aeb6aa}
@media(max-width:760px){.intro-scene{width:190%;left:-45%;height:100%}.intro-top{top:18px;left:18px;right:18px;font-size:8px;letter-spacing:1px;gap:10px}.intro-top>span{max-width:190px;line-height:1.8}.intro-top i{margin:0 4px}.intro-top button{padding:9px;font-size:10px}.intro-bottom{left:16px;right:16px;bottom:16px;gap:12px;flex-wrap:wrap;font-size:9px;padding:12px}.intro-bottom>span:first-child{flex-basis:70%}.intro-timeline{width:50px}.intro-bottom button{margin-left:auto}}
@media(max-height:620px) and (min-width:761px){.intro-top{top:14px}.intro-bottom{bottom:12px;padding:8px 14px}}
/* Full-screen illustration with compact login anchored to the facade. */
.login-page{background:#d5d2bc;min-height:100vh}.login-page .shell{position:relative;z-index:2;background:none;margin:0;min-height:100vh;width:100%;pointer-events:none}.login-page main{padding:0;max-width:none;min-height:100vh}.login-page .login{pointer-events:auto;position:fixed;left:72%;top:69%;transform:translate(-50%,-50%);width:280px;max-width:calc(100vw - 32px);margin:0;padding:24px;background:#faf9f1f2;border:1px solid #fff9;border-radius:16px;box-shadow:0 16px 45px #304d491c;transition:opacity .4s,transform .4s}.login-page .login h1{font-size:18px;font-weight:500;letter-spacing:-.3px;line-height:1.4;margin:0 0 22px}.login-page .login form{margin:0}.login-page .login label{font-size:12px;margin-bottom:14px}.login-page .login input{background:#fffdf9;min-height:42px;padding:10px}.login-page .login .primary{font-size:12px;min-height:42px;margin-top:4px}.login-scene{display:block;z-index:0;pointer-events:none;left:0;width:100%}.login-scene .intro-top,.login-scene .intro-bottom,.login-scene h1{display:none}.login-scene .intro-scene{width:100%;height:100%;left:0;top:0;overflow:hidden}.login-page .notice{pointer-events:auto;position:absolute;top:12px;left:24px;width:292px}.login-page .login-leaving{opacity:0;transform:translate(-50%,calc(-50% + 14px));pointer-events:none}.login-success{position:fixed;z-index:5;top:7vh;left:50%;transform:translateX(-50%);padding:17px 26px;background:#faf9f2f5;border:1px solid #fff;border-radius:14px;box-shadow:0 12px 40px #294b4426;text-align:center;min-width:260px}.login-success[hidden]{display:none}.login-success>span{display:inline-grid;place-items:center;background:#dfeada;color:#3c7155;border-radius:50%;width:26px;height:26px;margin-right:10px}.login-success strong{font-size:17px}.login-success small{display:block;margin-top:9px;color:#738575;font-size:11px}#login-error{font-size:12px;line-height:1.5;background:#f5e6db;color:#854d37;padding:10px;border-radius:8px;margin:0 0 14px}.login-page .primary:disabled{opacity:.65;cursor:wait}
@media(max-width:760px){.login-page .shell{width:100%;min-height:100vh;padding-top:0}.login-page main{min-height:100vh;padding:0}.login-page .login{position:absolute;left:50%;top:62%;width:280px;padding:20px}.login-page .login h1{font-size:16px}.login-scene{position:fixed;inset:0;width:100%;height:100%}.login-scene .intro-scene{width:100%;height:100%;left:0;top:0}.login-success{top:20px;max-width:calc(100vw - 32px)}.login-page .notice{position:relative;top:auto;left:auto;width:auto}}
@media(prefers-reduced-motion:reduce){.login-page .login{transition:none}}

.sign-sparks{filter:drop-shadow(0 0 3px #ffce75)}

/* A wall-mounted lightbox: fasteners stay fixed while the panel gently vibrates. */
.login-page .login{border:5px solid #45605b;border-radius:14px;background:#f7f7e9;box-shadow:0 3px 0 #243e39,0 14px 24px #193f454d,0 0 24px #f5f7c940,inset 0 0 22px #fffef5;transform:translate(-50%,-50%) rotate(var(--panel-sway,0deg));filter:brightness(var(--panel-power,1));transform-origin:50% 15%;transition:background .35s,box-shadow .35s}
.panel-fasteners{position:absolute;inset:0;pointer-events:none}.panel-fasteners i{position:absolute;width:7px;height:7px;border-radius:50%;background:linear-gradient(135deg,#d2d9c6,#667f73);box-shadow:0 1px 2px #153b3955}.panel-fasteners i:after{content:"";position:absolute;left:1px;right:1px;top:3px;height:1px;background:#49665c;transform:rotate(-35deg)}.panel-fasteners i:nth-child(1){left:7px;top:7px}.panel-fasteners i:nth-child(2){right:7px;top:7px}.panel-fasteners i:nth-child(3){left:7px;bottom:7px}.panel-fasteners i:nth-child(4){right:7px;bottom:7px}.login-content{transition:opacity .35s,filter .35s}.login-page .login-powered-off{background:#213c39;box-shadow:0 3px 0 #243e39,0 14px 24px #193f454d}.login-powered-off .login-content{opacity:0;filter:brightness(.25);pointer-events:none}.login .login-success{position:absolute;inset:0;left:0;top:0;transform:none;min-width:0;max-width:none;padding:26px 18px;border:0;background:none;box-shadow:none;border-radius:0;display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;color:#eff7d9;animation:none}.login .login-success[hidden]{display:none}.login .login-success>span{margin:0 0 14px;background:#456958;color:#f2ffd8;box-shadow:0 0 18px #c8f4a533}.login .login-success strong{text-shadow:0 0 14px #d3fcb355;font-size:20px}.login .login-success small{color:#adbfaa;line-height:1.6}.login-powered-off .panel-fasteners{opacity:.65}@keyframes panel-confirm{to{opacity:1}}@media(prefers-reduced-motion:reduce){.login-content{transition:none}.login .login-success{animation:none;opacity:1}}
