
/* Shared courtyard; character and approved menu geometry remain owned by existing styles. */
:root{--courtyard-art:url('./assets/courtyard-20261018.webp');--courtyard-light:brightness(1) saturate(1.02);--courtyard-tint:linear-gradient(transparent,transparent)}
body[data-time="evening"]{--courtyard-light:brightness(.84) saturate(1.08);--courtyard-tint:linear-gradient(125deg,#e98d3c35,#6c395b29)}
body[data-time="night"]{--courtyard-light:brightness(.48) saturate(.78);--courtyard-tint:linear-gradient(#132d6340,#0b193e40)}
body::before,.welcome-gate::before,.courtyard-scene::before{background-image:var(--courtyard-tint),var(--courtyard-art)!important;background-position:center,center!important;background-size:cover,cover!important;background-repeat:no-repeat!important;filter:var(--courtyard-light)!important;transition:filter 1.2s ease!important}
.welcome-gate{background:#162128!important}
.welcome-gate::before{content:"";position:absolute;inset:0}
.courtyard-scene{background:transparent!important;isolation:isolate}
.courtyard-scene::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none}
.courtyard-scene::after{background:none!important}
#fortuneRack{display:block!important;inset:0!important;width:100%!important;height:100%!important;background:none!important;filter:none!important;z-index:1!important;pointer-events:none}
#fortuneKnots{display:none!important}
.musubi-rack{position:absolute;top:28%;width:27%;height:50%;filter:drop-shadow(0 7px 5px #21110866);transition:filter 1.2s}
.musubi-rack-left{left:1%}.musubi-rack-right{right:1%}
.musubi-rack>svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.musubi-papers{position:absolute;inset:0}
.musubi-paper{position:absolute;width:10.5%;height:15%;transform:rotate(var(--paper-angle));transform-origin:50% 18%;background:url('./assets/fortune-knot.webp') center/contain no-repeat;filter:drop-shadow(0 1px 1px #24170b55)}
.musubi-paper.is-gold{filter:sepia(.85) saturate(2.5) drop-shadow(0 0 2px #f8d975)}
.musubi-rack-count{position:absolute;left:12%;right:12%;bottom:3%;padding:3px 0;border:1px solid #bd985b;border-radius:5px;background:#332013ed;color:#fff0c7;font:600 clamp(9px,2.5vw,14px)/1.4 "Noto Serif JP",serif;text-align:center;white-space:nowrap;text-shadow:0 1px 2px #000}
body[data-time="evening"] .musubi-rack{filter:brightness(.87) sepia(.12) drop-shadow(0 7px 5px #21110866)}
body[data-time="night"] .musubi-rack{filter:brightness(.7) drop-shadow(0 7px 5px #0008)}
.musubi-paper.is-new{animation:musubi-arrive .85s ease-out}
@keyframes musubi-arrive{0%{opacity:0;translate:0 -16px;scale:.6}100%{opacity:1;translate:0 0;scale:1}}
@media(min-width:800px){.musubi-rack{width:25%;height:49%;top:29%}.musubi-rack-left{left:5%}.musubi-rack-right{right:5%}}
@media(prefers-reduced-motion:reduce){.musubi-paper.is-new{animation:none}body::before,.welcome-gate::before,.courtyard-scene::before{transition:none!important}}

.welcome-gate .welcome-card .auth-status,.welcome-gate .welcome-card .site-info-links,.welcome-gate .welcome-card .site-info-links a{color:#fff0cf!important;text-shadow:0 1px 3px #15202e,0 0 5px #15202e;font-weight:600}
.welcome-gate .welcome-card .site-info-links a:focus-visible{outline:2px solid #f8d78c;outline-offset:3px}
