body.welcome-preview-open{overflow:hidden}
#school-welcome{--stone-ink:#ded8c8;--stone-muted:#c4b48f;--stone-cut:#decca0;position:fixed;inset:0;display:none;width:min(860px,calc(100vw - 32px));height:min(960px,calc(100dvh - 32px));max-width:none;max-height:none;margin:auto;padding:0;border:0;background:transparent;color:var(--stone-ink);overflow:visible;font-family:Georgia,'Times New Roman',serif;box-shadow:none}
#school-welcome[open]{display:flex;flex-direction:column}
#school-welcome::backdrop{background:#020808d4;backdrop-filter:blur(6px)}
#school-welcome *{box-sizing:border-box}
#school-welcome .welcome-toolbar{flex:none;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:0 3px 9px;color:#d4c7aa;font:12px/1.5 Georgia,serif;letter-spacing:.035em}
#school-welcome .welcome-close{width:44px;height:40px;padding:0;border:0;background:transparent;color:#e9d7ad;font:30px/1 Georgia,serif;cursor:pointer}
#school-welcome .welcome-stone{position:relative;isolation:isolate;flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:0 8px;background-color:#202923;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.58' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Cpath opacity='.13' fill='%23605a49' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E"),radial-gradient(ellipse at 20% 0%,#64706440,transparent 60%),radial-gradient(ellipse at 100% 85%,#050c0b88,transparent 65%),linear-gradient(115deg,#202a26,#30382f 46%,#19221e);border:7px solid #323b31;border-top-color:#626451;border-left-color:#4a5143;border-bottom-color:#101813;border-radius:15px 5px 18px 7px;box-shadow:inset 0 0 0 1px #9b967630,inset 3px 3px 13px #0008,inset -3px -3px 12px #a29a6d18,0 12px 0 -6px #0d1511,0 28px 65px #000b;scrollbar-width:thin;scrollbar-color:#8d8265 #202923}
#school-welcome .welcome-reading{position:relative;padding:42px clamp(22px,6vw,66px) 36px;text-shadow:0 1px 1px #000b}
#school-welcome p{font:17px/1.75 Georgia,serif;margin:0;color:var(--stone-ink);letter-spacing:normal}
#school-welcome .welcome-heading{text-align:center;display:block;padding:0 0 28px;margin:0;border:0;background:none}
#school-welcome .welcome-kicker{font:12px/1.5 Georgia,serif;letter-spacing:.24em;color:var(--stone-muted);margin:0 0 18px}
#school-welcome h2{font:normal clamp(36px,5.4vw,54px)/1.08 Georgia,serif;letter-spacing:-.035em;text-transform:none;color:#eee0ba;margin:0 0 20px;text-shadow:0 2px 1px #000b}
#school-welcome h2 em{font-weight:normal;color:#d8bb7e}
#school-welcome .welcome-heading>p:last-child{font-size:19px;line-height:1.6;text-wrap:balance}
#school-welcome h3{font:normal 13px/1.6 Georgia,serif;letter-spacing:.13em;text-transform:uppercase;margin:0 0 15px;color:var(--stone-muted)}
#school-welcome .welcome-rooms{padding:23px 0 27px;border-block:1px solid #ab98764d;text-align:center}
#school-welcome .welcome-rooms p{font-size:16px;line-height:1.95}
#school-welcome .welcome-rooms p span{font-style:italic;white-space:nowrap}
#school-welcome .welcome-ways{padding:27px 0 30px;border-bottom:1px solid #ab98764d}
#school-welcome .welcome-paths{display:grid;grid-template-columns:140px minmax(0,1fr);gap:34px;align-items:center}
#school-welcome .welcome-game{margin:0;text-align:center}
#school-welcome .welcome-game svg{width:140px;height:auto;display:block;margin:auto}
#school-welcome .welcome-game figcaption{font:italic 13px/1.6 Georgia,serif;color:var(--stone-muted);margin-top:4px}
#school-welcome .welcome-engraving{overflow:visible;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#school-welcome .engraving-light{stroke:#080f0b;stroke-width:3;opacity:.9}
#school-welcome .engraving-cut{stroke:var(--stone-cut)}
#school-welcome .welcome-game .welcome-engraving{stroke-width:2.2}
#school-welcome h4{font:normal 24px/1.4 Georgia,serif;color:#eee0ba;letter-spacing:0;text-transform:none;margin:0 0 7px}
#school-welcome .welcome-options h4 span{font:italic 16px/1.5 Georgia,serif;color:var(--stone-muted);margin-left:12px;white-space:nowrap}
#school-welcome .welcome-options>div+div{margin-top:24px}
#school-welcome .welcome-options p{font-size:16px;line-height:1.75}
#school-welcome .welcome-companions{padding:27px 0 30px;border-bottom:1px solid #ab98764d}
#school-welcome .welcome-companion{display:grid;grid-template-columns:58px minmax(0,1fr);gap:24px;align-items:center;margin-top:22px}
#school-welcome .welcome-companion svg{width:54px;height:58px}
#school-welcome .welcome-companion:last-child svg{padding:3px 4px}
#school-welcome .welcome-companion h4{font-size:22px;margin-bottom:3px}
#school-welcome .welcome-companion p{font-size:16px;line-height:1.7}
#school-welcome .welcome-ending{text-align:center;padding:28px 0 0}
#school-welcome .welcome-ending>p:first-child{font-style:italic;font-size:18px}
#school-welcome :focus-visible{outline:2px solid #eed8a3;outline-offset:4px}#school-welcome #welcome-title:focus{outline:none}#school-welcome .welcome-close:focus-visible{outline-color:#eed8a3}
@media(max-width:600px){#school-welcome{width:calc(100vw - 16px);height:calc(100dvh - 16px)}#school-welcome .welcome-toolbar{font-size:11px;padding-bottom:4px}#school-welcome .welcome-stone{padding:0 3px;border-width:5px}#school-welcome .welcome-reading{padding:26px 21px}#school-welcome .welcome-heading{padding-bottom:22px}#school-welcome .welcome-heading>p:last-child{font-size:17px}#school-welcome .welcome-paths{grid-template-columns:1fr;gap:20px}#school-welcome .welcome-game svg{width:104px}#school-welcome .welcome-game figcaption{display:none}#school-welcome .welcome-ways h3{text-align:center}#school-welcome .welcome-companion{grid-template-columns:46px minmax(0,1fr);gap:17px}#school-welcome .welcome-companion svg{width:44px;height:49px}#school-welcome .welcome-options h4 span{font-size:15px}#school-welcome .welcome-rooms p{font-size:15px}#school-welcome h4{font-size:23px}}
#school-welcome .welcome-heading{height:auto;min-height:0;max-height:none}
#school-welcome>.my-notes-tab,#school-welcome>.room-chat-tab{display:none}
#school-welcome .welcome-ending{display:block;margin:0;border:0;letter-spacing:normal}
