/* A small swivelling board on one wooden stake, planted beside the path. */
.ground-sign{position:absolute;z-index:3;right:5%;bottom:7%;width:150px;padding-bottom:30px;text-align:center;perspective:700px;color:#fff2ce}
.ground-sign:before{content:'';position:absolute;z-index:-1;width:13px;left:calc(50% - 6px);top:30%;bottom:0;background:linear-gradient(90deg,#56391f,#a77b48 45%,#604125);border-radius:0 0 3px 3px;box-shadow:3px 2px 4px #211b1555}
.ground-sign:after{content:'';position:absolute;bottom:-3px;left:24%;width:52%;height:8px;border-radius:50%;background:#33482c77;filter:blur(2px);z-index:-2}
.ground-sign-board{padding:8px 8px 3px;border:3px solid #a17b4a;border-radius:3px;background:repeating-linear-gradient(2deg,#5c412b 0 8px,#63482e 9px 12px);box-shadow:inset 0 0 0 1px #362515,2px 4px 8px #23170766;transform:rotate(-2deg);transform-origin:50% 50%;font:13px/1.3 Kalam,Georgia,serif}
.ground-sign-board.is-spinning{animation:sign-turn .55s ease both}
@keyframes sign-turn{0%{transform:rotate(-2deg) rotateY(-180deg)}100%{transform:rotate(-2deg) rotateY(0)}}
.ground-sign-face[hidden]{display:none}.ground-sign-face strong{display:block;font:25px/1.1 Kalam,Georgia,serif}.ground-sign-face>span{display:block;margin-top:4px}
.ground-sign button{font:12px/1.2 Kalam,Georgia,serif;padding:4px 3px;min-height:44px;width:100%;color:#fff2ce;background:transparent;border:0;border-radius:2px;letter-spacing:0;cursor:pointer}
.ground-sign button:hover{background:#ffffff12}.ground-sign button:focus-visible{outline:3px solid #ffe39a;outline-offset:2px}.ground-sign button:disabled{cursor:not-allowed;opacity:.7}
.ground-sign [data-sign-verse]{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-line;overflow-wrap:anywhere}
.ground-sign .sign-spin{border-top:1px solid #c8a67666;margin-top:4px}.ground-sign [data-sign-note]{display:block;font:10px/1.2 Georgia,serif;color:#efdbba;padding-bottom:3px}
.sign-lamp{position:absolute;z-index:2;left:calc(50% - 12px);top:-9px;width:24px;height:9px;border-radius:10px 10px 2px 2px;background:#443b2a;border-bottom:3px solid #bdab7e}
.ground-sign[data-face=closed] .sign-lamp{border-bottom-color:#fff1b6;box-shadow:0 5px 10px #ffd46b,0 20px 38px 15px #ffc85c55}
.ground-sign[data-face=closed] .ground-sign-board{background:radial-gradient(ellipse at 50% 0,#c59c5888,transparent 85%),repeating-linear-gradient(2deg,#5c412b 0 8px,#63482e 9px 12px);box-shadow:0 0 18px #ffcf6b66,inset 0 0 16px #ffe09b22,2px 4px 8px #23170766}
#signHymnReader{color:#493521;background:#f7ecd7;border:2px solid #a8804c;width:min(520px,90vw);max-height:85dvh;overflow:auto;padding:24px}#signHymnReader::backdrop{background:#150f09b0}#signHymnReader p{white-space:pre-wrap;overflow-wrap:anywhere;font:18px/1.7 Georgia,serif}
@media(max-width:760px){.ground-sign{right:4%;bottom:auto;top:calc(56.28vw - 137px);width:112px;padding-bottom:18px}.ground-sign-board{padding:5px 5px 2px;font-size:11px}.ground-sign-face strong{font-size:21px}.ground-sign button{font-size:11px}.ground-sign [data-sign-note]{font-size:9px}.ground-sign [data-sign-face=closed]>span{font-size:10px}.ground-sign[data-face=closed]{top:calc(56.28vw - 161px)}}
@media(prefers-reduced-motion:reduce){.ground-sign-board.is-spinning{animation:none}}
/* Keep the board modest; its swivel handle sits beside the stake, not on the face. */
.ground-sign{width:130px;right:13%;bottom:12%;padding-bottom:27px}
.ground-sign .sign-spin{position:absolute;right:-24px;bottom:-28px;width:44px;height:44px;min-height:44px;margin:0;border:1px solid #ae8c57;border-radius:50%;background:#53412b;font-size:0;box-shadow:1px 2px 4px #211b1555}
.ground-sign .sign-spin:after{content:'↻';font:24px/1 Georgia,serif}
.ground-sign [data-sign-note]{font-size:9px;padding-top:2px}
@media(max-width:760px){.ground-sign{right:13%;bottom:auto;top:calc(56.28vw - 108px);width:108px;padding-bottom:22px}.ground-sign[data-face=closed]{top:calc(56.28vw - 129px)}.ground-sign .sign-spin{right:-30px;bottom:-26px}}
@media(max-width:760px){
 .ground-sign,.ground-sign[data-face=closed]{width:90px;top:auto;bottom:calc(100% - 50vw);padding-bottom:17px}
 .ground-sign-board{padding:4px 4px 2px;border-width:2px}
 .ground-sign-face strong{font-size:19px}
 .ground-sign [data-sign-face=closed]>span{font-size:10px;line-height:1.1;margin-top:1px}
 .ground-sign button{font-size:10px;padding:2px 0}
 .ground-sign [data-sign-note]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .ground-sign .sign-spin{right:-31px;bottom:-27px;background:transparent;border-color:transparent;box-shadow:none;color:#fff0cd;text-shadow:0 1px 3px #221709}
 .ground-sign .sign-spin:after{font-size:21px;background:#53412b;border-radius:50%;padding:1px 4px}
}

/* Owner review, 2026-11-12: requests are the primary after-hours message.
   This changes only sign hierarchy, never actual hours or request eligibility. */
.ground-sign{width:132px}
.ground-sign [data-sign-face=closed]>strong{font-size:20px;opacity:.86}
.ground-sign [data-sign-face=closed]>.sign-requests-message{font-size:17px;line-height:1.15;margin-top:6px;color:#fff8df;font-weight:600}
@media(max-width:760px){
 .ground-sign,.ground-sign[data-face=closed]{width:100px}
 .ground-sign [data-sign-face=closed]>strong{font-size:15px}
 .ground-sign [data-sign-face=closed]>.sign-requests-message{font-size:14px;line-height:1.15;margin-top:4px}
}

/* Owner review Nov 13: smaller sign; two quiet ground uplights point at it. */
.ground-sign-board{position:relative}
.ground-sign[data-face=closed] .ground-sign-board:before,
.ground-sign[data-face=closed] .ground-sign-board:after{content:"";position:absolute;bottom:-27px;width:30px;height:76px;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 50% 97%,#fff0b7 0 3px,#6e6246 4px 6px,transparent 7px),conic-gradient(from -22deg at 50% 94%,#ffdb8c00,#ffe0a04d 22deg,#ffdb8c00 44deg,transparent 45deg);opacity:.72}
.ground-sign[data-face=closed] .ground-sign-board:before{left:-9px;transform:rotate(17deg)}
.ground-sign[data-face=closed] .ground-sign-board:after{right:-9px;transform:rotate(-17deg)}
.ground-sign[data-face=closed] .ground-sign-board{box-shadow:0 2px 13px #ffcf6b33,inset 0 -8px 18px #ffe09b22,2px 4px 8px #23170766}
.ground-sign[data-face=closed] .sign-lamp{box-shadow:0 4px 8px #ffd46b66}
@media(max-width:760px){.ground-sign[data-face=closed] .ground-sign-board:before,.ground-sign[data-face=closed] .ground-sign-board:after{bottom:-18px;height:58px;width:24px}}
/* Annotation follow-up: scale the complete sign down exactly15%.
   Preserve44px effective controls after the visual scale. */
.ground-sign{transform:scale(.85);transform-origin:center bottom}
.ground-sign button{min-height:52px}
.ground-sign .sign-spin{width:52px;height:52px;min-height:52px}
