@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Inter:wght@400;500;600&display=swap";:root{color:#f5f0df;font-synthesis:none;background:#121917;font-family:Inter,-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,label.primary{font:inherit;cursor:pointer}button{color:inherit;background:0 0;border:1px solid #e5d9b330;border-radius:3px;padding:10px 16px}button:hover{background:#e5d9b31a;border-color:#e5d9b37a}button:focus-visible,a:focus-visible,label.primary:focus-within{outline-offset:4px;outline:2px solid #ead399}#stage,#world{width:100vw;height:100dvh;display:block;position:relative}#world{touch-action:none;outline:none}.vignette{pointer-events:none;background:linear-gradient(#0d151d65,#0000 25% 65%,#0c141e88);position:absolute;inset:0;box-shadow:inset 0 0 130px #0005}.hud{z-index:3;transition:opacity .4s;position:absolute}.hidden-ui .hud{opacity:0;pointer-events:none}header{justify-content:space-between;align-items:center;display:flex;top:30px;left:38px;right:38px}.brand{letter-spacing:-1px;color:inherit;font-size:23px;font-weight:600;text-decoration:none}.brand span{letter-spacing:3px;margin-top:6px;font-size:8px;font-weight:400;display:block}.world-label{letter-spacing:1.5px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#17202030;border:1px solid #ffffff28;border-radius:30px;align-items:center;gap:9px;padding:9px 14px;font-size:10px;display:flex}i{background:#cde2b2;border-radius:50%;width:5px;height:5px}#fullscreen{border:0;padding:4px;font-size:24px}.title{top:145px;left:42px}.eyebrow{letter-spacing:2.7px;color:#e3cba2;font-size:9px}.title h1{letter-spacing:-2px;margin:14px 0 10px;font:500 clamp(48px,6vw,84px)/1.1 Cormorant Garamond,Georgia,serif}.title p{letter-spacing:1.3px;color:#f4ebd8d9;font-size:11px}.title-rule{background:#cfb780;width:45px;height:1px;margin-top:24px}.compass{text-align:center;letter-spacing:9px;text-shadow:0 1px 6px #000;width:175px;font:10px Georgia,serif;top:100px;left:50%;transform:translate(-50%)}.compass div{color:#e2c995;margin-top:8px;font-size:7px}.location{bottom:108px;left:42px}.location>span{letter-spacing:2px;color:#d2c5a8;font-size:8px}.location p{margin:10px 0;font:400 27px Cormorant Garamond,Georgia,serif}.location #motion-status{color:#ffffffa8;letter-spacing:2px;font-size:10px}footer{border-top:1px solid #ffffff21;justify-content:space-between;align-items:center;padding-top:18px;display:flex;bottom:28px;left:38px;right:38px}.keys{color:#eee6d0bf;gap:20px;font-size:10px;display:flex}.keys>span{white-space:nowrap}kbd{border:1px solid #e7dbbd50;border-radius:3px;margin-right:6px;padding:4px 6px;font:9px Inter,sans-serif}nav{gap:10px;display:flex}nav button{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#14201e33;font-size:10px}#toast{opacity:0;pointer-events:none;z-index:8;background:#14201ee8;border:1px solid #d1bd7940;border-radius:4px;padding:10px 20px;font-size:12px;transition:opacity .2s;position:absolute;bottom:125px;left:50%;transform:translate(-50%)}#toast.visible{opacity:1}.overlay{z-index:10;background:#111916;transition:opacity .8s;position:absolute;inset:0}.overlay.done{opacity:0;pointer-events:none}.loading-art{filter:saturate(.85);background:linear-gradient(90deg,#0c1714ed 0%,#15221988 55%,#17251930),url(/rivendell-explorer/assets/panorama.jpg) 50%/cover;position:absolute;inset:0}.loading-content{max-width:500px;position:absolute;top:50%;left:9vw;transform:translateY(-50%)}.loading-content h2{color:#f4e7c9;letter-spacing:-3px;margin:30px 0;font:400 clamp(64px,8vw,108px)/.94 Cormorant Garamond,Georgia,serif}.loading-content p{color:#e7e4d4ba;font-size:12px;line-height:1.8}.loader{background:#ceb77a80;width:80px;height:1px;margin-top:25px;position:relative;overflow:hidden}.loader:after{content:"";background:#fff0c7;width:35px;height:100%;animation:1.5s infinite load;position:absolute}@keyframes load{0%{left:-40px}to{left:90px}}.waiting .loader{display:none}#import-controls{margin-top:28px}.primary{color:#26332c;background:#e4d1a7;border-radius:3px;margin-right:12px;padding:14px 20px;font-size:12px;display:inline-block}#character-preview{margin-top:12px;font-size:11px}.small{max-width:340px;font-size:10px!important}dialog{color:#f3ecd9;background:#14201e;border:1px solid #c5b28244;border-radius:8px;width:min(1000px,90vw);max-height:90vh;padding:36px;box-shadow:0 20px 100px #0008}dialog::backdrop{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0009}dialog img{border-radius:4px;width:100%;margin-top:16px}dialog h2{font:400 36px Cormorant Garamond,Georgia,serif}dialog p,dialog summary{color:#e0d7c3;font-size:12px;line-height:1.8}.close{float:right;border:0;padding:0 8px;font-size:24px}#calibration{z-index:15;background:#14201ef5;border:1px solid #ccb57766;border-radius:4px;width:265px;padding:18px;font-size:11px;position:absolute;top:90px;right:30px}#calibration label{justify-content:space-between;align-items:center;margin:12px 0;display:flex}#calibration input{color:#fff;background:#ffffff15;border:1px solid #fff3;width:80px;padding:6px}#calibration output{white-space:pre-line;margin-top:15px;font:10px/1.7 monospace;display:block}#calibration p{color:#c7bfa9;font-size:10px;line-height:1.7}@media (width<=800px){header{top:20px;left:20px;right:20px}.title{top:110px;left:22px}.title h1{font-size:52px}.title .eyebrow{letter-spacing:1.4px;font-size:7px}.compass{display:none}.location{bottom:150px;left:22px}footer{flex-direction:column;align-items:flex-start;gap:20px;bottom:20px;left:20px;right:20px}.keys{flex-wrap:wrap;gap:8px;font-size:9px}nav button{padding:8px 12px}.world-label{font-size:9px}.loading-content{left:8vw;right:8vw}.loading-content h2{font-size:68px}}.journey{letter-spacing:1.4px;color:#eee1c0;text-shadow:0 1px 5px #0008;flex-wrap:wrap;justify-content:space-between;width:170px;font-size:8px;display:flex;top:120px;right:40px}.journey-track{background:#eee1c035;order:3;width:100%;height:2px;margin:10px 0}.journey-track>div{background:#e9d3a3;width:0;height:100%;transition:width .25s}@media (width<=800px){.journey{width:125px;font-size:7px;top:100px;right:22px}}#route-choice{color:#f5f0df;background:#14201eee;border:1px solid #e5d9b330;border-radius:3px;max-width:155px;padding:8px;font:10px Inter,sans-serif}#route-choice[hidden]{display:none}.opening-frame{z-index:2;pointer-events:none;transition:opacity 1.3s;position:absolute;inset:0}.opening-frame:before,.opening-frame:after{content:"";background:#101916d9;height:26px;transition:transform 1.3s;position:absolute;left:0;right:0}.opening-frame:before{border-bottom:1px solid #dbc28b3b;top:0}.opening-frame:after{border-top:1px solid #dbc28b3b;bottom:0}.opening-frame span{border:1px solid #e3ca9242;position:absolute;inset:42px 23px;box-shadow:inset 0 0 95px #19221945}.title{opacity:1;pointer-events:none;text-shadow:0 2px 22px #18221abe;transition:opacity 1.25s,transform 1.65s,filter 1.4s,visibility;top:32%;left:5.2%;transform:translateY(-8%)}.title h1{color:#fff1d3;letter-spacing:-3px;text-shadow:0 1px #fff7e8,0 3px 26px #1d261ba8;margin:4px 0 13px;font-size:clamp(70px,8vw,126px);font-weight:500;line-height:1.04}.title .eyebrow{color:#f3e2bf;letter-spacing:2.7px;font-size:9px}.opening-ornament{color:#edcf91;margin:18px 0 4px;font:28px/1 Georgia,serif}.title p{color:#fff0d3;letter-spacing:2.5px;font-size:12px}.title-rule{background:#efd4a0;width:66px;margin-top:26px}.title .entry-invitation{letter-spacing:.3px;color:#f1dfbc;margin-top:23px;font:italic 19px Cormorant Garamond,Georgia,serif}.compass,.journey,.location,.world-label{transition:opacity 1s,transform 1s}.opening .compass,.opening .journey,.opening .location,.opening .world-label{opacity:0;pointer-events:none;transform:translateY(5px)}.opening .compass{transform:translate(-50%)translateY(5px)}.exploring .title{opacity:0;filter:blur(3px);visibility:hidden;transition:opacity 1.25s,transform 1.65s,filter 1.4s,visibility 0s 1.65s;transform:translateY(-15%)scale(1.045)}.exploring .opening-frame{opacity:0}.exploring .opening-frame:before{transform:translateY(-100%)}.exploring .opening-frame:after{transform:translateY(100%)}#calibration input[type=checkbox]{accent-color:#e4cd99;width:auto}@media (width<=800px){.title{top:25%;left:7%}.title h1{letter-spacing:-2px;font-size:clamp(56px,11vw,85px)}.title .eyebrow{letter-spacing:1.5px;font-size:7px}.title p{font-size:10px}.title .entry-invitation{font-size:16px}.opening-frame span{inset:33px 12px}}@media (prefers-reduced-motion:reduce){.title,.opening-frame,.opening-frame:before,.opening-frame:after,.compass,.journey,.location,.world-label{transition:none!important}.exploring .title{filter:none;transform:none}}.camera-checks{flex-wrap:wrap;gap:7px;margin:12px 0;display:flex}.camera-checks button{padding:8px 10px;font-size:10px}.hidden-ui .opening-frame{opacity:0}nav{flex-wrap:wrap}[hidden]{display:none!important}.begin-quest{pointer-events:auto;color:#23372f;letter-spacing:1px;background:#efe0b9;border-color:#ffecc9;margin-top:10px;padding:12px 19px;font:11px Inter,sans-serif;box-shadow:0 4px 25px #101a1640}.begin-quest:hover{background:#fff0d3}.begin-quest span{margin-left:28px}.quest-panel{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:linear-gradient(130deg,#15251fdf,#14201dbb);border:1px solid #e4d3a32e;border-radius:5px;width:250px;padding:20px 22px 14px;top:165px;right:36px;box-shadow:0 15px 35px #09140f1a}.quest-kicker{letter-spacing:1.8px;color:#d1c39f;justify-content:space-between;gap:10px;font-size:8px;display:flex}.quest-kicker>span{letter-spacing:1px;color:#fae9bd}.quest-stars{color:#8e998768;gap:17px;margin:11px 0;font:29px Georgia,serif;display:flex}.quest-stars span{transition:color .5s,text-shadow .5s}.quest-stars .earned{color:#ffe0a3;text-shadow:0 0 16px #ffdfb276}.quest-panel h2{color:#fbedd0;margin:8px 0 10px;font:400 23px/1.1 Cormorant Garamond,Georgia,serif}.quest-panel p{color:#d9decc;margin:0 0 12px;font-size:11px;line-height:1.65}.quest-panel .quest-distance{color:#b3c7be;letter-spacing:.5px;margin-top:12px;font-size:9px}.quest-panel button{padding:8px 11px;font-size:10px}.quest-panel #quest-guide{color:#f6dda4;background:#d7bb7020;border-color:#d9c08758;width:100%}.quest-tools{justify-content:space-between;margin-top:8px;display:flex}.quest-tools button{color:#c3cfc3;border:0;padding:6px 0;font-size:9px}.quest-tools kbd{margin-left:4px;margin-right:0;padding:1px 3px;font-size:8px}#rune-order{gap:5px;margin:12px 0;font-size:9px;display:flex}#rune-order span{color:#a0aa98;border-bottom:1px solid #d9c08730;padding:7px 5px}#rune-order .next{color:#f7dea4;border-color:#ffe4a3}#rune-order .lit{color:#bfdcaf;background:#a9d59015}.interaction{text-align:center;min-width:290px;max-width:85vw;bottom:145px;left:50%;transform:translate(-50%)}.interaction button{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#182921eb;border-color:#e8d2a258;padding:12px 18px;font-size:12px;box-shadow:0 5px 25px #05110b40}.interaction kbd{color:#25372e;background:#efddb9;margin-right:12px;font-weight:600}.interaction button:disabled{cursor:default;opacity:.85}.interaction button:disabled kbd{color:#c6cdbf;background:0 0}#seal-progress{background:#a9b99c40;width:90%;height:3px;margin:9px auto}#seal-progress-fill{background:#ecdc9f;width:0;height:100%;box-shadow:0 0 12px #e8d499}#toast{text-align:center;max-width:80vw;font-size:11px;line-height:1.5;bottom:215px}.adventure-active .journey{top:110px}.adventure-active .compass{top:90px}.adventure-active .location{bottom:108px}.adventure-active footer .keys{gap:12px}.adventure-active footer{gap:16px}.finale-caption{z-index:6;text-align:center;pointer-events:none;text-shadow:0 3px 30px #13251a;position:absolute;bottom:19%;left:0;right:0}.finale-caption span{letter-spacing:4px;color:#ecd8ab;font-size:9px}.finale-caption p{color:#fff1ce;margin:15px;font:48px Cormorant Garamond,Georgia,serif}.cinematic .quest-panel,.cinematic footer,.cinematic .journey,.cinematic .location,.cinematic .compass{opacity:0;pointer-events:none}.cinematic .vignette{box-shadow:inset 0 0 150px #0b1c1155}.cinematic .opening-frame{opacity:1}.cinematic .opening-frame:before,.cinematic .opening-frame:after{transform:none}.quest-ending{z-index:9;text-align:center;text-shadow:0 2px 25px #09190f;background:linear-gradient(#14251c15,#14251c55);flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.quest-ending h2{color:#fff1d1;margin:18px 0 5px;font:500 clamp(48px,6vw,84px) Cormorant Garamond,Georgia,serif}.quest-ending p{letter-spacing:2px;color:#ece5c8;font-size:12px}.ending-stars{color:#f1d698;text-shadow:0 0 24px #e9d093;margin:20px 0 28px;font:36px Georgia,serif}.quest-ending button{background:#15251cba;border-color:#dfcc9e6e;min-width:165px;margin:5px;font-size:11px}.quest-ending #replay-quest{background:0 0;border-color:#0000;font-size:10px}#journal-modal{width:min(1040px,92vw)}#journal-cards{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}#journal-cards article{background:#203028;border:1px solid #c3b18135;padding:12px}#journal-cards img{aspect-ratio:16/10;object-fit:cover;margin:0}#journal-cards h3{margin:18px 0 8px;font:27px Cormorant Garamond,Georgia,serif}#journal-cards p{min-height:48px;font-size:11px}#journal-cards a{color:#e9d5a5;text-underline-offset:4px;font-size:10px}button:disabled{cursor:default;opacity:.55}@media (width<=1000px){.quest-panel{width:218px;padding:15px;top:148px;right:20px}.quest-panel h2{font-size:21px}.keys{gap:9px!important}footer{flex-wrap:wrap;gap:10px;padding-top:10px}nav{gap:6px}nav button{padding:8px 10px}.interaction{bottom:160px}.location{bottom:125px!important}}@media (width<=650px){.quest-panel{width:185px;padding:12px;top:112px;right:12px}.quest-stars{margin:7px 0;font-size:22px}.quest-panel h2{font-size:19px}.quest-panel p{font-size:10px}.quest-kicker{letter-spacing:1px;font-size:6px}.quest-panel .quest-distance{font-size:8px}.quest-tools{gap:8px}.journey{display:none}.interaction{min-width:250px;bottom:190px}.interaction button{font-size:10px}.location{bottom:160px!important}.location p{font-size:22px}#journal-cards{grid-template-columns:1fr}.finale-caption p{font-size:35px}}@media (prefers-reduced-motion:reduce){.quest-stars span{transition:none}}#quest-replay{color:#f6dda4;background:#d7bb7020;border-color:#d9c08758;width:100%}footer{flex-wrap:wrap;gap:16px}.keys{flex-wrap:wrap;row-gap:12px}#calibration{overscroll-behavior:contain;max-height:calc(100dvh - 110px);overflow-y:auto}#world{transition:filter .65s}.ring-worn #world{filter:none}.ring-worn .vignette{background:radial-gradient(#0000 30%,#17101655);box-shadow:inset 0 0 180px #10121cba}.shadow-warning .vignette{box-shadow:inset 0 0 180px #471a12aa,inset 0 0 50px #ad5b2c44}.quest-stars{letter-spacing:2px;gap:25px;font-size:17px}.quest-stars .earned{text-shadow:none}#ring-toggle{color:#f4dba1;background:#d6b77819;border-color:#bda0667d;width:100%}#ring-toggle[aria-pressed=true]{color:#18211d;background:#bba279;border-color:#e7c988}.ring-meter-label{letter-spacing:1px;color:#cbbb94;justify-content:space-between;margin:13px 0 6px;font-size:8px;display:flex}#shadow-meter{background:#ffffff18;border-radius:2px;height:4px;overflow:hidden}#shadow-fill{background:#c9a966;height:100%;transition:width .15s linear}.shadow-warning #shadow-fill{background:#e68b61}.quest-panel #ring-status{color:#afbdad;letter-spacing:.6px;margin:7px 0 0;font-size:8px}#story-modal{background:#202920;max-width:560px}#story-copy{white-space:pre-line;color:#e3d8bc;font:17px/1.7 Georgia,serif}#story-close{color:#1e2b22;background:#cdb786;border:0;margin-top:12px}@media (width<=1000px){.quest-panel{overscroll-behavior:contain;max-height:calc(100dvh - 280px);top:135px;overflow-y:auto}}@media (prefers-reduced-motion:reduce){#world,#shadow-fill{transition:none}}#realm-transition{z-index:20;opacity:0;visibility:hidden;pointer-events:none;background:#0a1018;flex-direction:column;justify-content:center;align-items:center;transition:opacity .3s,visibility .3s;display:flex;position:absolute;inset:0}#realm-transition span{letter-spacing:5px;color:#b6c6d2;font-size:10px}#realm-transition p{font:42px Cormorant Garamond,Georgia,serif}.realm-shifting #realm-transition{opacity:1;visibility:visible;pointer-events:auto}.realm-sources{grid-template-columns:1fr 1fr;gap:16px;display:grid}.realm-sources figure{margin:0}.realm-sources figcaption{color:#d0c4a9;margin-top:8px;font-size:11px}[data-realm=unseen] .world-label{background:#15203399}[data-realm=unseen] .world-label i{background:#c6dcef}[data-realm=unseen] .location>span{font-size:0}[data-realm=unseen] .location>span:after{content:"02 / THE UNSEEN WORLD";letter-spacing:2px;font-size:8px}[data-realm=council] .location>span{font-size:0}[data-realm=council] .location>span:after{content:"03 / THE COUNCIL";letter-spacing:2px;font-size:8px}.quest-panel .mission-goal{letter-spacing:1px;color:#ead6ab;border-bottom:1px solid #e4d3a32e;margin-bottom:10px;padding-bottom:10px;font-size:8px}#quest-step{letter-spacing:1px;color:#b9d0bd;font-size:8px;line-height:1.5}.entry-invitation{max-width:350px;line-height:1.7!important}#story-copy{font:14px/1.7 Inter,sans-serif}#story-modal h2{margin:18px 0}#story-close{width:100%;font-size:13px}.quest-panel{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:linear-gradient(130deg,#15251fbc,#14201d80);width:226px;padding:16px 18px}.quest-panel h2{font-size:22px}.quest-panel p{font-size:11px}.discovery{pointer-events:none;text-align:left;background:linear-gradient(120deg,#17231ff0,#17231fcb);border-left:2px solid #d8be85;width:min(440px,100% - 48px);padding:20px 26px;position:absolute;bottom:140px;left:50%;transform:translate(-50%)}.discovery>span{letter-spacing:1.5px;color:#d8be85;font-size:8px}.discovery h2{color:#f5e6c4;margin:10px 0;font:26px Georgia,serif}.discovery p{color:#d9decc;margin:0;font-size:12px;line-height:1.7}@media (width<=650px){.quest-panel{width:175px;padding:12px}.discovery{padding:15px;bottom:185px}.discovery h2{font-size:21px}}.discovery{width:min(330px,100% - 48px);padding:14px 18px;top:148px;bottom:auto;left:38px;transform:none}.discovery h2{margin:7px 0;font-size:22px}.discovery p{font-size:11px;line-height:1.55}.interaction{z-index:5}@media (width<=650px){.discovery{width:calc(100% - 32px);padding:12px 16px;top:auto;bottom:270px;left:16px}.discovery h2{font-size:19px}}.clue-sense{color:#ead6ab;border-top:1px solid #e4d3a32e;margin:12px 0;padding:12px 0 3px}.clue-sense-top{letter-spacing:1px;justify-content:space-between;gap:10px;font-size:8px;display:flex}.clue-sense-body{align-items:center;gap:12px;margin-top:10px;display:flex}#clue-arrow{text-align:center;color:#ffe1a0;min-width:24px;font:28px Georgia,serif;transition:transform .12s linear}#clue-strength{color:#f5e6c4;font-size:11px;font-weight:500}.quest-panel #clue-detail{color:#c4d0bf;margin:5px 0 0;font-size:10px;line-height:1.5}@media (prefers-reduced-motion:reduce){#clue-arrow{transition:none}}.terrace-guidance{-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:linear-gradient(120deg,#17251de0,#17251da6);border:1px solid #d5c39735;border-left:2px solid #cfb477;border-radius:3px;width:224px;padding:17px 19px;top:160px;left:38px}.terrace-kicker{letter-spacing:3px;color:#cbb783;font-size:9px}.terrace-guidance h2{letter-spacing:1px;margin:10px 0 9px;font-size:16px;font-weight:500;line-height:1.5}.terrace-instruction{color:#d9d9c8;margin:0;font-size:11px;line-height:1.9}.terrace-bearing{color:#e5cc93;align-items:center;gap:11px;margin-top:13px;font-size:10px;display:flex}.terrace-arrow{text-align:center;width:24px;font-size:24px;line-height:1;display:inline-block}.terrace-cross{background:#d8c58e12;border-color:#e6d1a86b;width:100%;margin-top:15px;padding:11px 8px;font-size:11px}.terrace-cross kbd{color:#202c29;background:#eadbb6;border:0}.terrace-guidance[data-phase=threshold]{border-left-color:#e8d3a7}.terrace-guidance[data-phase=unseen]{background:linear-gradient(120deg,#172131e6,#172131a6);border-color:#a9c4d64d}.terrace-guidance[hidden],.terrace-guidance [hidden]{display:none!important}@media (width<=800px){.terrace-guidance{width:190px;padding:13px 15px;top:100px;left:20px}.terrace-guidance h2{font-size:14px}.terrace-instruction{font-size:10px}}@media (height<=600px){.terrace-guidance{padding:10px 14px;top:90px}.terrace-guidance h2{margin:6px 0}.terrace-instruction{line-height:1.55}}
