.world-active{background:#070806}
.world-active .game{display:block;min-height:100vh;background:radial-gradient(circle at 50% 15%,#302718,#090a08 62%)}
.world-active .game>aside,.world-active .game>main>header{display:none}
.world-active .game>main{padding:0;max-width:none}
.world-active #content{width:100%}
.classic-world-shell{margin:0;min-height:100vh;border:5px ridge #77613b;background:#090a08;color:#ded3b8;font-family:Georgia,'Times New Roman',serif;box-shadow:inset 0 0 80px #000}
.classic-world-top{height:82px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:5px ridge #665331;background:linear-gradient(#211b10,#0e0e0b 65%,#18140d);box-shadow:inset 0 0 24px #000;padding:0 22px}
.classic-world-top>strong{font:700 clamp(25px,3vw,45px) Cinzel;color:#d1ab66;letter-spacing:.04em;text-shadow:0 3px #2f1d0b,0 0 12px #d19b3e42}
.classic-world-top .mode-switch{height:54px;border:3px ridge #7b6135}
.classic-world-top .mode-switch span,.classic-world-top .mode-switch b{display:grid;place-items:center;min-width:190px;padding:0 20px;font:700 17px Cinzel}
.classic-world-top .mode-switch span{cursor:pointer;color:#bcae91;background:#11110e}
.classic-gold{justify-self:end;color:#be9450;font-size:12px;letter-spacing:.14em}.classic-gold b{display:block;color:#f0c66f;font:700 24px Cinzel;letter-spacing:.03em}
.classic-world-grid{display:grid;grid-template-columns:minmax(275px,25%) minmax(520px,1fr) minmax(310px,27%);min-height:calc(100vh - 90px)}
.classic-panel{min-width:0;background:linear-gradient(90deg,#0e0f0c,#15140e 50%,#0c0d0b);box-shadow:inset 0 0 30px #000}
.classic-player-panel{position:relative;border-right:4px ridge #59472c}.classic-market-panel{border-left:4px ridge #59472c;padding-bottom:12px;overflow:hidden}
.classic-panel>h3,.classic-bottom h3{margin:0;padding:5px 10px;border-top:3px ridge #54442b;border-bottom:3px ridge #54442b;background:linear-gradient(#201a10,#0d0e0b);color:#d7b973;text-align:center;font:600 14px Cinzel;letter-spacing:.06em;text-shadow:0 2px #000}
.classic-player{display:grid;grid-template-columns:72px 1fr;gap:12px;align-items:center;padding:10px}.classic-portrait{display:grid;place-items:center;width:68px;height:72px;border:3px ridge #765d34;background:radial-gradient(circle at 50% 30%,#c79b70 0 18%,#384149 19% 34%,#111 35%);color:#f0ce86;font:700 25px Cinzel}.classic-player div:last-child{display:flex;flex-direction:column;gap:5px}.classic-player b{color:#f0cf86;font:600 15px Cinzel}.classic-player span{color:#b5aa91;font-size:11px}
.classic-skill-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;padding:8px}.classic-skill-grid button{position:relative;display:flex;min-width:0;min-height:68px;flex-direction:column;align-items:center;justify-content:center;border:2px ridge #5d4b2e;background:radial-gradient(circle,#25241b,#0b0d0b);color:#d5c59f;cursor:pointer}.classic-skill-grid button:hover{border-color:#c09851;background:#2d291d}.classic-skill-grid i{font-style:normal;font-size:22px;color:#c8c6bd}.classic-skill-grid span{max-width:100%;overflow:hidden;text-overflow:ellipsis;color:#d9ad59;font-size:8px;text-transform:capitalize}.classic-skill-grid b{font-size:11px;color:#e6dfcc}
.classic-gather-list{padding:6px 10px}.classic-gather-list button{display:flex;justify-content:space-between;width:100%;padding:7px 8px;border:0;border-bottom:1px solid #3a3220;background:#0c0e0b;color:#cabf9f;cursor:pointer;text-align:left;font:12px Georgia}.classic-gather-list button:hover{background:#242116}.classic-gather-list button b{color:#e0b75f}.classic-gather-list button:disabled{opacity:.45}
.classic-pack{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;padding:9px}.classic-pack>span{position:relative;display:grid;place-items:center;min-height:48px;border:2px ridge #4d422c;background:#10120f}.classic-pack i{font-style:normal;color:#b8a36e}.classic-pack b{position:absolute;right:3px;bottom:2px;font-size:8px;color:#f0d58e}
.classic-center{display:flex;min-width:0;flex-direction:column;background:#080907}.classic-center .world-stage{border:0;border-bottom:4px ridge #59472c;box-shadow:none;flex:1}.classic-center .world-stage canvas#worldCanvas{height:min(68vh,700px);min-height:510px;object-fit:cover}.classic-center .world-minimap{border:4px ridge #857048;background:#080a07e8}.classic-center .world-hud{border:3px ridge #8a7041;background:#080a07f2}.classic-center .world-status{border:0;border-bottom:3px ridge #4d422c;background:#0a0c09;color:#b9ad92}
.classic-bottom{display:grid;grid-template-columns:1fr 285px;min-height:155px;border-top:2px solid #191812;background:#090a08}.classic-bottom section{min-width:0}.classic-bottom #worldFieldLog{height:119px;overflow:auto;padding:8px 12px;background:linear-gradient(#0c0f0c,#080907);font-size:11px}.classic-bottom #worldFieldLog p{margin:0 0 7px;color:#c3b99f}.classic-bottom #worldFieldLog b{color:#d7b45f}.classic-quick{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:7px;border-left:3px ridge #524429;background:#0c0d0a}.classic-quick button{display:flex;min-width:0;flex-direction:column;align-items:center;justify-content:center;border:2px ridge #51452e;background:linear-gradient(#201e16,#0a0b09);color:#c7a961;cursor:pointer;font-size:21px}.classic-quick button:hover{border-color:#b28b46}.classic-quick span{font:8px Cinzel;color:#d6c8a9}
.classic-market-panel .market-tabs{display:flex;justify-content:space-between;align-items:center;padding:8px 10px}.classic-market-panel .market-tabs b{padding:7px 16px;border:2px ridge #536638;background:#11220b;color:#d9bf73;font:12px Cinzel}.classic-market-panel .market-ticket{margin:0 8px 8px;padding:9px;border:2px ridge #4b412d;background:#090a08}.classic-market-panel .market-ticket label{font:9px Cinzel;color:#c7ad70}.classic-market-panel .market-ticket input,.classic-market-panel .market-ticket select{padding:6px;border:1px solid #51452d;background:#11130e;color:#e4d7bc}.classic-market-panel .market-ticket button{padding:8px}.market-two{display:grid;grid-template-columns:1fr 1fr;gap:6px}.classic-market-panel .order-book,.classic-market-panel .recent-trades,.classic-market-panel .own-orders{max-height:125px;margin:0 8px;overflow:auto;border:1px solid #443923;background:#090a08}.classic-market-panel .order-book>div,.classic-market-panel .recent-trades>div,.classic-market-panel .own-orders>div{grid-template-columns:minmax(70px,1fr) 70px 45px;padding:6px;font-size:9px}.classic-market-panel .recent-trades>div{grid-template-columns:1fr 82px 1fr}.classic-market-panel .own-orders>div{grid-template-columns:1fr 80px 50px 45px}.classic-player-list{display:grid;gap:3px;max-height:150px;margin:7px 8px;overflow:auto}.classic-player-list span{padding:7px;border:1px solid #3e3421;background:#0c0e0b;color:#ccb879;font-size:10px}.classic-player-list:empty:after{content:'Loading nearby adventurers…';padding:8px;color:#807660;font-size:10px}
.world-active .member-realms{margin:18px;border:3px ridge #5b492d;padding:12px;background:#0b0c09}
.classic-center .world-stage{position:relative;overflow:hidden;background:#172317}
.classic-center .world-stage:after{content:'';position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 34px #071008aa,inset 0 0 2px 2px #d4af6038}
.classic-center #worldCanvas{display:block;width:100%;cursor:crosshair;image-rendering:auto;filter:saturate(1.22) contrast(1.07) brightness(1.04)}
.classic-center #worldCanvas:active{cursor:grabbing}
.classic-hover-action{position:absolute;z-index:4;top:66px;left:14px;pointer-events:none;text-shadow:1px 2px #000,0 0 4px #000}.classic-hover-action b{display:block;color:#f1d681;font:700 15px Georgia}.classic-hover-action span{color:#eee5ce;font:11px Georgia}
.classic-context-menu{position:absolute;z-index:20;width:178px;border:2px solid #96805a;background:#10100df2;box-shadow:3px 5px 14px #000d;padding:2px;color:#eee;font:12px Arial}.classic-context-menu[hidden]{display:none}.classic-context-menu strong{display:block;padding:4px 6px;color:#f1d470;font-weight:700}.classic-context-menu button{display:block;width:100%;padding:4px 6px;border:0;background:transparent;color:#f4f1e8;cursor:pointer;text-align:left;font:12px Arial}.classic-context-menu button:hover{background:#4d3018;color:#fff36f}.classic-context-menu button:last-child{color:#aaa}
.classic-center .world-minimap{box-shadow:0 4px 16px #000b,inset 0 0 12px #000}
.classic-center .world-minimap:before{content:'REGION MAP';display:block;padding:2px 4px;color:#bca66e;background:#0c0e0be8;text-align:center;font:7px Cinzel;letter-spacing:.14em}
.classic-center .world-hud{box-shadow:0 5px 18px #000c;background:linear-gradient(90deg,#0d0f0ceb,#1c1a12f2,#0d0f0ceb)}
.classic-center .world-hud b{color:#f0d38c;text-shadow:0 1px #000}.classic-center .world-hud span{color:#bdb39e}
.classic-panel{background-image:linear-gradient(90deg,#0e0f0c,#15140e 50%,#0c0d0b),repeating-linear-gradient(0deg,#ffffff05 0 1px,transparent 1px 4px)}
.classic-world-shell ::-webkit-scrollbar{width:9px;height:9px}.classic-world-shell ::-webkit-scrollbar-track{background:#090a08}.classic-world-shell ::-webkit-scrollbar-thumb{border:2px ridge #735d38;background:#2b2417}
.skills-heading{display:flex!important;align-items:center;justify-content:center;gap:12px}.skills-heading button{padding:3px 7px;border:1px solid #80673e;background:#11120e;color:#bca05f;cursor:pointer;font:7px Cinzel}.skills-heading button:hover,.skills-heading button.active{background:#57401f;color:#ffe0a0}
.all-skills-drawer{position:fixed;z-index:80;top:66px;bottom:0;left:0;width:min(390px,92vw);overflow:auto;border:5px ridge #79613a;background:linear-gradient(100deg,#11120e,#080a08);box-shadow:12px 0 35px #000e,inset 0 0 40px #000;color:#d8cdb3}.all-skills-drawer[hidden]{display:none}.all-skills-drawer header{position:sticky;z-index:2;top:0;display:flex;align-items:center;justify-content:space-between;padding:18px 17px 13px;border-bottom:3px ridge #5a492c;background:#11120ff5}.all-skills-drawer header small{color:#9b8451;font:8px Cinzel;letter-spacing:.16em}.all-skills-drawer h2{margin:3px 0 0;color:#e0bd72;font:21px Cinzel}.all-skills-drawer header button{width:34px;height:34px;border:2px ridge #665333;background:#191812;color:#d8bd7e;font-size:22px}.all-skills-drawer>p{margin:12px 15px;color:#968b73;font-size:10px}.all-skills-list{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:0 12px 14px}.all-skills-list button{display:grid;grid-template-columns:38px 1fr 28px;align-items:center;min-width:0;padding:8px 6px;border:2px ridge #4f432c;background:radial-gradient(circle at 25%,#24231a,#0c0e0b);color:#d9c69b;cursor:pointer;text-align:left}.all-skills-list button:hover{border-color:#bd9148;background:#302a1c}.all-skills-list i{color:#d6b56e;font-style:normal;font-size:22px;text-align:center}.all-skills-list span{overflow:hidden;color:#dec17c;font:9px Cinzel;text-overflow:ellipsis;text-transform:capitalize}.all-skills-list small{display:block;margin-top:2px;color:#746b58;font:6px Cinzel}.all-skills-list b{color:#eee2c9;font:12px Cinzel;text-align:center}.all-skills-drawer footer{position:sticky;bottom:0;display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:10px 12px;border-top:3px ridge #59472b;background:#0d0f0ced}.all-skills-drawer footer button{padding:9px;border:2px ridge #705a35;background:#211b10;color:#d9b56c;font:8px Cinzel}
.classic-world-top{height:66px}.classic-world-grid{min-height:calc(100vh - 74px);grid-template-columns:minmax(310px,23%) minmax(620px,1fr) minmax(350px,25%)}
.classic-player{padding:8px}.classic-vitals{display:grid!important;gap:3px!important;margin-top:3px}.classic-vitals label{display:grid;grid-template-columns:44px 1fr;align-items:center;color:#9f947d!important;font-size:8px}.classic-vitals i,.classic-gather-list span>i{display:block;height:6px;border:1px solid #4b3e27;background:#080907;overflow:hidden}.classic-vitals em,.classic-gather-list em{display:block;height:100%;background:linear-gradient(90deg,#315f91,#5d8bc1)}.classic-vitals em.hp{background:linear-gradient(90deg,#8d302d,#ca5948)}.classic-vitals em.energy{background:linear-gradient(90deg,#aa7136,#e2a64d)}
.classic-skill-grid{gap:3px;padding:6px}.classic-skill-grid button{min-height:55px}.classic-skill-grid i{font-size:18px}.classic-gather-list{padding:4px 8px}.classic-gather-list button{padding:5px 6px}.classic-gather-list button>span{display:grid;grid-template-columns:auto 1fr;gap:3px 6px;align-items:center}.classic-gather-list button>span>i{grid-column:1/-1;width:110px}.classic-gather-list button>span>i em{background:linear-gradient(90deg,#327456,#68af84)}
.classic-equipment{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:7px;min-height:112px}.classic-equipment button{z-index:1;min-width:0;border:2px ridge #51442c;background:#10110e;color:#bba36d}.classic-equipment button i{display:block;font-style:normal;font-size:17px}.classic-equipment button span{display:block;overflow:hidden;text-overflow:ellipsis;color:#897f69;font-size:7px;white-space:nowrap}.classic-equipment .equipment-avatar{position:absolute;inset:16px 34% 13px;display:grid;place-items:center;border:2px solid #3e3524;background:radial-gradient(circle,#3d4650,#111);color:#d4b46e;font:700 29px Cinzel}.classic-equipment button:nth-of-type(2),.classic-equipment button:nth-of-type(5){margin-left:48px}.classic-pack{grid-template-columns:repeat(6,1fr);padding:6px}.classic-pack>span{min-height:39px}
.classic-player-footer{display:grid;grid-template-columns:1fr 1fr;border-top:3px ridge #4f4129}.classic-player-footer section{display:flex;min-width:0;flex-direction:column;gap:3px;padding:8px;border-right:1px solid #3a3121}.classic-player-footer b{color:#d6b66e;font:10px Cinzel}.classic-player-footer span,.classic-player-footer small{overflow:hidden;color:#a79b82;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.classic-player-footer button{padding:4px;border:1px solid #5e4b2e;background:#17150f;color:#c9ac6b;font-size:8px}
.classic-center .world-stage canvas#worldCanvas{height:min(70vh,760px);min-height:580px}.classic-center .world-minimap b{display:block;color:#d7c18d;text-align:center;font:9px Cinzel}.classic-center .world-status{padding:5px 9px;font-size:9px}
.classic-bottom{grid-template-columns:1fr 300px;min-height:154px}.classic-chat{display:grid;grid-template-rows:25px 1fr 27px}.chat-tabs{display:flex;border-bottom:2px ridge #4a3d26}.chat-tabs button{min-width:72px;border:0;border-right:1px solid #3b3222;background:#0b0c09;color:#9e9179;font:9px Cinzel}.chat-tabs button.active{background:#2a2114;color:#e1be70}.classic-bottom .classic-chat #worldFieldLog{height:80px;padding:5px 11px}.chat-entry{display:grid;grid-template-columns:1fr 58px;border-top:1px solid #342c1e}.chat-entry input{border:0;background:#11120e;color:#d4c9b0;padding:5px 9px;font:10px Georgia}.chat-entry button{border:0;border-left:1px solid #403624;background:#19170f;color:#776c57;font:8px Cinzel}.classic-quick{grid-template-columns:repeat(4,1fr);gap:3px;padding:5px}.classic-quick button{font-size:18px}.classic-quick span{font-size:7px}
.classic-market-panel .market-tabs{display:grid;grid-template-columns:1fr 1fr auto;gap:4px}.classic-market-panel .market-tabs b,.classic-market-panel .market-tabs span{display:grid;place-items:center;padding:6px;border:2px ridge #536638;background:#11220b;color:#d9bf73;font:10px Cinzel}.classic-market-panel .market-tabs span{border-color:#4e4430;background:#15140f;color:#96886d}.market-overview{margin:0 8px 7px;border:1px solid #493d27;background:#090a08}.market-head,.market-overview button{display:grid;grid-template-columns:minmax(105px,1fr) 48px 48px 48px;align-items:center}.market-head{padding:5px;color:#887b61;font:7px Cinzel}.market-overview button{width:100%;padding:5px;border:0;border-top:1px solid #30291b;background:#0d0f0c;color:#c9bea4;text-align:left;font:9px Georgia}.market-overview button:hover{background:#242014}.market-overview button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.market-overview button i{margin-right:5px;color:#94805d}.market-overview button b{color:#d0a95c}.market-overview button em{color:#a9bb8c;font-style:normal}.market-overview button em:last-child{color:#d29376}
.classic-market-panel details{margin:0 8px 6px;border:1px solid #443923;background:#090a08}.classic-market-panel summary{padding:6px;color:#c6a75f;cursor:pointer;font:8px Cinzel}.classic-market-panel .market-ticket{margin:0;border:0;border-top:1px solid #403522}.order-columns{display:grid;grid-template-columns:1fr 1fr}.order-columns section{min-width:0}.order-columns .order-book{margin:0 3px 6px;max-height:86px}.order-columns .order-book>div{grid-template-columns:1fr 48px 34px;padding:4px}.classic-market-panel .recent-trades{max-height:100px}.player-tabs{display:grid;grid-template-columns:repeat(3,1fr);margin:6px 8px 0;text-align:center;color:#8f8369;font:8px Cinzel}.player-tabs>*{padding:5px;border-bottom:1px solid #403521}.player-tabs b{color:#d0b36c;border-bottom-color:#a67d3e}.classic-player-list{max-height:180px}.classic-player-list span{display:grid;grid-template-columns:28px 1fr;padding:5px}.classic-player-list i{grid-row:1/3;display:grid;place-items:center;width:22px;height:24px;border:1px solid #564529;background:#24241c;color:#d7ba70;font-style:normal}.classic-player-list b{font:9px Cinzel}.classic-player-list small{color:#7f9774;font-size:8px}
@media(min-width:1600px){.classic-world-grid{grid-template-columns:360px minmax(760px,1fr) 400px}.classic-player-panel,.classic-market-panel{font-size:12px}}
@media(max-width:1250px){.classic-world-grid{grid-template-columns:250px minmax(480px,1fr)}.classic-market-panel{grid-column:1/-1;border-left:0;border-top:4px ridge #59472c;display:grid;grid-template-columns:repeat(2,1fr)}.classic-market-panel>h3,.classic-market-panel>.market-tabs{grid-column:1/-1}.classic-market-panel .market-ticket{grid-row:2/7}.classic-market-panel .classic-player-list{grid-column:2}}
@media(max-width:820px){.classic-world-top{grid-template-columns:1fr auto;height:68px}.classic-world-top .mode-switch{display:none}.classic-world-grid{display:block}.classic-player-panel{border-right:0}.classic-skill-grid{grid-template-columns:repeat(5,1fr)}.classic-center .world-stage canvas#worldCanvas{min-height:430px}.classic-bottom{grid-template-columns:1fr}.classic-quick{grid-template-columns:repeat(5,1fr);border-left:0}.classic-market-panel{display:block}.classic-world-top>strong{font-size:25px}}

/* 0.29 visual cockpit — original Realmforge dark-fantasy classic MMO shell */
.classic-world-shell{
  --rf-ink:#080907;
  --rf-panel:#10110e;
  --rf-panel-hi:#191812;
  --rf-line:#51442c;
  --rf-line-hi:#8e7244;
  --rf-bronze:#c6a35d;
  --rf-gold:#efd18b;
  --rf-text:#d8cfbb;
  --rf-muted:#8e8778;
  width:100%;
  min-height:100dvh;
  border:3px ridge #76613f;
  background:
    radial-gradient(circle at 50% -20%,#51412355,transparent 38%),
    repeating-linear-gradient(90deg,#ffffff04 0 1px,transparent 1px 6px),
    #070806;
  box-shadow:inset 0 0 0 1px #18140d,inset 0 0 70px #000,0 0 0 1px #050504;
  overflow:hidden;
}
.classic-world-shell,.classic-world-shell *{box-sizing:border-box}

.classic-world-top{
  position:relative;
  z-index:3;
  height:58px;
  padding:0 16px;
  border-bottom:3px ridge #685438;
  background:
    linear-gradient(90deg,transparent,#9a743212 50%,transparent),
    repeating-linear-gradient(0deg,#ffffff05 0 1px,transparent 1px 4px),
    linear-gradient(#24231f,#11120f 55%,#090a08);
  box-shadow:inset 0 1px #88734c55,inset 0 -8px 18px #000b,0 2px 8px #000;
}
.classic-world-top:after{
  content:'';
  position:absolute;
  right:12px;
  bottom:2px;
  left:12px;
  height:1px;
  background:linear-gradient(90deg,transparent,#c59b4d88,transparent);
  pointer-events:none;
}
.classic-world-top>strong{
  font:700 clamp(21px,2.25vw,34px) Cinzel,Georgia,serif;
  color:#d7bb79;
  letter-spacing:.11em;
  text-shadow:0 2px 0 #2b1d0d,0 0 15px #c7953a2e;
}
.classic-world-top .mode-switch{
  height:38px;
  border:2px ridge #6e5938;
  background:#080907;
  box-shadow:inset 0 0 10px #000,0 1px 0 #9a7c4950;
}
.classic-world-top .mode-switch span,.classic-world-top .mode-switch b{
  min-width:138px;
  padding:0 14px;
  font:700 10px Cinzel,Georgia,serif;
  letter-spacing:.1em;
}
.classic-world-top .mode-switch span:hover{color:#edd092;background:#211d14}
.classic-world-top .mode-switch b{
  color:#171109;
  background:linear-gradient(#dfbd79,#9b703a 55%,#72502b);
  box-shadow:inset 0 1px #ffe1a0,inset 0 -1px #3f2914;
}
.classic-gold{
  font:700 8px Cinzel,Georgia,serif;
  color:#9d885e;
  letter-spacing:.18em;
  text-shadow:0 1px #000;
}
.classic-gold b{font-size:17px;color:#edc972;line-height:1.05}

@media(min-width:901px){
  body.world-active{height:100dvh;overflow:hidden}
  .world-active .game,.world-active .game>main,.world-active #content{height:100dvh;min-height:0;overflow:hidden}
  .world-active .member-realms{display:none}
  .classic-world-shell{height:100dvh;min-height:0}
  .classic-world-grid{
    height:calc(100dvh - 62px);
    min-height:0;
    grid-template-columns:clamp(238px,21.5vw,340px) minmax(0,1fr) clamp(292px,24vw,390px);
    overflow:hidden;
  }
}

.classic-panel{
  min-width:0;
  color:var(--rf-text);
  background:
    linear-gradient(90deg,#07080666,#201e1550 52%,#06070588),
    repeating-linear-gradient(0deg,#ffffff05 0 1px,transparent 1px 4px),
    #10110e;
  box-shadow:inset 0 0 32px #000b,inset 1px 0 #88734b22;
}
.classic-player-panel{
  height:100%;
  grid-column:auto;
  display:grid;
  grid-template-rows:24px minmax(58px,.75fr) 24px minmax(116px,1.65fr) 24px minmax(82px,1.05fr) 24px minmax(80px,1fr) 24px minmax(42px,.55fr) minmax(64px,.8fr);
  overflow:hidden;
  border-right:3px ridge #5e4d33;
}
.classic-market-panel{
  grid-column:auto;
  grid-template-columns:minmax(0,1fr);
  grid-template-rows:none;
  display:flex;
  height:100%;
  flex-direction:column;
  overflow:hidden;
  padding:0;
  border-top:0;
  border-left:3px ridge #5e4d33;
}
.classic-panel>h3,.classic-bottom h3,.order-columns h3{
  position:relative;
  display:grid;
  flex:0 0 24px;
  place-items:center;
  min-height:24px;
  margin:0;
  padding:3px 8px 2px;
  border-top:1px solid #2c291f;
  border-bottom:2px ridge #59482f;
  background:linear-gradient(#222017,#11120f 55%,#090a08);
  color:#d5b875;
  font:700 10px Cinzel,Georgia,serif;
  letter-spacing:.13em;
  line-height:1;
  text-shadow:0 1px 1px #000;
}
.classic-panel>h3:before,.classic-panel>h3:after,.classic-bottom h3:before,.classic-bottom h3:after{
  content:'';
  position:absolute;
  top:50%;
  width:18%;
  height:1px;
  background:linear-gradient(90deg,transparent,#806a43);
}
.classic-panel>h3:before,.classic-bottom h3:before{left:5px}
.classic-panel>h3:after,.classic-bottom h3:after{right:5px;transform:scaleX(-1)}

.classic-player{
  grid-template-columns:58px minmax(0,1fr);
  gap:8px;
  min-height:0;
  padding:6px 8px;
  overflow:hidden;
  border-bottom:1px solid #2e291d;
  background:radial-gradient(circle at 20% 50%,#6d53371c,transparent 34%);
}
.classic-portrait{
  width:52px;
  height:54px;
  border:2px ridge #7d633d;
  background:
    radial-gradient(ellipse at 50% 28%,#bb8d63 0 17%,transparent 18%),
    radial-gradient(ellipse at 50% 51%,#46505a 0 33%,transparent 34%),
    linear-gradient(145deg,#26251e,#090a08);
  box-shadow:inset 0 0 14px #000,0 0 0 1px #17130d;
  color:#e9cb86;
  font-size:20px;
}
.classic-player div:last-child{gap:2px;min-width:0}
.classic-player b{overflow:hidden;color:#ebcd87;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.classic-player span{font-size:8px;line-height:1.15}
.classic-vitals{gap:2px!important;margin-top:1px}
.classic-vitals label{grid-template-columns:36px minmax(0,1fr);font-size:7px}
.classic-vitals i,.classic-gather-list span>i{
  height:5px;
  border:1px solid #493c26;
  box-shadow:inset 0 1px 2px #000;
}
.classic-vitals em{box-shadow:inset 0 1px #a9c5e055}

.classic-skill-grid{
  grid-template-columns:repeat(5,minmax(0,1fr));
  grid-template-rows:repeat(3,minmax(0,1fr));
  gap:3px;
  min-height:0;
  padding:5px 6px;
  overflow:hidden;
}
.classic-skill-grid button{
  min-height:0;
  padding:2px 1px;
  border:1px solid #5a4b32;
  border-radius:0;
  background:
    radial-gradient(circle at 50% 34%,#343126,#12130f 58%,#090a08);
  box-shadow:inset 0 0 0 1px #ffffff05,inset 0 -6px 11px #0008;
}
.classic-skill-grid button:hover{
  z-index:1;
  border-color:#b18a4d;
  background:radial-gradient(circle at 50% 34%,#4b402a,#18160f 62%,#0a0b08);
  box-shadow:inset 0 0 8px #bf8b3040,0 0 6px #000;
}
.classic-skill-grid i{font-size:clamp(13px,1.2vw,18px);line-height:1;filter:sepia(.35) saturate(.8)}
.classic-skill-grid span{margin-top:2px;font-size:6px;line-height:1;color:#b99c64}
.classic-skill-grid b{font-size:8px;line-height:1.1;color:#eee0c2}
.skills-heading{gap:7px}
.skills-heading button{position:absolute;right:6px;padding:2px 4px;font-size:6px}

.classic-gather-list{
  display:grid;
  grid-template-rows:repeat(4,minmax(0,1fr));
  min-height:0;
  padding:3px 7px 4px;
  overflow:hidden;
}
.classic-gather-list button{
  min-height:0;
  padding:2px 4px;
  border-bottom:1px solid #302b1e;
  background:linear-gradient(90deg,#11120f,#0a0b09);
  font-size:8px;
}
.classic-gather-list button:hover{background:linear-gradient(90deg,#292417,#10110d)}
.classic-gather-list button>span{grid-template-columns:auto minmax(0,1fr);gap:1px 4px}
.classic-gather-list button>span>i{width:100%;max-width:116px}
.classic-gather-list button b{font-size:8px;white-space:nowrap}

.classic-equipment{
  grid-template-columns:repeat(3,minmax(0,1fr));
  grid-template-rows:repeat(2,minmax(0,1fr));
  gap:3px;
  min-height:0;
  padding:5px 7px;
  overflow:hidden;
  background:radial-gradient(ellipse at 50% 50%,#403a292b,transparent 45%);
}
.classic-equipment button{
  min-height:0;
  padding:1px;
  border:1px solid #51442e;
  background:linear-gradient(145deg,#1c1c16,#0a0b09);
  box-shadow:inset 0 0 7px #000;
}
.classic-equipment button i{font-size:13px;line-height:1}
.classic-equipment button span{font-size:6px}
.classic-equipment .equipment-avatar{
  inset:8px 36% 8px;
  border:2px ridge #6d5838;
  background:
    radial-gradient(circle at 50% 24%,#b88b62 0 12%,transparent 13%),
    radial-gradient(ellipse at 50% 62%,#3f4851 0 31%,transparent 32%),
    #0b0d0b;
  box-shadow:0 0 12px #000,inset 0 0 12px #000;
  font-size:18px;
}
.classic-equipment button:nth-of-type(2),.classic-equipment button:nth-of-type(5){margin-left:40px}

.classic-pack{
  grid-template-columns:repeat(6,minmax(0,1fr));
  grid-template-rows:repeat(2,minmax(0,1fr));
  gap:2px;
  min-height:0;
  padding:4px 6px;
  overflow:hidden;
}
.classic-pack>span{
  min-height:0;
  border:1px solid #51442d;
  background:radial-gradient(circle,#25231a,#0a0b09 70%);
  box-shadow:inset 0 0 7px #000;
}
.classic-pack i{font-size:12px}.classic-pack b{right:2px;bottom:1px;font-size:6px;text-shadow:0 1px 2px #000}
.classic-player-footer{
  min-height:0;
  overflow:hidden;
  border-top:2px ridge #4f4129;
  background:#0b0c09;
}
.classic-player-footer section{gap:2px;min-width:0;padding:5px 6px}
.classic-player-footer b{font-size:7px}.classic-player-footer span,.classic-player-footer small{font-size:6px}
.classic-player-footer button{margin-top:auto;padding:3px 2px;font-size:6px}

.classic-center{
  display:grid;
  height:100%;
  min-height:0;
  grid-template-rows:minmax(0,1fr) 23px 142px;
  overflow:hidden;
  border-right:1px solid #17140e;
  border-left:1px solid #17140e;
  background:#070806;
}
.classic-center .world-stage{
  min-height:0;
  border:0;
  border-bottom:2px ridge #5c4b32;
  background:#172317;
  box-shadow:inset 0 0 0 1px #151810;
}
.classic-center .world-stage:after{
  background:
    linear-gradient(90deg,#07100865,transparent 10%,transparent 90%,#07100865),
    linear-gradient(#00000020,transparent 12%,transparent 88%,#00000066);
  box-shadow:inset 0 0 0 1px #caa85f26,inset 0 0 24px #06100699;
}
.classic-center .world-stage canvas#worldCanvas{
  width:100%;
  height:100%;
  min-height:0;
  object-fit:cover;
  image-rendering:auto;
  filter:saturate(1.08) contrast(1.05) brightness(.98);
}
.classic-center .world-minimap{
  top:10px;
  right:10px;
  width:164px;
  padding:3px;
  border:3px ridge #826b44;
  border-radius:0;
  background:#090b08ed;
  box-shadow:0 4px 14px #000d,inset 0 0 10px #000,0 0 0 1px #1a150e;
}
.classic-center .world-minimap:before{padding:2px;font-size:6px}
.classic-center .world-minimap canvas{width:100%;height:auto;image-rendering:pixelated}
.classic-center .world-minimap b{padding:2px 0 0;font-size:7px;letter-spacing:.13em}
.classic-hover-action{top:12px;left:12px}
.classic-hover-action b{font-size:13px;color:#ffe488}.classic-hover-action span{font-size:9px}
.classic-center .world-hud{
  left:10px;
  bottom:10px;
  min-width:min(330px,calc(100% - 20px));
  padding:7px 8px;
  border:2px ridge #866b41;
  border-radius:0;
  background:linear-gradient(90deg,#090b08f2,#1b1912f2,#090b08f2);
  box-shadow:0 4px 14px #000d,inset 0 0 10px #000;
}
.classic-center .world-hud b{font-size:10px}.classic-center .world-hud span{font-size:8px}
.classic-center .world-hud button{padding:6px 9px;border-radius:0;font-size:8px}
.classic-center .world-status{
  display:grid;
  grid-template-columns:auto auto minmax(0,1fr);
  align-items:center;
  gap:10px;
  min-height:0;
  padding:3px 8px;
  overflow:hidden;
  border:0;
  border-bottom:2px ridge #51432d;
  background:linear-gradient(#11120f,#090a08);
  color:#857d6c;
  font-size:7px;
  white-space:nowrap;
}
.classic-center .world-status span:last-child{overflow:hidden;text-align:right;text-overflow:ellipsis}
.presence-dot{width:5px;height:5px}

.classic-bottom{
  display:grid;
  min-height:0;
  grid-template-columns:minmax(0,1fr) clamp(238px,30%,300px);
  overflow:hidden;
  border:0;
  background:#090a08;
}
.classic-chat{min-height:0;grid-template-rows:23px minmax(0,1fr) 24px}
.chat-tabs{border-bottom:1px solid #433823;background:#0a0b09}
.chat-tabs button{
  min-width:58px;
  padding:0 8px;
  border-right:1px solid #39301f;
  font-size:7px;
}
.chat-tabs button:hover{color:#d9bd80;background:#1d1a12}
.chat-tabs button.active{background:linear-gradient(#3b2d19,#19140d);color:#e9c675;box-shadow:inset 0 -1px #af8241}
.classic-bottom .classic-chat #worldFieldLog{
  height:auto;
  min-height:0;
  padding:5px 9px;
  background:
    linear-gradient(90deg,#15150f66,transparent),
    #090a08;
  font:8px/1.35 Georgia,serif;
}
.classic-bottom #worldFieldLog p{margin:0 0 3px;color:#b8af9b}
.classic-bottom #worldFieldLog b{color:#d8b765}
.chat-entry{min-height:0}.chat-entry input{padding:4px 7px;font-size:8px}.chat-entry button{font-size:6px}
.classic-quick{
  grid-template-columns:repeat(4,minmax(0,1fr));
  grid-template-rows:repeat(2,minmax(0,1fr));
  gap:3px;
  min-height:0;
  padding:5px;
  overflow:hidden;
  border-left:2px ridge #50422c;
  background:linear-gradient(120deg,#12130f,#080907);
}
.classic-quick button{
  min-height:0;
  padding:2px;
  border:1px solid #5c4b30;
  border-radius:0;
  background:radial-gradient(circle at 50% 30%,#2b281e,#0a0b09 70%);
  box-shadow:inset 0 0 0 1px #ffffff05,inset 0 -8px 12px #0007;
  font-size:15px;
}
.classic-quick button:hover{border-color:#b08b4e;background:radial-gradient(circle at 50% 30%,#493b25,#11120d 72%);color:#f2ce78}
.classic-quick span{margin-top:2px;font-size:6px;letter-spacing:.05em}

.classic-market-panel>h3,.classic-market-panel>.market-tabs,.classic-market-panel>.classic-player-list{grid-column:auto}
.classic-market-panel .market-tabs{
  flex:0 0 34px;
  grid-template-columns:1fr 1fr auto;
  gap:3px;
  padding:4px 7px;
  border-bottom:1px solid #30291c;
  background:#0b0c09;
}
.classic-market-panel .market-tabs b,.classic-market-panel .market-tabs span{
  min-width:0;
  padding:4px;
  border:1px solid #5f5734;
  background:linear-gradient(#2e351e,#15200f);
  font-size:8px;
}
.classic-market-panel .market-tabs span{border-color:#493f2b;background:#13140f;color:#857b68}
.classic-market-panel .market-tabs button{padding:3px 5px;font-size:7px}
.market-overview{
  flex:1 1 176px;
  min-height:128px;
  margin:0 7px 4px;
  overflow:hidden;
  border:1px solid #4d402a;
  box-shadow:inset 0 0 10px #000;
}
.market-head,.market-overview button{grid-template-columns:minmax(80px,1fr) 40px 40px 40px}
.market-head{height:22px;padding:3px 5px;background:#11120f;font-size:6px}
.market-overview button{min-height:20px;padding:3px 5px;font-size:8px}
.market-overview button:nth-child(even){background:#11130f}
.market-overview button span{color:#c7bdab}.market-overview button i{margin-right:3px;color:#aa8a50}
.classic-market-panel details{
  flex:0 0 auto;
  margin:0 7px 4px;
  border:1px solid #443923;
}
.classic-market-panel summary{padding:5px 6px;font-size:7px;background:linear-gradient(#17160f,#0a0b09)}
.classic-market-panel .market-ticket{grid-row:auto;margin:0;padding:6px;gap:5px}
.classic-market-panel .market-ticket label{font-size:7px}.classic-market-panel .market-ticket input,.classic-market-panel .market-ticket select{padding:4px;font-size:8px}.classic-market-panel .market-ticket button{padding:5px;font-size:8px}
.order-columns{
  display:grid;
  flex:0 1 92px;
  grid-template-columns:1fr 1fr;
  min-height:66px;
  overflow:hidden;
}
.order-columns section{display:grid;min-height:0;grid-template-rows:24px minmax(0,1fr)}
.order-columns section+section{border-left:1px solid #403521}
.order-columns .order-book{height:auto;max-height:none;margin:0 3px 4px;overflow:auto}
.order-columns .order-book>div{grid-template-columns:minmax(46px,1fr) 36px 26px;gap:3px;padding:3px;font-size:6px}
.classic-market-panel>.recent-trades{
  flex:0 1 82px;
  min-height:50px;
  max-height:82px;
  margin:0 7px 4px;
}
.classic-market-panel .recent-trades>div{grid-template-columns:minmax(62px,1fr) 65px minmax(55px,1fr);gap:3px;padding:4px;font-size:7px}
.classic-market-panel .own-orders{max-height:76px;margin:0}
.classic-market-panel .own-orders>div{grid-template-columns:minmax(55px,1fr) 54px 34px 36px;gap:2px;padding:4px;font-size:6px}
.player-tabs{
  flex:0 0 23px;
  margin:0 7px;
  font-size:7px;
}
.player-tabs>*{padding:4px}
.classic-player-list{
  display:grid;
  flex:1 1 88px;
  grid-column:auto;
  align-content:start;
  min-height:58px;
  max-height:none;
  margin:4px 7px 7px;
  overflow:auto;
}
.classic-player-list span{
  grid-template-columns:24px minmax(0,1fr);
  min-height:32px;
  padding:4px;
  border:1px solid #3b321f;
  background:linear-gradient(90deg,#15160f,#0a0b09);
}
.classic-player-list i{width:19px;height:21px;font-size:8px}.classic-player-list b{font-size:7px}.classic-player-list small{font-size:6px}

.classic-context-menu{
  width:172px;
  border:2px ridge #9b8051;
  border-radius:0;
  background:#10110ef5;
  box-shadow:4px 6px 16px #000e,inset 0 0 12px #000;
  font:11px Georgia,serif;
}
.classic-context-menu strong{border-bottom:1px solid #4b3e29;color:#efd27e}.classic-context-menu button{font:10px Georgia,serif}
.world-drop-table{position:absolute;z-index:7;right:12px;top:152px;width:min(270px,42%);border:1px solid #9a763e;background:linear-gradient(155deg,#18140df2,#080a08f5);box-shadow:0 10px 28px #000d,inset 0 0 16px #b68a2612;color:#ddd;font:10px Georgia,serif;pointer-events:none}.world-drop-table[hidden]{display:none}.world-drop-table header{display:flex;align-items:end;justify-content:space-between;gap:8px;padding:8px 10px;border-bottom:1px solid #554323;background:#1d170d}.world-drop-table header div{display:grid;gap:2px}.world-drop-table header small{font-size:7px;letter-spacing:.12em;color:#a88c58}.world-drop-table header b{font-size:13px;color:#f0d27e}.world-drop-table header span{color:#b9aa8a;font-size:8px}.world-drop-table>div{display:grid}.world-drop-table p{display:flex;justify-content:space-between;gap:12px;margin:0;padding:5px 10px;border-bottom:1px solid #ffffff0b}.world-drop-table p b{color:#ecd078}.world-drop-table p.rarity-epic span,.world-drop-table p.rarity-mythic span{color:#c796ef}.world-drop-table p.rarity-legendary span{color:#f2a94f}.world-drop-table footer{padding:7px 10px;color:#8fc69b;background:#0b100c}@media(max-width:760px){.world-drop-table{top:90px;right:6px;width:min(230px,58%)}.world-drop-table p{padding:4px 7px}}
.classic-world-shell ::-webkit-scrollbar{width:7px;height:7px}.classic-world-shell ::-webkit-scrollbar-thumb{border:1px solid #6f5938;background:linear-gradient(90deg,#201b12,#453720)}

@media(min-width:901px) and (max-height:720px){
  .classic-world-grid{height:calc(100dvh - 54px)}
  .classic-world-top{height:50px}
  .classic-world-top .mode-switch{height:32px}.classic-world-top .mode-switch span,.classic-world-top .mode-switch b{min-width:110px;font-size:8px}
  .classic-player-panel{grid-template-rows:22px minmax(50px,.65fr) 22px minmax(100px,1.4fr) 22px minmax(72px,.95fr) 22px minmax(68px,.9fr) 22px minmax(38px,.5fr) minmax(56px,.7fr)}
  .classic-panel>h3,.classic-bottom h3,.order-columns h3{min-height:22px;flex-basis:22px}
  .classic-center{grid-template-rows:minmax(0,1fr) 21px 126px}
  .classic-bottom{grid-template-columns:minmax(0,1fr) clamp(220px,29%,280px)}
  .classic-center .world-minimap{width:140px}
  .market-overview{min-height:110px}
}

@media(min-width:901px) and (max-width:1250px){
  .classic-world-grid{grid-template-columns:clamp(226px,21vw,270px) minmax(0,1fr) clamp(276px,24vw,310px)}
  .classic-skill-grid i{font-size:13px}
  .classic-center .world-minimap{width:138px}
  .classic-center .world-hud{min-width:270px}
  .classic-bottom{grid-template-columns:minmax(0,1fr) 226px}
  .classic-market-panel{grid-column:auto;display:flex;grid-template-columns:minmax(0,1fr);border-top:0;border-left:3px ridge #5e4d33}
  .classic-market-panel>h3,.classic-market-panel>.market-tabs,.classic-market-panel>.classic-player-list{grid-column:auto}
  .classic-market-panel .market-ticket{grid-row:auto}
}

@media(max-width:900px){
  body.world-active{height:auto;overflow:auto}
  .world-active .game,.world-active .game>main,.world-active #content{height:auto;overflow:visible}
  .world-active .member-realms{display:block}
  .classic-world-shell{height:auto;min-height:100vh;overflow:visible}
  .classic-world-top{grid-template-columns:1fr auto;height:58px}
  .classic-world-top .mode-switch{display:none}
  .classic-world-grid{display:flex;height:auto;min-height:0;flex-direction:column;overflow:visible}
  .classic-player-panel{display:grid;height:auto;grid-template-rows:none;border-right:0}
  .classic-skill-grid{grid-template-rows:repeat(3,52px)}
  .classic-gather-list{grid-template-rows:repeat(4,28px)}
  .classic-equipment{grid-template-rows:repeat(2,54px)}
  .classic-pack{grid-template-rows:repeat(2,42px)}
  .classic-center{order:-1;height:calc(100dvh - 58px);min-height:620px;grid-template-rows:minmax(430px,1fr) 23px 150px}
  .classic-center .world-stage canvas#worldCanvas{height:100%;min-height:430px}
  .classic-bottom{grid-template-columns:1fr;min-height:250px}
  .classic-chat{min-height:130px}.classic-quick{min-height:120px;border-left:0;border-top:2px ridge #50422c}
  .classic-market-panel{display:flex;height:auto;max-height:none;border-top:3px ridge #5e4d33;border-left:0}
  .market-overview{flex-basis:auto;min-height:170px}.order-columns{flex-basis:120px}.classic-player-list{min-height:120px}
}

/* Generated skill art needs an explicit box after its fallback glyph is removed. */
.classic-skill-grid i{
  display:block;
  width:clamp(28px,2.5vw,42px);
  height:clamp(28px,2.5vw,42px);
  flex:0 0 auto;
  background-position:center;
  background-size:contain;
}
.all-skills-list>button>i{
  display:block;
  width:36px;
  height:36px;
  flex:0 0 36px;
  background-position:center;
  background-size:contain;
}

@media(max-width:560px){
  .classic-world-top{padding:0 9px}.classic-world-top>strong{font-size:19px}.classic-gold b{font-size:13px}
  .classic-skill-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
  .classic-center{grid-template-rows:minmax(390px,60vh) auto auto}
  .classic-center .world-minimap{width:116px;top:7px;right:7px}
  .classic-center .world-hud{position:absolute;right:7px;bottom:7px;left:7px;min-width:0}
  .classic-center .world-status{grid-template-columns:auto auto}.classic-center .world-status span:last-child{display:none}
  .classic-bottom{grid-template-columns:1fr}.classic-quick{grid-template-columns:repeat(4,1fr)}
  .market-head,.market-overview button{grid-template-columns:minmax(76px,1fr) 38px 38px 38px}
}

/* 0.32 forged cockpit — proportioned directly from the approved 1672 × 940 visual */
.classic-world-shell{
  --rf-top-h:clamp(60px,8.7dvh,82px);
  --rf-black:#050604;
  --rf-iron:#131411;
  --rf-iron-hi:#2a2922;
  --rf-wood:#171209;
  --rf-wood-hi:#2b2111;
  --rf-brass:#9c7435;
  --rf-brass-hi:#e1b967;
  --rf-cream:#ddd1b6;
  --rf-green:#7fb454;
  border:4px solid #080907;
  outline:1px solid #544830;
  background:
    radial-gradient(circle at 7px 7px,#8b754c 0 1px,#191a16 2px 4px,transparent 5px),
    radial-gradient(circle at calc(100% - 7px) 7px,#8b754c 0 1px,#191a16 2px 4px,transparent 5px),
    repeating-linear-gradient(90deg,#ffffff04 0 1px,transparent 1px 5px),
    #060705;
  box-shadow:
    inset 0 0 0 1px #88704a,
    inset 0 0 0 3px #12130f,
    inset 0 0 44px #000,
    0 0 0 1px #000;
  color:var(--rf-cream);
}

.classic-world-top{
  height:var(--rf-top-h);
  grid-template-columns:clamp(250px,26.8vw,452px) minmax(0,1fr) clamp(278px,28vw,468px);
  padding:0;
  border:0;
  border-bottom:3px solid #050605;
  background:
    linear-gradient(90deg,#ffffff05,transparent 18%,transparent 82%,#ffffff05),
    repeating-linear-gradient(0deg,#ffffff04 0 1px,transparent 1px 4px),
    linear-gradient(#272721 0,#10110e 52%,#080907 100%);
  box-shadow:inset 0 -1px #665234,inset 0 -4px 8px #000b,0 2px 8px #000;
}
.classic-world-top:before{
  content:'';
  position:absolute;
  inset:4px;
  pointer-events:none;
  border:1px solid #24241e;
  border-radius:1px;
  box-shadow:inset 0 0 0 1px #050605,inset 0 0 16px #0008;
}
.classic-world-top:after{
  right:8px;
  bottom:3px;
  left:8px;
  background:linear-gradient(90deg,#2b261d,#b18a4866 22%,#31291d 50%,#b18a4866 78%,#2b261d);
}
.classic-world-top>strong{
  z-index:1;
  display:flex;
  align-items:center;
  align-self:stretch;
  min-width:0;
  padding:0 clamp(18px,3.9vw,64px);
  border-right:4px ridge #4b4434;
  background:
    linear-gradient(90deg,#090a08aa,transparent 28%,transparent 72%,#090a08aa),
    repeating-linear-gradient(0deg,#5f45220d 0 1px,transparent 1px 5px),
    linear-gradient(#241b0d,#0d0d09 64%,#151006);
  box-shadow:inset 0 0 0 2px #060704,inset 0 0 0 3px #665031,inset 0 0 28px #000;
  color:#d9b66e;
  font:700 clamp(27px,3.1vw,51px)/1 Cinzel,Georgia,serif;
  letter-spacing:.065em;
  text-shadow:0 2px 0 #0b0803,0 3px 0 #6f4d22,0 0 16px #e0aa4230;
}
.classic-world-top>strong:after{
  content:'';
  width:100%;
  height:2px;
  margin-left:-100%;
  transform:translateY(22px);
  background:linear-gradient(90deg,transparent,#9f7539 20%,#392b17 70%,transparent);
  opacity:.65;
}
.classic-world-top .mode-switch{
  position:relative;
  z-index:1;
  display:grid;
  justify-self:center;
  width:min(94%,590px);
  height:clamp(38px,5.9dvh,56px);
  grid-template-columns:1fr 1fr;
  gap:50px;
  border:0;
  background:transparent;
  box-shadow:none;
}
.classic-world-top .mode-switch:after{
  content:'↔';
  position:absolute;
  top:50%;
  left:50%;
  display:grid;
  width:42px;
  height:32px;
  place-items:center;
  transform:translate(-50%,-50%);
  border:2px ridge #7d6237;
  border-radius:5px;
  background:linear-gradient(#322515,#100d08);
  box-shadow:inset 0 0 8px #000,0 2px 5px #000;
  color:#d2a657;
  font:700 18px Georgia,serif;
  text-shadow:0 1px #000;
}
.classic-world-top .mode-switch span,.classic-world-top .mode-switch b{
  min-width:0;
  padding:0 12px;
  border:3px ridge #725934;
  border-radius:2px;
  background:
    linear-gradient(90deg,#1c1308,#5f3e16 48%,#231508),
    #2b1c0c;
  box-shadow:inset 0 0 0 1px #bd8f42,inset 0 0 15px #0008,0 2px 5px #000b;
  color:#e5c174;
  font:700 clamp(12px,1.45vw,22px) Cinzel,Georgia,serif;
  letter-spacing:.04em;
  text-shadow:0 2px #000;
}
.classic-world-top .mode-switch span:hover{background:linear-gradient(#7c5728,#2d1d0b);color:#ffe0a0}
.classic-world-top .mode-switch b{
  border-color:#57544a;
  background:linear-gradient(#292a27,#11120f 60%,#090a08);
  box-shadow:inset 0 0 0 1px #777267,inset 0 0 14px #000,0 2px 5px #000b;
  color:#a9a79e;
}
.classic-gold{
  position:relative;
  z-index:1;
  display:grid;
  align-self:stretch;
  justify-self:stretch;
  align-content:center;
  justify-content:start;
  padding:0 clamp(108px,9vw,150px) 0 clamp(54px,5vw,84px);
  border-left:4px ridge #4b4434;
  background:linear-gradient(90deg,#0a0b09,#171711 55%,#090a08);
  color:#bdac87;
  font:700 clamp(8px,.8vw,12px) Cinzel,Georgia,serif;
  line-height:1;
  letter-spacing:.14em;
  white-space:nowrap;
}
.classic-gold:before{
  content:'●\A●●';
  position:absolute;
  top:50%;
  left:clamp(17px,1.8vw,30px);
  transform:translateY(-52%);
  color:#e3ad3f;
  font:700 clamp(16px,1.7vw,27px)/.52 Georgia,serif;
  white-space:pre;
  text-shadow:-1px 0 #5e3a10,1px 0 #ffcf5c,0 3px 4px #000;
}
.classic-gold:after{
  content:'▤   ♜   ⚙';
  position:absolute;
  top:50%;
  right:clamp(8px,1vw,17px);
  transform:translateY(-50%);
  color:#d4ae66;
  font:700 clamp(18px,1.75vw,28px) Georgia,serif;
  letter-spacing:.3em;
  text-shadow:0 2px #000;
}
.classic-gold b{
  order:2;
  color:#f1ce80;
  font:700 clamp(13px,1.35vw,22px)/1 Cinzel,Georgia,serif;
  letter-spacing:0;
  text-shadow:0 2px #000;
}
.classic-gold:after{display:none}
.classic-gold>span{display:grid;gap:2px;white-space:nowrap}
.classic-top-actions{position:absolute;right:clamp(8px,1vw,17px);top:50%;display:flex;gap:clamp(4px,.45vw,8px);transform:translateY(-50%)}
.classic-top-actions button{display:grid;place-items:center;width:clamp(25px,2.25vw,36px);height:clamp(25px,2.25vw,36px);padding:0;border:2px ridge #665033;background:linear-gradient(#2b2518,#0a0b08 62%,#151008);box-shadow:inset 0 0 0 1px #0a0906,inset 0 0 8px #000,0 1px 2px #000;color:#d9b767;font:700 clamp(13px,1.25vw,20px)/1 Georgia,serif;text-shadow:0 1px #000;cursor:pointer}
.classic-top-actions button:hover{border-color:#bd8b39;background:linear-gradient(#5c421d,#17120a 62%,#241706);color:#ffe0a0}
.market-item-icon{display:inline-block;width:clamp(13px,1.15vw,19px);height:clamp(13px,1.15vw,19px);margin-right:clamp(3px,.45vw,7px);vertical-align:middle;background-position:center;background-repeat:no-repeat;background-size:contain;color:transparent}
.market-item-icon.fallback{color:#b89351;font-style:normal}
.trade-ledger-head{display:grid;grid-template-columns:minmax(65px,1.4fr) 1fr 1fr 32px 48px;gap:4px;margin:0 clamp(7px,.7vw,11px);padding:3px clamp(5px,.55vw,8px);border:1px solid #5b4729;border-bottom:0;background:linear-gradient(#18150e,#090a08);color:#b99b5f;font:700 clamp(5px,.5vw,8px) Cinzel,Georgia,serif}
.classic-market-panel .recent-trades>div{grid-template-columns:minmax(65px,1.4fr) 1fr 1fr 32px 48px}
.classic-market-panel .recent-trades>div span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.classic-market-panel .recent-trades>div em{overflow:hidden;color:#bfb297;text-overflow:ellipsis;white-space:nowrap;font-style:normal}.classic-market-panel .recent-trades>div b{color:#d7b669}.classic-market-panel .recent-trades>div strong{color:#d6b36b;font-weight:700;white-space:nowrap}

.classic-panel{
  background:
    radial-gradient(circle at 50% 18%,#41321c22,transparent 34%),
    repeating-linear-gradient(90deg,#ffffff03 0 1px,transparent 1px 5px),
    linear-gradient(90deg,#070806,#17140d 52%,#080907);
  box-shadow:inset 0 0 0 1px #6b5736,inset 0 0 0 3px #080906,inset 0 0 36px #000;
}
.classic-player-panel{border-right:4px ridge #524a3a}
.classic-market-panel{border-left:4px ridge #524a3a}
.classic-panel>h3,.classic-bottom h3,.order-columns h3{
  min-height:0;
  border-top:1px solid #050604;
  border-bottom:2px ridge #5e4a2d;
  background:
    linear-gradient(90deg,#0a0b08,#2a2112 50%,#0a0b08),
    repeating-linear-gradient(0deg,#ffffff04 0 1px,transparent 1px 4px);
  box-shadow:inset 0 1px #9070442b,inset 0 -4px 8px #0008;
  color:#ddb96d;
  font:700 clamp(9px,.94vw,15px) Cinzel,Georgia,serif;
  letter-spacing:.08em;
  text-shadow:0 2px #000;
}
.classic-panel>h3:before,.classic-panel>h3:after,.classic-bottom h3:before,.classic-bottom h3:after{
  width:20%;
  background:linear-gradient(90deg,transparent,#846635 55%,#d1ad6450);
}

/* Runtime-injected icon crops share this treatment, irrespective of their element type. */
.classic-world-shell .asset-icon-ready{
  position:relative;
  isolation:isolate;
}
.classic-world-shell .asset-icon-ready>i{display:none!important}
.classic-world-shell .asset-icon-ready>img,
.classic-world-shell .asset-icon-ready>canvas,
.classic-world-shell img.asset-icon-ready,
.classic-world-shell canvas.asset-icon-ready{
  display:block;
  width:auto;
  max-width:78%;
  height:clamp(22px,3.7dvh,38px);
  margin:0 auto;
  object-fit:contain;
  image-rendering:auto;
  filter:drop-shadow(0 2px 2px #000) saturate(.9) contrast(1.1);
}
.classic-skill-grid img,.classic-skill-grid canvas,
.classic-quick img,.classic-quick canvas,
.classic-equipment img,.classic-equipment canvas{
  display:block;
  max-width:76%;
  max-height:60%;
  margin:auto;
  object-fit:contain;
  filter:drop-shadow(0 2px 2px #000) saturate(.9) contrast(1.08);
}

.classic-portrait{
  width:100%;
  height:100%;
  min-height:0;
  border:3px ridge #8a6a3d;
  border-radius:1px;
  background:
    linear-gradient(#0000,#0004),
    url('./assets/player-portrait-v1.png') center 20%/cover no-repeat,
    radial-gradient(ellipse at 50% 36%,#a77750 0 17%,transparent 18%),
    radial-gradient(ellipse at 50% 28%,#343b43 0 31%,transparent 32%),
    linear-gradient(145deg,#282720,#090a08);
  box-shadow:inset 0 0 12px #000,0 0 0 1px #080906,0 3px 8px #000;
  color:transparent;
  font-size:0;
  text-shadow:none;
}

@media(min-width:901px){
  body.world-active{width:100vw;height:100dvh;overflow:hidden;background:#040504}
  .world-active .game,.world-active .game>main,.world-active #content{width:100%;height:100dvh;min-height:0;overflow:hidden}
  .classic-world-shell{width:100%;height:100dvh;min-height:0;overflow:hidden}
  .classic-world-grid{
    width:100%;
    height:calc(100dvh - var(--rf-top-h) - 4px);
    min-height:0;
    grid-template-columns:clamp(250px,26.8vw,452px) minmax(0,1fr) clamp(278px,28vw,468px);
    overflow:hidden;
  }
  .classic-player-panel{
    display:grid;
    height:100%;
    min-height:0;
    grid-template-rows:26px minmax(78px,1.05fr) 26px minmax(116px,1.6fr) 26px minmax(86px,1.25fr) 26px minmax(100px,1.45fr) minmax(102px,1.65fr);
    overflow:hidden;
  }
  .classic-player-panel>h3:nth-of-type(5),.classic-player-panel>.classic-pack{display:none}
  .classic-player{
    grid-template-columns:clamp(58px,5.6vw,94px) minmax(0,1fr);
    gap:clamp(7px,1vw,14px);
    padding:clamp(6px,.75vw,11px);
    border-bottom:1px solid #44361f;
    background:radial-gradient(circle at 17% 50%,#b27c3220,transparent 36%);
  }
  .classic-player>div:last-child{gap:clamp(2px,.35dvh,5px)}
  .classic-player b{font-size:clamp(10px,1vw,15px);color:#ebca80}
  .classic-player span{font-size:clamp(7px,.67vw,10px);color:#b8ad97}
  .classic-vitals{gap:clamp(2px,.3dvh,4px)!important}
  .classic-vitals label{grid-template-columns:clamp(26px,2.4vw,40px) minmax(0,1fr);font-size:clamp(6px,.57vw,9px)}
  .classic-vitals i{height:clamp(6px,.72dvh,9px);border:1px solid #47371f;background:#030403;box-shadow:inset 0 1px 3px #000,0 0 0 1px #17120b}
  .classic-vitals em{background:linear-gradient(#477cb3,#235988 55%,#163953)}
  .classic-vitals em.hp{background:linear-gradient(#d15a4b,#8b211b)}
.classic-vitals em.energy{background:linear-gradient(#efad43,#9a5b18)}
.classic-vitals label{position:relative}
.classic-vitals label>small{position:absolute;right:3px;top:50%;transform:translateY(-50%);z-index:2;color:#f5e7c8;font:700 clamp(6px,.48vw,8px)/1 Georgia,serif;letter-spacing:.02em;text-shadow:0 1px 2px #000,1px 0 #000;pointer-events:none}

  .classic-skill-grid{
    grid-template-columns:repeat(5,minmax(0,1fr));
    grid-template-rows:repeat(2,minmax(0,1fr));
    gap:clamp(3px,.35vw,6px);
    padding:clamp(5px,.55vw,9px);
  }
  .classic-skill-grid button:nth-child(n+11){display:none}
  .classic-skill-grid button{
    min-height:0;
    padding:2px;
    border:1px solid #705832;
    background:
      linear-gradient(135deg,#ffffff08,transparent 35%),
      radial-gradient(circle at 50% 34%,#29281f,#0b0c09 72%);
    box-shadow:inset 0 0 0 1px #050604,inset 0 -8px 14px #0009,0 1px 2px #000;
  }
  .classic-skill-grid button:after{
    content:'';
    position:absolute;
    inset:2px;
    z-index:-1;
    border:1px solid #ffffff08;
    pointer-events:none;
  }
  .classic-skill-grid i{font-size:clamp(18px,2vw,33px);line-height:.95;color:#ddd6c6;filter:sepia(.25) drop-shadow(0 2px 2px #000)}
  .classic-skill-grid span{margin-top:2px;color:#d4ad5e;font-size:clamp(6px,.58vw,9px)}
  .classic-skill-grid b{color:#eadab9;font-size:clamp(8px,.72vw,11px)}
  .skills-heading button{right:clamp(4px,.6vw,9px);padding:2px 5px;font-size:clamp(5px,.52vw,8px)}

  .classic-gather-list{
    grid-template-rows:repeat(4,minmax(0,1fr));
    gap:0;
    padding:clamp(3px,.45vw,7px) clamp(6px,.65vw,11px);
  }
  .classic-gather-list button{padding:2px clamp(3px,.4vw,7px);border-bottom:1px solid #45371f;background:linear-gradient(90deg,#10110d,#090a08);font-size:clamp(7px,.67vw,10px)}
  .classic-gather-list button>span{grid-template-columns:auto minmax(0,1fr);gap:1px 5px}
  .classic-gather-list button>span>i{width:100%;max-width:none;height:clamp(6px,.65dvh,8px);border-color:#45361e;background:#050604}
  .classic-gather-list button>span>i em{background:linear-gradient(#6bb183,#27704a 60%,#17442f)}
  .classic-gather-list button b{color:#e0b969;font-size:clamp(7px,.67vw,10px)}

  .classic-equipment{
    grid-template-columns:28% 44% 28%;
    grid-template-rows:repeat(3,minmax(0,1fr));
    gap:clamp(3px,.4vw,6px);
    padding:clamp(5px,.6vw,10px);
    background:radial-gradient(ellipse at 50% 52%,#88683426,transparent 42%),linear-gradient(#0c0d0a,#080907);
  }
  .classic-equipment button{
    width:100%;
    min-height:0;
    margin:0!important;
    padding:1px;
    border:1px solid #68502e;
    background:radial-gradient(circle,#25241d,#090a08 72%);
    box-shadow:inset 0 0 0 1px #050604,inset 0 0 9px #000;
  }
  .classic-equipment button:nth-of-type(1){grid-area:1/1}
  .classic-equipment button:nth-of-type(2){grid-area:1/3}
  .classic-equipment button:nth-of-type(3){grid-area:2/1}
  .classic-equipment button:nth-of-type(4){grid-area:2/3}
  .classic-equipment button:nth-of-type(5){grid-area:3/1}
  .classic-equipment button:nth-of-type(6){grid-area:3/3}
  .classic-equipment button i{font-size:clamp(13px,1.55vw,25px)}
  .classic-equipment button span{font-size:clamp(5px,.48vw,7px)}
  .classic-equipment .equipment-avatar{
    z-index:2;
    inset:clamp(6px,.65vw,10px) 31%;
    border:2px ridge #7c6138;
    background:
      linear-gradient(#0000,#000a),
      url('./assets/player-portrait-v1.png') center 30%/cover no-repeat,
      radial-gradient(ellipse at 50% 31%,#a77750 0 13%,transparent 14%),
      radial-gradient(ellipse at 50% 52%,#3f4851 0 32%,transparent 33%),
      #0b0c09;
    box-shadow:inset 0 0 16px #000,0 3px 8px #000;
    color:transparent;
    font-size:0;
  }

  .classic-player-footer{
    display:grid;
    grid-template-columns:1fr 1fr;
    min-height:0;
    border-top:2px ridge #5d4b2f;
    background:linear-gradient(90deg,#0b0c09,#15130d 50%,#080907);
  }
  .classic-player-footer section{
    position:relative;
    display:grid;
    min-height:0;
    grid-template-rows:auto 1fr auto;
    gap:clamp(3px,.55dvh,7px);
    padding:clamp(7px,.75vw,12px);
    border-right:1px solid #5a482c;
  }
  .classic-player-footer section:first-child{padding-left:clamp(50px,5.2vw,82px)}
  .classic-player-footer section:first-child:before{
    content:'♜';
    position:absolute;
    top:clamp(10px,1.2vw,18px);
    bottom:clamp(30px,3vw,46px);
    left:clamp(8px,.8vw,13px);
    display:grid;
    width:clamp(34px,3.7vw,58px);
    place-items:center;
    border:2px ridge #9a7139;
    border-radius:0 0 48% 48%;
    background:linear-gradient(135deg,#802317,#3d0b08);
    box-shadow:inset 0 0 12px #000,0 2px 5px #000;
    color:#e0aa4c;
    font-size:clamp(18px,2.1vw,34px);
    text-shadow:0 2px #000;
  }
  .classic-player-footer b{color:#dfbc72;font-size:clamp(7px,.74vw,11px)}
  .classic-player-footer span,.classic-player-footer small{color:#ada28c;font-size:clamp(6px,.59vw,9px);white-space:normal}
  .classic-player-footer button{
    min-height:clamp(22px,2.8dvh,31px);
    margin:0;
    padding:3px;
    border:1px solid #856331;
    background:linear-gradient(#251d10,#0b0b08);
    color:#d6b56e;
    font:700 clamp(6px,.56vw,8px) Cinzel,serif;
    text-align:center;
    box-shadow:inset 0 0 0 1px #050604;
  }

  .classic-center{
    display:grid;
    height:100%;
    min-height:0;
    grid-template-rows:minmax(0,1fr) clamp(150px,21.8dvh,205px);
    border-right:1px solid #060705;
    border-left:1px solid #060705;
    background:#050604;
  }
  .classic-center .world-status{display:none}
  .classic-center .world-stage{
    min-height:0;
    border:3px solid #090a07;
    border-bottom:3px ridge #59472b;
    box-shadow:inset 0 0 0 1px #91744755,inset 0 0 28px #0008;
  }
  .classic-center .world-stage:after{
    box-shadow:inset 0 0 0 1px #c6a56136,inset 0 0 18px #06100688;
  }
  .classic-center .world-stage canvas#worldCanvas{height:100%;min-height:0;filter:saturate(1.1) contrast(1.08) brightness(.96)}
  .classic-center .world-minimap{
    top:clamp(8px,1vw,15px);
    right:clamp(8px,1vw,15px);
    width:clamp(118px,8.7vw,146px);
    padding:3px;
    border:3px ridge #8c6e40;
    box-shadow:0 5px 12px #000d,inset 0 0 9px #000,0 0 0 1px #060604;
  }
  .classic-center .world-minimap:before{display:none}
  .classic-center .world-minimap b{padding:2px;color:#d3b875;font-size:clamp(6px,.55vw,8px)}
  .classic-hover-action{top:clamp(9px,.8vw,13px);left:clamp(9px,.8vw,13px)}
  .classic-hover-action b{font-size:clamp(10px,.85vw,13px)}
  .classic-hover-action span{font-size:clamp(7px,.63vw,9px)}
  .classic-center .world-hud{display:none}
  .classic-world-shell:not(.inside-building) .classic-center .world-stage.action-ready .world-hud{
    display:grid;
    right:clamp(8px,1vw,15px);
    bottom:clamp(8px,1vw,15px);
    left:clamp(8px,1vw,15px);
    min-width:0;
    border:3px ridge #8a7041;
    background:linear-gradient(90deg,#090b08f4,#211b11f4,#090b08f4);
    box-shadow:0 5px 18px #000d,inset 0 0 12px #000;
  }
  .classic-world-shell.inside-building .classic-center .world-hud{
    display:grid;
    right:clamp(8px,1vw,15px);
    bottom:clamp(8px,1vw,15px);
    left:auto;
    min-width:min(420px,calc(100% - 30px));
    border:3px ridge #8a7041;
    background:linear-gradient(90deg,#090b08f4,#211b11f4,#090b08f4);
    box-shadow:0 5px 18px #000d,inset 0 0 12px #000;
  }

  .classic-bottom{
    display:grid;
    min-height:0;
    grid-template-columns:minmax(0,1fr) 38%;
    border-top:0;
    background:#070806;
    box-shadow:inset 0 0 0 1px #57462c;
  }
  .classic-chat{grid-template-rows:clamp(24px,3dvh,30px) minmax(0,1fr) clamp(25px,3.2dvh,31px)}
  .chat-tabs{border-bottom:2px ridge #58462b;background:linear-gradient(#16150f,#090a08)}
  .chat-tabs button{
    min-width:0;
    flex:1;
    padding:0 6px;
    border-right:1px solid #48391f;
    color:#9f927a;
    font-size:clamp(6px,.58vw,9px);
  }
  .chat-tabs button.active{background:linear-gradient(#513719,#1d150b);color:#edc773;box-shadow:inset 0 0 0 1px #8d6834}
  .classic-bottom .classic-chat #worldFieldLog{
    min-height:0;
    padding:clamp(5px,.7vw,10px) clamp(8px,.85vw,13px);
    background:linear-gradient(90deg,#15140e88,transparent 70%),#080907;
    font:clamp(7px,.69vw,11px)/1.42 Georgia,serif;
  }
  .classic-bottom #worldFieldLog p{margin:0 0 clamp(2px,.3dvh,4px)}
  .chat-entry{border-top:1px solid #4c3b24}
  .chat-entry input{padding:4px 8px;border:1px solid #30291c;background:#090a08;color:#d2c8b4;font:clamp(7px,.63vw,10px) Georgia,serif}
  .chat-entry button{width:auto;padding:0 12px;border:1px solid #4b3b24;background:linear-gradient(#201a10,#0b0b08);color:#c3a768;font-size:clamp(6px,.53vw,8px)}
  .classic-quick{
    grid-template-columns:repeat(4,minmax(0,1fr));
    grid-template-rows:repeat(2,minmax(0,1fr));
    gap:clamp(3px,.4vw,6px);
    padding:clamp(5px,.6vw,9px);
    border-left:3px ridge #57462c;
    background:linear-gradient(135deg,#16150f,#070806);
  }
  .classic-quick button{
    min-height:0;
    border:1px solid #705733;
    background:radial-gradient(circle at 50% 33%,#322d20,#090a08 72%);
    box-shadow:inset 0 0 0 1px #080906,inset 0 -10px 15px #0009,0 1px 2px #000;
    color:#d6af64;
    font-size:clamp(17px,2vw,31px);
  }
  .classic-quick span{color:#d2bc8d;font-size:clamp(6px,.58vw,9px)}

  .classic-market-panel{display:flex;height:100%;min-height:0;flex-direction:column;overflow:hidden;padding:0}
  .classic-market-panel>.market-tabs{
    flex:0 0 clamp(34px,4.6dvh,44px);
    grid-template-columns:1fr 1fr auto;
    gap:clamp(5px,.65vw,10px);
    padding:clamp(4px,.55vw,8px) clamp(8px,.9vw,14px);
    border-bottom:2px ridge #4c3b24;
  }
  .classic-market-panel .market-tabs b,.classic-market-panel .market-tabs span{
    border:2px ridge #695435;
    background:linear-gradient(#182d0d,#091107);
    box-shadow:inset 0 0 8px #000;
    color:#dabe72;
    font-size:clamp(8px,.75vw,12px);
  }
  .classic-market-panel .market-tabs span{background:linear-gradient(#171713,#090a08);color:#b5aa95}
  .classic-market-panel .market-tabs button{align-self:center;padding:4px;color:#887b66;font-size:clamp(5px,.48vw,7px)}
  .market-overview{
    flex:0 0 clamp(175px,30dvh,286px);
    min-height:0;
    margin:0 clamp(7px,.7vw,11px) clamp(5px,.65vw,10px);
    overflow:hidden;
    border:1px solid #624b2b;
    background:#070806;
    box-shadow:inset 0 0 13px #000;
  }
  .market-head,.market-overview button{grid-template-columns:minmax(74px,1fr) 17% 19% 19%}
  .market-head{
    height:clamp(23px,2.9dvh,29px);
    padding:4px clamp(5px,.55vw,8px);
    border-bottom:1px solid #6c4f2b;
    background:linear-gradient(#17150f,#090a08);
    color:#b79b62;
    font-size:clamp(6px,.57vw,9px);
  }
  .market-overview button{
    min-height:clamp(22px,3.15dvh,30px);
    padding:3px clamp(5px,.55vw,8px);
    border-top:1px solid #49361e;
    background:linear-gradient(90deg,#0c0d0a,#12120d 56%,#080907);
    color:#d6c9af;
    font-size:clamp(7px,.7vw,11px);
  }
  .market-overview button:nth-child(even){background:linear-gradient(90deg,#10110d,#18150e 56%,#090a08)}
  .market-overview button i{margin-right:clamp(3px,.45vw,7px);color:#b89351;font-size:1.2em}
  .market-overview button b{color:#e1bb62}.market-overview button em{color:#8fc36a}.market-overview button em:last-child{color:#d98862}
  .classic-market-panel>.market-order-panel,.classic-market-panel>.order-columns,.classic-market-panel>details:not(.market-order-panel){display:none}
  .classic-market-panel>.recent-trades{
    flex:0 0 clamp(92px,17dvh,160px);
    min-height:0;
    max-height:none;
    margin:0 clamp(7px,.7vw,11px) clamp(5px,.65vw,10px);
    overflow:hidden;
    border:1px solid #59452a;
  }
  .classic-market-panel .recent-trades>div{
    grid-template-columns:minmax(65px,1fr) 24% minmax(62px,1fr);
    gap:4px;
    min-height:clamp(18px,2.55dvh,24px);
    padding:3px clamp(5px,.55vw,8px);
    border-bottom:1px solid #3d301e;
    background:linear-gradient(90deg,#0c0d0a,#11110d);
    font-size:clamp(6px,.62vw,10px);
  }
  .player-tabs{
    flex:0 0 clamp(28px,3.9dvh,37px);
    margin:0 clamp(7px,.7vw,11px);
    border:1px solid #4b3a23;
    background:#0a0b08;
    font-size:clamp(6px,.62vw,10px);
  }
  .player-tabs>*{display:grid;place-items:center;padding:4px;border-bottom:2px solid #30281b}
  .player-tabs b{border-bottom-color:#b08442;color:#ddb96d}
  .classic-player-list{
    flex:1 1 auto;
    min-height:0;
    max-height:none;
    margin:clamp(4px,.55vw,8px) clamp(7px,.7vw,11px) clamp(6px,.8vw,12px);
    overflow:auto;
    gap:2px;
  }
  .classic-player-list span{
    grid-template-columns:clamp(24px,2.3vw,37px) minmax(0,1fr);
    min-height:clamp(34px,5dvh,47px);
    padding:clamp(3px,.45vw,7px);
    border:1px solid #463720;
    background:linear-gradient(90deg,#13140f,#090a08);
  }
  .classic-player-list i{width:clamp(20px,2vw,31px);height:clamp(24px,2.4vw,37px);border:1px solid #765a30;background:radial-gradient(circle,#302a1b,#090a08);font-size:clamp(7px,.75vw,12px)}
  .classic-player-list b{color:#ded2b9;font-size:clamp(7px,.7vw,11px)}
  .classic-player-list small{color:#89ad64;font-size:clamp(6px,.58vw,9px)}
}

@media(min-width:901px) and (max-height:760px){
  .classic-world-shell{--rf-top-h:56px}
  .classic-player-panel{grid-template-rows:22px minmax(62px,1fr) 22px minmax(92px,1.35fr) 22px minmax(68px,1fr) 22px minmax(82px,1.15fr) minmax(76px,1.25fr)}
  .classic-panel>h3,.classic-bottom h3,.order-columns h3{font-size:8px}
  .classic-player{grid-template-columns:52px minmax(0,1fr);padding:5px 7px}.classic-player b{font-size:9px}.classic-player span{font-size:6px}
  .classic-skill-grid{gap:2px;padding:4px}.classic-skill-grid i{font-size:15px}.classic-skill-grid span{font-size:5px}.classic-skill-grid b{font-size:7px}
  .classic-gather-list{padding:3px 6px}.classic-gather-list button{font-size:6px}.classic-gather-list button b{font-size:6px}
  .classic-center{grid-template-rows:minmax(0,1fr) 150px}
  .classic-world-top .mode-switch{height:37px}.classic-world-top .mode-switch span,.classic-world-top .mode-switch b{font-size:10px}
  .classic-world-top .mode-switch:after{width:36px;height:27px;font-size:14px}
  .market-overview{flex-basis:190px}.classic-market-panel>.recent-trades{flex-basis:96px}
}

@media(max-width:900px){
  .classic-world-shell{--rf-top-h:58px}
  .classic-world-top{height:var(--rf-top-h);grid-template-columns:1fr auto;padding:0}
  .classic-world-top>strong{padding:0 16px;border-right:2px ridge #4b4434;font-size:clamp(20px,7vw,31px)}
  .classic-gold{min-width:145px;padding:0 12px 0 45px;border-left:0;font-size:7px}.classic-gold:before{left:12px;font-size:16px}.classic-gold:after{display:none}.classic-gold b{font-size:12px}
  .classic-world-grid{display:flex;height:auto;min-height:0;flex-direction:column;overflow:visible}
  .classic-center{order:-1;height:calc(100dvh - var(--rf-top-h));min-height:600px;grid-template-rows:minmax(420px,1fr) 23px 154px}
  .classic-center .world-hud{display:grid}
  .classic-player-panel>h3:nth-of-type(5),.classic-player-panel>.classic-pack{display:grid}
  .classic-player-panel>.classic-pack{grid-template-columns:repeat(6,1fr)}
  .classic-portrait{width:60px;height:64px}
  .classic-market-panel>.market-order-panel,.classic-market-panel>.order-columns,.classic-market-panel>details:not(.market-order-panel){display:block}
}
.world-minimap canvas{cursor:crosshair}
.world-pack-drawer{position:absolute;z-index:24;top:8px;right:8px;bottom:54px;width:min(420px,calc(100% - 16px));display:grid;grid-template-rows:auto auto minmax(0,1fr);border:4px ridge #8d7040;background:linear-gradient(145deg,#15140fef,#070907f7 55%);box-shadow:0 12px 35px #000d,inset 0 0 28px #0009;color:#e6dcc4}
.world-pack-drawer[hidden]{display:none}
.world-zoom-controls{position:absolute;right:3px;bottom:3px;display:grid;grid-template-columns:22px 34px 22px;align-items:center;border:1px solid #806237;background:#080a08e8;box-shadow:0 2px 8px #000b}.world-zoom-controls button{height:21px;border:0;background:#17180f;color:#e4c976;font:700 14px Georgia;cursor:pointer}.world-zoom-controls button:hover{background:#3a2b15}.world-zoom-controls span{color:#c8b276;font:7px Georgia;text-align:center;pointer-events:none}
.world-combat-styles{position:absolute;z-index:12;right:8px;bottom:58px;width:244px;padding:5px;border:2px ridge #71572e;background:#080a08eb;box-shadow:0 5px 18px #000b;color:#bda86f}.world-combat-styles>small{display:block;margin:0 2px 4px;color:#d9bd70;font:7px Cinzel;letter-spacing:.08em}.world-combat-styles nav{display:grid;grid-template-columns:repeat(5,1fr);gap:3px}.world-combat-styles button{display:grid;grid-template-rows:16px 9px 8px;place-items:center;min-width:0;height:46px;padding:3px 1px;border:1px solid #47391f;background:#11130e;color:#a89568;font:15px Georgia;cursor:pointer}.world-combat-styles button span{display:block;color:#918467;font:6px Cinzel}.world-combat-styles button b{color:#726b58;font:6px Georgia}.world-combat-styles button:hover,.world-combat-styles button.active{border-color:#d0a44d;background:linear-gradient(#443017,#17150d);color:#ffe091}.world-combat-styles button.active span,.world-combat-styles button.active b{color:#f0ce78}
.world-loot-feed{position:absolute;z-index:11;left:8px;bottom:58px;width:210px;padding:6px;border:2px ridge #67502c;background:#070907e8;box-shadow:0 5px 18px #000c}.world-loot-feed[hidden]{display:none}.world-loot-feed>small{display:block;margin-bottom:4px;color:#c9ab65;font:7px Cinzel}.world-loot-feed p{display:grid;grid-template-columns:22px 1fr;align-items:center;margin:2px 0;padding:4px;border:1px solid #3b3423;background:#10120e;color:#d9c88f}.world-loot-feed p.rare{border-color:#75509a;background:#21152c;color:#e0b9ff}.world-loot-feed p>i{font:15px Georgia;text-align:center}.world-loot-feed p>span{font:8px Georgia}.world-loot-feed p small{display:block;color:#82785e;font:6px Cinzel}
.world-pack-drawer>header{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-bottom:2px ridge #69542e;background:#18160f}.world-pack-drawer>header small{display:block;color:#9d8653;font:7px Cinzel;letter-spacing:.18em}.world-pack-drawer>header h2{margin:1px 0 0;color:#e7c873;font:700 16px Georgia}.world-pack-drawer>header button{width:28px;height:28px;border:1px solid #8e7040;background:#090a07;color:#d9bd72;font:18px Georgia}
.world-pack-drawer>nav{display:grid;grid-template-columns:repeat(3,1fr);padding:5px;gap:4px;border-bottom:1px solid #4c3d23}.world-pack-drawer>nav button{padding:7px 3px;border:1px solid #5b4828;background:#0b0d09;color:#9e906f;font:700 9px Cinzel;text-transform:uppercase}.world-pack-drawer>nav button.active{border-color:#c49643;background:linear-gradient(#3e2b12,#17140c);color:#f0d17c}.world-pack-drawer>nav button:disabled{cursor:not-allowed;filter:grayscale(1);opacity:.38}
#worldPackBody{min-height:0;padding:8px;overflow:auto;scrollbar-color:#806335 #111}.world-pack-capacity,.world-bank-view>header{display:flex;justify-content:space-between;align-items:end;margin-bottom:7px;color:#d8bd78}.world-pack-capacity b,.world-bank-view>header b{font:700 11px Georgia}.world-pack-capacity span,.world-bank-view>header span{color:#8f866e;font-size:7px}
.world-pack-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:64px;gap:4px;padding:6px;border:2px ridge #463a27;background:#050704}.world-pack-grid>button,.world-pack-grid>.empty-slot{position:relative;display:grid;place-items:center;min-width:0;border:1px solid #40351f;background:radial-gradient(circle at 50% 40%,#24251d,#090b08 72%);color:#d8c487}.world-pack-grid>button{cursor:pointer}.world-pack-grid>button:hover,.world-pack-grid>button.selected{border-color:#d1a64f;background:radial-gradient(circle at 50% 40%,#40341e,#0c0e09 75%)}.world-pack-grid>button i{font:23px Georgia}.world-pack-grid>button b{position:absolute;top:2px;right:4px;color:#f1de9e;font:700 8px Georgia;text-shadow:1px 1px #000}.world-pack-grid>button span{position:absolute;right:2px;bottom:2px;left:2px;overflow:hidden;color:#aaa087;font:6px Georgia;text-align:center;text-overflow:ellipsis;white-space:nowrap}.world-pack-grid>.empty-slot{opacity:.32}.world-pack-grid>.empty-slot:after{content:'';width:19px;height:19px;border:1px solid #27271f;transform:rotate(45deg)}
.world-pack-pages{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:6px;margin-top:6px}.world-pack-pages button{padding:6px;border:1px solid #5b4828;background:#10120c;color:#ccb474;font:7px Cinzel}.world-pack-pages button:last-child{justify-self:stretch}.world-pack-pages button:disabled{opacity:.3}.world-pack-pages span{color:#988b6c;font:8px Georgia}
.world-pack-details{display:grid;grid-template-columns:48px minmax(0,1fr);gap:8px;margin-top:8px;padding:8px;border:2px ridge #4a3d27;background:#0b0d09}.world-pack-large-icon{display:grid;place-items:center;width:46px;height:46px;border:1px solid #765b30;background:#151811;color:#ddb95e;font:26px Georgia}.world-pack-details h3{margin:0;color:#edcf7c;font:700 12px Georgia}.world-pack-details small{color:#95886a;font-size:7px;text-transform:uppercase}.world-pack-details p{margin:4px 0;color:#beb294;font-size:8px}.world-pack-details footer{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:4px}.world-pack-details footer button,.world-bank-actions button{flex:1;padding:6px;border:1px solid #755a2d;background:#14160f;color:#d9c487;font:7px Cinzel}.world-pack-details footer button.primary{background:#3e2c12;color:#efd17f}.world-pack-details footer b{align-self:center;color:#7fb06b;font:8px Georgia}
.world-pack-help,.world-pack-empty{margin:9px 3px;color:#968b70;font:9px/1.45 Georgia}.world-bank-view .bank-grid{grid-auto-rows:62px}.world-bank-actions{position:sticky;bottom:-8px;display:grid;grid-template-columns:1fr repeat(3,auto);gap:4px;margin:8px -2px -2px;padding:7px;border:2px ridge #72582f;background:#0a0c09f5}.world-bank-actions b{align-self:center;color:#e5ca7d;font:9px Georgia}.world-bank-actions button{min-width:64px}
.world-equipment-view{display:grid;grid-template-columns:138px minmax(0,1fr);gap:7px}.world-equipment-view canvas{width:138px;height:170px;border:2px ridge #5a4728;background:radial-gradient(ellipse at center bottom,#2c3124,#080a07 72%)}.world-equipment-slots{display:grid;gap:4px}.world-equipment-slots button{display:grid;grid-template-columns:28px 44px minmax(0,1fr);align-items:center;min-height:38px;padding:3px 5px;border:1px solid #47391f;background:#090b08;color:#8f856d;text-align:left}.world-equipment-slots button.filled{border-color:#8b6934;color:#e0c578;cursor:pointer}.world-equipment-slots i{font:18px Georgia;text-align:center}.world-equipment-slots span{font:6px Cinzel;text-transform:uppercase}.world-equipment-slots b{overflow:hidden;font:8px Georgia;text-overflow:ellipsis;white-space:nowrap}.world-equipment-stats{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:4px;padding:7px;border:1px solid #493b25;background:#0a0c08}.world-equipment-stats b{width:100%;color:#a99057;font:7px Cinzel}.world-equipment-stats span{padding:3px 5px;border:1px solid #3e3728;color:#bfaf8b;font:8px Georgia}
@media(max-width:900px){.world-pack-drawer{top:5px;right:5px;bottom:50px;width:min(360px,94%)}.world-pack-grid{grid-auto-rows:57px}.world-equipment-view{grid-template-columns:112px minmax(0,1fr)}.world-equipment-view canvas{width:112px;height:150px}.world-bank-actions{grid-template-columns:1fr 1fr}.world-bank-actions b{grid-column:1/-1}}
.world-stage>#npcDialogue{position:absolute;inset:0;z-index:30;display:grid;grid-template-columns:none;place-items:end center;width:auto;min-height:0;padding:0 8% 5%;transform:none;background:linear-gradient(180deg,transparent 30%,#030503b8);cursor:pointer}
.world-stage>#npcDialogue[hidden]{display:none}
.world-stage>#npcDialogue>div{width:min(720px,92%);min-height:110px;padding:16px 22px;border:3px ridge #9d783d;background:linear-gradient(#17170f,#090a07);box-shadow:0 8px 30px #000;color:#e7ddc6;text-align:left}
.world-stage>#npcDialogue small{color:#a58a54;text-transform:uppercase;letter-spacing:.12em}.world-stage>#npcDialogue h3{margin:2px 0 8px;color:#f0cc78;font:700 18px Georgia}.world-stage>#npcDialogue p{margin:0 0 10px;font:15px/1.45 Georgia}.world-stage>#npcDialogue span{display:block;color:#9d916e;font-size:10px;text-align:right}
