/* One compact menu, using the game's own wordmark and painted navigation art. */
.journey-drawer{box-sizing:border-box;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;gap:0;width:min(340px,calc(100vw - 28px));height:100dvh;max-height:100dvh;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);overflow:hidden;background:linear-gradient(140deg,#252217 0%,#171a12 35%,#11150e 100%);border:0;border-right:1px solid #92713d;box-shadow:12px 0 55px #0006;z-index:60;transform:translateX(-102%);transition:transform .22s ease-out}
.menu-open .journey-drawer{transform:translateX(0)}
.drawer-shade{background:#0306039e;backdrop-filter:blur(3px);z-index:59}
.journey-drawer .drawer-title{display:flex;align-items:center;justify-content:space-between;flex:none;gap:12px;margin:0;padding:12px 16px 10px;border-bottom:1px solid #8f73352b}
.journey-drawer .drawer-title>strong{display:block;min-width:0;width:244px;max-width:calc(100% - 48px);line-height:0}
.journey-drawer .drawer-title .game-wordmark{width:100%;height:auto;filter:drop-shadow(0 3px 4px #0005)}
.journey-drawer .drawer-close{display:grid;place-items:center;flex:none;width:36px;height:44px;min-width:36px;min-height:44px;margin:0;padding:8px;border:1px solid transparent;border-radius:3px;background:none;box-shadow:none;color:#c3ae82}
.journey-drawer .drawer-close svg{width:21px;height:21px}
.journey-drawer .drawer-close:hover{background:#b5903f0d;border-color:#7c643c}
.journey-drawer .drawer-location{display:flex;align-items:center;gap:11px;flex:none;width:calc(100% - 32px);min-height:64px;margin:12px 16px 5px;padding:10px 11px;border:1px solid #6653316b;border-radius:3px;background:#0c100a50;box-shadow:none;text-align:left}
.journey-drawer .drawer-location img{width:32px;height:42px;padding:1px;object-fit:cover;border:1px solid #7f643c;border-radius:2px}
.journey-drawer .drawer-location small{font:10px/1.4 Arial,sans-serif;color:#9e9277}
.journey-drawer .drawer-location strong{font:17px/1.35 Georgia,serif;color:#e4cf9e}
.journey-drawer .drawer-location em{font:10px/1.4 Arial,sans-serif;color:#aa9a78}
.journey-drawer .drawer-location:hover{border-color:#a38249}
.journey-drawer>nav{display:block;flex:1;min-width:0;width:100%;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#766139 transparent;padding:8px 16px 16px;margin:0}
.journey-drawer .drawer-nav-group{display:grid;grid-template-columns:minmax(0,1fr);gap:3px;min-width:0;width:100%;margin:0;padding:0}
.journey-drawer .drawer-nav-group+.drawer-nav-group{border-top:1px solid #78603a3b;margin-top:11px;padding-top:11px}
.journey-drawer nav button{box-sizing:border-box;position:relative;display:flex;align-items:center;justify-content:flex-start;flex-direction:row;gap:12px;width:100%;min-width:0;min-height:46px;margin:0;padding:6px 12px!important;border:1px solid transparent;border-radius:3px;background:none;box-shadow:none;text-align:left;color:#c9bc9d;font:14px/1.4 Arial,sans-serif!important}
.journey-drawer nav button>span{min-width:0;flex:1;font:14px/1.4 Arial,sans-serif;color:inherit;white-space:normal}
.journey-drawer nav button .navigation-art{width:29px;height:29px;flex:none;object-fit:contain;filter:drop-shadow(0 2px 3px #0005);opacity:.85}
.journey-drawer nav button:after{content:'';width:5px;height:5px;flex:none;margin-left:4px;border-top:1px solid #998460;border-right:1px solid #998460;transform:rotate(45deg);opacity:.5}
.journey-drawer nav button.active{background:linear-gradient(90deg,#74502238,#b18b3d0b);border-color:#a180444f;color:#efd69c;box-shadow:inset 2px 0 #ccab65}
.journey-drawer nav button.active .navigation-art{opacity:1}
.journey-drawer nav button.active:after{border-color:#d6b572;opacity:1}
.journey-drawer nav button:not(.active):hover{background:#b18b3d0b;border-color:#8a6b3a40;color:#ecdbb7}
.journey-drawer nav button> b{position:static;display:block;flex:none;min-width:20px;padding:1px 5px;margin:0;border:1px solid #8a6d3a4d;border-radius:3px;background:#a17b3021;color:#dac08b;font:11px/1.5 Arial,sans-serif;text-align:center}
.journey-drawer nav button[hidden],.journey-drawer nav button.hidden{display:none!important}
.journey-drawer .drawer-footer{display:flex;align-items:center;justify-content:space-between;flex:none;gap:10px;margin:0;padding:12px 20px;border-top:1px solid #80653842;background:#0b100b70}
.journey-drawer .drawer-footer .connection{display:flex;align-items:center;gap:7px;margin:0;padding:0;min-width:0;border:0;color:#a99f85;font:11px/1.4 Arial,sans-serif}
.journey-drawer .drawer-footer .connection i{flex:none;width:5px;height:5px}
.journey-drawer #logout{display:flex;align-items:center;justify-content:center;gap:7px;width:auto;min-height:40px;padding:7px 9px;margin:0;border:1px solid #76603c40;border-radius:3px;background:none;box-shadow:none;color:#c6b28d;font:12px/1.4 Arial,sans-serif;text-align:center}
.journey-drawer #logout.hidden{display:none}
.journey-drawer #logout svg{width:16px;height:16px}
.journey-drawer #logout:hover{color:#ecc2ac;background:#7b412318;border-color:#9b674652}
.journey-drawer .drawer-change-character{display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;min-height:40px;padding:7px 9px;margin:0;border:1px solid #927b4f66;border-radius:3px;background:linear-gradient(#33372b66,#10171a);box-shadow:inset 0 1px #cfb87826;color:#e1cfa7;font:12px/1.3 Arial,sans-serif}
.journey-drawer .drawer-change-character svg{width:17px;height:17px;flex:none}
.journey-drawer .drawer-change-character:hover{background:#7d66362b;border-color:#b99b61}
.journey-drawer button:focus-visible{outline:2px solid #ddbc72;outline-offset:-3px}
@media(max-height:650px){.journey-drawer .drawer-title{padding-block:6px}.journey-drawer .drawer-title>strong{width:205px}.journey-drawer .drawer-location{margin-top:8px;min-height:58px;padding-block:7px}.journey-drawer .drawer-footer{padding-block:8px}}
@media(prefers-reduced-motion:reduce){.journey-drawer{transition:none}}
