.study-loading{position:fixed;inset:0;z-index:250;display:grid;place-items:center;padding:28px;background:#e9e2cf;color:#40513c;transition:opacity .24s ease;overflow:auto}.study-loading[hidden],.study-loading [hidden]{display:none!important}.study-loading:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 35%,#faf5e1aa,transparent 65%),repeating-linear-gradient(0deg,#fff1 0 1px,transparent 1px 5px)}.loading-card{position:relative;width:min(440px,100%);padding:24px 32px 30px;background:#f8f4e4;border:3px solid #8b9775;box-shadow:6px 6px 0 #c8cbb0,-4px -4px 0 #fff9ec;outline:1px solid #e1dfc8;outline-offset:6px;text-align:center}.loading-topline{display:flex;justify-content:space-between;align-items:center;font:10px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.13em;color:#7c866c}.loading-topline button{border:1px solid #d8dcc4;border-radius:0;padding:6px 9px;color:#647251;background:transparent;font-size:11px;font-family:inherit;cursor:pointer}.loading-pixel-room{position:relative;margin:36px auto 20px;width:148px;height:104px;image-rendering:pixelated}.loading-pixel-room i{position:absolute;display:block}.loading-window{left:16px;top:4px;width:68px;height:56px;background:linear-gradient(90deg,transparent 44%,#778965 44% 55%,transparent 55%),linear-gradient(transparent 44%,#778965 44% 55%,transparent 55%),#dce6bc;border:6px solid #778965;box-shadow:4px 4px 0 #d9ddbf,inset 4px 4px 0 #f0f1d0}.loading-desk{bottom:10px;left:4px;width:140px;height:10px;background:#947752;box-shadow:0 6px 0 #c5a578}.loading-desk:before,.loading-desk:after{content:"";position:absolute;top:10px;width:8px;height:15px;background:#806c4e}.loading-desk:before{left:12px}.loading-desk:after{right:12px}.loading-books{left:28px;bottom:20px;width:38px;height:7px;background:#8b9f78;box-shadow:4px -7px 0 #d0ae73,0 -14px 0 #73896d}.loading-lamp{right:16px;bottom:21px;width:20px;height:5px;background:#697b5a;box-shadow:-4px -5px 0 -1px #697b5a,-9px -10px 0 -1px #697b5a,-14px -15px 0 -1px #697b5a,-19px -20px 0 -1px #697b5a}.loading-lamp:before{content:"";position:absolute;width:28px;height:13px;right:10px;bottom:23px;background:#a9b888;clip-path:polygon(24% 0,76% 0,100% 100%,0 100%);box-shadow:0 4px 0 #eedca5}.loading-spark{width:6px;height:6px;background:#ead08d;right:14px;top:9px;box-shadow:-6px 6px 0 #ead08d,6px 6px 0 #ead08d,0 12px 0 #ead08d;animation:loading-glimmer 1.8s steps(2,end) infinite}.loading-eyebrow{margin:0 0 10px;font-size:11px;letter-spacing:.17em;color:#8b967b}.loading-card h1{font-size:25px;line-height:1.25;font-weight:650;letter-spacing:.03em;margin:0 0 23px}.loading-stage{font-size:12px;line-height:1.7;min-height:21px;margin:0 0 14px;color:#6b795d}.loading-progress{display:block;width:100%;height:20px;padding:3px;appearance:none;-webkit-appearance:none;border:2px solid #7f906b;background:#e5e9d3;box-shadow:0 3px 0 #d0d6bb;color:#788f62}.loading-progress::-webkit-progress-bar{background:#e5e9d3}.loading-progress::-webkit-progress-value{background:repeating-linear-gradient(90deg,#829d6d 0 15px,#d9e2c5 15px 18px)}.loading-progress::-moz-progress-bar{background:repeating-linear-gradient(90deg,#829d6d 0 15px,#d9e2c5 15px 18px)}.loading-caption{display:flex;justify-content:space-between;gap:12px;margin-top:12px;font:10px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;color:#8b967b}.loading-retry{display:block;margin:22px auto 12px;padding:11px 28px;border:2px solid #617451;background:#7a9066;color:#fffdf1;box-shadow:3px 3px 0 #c7cdb4;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer}.loading-home{font-size:11px;color:#758365}.study-loading button:focus-visible,.loading-home:focus-visible{outline:3px solid #aa9261;outline-offset:4px}.study-loading.is-leaving{opacity:0;pointer-events:none}.study-loading.is-error .loading-progress{opacity:.55}.study-loading.is-error .loading-spark{animation:none;background:#bda477;box-shadow:none}.study-loading.reduced,.study-loading.reduced *{animation:none!important;transition:none!important}@keyframes loading-glimmer{0%,100%{opacity:.35}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.study-loading,.study-loading *{animation:none!important;transition:none!important}}@media(max-width:480px){.loading-card{padding:22px}.loading-card h1{font-size:22px}.loading-caption{font-size:9px}.loading-pixel-room{margin-top:28px}}
