@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Prata&display=swap";:root{font-family:Manrope,Arial,sans-serif;color:#f2eddf;background:#142a35;font-synthesis:none;--gold:#efbe80;--muted:#aebfbd;--line:#b8ccc224;--surface:#14272dee;--teal:#9bddd3;--shadow:0 18px 60px #0005;color-scheme:dark}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,input,select{font:inherit}button{cursor:pointer;color:inherit;border:0;background:none}button:disabled{cursor:wait;opacity:.65}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #ffe0aa;outline-offset:5px}button svg{width:22px;height:22px;flex-shrink:0}button{transition:background .2s,transform .2s,color .2s}button:active:not(:disabled){transform:translateY(1px)}button span{white-space:nowrap}button:hover:not(:disabled){color:#fff}button.primary:hover:not(:disabled){background:#ffce90;color:#222e30}#app,#world,#ui,.vignette{position:fixed;top:0;right:0;bottom:0;left:0}#app{background:radial-gradient(ellipse at 60% 30%,#3a5861 0,#203c49 43%,#111f2b)}#world canvas{display:block;touch-action:none}#ui,.vignette{pointer-events:none}#ui button,#ui input,#ui a{pointer-events:auto}.vignette{background:linear-gradient(0deg,#0c1c28aa,transparent 22%),radial-gradient(ellipse at center,transparent 40%,#101d2566);z-index:1}#ui{z-index:2}svg{display:block}button{display:inline-flex;align-items:center;justify-content:center;gap:13px}header{display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:13px;font-size:12px;font-weight:800;letter-spacing:2px;line-height:1.6}.brand small{display:block;font-size:12px;font-weight:500;letter-spacing:3.8px;color:var(--gold)}.brand-mark{width:39px;height:43px;display:grid;place-items:center;color:var(--gold);border:1px solid #efbe8055;border-radius:11px}.brand-mark svg{width:24px;height:24px;transform:rotate(-12deg)}.edition{text-align:right;font-size:12px;letter-spacing:2.3px;color:#d7dfd4}.edition span{display:block;color:#a9b8b5;font-size:12px;letter-spacing:1.6px;margin-top:7px}.menu-screen{height:100%;padding:34px 4.2vw 25px;background:linear-gradient(90deg,#10232ef2 0,#10232ed6 18%,#10232e9f 32%,transparent 62%);display:flex;flex-direction:column}.menu-screen header{flex:none}.menu-body{margin:auto 0;max-width:510px;padding:30px 0}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:700;color:var(--gold);display:block}.eyebrow i{display:inline-block;width:22px;height:1px;background:var(--gold);vertical-align:middle;margin-right:8px}h1{font-family:Georgia,Times New Roman,serif;font-weight:400;letter-spacing:-3px;font-size:clamp(56px,6.3vw,99px);line-height:.99;margin:24px 0 38px;color:#f7efdc;text-shadow:0 5px 22px #10212b66}h1 span{font-size:.93em}h1 em{display:block;font-family:Manrope,Arial,sans-serif;font-size:13px;letter-spacing:13px;font-weight:600;font-style:normal;color:var(--gold);margin-top:20px;margin-left:4px}.menu-actions{display:flex;align-items:flex-start;flex-direction:column;gap:4px}.primary{background:var(--gold);color:#243332;min-height:52px;padding:14px 24px;border-radius:7px;font-size:14px;font-weight:800;box-shadow:0 5px 22px #0e1d2140}.menu-primary{min-width:260px;min-height:60px;justify-content:flex-start;padding-left:24px;margin-bottom:10px}.menu-primary svg{margin-right:6px;fill:currentColor;stroke-width:1}.text-button{font-size:14px;font-weight:600;min-height:43px;padding:9px 4px;color:#c6d2cf;justify-content:flex-start}.text-button svg{width:19px;height:19px;color:#a7b4ae}.menu-players{display:flex;align-items:center;gap:14px;margin-top:30px;font-size:12px;color:#dce1d7;line-height:1.7}.menu-players small{display:block;color:#9caeaa;font-size:12px}.overlap-portraits{display:flex;padding-right:4px}.portrait{position:relative;overflow:hidden;width:50px;height:50px;border-radius:50%;background:linear-gradient(145deg,#90664a,#3f3534);border:1px solid #ffd8a95c;flex:none}.portrait img{position:absolute;max-width:none;width:390%;left:-52%;top:-8%}.portrait.p1{background:linear-gradient(145deg,#5f807b,#2c424a);border-color:#b9e5d466}.portrait.p1 img{left:-245%}.overlap-portraits .portrait{width:42px;height:42px}.overlap-portraits .portrait+.portrait{margin-left:-8px}.menu-screen footer{display:flex;justify-content:space-between;color:#9eaead;font-size:12px;letter-spacing:1.7px;flex:none}.menu-screen footer i{font-style:normal;padding:0 9px;color:#637b80}.menu-footer-right{font-size:12px;letter-spacing:2px}.island-caption{position:absolute;right:8%;bottom:18%;display:flex;align-items:center;gap:16px;text-shadow:0 1px 4px #0005}.island-caption>span{font-family:Georgia,serif;font-size:42px;color:#e5c191;border-right:1px solid #e5c19155;padding-right:16px}.island-caption>div{font-size:15px;font-weight:500;letter-spacing:.5px}.island-caption small{display:block;font-size:12px;font-weight:400;margin-top:6px;color:#d6ddd0}.game-screen{height:100%;padding:26px 32px}.game-screen header{gap:20px}.brand.compact{font-size:12px;letter-spacing:1.2px}.compact .brand-mark{width:33px;height:37px}.compact small{font-size:12px;letter-spacing:2.7px}.game-location{display:flex;align-items:center;gap:25px}.location-name{font-size:12px;letter-spacing:2px;border-left:1px solid #adbeb540;padding:12px 0 12px 25px;color:#bfcac3}.round{position:absolute;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;border-bottom:1px solid #e9d4a94a;padding:4px 17px 8px}.round span{font-size:12px;letter-spacing:2px;color:#c0c9bb}.round strong{font-family:Georgia,serif;font-weight:400;font-size:28px;color:#eed7b0}.toolbar{display:flex;gap:8px}.icon-button{width:42px;height:42px;border-radius:7px;background:#112831b3;border:1px solid #b8c5b626;color:#d1d8ce}.icon-button svg{width:19px;height:19px}.icon-button:hover{background:#335057}.players{position:absolute;top:104px;left:32px;display:flex;flex-direction:column;gap:10px;max-width:330px;width:25vw;min-width:265px}.player-card{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #b8c5b621;background:#112831cf;border-radius:9px;box-shadow:0 7px 25px #101d2433;transition:border-color .4s,background .4s}.player-card.active{border-color:#efbe8070;background:linear-gradient(110deg,#5d4e39d6,#142b32e8);box-shadow:inset 3px 0 #efbe80,0 7px 25px #101d2433}.player-card.active.player-1{border-color:#92d6cd80;background:linear-gradient(110deg,#355653d6,#142b32e8);box-shadow:inset 3px 0 #a0dcd2,0 7px 25px #101d2433}.player-details{min-width:0;flex:1}.player-label{font-size:12px;letter-spacing:1.3px;color:#b2c1ba;display:block;white-space:nowrap}.player-label b{color:var(--gold);font-size:12px;letter-spacing:1px;margin-left:8px}.player-1 .player-label b{color:var(--teal)}.player-details strong{display:block;font-size:14px;font-weight:700;margin-top:0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.player-track{margin-top:8px;height:2px;background:#c4d9c922;border-radius:2px;overflow:hidden}.player-track div{height:100%;background:var(--gold);transition:width .5s}.player-1 .player-track div{background:var(--teal)}.position{min-width:33px;text-align:center}.position strong{font-size:24px;font-family:Georgia,serif;font-weight:400;color:#f1d29f}.player-1 .position strong{color:#ade0d7}.position span{display:block;font-size:12px;color:#9ab0ad;margin-top:2px}.view-pill{position:absolute;top:93px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;font-size:12px;background:#18313d70;border:1px solid #bbcbbc15;border-radius:25px;padding:7px 13px;color:#d1d9cf}.view-pill svg{width:13px;height:13px}kbd{font-family:inherit;font-size:12px;color:#b6c3bc;background:#b6c3bc16;border:1px solid #bbcdc02a;border-radius:4px;padding:3px 6px;line-height:1.2}.bottom-hud{position:absolute;bottom:26px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:12px;min-width:350px}.turn-status{display:flex;align-items:center;gap:8px;font-size:12px;color:#f1eddd;text-shadow:0 2px 8px #000}.turn-dot{width:6px;height:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 10px #efbe8077}.turn-dot.p1{background:var(--teal)}.roll-button{background:linear-gradient(140deg,#ffce8b,#deb178);color:#253333;min-height:64px;padding:15px 23px;border:1px solid #ffda9f;border-radius:9px;min-width:300px;box-shadow:0 8px 40px #060f2077,inset 0 1px #fff5;font-size:16px;font-weight:800;pointer-events:auto}.roll-button>svg{width:27px;height:27px}.roll-button kbd{margin-left:8px;color:#4d534a;background:#785b2220;border-color:#4d4c322a;font-size:12px;padding:5px 7px}.roll-button:hover:not(:disabled){color:#172522;background:#fbd29a;box-shadow:0 9px 42px #ebba6633}.roll-button:disabled{opacity:.82}.bottom-hint{font-size:12px;color:#b1c0bc;min-height:15px;white-space:nowrap}.bottom-left{position:absolute;bottom:35px;left:32px;font-size:12px;color:#b3c1bb;display:flex;flex-direction:column;gap:5px}.subtle-label{font-size:12px;letter-spacing:1.6px;color:#809996}.game-screen>[data-action=full]{position:absolute;right:32px;bottom:32px}.roll-result{position:absolute;left:50%;bottom:180px;transform:translate(-50%) translateY(10px);opacity:0;display:flex;align-items:center;gap:14px;padding:14px 22px;border-radius:10px;background:#102a32df;border:1px solid #dac79b3d;box-shadow:var(--shadow);transition:.3s}.roll-result.visible{opacity:1;transform:translate(-50%) translateY(0)}.die-face{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;width:46px;height:46px;padding:9px;background:#f4dfbd;border-radius:8px;box-shadow:0 3px #947f60;color:#3a332d}.die-face i{display:block;border-radius:50%}.die-face i.dot{background:currentColor}.plus{color:#d8b579;font-size:18px}.result-divider{width:1px;height:34px;background:#d8b57933;margin:0 3px}.total{display:flex;flex-direction:column;text-align:center;min-width:30px}.total strong{font-size:29px;font-family:Georgia,serif;font-weight:400;color:#f1cb8d}.total span{font-size:12px;letter-spacing:1px;color:#b8c7bd}.map-title{text-align:center}.map-title .eyebrow{font-size:12px;color:#c3cfc2;letter-spacing:2.7px;margin-bottom:6px}.map-title strong{font-size:14px;font-weight:600;letter-spacing:2px}.glass-button{min-height:42px;padding:10px 16px;font-size:13px;background:#102a34cc;border:1px solid #afc0b429;border-radius:7px}.glass-button svg{width:18px;height:18px}.explore-bottom{position:absolute;bottom:32px;left:32px;right:32px;display:flex;align-items:center;justify-content:space-between;gap:24px}.map-guide{display:flex;align-items:center;gap:13px;font-size:13px;text-shadow:0 1px 4px #000}.map-guide>svg{width:24px;height:24px;color:var(--gold)}.map-guide small{display:block;font-size:12px;color:#9fb4b0;margin-top:5px}.tile-info{position:absolute;bottom:178px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:18px;background:#172f37f2;border:1px solid #b8cbc340;border-radius:9px;padding:16px 18px;pointer-events:auto;box-shadow:var(--shadow);max-width:90vw}.tile-info[hidden]{display:none}.tile-number{font-family:Georgia,serif;font-size:32px;color:var(--gold)}.tile-info strong{font-size:12px;display:block}.tile-info div>span{font-size:12px;color:#b0c2b9;display:block;margin-top:5px}.tile-info .icon-button{width:28px;height:28px;background:none;border:0}.game-dialog{background:linear-gradient(155deg,#213b42,#10272e);color:#f2eddf;border:1px solid #d9c6993d;border-radius:16px;padding:30px;width:min(580px,calc(100vw - 32px));max-height:calc(100dvh - 40px);box-shadow:0 25px 120px #0008;overflow:auto}.game-dialog::backdrop{background:#091b28b8;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}.dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.dialog-header .eyebrow{font-size:12px;letter-spacing:2.4px}.dialog-header h2{font-family:Georgia,serif;font-weight:400;font-size:32px;margin:9px 0 0}.dialog-header .icon-button{width:32px;height:32px;border:0;background:#ffffff07}.dialog-header .icon-button svg{width:17px;height:17px}.dialog-intro{font-size:13px;line-height:1.7;color:#aabfbb;max-width:400px;margin:15px 0 0}.character-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0 20px}.character-choice{display:flex;flex-direction:column;background:radial-gradient(ellipse at 50% 40%,#8d624f4a,transparent 80%),#0c202751;border:1px solid #d6b77d42;border-radius:11px;padding:0 14px 15px;overflow:hidden}.choice-1{border-color:#7cbcaf48;background:radial-gradient(ellipse at 50% 40%,#5e8d893f,transparent 80%),#0c202751}.character-art{background-image:url(/assets/hero-acne.webp);background-size:200% 100%;background-repeat:no-repeat;aspect-ratio:3/4;width:100%;max-height:255px;background-position:left center}.art-1{background-position:right center}.character-number{font-size:12px;letter-spacing:2px;color:var(--gold);margin:8px 0 10px}.choice-1 .character-number{color:var(--teal)}.character-choice input{width:100%;min-width:0;background:#071e2866;border:1px solid #acbcac33;padding:10px 12px;color:#f5f0de;font-size:14px;border-radius:5px}.rules-note{display:flex;align-items:flex-start;gap:13px;margin:16px 0 24px;color:#a6bbb5}.rules-note>svg{width:21px;height:21px;flex:none;color:#e2b577;margin-top:2px}.rules-note p{margin:0;font-size:12px;line-height:1.8}.rules-note b{color:#d5dccd}.wide{width:100%}.settings-section{border-top:1px solid var(--line);margin-top:24px;padding-top:6px}.settings-section h3{font-size:12px;font-weight:600;letter-spacing:1.5px;color:#c6b795;margin:15px 0 12px;text-transform:uppercase}.setting{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:48px;font-size:13px}.setting small{display:block;color:#8fa9a4;font-size:12px;margin-top:4px}.setting input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex-shrink:0;width:37px;height:22px;border:1px solid #8eb6a93a;border-radius:20px;background:#071e26;position:relative;cursor:pointer;transition:.2s}.setting input[type=checkbox]:before{content:"";position:absolute;top:3px;left:3px;width:14px;height:14px;background:#74918e;border-radius:50%;transition:transform .2s}.setting input[type=checkbox]:checked{background:#e4b478;border-color:#e4b478}.setting input[type=checkbox]:checked:before{background:#213832;transform:translate(15px)}.range-setting{display:grid;grid-template-columns:1fr auto;gap:12px 20px;margin-bottom:15px}.range-setting input{grid-column:1/-1;width:100%;accent-color:var(--gold);height:4px;cursor:pointer}.range-setting output{color:var(--gold);font-size:12px}.setting select{background:#132c33;color:#e5e5d5;border:1px solid #a4bca83b;border-radius:5px;font-size:12px;padding:8px 10px}.settings-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:28px}.settings-footer .text-button{font-size:12px}.settings-footer .primary{min-height:44px;padding:10px 20px;font-size:12px}.pause-dialog{width:380px}.pause-actions{display:flex;flex-direction:column;align-items:stretch;gap:8px;margin-top:30px}.pause-actions .text-button{padding:10px 15px}.victory-dialog{text-align:center;width:430px;padding:38px}.victory-crown{margin:0 auto 20px;color:var(--gold);width:48px;height:48px}.victory-dialog .eyebrow{font-size:12px}.victory-dialog h2{font-family:Georgia,serif;font-weight:400;line-height:1.25;font-size:32px;margin:18px 0}.victory-dialog h2 em{color:var(--gold);font-style:normal}.victory-portrait .portrait{width:86px;height:86px;margin:20px auto}.victory-dialog p{color:#aec3b8;font-size:12px;line-height:1.8}.victory-actions{display:flex;align-items:center;flex-direction:column;gap:10px;margin-top:25px}#loading{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#172e38;transition:opacity .6s;color:var(--gold)}#loading.done{opacity:0;pointer-events:none}#loading p{font-size:12px;letter-spacing:1.5px}.loading-die{border:1px solid #edbd7677;width:65px;height:65px;border-radius:17px;display:grid;place-items:center;font-family:Georgia,serif;font-size:34px;transform:rotate(-8deg)}#loading p span{animation:pulse 1s infinite alternate}#toast{position:fixed;z-index:20;bottom:30px;left:50%;transform:translate(-50%,20px);background:#18343bf5;padding:14px 22px;border:1px solid #d1be8766;border-radius:8px;box-shadow:var(--shadow);font-size:12px;opacity:0;pointer-events:none;transition:.25s;max-width:90vw}#toast.shown{opacity:1;transform:translate(-50%)}#fatal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:15;background:#142a35;padding:10%;text-align:center}#fatal[hidden]{display:none}#fatal h1{font-size:36px;letter-spacing:0}#fatal p{font-size:16px;line-height:1.7}#fatal button{padding:15px 25px;background:var(--gold);color:#142a35;border-radius:7px;margin-top:20px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes pulse{to{opacity:.3}}@media(min-width:1600px){.menu-body{padding-left:2vw}.menu-screen{padding:42px 4.5vw 30px}.menu-actions{gap:7px}.menu-players{margin-top:38px}.players{width:300px}}@media(max-height:720px)and (min-width:701px){h1{font-size:68px;margin:18px 0 26px}h1 em{font-size:12px;margin-top:16px}.menu-body{padding:15px 0}.menu-primary{min-height:50px}.menu-players{margin-top:16px}.menu-screen{padding-top:23px;padding-bottom:20px}.bottom-hud{bottom:18px}.roll-button{min-height:55px}.roll-result{bottom:155px}.game-dialog{padding:24px}.character-art{max-height:210px}.character-grid{margin:16px 0}.players{top:87px}}@media(max-width:1000px){.location-name,.menu-footer-right{display:none}.island-caption{right:6%;bottom:14%}.players{min-width:250px;left:22px;top:92px}.game-screen{padding:22px}.player-card .portrait{width:40px;height:40px}.player-label b{font-size:12px;letter-spacing:.5px;margin-left:4px}.bottom-left{left:22px}.menu-body{max-width:420px}.game-screen>[data-action=full]{right:22px;bottom:25px}}@media(max-width:700px){.menu-screen{padding:23px 24px;background:linear-gradient(90deg,#10232eea 0,#10232e99 55%,transparent),linear-gradient(0deg,#10232eaa,transparent 70%)}.menu-screen header .edition{display:none}.menu-body{padding:20px 0}.eyebrow{font-size:12px}h1{font-size:65px;letter-spacing:-2px;margin:22px 0 32px}h1 em{font-size:12px;letter-spacing:10px}.menu-primary{min-width:245px}.island-caption{display:none}.menu-players{margin-top:26px}.menu-screen footer{font-size:12px;letter-spacing:1px}.game-screen{padding:16px}.brand.compact>span:nth-child(2){display:none}.compact .brand-mark{width:37px;height:37px}.round{gap:7px;padding:4px 10px}.round span{font-size:12px}.round strong{font-size:24px}.toolbar{gap:5px}.toolbar .icon-button{width:36px;height:36px}.players{left:14px;right:14px;top:73px;width:auto;min-width:0;max-width:none;flex-direction:row;gap:8px}.player-card{padding:9px;gap:8px;width:100%;min-width:0;border-radius:7px}.player-card .portrait{width:35px;height:35px}.player-details strong{font-size:12px;max-width:135px}.player-label{font-size:12px;letter-spacing:1px}.player-label b{display:none}.player-track{margin-top:6px}.position strong{font-size:20px}.position{min-width:21px}.position span{font-size:12px}.view-pill{top:148px;font-size:12px;padding:6px 10px}.bottom-hud{bottom:max(20px,env(safe-area-inset-bottom));min-width:0;width:90%;gap:10px}.roll-button{width:285px;min-width:0;min-height:58px;font-size:15px;padding:14px 17px}.roll-button kbd{display:none}.turn-status{font-size:12px}.bottom-hint{font-size:12px;max-width:100%;text-overflow:ellipsis;overflow:hidden}.bottom-left{display:none}.game-screen>[data-action=full]{display:none}.roll-result{bottom:169px;padding:12px 17px;gap:10px}.game-dialog{padding:23px 20px;max-height:calc(100dvh - 26px);width:calc(100vw - 28px);border-radius:12px}.dialog-header h2{font-size:29px}.character-grid{gap:10px}.character-choice{padding:0 10px 12px}.character-art{max-height:240px}.character-choice input{font-size:16px;padding:9px}.rules-note p{font-size:12px}.setting{font-size:13px}.settings-footer .text-button{font-size:12px}.explore-bottom{bottom:24px;left:20px;right:20px;flex-direction:column;align-items:stretch;gap:18px}.map-guide,.map-guide small{font-size:12px}.explore-bottom .primary{width:100%}.map-title strong,.map-title .eyebrow{font-size:12px;letter-spacing:1px}.glass-button{padding:9px 11px;font-size:12px;gap:7px}.game-screen>header{gap:10px}.tile-info{bottom:190px;padding:12px;gap:12px;min-width:280px}.tile-info strong{font-size:12px}.tile-info div>span{font-size:12px}.settings-section{margin-top:18px}.setting{min-height:44px}}@media(max-width:390px){h1{font-size:58px}.brand{font-size:12px}.menu-players{margin-top:20px}.game-dialog{padding:20px 16px}.player-card{padding:8px 6px;gap:6px}.player-card .portrait{width:29px;height:29px}.player-details strong{font-size:12px}.position strong{font-size:18px}.character-art{max-height:190px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}@media(max-width:1000px){.player-label b{display:none}}@media(max-width:700px){.player-label{font-size:12px;letter-spacing:0}.player-card .portrait{display:none}.player-details strong{font-size:14px}.bottom-hint{font-size:12px}.menu-screen footer{letter-spacing:.4px}}.tile-art{width:76px;height:76px;flex:none;background-image:url(/assets/tile-stories-v4.webp);background-size:300% 300%;border-radius:8px;border:1px solid #e5bd7955;box-shadow:0 4px 14px #091a2633}.player-condition{display:block;min-height:0;font-size:12px;line-height:1.35;color:#d9bf92;margin-top:4px}.player-condition:empty{display:none}.player-1 .player-condition{color:#add7cd}.player-label{font-size:12px;letter-spacing:.7px}.player-label b{display:none}.player-card.active .player-label{color:var(--gold)}.player-card.active.player-1 .player-label{color:var(--teal)}.performance-hud{position:fixed;right:33px;bottom:89px;font-size:12px;letter-spacing:.5px;color:#bdcfc7;background:#10262f90;padding:6px 10px;border-radius:5px;font-variant-numeric:tabular-nums}.performance-hud[hidden]{display:none}#fps-value{font-weight:700;color:#e1d1af}#graphics-warning{position:fixed;z-index:30;left:50%;top:50%;transform:translate(-50%,-50%);width:min(390px,calc(100vw - 32px));display:flex;flex-direction:column;gap:12px;padding:25px;color:#f2eddf;background:#142c35;border:1px solid #efbe80;border-radius:12px;box-shadow:0 25px 90px #0009;font-size:14px;line-height:1.5;text-align:center}#graphics-warning strong{font-size:18px}#graphics-warning button{background:#efbe80;color:#20312f;padding:12px 18px;border-radius:7px;font-weight:700}.event-banner{position:absolute;right:30px;top:41%;width:340px;display:flex;align-items:center;gap:14px;padding:15px;background:#142e37f5;border:1px solid #e9c58677;border-radius:11px;box-shadow:0 15px 60px #07141c66}.event-banner .eyebrow{font-size:12px;letter-spacing:1px}.event-banner strong{display:block;font-size:17px;margin:6px 0;color:#f4d6a2}.event-banner p{font-size:13px;line-height:1.5;margin:0;color:#bfcfc4}.event-banner .tile-art{width:89px;height:89px}.tile-info{min-width:380px;max-width:490px;bottom:178px;align-items:flex-start;padding:16px}.tile-info .tile-art{width:100px;height:100px}.tile-info p{font-size:13px;line-height:1.55;color:#c5d4c7;margin:7px 0 0}.tile-info strong{font-size:16px;margin-top:5px}.tile-info .tile-kicker{font-size:12px;letter-spacing:1px;color:#e1bb84}.tile-info>.icon-button{position:absolute;right:7px;top:6px}.tile-info>div:nth-child(2){padding-right:14px}.rules-dialog{width:min(680px,calc(100vw - 32px))}.rule-list{display:flex;flex-direction:column;margin:22px 0;gap:13px}.rule-row{display:flex;gap:16px;align-items:center;border-bottom:1px solid #b8c7b724;padding-bottom:13px}.rule-row .tile-art{width:66px;height:66px}.rule-row strong{font-size:15px;color:#ebd0a4}.rule-row p{font-size:13px;line-height:1.6;color:#aec4bb;margin:5px 0 0}.rules-footnote{font-size:12px;line-height:1.7;color:#9fb7ae}.rules-dialog .wide{margin-top:16px}.rescue-note{font-size:14px;line-height:1.8;background:#e7bb7310;border-left:2px solid #d2ae71;padding:16px;margin-top:23px;color:#c1d2c9}.rescue-note b{color:#f0d2a0}.map-zoom{position:absolute;right:32px;bottom:154px;display:flex;flex-direction:column;gap:7px}.map-zoom button{font-size:23px;width:38px;height:38px;background:#112b34d9;border:1px solid #c5bc9650;border-radius:6px}@media(max-width:1100px){.event-banner{right:22px;width:300px;top:38%}.event-banner .tile-art{width:70px;height:70px}.event-banner strong{font-size:15px}.menu-screen footer{font-size:12px;letter-spacing:.5px}}@media(max-width:700px){.performance-hud{right:16px;bottom:155px;padding:4px 7px}.event-banner{right:auto;left:50%;transform:translate(-50%);top:197px;width:calc(100% - 36px);max-width:380px;padding:12px}.event-banner .tile-art{width:64px;height:64px}.event-banner p{font-size:12px}.event-banner strong{font-size:14px;margin:4px 0}.event-banner .eyebrow{font-size:12px}.tile-info{min-width:0;width:calc(100% - 32px);bottom:178px;gap:12px;padding:13px}.tile-info .tile-art{width:78px;height:78px}.tile-info strong{font-size:14px}.tile-info p,.tile-info .tile-kicker,.player-condition{font-size:12px}.player-card{align-items:flex-start}.player-details strong{max-width:150px}.players{align-items:flex-start}.view-pill{top:174px}.toolbar .icon-button{width:32px;height:36px}.toolbar{gap:4px}.game-location{max-width:37px}.round{left:36%;font-size:12px}.rule-row{gap:12px}.rule-row .tile-art{width:54px;height:54px}.rule-row strong{font-size:14px}.rule-row p{font-size:12px}.map-zoom{right:16px;bottom:199px}.menu-body{padding-top:12px;padding-bottom:12px}.menu-players{margin-top:18px}.menu-actions{gap:1px}.menu-screen footer{font-size:12px;letter-spacing:0}.menu-footer-right{display:none}}@media(max-height:750px){.menu-body h1{font-size:58px;margin:15px 0 23px}.menu-primary{min-height:48px}.menu-players{margin-top:14px}.menu-screen .text-button{min-height:37px}.menu-screen{padding-top:22px;padding-bottom:20px}}.solo-choices .character-choice{position:relative;cursor:pointer;padding-bottom:16px;transition:border-color .2s,background .2s}.solo-choices .character-choice:has(input:checked){border-color:var(--gold);background:linear-gradient(150deg,#56493688,#182f36);box-shadow:inset 0 0 0 1px #efbe8055}.solo-choices .choice-1:has(input:checked){border-color:var(--teal);background:linear-gradient(150deg,#355c5888,#182f36)}.solo-choices input[type=radio]{position:absolute;top:15px;left:15px;z-index:1;width:20px;height:20px;accent-color:var(--gold);margin:0;padding:0}.solo-choices .character-number{font-size:14px;letter-spacing:.3px}.choice-state{display:flex;align-items:center;justify-content:center;gap:6px;min-height:24px;font-size:13px;color:var(--gold);visibility:hidden}.choice-state svg{width:15px;height:15px}.character-choice:has(input:checked) .choice-state{visibility:visible}.solo-name{display:flex;flex-direction:column;gap:9px;font-size:14px;color:#dae1d9}.solo-name input{border:1px solid #9abeb638;background:#10262e;border-radius:7px;padding:12px 14px;color:#f1eddd;width:100%;font-size:16px}.players .player-card:only-child{width:100%}.players .player-card:only-child .portrait{display:block}@media(max-width:700px){.players{max-width:310px}.view-pill{top:157px}.solo-choices .character-art{max-height:200px}.solo-choices .character-number{font-size:14px}.solo-choices .character-choice{padding-bottom:10px}.solo-name,.rules-note p{font-size:14px}}.portrait.solo-portrait img{width:130%;height:auto;left:-15%;top:-3%;max-width:none}.portrait.solo-portrait{background:#213b43}.solo-hero-preview{display:flex;align-items:center;gap:25px;margin:22px 0}.solo-hero-preview img{width:44%;max-width:230px;border-radius:14px;border:1px solid #d9c58a55}.solo-hero-preview strong{display:block;font-size:22px;margin:13px 0 8px;line-height:1.3}.solo-hero-preview p{font-size:14px;color:#b5c5bd;line-height:1.6}.storm-caption{position:absolute;top:21%;left:50%;transform:translate(-50%);text-align:center;text-shadow:0 3px 25px #000,0 0 40px #b1783077;pointer-events:none;color:#ffe1a1}.storm-caption>span{font-size:13px;letter-spacing:4px}.storm-caption strong{font:400 clamp(32px,4vw,58px)/1.2 Georgia,serif;display:block;margin:10px 0}.storm-caption small{font-size:14px;letter-spacing:2px;color:#d4dce0}.roll-result.golden-result{border:1px solid #f7d270;background:linear-gradient(140deg,#594122ee,#1f292bee);box-shadow:0 0 55px #ffc34b44,0 10px 40px #0008;padding-top:30px;bottom:185px}.golden-result .die-face{background:linear-gradient(135deg,#fff2b4,#dfaa35);box-shadow:0 3px #99701f;color:#473014}.golden-result .total strong{color:#ffe79a}.golden-result-title{position:absolute;top:9px;left:0;width:100%;text-align:center;font-size:12px;font-weight:800;letter-spacing:2px;color:#ffe5a4}.golden-result .total span{font-size:11px}.last-golden{display:flex;align-items:center;gap:7px;color:#f4d58e;margin-top:5px}.last-golden svg{width:18px;height:18px}@media(max-width:700px){.solo-hero-preview{gap:16px}.solo-hero-preview strong{font-size:18px}.solo-hero-preview .eyebrow{font-size:12px;letter-spacing:1px}.storm-caption{top:24%;width:95%}.storm-caption strong{font-size:34px}.storm-caption small{font-size:12px}.roll-result.golden-result{bottom:170px}.golden-result .total span{font-size:11px}}.location-art{display:block;background-image:url(/assets/location-atlas.webp);background-size:200% 200%;aspect-ratio:1;border-radius:10px;background-color:#18333e}.location-intro,.location-description p{font-size:16px;line-height:1.65;color:#c1d1ca}.locations-dialog{width:min(1000px,calc(100vw - 32px))}.location-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:25px 0 20px}.location-card{display:flex;flex-direction:column;text-align:left;padding:0;overflow:hidden;border:1px solid #b4c8c332;background:#142a33;border-radius:12px;color:#eee6d6;transition:border-color .2s,transform .2s}.location-card:hover,.location-card:focus-visible{border-color:var(--location-color);transform:translateY(-3px);outline:2px solid transparent}.location-card:focus-visible{outline-color:var(--location-color);outline-offset:3px}.location-card .location-art{width:100%;border-radius:0}.location-card-body{display:flex;flex-direction:column;align-items:flex-start;gap:9px;padding:16px;flex:1;width:100%}.location-card-body small{font-size:14px;color:var(--location-color);line-height:1.4}.location-card-body strong{font:500 21px/1.3 Georgia,serif;overflow-wrap:anywhere}.location-card-body .location-status{margin-top:auto;padding-top:13px}.location-status{font-size:14px;color:#a4b7b4;line-height:1.4}.location-status.available{color:#eed19a}.location-stage-note{padding:15px 18px;border-left:2px solid #b8aa7b;background:#d9bd7410;color:#b8c9c2;font-size:14px;line-height:1.65}.location-dialog{width:min(790px,calc(100vw - 32px))}.location-dialog .dialog-header h2{font-size:clamp(25px,3vw,36px)}.location-detail{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:25px;align-items:start;margin-top:24px}.location-detail>.location-art{width:100%;border:1px solid #e2c38144}.location-range{display:inline-block;border:1px solid #b8c6c43b;border-radius:5px;padding:6px 10px;color:var(--location-color);font-size:14px;line-height:1.4}.location-description p{margin:13px 0}.location-description .future-event{font-size:14px;color:#a5bbb3;border-top:1px solid #c0ccbf25;padding-top:13px}.location-actions{display:flex;gap:16px;align-items:center;justify-content:space-between;margin-top:24px}.location-actions .primary{font-size:15px;min-height:48px;gap:9px}.location-actions svg{width:19px;height:19px}.journey-panel{position:absolute;top:198px;left:33px;width:300px;border-left:2px solid var(--region);padding:13px 15px;background:linear-gradient(110deg,#10262eee,#10262e9c);border-radius:0 8px 8px 0;pointer-events:auto}.journey-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.journey-heading>span{font-size:12px;letter-spacing:1.2px;color:#98b1ac}.journey-heading button{display:flex;align-items:center;gap:6px;background:transparent;color:#d4c6a6;font-size:14px;padding:3px}.journey-heading svg{width:16px;height:16px}.journey-panel>strong{display:block;font-size:16px;font-weight:500;line-height:1.4;color:#e1dfcd;margin:7px 0 11px}.journey-route{display:flex;gap:4px;height:4px;margin:12px 0}.journey-route i{background:var(--segment);opacity:.24;border-radius:2px}.journey-route i.current{opacity:1;box-shadow:0 0 8px #f0d88a33}.journey-visits{display:flex;justify-content:space-between;gap:8px;font-size:13px;color:#dac9a8;margin:9px 0}.journey-visits span{color:#92aaa2;font-size:12px}.library-invitation,.nearby-location{display:flex;align-items:center;justify-content:space-between;width:100%;gap:10px;color:#f1d29a;font-size:14px;line-height:1.4;text-align:left;padding:10px 0 2px;background:transparent;border-top:1px solid #e4c4882b}.library-invitation small{display:block;font-size:12px;line-height:1.5;color:#b3c4bc;margin-top:2px}.library-invitation svg,.nearby-location svg{width:18px;height:18px;flex:none}.library-invitation.seen{color:#b6c5bf}.nearby-location{color:var(--region);padding:10px 0 1px;margin-top:10px}.location-focus{position:absolute;top:100px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:18px;padding:11px 16px;background:#102a34eb;border:1px solid #d9bf8155;border-radius:8px;max-width:calc(100% - 32px);font-size:14px;pointer-events:auto}.location-focus>span{color:#f0d5a1}.location-focus button{display:flex;align-items:center;gap:7px;background:transparent;color:#cadbd2;font-size:14px;white-space:nowrap}.location-focus svg{width:17px;height:17px}.view-pill[hidden]{display:none}.location-inline{display:flex;align-items:center;gap:6px;margin-top:12px;background:transparent;color:#f0d2a0;font-size:14px;padding:0}.location-inline svg{width:16px;height:16px}.tile-info .tile-visits{color:#e0c695;font-size:14px}.tile-info .location-art{background-size:200% 200%}.tile-info p{font-size:14px}@media(max-width:1100px){.journey-panel{left:22px;top:190px;width:250px}.location-card-body{padding:12px}.location-card-body strong{font-size:19px}}@media(max-width:780px){.location-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.locations-dialog{width:min(620px,calc(100vw - 28px))}.location-card .location-art{aspect-ratio:1}.location-card-body strong{font-size:21px}}@media(max-width:700px){.journey-panel{top:152px;left:14px;width:min(310px,calc(100% - 28px));padding:9px 12px;background:#10262edb}.journey-heading>span{font-size:12px}.journey-panel>strong{font-size:14px;margin:3px 0 5px}.journey-route{margin:7px 0;height:3px}.journey-visits{display:none}.library-invitation{padding-top:7px;font-size:14px}.library-invitation small{font-size:12px}.library-invitation.seen small{display:none}.nearby-location{font-size:14px;padding-top:7px;margin-top:7px}.view-pill{display:none}.location-focus{top:auto;bottom:150px;gap:12px;padding:10px 12px;font-size:14px;width:max-content}.location-detail{grid-template-columns:1fr;gap:17px}.location-detail>.location-art{width:min(100%,280px);justify-self:center}.location-actions{flex-wrap:wrap;gap:10px}.location-actions .primary,.location-actions .text-button{width:100%;justify-content:center}.location-intro{font-size:15px}.location-card-body{padding:11px}.location-card-body strong{font-size:18px}.location-card-body small,.location-status,.location-stage-note{font-size:14px}.location-grid{gap:10px}.location-dialog .dialog-header .eyebrow{letter-spacing:1px;font-size:12px}}@media(max-height:620px)and (min-width:701px){.journey-panel{top:175px}.journey-route,.journey-visits{display:none}.journey-panel>strong{margin-bottom:7px}.library-invitation{padding-top:5px}.location-focus{top:84px}}.location-card{gap:0;justify-content:flex-start}.location-card span,.location-card-body strong{white-space:normal}.roll-result.golden-result .die-face.golden-face{background:linear-gradient(145deg,#fff0a6,#ddb04a);color:#523618;box-shadow:0 3px #956520,0 0 23px #ffd56188}.roll-result.golden-result .die-face:not(.golden-face){background:#f4dfbd}.roll-result.golden-result{flex-direction:column;gap:12px;min-width:265px;padding:34px 20px 18px}.golden-result-hint{font-size:12px;line-height:1.4;text-align:center;color:#ffedbe;white-space:normal}.graphics-note{font-size:12px;line-height:1.5;overflow-wrap:anywhere;color:#aebfbd;border-top:1px solid var(--line);padding-top:12px;margin-top:20px}.golden-active{display:inline-flex;align-self:flex-start;padding:5px 8px;border:1px solid #f4d58e77;border-radius:6px;background:#241c18c7;color:#ffe1a1;font-size:12px;font-weight:700}.challenge-dialog{width:min(620px,calc(100vw - 28px))}.challenge-note{font-size:14px;line-height:1.65;color:#b8cbc6}.challenge-clock{margin:22px 0;color:#9de2c4;text-align:center;font-size:clamp(56px,10vw,82px);font-family:Georgia,serif;line-height:1.1;font-variant-numeric:tabular-nums}.challenge-clock small{display:block;margin-top:8px;font-family:Arial,sans-serif;font-size:14px;letter-spacing:3px;color:#b8cbc6}.challenge-actions{display:flex;gap:12px;flex-direction:column;margin-top:22px}.challenge-actions button{white-space:normal;text-align:center;justify-content:center}.gate-attempts{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:24px 0;color:#dfc5ff}.gate-attempts i{width:18px;height:18px;border:1px solid #907e9e;border-radius:50%}.gate-attempts i.remaining{background:#ad8bd9;box-shadow:0 0 15px #ad8bd940}.gate-attempts strong{display:block;flex-basis:100%;margin-top:9px;font-size:16px}.event-cta{display:flex;justify-content:flex-start;width:100%;gap:10px;padding:12px 0 0;border-top:1px solid #b7c7c32b;margin-top:12px;font-size:14px;text-align:left;color:#e8cfb0}.event-cta span{white-space:normal}.event-cta small{display:block;margin-top:4px;font-size:12px;color:#b6cbc5}.event-cta svg{width:20px;height:20px}.forest-cta{color:#a5e3c3}.portal-state{margin-top:10px;font-size:14px;line-height:1.4;color:#a3e4cf}.curse-active{color:#eea9c1}.quiz-clock{text-align:center;font-size:48px;font-variant-numeric:tabular-nums;color:#efd097;margin:14px}.quiz-answers{display:grid;gap:10px}.quiz-answers button{justify-content:flex-start;text-align:left;white-space:normal;min-height:50px;font-size:16px}.event-flash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none;animation:event-fade .65s ease-out forwards}.death-flash{background:radial-gradient(ellipse at center,transparent 15%,#6e164caa)}.portal-flash{background:radial-gradient(ellipse at center,#aaf9d980,transparent 72%)}@keyframes event-fade{0%{opacity:.8}to{opacity:0}}@media(max-width:700px){.journey-panel{max-height:calc(100dvh - 340px);overflow:auto;pointer-events:auto}.event-cta{padding-top:8px;margin-top:8px}.portal-state{font-size:12px}.challenge-actions .text-button,.challenge-note{font-size:14px}}@media(prefers-reduced-motion:reduce){.event-flash{display:none}}.quiz-rewards{display:grid;gap:8px;margin:22px 0;font-size:16px;color:#ecd29f}.quiz-progress{width:100%;height:5px;accent-color:#d6b570;margin:8px 0 15px}.quiz-score{font-size:64px;text-align:center;margin:18px 0;color:#f0d29b;font-variant-numeric:tabular-nums}.quiz-score small{font-size:24px;color:#a9bfb6}.potion-reward{text-align:center;color:#a8f1d0;margin:22px}.potion-reward svg{width:64px;height:64px;filter:drop-shadow(0 0 12px #9bf5c355)}.potion-inventory{display:flex;gap:10px;align-items:center;margin-top:12px;padding:10px 0;border-top:1px solid #a5d7be33;color:#b0eed3;font-size:14px}.potion-inventory small{display:block;color:#a6bdb5;font-size:12px;margin-top:4px}.potion-symbol svg{width:28px;height:28px}.content-template{display:flex;text-decoration:none;margin:18px 0;justify-content:center;font-size:16px;color:#ecd29f}.content-upload{display:grid;gap:12px;font-size:16px;color:#e3d5b6;margin:20px 0}.content-upload input{width:100%;font-size:14px}.content-upload input::file-selector-button{border:1px solid #91b09e66;background:#14342c;color:#d4eade;padding:10px;margin-right:10px;border-radius:7px}.content-dialog [role=status]{font-size:14px;line-height:1.6;color:#b1dec4}.quiz-dialog .dialog-intro{min-height:52px}.reroll-dialog .primary{display:flex;align-items:center;justify-content:center;gap:10px}.quiz-rewards span{white-space:normal}.roll-face-label{font-size:12px;letter-spacing:1px;color:#d7c6a1}.roll-result:has(.move-explanation){flex-wrap:wrap;max-width:min(560px,calc(100vw - 28px))}.move-explanation{flex-basis:100%;white-space:normal;text-align:center;font-size:14px;line-height:1.5;color:#efd5a4}.total span{white-space:nowrap}@media(max-width:700px){.move-explanation{font-size:12px;max-width:300px}.roll-face-label{font-size:12px}}.quiz-answers button.correct-answer,.quiz-answers button.correct-answer:disabled{background:#17543c;border:2px solid #74dba2;color:#effff4;opacity:1;cursor:default}.quiz-answers button.wrong-answer,.quiz-answers button.wrong-answer:disabled{background:#632d36;border:2px solid #ef8994;color:#fff0f2;opacity:1;cursor:default}.quiz-feedback{font-size:16px;line-height:1.5;margin:15px 0;color:#efb3b3}.quiz-feedback.correct{color:#91e8b5}.obs-timer-link{margin-top:24px;padding-top:18px;border-top:1px solid #b9caba33}.obs-timer-link strong{color:#a2debc}.obs-timer-link p{color:#b4c7c0;font-size:14px;line-height:1.6}.obs-timer-link input{width:100%;border:1px solid #9abdaf55;border-radius:6px;background:#0c2029;color:#e2eddf;padding:10px;font-size:13px}.obs-timer-link .challenge-actions{margin-top:12px;display:flex;flex-wrap:wrap;gap:10px}.obs-timer-link a{display:inline-flex;align-items:center;text-decoration:none}.obs-timer-link [data-obs-status]{display:block;margin-top:8px;color:#d5e9d9;font-size:14px}
.forecast{display:flex;align-items:center;gap:5px;pointer-events:none;flex-wrap:wrap;justify-content:center}.forecast>span{display:flex;align-items:center;gap:3px;padding:5px 8px;border-radius:7px;background:#0f262de6;border:1px solid #c9d6c624;font-size:12px;font-weight:700;color:#e9e4d2;font-variant-numeric:tabular-nums;box-shadow:0 4px 14px #0004}.forecast>span i{font-style:normal;opacity:.5;font-weight:500}.forecast>span em{font-style:normal;font-size:10px;margin-left:2px;color:#ffe3a0}.forecast .forecast-label{background:none;border:0;box-shadow:none;font-size:10px;letter-spacing:1.6px;color:#a7bab4;padding:0 4px 0 0}.forecast .fc-double{border-color:#ffd98a77;color:#ffe3a0}.forecast .fc-death{border-color:#e078c4cc;background:#4d1a3cf0;color:#ffd0f0}.forecast .fc-win{border-color:#9be6a8cc;background:#1d4a2cf0;color:#d2ffd9}.forecast .fc-portal{border-color:#b49cffaa;color:#e1d6ff}.has-forecast .roll-result{bottom:200px}.forecast-label{text-shadow:0 1px 6px #000c}.game-dialog{scrollbar-width:thin;scrollbar-color:#ffffff30 transparent}
.journal-dialog{width:min(620px,calc(100vw - 32px))}.journal-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0}.journal-stats div{background:#ffffff09;border:1px solid #ffffff10;border-radius:10px;padding:10px 6px;text-align:center}.journal-stats strong{display:block;font-size:24px;color:#ffe2b0;font-variant-numeric:tabular-nums}.journal-stats span{font-size:11px;color:#a9bbb6}.journal-bars{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}.jb-row{display:grid;grid-template-columns:30px 1fr 92px;align-items:center;gap:12px;font-size:13px;font-variant-numeric:tabular-nums;color:#dfe6df}.jb-bar{position:relative;height:12px;border-radius:6px;background:#ffffff10}.jb-bar i{position:absolute;left:0;top:0;bottom:0;border-radius:6px;background:linear-gradient(90deg,#c99a50,#ffd98a);transition:width .4s}.jb-bar b,.jb-legend b{position:absolute;top:-4px;bottom:-4px;width:2px;margin-left:-1px;background:#9fe8d2}.jb-legend{font-size:11px;color:#a9bbb6;display:flex;align-items:center;gap:8px}.jb-legend b{position:static;display:inline-block;height:12px}.jb-face.die-face{width:26px;height:26px}.jb-face.small.die-face{width:20px;height:20px}.journal-log{display:flex;flex-direction:column;gap:5px;max-height:240px;overflow:auto;margin-bottom:18px}.jl-row{display:grid;grid-template-columns:64px 24px 92px 1fr;align-items:center;gap:10px;font-size:13px;padding:6px 10px;border-radius:8px;background:#ffffff07;color:#d6ded8;font-variant-numeric:tabular-nums}.jl-row em{font-style:normal;font-size:12px;color:#a9bbb6}.jl-death{background:#4d1a3c88}.jl-death em{color:#ffc6ec}.jl-double em{color:#ffe3a0}.jl-win{background:#1d4a2c88}
@media(max-width:700px){.forecast>span{padding:4px 6px;font-size:11px}.forecast .forecast-label{width:100%;text-align:center;padding:0}.has-forecast .roll-result{bottom:222px}.journal-stats{grid-template-columns:repeat(2,1fr)}.jl-row{grid-template-columns:54px 22px 1fr}.jl-row em{grid-column:1/-1}}
.jb-face.die-face{padding:5px;gap:2px;box-shadow:0 2px #947f60}.jb-face.small.die-face{padding:4px;gap:1px}
.settings-section .obs-timer-link{margin-top:0;padding-top:0;border-top:0}.obs-timer-link .challenge-actions>*{flex:1 1 auto;justify-content:center}
.tip-card{margin-top:10px;padding:10px 12px;border-radius:9px;background:#ffffff08;border:1px solid #9fe8d22e;border-left:3px solid #9fe8d2}.tip-card span{font-size:10px;letter-spacing:1.8px;font-weight:800;color:#9fe8d2}.tip-card p{margin:4px 0 0;font-size:12.5px;line-height:1.5;color:#dbe6df}.tip-card button{margin-top:7px;font-size:12px;font-weight:700;color:#ffe2b0;gap:6px}.tip-card button svg{width:15px;height:15px}.tip-card.hot{border-color:#ffd98a55;border-left-color:#ffd98a;background:#ffd98a0d}.tip-card.hot span{color:#ffd98a}
.journey-panel{max-height:calc(100dvh - 300px);overflow:auto;scrollbar-width:thin;scrollbar-color:#ffffff30 transparent}
.settings-section .obs-timer-link>strong{display:none}.obs-timer-link a.glass-button{color:inherit}
.m-screen{position:relative;height:100%;display:flex;align-items:center;padding:0 5vw;background:linear-gradient(90deg,#0c1d26eb 0,#0c1d26b0 28%,transparent 56%)}.m-card{width:min(360px,100%);display:flex;flex-direction:column;gap:12px;pointer-events:auto}.m-logo{display:flex;align-items:center;gap:15px;margin-bottom:20px}.m-mark{width:54px;height:54px;flex:none;display:grid;place-items:center;border-radius:15px;color:var(--gold);background:#efbe8012;border:1px solid #efbe8055}.m-mark svg{width:28px;height:28px;transform:rotate(-12deg)}.m-logo h1{margin:0;font-family:Prata,Georgia,serif;font-weight:400;font-size:40px;line-height:1.05;color:#f6eedc;letter-spacing:-.5px}.m-logo small{display:block;margin-top:7px;font-size:11px;letter-spacing:2.6px;text-transform:uppercase;color:var(--gold)}.m-play{min-height:58px;justify-content:flex-start;padding:0 22px;font-size:16px;font-weight:800;border-radius:12px}.m-play svg{fill:currentColor;stroke-width:1}.m-link{justify-content:flex-start;padding:4px 2px;font-size:14px;font-weight:600;color:#c8d4cd}.m-link svg{width:17px;height:17px}.m-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:6px}.m-nav button{flex-direction:column;gap:8px;padding:13px 4px;border-radius:12px;background:#10262ed9;border:1px solid #c9d6c61f;font-size:12px;font-weight:600;color:#d6dfd8}.m-nav button svg{width:21px;height:21px;color:var(--gold)}.m-nav button:hover{background:#18343de6;border-color:#efbe8066}.m-version{position:absolute;left:5vw;bottom:22px;font-size:11px;letter-spacing:1.5px;color:#7f9794}
.h-screen{position:relative;height:100%;padding:0}.h-side{position:absolute;top:20px;left:20px;width:290px;display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:14px;background:#0f242be0;border:1px solid #c9d6c61c;border-top:3px solid var(--region);box-shadow:0 10px 30px #0004;pointer-events:auto;max-height:calc(100dvh - 220px);overflow:auto;scrollbar-width:thin;scrollbar-color:#ffffff30 transparent}.h-player{display:flex;align-items:center;gap:12px}.h-player .portrait{width:44px;height:44px}.h-who{flex:1;min-width:0}.h-who strong{display:block;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.h-who span{display:block;font-size:12px;color:#a9bbb6;margin-top:2px}.h-pos{text-align:right}.h-pos strong{font-family:Prata,Georgia,serif;font-weight:400;font-size:30px;color:#f3d8a8;line-height:1}.h-pos small{display:block;font-size:11px;color:#8ea5a1;margin-top:2px}.h-track{height:4px;border-radius:4px;background:#ffffff14;overflow:hidden}.h-track i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--region));border-radius:4px;transition:width .5s}.h-chips{display:flex;flex-wrap:wrap;gap:6px}.h-chips span{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:999px;font-size:11.5px;font-weight:700;background:#ffffff0e;color:#cfdad4}.h-chips svg{width:13px;height:13px}.h-chips .c-good{background:#9fe8d21c;color:#bff3e2}.h-chips .c-bad{background:#e078c422;color:#ffc6ec}.h-chips .c-gold{background:#ffd98a20;color:#ffe3a0}.h-actions{display:flex;flex-direction:column;gap:6px}.h-actions:empty{display:none}.h-act{justify-content:flex-start;gap:10px;width:100%;padding:9px 11px;border-radius:10px;background:#ffffff08;border:1px solid #ffffff12;text-align:left;font-size:13px;font-weight:700;color:#e9e4d2}.h-act span{white-space:normal}.h-act svg{width:18px;height:18px;color:var(--gold)}.h-act small{display:block;font-size:11.5px;font-weight:500;color:#a9bbb6;margin-top:2px}.h-act.hot{border-color:#ffd98a55;background:#ffd98a12}.h-act:hover{background:#ffffff14}.h-actions .tip-card{margin-top:2px}.h-actions .tip-card p{margin:0}.h-tools{position:absolute;top:20px;right:20px;display:flex;gap:6px;pointer-events:auto}.h-tools .icon-button{width:42px;height:42px;border-radius:10px;background:#0f242be0;border:1px solid #c9d6c61c;color:#d6dfd8}.h-tools .icon-button:hover{border-color:#efbe8066}.h-back{position:absolute;top:20px;left:20px;padding:10px 15px;border-radius:10px;background:#0f242be0;border:1px solid #c9d6c61c;font-size:13px;font-weight:700;pointer-events:auto}.x-bottom{position:absolute;bottom:26px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:12px}.x-bottom .primary{min-width:240px;min-height:52px;border-radius:12px;font-weight:800}.x-guide{font-size:12px;color:#c3d0ca;text-shadow:0 1px 6px #000;white-space:nowrap}.h-screen .bottom-hud{bottom:22px;gap:10px}.h-screen .bottom-hint{text-shadow:0 1px 6px #000c}.h-screen .roll-result{bottom:150px}.h-screen.has-forecast .roll-result{bottom:186px}
.tile-pops{position:fixed;inset:0;pointer-events:none;z-index:3;overflow:hidden}.tile-pop{position:absolute;left:0;top:0;padding:6px 11px;border-radius:9px;font-size:13px;font-weight:700;white-space:nowrap;color:#f2eddf;background:#0f242bee;border:1px solid #ffffff2a;box-shadow:0 6px 18px #0007;animation:pop-in .3s ease-out;transition:opacity .4s}.tile-pop b{font-weight:800;margin-right:3px}.tile-pop.used{border-color:#ffd98a;color:#ffe9bd;background:#3a2c12f0}.tile-pop.skip{color:#b9c7c2}.tile-pop.skip b{text-decoration:line-through;text-decoration-thickness:2px;opacity:.85}.tile-pop.bad{border-color:#e078c4;background:#4d1a3cf0;color:#ffd0f0}.tile-pop.lucky{border-color:#9be6a8;background:#1d4a2cf0;color:#d2ffd9}.tile-pop.out{opacity:0}@keyframes pop-in{from{opacity:0;margin-top:12px}to{opacity:1;margin-top:0}}
.rules-list{display:grid;grid-template-columns:max-content 1fr;gap:9px 18px;margin:18px 0 22px;font-size:13.5px;line-height:1.5}.rules-list dt{font-weight:800;color:#ffe2b0;white-space:nowrap}.rules-list dd{margin:0;color:#cfdad4}
@media(max-width:700px){.m-screen{align-items:flex-end;padding:0 16px 56px;background:linear-gradient(0deg,#0c1d26f0 0,#0c1d26b0 45%,transparent 75%)}.m-logo h1{font-size:32px}.m-version{left:16px;bottom:18px}.h-side{top:62px;left:10px;width:calc(100% - 20px);max-height:32dvh;padding:10px}.h-tools{top:10px;right:10px}.h-tools .icon-button{width:38px;height:38px}.rules-list{grid-template-columns:1fr;gap:2px}.rules-list dd{margin-bottom:8px}}
.tile-pop{font-size:15px;padding:7px 13px;border-radius:10px}
.obs-link-mask{width:100%;justify-content:space-between;padding:10px 12px;border:1px dashed #9abdaf66;border-radius:6px;background:#0c2029;color:#8fa9a2;font-size:13px}.obs-link-mask span{letter-spacing:2px;overflow:hidden;white-space:nowrap}.obs-link-mask small{color:#a2debc;font-weight:700;font-size:12px;flex:none}.obs-link-mask:hover{border-color:#a2debc}
.obs-timer-link .challenge-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.golden-reveal{position:fixed;inset:0;z-index:4;display:grid;place-items:center;overflow:hidden;pointer-events:none;animation:gr-in .45s ease-out both}.golden-reveal::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,var(--grBg) 0,#06121a99 48%,#06121ad9 100%)}.golden-reveal::after{content:"";position:absolute;inset:0;background:#fff8e0;animation:gr-flash .5s ease-out forwards}.gr-rays{position:absolute;left:50%;top:50%;width:150vmax;height:150vmax;margin:-75vmax 0 0 -75vmax;background:repeating-conic-gradient(from 0deg,var(--grRay) 0 5deg,transparent 5deg 15deg);-webkit-mask-image:radial-gradient(circle,#000 0,#000 6%,transparent 40%);mask-image:radial-gradient(circle,#000 0,#000 6%,transparent 40%);animation:gr-spin 10s linear infinite,gr-in .8s ease-out both}.gr-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:12px;min-width:300px;padding:26px 48px 28px;border-radius:22px;background:linear-gradient(160deg,var(--grCard),#11232af5);border:1px solid var(--gr);box-shadow:0 0 90px var(--grGlow),0 24px 70px #000b,inset 0 1px #ffffff22;animation:gr-pop .75s cubic-bezier(.2,1.5,.4,1) both}.gr-kicker{font-size:12px;letter-spacing:5px;font-weight:800;color:var(--gr2)}.gr-card .die-face.gr-die{width:118px;height:118px;padding:21px;gap:9px;border-radius:20px;background:linear-gradient(145deg,#fff3b8,#e2ae3f);box-shadow:0 6px #9a6a1f,0 0 50px var(--grGlow);animation:gr-die 1s cubic-bezier(.2,1.35,.4,1) .08s both}.gr-card strong{font-family:Prata,Georgia,serif;font-weight:400;font-size:46px;line-height:1.1;color:var(--gr2);letter-spacing:1px;text-shadow:0 0 34px var(--grGlow);animation:gr-up .6s ease-out .35s both}.gr-card small{font-size:15px;font-weight:600;color:#ece6d3;animation:gr-up .6s ease-out .5s both}.gr-luck{--gr:#ffd36b;--gr2:#fff0c0;--grRay:#ffd36b38;--grGlow:#ffc34b77;--grBg:#ffc34b40;--grCard:#4a3512f5}.gr-neutral{--gr:#9fe8d2;--gr2:#dcfff4;--grRay:#9fe8d22e;--grGlow:#5fd3b266;--grBg:#5fd3b230;--grCard:#173b37f5}.gr-slow{--gr:#e078c4;--gr2:#ffd3f1;--grRay:#e078c42e;--grGlow:#c44fa066;--grBg:#c44fa033;--grCard:#3d1834f5}.golden-reveal.out{animation:gr-out .6s ease-in forwards}.golden-reveal.calm,.golden-reveal.calm *,.golden-reveal.calm::after{animation:none!important}.golden-reveal.calm::after{display:none}
@keyframes gr-spin{to{transform:rotate(360deg)}}@keyframes gr-in{from{opacity:0}}@keyframes gr-flash{from{opacity:.9}to{opacity:0}}@keyframes gr-pop{from{transform:scale(.35);opacity:0}to{transform:none;opacity:1}}@keyframes gr-die{from{transform:rotate(-220deg) scale(.15)}to{transform:none}}@keyframes gr-up{from{transform:translateY(14px);opacity:0}}@keyframes gr-out{to{opacity:0;transform:scale(1.05)}}
@media(max-width:700px){.gr-card{min-width:0;padding:22px 30px}.gr-card strong{font-size:34px}.gr-card .die-face.gr-die{width:92px;height:92px;padding:16px}}
