/* Azeroth Forge — an original WoW-inspired frame system for Azeroth Journey. */
@font-face{
 font-family:'AJ Cinzel';src:url('assets/fonts/cinzel-variable.ttf') format('truetype');
 font-style:normal;font-weight:400 900;font-display:swap;
}
:root{
 --forge-ink:#080b12;--forge-panel:#101827;--forge-panel-2:#182337;
 --forge-gold:#e6bb69;--forge-bright:#ffe6a4;--forge-muted:#b7ae9a;
 --forge-red:#8c2418;--forge-border:#75552c;
 color-scheme:dark;
}
*{font-family:'Friz Quadrata','Friz Quadrata TT','AJ Cinzel',Georgia,serif!important}
code,pre,textarea{font-family:ui-monospace,Consolas,monospace!important}
html,body{background:#080a0f;color:#eee6d5;font-family:Georgia,'Palatino Linotype',serif}
header{
 left:0!important;top:0!important;width:100%!important;height:88px!important;
 padding:0 28px!important;display:flex!important;align-items:center!important;
 justify-content:space-between!important;gap:16px!important;overflow:visible!important;
 background:linear-gradient(180deg,#111723f2 0%,#0b1019e8 76%,#090d13c0 100%)!important;
 border:0!important;border-bottom:1px solid #9b7139!important;
 box-shadow:0 8px 22px #0008,inset 0 -1px #f2cc7c33!important;
 pointer-events:none!important;
}
header::after{content:"";position:absolute;inset:auto 0 -3px;height:3px;background:linear-gradient(90deg,transparent,#886034 8%,#d8ad5b 50%,#886034 92%,transparent);opacity:.9}
header>div:first-child{position:relative!important;z-index:1;width:clamp(235px,25vw,355px)!important;height:88px!important;min-height:0!important;display:block!important}
header h1{
 position:relative!important;display:flex!important;align-items:center!important;
 width:100%!important;height:67px!important;margin:1px 0 0!important;padding:0 12px 0 76px!important;
 color:#f5d487!important;font:700 clamp(18px,2vw,27px)/1 Georgia,serif!important;
 text-transform:uppercase!important;
 letter-spacing:.6px!important;text-shadow:0 2px 3px #000,0 0 10px #e2b75155!important;
 background:url('assets/ui/forge-title-plaque.png') center/100% 100% no-repeat!important;
}
header h1::before{content:"";position:absolute;left:8px;top:50%;width:48px;height:48px;transform:translateY(-50%);background:url('assets/ui/forge-crest.png') center/contain no-repeat;filter:drop-shadow(0 2px 4px #000b)}
header .tagline{
 display:block!important;position:absolute;left:15px;bottom:4px;margin:0!important;
 color:#d4c19a!important;font:italic 10px/1.2 Georgia,serif!important;
 letter-spacing:2.2px!important;text-transform:uppercase;text-shadow:0 1px 3px #000;
}
header .right{
 display:flex!important;position:relative;z-index:1;align-items:center;gap:10px;
 padding:8px 14px;color:#e7d4ad!important;font:700 10px Georgia,serif!important;
 letter-spacing:2px!important;text-shadow:0 1px 3px #000;
 border:1px solid #785b33;background:linear-gradient(180deg,#202a3aee,#111722ee),url('assets/ui/forge-panel-texture.webp') center/cover;
 box-shadow:inset 0 1px #f6d78d26,0 3px 12px #0008;
}
header .dot{width:8px;height:8px;background:#8dc07c!important;box-shadow:0 0 8px #8dc07caa!important}
.layout>.hall-panel{
 top:clamp(112px,13vh,164px)!important;left:clamp(16px,1.8vw,34px)!important;
 width:clamp(270px,20vw,326px)!important;
 border:2px solid #8e6b38!important;border-radius:5px!important;
 background:
  linear-gradient(155deg,#131d30e8 0%,#0d1423ef 58%,#090f19ed 100%),
  url('assets/ui/forge-panel-texture.webp') center/cover!important;
 border:14px solid transparent!important;
 border-image-source:url('assets/ui/forge-panel-frame.webp')!important;
 border-image-slice:145 fill!important;border-image-width:14px!important;border-image-repeat:stretch!important;
 box-shadow:inset 0 0 0 1px #d6a24a22,inset 0 0 22px #0008,0 14px 38px #000d!important;
}
.layout>.hall-panel::before,.layout>.hall-panel::after{
 content:"";position:absolute;z-index:2;width:25px;height:25px;pointer-events:none;
 background:url('assets/ui/forge-crest.png') center/contain no-repeat;opacity:.82;
}
.layout>.hall-panel::before{top:-9px;left:-9px}.layout>.hall-panel::after{right:-9px;bottom:-9px}
.layout>.hall-panel .hall-heading{
 position:relative;padding:11px 13px 10px!important;
 background:linear-gradient(180deg,#202b40 0%,#141c2c 100%)!important;
 border-bottom:1px solid #88663a!important;
 box-shadow:inset 0 1px #f5d89522;
}
.layout>.hall-panel .hall-heading::after{content:"";position:absolute;bottom:-2px;left:14px;right:14px;height:2px;background:linear-gradient(90deg,transparent,#9a743b,#e3bd71,#9a743b,transparent);opacity:.8}
.layout>.hall-panel .hall-heading h2{
 height:42px!important;margin:0 0 5px!important;overflow:hidden!important;
 color:transparent!important;font-size:0!important;line-height:0!important;text-shadow:none!important;
 background:url('assets/ui/hall-of-fame.png') center/100% 100% no-repeat!important;
}
.layout>.hall-panel .hall-heading h2::before{display:none!important}
.layout>.hall-panel .hall-heading p{font:italic 12px/1.4 Georgia,serif!important;color:#d8c9a9!important}
.layout>.hall-panel .hall-switch button,
.layout>.hall-panel .hall-switch button.active{
 min-height:32px!important;padding:6px 10px!important;border-radius:2px!important;
 letter-spacing:.45px;border:0!important;
 background:url('assets/ui/forge-button-plate.png') center/100% 100% no-repeat!important;
 box-shadow:none!important;
}
.layout>.hall-panel .hall-switch button,
.layout>.hall-panel .hall-heading h2,
.layout>.hall-panel .hall-summary,
.layout>.panel h3,
.layout>.panel summary,
.layout>.panel .drawer-top,
.map-toolbar .tool,
#mapSourceBadge{
 text-transform:uppercase!important;letter-spacing:.75px!important;
}
.layout>.hall-panel .hall-summary{
 margin:11px 12px 6px!important;padding:7px 9px!important;
 border:1px solid #4a5260!important;background:linear-gradient(90deg,#1a2335,#111827)!important;
 color:#f0d492!important;font:11px Georgia,serif!important;
}
.layout>.hall-panel .hall-feed{display:flex!important;flex-direction:column!important;padding:5px 11px 12px!important;gap:8px!important;scrollbar-color:#9b733b #101625}
.layout>.hall-panel #events{display:flex!important;flex-direction:column!important;align-items:stretch!important;}
.layout>.hall-panel .hall-card,.layout>.hall-panel .hall-card.is-rare{
 position:relative;flex:0 0 auto!important;overflow:hidden;padding:10px 9px!important;
 border:1px solid #4e5662!important;border-radius:3px!important;
 background:linear-gradient(145deg,#1b263bea 0%,#111a2aeF 72%,#0d1420ee 100%),url('assets/ui/forge-panel-texture.webp') center/cover!important;
 box-shadow:inset 0 1px #fff1,0 3px 8px #0007!important;
}
.layout>.hall-panel .hall-card::before{
 content:"";position:absolute;inset:0 auto 0 0;width:3px;background:#8eabc2;
}
.layout>.hall-panel .hall-card.is-rare::before{background:#e0ae4b}
.layout>.hall-panel .hall-icon{
 flex:0 0 32px!important;width:32px!important;height:32px!important;
 border:1px solid #a27b43!important;border-radius:2px!important;
 background:url('assets/ui/forge-crest.png') center/contain no-repeat,radial-gradient(circle at 35% 25%,#30425e,#0a0f19 75%)!important;
 color:transparent!important;font-size:0!important;
 box-shadow:inset 0 0 0 2px #080d16,0 2px 5px #0009;
}
.layout>.hall-panel .hall-who{color:#f1cd79!important;font:700 13px Georgia,serif!important}
.layout>.hall-panel .hall-title{color:#f4e4c4!important;font:700 13px/1.35 Georgia,serif!important}
.layout>.hall-panel .hall-detail{color:#c0b69f!important;font:11px/1.45 Georgia,serif!important}
.layout>.hall-panel .hall-stamp{color:#958e80!important;font:9px Georgia,serif!important}
.layout>.hall-panel .hall-votes button{
 min-width:37px!important;min-height:31px!important;border:1px solid #635133!important;
 border-radius:2px!important;background:linear-gradient(#202a3aee,#111722ef),url('assets/ui/forge-panel-texture.webp') center/cover!important;
 color:#e9cb8a!important;box-shadow:inset 0 1px #fff1,0 2px 4px #0007!important;
}
.layout>.hall-panel .hall-privacy{
 border-top:1px solid #57452d!important;background:linear-gradient(#0c121de8,#0c121de8),url('assets/ui/forge-panel-texture.webp') center/cover!important;
 color:#a99d84!important;font:9px/1.4 Georgia,serif!important;
}
.map-toolbar{
 display:flex!important;position:fixed!important;z-index:34!important;
 left:50%!important;bottom:clamp(12px,2vh,25px)!important;transform:translateX(-50%)!important;
 max-width:calc(100vw - 32px)!important;width:max-content!important;
 padding:7px 10px!important;border:1px solid #94703c!important;border-radius:3px!important;
 background:linear-gradient(180deg,#202b3beF,#0c121eF5)!important;
 box-shadow:inset 0 1px #f9df9b2e,0 7px 25px #000c!important;
}
.map-toolbar .left{display:flex!important;justify-content:center!important;gap:7px!important}
.map-toolbar .tool{
 min-height:34px!important;padding:6px 11px!important;border-radius:2px!important;
 background:url('assets/ui/forge-button-plate.png') center/100% 100% no-repeat!important;
 border:0!important;color:#f0d9a3!important;box-shadow:none!important;
 font:700 11px Georgia,serif!important;letter-spacing:.35px;
}
.map-toolbar .tool:hover,.map-toolbar .tool[aria-pressed="true"]{filter:brightness(1.2) saturate(1.08)!important}
.map-toolbar .tool:active{filter:brightness(.82)!important}
#cloudSyncStatus{display:inline-block!important;min-width:0;max-width:240px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;color:#d6c398!important;font:10px Georgia,serif!important;text-transform:uppercase!important;letter-spacing:.75px!important}
#mapSourceBadge{
 top:clamp(100px,12vh,145px)!important;left:auto!important;right:clamp(18px,2vw,34px)!important;
 padding:7px 11px!important;border:1px solid #7e6035!important;border-radius:2px!important;
 background:linear-gradient(135deg,#1c2738ed,#0b111cef),url('assets/ui/forge-panel-texture.webp') center/cover!important;
 box-sizing:border-box;white-space:normal;overflow-wrap:anywhere;
 color:#ebd5a5!important;font:10px/1.35 Georgia,serif!important;letter-spacing:.4px;
 box-shadow:inset 0 1px #fff1,0 4px 14px #0009!important;
}
#backWorld:not([hidden]),#backZone{
 border:1px solid #bf9652!important;border-radius:2px!important;
 background:linear-gradient(180deg,#4a3020,#171019)!important;
 color:#f6e1b3!important;font:700 11px Georgia,serif!important;
 box-shadow:inset 0 1px #f7d28a44,0 4px 14px #000b!important;
}
.map-viewport.zone-map-mode #backWorld:not([hidden]){top:145px!important}
.map-viewport.zone-map-mode #backZone:not([hidden]){top:185px!important}
.map-error{z-index:32!important}
#backWorld:not([hidden]),#backZone:not([hidden]){z-index:36!important}
.layout>.panel{
 border:2px solid #8c6b3a!important;border-radius:4px!important;
 background:linear-gradient(155deg,#172238e8,#0d1421ef 60%,#090f18ed),url('assets/ui/forge-panel-texture.webp') center/cover!important;
 border:14px solid transparent!important;
 border-image-source:url('assets/ui/forge-panel-frame.webp')!important;
 border-image-slice:145 fill!important;border-image-width:14px!important;border-image-repeat:stretch!important;
 box-shadow:inset 0 0 0 1px #e0b2572c,inset 0 0 26px #0009,0 15px 42px #000e!important;
}
.layout>.panel .drawer-top{
 padding:10px 12px!important;background:linear-gradient(#27364cee,#121b2bee),url('assets/ui/forge-panel-texture.webp') center/cover!important;
 border-bottom:1px solid #9c7540!important;color:#f2d99f!important;
 font:700 10px Georgia,serif!important;letter-spacing:1.5px;
}
.layout>.panel .detail,.layout>.panel .stats .stat,.layout>.panel .profession-section,
.layout>.panel .advanced-tools,.layout>.panel .messagebox,.layout>.panel .char-snapshot-import{
 border-radius:3px!important;border-color:#5e543e!important;
 background:linear-gradient(145deg,#1c293ceF,#111a29ee),url('assets/ui/forge-panel-texture.webp') center/cover!important;
 box-shadow:inset 0 1px #fff1,0 3px 9px #0005;
}
.layout>.panel .char-button{
 border-radius:3px!important;border-color:#596172!important;
 background:linear-gradient(105deg,#1a263aee,#101827ee),url('assets/ui/forge-panel-texture.webp') center/cover!important;
}
.layout>.panel .char-button:hover,.layout>.panel .char-button.active{
 border-color:#deb567!important;background:linear-gradient(105deg,#332c29,#171e2b)!important;
}
.layout>.panel .detail .name{color:#f3d28a!important}
.layout>.panel .detail h3,.layout>.panel h3{color:#e3c37d!important}
.layout>.panel input,.layout>.panel select,.layout>.panel textarea{
 border:1px solid #75613e!important;border-radius:2px!important;
 background:#0b111b!important;color:#f2e7cf!important;
}
.layout>.panel .btn-primary,.layout>.panel #importCharacter{
 border-radius:2px!important;background:linear-gradient(#9b3d21,#48130f)!important;
 border:1px solid #e0b35f!important;color:#ffe4a6!important;
 box-shadow:inset 0 1px #fff3,0 3px 8px #0008!important;
}
.layout>.panel .footnote,.layout>.panel .sub{color:#bcb29e!important}
.wow-character-sheet{margin:13px 0 15px;padding:10px 9px 8px;border:1px solid #78603d;background:linear-gradient(150deg,#101723f0,#0b111bf5),url('assets/ui/forge-panel-texture.webp') center/cover;box-shadow:inset 0 0 0 1px #e9ca8421,0 4px 12px #0008}
.sheet-title{min-height:35px;display:flex;justify-content:space-between;align-items:center;padding:0 13px;background:url('assets/ui/forge-title-plaque.png') center/100% 100% no-repeat;color:#f1d28c;font:700 11px Georgia,serif;letter-spacing:1px;text-transform:uppercase;text-shadow:0 1px 3px #000}
.sheet-title small{font:9px Georgia,serif;letter-spacing:.7px;color:#d0bb91}
.paper-doll{display:grid;grid-template-columns:minmax(65px,1fr) minmax(76px,.94fr) minmax(65px,1fr);gap:5px;align-items:stretch;padding-top:8px}
.gear-column{display:flex;flex-direction:column;gap:4px;min-width:0}
.gear-slot{height:38px;min-width:0;border:0;background:url('assets/ui/forge-gear-slot.png') center/100% 100% no-repeat,linear-gradient(135deg,#192131,#0b1019);filter:drop-shadow(0 1px 2px #0008)}
.gear-slot.has-item{border-color:#79603b}
.gear-slot-item,.gear-slot-empty{height:100%;min-width:0;display:grid;grid-template-columns:26px minmax(0,1fr);grid-template-rows:1fr 1fr;column-gap:4px;align-items:center;padding:2px 6px;color:#ded1b5!important;text-decoration:none!important}
.gear-slot-item img{grid-column:1;grid-row:1 / 3;width:24px;height:24px;box-sizing:border-box;padding:4px;border:0;background:url('assets/ui/forge-gear-socket.png') center/100% 100% no-repeat;object-fit:cover;image-rendering:auto}
.gear-slot-item .iconsmall{grid-column:1;grid-row:1 / 3;width:24px;height:24px;box-sizing:border-box;position:relative;flex:none;border:0;background:url('assets/ui/forge-gear-socket.png') center/100% 100% no-repeat}
.gear-slot-item .iconsmall ins{position:absolute;inset:4px;background-size:cover!important}
.gear-slot-item .gear-glyph,.gear-slot-empty .gear-glyph{grid-column:1;grid-row:1 / 3;width:24px;height:24px;display:grid;place-items:center;border:0;background:url('assets/ui/forge-gear-socket.png') center/100% 100% no-repeat;color:#d9c28d;font-size:12px}
.gear-slot-item:has(.iconsmall,img) .gear-glyph{display:none}
.gear-slot-item .gear-label,.gear-slot-empty .gear-label{grid-column:2;grid-row:1;align-self:end;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#a99a7c;font:8px/1.1 Georgia,serif;text-transform:uppercase;letter-spacing:.25px}
.gear-slot-item b,.gear-slot-empty b{grid-column:2;grid-row:2;align-self:start;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#e6d8bb;font:9px/1.1 Georgia,serif;font-weight:400}
.gear-slot-item>span:not(.iconsmall):not(.gear-label):not(.gear-glyph){grid-column:2;grid-row:2;align-self:start;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#e6d8bb;font:9px/1.1 Georgia,serif}
.gear-slot-empty{opacity:.72}.gear-slot-empty b{color:#908775}
.doll-stage{position:relative;min-width:0;min-height:230px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;overflow:hidden;border:1px solid #4c412e;background:radial-gradient(ellipse at 50% 39%,#3b3b35 0,#1d2021 42%,#0a0f16 100%);box-shadow:inset 0 0 26px #000b}
.doll-halo{position:absolute;width:88px;height:145px;top:15px;border-radius:50%;border:1px solid #b0894b66;box-shadow:0 0 24px #c49a5030,inset 0 0 22px #c49a5022}
.doll-body{position:absolute;inset:4px 0 19px;width:100%;background:url('assets/ui/forge-mannequin-v3.webp') center/contain no-repeat;filter:drop-shadow(0 3px 6px #000c);opacity:.94}
.doll-body i,.doll-body b,.doll-body em{display:none}
.doll-portrait{display:none}
.layout>.panel .doll-stage{background:radial-gradient(ellipse at 50% 42%,#252a30,#121722 62%,#090d14)!important}
.layout>.panel .doll-stage .doll-halo,.layout>.panel .doll-stage .doll-body{display:block!important}
.layout>.panel .doll-stage .doll-portrait{display:none!important}
.layout>.panel .doll-stage::after{content:none!important}
.doll-stage>strong{position:absolute;z-index:2;bottom:6px;padding:2px 4px;color:#dbbf7b;font:9px Georgia,serif;text-transform:uppercase;letter-spacing:.5px}
.model-viewer-link{display:block;margin:6px 1px 0;padding:6px 4px;border:0;background:url('assets/ui/forge-button-plate.png') center/100% 100% no-repeat;color:#f1d38d!important;text-align:center;font:9px Georgia,serif;text-transform:uppercase;letter-spacing:.55px}
.gear-bottom{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-top:5px}
.gear-bottom .gear-slot{height:auto;aspect-ratio:1;background:url('assets/ui/forge-gear-socket.png') center/100% 100% no-repeat,linear-gradient(135deg,#192131,#0b1019)}
.gear-bottom .gear-slot-item,.gear-bottom .gear-slot-empty{height:100%;grid-template-columns:1fr;grid-template-rows:1fr;padding:0;place-items:center}
.gear-bottom .gear-slot-item img,.gear-bottom .gear-slot-item .iconsmall,.gear-bottom .gear-slot-item .gear-glyph,.gear-bottom .gear-slot-empty .gear-glyph{grid-column:1;grid-row:1;justify-self:center;align-self:center;width:20px;height:20px;padding:0;border:0;background:transparent}
.gear-bottom .gear-slot-item .iconsmall ins{inset:0}
.gear-bottom .gear-slot-item .gear-label,.gear-bottom .gear-slot-item b,.gear-bottom .gear-slot-empty .gear-label,.gear-bottom .gear-slot-empty b{display:none}
.gear-source{margin:7px 2px 0;color:#998c73;font:9px/1.3 Georgia,serif;text-align:center}
.profession-section{padding:9px!important;margin:11px 0!important}
.profession-section h3{height:30px;display:flex;align-items:center;margin:0 0 7px!important;padding:0 12px;background:url('assets/ui/forge-title-plaque.png') center/100% 100% no-repeat;font-size:10px!important;letter-spacing:.9px!important;text-shadow:0 1px 3px #000}
.profession-section h3::after{display:none!important}
.profession-row{display:flex!important;align-items:center;justify-content:space-between;gap:10px;padding:5px 1px;border-top:1px solid #5a4c36;color:#ded0ae;font:11px Georgia,serif}
.profession-row>span{flex:1;min-width:0}.profession-row>strong{color:#f2d38c;font:700 11px Georgia,serif;white-space:nowrap}.profession-row>strong small{color:#a99a7c;font-weight:400}
.profession-row i{display:block;height:3px;margin-top:4px;background:#080d14;border:1px solid #4c422f}.profession-row i b{display:block;height:100%;background:linear-gradient(90deg,#7e602e,#eac875);box-shadow:0 0 6px #dbb86166}
.detail .stats{display:none!important}
.map-viewport::after{box-shadow:inset 0 0 80px #05080dbb,inset 0 0 0 4px #271b10,inset 0 0 0 7px #aa7b3d,inset 0 0 0 9px #302012!important}
.map-stage{box-shadow:0 0 0 2px #25190e,0 0 0 5px #b78949,0 0 0 8px #302012,0 14px 45px #000e!important}
.controls button{border-radius:2px!important;border:1px solid #a27a42!important;background:linear-gradient(#263349,#101723)!important;color:#f4d58d!important}
.controls button:hover{background:linear-gradient(#69311f,#22151a)!important}
@media(max-width:850px){
 header{height:72px!important;padding:0 10px!important}
 header>div:first-child{width:min(245px,58vw)!important;height:72px!important}
 header h1{height:60px!important}
 header .tagline{left:8px;bottom:2px;font-size:8px!important;letter-spacing:1.4px!important}
 header .right{padding:6px 8px;font-size:8px!important;letter-spacing:1px!important}
 .layout>.hall-panel{top:auto!important;bottom:clamp(62px,10vh,94px)!important;left:8px!important;width:min(285px,55vw)!important}
 .map-toolbar{bottom:8px!important;left:8px!important;right:8px!important;transform:none!important;width:auto!important;max-width:none!important;box-sizing:border-box!important;justify-content:flex-start!important}
 .map-toolbar .left{width:100%;min-width:0;gap:4px!important;flex-wrap:wrap;justify-content:flex-start!important}
 .map-toolbar .tool{min-height:30px!important;padding:5px 7px!important;font-size:10px!important}
 #cloudSyncStatus{display:block!important;flex:0 0 100%!important;max-width:100%!important;white-space:normal!important;overflow-wrap:anywhere;line-height:1.3}
 #mapSourceBadge{top:82px!important;left:8px!important;right:8px!important;width:auto!important;max-width:none!important;text-align:left!important}
 .map-viewport.zone-map-mode #backWorld:not([hidden]){top:122px!important;right:8px!important;left:auto!important}
 .map-viewport.zone-map-mode #backZone:not([hidden]){top:158px!important;right:8px!important;left:auto!important}
 .map-error{padding:16px!important}
 .map-error b,.map-error p{max-width:100%!important;overflow-wrap:anywhere}
 .map-error b{font-size:clamp(15px,4.8vw,20px)!important}
 .map-error p{font-size:12px!important;line-height:1.45}
 .map-error .btn-primary{min-height:44px}
}
@media(max-width:480px){
 header{height:62px!important;padding:0 7px!important}
 header>div:first-child{width:min(205px,57vw)!important;height:62px!important}
 header h1{height:51px!important}
 header .tagline{display:none!important}
 header .right{display:none!important}
 .layout>.hall-panel{width:min(242px,59vw)!important;bottom:76px!important;max-height:34dvh!important}
 .map-toolbar .left{gap:3px!important}
 .map-toolbar .tool{padding:5px!important;font-size:9px!important}
 .map-toolbar #sourceStatus{display:none!important}
}
@media(max-width:850px){
 .layout>.panel.is-open{
  top:82px!important;left:8px!important;right:8px!important;
  /* Keep the drawer above the permanent Hall instead of covering it. */
  bottom:calc(min(36dvh,310px) + clamp(62px,10vh,94px) + 12px + env(safe-area-inset-bottom))!important;
  width:auto!important;height:auto!important;
  min-height:0!important;max-height:none!important;
  overflow-y:auto!important;overscroll-behavior:contain
 }
}
@media(max-width:480px){
 .layout>.panel.is-open{
  top:70px!important;
  bottom:calc(31dvh + 86px + env(safe-area-inset-bottom))!important;
 }
}
@media(prefers-reduced-motion:reduce){button{transition:none!important}}

/* A compact Hall toggle keeps the character map usable on narrow screens. */
.layout>.hall-panel .hall-actions{display:flex;align-items:center;justify-content:space-between;gap:5px}
.layout>.hall-panel .hall-actions .hall-switch{margin-top:5px!important}
.layout>.hall-panel .hall-collapse{
 flex:0 0 31px;width:31px;height:30px;padding:0;border:0;border-radius:2px;
 background:url('assets/ui/forge-button-plate.png') center/100% 100% no-repeat!important;
 color:#f2d28e!important;font:700 15px/1 Georgia,serif!important;
 box-shadow:none!important;text-shadow:0 1px 2px #000;cursor:pointer;
}
.layout>.hall-panel .hall-collapse:hover,.layout>.hall-panel .hall-collapse:focus-visible{filter:brightness(1.2)}
.layout>.hall-panel .hall-content{display:flex;flex:1 1 auto;flex-direction:column;min-height:0;overflow:hidden}
.layout>.hall-panel.is-collapsed{bottom:auto!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:hidden!important}
.layout>.hall-panel.is-collapsed .hall-content,
.layout>.hall-panel.is-collapsed .hall-heading p,
.layout>.hall-panel.is-collapsed .hall-actions .hall-switch{display:none!important}
.layout>.hall-panel.is-collapsed .hall-actions{justify-content:flex-end}
.layout>.hall-panel.is-collapsed .hall-heading{border-bottom:0!important}

/* Keep key character sections one tap away in the long, scrollable profile drawer. */
.character-shortcuts{
 position:sticky;top:54px;z-index:12;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;
 margin:8px -14px 10px;padding:6px 14px;
 border-bottom:1px solid #80643b;background:linear-gradient(#101723f5,#101723ed);
 box-shadow:0 4px 9px #0008;
}
.character-shortcut{
 min-width:0;min-height:32px;padding:5px 3px;border:0;border-radius:2px;
 background:url('assets/ui/forge-button-plate.png') center/100% 100% no-repeat;
 color:#f1d38d;font:700 9px/1.1 Georgia,serif;letter-spacing:.45px;text-align:center;
}
.character-shortcut:hover{filter:brightness(1.18)}
.character-shortcut:focus-visible{outline:2px solid #f1d38d;outline-offset:1px}
#character-gear,#character-professions,#character-journey{scroll-margin-top:106px}
@media(max-width:380px){.character-shortcuts{gap:3px;padding-right:10px;padding-left:10px}.character-shortcut{font-size:8px;letter-spacing:.2px}}
