@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@500;600;700&family=DM+Sans:wght@400;500;600;700&display=swap');
.labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}.world-label{position:absolute;transform:translate(-50%,-100%);pointer-events:auto;padding:3px 8px;border:1px solid #716747;background:#27241bd9;border-radius:2px;font-size:12px;color:#e1d7b7;white-space:nowrap;text-shadow:0 1px #000;box-shadow:0 2px 5px #0004}.world-label.active{color:#ffe095;border-color:#d6b969}.world-actions,.action,.world-bottom{z-index:2}.location{z-index:2}.world{background:#a5b7b9}
:root{color-scheme:dark;--bg:#131b1a;--panel:#1b2523;--line:#35413a;--gold:#d9bd7d;--muted:#a5b3a8;--green:#9bbc87}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:#ecece2;font-family:'DM Sans',sans-serif;font-size:16px}button{font:inherit;color:inherit;cursor:pointer;border:1px solid var(--line);background:#25332b;border-radius:5px;padding:10px 14px}button:hover{background:#354635;border-color:var(--gold)}button:focus-visible,canvas:focus-visible{outline:2px solid var(--gold);outline-offset:3px}header{height:90px;padding:20px 32px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.brand{display:flex;gap:15px;align-items:center;font-family:Cinzel,serif;font-size:24px;letter-spacing:4px}.brand small{display:block;font-family:'DM Sans',sans-serif;font-size:10px;letter-spacing:3px;color:var(--muted);margin-top:5px}.crest{color:var(--gold);font-size:40px}.topinfo{display:flex;gap:24px;align-items:center;font-size:14px;color:var(--muted)}main{display:grid;grid-template-columns:minmax(0,1fr) 340px;max-width:1800px;margin:auto;min-height:calc(100vh - 90px)}.world{position:relative;min-height:730px;overflow:hidden;background:#2b4633}canvas{display:block;width:100%;height:100%;position:absolute;inset:0;touch-action:none}.location{position:absolute;top:30px;left:32px;z-index:1;pointer-events:none;text-shadow:0 2px 12px #122215}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;color:var(--gold)}h1,h2,h3{font-family:Cinzel,serif;font-weight:500}h1{font-size:34px;margin:7px 0}p{color:var(--muted);line-height:1.6}.location p{color:#e0e7d7;font-size:14px;margin:0}.world-actions{position:absolute;bottom:100px;left:20px;right:20px;display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.world-actions button{background:#16261eea;font-size:14px;box-shadow:0 4px 20px #0004}.action{position:absolute;bottom:55px;left:50%;transform:translateX(-50%);background:#101b15ec;border:1px solid #7c9260;padding:10px 24px;border-radius:30px;text-align:center;white-space:nowrap;font-size:14px}.world-bottom{position:absolute;bottom:0;width:100%;display:flex;justify-content:space-between;background:#111d17dd;padding:13px 20px;color:#bdc8b9;font-size:11px;letter-spacing:1px}aside{padding:24px;background:var(--panel);border-left:1px solid var(--line)}.character{display:flex;gap:14px;align-items:center;padding-bottom:25px}.portrait{width:65px;height:65px;display:grid;place-items:center;font-size:36px;background:#334434;border:1px solid #71815d;border-radius:50%}.character h2{font-size:22px;margin:6px 0}.character p{font-size:14px;margin:0}.tabs{display:flex;border-bottom:1px solid var(--line);margin-bottom:24px}.tabs button{flex:1;background:none;border:0;border-radius:0;padding:12px 3px;font-size:14px;color:var(--muted)}.tabs button[aria-selected=true]{color:var(--gold);border-bottom:2px solid var(--gold)}#panel{min-height:270px}.skill{margin:22px 0}.skillhead{display:flex;justify-content:space-between;margin-bottom:9px;font-size:14px}.skillhead b{font-weight:500;color:var(--gold)}.bar{height:5px;background:#354135;border-radius:5px;overflow:hidden}.bar i{height:100%;display:block;background:#a1b780}.skill small{font-size:12px;color:var(--muted);display:block;margin-top:7px}.hint{font-size:14px;line-height:1.7;color:var(--muted)}.inventory{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.item{min-height:85px;border:1px solid var(--line);background:#16211c;border-radius:4px;padding:8px;text-align:center;font-size:12px;color:var(--muted)}.item span{display:block;font-size:26px;margin-bottom:4px}.item b{color:var(--gold)}.quest{padding:16px;background:#223027;border:1px solid #45543d;border-radius:5px}.quest h3{font-size:19px;margin:9px 0}.quest p{font-size:14px}.task{display:flex;justify-content:space-between;font-size:14px;margin:14px 0}.task b{color:var(--gold)}.log{border-top:1px solid var(--line);padding-top:20px;margin-top:20px}#messages{margin-top:15px}#messages p{font-size:13px;line-height:1.5;margin:9px 0;color:#c2cbbb}#messages p:first-child{color:var(--green)}.reset{margin-top:20px;background:none;font-size:12px;color:var(--muted);width:100%}.float{position:absolute;top:46%;left:50%;pointer-events:none;color:#ffe3a1;font-family:Cinzel;font-size:22px;text-shadow:0 2px 5px #000;opacity:0;transition:opacity .3s}.float.show{opacity:1}dialog{max-width:490px;background:#1c2921;color:#ecece2;border:1px solid #82906a;border-radius:10px;padding:35px;box-shadow:0 30px 100px #0008}dialog::backdrop{background:#07130dc9;backdrop-filter:blur(5px)}dialog h2{font-size:26px}dialog p{font-size:15px}.close{position:absolute;right:12px;top:8px;background:none;border:0;font-size:25px}#begin{background:#8fa273;color:#152012;width:100%;margin-top:14px;font-weight:700}@media(max-width:900px){header{padding:14px 18px;height:80px}.brand{font-size:19px}.topinfo span{display:none}main{grid-template-columns:1fr}.world{min-height:620px}aside{border-left:0;border-top:1px solid var(--line)}#panel{min-height:0}.location{left:20px}.world-bottom span:last-child{display:none}}@media(max-width:480px){.world{min-height:550px}.brand small{font-size:8px}.world-actions{bottom:110px}.world-actions button{padding:8px;font-size:12px}.location h1{font-size:27px}.action{max-width:95%;white-space:normal;width:max-content}.topinfo button{font-size:12px}}
.account-gate{position:fixed;inset:0;z-index:50;display:grid;place-items:center;background:#08120dc4;backdrop-filter:blur(5px);overflow:auto;padding:24px}.account-gate[hidden]{display:none}.account-card{width:min(470px,100%);padding:30px;background:#1d2a22;border:1px solid #817551;border-radius:8px;box-shadow:0 20px 90px #0009}.account-card h2{font-size:27px;margin:12px 0}.account-card p{font-size:14px}.account-card label{display:block;margin:16px 0;font-size:14px;color:#e1dbc7}.account-card input{display:block;width:100%;font:inherit;margin-top:8px;padding:12px;background:#121e17;color:#f0eadc;border:1px solid #5d6b51;border-radius:4px}.account-card input:focus{outline:2px solid var(--gold)}.account-card form button{width:100%;background:#9aab7b;color:#122010;font-weight:700}.account-error{color:#ffc0a4!important;min-height:18px}.account-card small{display:block;color:var(--muted);font-size:12px;line-height:1.8;margin-top:18px}.text-button{background:none;border:0;width:100%;margin-top:12px;color:var(--gold);font-size:14px}.character-choice{display:flex;width:100%;justify-content:space-between;align-items:center;text-align:left;margin:10px 0;padding:16px}.character-choice span{font-size:13px;color:var(--muted)}.account-footer{display:flex;justify-content:space-between;gap:12px}.health{font-size:14px;color:#c5dcab;margin:16px 0 10px}#save-status{font-size:12px;color:#a8bd91;display:block}button:disabled{opacity:.55;cursor:wait}.enemy-label{color:#ffc39e;border-color:#9e6f50}.world-actions{gap:5px}.topinfo{gap:12px}body:has(.account-gate:not([hidden])) main,body:has(.account-gate:not([hidden])) header{pointer-events:none}
.player-label{pointer-events:none;color:#e3edf9;border-color:#9bb4c9;background:#172732dc}#presence{font-size:12px;color:#bed1a5}.topinfo>span:nth-of-type(2){display:none}
.chat-panel{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.chat-heading{display:flex;justify-content:space-between;align-items:center}.chat-heading>span:last-child{font-size:12px;color:var(--muted)}#chat-feed{height:130px;overflow-y:auto;margin:12px 0;background:#142018;border:1px solid #344638;border-radius:4px;padding:10px;overflow-wrap:anywhere}#chat-feed p{font-size:14px;line-height:1.6;margin:4px 0;color:#d9dfce}#chat-feed strong{color:#cbb583;font-weight:600}#chat-feed .chat-empty{color:#a2b299}#chat-form{display:flex;gap:6px}#chat-input{min-width:0;flex:1;background:#121e17;border:1px solid #51604a;color:#eee;font:inherit;font-size:14px;padding:9px;border-radius:4px}#chat-input:focus{outline:2px solid var(--gold)}#chat-form button{padding:8px 10px;font-size:14px}#chat-feedback{font-size:12px;line-height:1.5;color:var(--muted);margin:8px 0;min-height:18px}.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}@media(min-width:901px){aside{max-height:calc(100vh - 90px);min-height:730px;overflow-y:auto}}
.gear{border-top:1px solid var(--line);margin-top:18px;padding-top:10px}.gear h3{font-size:18px;margin:8px 0}.gear p{font-size:14px;margin:8px 0}.gear button{display:block;width:100%;margin:8px 0;font-size:14px}.recipe-list{display:grid;gap:8px}.recipe-list button{text-align:left;font-size:14px}
.trade-panel{border-top:1px solid var(--line);padding-top:15px;margin-top:20px}.trade-panel p{font-size:13px;line-height:1.5}.trade-peer{width:100%;text-align:left;font-size:14px;margin-top:8px}#trade-notice{color:var(--gold)}#trade-dialog{max-width:640px;width:min(640px,95vw);max-height:90vh;overflow-y:auto}#trade-dialog h2{font-size:23px;margin:0 25px 16px 0}.trade-review{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:15px 0}.trade-review>div{background:#111e16;border:1px solid #516247;padding:12px;border-radius:4px}.trade-review strong{font-size:14px;color:var(--gold)}.trade-review p{font-size:14px;min-height:42px;margin:10px 0}.trade-review span{font-size:13px;color:#acc29a}#trade-offer-form{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}#trade-offer-form label{font-size:13px;display:block}#trade-offer-form input{width:100%;background:#132117;color:#eee;border:1px solid #56614d;font:inherit;padding:8px;margin:6px 0;border-radius:3px}#trade-offer-form small{display:block;color:var(--muted);font-size:12px}#trade-offer-form button{grid-column:span 2;align-self:center}#confirm-trade{width:100%;background:#8a9d6d;color:#112112;font-weight:700}#trade-error{color:#ffbc9d;min-height:18px;font-size:14px}@media(max-width:500px){#trade-offer-form{grid-template-columns:repeat(2,1fr)}.trade-review{grid-template-columns:1fr}}

.world-map{position:absolute;right:18px;top:18px;width:155px;height:155px;border:2px solid #9d8c5c;border-radius:50%;opacity:.92;pointer-events:none;box-shadow:0 4px 15px #0006}.region-label{font-size:14px;color:#eedca2;pointer-events:none}@media(max-width:650px){.world-map{width:100px;height:100px;top:12px;right:12px}}
.world-map{left:auto;bottom:auto;z-index:3}
.world-map{border-radius:12px}
/* Compact game client HUD */
:root{--panel:#352f25;--line:#655a43;--muted:#beb29b;--gold:#dfc587;--green:#b9c792}
body{height:100dvh;overflow:hidden;background:#171714;color:#eadfc5;font-size:13px}
header{height:38px;padding:0 14px;background:linear-gradient(#443c30,#26231e);border-bottom:2px solid #807050;box-shadow:0 1px 4px #0008}
.brand{font-size:14px;letter-spacing:2px;gap:7px}.crest{font-size:22px}.brand small{display:none}.topinfo{font-size:11px;gap:9px}.topinfo button{padding:4px 9px;font-size:11px;border-radius:2px}
main{height:calc(100dvh - 38px);min-height:0;max-width:none;grid-template-columns:minmax(0,1fr) 282px;grid-template-rows:minmax(0,1fr) 188px;gap:3px;padding:3px;background:#181714}
.world{min-height:0;grid-column:1;grid-row:1;border:2px solid #74664a}.world #game{width:100%;height:100%}.location{left:15px;top:12px}.location .eyebrow{display:none}.location h1{font-size:20px;margin:0;text-shadow:0 2px 4px #000}.location p{font-size:11px;max-width:380px}.world-actions{display:none}.world-bottom{padding:5px 10px;font-size:9px;background:#171913ae}.world-bottom span:last-child{display:block}.action{bottom:31px;padding:4px 12px;font-size:11px;border-radius:3px;max-width:90%;white-space:normal}.float{font-size:18px}
aside{grid-column:2;grid-row:1 / span 2;padding:0;min-height:0;max-height:none;height:100%;overflow:auto;border:2px solid #786b50;background:linear-gradient(100deg,#3b352b,#29261f);scrollbar-width:thin;scrollbar-color:#827252 #29251d}
.map-dock{position:relative;height:210px;border-bottom:3px ridge #807158;background:radial-gradient(ellipse,#4b4435,#26241f)}.map-dock .world-map{position:absolute;left:calc(50% - 90px);right:auto;top:8px;bottom:auto;width:180px;height:180px;border:5px ridge #998460;border-radius:50%;opacity:1;z-index:1;box-shadow:0 3px 9px #0008}.map-caption{position:absolute;bottom:6px;left:0;right:0;text-align:center;font-size:9px;letter-spacing:1.5px;color:#d5c59b}
.character{padding:9px 10px 4px;gap:8px}.portrait{display:none}.character .eyebrow{display:none}.character h2{font-family:'DM Sans',sans-serif;font-size:13px;color:#eed7a3;margin:0 0 3px;font-weight:700}.character p{font-size:11px;color:#c9bea6}.character p b{color:#e9d0a0}.health{margin:2px 10px 7px!important;font-size:11px!important;color:#c6d9ae!important;background:#25261c;padding:5px 7px;border:1px solid #57604a}#save-status{font-size:9px;margin:0 10px 3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#aaae92}
.tabs{margin:0;padding:3px;gap:3px;border-top:2px ridge #75694d;border-bottom:2px ridge #75694d;background:#24211b}.tabs button{background:linear-gradient(#544b3b,#302a22);border:1px outset #8a7958;border-radius:2px;padding:5px 1px;min-width:0;color:#bcae8b}.tabs button span{font-size:20px;display:block;line-height:22px}.tabs button small{font-size:8px;display:block}.tabs button[aria-selected=true]{border:1px inset #ac956b;color:#ffe2a1;background:linear-gradient(#6a573a,#4c3e2b);box-shadow:inset 0 0 9px #b6985144}
.panel-title{font-family:Cinzel,serif;font-size:13px;color:#dfc587;text-align:center;padding:10px 5px 6px}#panel{min-height:0;padding:6px 10px 12px}.inventory{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.item{position:relative;min-height:51px;height:51px;padding:3px 1px;border:1px solid #6b5f44;border-radius:0;background:linear-gradient(135deg,#25241c,#3c3426);font-size:8px;line-height:10px;color:#d1c3a4}.item span{font-size:22px;margin:1px 0;line-height:23px}.item b{position:absolute;top:2px;left:4px;font-size:10px;color:#f1db64;text-shadow:1px 1px #000}.item.empty{background:#29261e;border-color:#4f4735;opacity:.65}.inventory+p.hint{font-size:10px;line-height:1.4}.skill{margin:11px 0}.skillhead{font-size:12px;margin-bottom:5px}.skill small{font-size:10px;margin-top:4px}.bar{height:6px;border-radius:0;background:#22231b}.skill .bar i{background:#8eaa5e}.hint{font-size:11px;line-height:1.4}.gear{border:0;padding:0;margin:0}.gear h3{display:none}.gear p{font-size:12px}.gear button{font-size:11px;padding:10px;margin:10px 0;background:#423b2c;border-color:#857455}.quest{padding:9px;background:#2b291f;border-color:#746748}.quest h3{font-size:15px}.quest p,.task{font-size:11px}.trade-panel{margin:0 10px 12px;padding:0;border:0}.trade-panel>.eyebrow{display:none}.trade-panel p,.trade-peer{font-size:11px}.trade-peer{padding:7px}.player-label{pointer-events:auto}
.chat-dock{grid-column:1;grid-row:2;min-height:0;border:2px ridge #8a7856;background:linear-gradient(#3e392d,#2c2921);position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,.7fr);grid-template-rows:26px minmax(0,1fr);overflow:hidden}.chat-tabs{grid-column:1 / span 2;display:flex;gap:2px;background:#29251c;border-bottom:1px solid #82714e;padding:2px}.chat-tabs button{font-size:10px;padding:2px 18px;border-radius:0;border:1px outset #77674a;background:#443b2b;color:#c9b99a}.chat-tabs button[aria-pressed=true]{color:#fff0bd;background:#625239;border-style:inset}.chat-dock .chat-panel{border:0;margin:0;padding:6px 8px 4px;display:flex;flex-direction:column;min-height:0;min-width:0;grid-column:1;grid-row:2}.chat-heading{display:none}#chat-feed{flex:1;min-height:0;height:auto;margin:0 0 4px;background:none;border:0;border-radius:0;padding:0}#chat-feed p{font-size:11px;line-height:1.45;margin:2px 0;color:#ded3b8}#chat-feed strong{color:#d7b96f}#chat-form{gap:4px}#chat-input{padding:4px 6px;font-size:11px;border-radius:0;background:#201f18;border-color:#736245}#chat-form button{font-size:10px;padding:3px 9px;border-radius:0;background:#4d432f}#chat-feedback{font-size:9px;min-height:10px;line-height:1;margin:4px 0 0;color:#ab9f87}.chat-dock .log{grid-column:2;grid-row:2;margin:0;padding:7px 10px;border:0;border-left:1px solid #746447;overflow:auto;min-height:0}.log>.eyebrow{font-size:9px;letter-spacing:1px}#messages{margin:3px 0}#messages p{font-size:10px;line-height:1.4;margin:4px 0}.chat-dock[data-channel=world]{grid-template-columns:1fr}.chat-dock[data-channel=world] .log{display:none}.chat-dock[data-channel=game]{grid-template-columns:1fr}.chat-dock[data-channel=game] .chat-panel{display:none}.chat-dock[data-channel=game] .log{grid-column:1;border-left:0}.chat-dock[data-channel=game] .chat-tabs,.chat-dock[data-channel=world] .chat-tabs{grid-column:1}
[hidden]{display:none!important}dialog{background:#352e23;border:3px ridge #a58e62;border-radius:3px}dialog p{color:#c7bda5}.account-card{background:#332e24;border:3px ridge #a18d63}.account-card h2{color:#e9d7a9}
@media(max-width:900px){header{height:38px}.brand{font-size:13px}.topinfo span{display:inline}main{grid-template-columns:minmax(0,1fr) 244px;grid-template-rows:minmax(0,1fr) 164px}aside{min-height:0;max-height:none;border-top:2px solid #786b50}.map-dock{height:174px}.map-dock .world-map{width:146px;height:146px;left:calc(50% - 73px);top:4px}.location{left:10px}.chat-dock{grid-template-columns:1fr}.chat-dock .log{display:none}.chat-tabs{grid-column:1}.chat-dock[data-channel=game] .log{display:block}}
@media(max-width:600px){main{grid-template-columns:minmax(0,1fr) 178px;grid-template-rows:minmax(0,1fr) 144px}.map-dock{height:135px}.map-dock .world-map{width:111px;height:111px;left:calc(50% - 55.5px)}.map-caption{font-size:7px}.brand{letter-spacing:1px}.topinfo{gap:3px}#presence{display:none}.topinfo button{padding:4px 5px}.character{padding:6px}.character h2{font-size:11px}.health{margin:2px 5px 5px!important;font-size:9px!important}#save-status{margin:0 6px}.tabs button span{font-size:16px}.tabs button small{font-size:6px}.tabs{gap:1px;padding:2px}#panel{padding:3px 5px 8px}.item{height:43px;min-height:43px;font-size:6px;line-height:8px}.item span{font-size:18px;line-height:20px}.panel-title{font-size:11px;padding:6px}.location h1{font-size:16px}.location p{max-width:170px;font-size:9px}.world-bottom{display:none}.action{bottom:8px;font-size:9px;padding:3px 6px}.skillhead{font-size:10px}.skill small{font-size:8px}.chat-tabs button{padding:2px 13px}}
.item svg{width:40px;height:40px;fill:#a78049;stroke:#e6c68c;stroke-width:1.6;stroke-linejoin:round;filter:drop-shadow(2px 3px 1px #0007)}@media(max-width:600px){.item svg{width:30px;height:32px}}
@media(min-width:601px) and (max-width:900px){.chat-dock[data-channel=all]{grid-template-columns:minmax(0,1fr) minmax(145px,.65fr)}.chat-dock[data-channel=all] .chat-tabs{grid-column:1 / span 2}.chat-dock[data-channel=all] .log{display:block}}@media(max-width:600px){.chat-dock[data-channel=all]{grid-template-columns:1fr;grid-template-rows:26px 34px minmax(0,1fr)}.chat-dock[data-channel=all] .log{display:block;grid-column:1;grid-row:2;border:0;padding:2px 7px}.chat-dock[data-channel=all] .log>.eyebrow{display:none}.chat-dock[data-channel=all] .chat-panel{grid-row:3}.chat-dock[data-channel=all] #messages{margin:0}.chat-dock[data-channel=all] #messages p{margin:0}}

#economy-dialog{width:min(650px,96vw);max-width:650px;max-height:90dvh;overflow:auto;padding:24px}#economy-dialog h2{margin:8px 0;font-size:23px}.economy-quantity{display:flex;align-items:center;gap:12px;font-size:12px}.economy-quantity input{width:100px;background:#211f18;border:1px solid #85734e;color:#eee0bd;padding:7px}.economy-list{margin:14px 0;display:grid;gap:5px}.economy-row{display:grid;grid-template-columns:1fr auto auto;gap:7px;align-items:center;border:1px solid #665b42;padding:8px;background:#28251c}.economy-row span{font-size:12px}.economy-row button{font-size:11px;padding:6px 9px;border-radius:2px}.economy-gold,#economy-note{color:#e4c77e!important;font-size:12px}@media(max-width:500px){.economy-row{grid-template-columns:1fr 1fr}.economy-row span{grid-column:1 / span 2}}

.journey-card{margin-top:9px}.journey-card p{font-size:10px;margin:6px 0}#journey-dialog{width:min(500px,95vw);max-height:90vh;overflow:auto}#journey-dialog .quest-progress,#journey-dialog .quest-reward{color:#ddc084;font-size:13px}#quest-choice{width:100%;background:#605337;border-color:#a18a56}#quest-note{font-size:12px;color:#e0c388}

.journey-card summary,.starter-fold summary{cursor:pointer;list-style:none}.journey-card summary:after{content:"▾";float:right;color:#c8b482}.journey-card h3{font-size:12px;margin:3px 0}.journey-card summary p{margin:3px 0;font-size:9px}.journey-card .eyebrow{font-size:8px;letter-spacing:.7px}.starter-fold summary{font-size:11px;color:#e2cb9a}.starter-content{margin-top:10px}.journey-card[open] summary:after{content:"▴"}

.enemy-label{min-width:90px;text-align:center}.enemy-health,.actor-health{height:12px;position:relative;background:#441f1a;border:1px solid #a7a77a;margin-top:3px;overflow:hidden}.enemy-health span,.actor-health span{position:relative;z-index:1;font-size:9px;line-height:10px;color:#f0e2c4}.enemy-health i,.actor-health i{position:absolute;inset:0 auto 0 0;background:#658244}.actor-health{position:absolute;width:70px;transform:translate(-50%,-100%);text-align:center;pointer-events:none}.damage-splat{position:absolute;transform:translate(-50%,-100%);background:#8b2825;border:2px solid #ce9d76;border-radius:50%;padding:5px 7px;font-weight:bold;font-size:15px;color:#fff1d7;text-shadow:1px 1px #3c1110;pointer-events:none;box-shadow:0 2px 5px #0006}

.eat-food{width:100%;margin:8px 0;padding:9px;color:#eadbb9;background:#514834;border:1px solid #827455}.eat-food:disabled{opacity:.45}

.loot-label{color:#ffe3a3;border-color:#c4a054;background:#3b3022}

.tabs{grid-template-columns:repeat(6,minmax(0,1fr))}.tabs button{min-width:0;padding-left:1px;padding-right:1px}.tabs small{font-size:8px}.combat-level{font-size:19px;color:#e4cd97;text-align:center;margin:8px}.combat-weapon{font-size:17px;text-align:center;color:#f2e3be;margin:8px}.combat-armor{text-align:center;font-size:12px;color:#aaa28e}.combat-stats{display:flex;justify-content:space-around;padding:12px;border:1px solid #746950;background:#29271e}.combat-stats b{color:#e4cd97}.attack-styles{display:grid;gap:6px;margin:12px 0}.attack-styles button{padding:9px;border:1px solid #75694f;background:#3d382c;color:#c7bc9e}.attack-styles button[aria-pressed="true"]{border-color:#c8aa64;background:#5b5036;color:#f4e7c1}.combat-panel #combat-eat,.combat-panel #combat-stop{width:100%;padding:9px;margin:5px 0}.combat-target{font-size:12px;color:#e4cd97}.combat-panel button:disabled{opacity:.4}

.combat-level{font-size:16px;margin:5px}.combat-weapon{font-size:15px;margin:5px}.combat-armor{margin:5px}.combat-stats{padding:8px}.combat-panel .hint{margin:6px 0;font-size:10px}.attack-styles{grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;margin:8px 0}.attack-styles button{font-size:10px;padding:8px 2px}.combat-panel #combat-eat,.combat-panel #combat-stop{padding:7px}.combat-panel #combat-health{margin:6px 0}.combat-target{margin:7px 0}

.prayer-controls{border:1px solid #75694f;padding:7px;margin:6px 0}.prayer-controls p{font-size:12px;margin:0 0 6px;color:#e3d4a4}.prayer-controls div{display:flex;gap:3px}.prayer-controls button{flex:1;font-size:10px;padding:6px 2px}.prayer-controls button[aria-pressed="true"]{background:#695831;border-color:#d6b75a}.prayer-controls small{font-size:9px;color:#aea58b}

.magic-controls{padding:7px;margin:6px 0;border:1px solid #6e7897;background:#292b35}.magic-title{color:#c9c9e5;font-size:12px;margin-bottom:5px}.magic-controls button{width:100%;padding:6px;margin:3px 0;font-size:11px;border-color:#6e7897}.magic-controls small{display:block;font-size:9px;color:#c7c2b5}.magic-controls p{font-size:10px;margin:5px 0;color:#dbd0b6}

#weapon-switches{display:flex;gap:4px;flex-wrap:wrap}#weapon-switches button{font-size:11px;padding:6px}#ranged-ammo{font-size:11px;color:#cabd9b}.prayer-controls>div{display:flex;flex-wrap:wrap;gap:4px}

.outpost-legend{display:block;text-align:center;color:#d4c59e;font-size:10px;padding:3px}

.combat-alert,.low-health-notice{position:absolute;pointer-events:none;z-index:12;left:50%;transform:translateX(-50%);padding:7px 12px;text-align:center;border:1px solid #bd9c5a;background:#211c18ed;color:#ffe0a1;font-size:12px;max-width:80%}.combat-alert{top:82px}.low-health-notice{bottom:65px;border-color:#b85749;color:#ffb9a3}.combat-alert[hidden],.low-health-notice[hidden]{display:none}.damage-splat.hit{background:#9c7330;color:#fff0bd}.damage-splat.hurt{background:#a83d30;color:#fff}.world.damage-flash::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:10;animation:damage-edge .3s ease-out forwards}@keyframes damage-edge{from{box-shadow:inset 0 0 40px #d9433760}to{box-shadow:inset 0 0 0 transparent}}@media(prefers-reduced-motion:reduce){.world.damage-flash::after{animation:none}}

#social-dialog{width:min(580px,90vw);max-height:85vh;overflow:auto}.social-row{display:flex;align-items:center;gap:6px;padding:7px 0;border-bottom:1px solid #645b41}.social-row span{flex:1}.social-row button{font-size:11px}#party-messages{max-height:130px;overflow:auto;font-size:12px}#party-form label{display:block}#party-text{width:100%}

#playtest-dialog{width:min(540px,90vw)}#playtest-dialog label{display:block;margin:14px 0}#playtest-dialog select,#playtest-dialog textarea{display:block;width:100%;box-sizing:border-box;margin-top:6px;background:#18221b;color:#efe6d0;border:1px solid #756b4e;border-radius:5px;padding:10px;font:inherit}#playtest-dialog textarea{resize:vertical}#playtest-dialog small{display:block;color:#c4bea9}#playtest-dialog .feedback-status{min-height:1.5em}

.actor-health{height:22px;width:82px;box-sizing:border-box;border:2px solid #d5c99c;border-radius:3px;background:#401b18;box-shadow:0 2px 5px #0009}.actor-health span{display:block;font-size:12px;font-weight:700;line-height:18px;color:#fff;text-shadow:0 1px 2px #000,1px 0 2px #000;white-space:nowrap}.actor-health i{background:#568c3d}

#leaderboard-dialog{width:min(620px,92vw)}#leaderboard-dialog select{margin:8px;padding:8px;background:#211d17;color:#f5e6c9}#leaderboard-dialog table{width:100%;border-collapse:collapse;text-align:left}#leaderboard-dialog th,#leaderboard-dialog td{padding:9px;border-bottom:1px solid #665b42}#leaderboard-dialog .leaderboard-scroll{max-height:45vh;overflow:auto}#leaderboard-dialog .your-ranking{background:#435337;color:#fff}#leaderboard-dialog small{display:block;margin:12px 0}

#progression-dialog{width:min(760px,94vw);max-height:85vh;overflow:auto}#progression-dialog .progression-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #665b42}#progression-dialog .progression-row span{flex:1;line-height:1.5}#progression-dialog .progression-row button{flex-shrink:0}#progression-dialog h3{color:#d6bd7c;margin-top:24px}
#world-atlas{width:min(1120px,95vw);max-height:94vh;padding:18px;overflow:auto}#world-atlas h2{margin:0 0 12px}#world-atlas canvas{display:block;width:100%;height:min(65vh,680px);object-fit:contain;background:#26352d;border:1px solid #a18b59;touch-action:none;cursor:grab}.atlas-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:10px}.atlas-controls label{display:flex;gap:8px;align-items:center}.atlas-controls select{max-width:55vw;background:#302f26;color:#eedfb7;padding:8px}.atlas-note{margin:10px 0}.open-world-map{display:block;margin:4px auto;font-size:11px}#world-atlas small{display:block;line-height:1.5}@media(max-width:600px){#world-atlas{padding:12px}.atlas-controls label{display:block}.atlas-controls select{max-width:75vw}}
#world-atlas{max-width:1120px}#world-atlas canvas{position:static;inset:auto;width:min(100%,89vh);height:auto;margin:auto}
/* Reserve a separate row below the minimap for its map control. */
.map-dock{height:236px}.map-dock .map-caption{display:none}.map-dock .outpost-legend{position:absolute;top:192px;left:0;right:0;padding:0;pointer-events:none}.map-dock .open-world-map{position:absolute;left:8px;right:8px;bottom:5px;z-index:4;margin:0;height:28px;padding:4px 8px;background:#423b2a;border:1px solid #ab9564;color:#f2dfac;line-height:18px;font-size:11px}.map-dock .open-world-map:hover{background:#605437}@media(max-width:900px){.map-dock{height:202px}.map-dock .outpost-legend{top:152px}}@media(max-width:600px){.map-dock{height:166px}.map-dock .outpost-legend{top:116px}.map-dock .open-world-map{font-size:10px}}
#adventure-guide{width:min(780px,94vw);max-width:780px;max-height:88vh;overflow:auto}#adventure-guide h3{color:#e0c88c;margin:20px 0 8px}#adventure-guide p{font-size:13px;line-height:1.6}.event-active{color:#e5bb70!important;border-left:3px solid #c0a052;padding-left:10px}.event-ticker{position:absolute;left:12px;bottom:37px;z-index:4;font-size:11px;padding:5px 8px;max-width:65%;background:#332c21ec;color:#edcd85}.rare-list p{border-bottom:1px solid #655a40;padding-bottom:10px}#weapon-ability{border-color:#b5a062;color:#f0d589}
.settings-card{max-height:90vh;overflow:auto;width:min(520px,94vw)}.settings-card form{padding:12px 0;border-top:1px solid #756749;margin:10px 0}.settings-card h3{margin:4px 0 10px;color:#e0c78c}.settings-card small{display:block;line-height:1.5;margin:8px 0}.settings-status{color:#eed08a;min-height:1.5em}.settings-card label{display:block;margin:10px 0}.settings-card input{width:100%}
#chat-form #chat-emoji{font-size:19px;line-height:18px;padding:2px 7px;color:#f0d691}#emoji-picker{position:fixed;inset:auto;margin:0;padding:12px;width:310px;max-width:calc(100vw - 16px);background:#332e23;color:#e8d9b5;border:2px ridge #a18b5c;box-shadow:0 8px 30px #0008}#emoji-picker strong{font-size:12px;display:block;margin-bottom:8px}.emoji-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:4px}.emoji-grid button{padding:5px 0;font-size:22px;line-height:27px;background:#45402f;border:1px solid #655e46}.emoji-grid button:hover{background:#655a3b}
