:root{touch-action:manipulation;color:#eee9df;font-synthesis:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#8e9b98;font-family:Georgia,Times New Roman,serif}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,input,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button{cursor:pointer;color:inherit;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#1a2224b8;border:1px solid #b5b4a45e;border-radius:2px;min-height:44px;padding:12px 18px}button:hover{background:#283132e8;border-color:#d1ba8b}button:focus-visible,input:focus-visible,a:focus-visible{outline-offset:4px;outline:2px solid #eed6a3}button[aria-pressed=true]{color:#f0d8a9;background:#3c443be8;border-color:#ddc28d}button:disabled,button[aria-disabled=true]{opacity:.4;cursor:default}button span{color:#d2be93;margin-left:14px}button,small,label,output,.eyebrow,.place>span,.place p,.identity,.brand span,.instructions,.note,.references,.milestones p{font-family:Arial,sans-serif}a{color:#d6c29b}button{font-size:14px}small{font-size:12px;line-height:1.5;display:block}#world{touch-action:none;outline:none;width:100%;height:100%;position:fixed;inset:0}header{top:max(28px,env(safe-area-inset-top));left:max(32px,env(safe-area-inset-left));right:max(32px,env(safe-area-inset-right));pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:fixed}header>*{pointer-events:auto}.brand{letter-spacing:5px;text-shadow:0 2px 15px #172225;font-size:24px}.brand span{letter-spacing:3px;color:#e1dfd0;margin-top:8px;font-size:10px;display:block}.identity{text-shadow:0 1px 5px #131b1d;align-items:center;gap:12px;display:flex;position:fixed;top:115px;left:32px}.sigil{clip-path:polygon(0 0,100% 0,100% 80%,50% 100%,0 80%);background:#1c2925b5;border:1px solid #d2bd8c80;place-items:center;width:42px;height:52px;font:26px Georgia;display:grid}.identity button{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;min-height:30px;padding:0;font-size:16px}.identity div>span{color:#eee7d9;font-size:12px;display:block}.place{text-align:right;text-shadow:0 2px 12px #152022;pointer-events:none;position:fixed;top:125px;right:32px}.place>span{letter-spacing:3px;font-size:11px}.place h1{margin:8px 0;font-size:38px;font-weight:400}.place p{color:#eeeadf;margin:0;font-size:12px}.welcome{background:linear-gradient(135deg,#1a2629f5,#1a2429e3);border:1px solid #d1bd8c55;width:310px;padding:26px;position:fixed;top:50%;left:32px;transform:translateY(-42%);box-shadow:0 20px 70px #10181844}.eyebrow{letter-spacing:2px;color:#d0b789;font-size:10px}.welcome h2{margin:18px 0 10px;font-size:30px;font-weight:400;line-height:1.12}.welcome p{color:#d2d5ce;margin-bottom:24px;font-size:15px}.welcome label{color:#d2d5ce;margin-bottom:9px;font-size:12px;display:block}.welcome input{color:#f1eadd;background:#111b1e;border:1px solid #7b837669;width:100%;margin-bottom:14px;padding:12px;font-size:16px}.primary{color:#172122;-webkit-backdrop-filter:none;backdrop-filter:none;background:#b7a276;border-color:#d7c496;width:100%;font-size:15px}.primary:hover{color:#172122;background:#d4bf91}.primary span{color:inherit}.welcome small{color:#aeb9b6;margin-top:17px}footer{bottom:max(30px,env(safe-area-inset-bottom));left:max(32px,env(safe-area-inset-left));right:max(32px,env(safe-area-inset-right));justify-content:space-between;align-items:end;gap:16px;display:flex;position:fixed}.instructions{text-shadow:0 1px 5px #000;font-size:13px}.instructions small{color:#eeeadf;margin-top:12px}kbd{letter-spacing:1px;background:#15232699;border:1px solid #c5cfbe77;padding:5px 7px;font:11px Arial}.actions{gap:8px;display:flex}.actions button{white-space:nowrap;touch-action:none;-webkit-user-select:none;user-select:none}#performance{color:#eeeadf;text-shadow:0 1px 4px #000;pointer-events:none;font-size:12px;position:fixed;bottom:90px;right:32px}#joystick{bottom:max(34px,env(safe-area-inset-bottom));left:max(30px,env(safe-area-inset-left));touch-action:none;-webkit-user-select:none;user-select:none;background:#17272950;border:1px solid #dfd7bd70;border-radius:50%;width:128px;height:128px;display:none;position:fixed}#stick{pointer-events:none;background:#e1d2b780;border:1px solid #f4e7c9;border-radius:50%;width:40px;height:40px;position:absolute;top:43px;left:43px}.touch-help{display:none}.message,.failure{color:#f1e8d8;z-index:5;background:#172329;border:1px solid #b69b6a;width:85%;max-width:480px;padding:24px;font:16px/1.6 Arial;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}dialog{color:#ede9df;background:#192529;border:1px solid #8e8b70;width:min(540px,92vw);max-height:85dvh;padding:30px;overflow:auto;box-shadow:0 30px 100px #0008}dialog::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#09141699}.dialog-heading{justify-content:space-between;align-items:center;display:flex}.dialog-heading button{min-height:36px;padding:6px 12px}dialog h2{font-size:30px;font-weight:400;line-height:1.2}dialog>p{color:#c5ceca;font-size:16px;line-height:1.6}.milestones{margin:28px 0;padding:0;list-style:none}.milestones li{border-top:1px solid #75837c40;gap:18px;padding:18px 0;display:flex}.milestones li>span{color:#a3987e;font-size:24px}.milestones strong{font-size:18px;font-weight:400}.milestones p{color:#aebdb8;margin:8px 0 0;font-size:14px;line-height:1.5}.milestones .current>span{color:#e0c799}.note{border-top:1px solid #75837c40;padding-top:18px;font-size:13px!important}.references{gap:12px;font-size:12px;line-height:1.5;display:grid}[hidden]{display:none!important}@media (pointer:coarse),(width<=900px){#joystick{display:block}.desktop-help{display:none}.touch-help{display:inline}.instructions{text-align:center;width:100%;font-size:11px;position:fixed;bottom:12px;left:0}.instructions small{display:none}.actions{align-items:end;margin-left:auto}#performance{bottom:100px}.actions button{min-height:48px}.identity{top:90px}.place{top:98px}.welcome{left:50%;transform:translate(-50%,-40%)}}@media (width<=700px){header{top:20px;left:20px;right:20px}.brand{letter-spacing:3px;font-size:18px}.brand span{letter-spacing:2px;font-size:9px}header button{padding:10px;font-size:12px}.identity{top:95px;left:20px}.identity div>span{max-width:160px;font-size:10px}.place{top:177px;right:20px}.place h1{font-size:30px}.place>span{font-size:10px}.place p{font-size:11px}footer{bottom:35px;left:20px;right:20px}.actions{flex-direction:column;gap:6px}.actions button{min-height:44px;padding:10px 13px;font-size:12px}.actions button span{display:none}#performance{font-size:11px;bottom:199px;right:20px}.instructions{max-width:55%;line-height:1.9}#joystick{width:118px;height:118px;left:20px}#stick{top:38px;left:38px}.touch-help{font-size:10px}@media (pointer:coarse),(width<=900px){.instructions{max-width:100%;line-height:1}}.welcome{width:min(310px,90vw);left:50%;transform:translate(-50%,-40%)}dialog{padding:22px}.place{pointer-events:none}}@media (height<=500px){header{top:12px;left:20px;right:20px}.brand{font-size:18px}.brand span{display:none}.identity{top:65px;left:20px}.place{top:67px;right:20px}.place h1{margin:5px 0;font-size:26px}.place>span{display:none}.welcome{width:320px;padding:18px;top:50%;left:50%;transform:translate(-50%,-50%)}.welcome h2{margin:8px 0;font-size:23px}.welcome p{display:none}.welcome label{margin-top:14px}.welcome small{margin-top:9px;font-size:11px}.welcome input{margin-bottom:10px;padding:9px}.actions{flex-direction:row}footer{bottom:28px;left:20px;right:20px}.instructions small{display:none}.instructions{font-size:11px}#joystick{width:108px;height:108px;bottom:30px;left:20px}#stick{top:33px;left:33px}#performance{bottom:86px;right:20px}.actions button{min-height:44px;padding:11px;font-size:12px}.actions button span{display:none}}.art-status{color:#e9ddc5;text-align:center;pointer-events:none;background:#172023e8;max-width:80%;padding:12px 18px;font-size:13px;position:absolute;top:48%;left:50%;transform:translate(-50%,-50%)}.art-status:empty{display:none}.combat-hud{text-shadow:0 1px 4px #000;pointer-events:none;width:260px;font:11px Arial,sans-serif;position:fixed;top:220px;left:32px}.combat-hud>span{letter-spacing:1.4px;justify-content:space-between;display:flex}#health-value{letter-spacing:0}#target-health{accent-color:#a65342;width:100%;height:12px;margin-top:8px;display:block}#target-health::-webkit-meter-bar{background:#1d2829;border:1px solid #c1ad7966;border-radius:0}#target-health::-webkit-meter-optimum-value{background:#a65342}#combat-status{color:#f0e3c9;min-height:34px;line-height:1.5}.actions .primary{width:auto;min-width:110px}.combat-hud p{margin-top:8px}.combat-hud>span:not(:first-child){margin-top:10px}.combat-hud meter{width:100%;height:10px;margin-top:5px;display:block}.combat-hud meter::-webkit-meter-bar{background:#1d2829;border:1px solid #c1ad7966;border-radius:0}#player-health::-webkit-meter-optimum-value{background:#739384}#stamina::-webkit-meter-optimum-value{background:#c5ad72}#combat-status[data-threat=true]{color:#ffe4a6;background:#542c23cc;border-left:2px solid #e0aa6a;padding:7px}.actions{grid-template-columns:repeat(3,auto);display:grid}#recenter-button{display:none}#attack-button,#reset-button{grid-area:1/2}#dodge-button{grid-area:2/2}#guard-button{grid-area:2/3}#performance{bottom:140px}@media (width<=700px){.place{display:none}.combat-hud{width:230px;top:160px;left:20px}.actions{grid-template-columns:repeat(2,94px);gap:6px;max-width:none}.actions button{padding:10px 5px}.actions .primary{min-width:0}.actions #attack-button,.actions #reset-button{grid-area:1/1/auto/-1}.actions #dodge-button{grid-area:2/1}.actions #guard-button{grid-area:2/2}.actions #camera-button{grid-area:3/1}.actions #run-button{grid-area:3/2}#performance{bottom:194px}}@media (height<=500px){.place,.identity{display:none}.combat-hud{width:210px;top:68px;left:20px;right:auto}.combat-hud>span:not(:first-child){margin-top:5px}.combat-hud p{margin-top:4px}.actions{grid-template-columns:repeat(3,auto)}#performance{bottom:142px}}.actions{grid-template-columns:repeat(3,auto)}#heavy-button{grid-area:1/3}#run-button{grid-area:2/1}@media (width<=700px){header{gap:8px}.brand{letter-spacing:2px;font-size:15px}.brand span{font-size:8px}header button{padding:8px;font-size:11px}.actions{grid-template-columns:repeat(2,94px)}.actions #attack-button{grid-area:1/1}.actions #heavy-button{grid-area:1/2}.actions #run-button{grid-area:3/2}}@media (height<=500px){.actions{grid-template-columns:repeat(3,auto)}}.mobile-tools{display:none}@media (width<=900px),(pointer:coarse){header{top:max(12px,env(safe-area-inset-top));right:max(14px,env(safe-area-inset-right));z-index:2;gap:0;left:auto}header .brand,header #sound-button,.identity,.place,.instructions,#performance,.actions #camera-button,.actions #run-button{display:none}#journal-button{-webkit-backdrop-filter:none;backdrop-filter:none;background:#172329b0;border-radius:50%;width:44px;height:44px;padding:0;font-size:0}#journal-button span{display:none}#journal-button:after{content:"☰";color:#eee9df;font:20px Arial}.combat-hud{top:max(15px,env(safe-area-inset-top));left:max(16px,env(safe-area-inset-left));grid-template-columns:1fr 1fr;gap:5px 14px;width:min(270px,100vw - 90px);font-size:10px;display:grid}.combat-hud>span{letter-spacing:1px;line-height:12px;margin:0!important}.combat-hud>span:first-child{grid-area:1/1/auto/-1}.combat-hud>span:nth-of-type(2){grid-area:3/1;margin-top:5px!important}.combat-hud>span:nth-of-type(3){grid-area:3/2;margin-top:5px!important}.meter-label{font-size:0}.meter-label:after{content:attr(data-mobile);letter-spacing:1px;text-transform:uppercase;font:10px Arial}#health-value,#player-health-value,#stamina-value{display:none}.combat-hud meter{appearance:none;background:linear-gradient(to right,var(--bar-color) var(--fill,100%),#172329a0 var(--fill,100%));border:0;border-radius:2px;width:100%;height:4px;margin:0;display:block}#target-health::-webkit-meter-bar{background:0 0;border:0;height:4px}#player-health::-webkit-meter-bar{background:0 0;border:0;height:4px}#stamina::-webkit-meter-bar{background:0 0;border:0;height:4px}#target-health::-webkit-meter-optimum-value{background:0 0}#player-health::-webkit-meter-optimum-value{background:0 0}#stamina::-webkit-meter-optimum-value{background:0 0}.combat-hud meter::-moz-meter-bar{background:0 0}#target-health{--bar-color:#c27a69;grid-area:2/1/auto/-1;height:5px;margin:0}#player-health{--bar-color:#91b4a0;grid-area:4/1}#stamina{--bar-color:#dec58c;grid-area:4/2}#combat-status{color:#f1e8d8;grid-area:5/1/auto/-1;max-width:240px;min-height:0;margin:4px 0 0;font-size:10px;font-weight:400;line-height:1.4}#combat-status[data-threat=true]{padding:4px 6px}footer{right:max(16px,env(safe-area-inset-right));bottom:max(22px,env(safe-area-inset-bottom));left:auto}.actions{grid-template-columns:repeat(2,70px);gap:8px}.actions button{white-space:normal;-webkit-backdrop-filter:none;backdrop-filter:none;background:#172329c4;border-radius:16px;width:70px;height:56px;min-height:56px;font-size:11px;line-height:1.2;min-width:0!important;padding:7px!important}.actions button[data-mobile]{font-size:0}.actions button[data-mobile]:after{content:attr(data-mobile);font:13px Arial}.actions .primary{background:#b7a276e8}.actions #attack-button{grid-area:1/1}.actions #heavy-button{grid-area:1/2}.actions #dodge-button{grid-area:2/1}.actions #guard-button{grid-area:2/2}.actions #reset-button{grid-area:1/1/auto/-1;width:100%}#joystick{width:108px;height:108px;left:max(16px,env(safe-area-inset-left));bottom:max(24px,env(safe-area-inset-bottom));background:#17272930;display:block}#stick{top:33px;left:33px}.mobile-tools{grid-template-columns:1fr 1fr;gap:10px;margin:20px 0;display:grid}.mobile-tools button{-webkit-backdrop-filter:none;backdrop-filter:none}.mobile-tools p,.mobile-tools output{color:#c5ceca;grid-column:1/-1;margin:0;font:12px/1.7 Arial}.mobile-tools output{color:#aeb9b6;font-size:11px}}#gesture-pad{display:none}.actions{touch-action:none}@media (width<=900px),(pointer:coarse){.actions[data-gestures=true] #attack-button,.actions[data-gestures=true] #heavy-button,.actions[data-gestures=true] #dodge-button{display:none}.actions[data-gestures=true] #gesture-pad{color:#f0e3c9;background:#172329a8;border-color:#c6af78;grid-area:1/1/auto/-1;width:148px;height:100px;font:13px/1.7 Arial;display:block;padding:18px!important}.actions[data-gestures=true] #guard-button{grid-column:1/-1;width:148px}#kick-button{background:#283233a6;border-radius:22px;grid-area:3/1/auto/-1;justify-self:end;width:70px;height:44px;min-height:44px;font-size:0}.actions[data-gestures=true] #kick-button{grid-row:auto}}@media (width>=901px) and (pointer:fine){#performance{bottom:190px}}.debug{z-index:6;color:#e6dcc4;white-space:pre;pointer-events:none;background:#0d1214d9;border:1px solid #c1ad7966;max-width:min(96vw,520px);max-height:60vh;margin:0;padding:6px 8px;font:11px/1.35 ui-monospace,Menlo,monospace;position:fixed;top:8px;left:8px;overflow:auto}
