@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=DM+Sans:wght@400;450;500;600;650;700&display=swap');

:root{color-scheme:dark;--ink:#e7e9de;--muted:#9ba9a1;--dim:#6e8178;--gold:#d5bd83;--line:rgba(193,205,180,.16);--glass:rgba(7,20,18,.75);--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',system-ui,sans-serif}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#061210;color:var(--ink);font-family:var(--sans)}button,input,select{font:inherit}button{color:inherit;cursor:pointer}button:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:4px}button:disabled{cursor:default}#world{position:absolute;inset:0;width:100%;height:100%;display:block;outline:none;touch-action:none}#ui{position:absolute;inset:0;pointer-events:none;overflow:hidden}button,.interactive,dialog{pointer-events:auto}svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.top-shade{position:absolute;inset:0 0 auto;height:155px;background:linear-gradient(#06120ed9,transparent)}.bottom-shade{position:absolute;inset:auto 0 0;height:220px;background:linear-gradient(transparent,#06120ef0)}
.topbar{position:absolute;top:29px;left:34px;right:34px;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;align-items:center;gap:14px}.brand-mark{width:41px;height:45px;color:var(--gold)}.brand-name{font-family:var(--serif);font-size:32px;letter-spacing:.22em;line-height:1}.eyebrow{font-size:9px;font-weight:600;letter-spacing:.24em;line-height:1.5;text-transform:uppercase;color:var(--muted)}.brand .eyebrow{font-size:8px;letter-spacing:.18em;margin-top:8px}.region{position:absolute;left:50%;transform:translateX(-50%);text-align:center}.region .eyebrow{font-size:8px;letter-spacing:.3em;color:var(--gold)}.region-name{font-family:var(--serif);font-size:23px;letter-spacing:.07em;margin-top:4px}.region-rule{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:8px}.region-rule:before,.region-rule:after{content:'';display:block;width:45px;height:1px;background:linear-gradient(90deg,transparent,#bdba8666)}.region-rule:after{transform:rotate(180deg)}.region-rule span{width:3px;height:3px;transform:rotate(45deg);background:var(--gold)}.toolbar{display:flex;gap:7px;align-items:center}.icon-button{width:33px;height:33px;display:grid;place-items:center;border:1px solid transparent;background:rgba(8,20,16,.4);border-radius:4px;color:#adbbb0;transition:.18s}.icon-button:hover{border-color:var(--line);background:#152a23;color:#ece5cd}.icon-button svg{width:17px;height:17px}.fps{display:flex;gap:5px;align-items:baseline;font-size:10px;margin-right:12px;color:var(--muted);font-variant-numeric:tabular-nums}.fps strong{color:#d9e3d8;font-size:13px;font-weight:500}.fps i,.status-dot{display:inline-block;width:5px;height:5px;background:#87c6a0;border-radius:50%;box-shadow:0 0 8px #a5eb9d55;margin-right:5px}.panel{background:linear-gradient(125deg,rgba(14,30,24,.88),rgba(6,18,17,.69));border:1px solid var(--line);backdrop-filter:blur(14px);box-shadow:0 12px 35px #00000017;border-radius:3px}.field-notes{position:absolute;left:34px;top:135px;width:210px;padding:18px}.panel-label{display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}.micro-tag{font-size:7px;letter-spacing:.08em;border:1px solid var(--line);padding:3px 5px;color:var(--muted)}.field-notes h2{font-family:var(--serif);font-size:25px;line-height:1.1;font-weight:400;margin:14px 0 8px}.panel-description{font-size:10px;line-height:1.7;color:var(--muted);margin:0}.experiments{margin:17px 0 0;padding:0;list-style:none;border-top:1px solid var(--line)}.experiment{display:flex;gap:10px;padding-top:14px}.experiment-number{color:var(--dim);font-size:9px;font-variant-numeric:tabular-nums;padding-top:3px}.experiment strong{font-size:10px;font-weight:500;display:block;letter-spacing:.02em}.experiment p{font-size:9px;line-height:1.65;margin:4px 0 0;color:var(--muted)}.world-readout{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:12px;margin-top:17px;font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:var(--dim)}.world-readout span:last-child{color:#bfccba}.field-notes-toggle{display:none}
.inspector{position:absolute;right:34px;top:135px;width:233px;padding:18px;transition:opacity .2s,transform .2s}.inspector.collapsed{opacity:0;pointer-events:none;transform:translateX(20px)}.ability-heading{display:flex;align-items:center;gap:12px;margin-top:16px}.large-sigil{width:42px;height:42px;flex:none;color:var(--ability-color,#e6a66c);filter:drop-shadow(0 0 10px color-mix(in srgb,var(--ability-color,#e6a66c),transparent 60%));padding:5px;border:1px solid color-mix(in srgb,var(--ability-color,#e6a66c),transparent 70%);transform:rotate(0deg);border-radius:50%}.ability-name{font-family:var(--serif);font-size:27px;line-height:1;font-weight:500;margin:0 0 7px}.ability-element{font-size:8px;text-transform:uppercase;letter-spacing:.16em;color:var(--ability-color)}.ability-description{font-size:10px;line-height:1.8;color:var(--muted);margin:15px 0}.ability-stats{display:grid;grid-template-columns:1fr 1fr;border-block:1px solid var(--line);padding:12px 0;gap:12px}.ability-stat small{font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:var(--dim);display:block}.ability-stat strong{font-size:13px;font-weight:500;color:#dce2d7;display:block;margin-top:4px}.graph-label{font-size:8px;text-transform:uppercase;letter-spacing:.14em;color:var(--dim);margin-top:17px}.mechanism-chain{margin-top:12px;display:flex;flex-direction:column;align-items:flex-start;gap:0}.mechanism-node{font-size:9px;color:#c7d1c6;padding:5px 9px;border:1px solid var(--line);background:#182b2244;border-radius:2px;max-width:100%;overflow:hidden;text-overflow:ellipsis}.mechanism-connector{height:9px;width:1px;margin-left:13px;background:#7a967064}.inspector-foot{font-size:8px;color:var(--dim);line-height:1.6;margin-top:16px}.inspector-close{background:none;border:0;color:var(--dim);font-size:14px;line-height:1;padding:0 2px}.inspector-open{position:absolute;right:34px;top:135px;display:none}.inspector-open.visible{display:grid}
.reticle{position:absolute;left:50%;top:50%;width:5px;height:5px;border:1px solid #dfe3b65a;transform:rotate(45deg);opacity:.4}.interaction-log{position:absolute;left:35px;bottom:181px;width:270px;display:flex;flex-direction:column;gap:9px}.log-title{font-size:8px;letter-spacing:.18em;color:#85988a;margin-bottom:2px}.log-entry{font-size:10px;line-height:1.6;color:#ccd5c3;display:flex;gap:10px;text-shadow:0 1px 6px #000}.log-entry time{color:#75877b;font-size:8px;padding-top:2px;flex:none;font-variant-numeric:tabular-nums}.log-entry:first-of-type{color:#e2dab9}.toast{position:absolute;left:50%;top:24%;transform:translate(-50%,-8px);padding:10px 19px;border:1px solid #c6b77646;border-radius:3px;background:#091e18d6;backdrop-filter:blur(10px);font-size:11px;letter-spacing:.04em;max-width:70%;text-align:center;opacity:0;transition:opacity .2s,transform .2s}.toast.visible{opacity:1;transform:translate(-50%,0)}
.bottom-hud{position:absolute;left:50%;bottom:33px;transform:translateX(-50%);width:580px}.vitals{display:flex;gap:20px;align-items:center;justify-content:center;margin:0 auto 13px;width:450px}.vital{flex:1}.vital-head{display:flex;justify-content:space-between;font-size:8px;letter-spacing:.13em;color:#9cafa1;margin-bottom:6px}.vital-head span:last-child{font-variant-numeric:tabular-nums;letter-spacing:.04em}.vital-track{height:3px;background:#23372b;border-radius:2px;overflow:hidden}.vital-fill{height:100%;width:100%;background:linear-gradient(90deg,#668c66,#b9c28a);transition:width .15s}.vital.mana .vital-fill{background:linear-gradient(90deg,#4c959b,#a2d4cc)}.vital.mana .vital-track{background:#1a3637}.vital-divider{width:4px;height:4px;border:1px solid var(--gold);transform:rotate(45deg);margin-top:12px}.hotbar{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.ability-slot{position:relative;background:linear-gradient(145deg,#142b22dc,#081914ed);border:1px solid #9bab8033;border-radius:3px;min-height:89px;padding:12px 5px 10px;display:flex;align-items:center;flex-direction:column;gap:7px;overflow:hidden;transition:border-color .15s,background .15s,transform .15s}.ability-slot:hover{background:linear-gradient(145deg,#25392b,#0e241b);transform:translateY(-3px)}.ability-slot.selected{border-color:#c9ba80b3;background:linear-gradient(150deg,#354533ba,#12251aef);box-shadow:0 0 20px #d2c6880a,inset 0 1px #e6d79533}.ability-slot.selected:after{content:'';position:absolute;bottom:0;left:36%;width:28%;height:2px;background:#d9ca92;box-shadow:0 0 9px #e8cb8688}.slot-key{position:absolute;top:7px;left:9px;font-size:9px;color:#8f9f8b;font-weight:500}.ability-slot.selected .slot-key{color:#e5d7a6}.slot-icon{height:27px;width:27px;color:var(--slot-color);filter:drop-shadow(0 0 9px color-mix(in srgb,var(--slot-color),transparent 60%));margin-top:2px}.slot-name{font-family:var(--serif);font-size:17px;line-height:1.15;white-space:nowrap}.slot-meta{font-size:7px;text-transform:uppercase;letter-spacing:.09em;color:#809783}.slot-cost{position:absolute;top:8px;right:8px;font-size:8px;color:#709f99}.cooldown-veil{position:absolute;bottom:0;left:0;right:0;background:#020d0bc9;pointer-events:none;height:0;transition:height .1s}.cooldown-label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:27px;color:#ebdfbb;text-shadow:0 1px 5px #000;pointer-events:none;opacity:0}.hotbar-hint{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:11px;font-size:8px;letter-spacing:.07em;color:#819787}.hotbar-hint kbd,.keycap{font-family:var(--sans);font-size:8px;min-width:17px;height:16px;padding:2px 5px;text-align:center;border:1px solid #8c9e7c42;border-bottom-width:2px;border-radius:2px;color:#c5cdbb;line-height:10px;display:inline-block}.hint-dot{width:2px;height:2px;border-radius:50%;background:#7e9078;margin:0 3px}.invocation{position:absolute;bottom:185px;left:50%;transform:translateX(-50%);width:350px;padding:15px 20px;background:linear-gradient(100deg,#151f1af0,#183026e8);border:1px solid #c7b67466;backdrop-filter:blur(12px);border-radius:3px;display:none;box-shadow:0 0 50px #b78c3812}.invocation.active{display:block;animation:invokeIn .25s ease-out}.invocation-heading{display:flex;align-items:center;justify-content:space-between;font-size:8px;text-transform:uppercase;letter-spacing:.17em;color:#d5c68e}.invocation-keys{display:flex;gap:15px;align-items:center;justify-content:center;margin-top:13px}.rune-key{display:flex;justify-content:center;align-items:center;width:43px;height:43px;border:1px solid #7c89664d;background:#14231b;color:#9baf8d;font-family:var(--serif);font-size:26px;transition:.15s}.rune-key.done{border-color:#c8c38a;background:#74814644;color:#f3e6ac;box-shadow:0 0 18px #c4bc5225}.rune-key.current{border-color:#d0bc77;color:#f3df9e;animation:runePulse 1.2s infinite}.rune-arrow{font-size:12px;color:#647961}.invocation-hint{text-align:center;font-size:9px;line-height:1.5;color:#93a18a;margin-top:10px}.invoke-timer{height:2px;background:#38432c;margin-top:13px}.invoke-timer span{display:block;background:#cbb77c;width:100%;height:100%}.corner-footer{position:absolute;bottom:25px;left:34px;font-size:8px;color:#7a9081;letter-spacing:.12em;line-height:1.8}.corner-footer strong{font-weight:400;color:#a9b49d}.corner-footer.right{left:auto;right:34px;text-align:right;letter-spacing:.05em}.paused-label{position:absolute;top:110px;left:50%;transform:translateX(-50%);font-size:10px;letter-spacing:.3em;color:#ddcc98;display:none}.paused-label.visible{display:block}
.modal-layer{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#03110a66;backdrop-filter:blur(7px);padding:22px;pointer-events:auto;z-index:10}.modal-layer.hidden{display:none}.dialog{position:relative;width:520px;max-height:90vh;overflow:auto;background:linear-gradient(145deg,#152b21f7,#071913fa);border:1px solid #c2bd8545;box-shadow:0 30px 120px #0008;border-radius:5px;padding:35px}.dialog-mark{color:var(--gold);width:39px;height:44px;margin-bottom:20px}.dialog h1{font-family:var(--serif);font-weight:400;font-size:52px;line-height:1;margin:10px 0 13px;color:#f0e8cf}.dialog .intro-copy{font-size:12px;line-height:1.8;color:#abbca9;margin:0 0 23px;max-width:400px}.welcome-controls{display:grid;grid-template-columns:1fr 1fr;gap:17px 20px;border-block:1px solid var(--line);padding:20px 0;margin-bottom:23px}.welcome-control{display:flex;gap:10px;align-items:center;font-size:10px;color:#bac8b4}.welcome-control .keycap{height:22px;line-height:15px;min-width:35px;font-size:9px;color:#ddd9b9;background:#203426}.primary-button{width:100%;padding:14px 20px;border:1px solid #d5c48788;border-radius:3px;background:linear-gradient(130deg,#d5c18d,#a99b6d);color:#142019;font-size:11px;font-weight:650;letter-spacing:.15em;text-transform:uppercase;box-shadow:0 3px 18px #b9a97015;transition:filter .2s}.primary-button:hover{filter:brightness(1.1)}.primary-button span{float:right}.intro-foot{font-size:8px;line-height:1.7;color:#738d77;margin-top:13px;text-align:center;letter-spacing:.05em}.dialog-close{position:absolute;right:22px;top:22px;width:26px;height:26px;background:none;border:1px solid var(--line);border-radius:3px;color:var(--muted);font-size:17px}.settings-dialog{width:560px;padding:28px 32px}.settings-dialog h2{font-family:var(--serif);font-weight:400;font-size:35px;margin:7px 0 9px}.settings-description{font-size:11px;color:var(--muted);line-height:1.7;margin:0 0 22px}.setting-row{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:12px 0;gap:20px}.setting-label{font-size:11px;color:#c7d3c3}.setting-label small{display:block;font-size:9px;color:var(--dim);margin-top:5px}.setting-row select{border:1px solid var(--line);padding:6px 9px;border-radius:2px;background:#13281d;color:#bfcdb7;font-size:10px}.switch{position:relative;width:31px;height:17px;border-radius:12px;border:1px solid #63785b;background:#26392a;padding:0}.switch:after{position:absolute;top:3px;left:3px;content:'';width:9px;height:9px;border-radius:50%;background:#a2b394;transition:.2s}.switch.on{background:#6a7852;border-color:#bdba7e}.switch.on:after{left:17px;background:#e3d9a8}.binding-title{display:flex;align-items:center;justify-content:space-between;margin:25px 0 10px}.binding-title .eyebrow{color:var(--gold)}.text-button{padding:0;border:0;background:none;color:#9caa8b;font-size:9px;text-decoration:underline;text-underline-offset:3px}.binding-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.binding-row{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid #75866922;gap:8px;font-size:10px;color:#aebda7}.binding-key{min-width:48px;background:#1a3022;border:1px solid #8e9c6e44;padding:5px 7px;border-radius:3px;color:#d5d8b5;font-size:9px;white-space:nowrap}.binding-key.listening{color:#f0dea0;border-color:#d2bb76;animation:runePulse 1s infinite}.binding-message{min-height:32px;font-size:10px;color:#c9b77a;line-height:1.6;margin:13px 0 5px}.settings-done{margin-top:4px}.loading-label{position:absolute;left:50%;bottom:45%;transform:translateX(-50%);font-family:var(--serif);font-size:25px;color:var(--gold)}
@keyframes runePulse{50%{box-shadow:0 0 18px #c4bc5240;background:#39462b}}@keyframes invokeIn{from{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%,0)}}
@media(min-width:1700px){.field-notes{top:160px}.inspector{top:160px}.bottom-hud{bottom:45px;width:640px}.ability-slot{min-height:99px}.slot-icon{width:31px;height:31px}.slot-name{font-size:19px}.invocation{bottom:210px}}
@media(max-width:1150px){.topbar{left:23px;right:23px;top:23px}.field-notes{left:23px;width:180px;padding:14px}.inspector{right:23px;width:205px;padding:14px}.ability-name{font-size:24px}.large-sigil{width:35px;height:35px}.bottom-hud{width:520px;bottom:27px}.interaction-log{left:24px;width:215px;font-size:9px}.corner-footer{left:24px;bottom:17px}.corner-footer.right{right:24px}.region-name{font-size:21px}.toolbar{gap:3px}.fps{margin-right:6px}.brand-name{font-size:28px}.brand-mark{width:33px;height:38px}.brand{gap:11px}.hotbar{gap:5px}.slot-name{font-size:16px}}
@media(max-width:900px){.field-notes{display:none}.inspector{width:190px;top:115px}.inspector .ability-description{font-size:9px}.inspector .mechanism-chain,.inspector .graph-label,.inspector-foot{display:none}.region{display:none}.interaction-log{bottom:175px;width:195px}.bottom-hud{width:500px}.corner-footer.right{display:none}.corner-footer{font-size:7px}.vitals{width:390px}.invocation{bottom:177px}.inspector-open{right:23px;top:115px}}
@media(max-width:650px){.topbar{left:15px;right:15px;top:18px}.brand-name{font-size:25px}.brand .eyebrow{font-size:6px;letter-spacing:.12em}.brand-mark{width:29px;height:32px}.brand{gap:9px}.fps{display:none}.toolbar{gap:2px}.icon-button{width:29px;height:29px}.inspector{top:92px;right:15px;width:160px;padding:12px}.inspector .panel-label{font-size:7px}.ability-heading{gap:8px;margin-top:12px}.large-sigil{width:29px;height:29px}.ability-name{font-size:22px}.ability-element{font-size:6px}.ability-description{line-height:1.7;margin:11px 0}.ability-stat small{font-size:7px}.ability-stats{gap:8px;padding:9px 0}.ability-stat strong{font-size:11px}.interaction-log{left:15px;bottom:175px;width:160px;gap:6px}.log-entry{font-size:8px;gap:7px}.log-entry time{font-size:7px}.log-title{font-size:7px}.bottom-hud{width:calc(100% - 26px);bottom:24px}.hotbar{gap:4px}.ability-slot{min-height:76px;padding:10px 2px 8px;gap:6px}.slot-name{font-size:13px}.slot-icon{width:24px;height:24px}.slot-meta{font-size:6px;letter-spacing:.02em}.slot-key{left:5px;top:5px;font-size:8px}.slot-cost{right:5px;top:5px;font-size:7px}.vitals{width:80%;gap:13px;margin-bottom:10px}.vital-head{font-size:7px}.hotbar-hint{font-size:7px;gap:5px;margin-top:9px}.hotbar-hint kbd{font-size:7px}.corner-footer{bottom:6px;font-size:6px;left:15px}.corner-footer br{display:none}.corner-footer strong{margin-left:5px}.invocation{bottom:165px;width:285px;padding:12px}.invocation-heading{font-size:7px}.rune-key{width:35px;height:35px;font-size:22px}.invocation-keys{margin-top:10px}.invocation-hint{font-size:8px}.dialog{padding:26px;width:100%}.dialog h1{font-size:43px}.dialog .intro-copy{font-size:11px}.welcome-controls{gap:16px 12px}.welcome-control{font-size:9px;gap:7px}.welcome-control .keycap{min-width:29px;font-size:8px}.settings-dialog{padding:25px 22px}.binding-grid{gap:0 15px}.binding-row{font-size:9px}.binding-key{min-width:42px;font-size:8px}.inspector-open{top:92px;right:15px}.toast{top:21%;max-width:90%;font-size:10px}}
@media(max-height:700px){.field-notes{top:110px;padding:13px}.field-notes h2{font-size:22px;margin:10px 0 6px}.field-notes .panel-description{display:none}.experiments{margin-top:10px}.experiment{padding-top:10px}.world-readout{margin-top:12px}.inspector{top:110px}.inspector .graph-label,.inspector .mechanism-chain,.inspector-foot{display:none}.interaction-log{bottom:167px}.bottom-hud{bottom:23px}.invocation{bottom:171px}.dialog{padding:25px 30px}.dialog h1{font-size:42px}.dialog-mark{width:29px;height:32px;margin-bottom:12px}.welcome-controls{padding:15px 0;margin-bottom:17px;gap:12px}.dialog .intro-copy{margin-bottom:16px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
.slot-name{max-width:100%;font-size:15px;letter-spacing:-.01em}.slot-name.long-name{font-size:14px}@media(max-width:1150px){.slot-name{font-size:14px}.slot-name.long-name{font-size:13px}}@media(max-width:650px){.slot-name{font-size:11px}.slot-name.long-name{font-size:10px}}

.shield-reserve{position:absolute;left:50%;top:-28px;transform:translateX(-50%);display:none;align-items:center;justify-content:center;gap:10px;width:320px;font-size:8px;letter-spacing:.12em;color:#cdb9e5;text-shadow:0 1px 5px #000}.shield-reserve.active{display:flex}.shield-reserve strong{font-size:8px;font-weight:400;font-variant-numeric:tabular-nums;letter-spacing:.02em}.shield-track{height:3px;width:95px;background:#493e5a;border-radius:2px;overflow:hidden}.shield-track i{display:block;height:100%;width:100%;background:linear-gradient(90deg,#8a6fb6,#deccfa);transition:width .15s}.experiment.complete .experiment-number{color:#c8d699}.experiment.complete strong{color:#dce8bb}.experiment.complete p{color:#8d9d83}

@media(max-width:650px){.interaction-log{bottom:215px}.shield-reserve{width:290px;gap:8px;font-size:7px}.shield-track{width:80px}.shield-reserve strong{font-size:7px}}

/* The world is the default view; research panels are available on demand. */
.field-notes{transition:opacity .2s,transform .2s}.field-notes.collapsed{opacity:0;visibility:hidden;pointer-events:none;transform:translateX(-18px)}.inspector.collapsed{visibility:hidden}.field-notes-toggle{position:absolute;top:135px;left:34px;display:flex;align-items:center;gap:9px;background:#0c2019aa;backdrop-filter:blur(10px);border:1px solid var(--line);border-radius:3px;padding:9px 11px;color:#aebda2;font-size:9px;letter-spacing:.02em}.field-notes-toggle svg{width:15px;height:15px;color:#c8bd88}.field-notes-toggle span:last-child{font-size:8px;color:#84977b;margin-left:3px}.field-notes-toggle:hover{border-color:#baa86c77;color:#d8dfc8}.field-notes-toggle.hidden{display:none}.view-button{height:33px;border:1px solid #a9b69130;border-radius:3px;background:#10271d99;padding:0 10px;display:flex;align-items:center;gap:7px;color:#bccbb3;font-size:9px;white-space:nowrap;margin-right:5px}.view-button svg{width:16px;height:16px;color:#d0c48d}.view-button:hover,.view-button.tactical{background:#2b3a25bb;border-color:#cab97b77}.dialog h1{font-size:47px;line-height:1.03}.welcome-controls{gap:16px 20px}.welcome-control .keycap{max-width:83px;white-space:nowrap}.hotbar-hint{gap:7px}.corner-footer{letter-spacing:.08em}
@media(max-width:1150px){.field-notes-toggle{left:23px}.view-button{padding:0 8px;gap:5px;font-size:8px}.dialog h1{font-size:44px}}
@media(max-width:900px){.field-notes:not(.collapsed){display:block}.field-notes{top:115px}.field-notes-toggle{top:115px}.view-button{margin-right:2px}}
@media(max-width:650px){.field-notes{left:15px;top:92px;width:200px}.field-notes-toggle{left:15px;top:92px;font-size:8px;padding:8px}.field-notes-toggle svg{width:13px;height:13px}.view-button{width:29px;height:29px;padding:0;justify-content:center}.view-button span{display:none}.dialog h1{font-size:39px}.welcome-controls{gap:14px 10px}.hotbar-hint{gap:4px;font-size:6px}.hotbar-hint kbd{font-size:6px;min-width:14px;padding-inline:3px}.hint-dot{margin-inline:1px}.corner-footer{font-size:6px;letter-spacing:.05em}}
@media(max-height:700px){.field-notes-toggle{top:110px}.dialog h1{font-size:39px}.welcome-controls{gap:12px}.dialog .intro-copy{font-size:11px}}
/* The reticle follows the actual aiming ray in either camera mode. */
#world{cursor:crosshair}.reticle{width:17px;height:17px;border:1px solid #f2e7bdad;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 8px #1c231b,inset 0 0 5px #1119;z-index:2;pointer-events:none}.reticle:before,.reticle:after{content:'';position:absolute;left:50%;top:50%;background:#f2e7bdbb;transform:translate(-50%,-50%)}.reticle:before{width:25px;height:1px}.reticle:after{height:25px;width:1px}
.performance-toggle{background:none;border:0;padding:7px 3px;cursor:pointer}.performance-toggle:hover{color:var(--ink)}.engine-telemetry{position:absolute;right:34px;top:85px;width:310px;padding:16px;pointer-events:auto;font-variant-numeric:tabular-nums}.engine-telemetry[hidden]{display:none}.engine-telemetry dl{display:grid;grid-template-columns:1fr auto;gap:10px 12px;font-size:10px;margin:17px 0}.engine-telemetry dt{color:var(--muted)}.engine-telemetry dd{margin:0;color:var(--ink);text-align:right}.engine-telemetry p{font-size:9px;color:var(--dim);line-height:1.6;margin:12px 0 0}.telemetry-close{border:0;background:none;color:var(--muted);font-size:18px;padding:0 3px}@media(max-width:650px){.engine-telemetry{right:15px;top:76px;width:calc(100% - 30px)}}
/* Keep rune input clear of the caster and the airborne construction. */
.invocation{top:108px;bottom:auto;width:320px;padding:12px 16px}.invocation-keys{margin-top:9px;gap:12px}.invocation .rune-key{width:36px;height:36px;font-size:22px}.invocation-hint{margin-top:8px}.invocation .invocation-timer{margin-top:9px}@media(max-width:650px){.invocation{top:88px;bottom:auto;width:285px;padding:10px 13px}}
.invocation{width:min(480px,calc(100vw - 32px));background:#0c211bf2}.invocation-keys{display:block}.invoke-choices{display:flex;flex-wrap:wrap;gap:8px 14px;font-size:10px;color:#d5dfc5}.invoke-choices>span{display:flex;gap:5px;align-items:center}.invoke-choices kbd{border:1px solid #b7c69255;padding:3px 6px;border-radius:3px}.invoke-choices small{color:#a9bca6;font-size:8px}.invoke-suggestion{font-size:10px;color:#8fa994;margin-top:13px;line-height:1.5}.invoke-suggestion strong{font-weight:500;color:#d7c794}.invoke-phrase{font:400 30px/1.3 var(--serif);white-space:pre-wrap;overflow-wrap:anywhere;position:relative;text-align:center;min-height:40px}.invoke-phrase .typed{color:#e9ddb3;text-shadow:0 0 12px #e7c36c33}.invoke-phrase .untyped{color:#607968}.invoke-caret{display:inline-block;height:22px;border-right:1px solid #ead49a;margin-left:3px;vertical-align:middle}.invocation.ready{border-color:#e2c57999}.invocation.ready #rune-progress{color:#e6d38e}.invocation-hint{font-size:10px;line-height:1.6}.invocation-heading{font-size:10px}
