.room-nav [hidden],.room-nav button[hidden]{display:none!important}
body:not(.journey-ready) .room-nav button:not(#home-room),body:not(.journey-ready) .room-nav span{display:none}
#journey-progress{max-width:1000px;margin:30px auto 45px;padding:28px clamp(18px,4vw,42px);border:1px solid #79643b;background:linear-gradient(145deg,#141b19ed,#090e10f5);color:#d8ceb4;text-align:center;box-shadow:inset 0 0 35px #ab80300c}
#journey-progress[hidden]{display:none}#journey-progress p{line-height:1.7}#journey-progress a{color:#e0c28a;margin:14px;display:inline-block}
#journey-progress button,.journey-acknowledgement button,#journey-dialog button:not(.guide-close){font:inherit;color:#eedbae;background:linear-gradient(#393122,#1b1c16);border:1px solid #a88c53;padding:12px 22px;cursor:pointer;line-height:1.5}
#journey-progress button:disabled,#journey-dialog button:disabled{opacity:.48;cursor:default}
#journey-progress button:focus-visible,.journey-acknowledgement button:focus-visible,#journey-dialog button:focus-visible{outline:2px solid #f7dd9a;outline-offset:4px}
.journey-count{letter-spacing:.04em}#journey-progress progress{display:block;width:min(100%,400px);height:6px;margin:16px auto 24px;accent-color:#c7a76a;background:#353428}#journey-progress progress::-webkit-progress-bar{background:#353428}#journey-progress progress::-webkit-progress-value{background:#c7a76a}
#journey-progress details{margin:20px auto;max-width:740px}#journey-progress summary{cursor:pointer;color:#e6c98b}.journey-remaining{display:flex;justify-content:center;flex-wrap:wrap;gap:9px;margin-top:16px}#journey-progress .journey-remaining button{font-size:15px;padding:7px 14px}.journey-continue{margin:6px}
.journey-acknowledgement{margin:32px 0 12px;padding-top:25px;border-top:1px solid #9c824645}.journey-acknowledgement p{font-size:17px!important;line-height:1.6!important;color:#c2b799!important}.journey-acknowledgement button:disabled{opacity:.75;cursor:default;background:#1c2b24;color:#dce2c2}
#journey-dialog .guide-frame{padding-bottom:44px}.journey-words p{font-size:clamp(18px,1.5vw,23px);line-height:1.8;margin:0 0 1.4em}.journey-words h3{font-size:28px;color:#efdaa8;margin-top:30px}.journey-commitment{display:flex;align-items:flex-start;gap:14px;font-size:18px;line-height:1.7;margin:28px 0}.journey-commitment input{width:22px;height:22px;flex-shrink:0;margin-top:5px;accent-color:#bfa167}#journey-message{color:#f2d29d;font-size:17px;line-height:1.6}
@media(max-width:600px){#journey-progress{margin:20px 12px;padding:22px 16px}#journey-dialog{width:calc(100% - 20px)}#journey-dialog .guide-frame{padding:54px 22px 28px}#journey-dialog h2{font-size:31px}.journey-words p{font-size:18px}#journey-progress button{max-width:100%}}
/* A translucent invitation at the sanctuary doors. */
body.entry-open{overflow:hidden}
#sanctuary-entry{width:min(660px,calc(100% - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:0;overflow:auto;color:#eee1c5;border:1px solid #bc955a;border-radius:3px;background:linear-gradient(125deg,#26312ddd,#151d1bd9 48%,#35291bd9);backdrop-filter:blur(9px);box-shadow:0 0 0 5px #100f0bc9,0 0 0 6px #9d784c66,0 28px 100px #000b,inset 0 0 75px #d4a85b12;font-family:Georgia,'Times New Roman',serif;scrollbar-color:#957745 #141c1a}
#sanctuary-entry[open]{display:block;animation:entry-arrive .65s ease-out}
#sanctuary-entry::backdrop{backdrop-filter:blur(1px);background:#04090866;animation:entry-veil .5s ease-out}
.entry-frame{position:relative;margin:13px;padding:38px clamp(22px,6vw,60px) 22px;border:1px solid #bc995b5c;text-align:center;background:radial-gradient(ellipse at 50% 0,#e3b66b16,transparent 65%)}
.entry-kicker{font-size:13px;letter-spacing:.2em;color:#d4b77f;margin:0 0 10px;line-height:1.7}
.entry-ornament{font-size:43px;color:#e1c28a;line-height:1.1;text-shadow:0 0 23px #e6b95e9c;margin:12px 0 20px}
#entry-title{font-weight:400;font-size:clamp(33px,4.7vw,46px);line-height:1.15;color:#f3e3be;margin:0 0 23px;text-shadow:0 2px 14px #000}
#entry-description{font-size:19px;line-height:1.75;color:#e2d8c1;margin:0 auto 29px;max-width:470px}
.entry-actions{display:grid;grid-template-columns:1.25fr 1fr;gap:12px}
.entry-actions a,#entry-retry{display:block;padding:15px 13px;border:1px solid #c19d60;color:#f5e4bf;text-decoration:none;font:19px/1.4 Georgia,'Times New Roman',serif;box-shadow:inset 0 0 0 3px #1b191745,0 3px 15px #0004;transition:background .2s,border-color .2s}
.entry-join{background:linear-gradient(135deg,#806237d9,#463a25df)}
.entry-signin{background:#111e1b8c}
.entry-actions a:hover,#entry-retry:hover{background:#71532dd9;border-color:#f1cf8d}
#sanctuary-entry :focus-visible{outline:2px solid #ffe1a1;outline-offset:5px}
.entry-note{margin:23px 0 8px;font-size:16px;color:#d7c297;font-style:italic;line-height:1.5}
.entry-account-note{font-size:14px;line-height:1.6;color:#c6bdab;margin:0}
.entry-rule{display:flex;align-items:center;gap:15px;justify-content:center;margin-top:21px;color:#bb975b;font-size:18px}
.entry-rule:before,.entry-rule:after{content:'';width:70px;height:1px;background:linear-gradient(90deg,transparent,#b89150)}
.entry-rule:after{transform:rotate(180deg)}
#sanctuary-entry .entry-close{position:absolute;z-index:2;right:17px;top:15px;width:44px;height:44px;padding:0;background:transparent;border:0;color:#d9bd89;font:30px/1 Georgia,serif;cursor:pointer}
#entry-status{font-size:16px;line-height:1.6;color:#f0d3a2}#entry-retry{margin:16px auto;background:#30291e;cursor:pointer}
#entry-retry[hidden],#entry-status[hidden]{display:none}
@keyframes entry-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes entry-veil{from{background:#04090800}to{background:#04090866}}
@media(max-width:480px){.entry-frame{padding:43px 19px 21px;margin:9px}.entry-kicker{letter-spacing:.12em;font-size:12px}#entry-description{font-size:17px;line-height:1.65}.entry-actions{grid-template-columns:1fr}.entry-actions a{font-size:18px;padding:12px}.entry-ornament{margin:7px 0 16px}.entry-note{font-size:15px}}
@media(prefers-reduced-motion:reduce){#sanctuary-entry[open],#sanctuary-entry::backdrop{animation:none}.entry-actions a{transition:none}}

#entry-title:focus{outline:none}

.entry-patreon{display:inline-block;margin-top:10px;padding:5px 2px;color:#e4c78c;font-size:16px;line-height:1.5;text-decoration:underline;text-decoration-color:#aa854d;text-underline-offset:5px}.entry-patreon:hover{color:#fff0c8;text-decoration-color:currentColor}
