/* The game frame owns layout. Older skins supply artwork, not screen geometry.
   Tavern materials below change surfaces without changing panel geometry. */
body.focus-ui {
  --ui-bg:#211f1b; --ui-panel:#2d2923; --ui-line:#5b4b36;
  --ui-text:#f1efdf; --ui-muted:#c1d0c2; --ui-gold:#f2cf83;
  margin:0;padding:8px;box-sizing:border-box;width:100%;max-width:none;
  height:100dvh;min-height:0;display:flex;flex-direction:column;overflow:hidden;
  color:var(--ui-text);background:#211f1b;font:15px/1.45 "Segoe UI",Arial,sans-serif;
}
.focus-ui *, .focus-ui *::before, .focus-ui *::after {box-sizing:border-box;}
.focus-ui [hidden] {display:none!important;}
.focus-ui button,.focus-ui select,.focus-ui input {font:inherit;}
.focus-ui button {min-height:42px;padding:8px 12px;border-radius:8px;line-height:1.25;}
.focus-ui button:focus-visible,.focus-ui summary:focus-visible {outline:3px solid #f2cf83;outline-offset:2px;}
.focus-ui button:disabled {opacity:.5;}
.focus-ui header {height:60px;min-height:60px;width:100%;padding:0 18px;gap:16px;border:1px solid var(--ui-line);border-radius:12px 12px 0 0;background:var(--ui-bg);}
.focus-ui .brand {font-size:20px;letter-spacing:1px;white-space:nowrap;}
.focus-ui header .server {margin-left:auto;}
.focus-ui .server #connection,.focus-ui .server .alpha {display:none;}
.focus-ui .client-bar {height:auto;min-height:0;padding:0 0 0 18px;background:none;border:0;border-left:1px solid var(--ui-line);font-size:15px;display:block;}
.focus-ui .client-bar small,.focus-ui .client-bar>span:last-child {display:none;}
.focus-ui .sound-menu>summary {font-size:14px;min-height:42px;padding:10px 12px;}
.focus-ui .sound-menu .audio-toolbar {top:48px;width:min(340px,calc(100vw - 24px));font-size:14px;}
.focus-ui .audio-toolbar #musicTrack {font-size:14px;}
.focus-ui .game-shell {max-width:none;width:100%;flex:1;min-height:0;height:auto;display:flex;flex-direction:column;border:1px solid var(--ui-line);border-top:0;border-radius:0 0 12px 12px;overflow:hidden;}
.focus-ui .play-layout {flex:1;min-height:0;height:100%;display:grid;grid-template-columns:minmax(0,1fr) 366px;grid-template-rows:minmax(0,1fr);gap:0;}
.focus-ui .world-panel {grid-column:1;grid-row:1;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden;}
.focus-ui .canvas-wrap {flex:1;min-height:100px;height:auto;position:relative;}
.focus-ui #world {display:block;width:100%;height:100%;}
.focus-ui .location,.focus-ui .map-footer,.focus-ui .game-shell>footer {display:none;}
/* Clear the older mobile bottom anchor: it stretched an invisible tap blocker over the map. */
.focus-ui .camera-controls {top:12px;right:12px;bottom:auto;gap:5px;pointer-events:none;}
.focus-ui .camera-controls button {width:38px;min-width:38px;min-height:38px;padding:4px;font-size:22px;background:#2d2923e8;pointer-events:auto;}
.focus-ui .feedback-rail {position:relative;min-height:48px;flex-shrink:0;display:flex;align-items:center;gap:12px;padding:9px 18px;background:#2d2923;border-top:1px solid var(--ui-line);}
.focus-ui .feedback-rail {height:56px;min-height:56px;overflow:hidden;}
.focus-ui #toast,.focus-ui #hoverAction {display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.focus-ui .feedback-rail .coin-reward {flex-wrap:wrap;row-gap:2px;font-size:14px;}
.focus-ui #hoverAction {position:static;inset:auto;transform:none;box-shadow:none;background:none;border:0;padding:0;margin:0;font-size:14px;color:#c9d8c9;flex:1;white-space:normal;}
.focus-ui #toast {position:static;inset:auto;transform:none;display:flex;align-items:center;justify-content:flex-start;max-width:none;width:100%;padding:0;margin:0;background:none;border:0;border-radius:0;box-shadow:none;font-size:15px;text-align:left;z-index:2;pointer-events:none;}
.focus-ui .feedback-rail:has(#toast:not([hidden])) #hoverAction,.focus-ui .feedback-rail:has(.coin-reward) #toast,.focus-ui .feedback-rail:has(.coin-reward) #hoverAction {display:none;}
.focus-ui .coin-reward {position:static;inset:auto!important;transform:none;animation:none;width:100%;max-width:100%;display:flex;justify-content:flex-start;align-items:center;gap:5px 16px;background:none;border:0;border-radius:0;box-shadow:none;font-size:15px;padding:0;margin:0;color:#ffdf92;pointer-events:none;}
.focus-ui .play-dock {flex-shrink:0;background:#2d2923;padding:16px 18px;border-top:1px solid var(--ui-line);}
.focus-ui #tutorialGuide {position:static;inset:auto;transform:none;max-width:none;width:100%;padding:0 0 14px;margin:0 0 12px;border:0;border-bottom:1px solid #5b4b36;border-radius:0;box-shadow:none;background:none;display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,210px);column-gap:20px;row-gap:3px;}
.focus-ui #journeyChapter {grid-column:1;font-size:12px;letter-spacing:.7px;color:var(--ui-gold);line-height:1.25;}
.focus-ui #tutorialTitle {grid-column:1;font-size:19px;line-height:1.3;margin:2px 0;color:var(--ui-text);}
.focus-ui #tutorialText {display:block;grid-column:1;font-size:14px;line-height:1.45;margin:4px 0;color:var(--ui-muted);max-width:64ch;}
.focus-ui #journeyProgress {grid-column:1;font-size:12px;color:#c3d3b8;margin:3px 0 0;}
.focus-ui #tutorialFocus {grid-column:2;grid-row:1/5;align-self:center;margin:0;min-height:48px;padding:10px 12px;font-size:15px;font-weight:600;color:#211f1b;background:#e8c57b;border:1px solid #ffe0a0;box-shadow:0 2px 0 #0002;}
.focus-ui #tutorialFocus:hover {background:#f5dca1;}
.focus-ui #journeyMeter {grid-column:1/-1;height:3px;margin:7px 0 0;}
.focus-ui .player-strip {display:flex;flex-wrap:wrap;align-items:center;justify-content:center;min-height:0;padding:0;gap:16px;border:0;background:none;overflow:visible;}
.focus-ui .player-vitals {flex:0 1 220px;min-width:140px;max-width:220px;}
.focus-ui #healthStatus {margin:0 0 5px;font-size:15px;font-weight:600;color:#e6efdc;display:block;max-width:none;width:auto;white-space:nowrap;}
.focus-ui #healthMeter {display:block;width:100%;height:9px;accent-color:#95c98c;border:0;border-radius:8px;overflow:hidden;background:#10281d;}
.focus-ui #healthMeter::-webkit-progress-bar {background:#10281d;}
.focus-ui #healthMeter::-webkit-progress-value {background:#95c98c;}
.focus-ui #healthMeter.low-health::-webkit-progress-value {background:#ed8d73;}
.focus-ui .player-strip>.task {display:flex;flex:0 1 auto;flex-wrap:wrap;gap:8px;align-items:center;padding:0;margin:0;border:0;}
.focus-ui .player-strip .task button {min-height:42px;margin:0;font-size:14px;flex:none;}
.focus-ui #openAdventure {display:none;}
.focus-ui #combatStatus {display:block;margin:0 0 12px;padding:8px 12px;font-size:15px;color:#ffd5aa;background:#493c2c;border-radius:6px;}
.focus-ui.in-combat #tutorialGuide {display:none!important;}
.focus-ui.connection-lost header .server {display:flex;position:fixed;top:78px;left:50%;transform:translateX(-50%);padding:10px 16px;z-index:60;background:#603b2c;border:1px solid #f0b283;border-radius:8px;}
.focus-ui.connection-lost .server #connection {display:block;font-size:15px;color:#fff0d6;}
.focus-ui.connection-lost .server i {background:#edb779;}
.focus-ui .player-strip .currency-card {display:flex;gap:8px;padding:0;margin:0 0 0 12px;border:0;background:none;}
.focus-ui .player-strip .currency-card img {width:32px;height:32px;}
.focus-ui .player-strip .currency-card strong {display:block;font-size:11px;letter-spacing:.5px;color:#d6c6a1;}
.focus-ui .player-strip .currency-card small {display:none;}
.focus-ui #currencyBalance {font-size:18px;line-height:1.2;color:#f9dea5;}
.focus-ui aside {position:static;display:flex;flex-direction:column;grid-column:2;grid-row:1;min-height:0;min-width:0;width:auto;padding:0;background:#211f1b;border:0;border-left:1px solid var(--ui-line);overflow:hidden;}
.focus-ui aside>.map-card {padding:12px 14px 10px;flex-shrink:0;border-bottom:1px solid var(--ui-line);background:#2d2923;}
.focus-ui .map-card .section-heading {height:36px;display:flex;align-items:center;gap:8px;margin:0 0 7px;font-size:15px;}
.focus-ui .map-card .section-heading>span:last-of-type {display:none;}
.focus-ui #mapZone {font-size:15px;}
.focus-ui #openTravel {margin-left:auto;min-height:34px;padding:6px 12px;font-size:14px;color:#f5d799;}
.focus-ui #minimap {width:100%;height:112px;min-height:0;border:1px solid #5b4b36;border-radius:7px;object-fit:contain;background:#40382d;}
.focus-ui .map-key {display:none;}
.focus-ui #adventure {flex:1;min-height:0;display:flex;flex-direction:column;padding:12px 14px 0;margin:0;border:0;overflow:hidden;}
.focus-ui #adventure>.section-heading {display:none;}
.focus-ui #adventureTabs {flex-shrink:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;padding:0 0 12px;margin:0;border-bottom:1px solid var(--ui-line);}
.focus-ui #adventureTabs button {min-height:48px;margin:0;padding:6px 2px;font-size:14px;line-height:1.2;background:#2d2923;color:#d5e0cf;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:1px solid #40382d;}
.focus-ui #adventureTabs .game-icon {width:21px;height:21px;margin:0;}
.focus-ui #adventureTabs button[aria-pressed=true] {background:#40382d;border-color:#d1ba7e;color:#ffebba;box-shadow:inset 0 -3px #e8c57b;}
.focus-ui #adventureTabs button:nth-child(2) {order:1;}
.focus-ui #adventureTabs button:nth-child(1) {order:2;}
.focus-ui #adventureTabs button:nth-child(3) {order:3;}
.focus-ui #adventureTabs button:nth-child(6) {order:4;}
.focus-ui #adventureTabs button:nth-child(4) {order:5;}
.focus-ui #adventureTabs button:nth-child(5) {order:6;}
.focus-ui #adventureTabs button:nth-child(7) {order:7;}
.focus-ui #adventureTabs button:nth-child(n+4):not(:nth-child(6)) {min-height:36px;flex-direction:row;font-size:13px;}
.focus-ui #adventureTabs button:nth-child(n+4):not(:nth-child(6)) .game-icon {width:16px;height:16px;}
.focus-ui .skill-tab-earned {outline:2px solid #b9d897;outline-offset:-2px;}
.focus-ui #adventureBody {flex:1;min-height:0;overflow:hidden;padding:12px 0 4px;font-size:15px;line-height:1.5;}
.focus-ui #adventureNotice {display:none;}
.focus-ui #adventureBody p {font-size:14px;line-height:1.5;margin:7px 0 12px;color:#d1deca;}
.focus-ui #adventureBody button {font-size:14px;}
.focus-ui #adventureBody h3 {font-size:18px;}
.focus-ui #adventureBody .stat-cell {font-size:14px;min-height:66px;padding:9px 8px;line-height:1.3;color:#eceddc;}
.focus-ui .stat-cell .game-icon {width:22px!important;height:22px!important;}
.focus-ui .skill-xp-meter span {display:block;font-size:12px;line-height:1.4;color:#c2d6b9;margin-top:3px;}
.focus-ui .skill-xp-meter progress {height:5px;margin-top:6px;}
.focus-ui .stats-pair {gap:8px;margin-bottom:8px;}
.focus-ui .inventory-heading strong {font:20px Georgia;}
.focus-ui .inventory-heading span,.focus-ui .inventory-hint {font-size:14px;line-height:1.5;}
.focus-ui .inventory-row {grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:8px;}
.focus-ui .inventory-slot {min-height:92px;padding:10px 6px;margin:0;}
.focus-ui .inventory-item-name {font-size:14px;}
.focus-ui .inventory-quantity,.focus-ui .inventory-slot small {font-size:12px;}
.focus-ui .inventory-empty {font-size:15px;padding:18px 12px;}
.focus-ui .inventory-ground-item {font-size:14px;}
.focus-ui .page-controls {flex-shrink:0;min-height:44px;height:auto;padding:6px 0;margin:0;border-top:1px solid var(--ui-line);font-size:14px;}
.focus-ui .page-controls button {min-height:34px;padding:6px 10px;font-size:13px;}
.focus-ui .quick-tools {display:flex;gap:8px;padding:8px 14px;border-top:1px solid var(--ui-line);flex-shrink:0;}
.focus-ui .quick-tools button {flex:1;min-height:36px;font-size:13px;}
.focus-ui #liveRanking {display:flex;align-items:center;gap:8px;margin:0;padding:8px 14px;border:0;border-top:1px solid var(--ui-line);border-radius:0;background:#2d2923;min-height:38px;flex-shrink:0;}
.focus-ui .live-rank-heading {font-size:11px;letter-spacing:.3px;display:flex;gap:7px;align-items:center;}
.focus-ui #liveRankPlace {font-size:14px;}
.focus-ui #liveRankTitle {font-size:13px;margin-left:auto;}
.focus-ui #liveRankTotal {display:none;}
.focus-ui .mobile-game-nav,.focus-ui .close-character,.focus-ui #mobileJourney {display:none;}
.focus-ui dialog {font-size:16px;padding:22px!important;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);}
.focus-ui dialog p,.focus-ui dialog small,.focus-ui dialog select,.focus-ui dialog .unlock-row,.focus-ui dialog .skill-detail {font-size:15px;line-height:1.5;}
.focus-ui dialog h3 {font-size:18px;}
.focus-ui dialog .unlock-row {padding:12px 0;}
.focus-ui dialog .unlock-row small,.focus-ui dialog .unlock-row div {font-size:14px;line-height:1.45;}
.focus-ui dialog .skill-popup-header {padding:0 0 14px;}
.focus-ui dialog .skill-popup-header h2 {font-size:24px;}
.focus-ui dialog .skill-popup-header button {min-width:42px;min-height:42px;}
.focus-ui dialog#townTools,.focus-ui dialog#skillPopup,.focus-ui dialog#workshop {width:620px;height:min(740px,calc(100dvh - 32px));}
.focus-ui .travel-destination {width:100%;display:grid;grid-template-columns:26px minmax(0,1fr);gap:2px 10px;text-align:left;margin:7px 0;padding:12px;min-height:76px;}
.focus-ui .travel-destination .game-icon {grid-column:1;grid-row:1/3;width:24px;height:24px;align-self:center;}
.focus-ui .travel-destination strong {grid-column:2;display:block;font-size:18px;color:#f0d89f;}
.focus-ui .travel-destination span {grid-column:2;display:block;margin-top:4px;font-size:14px;line-height:1.4;color:#cad7c2;}
.focus-ui #townToolsBody .task:first-of-type .section-heading {display:none;}
.focus-ui .recipe h3 {font-size:19px;}
.focus-ui #tutorialGuide.quest-summary #tutorialText {display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.focus-ui #townServices {width:620px;height:min(740px,calc(100dvh - 32px));overflow:hidden;}
.focus-ui #townServices[open] {display:flex;flex-direction:column;}
.focus-ui .town-services-link {flex-shrink:0;margin-top:10px;background:transparent;}
.focus-ui .recipe p {font-size:15px;}
.focus-ui dialog#chatDrawer {width:600px;height:min(560px,calc(100dvh - 24px));overflow:hidden;}
.focus-ui #chatDrawer[open] {display:flex;flex-direction:column;}
.focus-ui #chatDrawer .chat-panel {display:flex;flex-direction:column;flex:1;min-height:0;grid-area:auto;background:none;border:0;}
.focus-ui #chatDrawer .chat-heading {min-height:44px;height:auto;gap:8px;}
.focus-ui #chatDrawer .chat-heading>span {display:none;}
.focus-ui #chatDrawer #messages {flex:1;min-height:0;font-size:15px;line-height:1.6;padding:12px 0;overflow-y:auto;}
.focus-ui #chatDrawer #chatForm {height:46px;min-height:46px;gap:8px;}
.focus-ui #chatDrawer #chatForm input {font-size:16px;min-width:0;}
.focus-ui .attention-popup {left:50%;right:auto;transform:translateX(-50%);bottom:14px;width:min(440px,calc(100% - 24px));font-size:15px;}
.focus-ui .attention-popup p {font-size:15px;}
.focus-ui .attention-popup strong {font-size:18px;}
.focus-ui .level-popup {font-size:16px;top:20px;}
.focus-ui .action-menu[role=menu] button {min-height:44px;font-size:15px;}
@media(min-width:1001px) and (max-height:820px){
  .focus-ui #minimap {height:82px;}
  .focus-ui .map-card .section-heading {margin-bottom:5px;}
  .focus-ui .play-dock {padding:12px 16px;}
  .focus-ui #tutorialGuide {padding-bottom:10px;margin-bottom:10px;}
  .focus-ui #tutorialText {font-size:14px;}
  .focus-ui #journeyProgress {font-size:12px;}
}
@media(max-width:1000px){
  body.focus-ui {padding:0;width:100%;}
  .focus-ui header {height:52px;min-height:52px;border-radius:0;padding:0 12px;gap:10px;}
  .focus-ui .brand {font-size:16px;letter-spacing:.3px;}
  .focus-ui .client-bar {font-size:14px;border:0;padding:0;}
  .focus-ui .server {display:none;}
  .focus-ui .sound-menu {margin-left:auto;}
  .focus-ui .sound-menu>summary {font-size:13px;padding:9px;}
  .focus-ui header>button {font-size:13px;min-height:36px;padding:7px 10px;}
  .focus-ui .game-shell {border-radius:0;}
  .focus-ui .play-layout {grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);}
  .focus-ui aside {display:none;}
  .focus-ui.mobile-panel-open aside {display:flex;position:fixed;inset:52px 0 0 auto;width:min(430px,100%);height:calc(100dvh - 52px);z-index:40;border:1px solid var(--ui-line);box-shadow:-20px 0 70px #0008;}
  .focus-ui .mobile-game-nav {display:flex;gap:8px;margin-top:10px;}
  .focus-ui .mobile-game-nav button {display:block;flex:1;font-size:14px;min-height:42px;}
  .focus-ui.mobile-panel-open .close-character {display:block;align-self:flex-end;margin:10px 14px 0;font-size:14px;}
  .focus-ui.mobile-panel-open #tutorialGuide {display:grid;}
  .focus-ui.mobile-panel-open #mobileJourney {display:none;}
  .focus-ui #minimap {height:80px;}
  .focus-ui #tutorialGuide {column-gap:16px;}
}
@media(max-width:540px){
  .focus-ui header {height:72px;min-height:72px;flex-wrap:wrap;gap:0 8px;align-content:center;padding:8px 12px;}
  .focus-ui .brand {font-size:17px;flex:1;}
  .focus-ui .client-bar {order:4;flex-basis:100%;font-size:13px;color:#cfdbc5;margin-top:2px;}
  .focus-ui .sound-menu>summary {min-height:32px;padding:7px 9px;}
  .focus-ui header>button {min-height:32px;}
  .focus-ui .play-dock {padding:10px 12px;}
  .focus-ui #tutorialGuide {grid-template-columns:minmax(0,1fr) 118px;gap:2px 10px;padding-bottom:10px;margin-bottom:10px;}
  .focus-ui #tutorialTitle {font-size:16px;}
  .focus-ui #journeyChapter {font-size:11px;}
  .focus-ui #tutorialText,.focus-ui #tutorialGuide.quest-summary #tutorialText {display:none;}
  .focus-ui #tutorialFocus {font-size:14px;min-height:44px;grid-row:1/5;padding:8px;}
  .focus-ui #journeyProgress {font-size:12px;}
  .focus-ui #journeyMeter {margin-top:5px;}
  .focus-ui .player-strip {gap:10px;flex-wrap:nowrap;}
  .focus-ui .player-vitals {flex:1;min-width:94px;max-width:none;}
  .focus-ui #healthStatus {font-size:14px;}
  .focus-ui .player-strip>.task {flex:0 1 auto;gap:6px;}
  .focus-ui .player-strip .task button {font-size:13px;min-height:40px;padding:7px 9px;}
  .focus-ui .player-strip .currency-card img {width:23px;height:23px;}
  .focus-ui .player-strip .currency-card {gap:4px;margin:0;}
  .focus-ui .player-strip .currency-card strong {font-size:9px;}
  .focus-ui #currencyBalance {font-size:16px;}
  .focus-ui .feedback-rail {padding:8px 12px;min-height:44px;}
  .focus-ui #hoverAction,.focus-ui #toast,.focus-ui .coin-reward {font-size:13px;line-height:1.35;}
  .focus-ui #toast,.focus-ui .coin-reward {padding:0;}
  .focus-ui .camera-controls {top:8px;right:8px;}
  .focus-ui.mobile-panel-open aside {inset:72px 0 0;height:calc(100dvh - 72px);width:100%;}
  .focus-ui.mobile-panel-open aside>.map-card {display:none;}
  .focus-ui #adventure {padding:10px 12px 0;}
  .focus-ui #liveRanking {min-height:32px;}
  .focus-ui .quick-tools {padding:6px 12px;}
  .focus-ui dialog {padding:16px!important;}
  .focus-ui dialog p,.focus-ui dialog small {font-size:14px;}
  .focus-ui .journey-chapters {margin:12px 0;}
  .focus-ui .journey-chapters li {padding-bottom:10px;}
  .focus-ui #combatStatus {font-size:13px;margin-bottom:8px;padding:6px 8px;}
  .focus-ui .inventory-row {grid-template-columns:repeat(3,minmax(0,1fr));}
  .focus-ui .inventory-item-name {font-size:12px;}
}
@media(max-width:540px) and (max-height:650px){
  .focus-ui.mobile-panel-open .close-character {min-height:34px;margin-top:6px;}
  .focus-ui #adventureTabs {padding-bottom:8px;gap:4px;}
  .focus-ui #adventureTabs button {min-height:44px;padding:4px 2px;font-size:13px;}
  .focus-ui #adventureTabs button:nth-child(n+4):not(:nth-child(6)) {min-height:32px;}
  .focus-ui .inventory-hint {display:none;}
  .focus-ui .inventory-slot {min-height:90px;}
  .focus-ui .quick-tools {padding:5px 12px;}
  .focus-ui .quick-tools button {min-height:32px;}
  .focus-ui #liveRanking {min-height:30px;padding:5px 12px;}
}
@media(max-height:500px) and (max-width:1000px){
  .focus-ui header {height:42px;min-height:42px;flex-wrap:nowrap;}
  .focus-ui .client-bar {order:0;flex-basis:auto;}
  .focus-ui #tutorialGuide {padding:0 0 6px;margin-bottom:6px;}
  .focus-ui #tutorialText,.focus-ui #journeyProgress,.focus-ui #journeyMeter {display:none;}
  .focus-ui .play-dock {padding:7px 12px;}
  .focus-ui .mobile-game-nav {position:absolute;top:51px;left:8px;margin:0;z-index:10;}
  .focus-ui .mobile-game-nav button {min-height:34px;font-size:13px;}
  .focus-ui.mobile-panel-open aside {inset:42px 0 0 auto;height:calc(100dvh - 42px);width:400px;}
  .focus-ui.mobile-panel-open aside>.map-card {display:none;}
}

/* Sloppy's travelling tavern: tactile edges, quiet surfaces behind readable text. */
body.focus-ui {
  --brass:#ad864e;--region-glow:#6b9968;--region-wood:#493725;
  --wood:repeating-linear-gradient(2deg,transparent 0 7px,#00000013 8px 9px,transparent 10px 19px),linear-gradient(100deg,#231d18,var(--region-wood) 48%,#282019);
  --felt:radial-gradient(ellipse at 50% 0,#40382d60,transparent 75%),repeating-linear-gradient(45deg,#ffffff02 0 1px,transparent 1px 4px),#2d2923;
  --paper:radial-gradient(ellipse at 12% 0,#fff4c7a0,transparent 65%),repeating-linear-gradient(8deg,#6b431a04 0 1px,transparent 1px 5px),linear-gradient(100deg,#d9bb7e,#ecd6a5 45%,#d9bd85);
  background:radial-gradient(ellipse at 50% 0,#2d2923 0,#211f1b 65%);
}
body.focus-ui[data-region=quarry] {--region-glow:#ca8b5e;--region-wood:#4d3831;--felt:radial-gradient(ellipse at 50% 0,#86503740,transparent 75%),#211f1b;}
body.focus-ui[data-region=frontier] {--region-glow:#93ad65;--region-wood:#2d2923;}
.focus-ui header {position:relative;background:var(--wood);border-color:var(--brass);box-shadow:inset 0 2px #f1d79826,inset 0 -3px #15141280;}
.focus-ui header::before,.focus-ui header::after {content:'';position:absolute;top:8px;width:5px;height:5px;border-radius:50%;background:#c6a96a;box-shadow:0 1px 2px #000;pointer-events:none;}
.focus-ui header::before {left:7px;}.focus-ui header::after {right:7px;}
.focus-ui .brand {color:#ffe1a0;text-shadow:0 2px 0 #140f0a;}
.focus-ui .client-bar {color:#e4c78d;border-color:#aa845c66;}
.focus-ui .game-shell {border-color:#957248;box-shadow:0 12px 50px #0006;}
.focus-ui button,.focus-ui .sound-menu>summary {border-color:#8b7450;background:linear-gradient(#40382d,#2d2923);box-shadow:inset 0 1px #ead5a326,0 2px 0 #15141280;color:#f3e4bb;transition:background-color .12s,border-color .12s,box-shadow .12s;}
.focus-ui button:not(:disabled):hover,.focus-ui .sound-menu>summary:hover {border-color:#e2bb72;box-shadow:inset 0 1px #ead5a345,0 2px 0 #15141280,0 0 12px #d0ac5820;}
.focus-ui button:not(:disabled):active {box-shadow:inset 0 2px 5px #0007;translate:0 1px;}
.focus-ui aside {background:var(--felt);border-left:3px solid #6c573b;box-shadow:inset 1px 0 #c8a46b66;}
.focus-ui aside>.map-card {background:var(--wood);border-color:#9c7d4c;}
.focus-ui .map-card .section-heading {color:#f8dba0;font-family:Georgia,serif;}
.focus-ui #minimap {border:2px solid #b8955c;box-shadow:0 2px 7px #0007,inset 0 0 0 2px #302d22;border-radius:5px;}
.focus-ui #adventureTabs {border-color:#aa8c5559;}
.focus-ui #adventureTabs button {background:linear-gradient(#514636,#342f25);border-color:#7f704d;border-radius:7px 7px 4px 4px;color:#e9dcc0;box-shadow:inset 0 1px #e7d39c25,0 2px 2px #0005;}
.focus-ui #adventureTabs button[aria-pressed=true] {background:linear-gradient(#dfbf79,#b58e4d);border-color:#f2d49c;color:#2d2a1c;box-shadow:inset 0 1px #fff0c2,inset 0 -3px #795b34,0 2px 5px #0005;font-weight:650;}
.focus-ui #adventureTabs .game-icon {filter:drop-shadow(0 1px 1px #0005);}
.focus-ui #adventureBody {background:transparent;}
.focus-ui .inventory-heading strong {color:#f2d194;}
.focus-ui .inventory-heading progress {accent-color:#d4b16b;}
.focus-ui .inventory-heading progress::-webkit-progress-value {background:linear-gradient(90deg,#938051,#e0c17d);}
.focus-ui #adventureBody .inventory-slot {background:radial-gradient(ellipse at 50% 30%,#5b4b3645,transparent 70%),#211f1b;border-color:#756646;box-shadow:inset 0 2px 7px #15141299,inset 0 -1px #e0c38125,0 1px #edd39512;border-radius:7px;}
.focus-ui #adventureBody .inventory-slot:hover {background:radial-gradient(ellipse at 50% 30%,#5b4b3650,transparent 80%),#2d2923;border-color:#dcb978;}
.focus-ui #adventureBody .inventory-slot.is-equipped {border-color:#c8ac6e;box-shadow:inset 0 0 0 2px #ac8b4645,inset 0 2px 7px #15141299;}
.focus-ui .inventory-quantity {background:#b89a5c;color:#211f1b;border:1px solid #e9cc90;border-radius:3px;font-weight:700;box-shadow:0 1px 3px #0008;}
.focus-ui .inventory-slot .game-icon {filter:drop-shadow(0 3px 2px #0009);}
.focus-ui .inventory-item-name {color:#f4e8cc;}
.focus-ui .inventory-empty {background:radial-gradient(ellipse at center,#8d824f18,transparent 70%);border-color:#9b855480;}
.focus-ui .inventory-empty>.game-icon {display:block;width:58px;height:58px;margin:0 auto 10px;filter:drop-shadow(0 3px 2px #0006);}
.focus-ui .inventory-empty strong {display:block;font:20px Georgia,serif;color:#f0d29a;margin-bottom:8px;}
.focus-ui .inventory-empty span {display:block;font-size:14px;}
.focus-ui .feedback-rail {background:var(--wood);border-color:#94734b;box-shadow:inset 0 1px #e0c78a20;}
.focus-ui #hoverAction {color:#e3d3b4;}
.focus-ui .coin-reward {animation:tavern-reward .35s ease-out;}
.focus-ui .play-dock {background:var(--wood);border-color:#a18753;}
.focus-ui #tutorialGuide {position:relative;padding:12px 14px 12px 108px;margin-bottom:12px;min-height:126px;background:var(--paper);border:1px solid #b18a4e;border-radius:4px 9px 5px 7px;box-shadow:0 3px 6px #0005,inset 0 0 0 3px #fff0bb35;column-gap:16px;}
.focus-ui #tutorialTitle {color:#332817;font-family:Georgia,serif;font-size:21px;text-shadow:0 1px #fff4d280;}
.focus-ui #journeyChapter {color:#785329;font-weight:700;letter-spacing:1px;}
.focus-ui #tutorialText,.focus-ui #journeyProgress {color:#56452b;}
.focus-ui #tutorialFocus {background:linear-gradient(#5b4b36,#2d2923);border:1px solid #2d2923;color:#fff1c6;box-shadow:inset 0 1px #d6dea651,0 2px 0 #211f1b;}
.focus-ui #tutorialFocus:hover {background:linear-gradient(#5b4b36,#40382d);}
.focus-ui #journeyMeter {accent-color:#667c43;}
.focus-ui .sloppy-guide {position:absolute;left:12px;top:9px;width:82px;margin:0;text-align:center;pointer-events:none;}
.focus-ui .sloppy-guide img {display:block;width:72px;height:81px;margin:0 auto;filter:drop-shadow(0 2px 1px #5e40274d);}
.focus-ui .sloppy-guide figcaption {font:bold italic 16px Georgia,serif;color:#654627;}
.focus-ui .guide-aside {display:none;}
.focus-ui .player-vitals {filter:drop-shadow(0 1px 1px #0005);}
.focus-ui #healthMeter {border:1px solid #9c865c;height:10px;box-shadow:0 1px 2px #0008;}
.focus-ui #healthMeter::-webkit-progress-value {background:linear-gradient(#c1df93,#78a568);}
.focus-ui #healthMeter.low-health::-webkit-progress-value {background:linear-gradient(#f3b082,#d47155);}
.focus-ui .currency-card img {filter:drop-shadow(0 2px 3px #100d09);}
.focus-ui .quick-tools,.focus-ui #liveRanking {background:var(--wood);border-color:#8e754e88;}
.focus-ui .page-controls {border-color:#a78a5150;}
.focus-ui .stat-cell {background:linear-gradient(120deg,#2d2923,#2d2923);border-color:#7c7750;border-radius:6px;box-shadow:inset 0 1px #e7d39c14;}
.focus-ui .skill-xp-meter progress::-webkit-progress-value {background:linear-gradient(90deg,#a18548,#e9c67b);transition:width .4s ease-out;}
.focus-ui dialog {border:2px solid #b3945a;background:var(--felt);box-shadow:0 20px 80px #000b,inset 0 0 0 4px #dac18a15;}
.focus-ui dialog .skill-popup-header {border-bottom-color:#ae8d5359;}
.focus-ui dialog h2,.focus-ui dialog h3 {color:#efd29a;font-family:Georgia,serif;}
.focus-ui dialog::backdrop {background:#151412ba;backdrop-filter:blur(3px);}
.focus-ui .travel-destination {background:linear-gradient(100deg,#40382d,#2d2923);border-color:#8d794f;box-shadow:inset 3px 0 var(--region-glow),inset 0 1px #e9d69b25;}
.focus-ui .travel-destination:disabled {opacity:.7;box-shadow:inset 3px 0 #d5b36c;}
@keyframes tavern-reward {from {opacity:0;translate:0 4px;}to {opacity:1;translate:0 0;}}
@media(min-width:1250px) and (min-height:821px){
  .focus-ui #tutorialGuide {padding-left:78px;}
  .focus-ui .sloppy-guide {width:56px;}
}
@media(max-width:1000px){
  .focus-ui.mobile-panel-open aside {border-color:#a18753;}
  .focus-ui #tutorialGuide {padding-left:94px;min-height:118px;}
  .focus-ui .sloppy-guide {left:8px;width:74px;}
}
@media(max-width:540px){
  .focus-ui #tutorialGuide {padding:9px 8px 9px 52px;min-height:84px;grid-template-columns:minmax(0,1fr) 108px;gap:3px 8px;margin-bottom:10px;}
  .focus-ui #tutorialTitle {font-size:16px;}
  .focus-ui #journeyChapter {font-size:9px;letter-spacing:.3px;}
  .focus-ui #journeyProgress {font-size:11px;}
  .focus-ui #tutorialFocus {font-size:13px;padding:7px;}
  .focus-ui .sloppy-guide {left:4px;top:12px;width:43px;}
  .focus-ui .sloppy-guide img {width:43px;height:49px;}
  .focus-ui .sloppy-guide figcaption {font-size:11px;}
  .focus-ui header::before,.focus-ui header::after {display:none;}
}
@media(max-height:500px) and (max-width:1000px){
  .focus-ui #tutorialGuide {min-height:62px;padding:6px 12px 6px 67px;margin-bottom:6px;}
  .focus-ui .sloppy-guide {top:4px;left:8px;width:45px;}
  .focus-ui .sloppy-guide img {width:45px;height:50px;}
  .focus-ui .sloppy-guide figcaption {display:none;}
}
@media(prefers-reduced-motion:reduce){
  .focus-ui button,.focus-ui .skill-xp-meter progress::-webkit-progress-value {transition:none;}
  .focus-ui .coin-reward {animation:none;}
}
/* Phone guidance remains visible; notifications never shift the tappable world. */
@media(max-width:1000px){
  .focus-ui.mobile-panel-open #mobileJourney:not([hidden]) {display:block;flex-shrink:0;margin:8px 12px 0;min-height:42px;font-size:14px;background:#d7b774;color:#302d20;border-color:#f2d49c;}
}
@media(max-width:540px){
  .focus-ui .feedback-rail {height:56px;min-height:56px;}
  .focus-ui #tutorialText,.focus-ui #tutorialGuide.quest-summary #tutorialText {display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:12px;line-height:1.35;margin:2px 0;}
  .focus-ui #tutorialGuide {grid-template-columns:minmax(0,1fr) 108px;}
}
@media(max-height:650px) and (max-width:540px){
  .focus-ui #tutorialText,.focus-ui #tutorialGuide.quest-summary #tutorialText {-webkit-line-clamp:1;}
}
.focus-ui .feedback-rail #toast,.focus-ui .feedback-rail #hoverAction {display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.focus-ui #starterForge {width:560px;height:min(630px,calc(100dvh - 24px));overflow:hidden;}
.focus-ui #starterForge[open] {display:flex;flex-direction:column;}
.focus-ui #starterForgeBody {flex:1;min-height:0;overflow:hidden;}
.focus-ui .forge-recipe strong {font-size:16px;}
.focus-ui .forge-recipe small {font-size:13px;line-height:1.4;}
.focus-ui #starterForge .forge-recipe {padding:10px;min-height:70px;}
.focus-ui .audio-toolbar button,.focus-ui .audio-toolbar label {font-size:14px;}
.focus-ui .audio-toolbar input[type=range] {height:32px;}
.focus-ui #groundLoot {display:flex;gap:8px;margin-bottom:10px;}
.focus-ui #groundLoot button {flex:1;min-width:0;min-height:46px;display:flex;align-items:center;text-align:left;font-size:13px;padding:7px 9px;border-color:#d3b05e;background:#40382d;}
.focus-ui #groundLoot .game-icon {width:22px;height:22px;flex-shrink:0;margin-right:6px;}

/* Screen geometry: fill the viewport, keep the world flexible, and reserve only
   the space the controls need. Never resize the canvas by stretching its image. */
html {width:100%;height:100%;overflow:hidden;}
body.focus-ui {padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));}
.focus-ui header {height:48px;min-height:48px;flex-shrink:0;}
.focus-ui .play-layout {grid-template-columns:minmax(0,1fr) clamp(304px,23vw,352px);}
.focus-ui .canvas-wrap {min-width:0;min-height:0;overflow:hidden;}
.focus-ui .feedback-rail {height:40px;min-height:40px;padding:5px 14px;}
.focus-ui .play-dock {padding:10px 12px;min-width:0;}
.focus-ui #tutorialGuide {padding:8px 10px 8px 72px;min-height:96px;margin:0 0 8px;grid-template-columns:minmax(0,1fr) 142px;gap:2px 10px;}
.focus-ui .sloppy-guide {left:8px;top:10px;width:52px;}
.focus-ui .sloppy-guide img {width:52px;height:59px;}
.focus-ui .sloppy-guide figcaption {font-size:12px;}
.focus-ui .guide-aside {display:none;}
.focus-ui #tutorialTitle {font-size:18px;margin:0;}
.focus-ui #journeyChapter {font-size:10px;letter-spacing:.4px;}
.focus-ui #tutorialText,.focus-ui #tutorialGuide.quest-summary #tutorialText {display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:13px;line-height:1.35;margin:2px 0;}
.focus-ui #journeyProgress {font-size:11px;margin:0;}
.focus-ui #journeyMeter {margin:3px 0 0;}
.focus-ui #tutorialFocus {font-size:14px;min-height:44px;padding:8px;}
@media(min-width:1200px){
  .focus-ui .play-dock {display:grid;grid-template-columns:minmax(0,1fr) 260px;align-items:center;gap:8px 14px;}
  .focus-ui #tutorialGuide {grid-column:1;grid-row:1;margin:0;}
  .focus-ui .player-strip {grid-column:2;grid-row:1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;}
  .focus-ui .player-vitals {grid-column:1/-1;max-width:none;min-width:0;}
  .focus-ui .player-strip>.task {grid-column:1;}
  .focus-ui .player-strip .currency-card {grid-column:2;margin:0;}
  .focus-ui #combatStatus {grid-column:1;grid-row:1;margin:0;}
  .focus-ui #groundLoot {grid-column:1/-1;margin:0;}
}
@media(max-width:1000px){
  body.focus-ui {padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);}
  .focus-ui header {height:52px;min-height:52px;}
  .focus-ui .play-layout {grid-template-columns:minmax(0,1fr);}
  .focus-ui .mobile-game-nav button {min-height:44px;}
  .focus-ui.mobile-panel-open aside {top:calc(52px + env(safe-area-inset-top));bottom:env(safe-area-inset-bottom);right:env(safe-area-inset-right);height:auto;}
}
@media(max-width:540px){
  .focus-ui header {height:64px;min-height:64px;padding:5px 10px;}
  .focus-ui .brand {font-size:16px;}
  .focus-ui .play-dock {padding:8px;}
  .focus-ui #tutorialGuide {padding:7px 8px 7px 48px;min-height:88px;grid-template-columns:minmax(0,1fr) 108px;gap:2px 7px;}
  .focus-ui #tutorialTitle {font-size:16px;}
  .focus-ui #tutorialText,.focus-ui #tutorialGuide.quest-summary #tutorialText {font-size:12px;}
  .focus-ui #tutorialFocus {font-size:13px;}
  .focus-ui #journeyChapter {font-size:9px;}
  .focus-ui .sloppy-guide {left:3px;top:10px;width:39px;}
  .focus-ui .sloppy-guide img {width:39px;height:45px;}
  .focus-ui .sloppy-guide figcaption {font-size:10px;}
  .focus-ui .feedback-rail {height:40px;min-height:40px;padding:4px 10px;}
  .focus-ui .mobile-game-nav {margin-top:8px;}
  .focus-ui.mobile-panel-open aside {top:calc(64px + env(safe-area-inset-top));left:env(safe-area-inset-left);width:auto;}
}
@media(max-width:1000px) and (max-height:500px) and (orientation:landscape){
  .focus-ui header {height:42px;min-height:42px;}
  .focus-ui .world-panel {display:grid;grid-template-columns:minmax(0,1fr) 260px;grid-template-rows:minmax(0,1fr) 36px;}
  .focus-ui .canvas-wrap {grid-column:1;grid-row:1;}
  .focus-ui .feedback-rail {grid-column:1;grid-row:2;height:36px;min-height:36px;padding:3px 8px;}
  .focus-ui .play-dock {grid-column:2;grid-row:1/-1;display:flex;flex-direction:column;padding:8px;border-top:0;border-left:1px solid #a18753;gap:8px;}
  .focus-ui #tutorialGuide {padding:8px;min-height:0;margin:0;grid-template-columns:minmax(0,1fr);}
  .focus-ui .sloppy-guide {display:none;}
  .focus-ui #tutorialTitle {font-size:16px;}
  .focus-ui #tutorialFocus {grid-column:1;grid-row:auto;margin-top:5px;min-height:44px;}
  .focus-ui #tutorialText,.focus-ui #tutorialGuide.quest-summary #tutorialText {display:-webkit-box;font-size:12px;}
  .focus-ui .player-strip {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;}
  .focus-ui .player-vitals {grid-column:1/-1;max-width:none;}
  .focus-ui .player-strip>.task {grid-column:1;}
  .focus-ui .player-strip .currency-card {grid-column:2;margin:0;}
  .focus-ui .mobile-game-nav {position:static;margin:auto 0 0;gap:6px;flex-shrink:0;}
  .focus-ui .mobile-game-nav button {font-size:13px;padding:6px;min-height:44px;}
  .focus-ui #combatStatus {margin:0;font-size:13px;padding:6px;}
  .focus-ui #groundLoot {margin:0;gap:4px;}
  .focus-ui #groundLoot button {font-size:12px;padding:4px;}
  .focus-ui.mobile-panel-open aside {top:calc(42px + env(safe-area-inset-top));}
  .focus-ui.mobile-panel-open aside {width:min(560px,100%);}
  .focus-ui.mobile-panel-open .close-character {min-height:32px;margin:4px 8px 0;font-size:13px;padding:5px 8px;}
  .focus-ui.mobile-panel-open #mobileJourney:not([hidden]) {position:absolute;top:4px;left:8px;right:130px;margin:0;min-height:32px;font-size:12px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;}
  .focus-ui #adventure {padding:6px 8px 0;}
  .focus-ui #adventureTabs {grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;padding-bottom:6px;}
  .focus-ui #adventureTabs button,.focus-ui #adventureTabs button:nth-child(n+4):not(:nth-child(6)) {min-height:46px;flex-direction:column;font-size:12px;padding:4px 1px;gap:2px;}
  .focus-ui #adventureTabs .game-icon {width:17px;height:17px;}
  .focus-ui #adventureBody {padding-top:6px;}
  .focus-ui .inventory-hint {display:none;}
  .focus-ui .quick-tools {padding:4px 8px;}
  .focus-ui .inventory-heading {padding:2px 0;gap:3px;}
  .focus-ui .inventory-heading strong {font-size:17px;}
  .focus-ui .inventory-heading progress {height:3px;}
  .focus-ui #adventureBody .inventory-slot {min-height:72px;padding:5px;gap:3px;margin:0;}
  .focus-ui .inventory-slot .game-icon {width:26px!important;height:26px!important;}
  .focus-ui .inventory-item-name {font-size:13px;}
  .focus-ui .quick-tools button {min-height:30px;padding:4px;font-size:12px;}
  .focus-ui #liveRanking {min-height:28px;padding:4px 8px;}
  .focus-ui .page-controls {min-height:36px;padding:3px 0;}
  .focus-ui .page-controls button {min-height:30px;padding:4px 8px;}
}
@media(max-width:380px){
  .focus-ui .brand {font-size:14px;letter-spacing:0;}
  .focus-ui .brand span {font-size:12px;}
  .focus-ui .sound-menu>summary {font-size:12px;padding:7px 5px;}
  .focus-ui header {gap:0 5px;padding:5px 8px;}
  .focus-ui header>button {font-size:12px;padding:7px;}
}
@media(max-width:540px) and (max-height:650px){
  .focus-ui #tutorialGuide {min-height:78px;}
  .focus-ui #journeyChapter,.focus-ui #journeyProgress {display:none;}
  .focus-ui #tutorialFocus {grid-row:1/4;}
}

/* World-first interface: edge-anchored tools, one active character panel. */
body.focus-ui.classic-ui {padding:0;background:#211f1b;font:14px/1.3 'Segoe UI',Arial,sans-serif;}
.classic-ui.focus-ui header {position:absolute;left:10px;top:8px;right:300px;width:auto;height:30px;min-height:30px;padding:0;gap:10px;border:0;border-radius:0;background:none;z-index:12;pointer-events:none;}
.classic-ui.focus-ui header>* {pointer-events:auto;}
.classic-ui.focus-ui .brand {font-size:15px;text-shadow:0 2px 2px #000;letter-spacing:.3px;}
.classic-ui.focus-ui .client-bar {font-size:12px;padding-left:10px;text-shadow:0 1px 2px #000;}
.classic-ui.focus-ui header>button,.classic-ui.focus-ui .sound-menu>summary {min-height:30px;padding:5px 8px;font-size:12px;}
.classic-ui.focus-ui .game-shell {border:0;border-radius:0;height:100%;}
.classic-ui.focus-ui .play-layout {position:relative;display:block;height:100%;}
.classic-ui.focus-ui .world-panel {position:absolute;inset:0;display:block;overflow:hidden;}
.classic-ui.focus-ui .canvas-wrap {position:absolute;inset:0;width:100%;height:100%;}
.classic-ui.focus-ui .camera-controls {top:46px;right:300px;}
.classic-ui.focus-ui .camera-controls button {width:30px;min-width:30px;min-height:30px;font-size:18px;border-radius:2px;}
.classic-ui.focus-ui button {border-radius:3px;box-shadow:none;}
.classic-ui.focus-ui aside {position:absolute;inset:8px 8px 8px auto;width:280px;display:flex;max-height:calc(100% - 16px);border:1px solid #918367;background:#211f1bed;z-index:15;box-shadow:0 3px 16px #0005;}
.classic-ui.focus-ui aside>.map-card {padding:6px 8px;background:#211f1b;border-bottom:1px solid #696454;}
.classic-ui.focus-ui .map-card .section-heading {height:26px;margin:0 0 5px;font:13px 'Segoe UI',sans-serif;}
.classic-ui.focus-ui #mapZone {font-size:13px;}
.classic-ui.focus-ui #openTravel {font-size:12px;min-height:26px;padding:3px 8px;}
.classic-ui.focus-ui #minimap {display:block;width:156px;height:156px;margin:0 auto;border-radius:0;border:1px solid #b6a885;}
.classic-ui.focus-ui #adventure {padding:7px 8px 0;}
.classic-ui.focus-ui #adventureTabs {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;padding:0 0 7px;}
.classic-ui.focus-ui #adventureTabs button {min-height:43px;padding:4px 1px;font-size:11px;gap:3px;border-radius:2px;background:#2d2923;border:1px solid #5b4b36;}
.classic-ui.focus-ui #adventureTabs button[aria-pressed=true] {background:#6c6544;border-color:#d9c68a;color:#fff0b9;box-shadow:inset 0 -2px #e5c778;}
.classic-ui.focus-ui #adventureTabs button[data-attention-panel=bank],.classic-ui.focus-ui #adventureTabs button[data-attention-panel=shop],.classic-ui.focus-ui #adventureTabs button[data-attention-panel=ranks] {display:none;}
.classic-ui.focus-ui #adventureTabs .game-icon {width:18px;height:18px;}
.classic-ui.focus-ui #adventureBody {padding:8px 0 0;font-size:13px;line-height:1.3;}
.classic-ui.focus-ui #adventureBody p {font-size:13px;margin:5px 0;}
.classic-ui.focus-ui #adventureBody h3 {font-size:15px;margin:5px 0;}
.classic-ui.focus-ui .inventory-heading {display:flex;flex-wrap:wrap;gap:4px;justify-content:space-between;padding:0 0 6px;}
.classic-ui.focus-ui .inventory-heading strong {font:14px 'Segoe UI',sans-serif;}
.classic-ui.focus-ui .inventory-heading span {font-size:12px;}
.classic-ui.focus-ui .inventory-heading progress {width:100%;height:3px;}
.classic-ui.focus-ui .inventory-hint {display:none;}
.classic-ui.focus-ui .inventory-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;}
.classic-ui.focus-ui #adventureBody .inventory-slot {position:relative;display:flex;align-items:center;justify-content:center;height:44px;min-height:44px;padding:3px;margin:0;border:1px solid #5b4b36;background:#40382d80;border-radius:0;}
.classic-ui.focus-ui .inventory-slot.empty-slot {background:#211f1b60;border-color:#40382d;}
.classic-ui.focus-ui .inventory-slot.is-equipped {background:#75693d;border-color:#d7bb67;}
.classic-ui.focus-ui .inventory-slot .game-icon {width:31px!important;height:31px!important;margin:0;}
.classic-ui.focus-ui .inventory-item-name,.classic-ui.focus-ui .inventory-slot small {display:none;}
.classic-ui.focus-ui .inventory-quantity {position:absolute;top:1px;left:3px;right:auto;padding:0;background:none;color:#ffdf70;font:11px 'Segoe UI',sans-serif;text-shadow:1px 1px #000;}
.classic-ui.focus-ui .stats-pair {gap:3px;margin:0 0 3px;}
.classic-ui.focus-ui #adventureBody .stat-cell {min-height:44px;padding:4px;font-size:12px;line-height:1.2;border-radius:1px;background:#40382d;}
.classic-ui.focus-ui .stat-cell .game-icon {width:16px!important;height:16px!important;}
.classic-ui.focus-ui .skill-xp-meter span {font-size:10px;margin:2px 0 0;}
.classic-ui.focus-ui .skill-xp-meter progress {height:3px;margin-top:3px;}
.classic-ui.focus-ui .quick-tools {padding:4px 8px;border-top:0;}
.classic-ui.focus-ui .quick-tools button {min-height:26px;font-size:12px;padding:3px;}
.classic-ui.focus-ui #liveRanking {min-height:27px;padding:4px 8px;background:#211f1b;font-size:11px;}
.classic-ui.focus-ui .page-controls {min-height:28px;padding:3px 0;font-size:11px;}
.classic-ui.focus-ui .page-controls button {min-height:24px;padding:3px 5px;font-size:11px;}
.classic-ui.focus-ui .feedback-rail {position:absolute;top:44px;left:12px;right:440px;height:30px;min-height:0;padding:3px 0;border:0;background:none;pointer-events:none;text-shadow:1px 1px 2px #000;}
.classic-ui.focus-ui #hoverAction,.classic-ui.focus-ui #toast,.classic-ui.focus-ui .feedback-rail .coin-reward {font-size:13px;color:#ffe9a5;}
.classic-ui.focus-ui .play-dock {position:absolute;top:88px;left:12px;width:min(340px,calc(100% - 320px));display:block;padding:0;border:0;background:none;pointer-events:none;}
.classic-ui.focus-ui .play-dock>* {pointer-events:auto;}
.classic-ui.focus-ui .objective-toggle {min-height:24px;padding:3px 8px;margin:0;border-radius:2px;font-size:11px;background:#211f1bdf;color:#e9cd85;}
.classic-ui.focus-ui #tutorialGuide {display:block;position:static;min-height:0;margin:0;padding:7px 9px;border:1px solid #8d8059;background:#211f1bd9;border-radius:0;box-shadow:none;width:100%;}
.classic-ui.focus-ui #tutorialTitle {font:14px/1.3 'Segoe UI',sans-serif;color:#ffe3a0;display:block;}
.classic-ui.focus-ui #tutorialGuide::before,.classic-ui.focus-ui .sloppy-guide,.classic-ui.focus-ui #journeyChapter,.classic-ui.focus-ui #journeyProgress,.classic-ui.focus-ui #journeyMeter,.classic-ui.focus-ui #tutorialText,.classic-ui.focus-ui #tutorialFocus {display:none;}
.classic-ui.focus-ui #tutorialGuide #tutorialText {color:#e1e5d5;}
.classic-ui.focus-ui .objective-expanded #tutorialText {display:block;margin:7px 0;font-size:13px;color:#e1e5d5;}
.classic-ui.focus-ui .objective-expanded #tutorialFocus {display:block;min-height:32px;padding:5px 10px;font-size:13px;width:auto;}
.classic-ui.focus-ui .player-strip {display:flex;flex-wrap:wrap;justify-content:flex-start;gap:6px 10px;margin-top:7px;padding:6px 8px;background:#211f1bcc;border:1px solid #5b4b36;}
.classic-ui.focus-ui .player-vitals {flex:1;min-width:95px;max-width:150px;}
.classic-ui.focus-ui #healthStatus {font-size:12px;margin:0 0 3px;}
.classic-ui.focus-ui #healthMeter {height:5px;}
.classic-ui.focus-ui .player-strip>.task {gap:4px;}
.classic-ui.focus-ui .player-strip .task button {font-size:11px;padding:4px 6px;min-height:28px;}
.classic-ui.focus-ui .player-strip .currency-card {gap:4px;margin:0;}
.classic-ui.focus-ui .player-strip .currency-card img {width:20px;height:20px;}
.classic-ui.focus-ui .player-strip .currency-card strong {display:none;}
.classic-ui.focus-ui #currencyBalance {font-size:13px;}
.classic-ui.focus-ui #combatStatus {font-size:13px;padding:6px;margin:5px 0;}
.classic-ui.focus-ui .chat-panel {position:absolute;left:10px;bottom:8px;width:min(530px,calc(100% - 310px));height:128px;display:flex;flex-direction:column;padding:5px 8px;background:#211f1bcd;border:1px solid #5b4b36;color:#ecebdd;z-index:10;}
.classic-ui.focus-ui .chat-heading {display:flex;gap:8px;align-items:center;padding:0;height:25px;background:none;border:0;flex-shrink:0;}
.classic-ui.focus-ui .chat-heading>span {display:none;}
.classic-ui.focus-ui .chat-heading button {min-height:23px;padding:3px 8px;font-size:11px;}
.classic-ui.focus-ui #messages {flex:1;min-height:0;overflow:hidden;font-size:12px;line-height:18px;padding:4px 0;background:none;}
.classic-ui.focus-ui #chatForm {display:flex;gap:5px;align-items:center;min-height:25px;padding:0;border-top:1px solid #5b4b36;background:none;font-size:12px;}
.classic-ui.focus-ui #chat {flex:1;min-width:0;background:none;border:0;padding:3px;color:#fff;font-size:12px;}
.classic-ui.focus-ui #chatForm button {min-height:23px;font-size:11px;padding:3px 7px;}
.classic-ui.focus-ui.chat-collapsed .chat-panel {display:none;}
.classic-ui.focus-ui .work-rewards {display:none;}
@media(max-height:740px) and (min-width:1001px){
 .classic-ui.focus-ui #minimap {width:128px;height:128px;}
 .classic-ui.focus-ui #adventureBody .inventory-slot {height:40px;min-height:40px;}
}
@media(max-width:1000px){
 .classic-ui.focus-ui header {right:10px;left:8px;top:5px;}
 .classic-ui.focus-ui .brand {font-size:13px;}
 .classic-ui.focus-ui .client-bar {display:none;}
 .classic-ui.focus-ui aside {display:none;}
 .classic-ui.focus-ui .camera-controls {top:43px;right:8px;}
 .classic-ui.focus-ui .feedback-rail {top:42px;left:8px;right:150px;}
 .classic-ui.focus-ui .play-dock {left:8px;top:83px;width:min(280px,calc(100% - 16px));}
 .classic-ui.focus-ui .mobile-game-nav {display:flex;position:fixed;left:8px;right:8px;bottom:max(8px,env(safe-area-inset-bottom));gap:6px;margin:0;pointer-events:none;}
 .classic-ui.focus-ui .mobile-game-nav button {pointer-events:auto;min-height:44px;font-size:13px;padding:8px;}
 .classic-ui.focus-ui .chat-panel {left:8px;bottom:60px;width:min(440px,calc(100% - 16px));height:100px;}
 .classic-ui.focus-ui.mobile-panel-open aside {display:flex;position:fixed;inset:40px 8px 60px auto;width:min(330px,calc(100% - 16px));height:auto;max-height:none;z-index:40;background:#211f1bfa;}
 .classic-ui.focus-ui.mobile-panel-open aside>.map-card {display:none;}
 .classic-ui.focus-ui.mobile-panel-open .close-character {min-height:36px;margin:4px 8px;padding:5px;font-size:13px;}
 .classic-ui.focus-ui #mobileJourney {display:none!important;}
 .classic-ui.focus-ui #adventureTabs button {min-height:44px;}
 .classic-ui.focus-ui #adventureBody .inventory-slot {height:44px;min-height:44px;}
 .classic-ui.focus-ui .player-strip .task button {min-height:36px;}
 .classic-ui.focus-ui .objective-toggle {min-height:32px;}
 .classic-ui.focus-ui .inventory-grid {grid-template-columns:repeat(4,minmax(0,1fr));}
}
@media(max-width:1000px) and (max-height:500px){
 .classic-ui.focus-ui .play-dock {top:72px;width:255px;}
 .classic-ui.focus-ui .chat-panel {width:300px;height:76px;}
 .classic-ui.focus-ui.mobile-panel-open aside {top:5px;bottom:5px;width:390px;}
 .classic-ui.focus-ui .inventory-grid {grid-template-columns:repeat(6,minmax(0,1fr));}
 .classic-ui.focus-ui .quick-tools,.classic-ui.focus-ui #liveRanking {display:none;}
 .classic-ui.focus-ui #adventure {padding-top:0;}
 .classic-ui.focus-ui #adventureTabs {padding-bottom:3px;}
 .classic-ui.focus-ui #adventureBody {padding-top:3px;}
}
@media(max-width:1000px){
 .classic-ui.focus-ui .world-panel>.map-card {position:absolute;right:8px;top:82px;padding:0;border:1px solid #97865d;background:#211f1bd9;z-index:12;}
 .classic-ui.focus-ui .world-panel>.map-card .section-heading,.classic-ui.focus-ui .world-panel>.map-card .map-key {display:none;}
 .classic-ui.focus-ui .world-panel>.map-card #minimap {width:100px;height:100px;margin:0;border:0;}
 .classic-ui.focus-ui .play-dock {width:min(280px,calc(100% - 128px));}
 .classic-ui.focus-ui #tutorialTitle {font-size:13px;}
 .classic-ui.focus-ui .player-vitals {max-width:none;}
 .classic-ui.focus-ui .player-strip {gap:6px;}
}
.classic-ui.focus-ui #adventureBody .stat-cell {font-size:11.5px;}
.classic-ui.focus-ui #hoverAction {max-width:none;width:auto;}
@media(max-width:1000px){
 .classic-ui.focus-ui .mobile-game-nav {top:auto;height:44px;min-height:44px;align-items:stretch;}
 .classic-ui.focus-ui .mobile-game-nav button {height:44px;}
}
.classic-ui #islandDialogue {width:min(480px,calc(100vw - 24px));}
.classic-ui #islandDialogue button {display:block;width:100%;margin-top:7px;min-height:40px;text-align:left;}
.classic-ui #islandDistricts {display:grid;gap:6px;grid-template-columns:repeat(2,minmax(0,1fr));}
.classic-ui #islandDistricts button {min-height:44px;font-size:13px;}
.classic-ui #firstAdventure {width:min(620px,calc(100vw - 24px));}
.classic-ui #firstAdventure .journey-chapters {padding-left:22px;}
.classic-ui #firstAdventure .journey-chapters li {margin:10px 0;}
.classic-ui #firstAdventure .journey-chapters span {display:block;font-size:14px;}
.classic-ui.focus-ui #journeyProgress {display:block;margin:4px 0 0;font-size:11px;color:#d7cb96;}

.island-catalogue[open]{display:grid;gap:10px;max-width:min(420px,94vw)}
.island-catalogue button{min-height:44px;text-align:left;padding:10px 14px}
.island-catalogue{box-sizing:border-box;width:min(460px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:18px;overflow:auto}
.island-catalogue h2{margin:0;font-size:22px;color:#f4daa1}
.island-catalogue p{margin:2px 0 8px;font-size:14px;line-height:1.5}
#starterForge select{flex:none;min-height:42px;width:100%;margin-bottom:8px;font-size:14px;background:#2d2923;color:#f1deb5;border:1px solid #a39266;padding:8px}
#starterForge .forge-recipe:disabled{opacity:1;cursor:not-allowed;background:#2d2923;color:#c8cbb5}
#starterForge .forge-recipe:disabled small{color:#b4bdac}
#starterForge .forge-recipe:disabled strong{color:#e1d4b1}
#starterForge .skill-popup-header>button{min-width:44px;min-height:44px}
#bellWard{min-height:44px;white-space:normal;border:2px solid #84b9b0}
#bellWard.bell-warning{background:#664519;color:#fff4c6;border-color:#ffdc76;box-shadow:0 0 12px #f9c96399}
.spellbook{box-sizing:border-box;width:min(540px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;padding:18px;background:#211f1b;color:#f1e7cb;border:2px solid #b6a474}
.spellbook section{padding:12px;margin:10px 0;background:#2d2923;border:1px solid #5b4b36;border-radius:6px}
.spellbook h2,.spellbook h3{margin:0 0 8px;color:#f2d99c}
.spellbook h3{font-size:17px}
.spellbook p{font-size:14px;line-height:1.5;margin:8px 0}
.spellbook button,#castSnare{min-height:44px;white-space:normal}
.spellbook button{width:100%;padding:8px}
.spellbook button:disabled{opacity:1;color:#c7cabb;background:#40382d}

/* Local navigation: RSC's compact right-hand hierarchy, sized for modern displays. */
@media(min-width:1001px){
 .classic-ui.focus-ui aside {width:300px;background:linear-gradient(110deg,#2d2923,#211f1b);border-color:#a7956b;}
 .classic-ui.focus-ui header {right:324px;}
 .classic-ui.focus-ui .camera-controls {right:324px;}
 .classic-ui.focus-ui #minimap {width:100%;height:170px;border:1px solid #9d9069;background:#211f1b;}
 .classic-ui.focus-ui .map-card .map-key {display:flex;flex-wrap:wrap;justify-content:center;gap:3px 9px;font-size:11px;padding-top:5px;}
 .classic-ui.focus-ui aside>.player-strip {flex:none;margin:0;padding:8px;border:0;border-bottom:1px solid #716e50;background:#211f1b;}
 .classic-ui.focus-ui .play-dock {width:270px;}
 .classic-ui.focus-ui .chat-panel {width:min(530px,calc(100% - 332px));}
 .classic-ui.focus-ui #adventureTabs button {font-size:12px;}
 .classic-ui.focus-ui #adventureBody .stat-cell {font-size:13px;}
}
@media(min-width:1001px) and (max-height:740px){
 .classic-ui.focus-ui #minimap {height:120px;}
}
.classic-ui.focus-ui #minimap {cursor:crosshair;touch-action:manipulation;}
.classic-ui.focus-ui .map-card .section-heading>span:last-of-type {display:none;}
@media(max-width:1000px){
 .classic-ui.focus-ui .world-panel>.map-card {width:112px;}
 .classic-ui.focus-ui .world-panel>.map-card #minimap {width:108px;height:108px;}
 .classic-ui.focus-ui .play-dock {width:calc(100% - 140px);max-width:280px;}
}
.classic-ui.focus-ui #adventureTabs {grid-template-columns:repeat(4,minmax(0,1fr));}
.classic-ui.focus-ui .hud-card {padding:9px;margin:0 0 7px;background:#2d2923;border:1px solid #5b4b36;}
.classic-ui.focus-ui .hud-card button {min-height:36px;width:100%;white-space:normal;}
.classic-ui.focus-ui #adventureBody>.audio-toolbar {display:flex;flex-direction:column;gap:12px;padding:8px;background:#2d2923;}
.classic-ui.focus-ui #adventureBody .music-bar,.classic-ui.focus-ui #adventureBody .effects-bar {display:flex;flex-wrap:wrap;height:auto;padding:4px;gap:8px;}
.classic-ui.focus-ui #adventureBody .audio-toolbar input {width:100%;}
.classic-ui.focus-ui #adventureBody .audio-toolbar button {min-height:40px;}
.classic-ui.focus-ui #adventureBody #musicTrack {white-space:normal;}
.classic-ui.focus-ui #adventureTabs button[data-attention-panel=pack]{order:0}
.classic-ui.focus-ui #adventureTabs button[data-attention-panel=skills]{order:1}
.classic-ui.focus-ui #adventureTabs button[data-attention-panel=equipment]{order:2}
.classic-ui.focus-ui #adventureTabs button[data-attention-panel=quest]{order:3}
.classic-ui.focus-ui #adventureTabs button[data-attention-panel=magic]{order:4}
.classic-ui.focus-ui #adventureTabs button[data-attention-panel=prayer]{order:5}
.classic-ui.focus-ui #adventureTabs button[data-attention-panel=settings]{order:6}
.classic-ui.focus-ui .map-card {position:relative;}
.classic-ui.focus-ui #openWorldAtlas {position:absolute;right:12px;bottom:32px;width:30px;min-height:30px;padding:0;font-size:22px;background:#2d2923ea;color:#ffe6a5;border:1px solid #b4a174;z-index:2;}
#worldAtlas {box-sizing:border-box;width:min(1020px,96vw);max-height:94dvh;padding:14px;background:#211f1b;color:#eee5c8;border:2px solid #ad9869;overflow:hidden;}
#worldAtlas::backdrop {background:#151412bb;}
#worldAtlas .skill-popup-header {display:flex;justify-content:space-between;align-items:center;}
#worldAtlas h2 {margin:0;font-size:20px;}
#worldAtlas button {min-width:44px;min-height:44px;}
#worldAtlas p {font-size:12px;margin:8px 0;}
#worldAtlasCanvas {display:block;width:100%;height:auto;max-height:calc(94dvh - 120px);object-fit:contain;background:#211f1b;}
@media(max-width:1000px){.classic-ui.focus-ui #openWorldAtlas {right:4px;bottom:4px;width:32px;min-height:32px;}}
/* The guide always exposes its next action; details are optional. */
.classic-ui.focus-ui #tutorialGuide #tutorialFocus {display:block;width:100%;min-height:40px;margin-top:8px;padding:7px 9px;font-size:13px;white-space:normal;background:#665932;color:#fff1bd;border:1px solid #c5ae6c;}
.classic-ui.focus-ui #tutorialGuide #journeyProgress {display:block;font-size:12px;line-height:1.35;margin-top:6px;color:#d8dfc9;}
.classic-ui.focus-ui #tutorialGuide.reward-ready {border:2px solid #edcd70;background:#2d2923;}
.classic-ui.focus-ui #tutorialGuide.reward-ready #tutorialText {display:block;font-size:12px;line-height:1.4;margin:6px 0;color:#f0e7cc;}
.classic-ui.focus-ui #tutorialGuide.reward-ready #tutorialFocus {background:#d2b661;color:#211f1b;font-weight:700;}
.classic-ui.focus-ui #tutorialGuide #tutorialFocus:disabled {opacity:.65;}
#bankWindow {box-sizing:border-box;width:min(820px,96vw);max-height:96dvh;padding:14px;background:#211f1b;color:#eee3c9;border:2px solid #b49d68;overflow:auto;}
#bankWindow::backdrop {background:#151412b3;}
#bankWindow h2,#bankWindow h3 {margin:0 0 8px;}
#bankStatus {font-size:13px;}
#bankGrids {display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px;}
.bank-grid {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:3px;}
#bankWindow .bank-item {position:relative;height:46px;min-width:0;padding:4px;background:#40382d;border:1px solid #5b4b36;}
#bankWindow .bank-item[aria-pressed=true] {border:2px solid #ffe293;background:#75663b;}
.bank-item .game-icon {width:30px;height:30px;}
.bank-item span:last-child {position:absolute;top:1px;left:3px;font-size:11px;color:#ffe58a;text-shadow:1px 1px #000;}
.bank-transfer-row {display:flex;align-items:center;gap:5px;margin:6px 0;}
.bank-transfer-row>b {width:76px;font-size:13px;}
#bankWindow button {min-height:40px;}
.bank-transfer-row button {flex:1;}
.bank-quantity {margin:8px 0;}
#bankQuantity {width:90px;padding:6px;}
#depositBackpack {width:100%;margin-top:6px;}
.bank-mobile-tabs {display:none;}
@media(max-width:600px){
 #bankWindow {padding:10px;}
 .bank-mobile-tabs {display:flex;gap:6px;margin-bottom:8px;}
 .bank-mobile-tabs button {flex:1;}
 #bankGrids {display:block;}
 #bankWindow[data-pane=bank] .bank-pane[data-pane=pack],#bankWindow[data-pane=pack] .bank-pane[data-pane=bank] {display:none;}
 .bank-grid {grid-template-columns:repeat(6,minmax(0,1fr));}
 #bankWindow .bank-item {height:44px;}
}
.classic-ui.focus-ui #questRequirements {margin-top:8px;}
.classic-ui.focus-ui .quest-supply {display:grid;grid-template-columns:20px 1fr auto;gap:3px 5px;padding:5px 0;border-top:1px solid #5b4b3644;font-size:12px;color:#f0dcc0;}
.classic-ui.focus-ui .quest-supply .game-icon {width:18px;height:18px;}
.classic-ui.focus-ui .quest-supply strong {font-size:13px;color:#ffda87;}
.classic-ui.focus-ui .quest-supply small {grid-column:2 / 4;font-size:11px;}
.classic-ui.focus-ui .quest-supply.ready strong,.classic-ui.focus-ui .quest-supply.ready small {color:#b8e6a0;}
.classic-ui.focus-ui .supply-recipe {font-size:11px;line-height:1.4;margin:6px 0;color:#d8ddce;}
@media(max-width:600px){.classic-ui.focus-ui .supply-recipe {display:none;}.classic-ui.focus-ui .objective-expanded .supply-recipe {display:block;}}
/* Twenty-eight slots; four rows on desktop/landscape, seven on portrait phones. */
.classic-ui.focus-ui #adventureBody[data-page-key="pack"] {display:flex;flex-direction:column;overflow:hidden!important;}
.classic-ui.focus-ui .inventory-heading {flex:none;}
.classic-ui.focus-ui .inventory-grid {flex:1 1 0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));gap:3px;min-height:0;margin:0;}
.classic-ui.focus-ui #adventureBody .inventory-slot {height:100%;min-height:0;min-width:0;padding:3px;}
.classic-ui.focus-ui .inventory-slot .game-icon {width:44px!important;height:44px!important;max-width:100%;max-height:100%;}
.classic-ui.focus-ui #adventureBody[data-page-key="pack"]>.inventory-ground-item {flex-shrink:0;}
@media(max-width:1000px){
 .classic-ui.focus-ui .inventory-slot .game-icon {width:48px!important;height:48px!important;}
 .classic-ui.focus-ui .inventory-grid {grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(7,minmax(0,1fr));}
}
@media(max-width:1000px) and (max-height:500px){
 .classic-ui.focus-ui .play-dock {top:82px;max-width:230px;}
 .classic-ui.focus-ui #questRequirements {display:none;}
 .classic-ui.focus-ui .chat-panel {display:none;}
 .classic-ui.focus-ui #tutorialGuide #tutorialFocus {min-height:36px;}
}
/* Merchant stock and backpack share one readable trading window. */
.merchant-window{width:min(900px,94vw);max-height:90dvh;padding:20px;background:#2d2923;color:#f4e5be;border:2px solid #bd9c60;border-radius:12px;overflow:auto}
.merchant-window header{display:flex;align-items:center;justify-content:space-between;gap:16px}.merchant-window h2{margin:0;font-size:22px}.merchant-window h3{margin:0 0 8px}.merchant-window p{font-size:13px;color:#d4d6bd}.merchant-columns{display:grid;grid-template-columns:1.2fr 1fr;gap:20px}.merchant-columns section{min-width:0;padding:14px;background:#211f1b;border:1px solid #5b4b36;border-radius:8px}.merchant-item{display:grid;grid-template-columns:44px 1fr auto;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid #40382d}.merchant-item strong,.merchant-item small{display:block}.merchant-item small{margin-top:5px;color:#c4cdb8;font-size:12px}.merchant-window .game-icon{width:36px;height:36px;min-width:36px}.merchant-pack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.merchant-pack-item{display:flex;align-items:center;gap:8px;padding:9px;background:#2d2923;border-radius:5px;font-size:12px}.merchant-window button{min-height:40px;padding:8px 12px}.merchant-window button:disabled{opacity:.5}@media(max-width:650px){.merchant-window{padding:12px}.merchant-columns{grid-template-columns:1fr}.merchant-window h2{font-size:18px}.merchant-item{gap:6px;grid-template-columns:36px 1fr auto}}

body.booting > :not(#startupScreen):not(script){visibility:hidden!important}#startupScreen{position:fixed;inset:0;z-index:100000;display:grid;place-content:center;text-align:center;background:#211f1b;color:#f5e5bd;font:18px Georgia,serif;padding:24px}#startupScreen button{padding:12px;margin:16px auto;background:#806a35;color:white;border:1px solid #dbbe77}body:not(.booting) #startupScreen{display:none}

#characterPreview{display:block;width:150px;height:164px;margin:0 auto;background:radial-gradient(ellipse,#5b4b36,#2d2923);border:1px solid #b49a58;border-radius:50%}#welcome{max-height:92vh;overflow:auto}.appearance-choices{display:grid;grid-template-columns:1fr 1fr;gap:6px;align-items:center}

#firstAdventure.arrival-letter{box-sizing:border-box;width:min(480px,92vw);max-height:90dvh;overflow:auto;padding:30px 32px 24px;border:1px solid #ac9053;border-radius:7px;background:radial-gradient(ellipse at 50% 0,#40382d 0,transparent 62%),#211f1b;color:#ecdfbe;box-shadow:0 14px 70px #000a,inset 0 0 0 5px #2d2923;text-align:center}
#firstAdventure::backdrop{background:#151412a8;backdrop-filter:blur(3px)}
#firstAdventure .arrival-portrait{width:96px;height:106px;margin:0 auto 16px;border:2px solid #b19a62;border-radius:48% 48% 12% 12%;overflow:hidden;background:#40382d;box-shadow:0 3px 12px #0005}
#firstAdventure .arrival-portrait svg{width:100%;height:100%}#firstAdventure .journey-eyebrow{display:block;font-size:10px;letter-spacing:2px;color:#c6b47e}
#firstAdventure h2{font:normal 29px/1.15 Georgia,serif;color:#f4e6c3;margin:12px 0 18px}
#firstAdventure .arrival-dialogue{font:italic 18px/1.6 Georgia,serif;margin:0 0 16px;color:#e6dabe}
#firstAdventure .arrival-signature{font:17px Georgia,serif;color:#d9bc77}#firstAdventure .arrival-signature span{display:block;font:12px/1.8 sans-serif;color:#a7b099}
#firstAdventure .journey-controls{font:12px/1.5 sans-serif;color:#abb4a1;margin:22px 0 14px}#firstAdventure .journey-actions{display:flex;flex-direction:column;gap:8px}#firstAdventure #beginAdventure{min-height:46px;background:linear-gradient(#8b7945,#65582e);color:#fff0c4;border:1px solid #cbb576;font:18px Georgia,serif;border-radius:3px}#firstAdventure #skipAdventure{background:transparent;border:0;color:#adb49d;font-size:12px;min-height:34px}
@media(max-height:650px){#firstAdventure.arrival-letter{padding:18px 24px}#firstAdventure .arrival-portrait{width:66px;height:73px;margin-bottom:10px}#firstAdventure h2{font-size:25px}#firstAdventure .arrival-dialogue{font-size:16px}}

/* Tutorial pointers follow actual control bounds, including the mobile drawer. */
#lessonPointer{position:fixed;z-index:10000;pointer-events:none;transform:translateX(-50%);width:190px;text-align:center;color:#ffe394;filter:drop-shadow(0 2px 2px #171910);font:13px/1.3 Georgia,serif}
#lessonFocusRing{position:fixed;z-index:9999;pointer-events:none;box-sizing:border-box;border:2px solid #edcc79;border-radius:7px;box-shadow:0 0 0 3px #e9ba552b,0 0 16px 5px #e9ba5570;animation:lesson-glow 2.4s ease-in-out infinite}
#lessonFocusRing[hidden]{display:none}
@keyframes lesson-glow{50%{box-shadow:0 0 0 5px #e9ba5520,0 0 22px 7px #e9ba5590}}
@media(prefers-reduced-motion:reduce){#lessonFocusRing{animation:none}}
#lessonPointer[hidden]{display:none}
.lesson-pointer-caption{display:inline-block;background:#2d2923f2;border:1px solid #b99d58;border-radius:4px;padding:6px 9px}
.lesson-pointer-arrow{display:block;font-size:26px;line-height:25px;animation:lesson-bob 1s ease-in-out infinite}
#lessonPointer.points-up{display:flex;flex-direction:column-reverse}#lessonPointer.points-up .lesson-pointer-arrow{transform:rotate(180deg);animation:none}
@keyframes lesson-bob{50%{translate:0 4px}}
@media(prefers-reduced-motion:reduce){.lesson-pointer-arrow{animation:none}}
#islandDialogue.guide-conversation{box-sizing:border-box;width:min(560px,94vw);max-height:88dvh;overflow:auto;padding:26px 28px;color:#e8dfc6;background:radial-gradient(ellipse at top left,#40382d,#211f1b 70%);border:2px solid #a48c52;border-radius:8px;box-shadow:0 12px 70px #000b,inset 0 0 0 4px #211f1b;font-family:Georgia,serif}
#islandDialogue::backdrop{background:#151412a6}
#islandDialogue .arrival-portrait{float:left;width:85px;height:96px;margin:0 20px 10px 0;border-bottom:2px solid #ae965b}#islandDialogue .arrival-portrait svg{width:100%;height:100%}
#islandDialogue .speaker-place{display:block;color:#bbaa78;font:10px/1.5 sans-serif;letter-spacing:1.5px;margin-top:8px}
#islandDialogue h2{font:26px/1.2 Georgia,serif;color:#ffe6a9;margin:8px 0 18px}
#islandDialogue>p{font:17px/1.65 Georgia,serif;color:#e7dec7;margin:0 0 22px}
#islandDialogue .guide-answers{clear:both;border-top:1px solid #9e895455;padding-top:12px;display:flex;flex-direction:column;gap:3px}
#islandDialogue .guide-answers button{display:block;width:100%;min-height:40px;text-align:left;background:transparent;border:0;border-radius:3px;color:#d5d2b8;font:15px/1.4 Georgia,serif;padding:9px 12px;box-shadow:none}
#islandDialogue .guide-answers button::before{content:'›';color:#d7b966;margin-right:12px}
#islandDialogue .guide-answers button:first-child{color:#ffe69e;background:#8c7a3433}
#islandDialogue .guide-answers button:hover,#islandDialogue .guide-answers button:focus-visible{background:#a58f4544;outline:1px solid #bba269}
@media(max-width:500px){#islandDialogue.guide-conversation{padding:18px}#islandDialogue h2{font-size:22px}#islandDialogue>p{font-size:16px}}

/* All skills share one compact Stats sheet. Details remain on skill click. */
#adventureBody[data-page-key="skills"] .skills-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin:0}
#adventureBody[data-page-key="skills"] .stats-pair{display:contents!important}
#adventureBody[data-page-key="skills"] .stat-cell{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;min-height:54px;padding:4px 2px 7px;margin:0;font-size:11px;line-height:1.2;text-align:center}
#adventureBody[data-page-key="skills"] .stat-cell .game-icon{width:20px;height:20px;margin:0}
#adventureBody[data-page-key="skills"] .skill-xp-meter{position:absolute;left:4px;right:4px;bottom:1px;margin:0;line-height:0}
#adventureBody[data-page-key="skills"] .skill-xp-meter progress{width:100%;height:3px}
#adventureBody[data-page-key="skills"] .skill-xp-meter span,#adventureBody[data-page-key="skills"] .skill-routes{display:none}
#adventureBody[data-page-key="skills"]>p{font-size:11px;margin:6px 0}
@media(max-height:740px){#adventureBody[data-page-key="skills"] .stat-cell{min-height:42px;font-size:10px}#adventureBody[data-page-key="skills"] .stat-cell .game-icon{width:15px;height:15px}}

.classic-ui.focus-ui #tutorialGuide.defence-lesson #tutorialText{display:block;font-size:13px;line-height:1.45;color:#e4dfc5;margin:8px 0;max-width:330px}
.classic-ui.focus-ui #tutorialGuide.defence-lesson #tutorialFocus{display:block}

/* OSRS-inspired icon-and-level sheet, using Sloppy's own skill art. */
#adventureBody[data-page-key="skills"] .skills-grid{gap:3px;padding:5px;background:#39352c;border:2px solid #74664b;box-shadow:inset 0 0 0 1px #201e19}
#adventureBody[data-page-key="skills"] .stat-cell{display:flex;flex-direction:row;justify-content:space-between;min-height:46px;padding:4px 5px;gap:2px;border:1px solid #776b53;border-radius:0;background:linear-gradient(135deg,#625c4d,#484335);box-shadow:inset 1px 1px #8c8060,inset -1px -1px #302c24;color:#ffff61}
#adventureBody[data-page-key="skills"] .stat-cell:hover,#adventureBody[data-page-key="skills"] .stat-cell:focus-visible{background:#76694c;outline:1px solid #d4b76a}
#adventureBody[data-page-key="skills"] .stat-cell .game-icon{width:22px!important;height:22px!important;flex-shrink:0;margin:0}
.osrs-skill-levels{display:flex;align-items:center;justify-content:center;gap:1px;min-width:0;flex:1;white-space:nowrap;font:bold 13px/1.2 Georgia,serif;font-variant-numeric:tabular-nums;color:#ffff64;text-shadow:1px 1px #000}
.osrs-skill-levels .current-level,.osrs-skill-levels .base-level{position:static}.osrs-skill-levels .level-divider{position:static;color:#d7c9a5;font-size:13px}
#adventureBody[data-page-key="skills"] .skill-xp-meter{display:none}
#adventureBody[data-page-key="skills"]>p{padding:7px;margin:3px 0;background:#484335;border:1px solid #827250;color:#ffff64;text-align:center;font:bold 15px Georgia,serif;text-shadow:1px 1px #000}


/* Fixed-size equipment sheet: no nested scroll regions or page controls. */
#adventureBody[data-page-key="equipment"]{overflow:hidden!important;display:flex;flex-direction:column;gap:4px;padding:4px!important}
#adventureBody[data-page-key="equipment"] .equipment-grid{flex:1 1 auto;min-height:114px;max-height:180px;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));gap:4px;padding:4px;border:0;border-radius:0;background:radial-gradient(ellipse at center,#40382d,#211f1b);margin:0}
#adventureBody[data-page-key="equipment"] .equipment-slot{min-height:0;height:100%;padding:2px;gap:1px;font-size:9px;line-height:1.1;min-width:0;border:1px solid #736d50;border-radius:3px;background:#2d2923;box-shadow:inset 0 1px #a0925933}
#adventureBody[data-page-key="equipment"] .equipment-slot .game-icon{width:27px!important;height:27px!important;margin:0}
#adventureBody[data-page-key="equipment"] .equipment-slot[data-slot=cape]{grid-column:1;grid-row:1}
#adventureBody[data-page-key="equipment"] .equipment-slot[data-slot=necklace]{grid-column:3;grid-row:1}
#adventureBody[data-page-key="equipment"] .equipment-slot[aria-pressed="true"]{outline:none;border-color:#dfbf68;background:#40382d;box-shadow:inset 0 0 8px #c8ac4333}
#adventureBody[data-page-key="equipment"]>p{font-size:11px;margin:0;text-align:center;flex-shrink:0}
#adventureBody[data-page-key="equipment"] .equipment-detail{flex-shrink:0;padding:4px;margin:0;border:0;border-top:1px solid #736d50;max-height:none;overflow:visible;order:2}
#adventureBody[data-page-key="equipment"] .equipment-detail p{margin:2px 0;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.equipment-swap{display:grid;grid-template-columns:minmax(0,1fr) 58px;gap:4px}
.equipment-swap select{min-width:0;width:100%;font-size:11px;padding:3px;background:#2d2923;color:#eee1ba;border:1px solid #746b4c;height:27px}
#adventureBody[data-page-key="equipment"] .equipment-detail button{min-height:27px;font-size:11px;margin:0;padding:3px}
#adventureBody[data-page-key="equipment"]>button{flex-shrink:0;order:3;min-height:24px;height:24px;margin:0;padding:2px;font-size:10px;width:100%;background:transparent;border:0;color:#d3bf82}
.equipment-styles{display:grid;grid-template-columns:1fr 1fr;gap:4px;order:4;flex-shrink:0}
.equipment-styles button{min-width:0;font-size:10px!important;padding:3px 2px!important;margin:0!important;min-height:25px!important}

/* Equipment comparisons span the item menu instead of collapsing into the icon rail. */
.inventory-menu-title{grid-template-columns:34px minmax(0,1fr);align-items:start}
.inventory-menu-title>.game-icon{grid-column:1;grid-row:1 / 3;width:30px!important;height:30px!important}
.inventory-menu-title>strong{grid-column:2;grid-row:1;min-width:0;overflow-wrap:anywhere}
.inventory-menu-title>small{grid-column:2;grid-row:2}
.inventory-menu-title>.gear-comparison{grid-column:1 / -1;grid-row:3;min-width:0;margin:5px 0 0;padding:6px;font-size:11px;line-height:1.4;white-space:normal}

/* Shared one-screen menus. Overview icons replace Previous / Next pages. */
.single-screen-dialog[open]{width:min(780px,calc(100vw - 24px))!important;max-height:calc(100dvh - 24px)!important;box-sizing:border-box;overflow:auto!important}
.single-screen-dialog .single-screen-content{height:auto!important;max-height:none!important;overflow:visible!important;min-height:0!important}
.single-screen-content .page-controls{display:none!important}
.menu-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(82px,1fr));gap:5px;margin:5px 0 10px}
.menu-choice{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;min-height:62px!important;padding:5px!important;margin:0!important;background:#2d2923!important;border:1px solid #736b4b!important;color:#e9dfbf!important;font-size:10px!important;line-height:1.15!important;text-align:center}
.menu-choice .game-icon{width:30px!important;height:30px!important;margin:0!important}
.menu-choice[aria-pressed=true]{border-color:#e1c675!important;background:#40382d!important;box-shadow:inset 0 0 0 1px #b79d55}
.menu-choice.unavailable{opacity:.65}.menu-choice.recommended{border-color:#cda652!important}
.single-screen-content [data-overview-card][hidden]{display:none!important}
.single-screen-content [data-overview-card]:not([hidden]){max-width:none;width:100%;margin:0!important;box-sizing:border-box}
.single-screen-content .forge-recipe:not([hidden]){min-height:80px!important;padding:12px!important;text-align:left}
.single-screen-content .forge-recipe small{font-size:12px;line-height:1.4}
.single-screen-content .equipment-guide-card{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;padding:10px}
.single-screen-content .equipment-guide-card h3,.single-screen-content .equipment-guide-card>button{grid-column:1/-1}
.single-screen-content p{margin:5px 0;font-size:12px;line-height:1.35}
.single-screen-content section{margin:6px 0;padding:7px}
.single-screen-content section h3{margin:2px 0 5px;font-size:15px}
#recipeList{display:block!important}
#townToolsBody,#townServicesBody{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
@media(max-width:600px){.menu-overview{grid-template-columns:repeat(auto-fit,minmax(64px,1fr));gap:3px}.menu-choice{min-height:55px!important;font-size:9px!important}.single-screen-content .equipment-guide-card{display:block}.single-screen-dialog[open]{padding:10px!important}}

.single-screen-dialog[open]{height:auto!important;min-height:0!important}
.single-screen-content .forge-recipe:disabled{opacity:1;color:#d1cbb6;background:#2d2923;cursor:default}
.single-screen-content .forge-recipe:disabled small{color:#b8b9a5}
@media(max-height:700px){.single-screen-dialog[open]{padding:12px!important}.single-screen-dialog h2{font-size:21px;margin:4px 0}.single-screen-dialog .quest-popup-heading,.single-screen-dialog .skill-popup-header{margin-bottom:6px;padding-bottom:6px}.menu-choice{min-height:48px!important}.menu-choice .game-icon{width:24px!important;height:24px!important}.single-screen-content p{font-size:11px;margin:3px 0}}

/* Mobile objectives occupy one touch target until explicitly opened. */
@media (max-width:750px), (max-height:500px) {
 .classic-ui.focus-ui .play-dock .objective-toggle {display:block;width:100%;min-height:44px;padding:8px 12px;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px;border:1px solid #8d8059;border-radius:6px;background:#211f1be8;}
 .classic-ui.focus-ui .play-dock:not(.objective-expanded) #tutorialGuide {display:none!important;}
 .classic-ui.focus-ui .play-dock.objective-expanded #tutorialGuide {max-height:32dvh;overflow-y:auto;overscroll-behavior:contain;border-radius:0 0 6px 6px;}
 .classic-ui.focus-ui .play-dock.objective-expanded #tutorialText {display:block;-webkit-line-clamp:unset;}
 .classic-ui.focus-ui .play-dock #tutorialFocus {min-height:44px;}
}
/* Puddlewick task board: compact paper cards, one desktop sheet. */
#bountyBoard{width:min(850px,96vw);max-height:94dvh;padding:20px;background:#2d2923;color:#f4e8c5;border:3px solid #997548;border-radius:12px;box-sizing:border-box}
.task-board-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}
.task-board-heading h2{margin:3px 0 12px;font:700 26px Georgia}
.task-board-heading small{letter-spacing:2px;color:#d3b77a;font-size:10px}
.task-board-heading button{width:36px;height:36px;font-size:24px;padding:0;align-self:flex-start}
.task-tabs{display:flex;gap:8px;margin:8px 0 14px}
.task-tabs button[aria-pressed=true]{background:#a88248;color:#fff5d7}
.task-board-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.task-card{background:#e5d5ac;color:#382e20;padding:12px;border:1px solid #b39665;border-radius:4px;display:flex;flex-direction:column;gap:5px;min-width:0}
.task-card h3{display:flex;align-items:center;gap:8px;font:700 17px Georgia;margin:0}
.task-card h3 svg{width:35px;height:35px;flex:none}
.task-card p{font:13px/1.35 sans-serif;margin:0;min-height:35px}
.task-card progress{width:100%;height:8px;accent-color:#4e7750}
.task-card small{font-size:11px}
.task-card button{margin-top:auto;min-height:34px;background:#40382d;color:#fff0c9;border:1px solid #40382d;border-radius:4px}
.task-card button:disabled{opacity:.65}
.task-reward{font-weight:bold;display:flex;gap:6px;align-items:center}
.task-reward svg,.task-card small svg{width:22px;height:22px;vertical-align:middle}
.task-board-footer{display:flex;align-items:center;flex-wrap:wrap;gap:8px 20px;margin-top:14px;font-size:12px}
.task-board-footer small{flex-basis:100%;color:#c5cbb5}
.task-board-footer p{margin:0}
@media(max-width:580px){#bountyBoard{padding:10px}.task-board-grid{gap:7px}.task-card{padding:8px}.task-card h3{font-size:14px}.task-card h3 svg{width:27px;height:27px}.task-card p{font-size:11px}.task-reward{font-size:11px}.task-board-footer small{font-size:10px}.task-board-heading h2{font-size:21px}}
#partyPanel{width:min(580px,94vw);max-height:90dvh;overflow:auto;padding:18px;background:#2d2923;color:#f4e4be;border:3px solid #967849;border-radius:8px}#partyPanel header{display:flex;align-items:center;justify-content:space-between}#partyPanel header h2{margin:0}#partyPanel button,#partyPanel select{padding:8px;margin:4px;min-height:36px}#partyPanel .party-members p{padding:10px;background:#211f1b;border-left:3px solid #c4a661}#partyPanel footer{display:flex;flex-wrap:wrap}#openParty{margin-left:auto}
#partyPanel>header,#bountyBoard>header.task-board-heading{position:static;inset:auto;width:100%;height:auto;min-height:40px;display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:12px;padding:0 0 12px;margin:0;pointer-events:auto;background:none;border:0;box-shadow:none;z-index:auto}#partyPanel>header h2{flex:1;font:700 24px Georgia;line-height:1.2;white-space:normal;margin:0}#partyPanel>header button,#bountyBoard>header button{position:static;inset:auto;flex:0 0 36px;width:36px;height:36px;padding:0;margin:0;pointer-events:auto}#partyPanel .party-nearby:empty::before{content:'No available adventurers nearby. Meet someone in town to invite them.';display:block;font-size:13px;color:#d3c49e;padding:12px 0}
#bountyBoard[open]{display:block;height:auto;overflow:auto;padding:16px!important;max-height:94dvh}#bountyBoard .task-board-heading h2{font:700 26px/1.1 Georgia;margin:4px 0}#bountyBoard .task-board-heading small{font:10px/1.2 sans-serif;letter-spacing:2px}#bountyBoard .task-tabs{margin:4px 0 10px;gap:8px}#bountyBoard .task-tabs button{padding:8px 12px;min-height:34px}#bountyBoard .task-card{gap:4px;padding:10px}#bountyBoard .task-card h3{color:#382e20;font:700 17px/1.15 Georgia;margin:0}#bountyBoard .task-card p{color:#4e493b;font:13px/1.3 sans-serif;min-height:32px;margin:0}#bountyBoard .task-card small{color:#554b36;font:11px/1.3 sans-serif}#bountyBoard .task-card progress{display:block;margin:3px 0;height:7px}#bountyBoard .task-card button{padding:7px;min-height:32px;font:13px/1.2 sans-serif}#bountyBoard .task-board-footer{margin-top:10px;gap:6px 16px}#bountyBoard .task-board-footer p,#bountyBoard .task-board-footer small,#bountyBoard .task-board-footer select{font:12px/1.3 sans-serif}#bountyBoard .task-board-footer select{padding:4px}#bountyBoard .task-reward{font:700 13px/1.3 sans-serif}
@media(max-width:580px){#bountyBoard[open]{padding:10px!important}#bountyBoard .task-card{padding:7px}#bountyBoard .task-card h3{font-size:14px}#bountyBoard .task-card p{font-size:11px}#bountyBoard .task-card small{font-size:10px}#bountyBoard .task-board-footer p,#bountyBoard .task-board-footer small{font-size:10px}#bountyBoard .task-reward{font-size:11px}}
#bountyBoard .task-card small{margin:0;padding:0}#bountyBoard .task-card p{min-height:28px}#bountyBoard .task-board-footer{padding:0;border:0}#bountyBoard .task-board-footer label{display:flex;align-items:center;gap:8px;margin:0;font:12px/1.3 sans-serif}#bountyBoard .task-board-footer small{margin:0;padding:0}#bountyBoard .task-board-footer select{width:auto;margin:0;min-height:26px}
/* Bank: compact paired inventory and bank workbench. */
#bankWindow.bank-workspace{width:min(760px,96vw)!important;max-height:94dvh!important;padding:16px!important;overflow:auto;background:#211f19;color:#e9ddbd;border:2px solid #806b3f;border-radius:12px}
#bankWindow .bank-top,#bankWindow .bank-controls,#bankWindow .bank-tabs{display:flex;align-items:center;gap:6px;margin:0 0 10px}
#bankWindow .bank-top{justify-content:space-between}#bankWindow .bank-top h2{margin:0;font-size:22px}#bankWindow .bank-top button{width:36px;height:36px;font-size:24px;padding:0}
#bankWindow p,#bankWindow small,#bankWindow h3{color:#ded3b8!important;margin:6px 0!important;padding:0!important;line-height:1.3!important}#bankWindow p,#bankWindow small{font-size:12px!important}
#bankWindow button{min-height:32px;cursor:pointer}#bankWindow button[aria-pressed=true]{background:#806b3f;color:white;border-color:#dec181}
#bankWindow input,#bankWindow select{width:100%;min-height:34px;background:#151412;color:#eee0bd;border:1px solid #655b42;border-radius:4px;padding:6px;box-sizing:border-box}#bankWindow .bank-controls input{width:76px}
#bankWindow .bank-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}#bankWindow .bank-columns>section{min-width:0}#bankWindow .bank-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;margin:8px 0}
#bankWindow .bank-item{position:relative;min-width:0;width:100%;height:45px;padding:3px!important;background:#302e25;border:1px solid #534c37;display:flex;align-items:center;justify-content:center}#bankWindow .bank-item canvas,#bankWindow .bank-item img{width:34px;height:34px}#bankWindow .bank-item span{position:absolute;right:3px;bottom:1px;color:#ffe0a1;font-size:11px;text-shadow:1px 1px #000}
#bankWindow nav{display:flex;justify-content:center;gap:8px;align-items:center}#bankWindow .bank-recipe{display:grid;grid-template-columns:48px 1fr;gap:4px 10px;margin-top:10px}#bankWindow .bank-recipe .bank-item{grid-row:span 2}#bankWindow .bank-recipe h3{font-size:16px!important}
#bankWindow .bank-ingredient{display:grid;grid-template-columns:38px 1fr;gap:0 8px;margin:7px 0;font-size:12px}#bankWindow .bank-ingredient .bank-item{grid-row:span 2;height:38px}#bankWindow .bank-craft-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:10px}#bankWindow .bank-context{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:4px;padding:8px;background:#151412;border:1px solid #c9aa69}#bankWindow .bank-context strong{width:100%;font-size:12px}
@media(max-width:520px){#bankWindow.bank-workspace{padding:10px!important}#bankWindow .bank-columns{grid-template-columns:1fr 1fr;gap:8px}#bankWindow .bank-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:3px}#bankWindow .bank-item{height:36px}#bankWindow .bank-item canvas,#bankWindow .bank-item img{width:29px;height:29px}#bankWindow .bank-craft-actions{grid-template-columns:1fr}#bankWindow button{font-size:11px}#bankWindow .bank-recipe{grid-template-columns:36px 1fr}#bankWindow .bank-recipe h3{font-size:13px!important}}

#bountyBoard[data-tab="weekly"][open]{height:auto!important;min-height:0!important;max-width:680px}#bountyBoard[data-tab="weekly"] .task-board-grid{flex:0 1 auto}

/* Objectives stay out of the world view until the player opens them. */
.classic-ui.focus-ui .play-dock:not(.objective-expanded){width:auto;max-width:180px;}
.classic-ui.focus-ui .play-dock .objective-toggle{display:block;width:auto;min-height:36px;padding:7px 12px;border:1px solid #8d8059;border-radius:6px;background:#211f1bed;color:#f3dfac;font-size:12px;}
.classic-ui.focus-ui .play-dock:not(.objective-expanded) #tutorialGuide{display:none!important;}
.classic-ui.focus-ui .play-dock .objective-toggle.objective-unread{border-color:#edcd70;animation:objective-notice 2.4s ease-in-out infinite;}
@keyframes objective-notice{0%,100%{box-shadow:0 0 4px #e8bd5466;}50%{box-shadow:0 0 13px #e8bd54bb;}}
@media(prefers-reduced-motion:reduce){.classic-ui.focus-ui .play-dock .objective-toggle.objective-unread{animation:none;box-shadow:0 0 8px #e8bd5499;}}

.shrine-rankings{width:min(600px,calc(100vw - 32px));max-height:80dvh;padding:24px;border:2px solid #c5a55a;border-radius:12px;background:linear-gradient(145deg,#2d2923,#211f1b);color:#eee5cc;box-shadow:0 24px 90px #000b;overflow:auto;}
.shrine-rankings::backdrop{background:#151412bb;}
.shrine-rankings header{display:flex!important;position:static!important;justify-content:space-between;align-items:center;background:none!important;padding:0!important;}
.shrine-rankings h2{margin:4px 0;color:#f2d58a;font:26px Georgia,serif;}
.shrine-rankings small{letter-spacing:3px;color:#c5a55a;font-size:10px;}
.shrine-rankings header button{font-size:26px;min-width:44px;min-height:44px;}
.shrine-rankings p{font-size:13px;color:#bbc9b9;line-height:1.5;}
.shrine-rankings table{width:100%;border-collapse:collapse;margin:14px 0;}
.shrine-rankings th{text-align:left;font-size:11px;text-transform:uppercase;color:#b7bdab;padding:12px 8px;border-bottom:1px solid #917943;}
.shrine-rankings td{padding:13px 8px;border-bottom:1px solid #ffffff12;overflow-wrap:anywhere;}
.shrine-rankings td:last-child,.shrine-rankings th:last-child{text-align:right;font-variant-numeric:tabular-nums;}
.shrine-top-rank{color:#f2d58a;}.shrine-you{background:#c4a65124;}
.shrine-rankings .shrine-standing{padding:10px;background:#ffffff08;border-radius:5px;color:#f2d58a;}

/* Narrow, vertical chat leaves more of the world unobstructed. */
.classic-ui.focus-ui .chat-panel{width:min(320px,calc(100% - 16px));height:min(260px,38dvh);box-sizing:border-box;}
.classic-ui.focus-ui .chat-heading{gap:4px;flex-wrap:wrap;height:auto;min-height:25px;}
.classic-ui.focus-ui .chat-heading button{padding:3px 6px;}
.classic-ui.focus-ui #messages{overflow-y:auto;overflow-x:hidden;overflow-wrap:anywhere;overscroll-behavior:contain;}
@media(max-height:500px){.classic-ui.focus-ui .chat-panel{width:min(290px,calc(100% - 16px));height:150px;}}

.classic-ui.focus-ui .chat-panel .chat-resize{position:absolute;right:-1px;top:-20px;width:30px;height:22px;min-height:22px;padding:0;border:1px solid #8d8059;border-radius:5px 5px 0 0;background:#2d2923;color:#e8cd87;cursor:nesw-resize;touch-action:none;font-size:16px;}
.classic-ui.focus-ui .chat-panel .chat-resize:focus-visible{outline:2px solid #ffe196;outline-offset:2px;}

/* Touch banking: comfortably sized targets without squeezing four columns per pane. */
@media(max-width:520px){#bankWindow .bank-grid{grid-template-columns:repeat(3,minmax(0,1fr))}#bankWindow .bank-item{height:44px;min-height:44px}#bankWindow button,#bankWindow input,#bankWindow select{min-height:44px}#bankWindow .bank-top button{width:44px;height:44px}#bankWindow .bank-controls{flex-wrap:wrap}}
@media(max-width:360px){#bankWindow .bank-columns{grid-template-columns:1fr}#bankWindow .bank-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
.journal-supplies{list-style:none;margin:8px 0;padding:0;display:grid;gap:8px}
.journal-supplies li{display:grid;gap:3px;padding:9px 11px;border:1px solid #8d795866;border-radius:5px;background:#9e865515}
.journal-supplies li span,.journal-supplies li small{font-size:12px;line-height:1.4}
.journal-supplies li.ready{border-color:#52764188;background:#628a3818}
/* Long quest supply lists scroll with the journal instead of underneath its action. */
#questDetails.single-screen-dialog[open]> *{flex-shrink:0}
#questDetails.single-screen-dialog #questDetailsBody{flex:0 0 auto}

#messages .chat-player-name,#chatHistory .chat-player-name{display:inline;min-height:0;margin:0;padding:0 2px;border:0;border-radius:2px;background:none;color:inherit;font:inherit;font-weight:bold;text-decoration:underline;text-decoration-style:dotted;cursor:pointer}
#messages .chat-player-name:focus-visible,#chatHistory .chat-player-name:focus-visible{outline:2px solid #e8cd87;outline-offset:2px}
.chat-controls{width:min(420px,calc(100vw - 32px));max-height:80dvh;overflow:auto;box-sizing:border-box}
.chat-controls p{line-height:1.5}
.chat-muted-row{display:flex;gap:12px;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #5b4b36}
.chat-muted-row span{overflow-wrap:anywhere}

.forge-choice{margin-bottom:10px}.forge-choice .forge-recipe{width:100%;box-sizing:border-box}.forge-batch{margin:4px 0 0 8px}.forge-batch-status{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:8px 0;color:#e8cd87}.forge-batch-status:has(span:empty){padding:0}

.farming-dialog{width:min(540px,calc(100vw - 24px));max-height:calc(100dvh - 24px);box-sizing:border-box;overflow:auto}.farming-dialog .farming-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.farming-dialog h2{font-size:24px;margin:0}.farming-dialog p{line-height:1.45}.farming-status{color:#e5cf8c}.farming-choices{display:grid;gap:12px}.farming-choice button{display:flex;align-items:center;gap:10px;width:100%;min-height:52px;text-align:left}.farming-choice .game-icon{width:30px;height:30px;flex:none}.farming-choice small{display:block;color:#d4cbaa;line-height:1.4;margin-top:4px}.farming-choice small[hidden]{display:none}.farming-choice button:disabled{opacity:.65}
.farming-dialog .farming-heading button{width:auto;flex:none;margin:0;min-width:64px;min-height:44px}

.focus-ui.connection-lost header .server{display:none}
#connectionBanner{position:fixed;z-index:500;top:80px;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100vw - 24px);box-sizing:border-box;padding:12px 16px;background:#603b2c;border:1px solid #f0b283;border-radius:8px;color:#fff0d6;box-shadow:0 5px 20px #0006;display:flex;align-items:center;gap:14px}
#connectionBanner[hidden],#reconnectGame[hidden]{display:none}
#connectionBanner p{font:14px/1.4 system-ui,sans-serif;margin:0;max-width:450px}
#reconnectGame{flex:none;min-height:44px}
@media(max-width:600px){#connectionBanner{width:calc(100vw - 24px);flex-wrap:wrap}#connectionBanner p{width:100%}}

.cooking-dialog{width:min(520px,92vw);max-height:82dvh;overflow:auto}.cooking-choice{padding:12px 0;border-bottom:1px solid #7c7355}.cooking-choice strong,.cooking-choice small{display:block;margin-bottom:7px}.cooking-choice>div{display:flex;gap:8px}.cooking-choice button{flex:1;min-height:48px}.cooking-dialog>[role=status]{min-height:24px;color:#f0d68b}

.cooking-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;position:sticky;top:0;background:#2d2923;z-index:1}.cooking-heading h2{margin:0}.cooking-heading button{width:auto;min-height:44px;padding:8px 12px}

.classic-ui.focus-ui #groundLoot {flex-direction:column;max-width:260px;gap:4px;margin-top:5px;}
.classic-ui.focus-ui #groundLoot .all-ground-loot {justify-content:center;min-height:36px;background:#211f1b;}
.nearby-loot-dialog {width:min(460px,94vw);max-height:80dvh;overflow:auto;}
.focus-ui .nearby-loot-dialog header {position:sticky;top:0;display:flex;height:auto;padding:8px;justify-content:space-between;z-index:1;}
.nearby-loot-dialog h2 {margin:0;font-size:20px;}
.nearby-loot-dialog>div {display:grid;gap:8px;}
.nearby-loot-dialog>div>button {display:flex;align-items:center;gap:8px;min-height:52px;text-align:left;}
.nearby-loot-dialog .game-icon {width:32px;height:32px;flex:none;}

#partyPanel footer{height:auto;min-height:44px;gap:6px;padding-top:10px}#partyPanel footer select{width:auto;flex:1 1 130px;min-width:0}#partyPanel footer button,#partyPanel footer select{min-height:44px;margin:0}#partyPanel .party-status{color:#e6cf9c;font-size:13px;line-height:1.5}

/* Dense bank storage: most space belongs to the vault, not the backpack. */
#bankWindow.bank-workspace{width:min(1100px,96vw)!important;padding:12px!important}
#bankWindow .bank-columns{grid-template-columns:minmax(0,1fr) 220px;gap:16px}
#bankWindow .bank-storage-grid{grid-template-columns:repeat(10,minmax(0,1fr));max-height:calc(90dvh - 205px);overflow-y:auto;align-content:start;scrollbar-gutter:stable}
#bankWindow .bank-backpack .bank-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
#bankWindow .bank-item{margin:0;height:44px;min-height:44px;border-radius:4px}
#bankWindow .bank-item span:last-child{inset:auto 3px 2px auto}
#bankWindow [data-bank-item]{touch-action:none;user-select:none;cursor:grab}
#bankWindow [data-bank-item] .game-icon{pointer-events:none}
#bankWindow .bank-dragging{opacity:.55;cursor:grabbing;outline:2px solid #f0cc78}
#bankWindow .bank-drop-before{box-shadow:inset 4px 0 #ffe293;border-color:#ffe293}
#bankWindow .bank-drop-after{box-shadow:inset -4px 0 #ffe293;border-color:#ffe293}
#bankWindow .bank-order-hint{display:block;color:#cdbd97;margin:5px 0;font-size:11px}
#bankWindow .bank-top,#bankWindow .bank-controls,#bankWindow .bank-tabs{margin-bottom:5px}
#bankWindow .bank-tabs button,#bankWindow .bank-controls button{margin:0;padding:5px 12px}
@media(max-width:800px){#bankWindow .bank-columns{grid-template-columns:minmax(0,1fr) 180px;gap:10px}#bankWindow .bank-storage-grid{grid-template-columns:repeat(8,minmax(0,1fr))}}
@media(max-width:600px){#bankWindow .bank-columns{grid-template-columns:1fr}#bankWindow .bank-storage-grid{grid-template-columns:repeat(6,minmax(0,1fr));max-height:44dvh}#bankWindow .bank-backpack .bank-grid{grid-template-columns:repeat(6,minmax(0,1fr))}#bankWindow .bank-item{height:44px;min-height:44px}#bankWindow .bank-controls button{padding:5px 10px}}
@media(max-width:360px){#bankWindow .bank-storage-grid,#bankWindow .bank-backpack .bank-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}

/* Dungeon controls remain below character drawers and fit narrow play views. */
@media(max-width:700px){
}


/* Compact original spell glyphs, with one selected spell's details below. */
#adventureBody[data-page-key="magic"]{padding:8px!important;background:#3b382f;}
.magic-book{color:#e2d9c4;min-width:0;font:12px/1.45 Arial,sans-serif;}
.magic-book-heading{display:flex;justify-content:space-between;align-items:center;gap:6px;padding:3px 0 9px;border-bottom:1px solid #75694d;font-size:11px;color:#cfc09a;}
.magic-book-heading strong{color:#f2d581;font:bold 14px Georgia,serif;}
.magic-spell-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;padding:7px 2px 9px;min-height:0;align-content:start;}
#adventureBody .magic-spell{position:relative;display:grid;place-items:center;width:100%;min-width:0;height:44px;min-height:44px;margin:0;padding:4px 4px 8px;background:transparent;border:1px solid transparent;border-radius:0;box-shadow:none;cursor:pointer;}
.magic-spell svg{width:30px;height:30px;filter:drop-shadow(1px 2px 0 #171611);}
.magic-spell.is-locked svg{filter:grayscale(1) brightness(.65) drop-shadow(1px 2px 0 #171611);}
#adventureBody .magic-spell:hover,#adventureBody .magic-spell:focus-visible{background:#655b43;border-color:#bc9e59;outline:1px solid #ead18a;outline-offset:-2px;}
#adventureBody .magic-spell[aria-pressed="true"]{background:#514b39;border-color:#a98b48;box-shadow:inset 0 0 0 1px #26231b;}
.spell-level{position:absolute;right:2px;bottom:0;color:#ead59c;font:10px/12px Arial,sans-serif;text-shadow:1px 1px #000;}
.magic-spell.is-locked .spell-level{color:#a39b88;}
.magic-spell-detail{border-top:1px solid #77684b;padding:10px 2px 3px;min-width:0;}
.magic-spell-detail h3{font:bold 17px Georgia,serif;color:#ffe089;margin:0 0 2px;text-shadow:1px 1px #16150e;}
.spell-requirement{color:#c4b890;font-size:11px;margin-bottom:10px;}
.magic-spell-detail p{margin:8px 0;font-size:12px;line-height:1.45;}
.magic-spell-detail .spell-state{color:#ebcf91;font-size:11px;}
.magic-spell-detail .spell-hint{color:#b7ad96;font-size:11px;}
.magic-spell-detail select{width:100%;min-width:0;max-width:100%;box-sizing:border-box;font-size:12px;min-height:34px;background:#28271f;color:#eee0b7;border:1px solid #8c7950;border-radius:0;padding:5px;}
#adventureBody .magic-spell-detail .spell-action{width:100%;min-height:34px;border:1px solid #8e7952;border-radius:2px;background:linear-gradient(#5b5340,#3f392c);color:#f5dd9e;font:12px Georgia,serif;box-shadow:inset 0 0 0 1px #29251c;margin:5px 0 0;padding:6px;}
#adventureBody .magic-spell-detail .spell-action:disabled{color:#9f9887;opacity:.65;cursor:default;}
.magic-book-footer{border-top:1px solid #5e5541;margin:12px 0 0;padding:8px 0 0;color:#a89f88;text-align:center;font-size:10px;}
@media(pointer:coarse){#adventureBody .magic-spell{min-height:46px;height:46px;}.magic-spell-grid{gap:5px;}}

/* A spell targets inventory items before their ordinary equip/use actions. */
.alchemy-target-banner{position:relative;display:flex;flex-direction:column;gap:3px;padding:8px 60px 8px 8px;border:1px solid #c4a35a;background:#4c422b;color:#eddaa4;font-size:11px;line-height:1.35;margin-bottom:6px;}
.alchemy-target-banner strong{color:#ffe59a;font: bold 14px Georgia,serif;}
#adventureBody .alchemy-cancel{position:absolute;right:5px;top:8px;min-height:29px;padding:4px 6px;margin:0;font-size:11px;border:1px solid #a18b5c;background:#322e24;color:#ead9ae;}
.classic-ui.focus-ui #adventureBody .alchemy-target-grid .alchemy-eligible{border-color:#b49650;cursor:crosshair;box-shadow:inset 0 0 6px #bea04d26;}
.classic-ui.focus-ui #adventureBody .alchemy-target-grid .alchemy-eligible:hover,.classic-ui.focus-ui #adventureBody .alchemy-target-grid .alchemy-eligible:focus-visible{background:#6a5937;outline:2px solid #f1d278;outline-offset:-2px;}
.classic-ui.focus-ui #adventureBody .alchemy-target-grid .alchemy-ineligible{opacity:.4;cursor:not-allowed;}
.classic-ui.focus-ui #adventureBody .inventory-slot .alchemy-item-value{display:block;position:absolute;right:2px;bottom:1px;color:#ffe096;font:10px Arial,sans-serif;text-shadow:1px 1px #000;pointer-events:none;}

/* Everyday tools: no additional rendering work or world geometry. */
#bankWindow .bank-search-row,#bankWindow .bank-filters{display:flex;gap:6px;margin:5px 0;align-items:center}
#bankWindow .bank-search-row input,#bankWindow .bank-filters select{min-width:0;flex:1}
#bankWindow .bank-controls{flex-wrap:wrap}#bankWindow .bank-controls button{min-height:36px}
#bankWindow .bank-filters button{white-space:nowrap;margin:0;min-height:36px}
#bankWindow .bank-click-hint{display:block}#bankWindow .bank-filters [aria-pressed=true]{background:#75663b;border-color:#ffe293}
.inventory-toolbar{display:flex;align-items:center;justify-content:space-between;gap:6px;flex:none;margin:0 0 5px;min-height:28px}
.inventory-toolbar>small{font-size:11px;color:#d8cba7}
.inventory-tools,.inventory-ground{position:relative;flex:none;margin:0}
.inventory-tools summary,.inventory-ground summary{cursor:pointer;min-height:28px;box-sizing:border-box;padding:5px 7px;font-size:12px;color:#ead9ae;border:1px solid #736044;background:#302b23;border-radius:3px}
.inventory-tool-menu,.inventory-ground-list{position:absolute;z-index:8;right:0;top:100%;width:230px;max-width:100%;padding:6px;box-sizing:border-box;background:#211f1b;border:1px solid #9e8154;box-shadow:0 6px 18px #0009}
.inventory-tool-menu{width:240px;max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:5px}
.inventory-tools button{min-width:0;min-height:36px;font-size:12px!important;margin:0!important;padding:6px!important}
.inventory-ground-list{left:0;right:auto;width:260px;max-width:none;max-height:210px;overflow:auto;overscroll-behavior:contain}
.inventory-ground-list .inventory-ground-item{display:block;width:100%;margin:0 0 4px;font-size:12px!important;text-align:left}
.classic-ui.focus-ui #adventureBody .inventory-slot{box-sizing:border-box;overflow:hidden}
.classic-ui.focus-ui .inventory-slot .game-icon{flex-shrink:1;object-fit:contain}
@media(max-width:1000px) and (max-height:500px){
 .classic-ui.focus-ui .inventory-grid{grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr))}
}
#townTools .travel-search{width:100%;box-sizing:border-box;min-height:40px;padding:8px;margin:6px 0;background:#211f1b;border:1px solid #8d794f;color:#f0d89f}
#townTools .travel-filtered{display:none!important}#townTools .travel-help{display:block;color:#c9c7ab;font-size:12px;line-height:1.4;margin:8px 0}
#townTools .travel-destination{grid-template-columns:1fr;min-height:62px;padding:10px}
#townTools .travel-destination strong,#townTools .travel-destination span{grid-column:1;font-size:14px}
#townTools .travel-destination span{font-size:12px;margin-top:2px}

#townTools #townToolsBody{display:block;min-height:0;overflow-y:auto;align-content:start}
#townTools #islandDistricts{width:100%;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;margin-top:8px}
#townTools .travel-destination{height:auto;align-content:start;grid-template-rows:auto auto;margin:0 0 6px}
@media(max-width:600px){#townTools #islandDistricts{grid-template-columns:1fr}#townTools .travel-destination{min-height:64px}}

#townTools #townToolsBody{overflow-y:auto!important;overflow-x:hidden!important;flex:1 1 0%;min-height:0}
#townTools>.travel-search,#townTools>.travel-help,#townTools>p{flex-shrink:0}

.merchant-controls{display:flex;gap:8px;margin:10px 0;flex-wrap:wrap}.merchant-controls input{flex:1;min-width:140px}.merchant-controls input,.merchant-controls select{background:#211f1b;color:#f4e5be;border:1px solid #879978;min-height:40px;padding:8px;box-sizing:border-box}.merchant-progress{display:flex;gap:8px;align-items:center;justify-content:space-between;min-height:24px;margin:6px 0;font-size:13px}.merchant-progress button[hidden]{display:none}.dusk-work-controls{display:flex;gap:8px;flex-wrap:wrap}.dusk-work-controls input,.dusk-work-controls select{min-height:40px;max-width:100%;padding:8px;background:#211f1b;color:#ead8b5;border:1px solid #5b4b36}.dusk-work-status{display:block;padding:8px 0;color:#edcf8a;font:13px/1.5 sans-serif}.dusk-recipe[hidden]{display:none!important}
.classic-ui.focus-ui .merchant-window>header{position:static;inset:auto;width:auto;height:auto;min-height:44px;display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:12px;padding:0 0 12px;margin:0;pointer-events:auto;background:none;border:0;box-shadow:none;z-index:auto}
.merchant-window>header h2{flex:1;white-space:normal;line-height:1.2}.merchant-window>header button{position:static;flex:0 0 auto;margin:0}
.merchant-controls input{width:auto;flex:1 1 160px}.merchant-controls select{width:auto;flex:0 0 auto}

.equipment-preview{font-size:12px;line-height:1.5;padding:8px;border-left:3px solid #c2a563;background:#211f1b;color:#e9dcbb}
.gear-guide-controls,.loot-controls{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.gear-guide-controls input,.gear-guide-controls select,.loot-controls input,.loot-controls select{min-width:0;max-width:100%;min-height:40px;padding:8px;box-sizing:border-box;background:#211f1b;color:#ead8b4;border:1px solid #8b805a}.gear-guide-controls input,.loot-controls input{flex:1 1 170px}.gear-guide-controls select,.loot-controls select{flex:1 1 140px}
.nearby-loot-dialog>div:last-child>button{min-height:48px;margin:5px 0;width:100%;text-align:left}.nearby-loot-dialog .loot-controls{display:flex}

#adventureBody[data-page-key="equipment"] .equipment-detail p.equipment-preview{white-space:normal;overflow:visible;text-overflow:clip}
#adventureBody[data-page-key="equipment"] .equipment-swap select,#adventureBody[data-page-key="equipment"] .equipment-swap button{min-height:40px!important}

.forge-filters{display:flex;gap:6px;flex-wrap:wrap;margin:7px 0}.forge-filters input,.forge-filters select,.journal-search{box-sizing:border-box;max-width:100%;min-height:40px;padding:8px;border:1px solid #99885e;background:#211f1b;color:#edddba}.forge-filters input{flex:1 1 160px;min-width:0}.forge-filters select{flex:1 1 150px}.journal-search{width:100%;flex-shrink:0;margin:6px 0}#questDetails .journal-tabs{flex-wrap:wrap}#questDetails .journal-tabs button{min-height:36px}

.cooking-controls,.skill-guide-controls{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}.cooking-controls input,.cooking-controls select,.skill-guide-controls input,.skill-guide-controls select{box-sizing:border-box;min-width:0;max-width:100%;min-height:40px;padding:8px;background:#211f1b;color:#edddba;border:1px solid #94815b}.cooking-controls input,.skill-guide-controls input{flex:1 1 160px}.cooking-controls select,.skill-guide-controls select{flex:1 1 140px}.cooking-choice[hidden]{display:none!important}.cooking-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.cooking-heading h2{margin:0;line-height:1.2}.cooking-heading button{flex:0 0 auto;min-height:40px}.skill-guide-controls{flex-shrink:0}.inventory-tools button[aria-pressed=true]{background:#6c603e;border-color:#e4c473}

#bankWindow .bank-topup[aria-pressed=true]{background:#51472b;border-color:#e2c580}#bankWindow .bank-transfer-status{font-size:12px;line-height:1.4;color:#e4d49c;margin:6px 0}

/* Quest chronicles: a readable book, with clues revealed only on request. */
#sideQuestDetails.story-journal{box-sizing:border-box;width:min(760px,96vw);height:min(780px,94dvh);max-height:94dvh;padding:20px 26px;display:none;flex-direction:column;gap:9px;border:4px solid #62452c;border-radius:5px;background:linear-gradient(100deg,#d9bf8a,#f1e3bc 40%,#e6cfa0);color:#382b1d;box-shadow:0 20px 60px #0009;overflow:hidden}
#sideQuestDetails.story-journal[open]{display:flex}#sideQuestDetails::backdrop{background:#151412b5}
#sideQuestDetails .quest-popup-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-shrink:0}#sideQuestDetails h2{color:#603724;margin:4px 0;font:700 27px Georgia,serif}#sideQuestDetails small{letter-spacing:1.5px;font-size:10px}#sideQuestDetails .story-summary{margin:4px 0;font-size:12px}#sideQuestDetails .quest-picker{display:flex;align-items:center;gap:10px;margin:0;font-size:13px;flex-shrink:0}#sideQuestDetails select{min-width:0;flex:1;width:100%;min-height:40px;background:#f2e6c9;color:#382b1d;border:1px solid #96794d;padding:6px;font-size:13px}
#sideQuestDetails .story-status{font-size:12px;line-height:1.4;padding:6px 0;border-bottom:1px solid #91764b66}#sideQuestDetails .story-status[data-state=complete]{color:#40382d}#sideQuestDetails nav{display:flex;gap:6px;flex-shrink:0}#sideQuestDetails button{min-height:40px;background:#5c4631;color:#f2e2b9;border:1px solid #9b7b4e;border-radius:3px}#sideQuestDetails nav button{flex:1;font-size:13px}#sideQuestDetails nav button[aria-pressed=true]{background:#e3cb95;color:#4a2c18;border-color:#6a4b26}
#sideQuestDetails .side-quest-body{flex:1;min-height:70px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:8px 12px 8px 1px}#sideQuestDetails .side-quest-body section{margin:0 0 17px}#sideQuestDetails .side-quest-body h3{font:700 16px Georgia,serif;color:#6b3b24;margin:0 0 7px}#sideQuestDetails .side-quest-body p{font-size:14px;line-height:1.6;margin:5px 0;color:#382b1d}#sideQuestDetails .story-hint{padding:9px;border:1px dashed #8e754c;margin-bottom:12px;font-size:13px}#sideQuestDetails summary{cursor:pointer;min-height:30px}
#sideQuestDetails footer{flex-shrink:0;display:grid;gap:7px;border-top:1px solid #91764b66;padding-top:8px}#sideQuestDetails footer [hidden]{display:none!important}#sideQuestDetails .story-cost{font-size:12px;margin:0;line-height:1.4}#sideQuestDetails .story-cost:empty{display:none}#sideQuestDetails .side-quest-action{width:100%;min-height:44px;white-space:normal;padding:8px}#sideQuestDetails button:disabled{opacity:.55}
@media(max-width:600px){#sideQuestDetails.story-journal{width:96vw;height:94dvh;padding:13px;gap:7px}#sideQuestDetails h2{font-size:22px}#sideQuestDetails .quest-picker{display:grid;gap:3px;font-size:11px}#sideQuestDetails .story-status{font-size:11px}#sideQuestDetails .side-quest-body p{font-size:13px}#sideQuestDetails select{font-size:12px}#sideQuestDetails footer{gap:5px}}

#sideQuestDetails.story-journal>.quest-popup-heading,#sideQuestDetails.story-journal>footer{position:static;inset:auto;box-sizing:border-box;height:auto;min-height:0;max-height:none;width:auto;margin:0;transform:none;z-index:auto;box-shadow:none;background:none}
#sideQuestDetails.story-journal>.quest-popup-heading{padding:0;line-height:normal;align-items:flex-start}#sideQuestDetails .quest-popup-heading>div{flex:1;min-width:0}#sideQuestDetails .quest-popup-heading small,#sideQuestDetails .quest-popup-heading p{color:#6b4b2b}#sideQuestDetails .quest-popup-heading button{position:static;inset:auto;flex:0 0 40px;width:40px;height:40px;margin:0;padding:5px}#sideQuestDetails.story-journal>footer{display:grid;align-items:stretch;justify-content:stretch;padding:8px 0 0}#sideQuestDetails.story-journal>footer .quest-picker{color:#382b1d}

#sideQuestDetails .side-quest-action{font-size:14px;font-weight:700}#sideQuestDetails .story-feedback{font-size:12px;line-height:1.4;margin:0;color:#853822}#sideQuestDetails .story-feedback:empty{display:none}

/* Expedition QOL: clear headers, saved kits and ingredient-led recipe discovery. */
#bankWindow .bank-top{display:flex;align-items:center;gap:10px}#bankWindow .bank-top h2{flex:1;min-width:0}#bankWindow .bank-top button{width:auto;height:auto;min-width:40px;min-height:40px;padding:7px 12px;font-size:13px;line-height:1.3;flex:0 0 auto}#bankWindow .bank-top button[aria-label="Close bank"]{width:40px;padding:0;font-size:24px}
#bankWindow.showing-kits{width:min(770px,96vw)}#bankWindow .bank-kit-panel{overflow:auto;min-height:0;display:grid;gap:10px;padding:3px}#bankWindow .kit-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px}#bankWindow .kit-controls input,#bankWindow .kit-controls select,#bankWindow .bank-kit-panel>select{min-width:0;box-sizing:border-box;width:100%;min-height:40px;padding:8px;background:#29271e;color:#efe1b8;border:1px solid #8b7951}#bankWindow .kit-summary{font-size:13px;line-height:1.5;margin:0}#bankWindow .bank-kit-items{max-height:260px;overflow:auto;display:grid;gap:5px;padding:8px;background:#211f1b;border:1px solid #756c4c}#bankWindow .bank-kit-items>div{display:flex;align-items:center;gap:8px;font-size:13px;min-height:34px}#bankWindow .bank-kit-items .game-icon{width:28px;height:28px}#bankWindow .bank-kit-items small{margin-left:auto;color:#bdb89d;white-space:nowrap}#bankWindow .kit-problem{color:#ffbb94;font-size:13px;line-height:1.5;margin:0}#bankWindow .kit-feedback{margin:0;min-height:20px;color:#dbc385;font-size:13px}#bankWindow .kit-apply{font-weight:bold;min-height:44px}#bankWindow .kit-clear{justify-self:start;font-size:12px;background:transparent}
#recipeBook{box-sizing:border-box;width:min(920px,96vw);height:min(760px,94dvh);max-height:94dvh;padding:20px;overflow:hidden;background:#211f1b;color:#ecdfbe;border:2px solid #a88b54;border-radius:5px}#recipeBook[open]{display:flex;flex-direction:column;gap:12px}#recipeBook::backdrop{background:#151412aa}#recipeBook .recipe-book-heading{display:flex;gap:12px;justify-content:space-between;align-items:flex-start}#recipeBook h2{font:700 26px Georgia,serif;margin:4px 0;color:#edcf8a}#recipeBook small{font-size:11px;color:#c3bb9e}#recipeBook .recipe-book-heading button{min-width:40px;min-height:40px}#recipeBook button{background:#40382d;color:#f0dfb5;border:1px solid #8e8558;border-radius:3px;min-height:40px;padding:8px;font-size:13px}#recipeBook .recipe-book-controls{display:flex;gap:8px;flex-wrap:wrap}#recipeBook input,#recipeBook select{min-width:0;padding:9px;min-height:40px;background:#211f1b;color:#ecdfbe;border:1px solid #827753;font-size:13px}#recipeBook input{flex:1 1 220px}#recipeBook select{flex:1 1 150px}#recipeBook .recipe-count{margin:0;font-size:12px;color:#c2bea8}#recipeBook .recipe-item-filter:empty{display:none}#recipeBook .recipe-item-filter{display:flex;align-items:center;gap:10px;font-size:13px}#recipeBook .recipe-item-filter button{margin-left:auto}#recipeBook .recipe-book-pages{min-height:0;flex:1;display:grid;grid-template-columns:minmax(200px,34%) minmax(0,1fr);gap:16px}#recipeBook .recipe-result-list{overflow:auto;min-height:0;display:flex;flex-direction:column;gap:6px;padding-right:5px}#recipeBook .recipe-result-list button{display:grid;grid-template-columns:30px 1fr;column-gap:8px;text-align:left;flex-shrink:0}#recipeBook .recipe-result-list .game-icon{grid-row:span 2;width:28px;height:28px}#recipeBook .recipe-result-list small{grid-column:2;font-size:11px}#recipeBook .recipe-result-list button[aria-pressed=true]{background:#6b6740;border-color:#e8c576}#recipeBook .recipe-detail{min-width:0;overflow:auto;padding-right:7px}#recipeBook .recipe-detail h3{font:700 20px Georgia,serif;display:flex;align-items:center;gap:9px;color:#edcf8a;margin:3px 0 12px}#recipeBook .recipe-detail h3 .game-icon{width:36px;height:36px}#recipeBook .recipe-detail p{font-size:13px;line-height:1.5}#recipeBook .recipe-detail>button{width:100%;margin:7px 0}#recipeBook .recipe-materials{width:100%;font-size:12px;border-collapse:collapse;margin:12px 0}#recipeBook .recipe-materials th,#recipeBook .recipe-materials td{text-align:left;padding:9px 5px;border-bottom:1px solid #77744a66}#recipeBook .recipe-materials tr.ready td:first-child{color:#b6e29c}#recipeBook .recipe-materials tr.banked td:first-child{color:#ddcb85}#recipeBook .recipe-materials tr.missing td:first-child{color:#edb69b}#recipeBook .recipe-problem{color:#f1bb92}#recipeBook .recipe-can-make{color:#d4d0a2}#recipeBook details{font-size:13px;padding:8px;border:1px solid #77744a66}
.nearby-loot-dialog .loot-batch-controls{display:flex;gap:8px;flex-wrap:wrap}.nearby-loot-dialog .loot-batch-controls button{flex:1;min-height:44px}.nearby-loot-dialog .loot-controls{flex-wrap:wrap}.nearby-loot-dialog .loot-controls input{min-width:0;width:100%}
@media(max-width:600px){#recipeBook{padding:13px;gap:8px}#recipeBook .recipe-book-pages{grid-template-columns:1fr;grid-template-rows:minmax(90px,27%) minmax(0,1fr);gap:10px}#recipeBook .recipe-result-list{border-bottom:1px solid #8c7b4e;padding-bottom:7px}#recipeBook h2{font-size:22px}#recipeBook .recipe-book-controls{gap:6px}#recipeBook input{flex-basis:100%}#recipeBook select{font-size:12px;flex-basis:42%}#recipeBook .recipe-count{font-size:11px}#bankWindow .kit-controls{grid-template-columns:1fr}#bankWindow .bank-kit-items{max-height:220px}#bankWindow .bank-top h2{font-size:19px}#bankWindow .bank-top button{max-width:118px;font-size:12px}#bankWindow.showing-kits{height:94dvh}.nearby-loot-dialog header{gap:10px}}

.nearby-loot-dialog .loot-batch-controls button[hidden]{display:none!important}

#bankWindow.bank-workspace.showing-kits[open]{box-sizing:border-box;width:min(770px,96vw)!important;height:min(740px,94dvh)!important;display:flex!important;flex-direction:column;overflow:hidden!important;gap:8px}#bankWindow.showing-kits>.bank-top,#bankWindow.showing-kits>.bank-summary,#bankWindow.showing-kits>.bank-tabs{flex-shrink:0}#bankWindow.showing-kits .bank-kit-panel{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}#bankWindow .kit-scroll{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:10px;padding-right:5px}#bankWindow .kit-scroll>*{flex-shrink:0}#bankWindow .kit-footer{flex-shrink:0;display:flex;flex-wrap:wrap;gap:6px;border-top:1px solid #7e745055;padding-top:8px}#bankWindow .kit-footer .kit-apply{width:100%}#bankWindow .kit-footer .kit-feedback{flex:1;align-self:center;font-size:12px}#bankWindow .bank-kit-items>div>span:nth-child(2){flex:1;min-width:0}#bankWindow .bank-kit-items small{flex:0 0 auto}

#bankWindow.bank-workspace.showing-kits:not([open]){display:none!important}

/* SCHWARTZ: static illustrated portrait, shared by arrival and conversation. */
#firstAdventure .arrival-portrait{width:128px;height:128px;border-radius:12px}
#firstAdventure .arrival-portrait img,#islandDialogue .arrival-portrait img{display:block;width:100%;height:100%;object-fit:contain}
#islandDialogue .arrival-portrait{width:112px;height:112px}
@media(max-height:650px){#firstAdventure .arrival-portrait{width:82px;height:82px}}

/* LedgerScape UI materials: shared warm stone and restrained bronze. */
:root{--ls-bg:#151412;--ls-panel:#211f1b;--ls-inset:#191714;--ls-control:#353029;--ls-line:#5d503b;--ls-text:#e5dcc9;--ls-muted:#b1a796;--ls-gold:#d1b479;--ls-hover:#443a2c}
body.focus-ui{--ui-bg:var(--ls-bg);--ui-panel:var(--ls-panel);--ui-line:var(--ls-line);--ui-text:var(--ls-text);--ui-muted:var(--ls-muted);--ui-gold:var(--ls-gold);--ink:var(--ls-text);--muted:var(--ls-muted);--gold:var(--ls-gold);--line:var(--ls-line);--panel:var(--ls-panel)}
body.focus-ui dialog:not(#welcome):not(.story-journal){background:var(--ls-panel);color:var(--ls-text);border:1px solid var(--ls-line);border-radius:4px;box-shadow:0 12px 36px #0008;font-family:"Segoe UI",Arial,sans-serif;padding:16px!important}
body.focus-ui dialog:not(#welcome)::backdrop{background:#080706b3;backdrop-filter:none}
body.focus-ui dialog:not(#welcome):not(.story-journal) :is(h1,h2,h3,h4){color:var(--ls-gold);text-shadow:none;letter-spacing:0}
body.focus-ui dialog:not(#welcome):not(.story-journal) h2{font:700 22px/1.25 Georgia,serif}
body.focus-ui dialog:not(#welcome):not(.story-journal) h3{font-size:16px;line-height:1.3}
body.focus-ui dialog:not(#welcome):not(.story-journal) :is(p,small,label,select,.unlock-row,.skill-detail){font:14px/1.45 "Segoe UI",Arial,sans-serif}
body.focus-ui dialog:not(#welcome):not(.story-journal) :is(button,summary){font:14px/1.3 "Segoe UI",Arial,sans-serif;text-shadow:none;letter-spacing:0}
body.focus-ui dialog:not(#welcome):not(.story-journal) button{background:var(--ls-control);color:var(--ls-text);border:1px solid var(--ls-line);border-radius:3px;box-shadow:none}
body.focus-ui dialog:not(#welcome):not(.story-journal) button:hover:not(:disabled){background:var(--ls-hover);border-color:var(--ls-gold)}
body.focus-ui dialog:not(#welcome):not(.story-journal) button:is([aria-pressed=true],[aria-selected=true]){background:#55442c;border-color:var(--ls-gold);color:#f1dfb5}
body.focus-ui dialog:not(#welcome):not(.story-journal) :is(input,select,textarea){background:var(--ls-inset);color:var(--ls-text);border:1px solid var(--ls-line);border-radius:3px;box-shadow:none}
body.focus-ui dialog:not(#welcome):not(.story-journal) :is(button,input,select,textarea,summary):focus-visible{outline:2px solid var(--ls-gold);outline-offset:2px}
body.focus-ui dialog:not(#welcome):not(.story-journal) progress{accent-color:#ad915b}
body.focus-ui .menu-choice{border-radius:3px;box-shadow:none}
body.focus-ui .skill-milestone{background:var(--ls-inset);border:1px solid var(--ls-line);border-left:3px solid #a78b56;border-radius:2px;padding:10px 12px}
body.focus-ui :is(.qol-dialog .qol-heading,.qol-dialog .qol-contract-active,.qol-collection-detail,#runecrafting .rune-body,#runecrafting .rune-cast){background:var(--ls-inset);border-color:var(--ls-line)}
body.focus-ui .qol-dialog .qol-heading{background:var(--ls-panel);border-bottom:1px solid var(--ls-line)}
body.focus-ui .qol-contract-offer{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;background:transparent;border:0;border-bottom:1px solid var(--ls-line);padding:12px 0;margin:0}
body.focus-ui .qol-contract-offer .contract-row-heading{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;grid-column:1;min-width:0}
body.focus-ui .qol-contract-offer h3{margin:0;font:600 15px/1.35 "Segoe UI",Arial,sans-serif;color:var(--ls-text)}
body.focus-ui .qol-contract-offer small{color:var(--ls-muted);font-size:12px}
body.focus-ui .qol-contract-offer p{margin:0;font-size:13px}
body.focus-ui .qol-contract-offer>.contract-accept{grid-column:2;grid-row:1/3;align-self:start;min-width:76px;max-width:140px;margin:0}
body.focus-ui .qol-contract-offer>details{grid-column:1/-1;margin:0;border:0;padding:0;color:var(--ls-muted)}
body.focus-ui .qol-contract-offer details summary{width:fit-content;cursor:pointer;font-size:12px}
body.focus-ui .qol-contract-offer details p{margin:6px 0}
body.focus-ui .qol-contract-problem{grid-column:1/-1;color:var(--ls-muted)}
body.focus-ui .qol-contract-filters{gap:4px;margin:10px 0}
body.focus-ui .qol-contract-filters button{min-height:36px;font-size:13px}
body.focus-ui .qol-dialog .qol-collection-section{border-color:var(--ls-line)}
body.focus-ui .qol-dialog .qol-collection-items article{background:var(--ls-inset);border-color:var(--ls-line);border-radius:2px}
body.focus-ui .qol-dialog .qol-collection-items article.found{border-color:#a58a55}
body.focus-ui .qol-dialog .qol-collection-items article :is(small,p),body.focus-ui #activityFeedback .qol-activity-detail{color:var(--ls-muted)}
body.focus-ui #activityFeedback{background:var(--ls-panel);border:1px solid var(--ls-line);border-radius:3px;color:var(--ls-text)}
body.focus-ui #activityFeedback strong{color:var(--ls-gold)}
body.focus-ui #firstAdventure.arrival-letter{width:min(420px,calc(100vw - 24px));padding:24px!important;text-align:center}
body.focus-ui #firstAdventure .arrival-portrait{width:112px;height:112px;margin:0 auto 14px;background:#2b2720;border:1px solid #806b48;border-radius:4px;box-shadow:none}
body.focus-ui #firstAdventure h2{font-size:25px;margin:8px 0 12px}
body.focus-ui #firstAdventure .arrival-dialogue{font:15px/1.55 "Segoe UI",Arial,sans-serif;margin:0 0 12px;color:var(--ls-text)}
body.focus-ui #firstAdventure .arrival-signature{font:12px/1.4 "Segoe UI",Arial,sans-serif;color:var(--ls-muted);margin:0 0 20px}
body.focus-ui #firstAdventure .arrival-signature span{font:inherit;color:inherit}
body.focus-ui #firstAdventure #beginAdventure{background:#57462e;border:1px solid #9b8051;font:600 14px "Segoe UI",Arial,sans-serif;min-height:44px}
body.focus-ui #firstAdventure #skipAdventure{background:transparent;border:0;color:var(--ls-muted);font-size:13px}
@media(max-width:540px){body.focus-ui dialog:not(#welcome):not(.story-journal){padding:12px!important}body.focus-ui dialog:not(#welcome):not(.story-journal) h2{font-size:21px}body.focus-ui .qol-contract-offer{gap:4px 8px}body.focus-ui .qol-contract-offer>.contract-accept{max-width:112px;min-width:68px}body.focus-ui #firstAdventure.arrival-letter{padding:20px!important}}
@media(max-height:650px){body.focus-ui #firstAdventure .arrival-portrait{width:82px;height:82px;margin-bottom:10px}}

/* Exchange offer slots retain their arrangement, with the same stone finish. */
body.focus-ui .market-dialog :is(.ge-slot,.ge-empty,.exchange-card,.exchange-form){background:var(--ls-inset);border:1px solid var(--ls-line);box-shadow:none;border-radius:2px}
body.focus-ui .market-dialog .ge-slot :is(strong,small){color:var(--ls-text);text-shadow:none;font-family:"Segoe UI",Arial,sans-serif}
body.focus-ui .market-dialog :is(.ge-footnote,.ge-balance,.ge-note){color:var(--ls-muted);font-family:"Segoe UI",Arial,sans-serif}

/* Keep primary banking compact; secondary controls remain available on demand. */
#bankWindow .bank-extra-controls{margin:0 0 6px;color:var(--ls-muted,#b1a796)}
#bankWindow .bank-extra-controls summary{cursor:pointer;min-height:30px;align-content:center;font-size:12px}
#bankWindow .bank-extra-controls .bank-controls{margin-top:5px}
#bankWindow .bank-extra-controls .bank-order-hint{flex-basis:100%;margin:3px 0}
#bankWindow .bank-transfer-status[hidden]{display:none}

/* Optional first-adventure feedback: compact, with no extra world rendering. */
.first-adventure-milestones{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:0;margin:8px 0;list-style:none;font:11px/1.35 "Segoe UI",Arial,sans-serif;color:var(--ls-muted)}
.first-adventure-milestones li{padding-top:5px;border-top:3px solid var(--ls-line);overflow-wrap:anywhere}
.first-adventure-milestones li.complete{border-color:var(--ls-gold,#b89c63);color:var(--ls-text)}
.first-adventure-milestones[hidden]{display:none}
.arrival-reward{font:12px/1.5 "Segoe UI",Arial,sans-serif;color:var(--ls-text);margin:14px 0 8px}
.arrival-freedom{font:12px/1.5 "Segoe UI",Arial,sans-serif;color:var(--ls-muted);margin:8px 0 16px}
#adventureComplete{width:min(440px,calc(100vw - 24px))}
#adventureComplete .journey-actions{display:flex;flex-direction:column;gap:6px}
#adventureComplete .journey-actions button{white-space:normal;min-height:38px}

#adventureComplete .graduation-services{margin-top:14px;color:var(--ls-muted);font-size:12px}
#adventureComplete .graduation-services summary{cursor:pointer;min-height:30px;align-content:center}

/* Reuse the approved login wordmark, including its cached image in login.css. */
html:has(body.booting),body.booting{background:#000}
#startupScreen{background:#000;color:#bcb6aa;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;padding:32px 24px;box-sizing:border-box;font:12px/1.6 Georgia,serif}
#startupScreen .startup-logo{width:min(520px,82vw);margin:0 0 34px;padding:0}
#startupScreen .startup-logo strong{width:100%;height:auto;aspect-ratio:3/1}
#startupMessage{margin:0;text-transform:uppercase;letter-spacing:.2em;font:11px/1.8 system-ui,sans-serif;max-width:360px;text-wrap:balance}
.startup-progress{display:flex;align-items:center;gap:12px;width:min(300px,76vw);margin-top:22px}
.startup-track{flex:1;height:4px;background:#24211b;overflow:hidden;border-radius:2px}
#startupFill{display:block;width:100%;height:100%;background:linear-gradient(90deg,#8d7144,#d8bc7e);transform-origin:left;transition:transform .18s linear}
#startupPercent{width:36px;text-align:right;color:#d8c49a;font:11px/1.4 system-ui,sans-serif;font-variant-numeric:tabular-nums}
#startupDetail{margin:14px 0 0;min-height:20px;color:#8e897f;font:11px/1.7 Georgia,serif;text-align:center;max-width:300px}
#startupScreen[data-state="error"] .startup-progress,#startupScreen[data-state="error"] #startupDetail{display:none}
#startupScreen[data-state="error"] #startupMessage{text-transform:none;letter-spacing:.025em;font-size:13px;color:#d3c9b7}
#startupScreen #startupRetry{margin:24px 0 0;padding:10px 24px;background:#191713;border:1px solid #766344;border-radius:3px;color:#ead8b3;font:12px system-ui,sans-serif;cursor:pointer}
#startupRetry:hover{background:#29231a}
#startupRetry:focus-visible{outline:2px solid #d8bb81;outline-offset:4px}
@media(max-width:480px){#startupScreen .startup-logo{width:min(360px,88vw);margin-bottom:28px}#startupMessage{font-size:10px;letter-spacing:.16em}}
@media(prefers-reduced-motion:reduce){#startupFill{transition:none}}

@media(min-width:1001px){
 .classic-ui.focus-ui aside:has(#adventureBody[data-page-key="pack"]){width:380px;}
 .classic-ui.focus-ui:has(#adventureBody[data-page-key="pack"]) header,
 .classic-ui.focus-ui:has(#adventureBody[data-page-key="pack"]) .camera-controls{right:400px;}
}
/* Field guide: one region and activity at a time, item art from the game. */
#worldFieldGuide{width:min(820px,94vw);height:min(680px,92dvh);max-height:92dvh;box-sizing:border-box;padding:18px;background:var(--ls-panel,#282520);color:var(--ls-text,#eee4cf);border:1px solid #8b7652;overflow:hidden}
#worldFieldGuide[open]{display:flex;flex-direction:column;gap:10px}
#worldFieldGuide .qol-heading{margin:0;flex:none}#worldFieldGuide h2{margin:0;font-size:21px}
#worldFieldGuide>select{width:100%;min-height:36px;background:#363129;color:#eee4cf;border:1px solid #6e604b;padding:6px}
.field-tabs,.field-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.field-tabs button{flex:1}.field-tabs button[aria-pressed=true]{background:#685536;color:#fff1ce}
.field-body{flex:1;min-height:0;overflow:auto}.field-body p{margin:4px 0 9px;font-size:13px;line-height:1.35}.field-prep{color:#cfbd99}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.field-card{background:#322e27;border:1px solid #51483b;padding:12px;min-width:0;border-radius:4px}.field-card h3{margin:0 0 7px;display:flex;align-items:center;gap:9px;font-size:15px}.field-card h3 svg,.field-card h3 img{width:36px;height:36px;flex:none}.field-card small{display:block;line-height:1.4;font-size:12px;color:#d3c3a4}.field-card button{margin-top:8px;font-size:12px}.field-actions{flex:none;justify-content:space-between}.field-actions span{font-size:12px}
@media(max-width:600px){#worldFieldGuide{padding:12px;width:96vw;height:92dvh;gap:7px}.field-grid{grid-template-columns:1fr}.field-card{padding:10px}.field-tabs button{padding:7px 3px;font-size:12px}.field-body p{font-size:12px}}
.field-drops{display:flex;gap:8px;margin-top:8px}.field-drops span{display:flex;align-items:center;gap:4px;font-size:11px;flex:1;min-width:0}.field-drops svg,.field-drops img{width:28px;height:28px;flex:none}
#worldFieldGuide{height:auto;min-height:0}#worldFieldGuide>.qol-heading{position:static;display:flex;align-items:center;justify-content:space-between;inset:auto;width:auto;height:auto;padding:0;background:none;box-shadow:none;z-index:auto}#worldFieldGuide .field-body{flex:0 1 auto}#worldFieldGuide .field-actions{margin-top:4px}#worldFieldGuide>select{flex:none}@media(max-width:600px){#worldFieldGuide{height:auto}#worldFieldGuide h2{font-size:18px}}
#worldFieldGuide{inset:50% auto auto 50%;transform:translate(-50%,-50%);margin:0}
.gear-compare-panel{display:flex;flex-direction:column;gap:4px;min-width:0;text-align:left;color:#eee2c9;font-size:12px;line-height:1.35;white-space:normal}
.gear-compare-panel>small{color:#c8bfae;font-size:11px;white-space:normal}
.gear-verdict{font-size:13px}
.gear-upgrade,.stat-gain,.equipment-upgrade-mark{color:#91e4a0}
.gear-downgrade,.stat-loss{color:#ff9f95}
.gear-compare-panel .stat-gain>strong,.gear-compare-panel .gear-verdict.gear-upgrade{color:#91e4a0!important}
.gear-compare-panel .stat-loss>strong,.gear-compare-panel .gear-verdict.gear-downgrade{color:#ff9f95!important}
.gear-tradeoff,.gear-style,.gear-locked{color:#ebc576}
.gear-delta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 8px}
.gear-delta{display:grid;grid-template-columns:1fr auto;gap:0 5px;padding:3px 5px;background:#ffffff06;border-radius:3px}
.gear-delta span{font-size:11px}.gear-delta strong{font-size:13px}.gear-delta small{grid-column:1/-1;color:#c8bfae;font-size:10px}
.equipment-guide-card>.gear-compare-panel{grid-column:1/-1}
.inventory-menu-title>.gear-compare-panel{grid-column:1/-1;clear:both;margin-top:7px}
.classic-ui.focus-ui .inventory-slot .inventory-upgrade{position:absolute;top:1px;right:2px;display:block;min-width:14px;padding:0 2px;border-radius:3px;background:#181714e8;font:bold 13px/17px Arial,sans-serif;pointer-events:none}
.equipment-upgrade-mark{font-size:10px;display:block}
#adventureBody .gear-suggestion{color:#91e4a0;white-space:normal;font-size:11px;margin:4px 0 0;width:100%}
#adventureBody .equipment-preview.gear-compare-panel{padding:6px;margin:5px 0}
#adventureBody[data-page-key="equipment"] .equipment-grid{flex:0 0 76px;min-height:76px;max-height:76px;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));padding:0;gap:3px}
#adventureBody[data-page-key="equipment"] .equipment-slot[data-slot]{grid-column:auto;grid-row:auto;position:relative;gap:0;padding:0}
#adventureBody[data-page-key="equipment"] .equipment-slot .game-icon{width:22px!important;height:22px!important}
#adventureBody[data-page-key="equipment"] .equipment-upgrade-mark{position:absolute;right:2px;top:1px;font-size:0}
#adventureBody[data-page-key="equipment"] .equipment-upgrade-mark::after{content:'↑';font:bold 13px Arial;background:#211f1b}
#adventureBody[data-page-key="equipment"] .equipment-preview{gap:3px;margin:3px 0;padding:3px 5px}
#adventureBody[data-page-key="equipment"] .equipment-preview>small{display:none}
#adventureBody[data-page-key="equipment"] .equipment-preview .gear-delta-grid{display:flex;flex-wrap:wrap;gap:3px 8px}
#adventureBody[data-page-key="equipment"] .equipment-preview .gear-delta{display:flex;align-items:center;gap:4px;padding:0;background:none}
#adventureBody[data-page-key="equipment"] .equipment-preview .gear-delta small{display:none}
#adventureBody[data-page-key="equipment"] .equipment-detail{padding:2px 0}
#adventureBody[data-page-key="equipment"]{gap:2px}
#adventureBody[data-page-key="equipment"]>p{margin:0!important}
#adventureBody[data-page-key="equipment"]>.work-rewards{display:none!important}
@media(max-width:700px) and (min-height:760px){
 #adventureBody[data-page-key="equipment"] .equipment-grid{flex-basis:112px;min-height:112px;max-height:112px}
 #adventureBody[data-page-key="equipment"] .equipment-slot .game-icon{width:30px!important;height:30px!important}
 #adventureBody[data-page-key="equipment"] .equipment-preview{padding:8px;gap:5px}
 #adventureBody[data-page-key="equipment"] .equipment-preview>small{display:block}
 #adventureBody[data-page-key="equipment"] .equipment-preview .gear-delta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
 #adventureBody[data-page-key="equipment"] .equipment-preview .gear-delta{display:grid;grid-template-columns:1fr auto;padding:4px;background:#ffffff06}
 #adventureBody[data-page-key="equipment"] .equipment-preview .gear-delta small{display:block}
}
.bell-boon-dialog{width:min(470px,94vw);padding:18px;background:#282520;color:#eee4cf;border:1px solid #8b7652;box-sizing:border-box}
.bell-boon-dialog h2{margin:0 0 8px}.bell-boon-dialog p{font-size:13px;line-height:1.4}
.bell-boon-dialog>button{width:100%;display:grid;grid-template-columns:42px 1fr;gap:4px 10px;text-align:left;padding:12px;margin:8px 0;background:#353027;color:#eee4cf;border:1px solid #756444;border-radius:4px}
.bell-boon-dialog .game-icon{grid-row:1/3;width:38px;height:38px}.bell-boon-dialog strong{font-size:14px}.bell-boon-dialog span{font-size:12px;line-height:1.4}.bell-boon-dialog>button:last-child{display:block;text-align:center}

/* Bank gear uses the same loadout comparison as inventory. */
#bankWindow .bank-gear-badge{position:absolute;right:3px;top:1px;font-size:14px;line-height:16px;text-shadow:0 1px 2px #000;pointer-events:none;color:#d5c6a8}
#bankWindow .bank-gear-badge.gear-upgrade{color:#91e4a0}
#bankWindow .bank-gear-badge.gear-downgrade,#bankWindow .bank-gear-badge.gear-locked{color:#ff9f95}
#bankWindow .bank-gear-preview,#bankWindow .bank-gear-details{display:flex;flex-direction:column;gap:6px;min-width:0;font-size:12px;line-height:1.4;text-align:left}
#bankWindow .bank-gear-preview{margin-top:12px;padding:10px;border:1px solid var(--ls-border,#534c37);border-radius:4px;background:var(--ls-surface,#25231f)}
#bankWindow .bank-gear-preview[hidden]{display:none}
#bankWindow .bank-gear-details{width:100%}
#bankWindow .bank-gear-preview>small,#bankWindow .bank-gear-details>small{color:#c8bfae;white-space:normal}
#bankWindow .bank-context .gear-delta strong{width:auto}

#worldAtlas .atlas-controls{display:flex;align-items:center;gap:8px;margin-top:8px}
#worldAtlas .atlas-controls output{min-width:48px;text-align:center;font-variant-numeric:tabular-nums}
#worldAtlasCanvas{touch-action:none;cursor:grab;max-height:calc(94dvh - 180px)}
#worldAtlasCanvas:active{cursor:grabbing}
#worldAtlasCanvas:focus-visible{outline:2px solid #c9aa69;outline-offset:2px}

#worldAtlasCanvas{width:100%;height:min(60dvh,600px);max-height:calc(94dvh - 180px);object-fit:fill}

/* A conversation is one next step; the complete journal is an explicit destination. */
body.focus-ui #questDetails.quest-card,body.focus-ui #islandDialogue.guide-conversation,body.focus-ui #firstAdventure.arrival-letter{box-sizing:border-box;width:min(420px,calc(100vw - 24px));height:auto;max-height:calc(100dvh - 32px);padding:18px!important;overflow:auto;text-align:left}
#questDetails.quest-card :is(.journal-tabs,.quest-picker,.journal-search,#journalSummary,.quest-popup-heading small,.quest-popup-heading>button){display:none!important}
#questDetails.quest-card .quest-popup-heading{margin:0 0 8px;padding:0}
#questDetails.quest-card .journal-meta{font-size:12px;gap:6px;flex-wrap:wrap}
#questDetails.quest-card #questDetailsBody{overflow:visible;max-height:none;min-height:0}
#questDetails.quest-card #questDetailsBody>section{padding:0;margin:10px 0}
#questDetails.quest-card #questDetailsBody>section>h3{display:none}
#questDetails.quest-card p{margin:8px 0}
.quest-card-actions,#islandDialogue .guide-answers{display:flex;gap:8px;margin:14px 0 0}
.quest-card-actions button,#islandDialogue .guide-answers button{min-height:44px;margin:0;flex:1}
body.focus-ui #questDetails .quest-next-action,body.focus-ui #islandDialogue .guide-answers button:first-child{background:#57462e;border-color:#9b8051;font-weight:600}
.quest-card-details,.guide-more{font-size:13px;margin:10px 0;color:var(--ls-muted,#b5aa98)}
.quest-card-details summary,.guide-more summary{cursor:pointer;padding:6px 0}
#islandDialogue .guide-more>div{display:grid;gap:6px;margin-top:6px}
#islandDialogue .guide-more button{min-height:40px;text-align:left}
body.focus-ui #islandDialogue .arrival-portrait,body.focus-ui #firstAdventure .arrival-portrait{float:left;width:56px;height:56px;margin:0 12px 8px 0;border:0;box-shadow:none}
#islandDialogue .arrival-portrait img,#firstAdventure .arrival-portrait img{width:100%;height:100%;object-fit:cover}
#islandDialogue .speaker-place,#firstAdventure .arrival-signature{display:none}
body.focus-ui #islandDialogue h2,body.focus-ui #firstAdventure h2{font-size:21px;margin:8px 0 14px}
#islandDialogue>p,#firstAdventure .arrival-dialogue{clear:both}
#firstAdventure .journey-actions{display:flex;gap:8px}
#firstAdventure .journey-actions button{flex:1;min-height:44px}
body.focus-ui #sideQuestDetails.story-journal.quest-card{width:min(440px,calc(100vw - 24px));height:auto;max-height:calc(100dvh - 32px);padding:18px;border:1px solid var(--ls-line);background:var(--ls-panel);color:var(--ls-text);font-family:'Segoe UI',Arial,sans-serif}
#sideQuestDetails.quest-card>.quest-picker,#sideQuestDetails.quest-card>nav,#sideQuestDetails.quest-card .story-summary,#sideQuestDetails.quest-card .quest-popup-heading small,#sideQuestDetails.quest-card .quest-popup-heading>button{display:none}
#sideQuestDetails.quest-card .side-quest-body{min-height:0;max-height:46dvh;overflow:auto}
body.focus-ui #sideQuestDetails.quest-card :is(h2,h3){color:var(--ls-gold);text-shadow:none}
body.focus-ui #sideQuestDetails.quest-card :is(p,small,.story-status){color:var(--ls-text)}
body.focus-ui #sideQuestDetails.quest-card :is(button,select){background:var(--ls-control);color:var(--ls-text);border:1px solid var(--ls-line);border-radius:3px;min-height:44px}
body.focus-ui #sideQuestDetails.quest-card .side-quest-action{background:#57462e;border-color:#9b8051}
#sideQuestDetails .side-quest-close{margin-left:8px}
body.focus-ui #questDetails.quest-card,body.focus-ui #islandDialogue.guide-conversation,body.focus-ui #firstAdventure.arrival-letter,body.focus-ui #sideQuestDetails.story-journal.quest-card{height:fit-content;min-height:0;margin:auto}
body.focus-ui #islandDialogue .guide-answers{flex-direction:row;padding-top:0;border:0}
body.focus-ui #islandDialogue .guide-answers button{text-align:center;padding:10px}
#islandDialogue .guide-answers button::before{content:none}
body.focus-ui #questDetails.quest-card[open]{width:min(420px,calc(100vw - 24px))!important;height:fit-content!important;max-height:calc(100dvh - 32px)!important}
#questDetails.quest-card .journal-meta{display:flex;gap:6px 12px}
body.focus-ui #questDetails.quest-card .quest-next-action{background:#57462e!important;border-color:#9b8051!important;font-weight:600}

/* Keep equipment decisions visible; reveal the numbers only on request. */
#adventureBody[data-page-key="equipment"]{overflow-y:auto!important;gap:4px}
#adventureBody[data-page-key="equipment"] .equipment-grid{flex:0 0 94px;min-height:94px;max-height:94px;gap:5px}
#adventureBody[data-page-key="equipment"] .equipment-slot{font-size:10px;padding:3px}
#adventureBody[data-page-key="equipment"] .equipment-detail{padding:3px 2px}
#adventureBody[data-page-key="equipment"] .equipment-detail p{white-space:normal;text-overflow:clip;line-height:1.4;margin:2px 0 5px}
#adventureBody[data-page-key="equipment"] .equipment-swap.single-choice{grid-template-columns:1fr}
#adventureBody[data-page-key="equipment"] .equipment-swap select[hidden],#adventureBody[data-page-key="equipment"] .equipment-action-status[hidden]{display:none!important}
#adventureBody[data-page-key="equipment"] .equipment-action-status{color:#c9bda2;font-size:11px;margin:6px 0 0}
#adventureBody[data-page-key="equipment"] .equipment-more,#adventureBody[data-page-key="equipment"] .equipment-style-options{flex-shrink:0;order:3;margin:0;padding:0;border:0;border-top:1px solid #6c604b66;background:transparent;font-size:12px}
#adventureBody[data-page-key="equipment"] .equipment-style-options{order:4}
#adventureBody[data-page-key="equipment"] details>summary{cursor:pointer;padding:8px 3px;color:#d8c6a0;min-height:36px;box-sizing:border-box}
#adventureBody[data-page-key="equipment"] .equipment-more>p{font-size:11px;line-height:1.5;margin:6px 3px}
#adventureBody[data-page-key="equipment"] .equipment-more>button{width:100%;min-height:40px;margin:4px 0}
#adventureBody[data-page-key="equipment"] .equipment-styles button{min-height:40px!important;font-size:11px!important}

/* Selected raw fish and the one-action cooking prompt. */
.inventory-slot.item-selected{outline:2px solid #edcc79!important;outline-offset:-3px;background:#66502d!important;box-shadow:inset 0 0 12px #e6c47166!important}
#inventoryUseHint{position:fixed;z-index:650;left:50%;bottom:18px;transform:translateX(-50%);display:flex;align-items:center;gap:12px;max-width:calc(100vw - 24px);box-sizing:border-box;padding:8px 12px;background:#29251ff5;color:#efdfbd;border:1px solid #b89b60;border-radius:5px;font-size:13px}
#inventoryUseHint[hidden]{display:none}
#inventoryUseHint button{min-height:36px;margin:0;padding:4px 10px}
body.focus-ui dialog.cooking-simple[open]{width:min(340px,calc(100vw - 24px))!important;height:fit-content!important;min-height:0!important;max-height:calc(100dvh - 32px)!important;margin:auto!important;padding:18px!important;background:#292620;color:#eee3ca;border:1px solid #9a8253;border-radius:5px;box-sizing:border-box;overflow:auto}
.cooking-simple h2{font-size:22px;margin:0 0 12px}
.cooking-simple p{font-size:13px;line-height:1.45;margin:8px 0}
.cooking-simple select{width:100%;min-height:40px}
.cooking-simple [hidden]{display:none!important}
.cooking-simple-actions{display:flex;gap:8px;margin-top:16px}
.cooking-simple-actions button{flex:1;min-height:44px;margin:0}
.cooking-simple-actions button:first-child:not(:disabled){background:#625033;border-color:#b99b60}
@media(max-width:600px){#inventoryUseHint{bottom:auto;top:48px;font-size:12px}}

#startupScreen[data-state="enter"] .startup-progress,#startupScreen[data-state="enter"] #startupDetail{display:none}
#startupScreen #startupEnter{margin:20px 0 0;padding:14px 32px;border:1px solid #b69758;border-radius:3px;background:#6e542c;color:#fff0cd;font:600 16px Georgia,serif;cursor:pointer}
#startupEnter:hover{background:#886939}
#startupEnter:focus-visible{outline:2px solid #e1c88e;outline-offset:4px}
/* Inventory: a consistent four-column pack, restrained slots and optional details. */
.classic-ui.focus-ui #adventureBody[data-page-key="pack"]{overflow-y:auto!important;overflow-x:hidden!important;padding:6px 0;gap:4px;scrollbar-width:none}
.classic-ui.focus-ui #adventureBody[data-page-key="pack"]::-webkit-scrollbar{display:none;width:0;height:0}
.classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-heading{padding:2px 4px;margin:0;color:#eee3cd;align-items:center}
.classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-heading strong{font:15px Georgia,serif;color:#e5cf9c}
.classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-heading span{font-size:11px;color:#b6a88e}
.classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-toolbar{padding:0 4px;margin:0}
.classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-grid{flex:0 0 auto;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(7,44px);gap:2px;padding:6px;background:#342f27;border:1px solid #73634a;box-shadow:inset 0 0 10px #0005;min-height:0;box-sizing:border-box}
.classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-slot{height:44px;min-height:44px;border:1px solid transparent;border-color:transparent!important;border-radius:2px;background:transparent;box-shadow:none;padding:2px;cursor:pointer}
.classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-slot.empty-slot{cursor:default;background:#211d1818;border-color:#bca77a09}
.classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-slot:hover,.classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-slot:focus-visible{background:#a58a4930;border-color:#bfa66e!important;outline:0}
.classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-slot.item-selected{border-color:#f2d181!important;outline:1px solid #f2d181;outline-offset:-2px;background:#b193423b}
.classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-slot .game-icon{width:38px!important;height:38px!important;filter:drop-shadow(1px 2px 1px #0008)}
.classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-upgrade:empty{display:none}
.classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-readout{flex:none;min-height:15px;padding:2px 5px;font-size:11px;line-height:15px;color:#dacaac;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.classic-ui.focus-ui .inventory-dragging{opacity:.4}
.inventory-click-settings{border-top:1px solid #78644566;margin-top:4px;padding:4px;font-size:11px}
.inventory-click-settings summary{cursor:pointer;color:#bdb09a;padding:5px}
.inventory-menu-comparison{padding:8px;max-height:45vh;overflow:auto}
.classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-toolbar[hidden]{display:none}
.classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-heading strong{margin-right:auto}
.classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-heading{gap:10px}
.classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-tools summary{border:0;background:transparent;padding:5px 0}
@media(min-width:1001px) and (max-height:800px){
 .classic-ui.focus-ui aside:has(#adventureBody[data-page-key="pack"]) #minimap{height:85px}
 .classic-ui.focus-ui aside:has(#adventureBody[data-page-key="pack"]) .map-key{display:none}
 .classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-grid{grid-template-rows:repeat(7,36px)}
 .classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-slot{height:36px;min-height:36px}
 .classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-slot .game-icon{width:32px!important;height:32px!important}
}
@media(max-width:1000px) and (min-height:501px){
 .classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-grid{grid-template-rows:repeat(7,46px)}
 .classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-slot{height:46px;min-height:46px}
}

/* One stable character panel: map, vitals, icon rail and a single active page. */
.classic-ui.focus-ui #adventure{padding:0 8px 8px;background:var(--ls-panel,#2d2923)}
.classic-ui.focus-ui #adventureTabs{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;padding:5px 0;margin:0;border-bottom:1px solid #746044;overflow:visible}
.classic-ui.focus-ui #adventureTabs button,.classic-ui.focus-ui #adventureTabs button:nth-child(n+4):not(:nth-child(6)){height:39px;min-height:39px;padding:5px 2px;gap:0;flex-direction:row;border:1px solid #695b45;border-radius:3px;background:linear-gradient(#463e32,#302b24);color:#ddc79e}
.classic-ui.focus-ui #adventureTabs button[aria-pressed=true]{background:linear-gradient(#795d35,#513d27);border-color:#c5a368;box-shadow:inset 0 -2px #e0b975}
.classic-ui.focus-ui #adventureTabs button:hover{border-color:#d0b27b;background:#554633}
.classic-ui.focus-ui #adventureTabs button .game-icon{width:27px;height:27px;margin:0;filter:drop-shadow(0 1px 1px #0009)}
.panel-cog{font:27px/1 Georgia,serif;color:#cab68d}
.classic-ui.focus-ui #adventure>.panel-heading{display:flex;align-items:center;justify-content:space-between;flex:none;height:35px;margin:0;padding:0 3px;border:0;font:15px Georgia,serif;color:#e7d3ab;letter-spacing:0}
.classic-ui.focus-ui #openGameMenu{min-height:28px;height:28px;padding:0 7px;margin:0;background:transparent;border:1px solid transparent;color:#c5b28d;font-size:15px;letter-spacing:2px}
.classic-ui.focus-ui #openGameMenu:hover{border-color:#8c7550;background:#43392c}
.classic-ui.focus-ui #adventureBody{overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;padding:4px 0 0}
.classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-heading strong{display:none}
.classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-heading{justify-content:space-between;padding:0 4px;min-height:24px}
.classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-grid{grid-template-rows:repeat(7,42px);border:0;box-shadow:none;background:#342f27;padding:4px;gap:2px}
.classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-slot{height:42px;min-height:42px}
.classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-slot .game-icon{width:36px!important;height:36px!important}
.classic-ui.focus-ui #gameMenu{width:min(340px,calc(100vw - 24px));height:fit-content;padding:16px;background:var(--ls-panel,#2d2923);color:var(--ls-text,#eee4cf);border:1px solid #9d8257}
.classic-ui.focus-ui #gameMenu .quick-tools{display:grid;grid-template-columns:1fr;gap:7px;padding:8px 0;background:none;border:0}
.classic-ui.focus-ui #gameMenu .quick-tools button{min-height:42px;font-size:14px;text-align:left;padding:8px 12px}
.classic-ui.focus-ui #gameMenu #liveRanking{display:flex;flex-wrap:wrap;width:100%;min-height:44px;padding:8px;margin-top:8px;border:1px solid #766247;background:#383024}
@media(min-width:1001px){
 .classic-ui.focus-ui aside,.classic-ui.focus-ui aside:has(#adventureBody[data-page-key="pack"]){width:300px;max-height:760px;inset:8px 8px 8px auto;background:#2d2923;border:2px solid #706047;box-shadow:inset 0 0 0 1px #b49a6544,0 4px 16px #0006}
 .classic-ui.focus-ui header,.classic-ui.focus-ui:has(#adventureBody[data-page-key="pack"]) header,.classic-ui.focus-ui .camera-controls,.classic-ui.focus-ui:has(#adventureBody[data-page-key="pack"]) .camera-controls{right:324px}
 .classic-ui.focus-ui aside>.map-card{padding:6px 8px 8px;background:radial-gradient(ellipse at center,#494034,#27231e);border-bottom:1px solid #746044}
 .classic-ui.focus-ui aside #minimap,.classic-ui.focus-ui aside:has(#adventureBody[data-page-key="pack"]) #minimap{width:164px;height:164px;border-radius:50%;border:3px solid #a28b61;box-shadow:0 0 0 2px #211c16,inset 0 0 12px #0008}
 .classic-ui.focus-ui aside .map-card .map-key{display:none}
 .classic-ui.focus-ui aside #openWorldAtlas{right:11px;bottom:11px;min-height:30px}
 .classic-ui.focus-ui aside>.player-strip{display:grid;grid-template-columns:1fr auto;gap:5px 8px;padding:7px 10px;background:#27231e;border-bottom:1px solid #746044}
 .classic-ui.focus-ui aside .player-vitals{grid-column:1;min-width:0;max-width:none;width:auto}
 .classic-ui.focus-ui aside #healthStatus{font-size:12px;margin-bottom:3px}
 .classic-ui.focus-ui aside #healthMeter{height:5px}
 .classic-ui.focus-ui aside .currency-card{grid-column:2;grid-row:1}
 .classic-ui.focus-ui aside .player-strip>.task{grid-column:1/-1;display:flex}
 .classic-ui.focus-ui aside #eatFood{min-height:25px;font-size:11px;background:none;border-color:#65543c}
 .classic-ui.focus-ui aside #currencyBalance{font-size:13px}
}
@media(min-width:1001px) and (max-height:740px){
 .classic-ui.focus-ui aside #minimap,.classic-ui.focus-ui aside:has(#adventureBody[data-page-key="pack"]) #minimap{width:128px;height:128px}
 .classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-grid{grid-template-rows:repeat(7,38px)}
 .classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-slot{height:38px;min-height:38px}
}
@media(max-width:1000px){
 .classic-ui.focus-ui #adventureTabs button,.classic-ui.focus-ui #adventureTabs button:nth-child(n+4):not(:nth-child(6)){height:44px;min-height:44px}
 .classic-ui.focus-ui.mobile-panel-open aside{width:min(340px,calc(100% - 16px))}
}
/* Worn gear reads as a body, rather than another inventory row. */
.classic-ui.focus-ui #adventureBody[data-page-key="equipment"] .equipment-grid{display:grid;flex:0 0 210px;min-height:210px;max-height:210px;grid-template-columns:repeat(3,58px);grid-template-rows:repeat(4,48px);justify-content:center;gap:6px;background:radial-gradient(ellipse,#51453555,transparent 70%);padding:0}
.classic-ui.focus-ui #adventureBody[data-page-key="equipment"] .equipment-slot[data-slot]{height:48px;min-height:48px;min-width:0;border-color:#756248;border-radius:3px;background:#393128}
.classic-ui.focus-ui #adventureBody[data-page-key="equipment"] .equipment-slot[data-slot="helm"]{grid-column:2;grid-row:1}
.classic-ui.focus-ui #adventureBody[data-page-key="equipment"] .equipment-slot[data-slot="cape"]{grid-column:1;grid-row:2}
.classic-ui.focus-ui #adventureBody[data-page-key="equipment"] .equipment-slot[data-slot="necklace"]{grid-column:2;grid-row:2}
.classic-ui.focus-ui #adventureBody[data-page-key="equipment"] .equipment-slot[data-slot="weapon"]{grid-column:1;grid-row:3}
.classic-ui.focus-ui #adventureBody[data-page-key="equipment"] .equipment-slot[data-slot="armour"]{grid-column:2;grid-row:3}
.classic-ui.focus-ui #adventureBody[data-page-key="equipment"] .equipment-slot[data-slot="shield"]{grid-column:3;grid-row:3}
.classic-ui.focus-ui #adventureBody[data-page-key="equipment"] .equipment-slot[data-slot="legs"]{grid-column:2;grid-row:4}
.classic-ui.focus-ui #adventureBody[data-page-key="equipment"] .equipment-slot .game-icon{width:30px!important;height:30px!important}

/* Quest journal: a plain status list, one next step, optional story detail. */
.classic-ui.focus-ui #adventureBody[data-page-key="quest"]{display:flex;overflow:hidden!important;padding:2px 0}
.quest-panel{display:flex;flex-direction:column;min-height:0;width:100%;height:100%;gap:8px}
.quest-view-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;flex:none}
.classic-ui.focus-ui .quest-view-tabs button{min-height:32px;margin:0;padding:5px;background:#322c24;border:1px solid #69583f;color:#cabc9f;font-size:12px}
.classic-ui.focus-ui .quest-view-tabs button[aria-pressed=true]{background:#59472e;color:#ffe0a2;border-color:#af8e57}
.quest-list-page,.quest-browser{display:flex;flex-direction:column;min-height:0;gap:8px;flex:1}
.quest-list-count{font-size:11px;color:#bbaa8c;padding:0 3px}
.quest-list-tools{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:5px;flex:none}
.focus-ui .quest-list-tools :is(input,select){width:100%;min-width:0;max-width:100%;min-height:34px;height:34px;padding:5px 7px;background:#231f1a;color:#e7d9bf;border:1px solid #68583f;border-radius:2px;font:12px 'Segoe UI',sans-serif}
.quest-name-list{flex:1;min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#8d7855 #28231e}
.classic-ui.focus-ui .quest-name-list .quest-list-row,.focus-ui #questDetails.quest-journal-ui .quest-list-row{display:flex;align-items:center;gap:8px;width:100%;min-height:34px;margin:0;padding:7px 5px;background:transparent;border:0;border-bottom:1px solid #b39a6512;border-radius:0;text-align:left;font:13px/1.35 'Segoe UI',sans-serif;white-space:normal;box-shadow:none}
.quest-state-mark{width:12px;flex:none;text-align:center}
.focus-ui .quest-list-row[data-state=available],.focus-ui #questDetails.quest-journal-ui .quest-list-row[data-state=available]{color:#e6a18c}
.focus-ui .quest-list-row[data-state=active],.focus-ui .quest-list-row[data-state=ready],.focus-ui #questDetails.quest-journal-ui .quest-list-row:is([data-state=active],[data-state=ready]){color:#ead078}
.focus-ui .quest-list-row[data-state=complete],.focus-ui #questDetails.quest-journal-ui .quest-list-row[data-state=complete]{color:#93bd91}
.focus-ui .quest-list-row[data-state=locked],.focus-ui #questDetails.quest-journal-ui .quest-list-row[data-state=locked]{color:#afa492}
.classic-ui.focus-ui .quest-name-list .quest-list-row:hover,.focus-ui #questDetails.quest-journal-ui .quest-list-row:is(:hover,[aria-pressed=true]){background:#b5964930}
.quest-other{flex:none;border-top:1px solid #6e5b3e;font-size:12px}
.quest-other>summary{cursor:pointer;padding:8px 3px;color:#c6b38d}
.quest-other>div{display:grid;grid-template-columns:1fr;gap:4px;max-height:160px;overflow:auto}
.classic-ui.focus-ui .quest-other button{min-height:32px;margin:0;padding:6px 8px;text-align:left;font-size:12px}
.quest-roadmap{flex:1;min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#8d7855 #28231e}
.classic-ui.focus-ui .quest-roadmap>button{width:100%;min-height:36px;margin:0 0 10px;background:#59472e;border-color:#a58752;color:#f2dfb5;font-size:13px}
.journey-milestone{border-left:2px solid #62543e;margin:0 0 5px;padding:0 8px;background:transparent}
.journey-milestone[data-state=active]{border-left-color:#d0ae64;background:#b5964910}
.journey-milestone>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:7px;min-height:39px;list-style:none;font-size:13px;color:#d5c4a6}
.journey-milestone>summary::before{content:'›';color:#aa946a}
.journey-milestone[open]>summary::before{content:'⌄'}
.journey-milestone>summary span{flex:1}
.journey-milestone>summary small{font-size:10px;color:#b5a88d}
.journey-milestone[data-state=complete]>summary{color:#93bd91}
.journey-milestone[data-state=active]>summary{color:#ead078}
.classic-ui.focus-ui .quest-roadmap .journey-next-step{font-size:13px;line-height:1.5;margin:2px 0 10px;color:#eee2c9}
.journey-milestone details>summary{font-size:11px;cursor:pointer;padding:6px 0;color:#bba986}
.journey-step-list{padding:0;list-style:none;margin:7px 0;font-size:12px;line-height:1.5;color:#d2c3a5}
.journey-step-list li{margin:5px 0}.journey-step-list li.complete{color:#93bd91}
.classic-ui.focus-ui .journey-milestone p{font-size:12px;line-height:1.5}
body.focus-ui #questDetails.quest-journal-ui{width:min(430px,calc(100vw - 24px));height:fit-content;max-height:calc(100dvh - 32px);padding:18px;background:var(--ls-panel,#2d2923);color:var(--ls-text,#eee4cf);border:1px solid #9d8257;border-radius:4px;box-shadow:0 12px 50px #0008;box-sizing:border-box;overflow:auto}
body.focus-ui #questDetails.quest-journal-ui[open]{display:flex;flex-direction:column;gap:12px}
body.focus-ui #questDetails.quest-journal-ui .quest-popup-heading{padding:0 0 8px;border-bottom:1px solid #6e5b3e;align-items:center;flex:none}
body.focus-ui #questDetails.quest-journal-ui h2{font:20px/1.3 Georgia,serif;color:#e8d0a1;margin:0}
body.focus-ui #questDetails.quest-journal-ui h3{font:19px/1.3 Georgia,serif;color:#e8d0a1;margin:0 0 12px}
body.focus-ui #questDetails.quest-journal-ui h4{font-size:13px;color:#d8c4a0;margin:10px 0 3px}
body.focus-ui #questDetails.quest-journal-ui button{background:#393127;color:#e9dabd;border:1px solid #796448;text-shadow:none}
body.focus-ui #questDetails.quest-journal-ui .quest-popup-heading button{min-width:32px;min-height:32px;height:32px;margin:0;padding:2px;font-size:20px}
.quest-reading{min-width:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#8d7855 #28231e}
.quest-reading-meta{font-size:12px;color:#bcab8d;margin-bottom:8px}
.quest-reading-meta [data-state=complete]{color:#93bd91}.quest-reading-meta :is([data-state=ready],[data-state=active]){color:#ead078}
body.focus-ui #questDetails.quest-journal-ui .quest-current-step{font-size:15px;line-height:1.55;margin:8px 0 12px;color:#eee2cd}
.quest-location{display:block;color:#bdab8b;font-size:12px}
.quest-needed{padding-left:18px;font-size:13px;line-height:1.7}.quest-needed .ready{color:#93bd91}
.quest-story-details{margin:16px 0 0;border-top:1px solid #6e5b3e;padding-top:8px}
.quest-story-details summary{cursor:pointer;color:#c6b38d;font-size:12px;padding:5px 0}
.quest-story-details p{color:#cabc9f;font:13px/1.6 'Segoe UI',sans-serif;margin:8px 0}
body.focus-ui #questDetails.quest-journal-ui .quest-next-action{order:0;background:#604c30!important;color:#f5dfb4;border-color:#b29258!important;min-height:42px}
body.focus-ui #questDetails.quest-journal-ui.quest-browser-open{width:min(740px,calc(100vw - 24px));height:min(590px,calc(100dvh - 32px));overflow:hidden}
body.focus-ui #questDetails.quest-journal-ui.quest-browser-open[open]{display:grid;grid-template-columns:260px minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:14px}
.quest-browser-open>.quest-popup-heading{grid-column:1/-1}
.quest-browser-open>.quest-browser{border-right:1px solid #6e5b3e;padding-right:12px}
.quest-browser .quest-list-tools{grid-template-columns:1fr}
@media(max-width:600px){
 body.focus-ui #questDetails.quest-journal-ui.quest-browser-open[open]{grid-template-columns:1fr;grid-template-rows:auto minmax(120px,35%) minmax(0,1fr);gap:10px}
 .quest-browser-open>.quest-browser{border-right:0;border-bottom:1px solid #6e5b3e;padding:0 0 8px}
 .quest-browser .quest-list-tools{grid-template-columns:minmax(0,1fr) 112px}
 .classic-ui.focus-ui .quest-name-list .quest-list-row,.focus-ui #questDetails.quest-journal-ui .quest-list-row{min-height:40px}
}
/* Do not inherit the old paged-card padding or button margins inside the list. */
.classic-ui.focus-ui #adventureBody .quest-panel,.classic-ui.focus-ui #adventureBody .quest-panel section{margin:0;padding:0;border:0;background:none;min-width:0}
.classic-ui.focus-ui #adventureBody .quest-panel{flex:1;gap:6px}
.classic-ui.focus-ui #adventureBody .quest-view-tabs button{margin:0;min-height:32px;font-size:12px}
.classic-ui.focus-ui #adventureBody .quest-name-list{overflow-x:hidden}
.classic-ui.focus-ui #adventureBody .quest-name-list .quest-list-row{margin:0;min-height:34px;font-size:13px;width:100%;box-sizing:border-box}
.classic-ui.focus-ui #adventureBody .quest-roadmap{overflow-x:hidden}
.classic-ui.focus-ui #adventureBody .quest-roadmap>button{margin:0 0 8px;box-sizing:border-box;font-size:13px}
.classic-ui.focus-ui #adventureBody .quest-other button{margin:0;font-size:12px}
@media(max-width:600px){.classic-ui.focus-ui #adventureBody .quest-name-list .quest-list-row{min-height:40px}}
/* Keep protection controls compact in the character panel and combat tray. */
body .protection-controls .protection-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}
body .protection-controls .protection-focus{white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--ls-muted)}
body .protection-controls .prayer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
body .protection-controls .prayer-button{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;margin:0;padding:5px 3px;gap:2px;font-size:11px}

/* Phone HUD: the world is the default view, tools open only on request. */
@media(max-width:1000px){
 .classic-ui.focus-ui .world-panel>.map-card{display:none}
 .classic-ui.focus-ui .play-dock,.classic-ui.focus-ui .play-dock:not(.objective-expanded){position:static;width:auto;max-width:none;padding:0;background:none}
 .classic-ui.focus-ui .player-strip{position:fixed;top:max(8px,env(safe-area-inset-top));left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right));display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:nowrap;width:auto;margin:0;padding:0;border:0;background:none;pointer-events:none;gap:8px;z-index:14}
 .classic-ui.focus-ui .player-strip .player-vitals{flex:0 0 118px;width:118px;min-width:0;max-width:118px;padding:6px 8px;background:#211f1bd9;border:1px solid #796646;border-radius:5px;box-sizing:border-box}
 .classic-ui.focus-ui #healthStatus{font-size:11px;white-space:nowrap;margin:0 0 3px}
 .classic-ui.focus-ui #healthMeter{height:4px}
 .classic-ui.focus-ui .player-strip .currency-card{display:none}
 .classic-ui.focus-ui .player-strip>.task{display:flex;flex-wrap:wrap;justify-content:flex-end;max-width:55%;gap:5px;margin:0;padding:0;border:0;background:none;pointer-events:none}
 .classic-ui.focus-ui .player-strip .task button{pointer-events:auto;min-height:44px;max-width:150px;padding:6px 10px;font-size:12px;background:#211f1bed}
 .classic-ui.focus-ui #eatFood{font-size:0;min-width:72px}
 .classic-ui.focus-ui #eatFood::after{content:attr(data-mobile-label);font-size:13px}
 .classic-ui.focus-ui #eatFood:disabled{display:none}
 .classic-ui.focus-ui .mobile-game-nav{position:fixed;inset:auto max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));display:grid;grid-template-columns:repeat(4,minmax(0,1fr));height:44px;min-height:44px;gap:6px;padding:0;margin:0;width:auto;z-index:45;pointer-events:none}
 .classic-ui.focus-ui .mobile-game-nav button,.classic-ui.focus-ui .play-dock .mobile-game-nav .objective-toggle{display:block;pointer-events:auto;width:100%;height:44px;min-height:44px;padding:6px 3px;margin:0;font-size:13px;border:1px solid #8d7954;border-radius:5px;background:#211f1be8;animation:none}
 .classic-ui.focus-ui .mobile-game-nav .objective-unread::after{content:' •';color:#f5cf6e}
 .classic-ui.focus-ui .play-dock.objective-expanded #tutorialGuide{position:fixed;left:8px;right:8px;bottom:64px;width:auto;max-height:45dvh;overflow:auto;z-index:35;padding:12px;background:#211f1bf5}
 .classic-ui.focus-ui #activityFeedback{position:fixed;top:auto;left:8px;right:auto;bottom:calc(62px + env(safe-area-inset-bottom));display:flex;align-items:center;gap:8px;width:auto;max-width:calc(100% - 16px);margin:0;padding:0 0 0 10px;background:#211f1bcc;box-shadow:none;pointer-events:none;z-index:13}
 .classic-ui.focus-ui #activityFeedback strong{font-size:12px}
 .classic-ui.focus-ui #activityFeedback .qol-activity-detail{display:none}
 .classic-ui.focus-ui #activityFeedback button{min-height:44px;padding:6px 12px;pointer-events:auto}
 .classic-ui.focus-ui #activityFeedback[data-activity=idle],.classic-ui.focus-ui #activityFeedback[hidden],.classic-ui.focus-ui.mobile-panel-open #activityFeedback,.classic-ui.focus-ui .objective-expanded #activityFeedback{display:none}
 .classic-ui.focus-ui .feedback-rail{position:fixed;top:58px;left:8px;right:8px;height:auto;max-width:calc(100% - 16px);padding:0;z-index:14}
 .classic-ui.focus-ui #hoverAction{display:none}
 .classic-ui.focus-ui #toast{font-size:12px;max-width:100%;background:none}
 .classic-ui.focus-ui #combatStatus{position:fixed;top:86px;left:8px;right:8px;width:fit-content;max-width:calc(100% - 16px);font-size:12px;margin:0;padding:5px 8px;z-index:14;background:#211f1bd9}
 .classic-ui.focus-ui #groundLoot:not([hidden]){position:fixed;left:8px;right:8px;bottom:116px;width:auto;max-height:100px;overflow:auto;background:#211f1bef;z-index:16}
 .classic-ui.focus-ui.mobile-panel-open aside{inset:max(8px,env(safe-area-inset-top)) 8px calc(60px + env(safe-area-inset-bottom)) auto;width:min(340px,calc(100% - 16px));max-height:none;height:auto}
 .classic-ui.focus-ui.mobile-panel-open .close-character{min-height:44px;flex-shrink:0}
 .classic-ui.focus-ui #gameMenu .mobile-menu-controls{display:grid;gap:12px;padding-top:12px;border-top:1px solid #716047}
 .classic-ui.focus-ui #gameMenu header{position:static;display:flex;flex-wrap:wrap;inset:auto;width:100%;height:auto;min-height:0;padding:0;margin:0;gap:8px;pointer-events:auto}
 .classic-ui.focus-ui #gameMenu header :is(.brand,.client-bar,.server){display:none}
 .classic-ui.focus-ui #gameMenu header>button,.classic-ui.focus-ui #gameMenu .sound-menu>summary{min-height:44px;font-size:14px;padding:10px}
 .classic-ui.focus-ui #gameMenu .camera-controls{position:static;display:flex;justify-content:space-between;inset:auto;gap:8px}
 .classic-ui.focus-ui #gameMenu .camera-controls button{width:48px;height:44px;min-height:44px}
 .classic-ui.focus-ui #gameMenu .audio-toolbar{position:static;inset:auto;width:100%;max-width:100%;box-sizing:border-box}
 .classic-ui.focus-ui #gameMenu .sound-menu[open]{width:100%}
 .classic-ui.focus-ui #gameMenu{max-height:calc(100dvh - 24px);overflow:auto}
 .classic-ui.focus-ui .chat-panel{bottom:calc(62px + env(safe-area-inset-bottom));max-height:40dvh}
}
@media(max-width:1000px) and (max-height:500px){
 .classic-ui.focus-ui .mobile-game-nav{left:auto;width:300px}
 .classic-ui.focus-ui .play-dock.objective-expanded #tutorialGuide{left:auto;width:min(340px,calc(100vw - 32px));bottom:62px;max-height:65dvh}
 .classic-ui.focus-ui #activityFeedback{bottom:8px;max-width:calc(100vw - 330px)}
}
@media(max-width:1000px){
 .classic-ui.focus-ui .combat-quickbar{position:fixed;bottom:calc(62px + env(safe-area-inset-bottom));right:8px;width:222px;max-width:calc(100vw - 16px)}
 .classic-ui.focus-ui .combat-quickbar.is-collapsed{width:auto;min-width:170px;padding:0 8px}
 .classic-ui.focus-ui .combat-quickbar .quick-collapse{min-height:44px;min-width:44px;font-size:12px}
 .classic-ui.focus-ui .combat-quickbar kbd,.classic-ui.focus-ui #activityFeedback[data-activity=combat]{display:none}
 .classic-ui.focus-ui.mobile-panel-open .combat-quickbar,.classic-ui.focus-ui:has(.objective-expanded) .combat-quickbar{display:none}
 /* Keep the teaching glow; reserve explanatory captions for the open panel. */
 .classic-ui.focus-ui:not(.mobile-panel-open):not(:has(.objective-expanded)) #lessonPointer{display:none}
 .classic-ui.focus-ui #gameMenu .currency-card{display:flex;align-items:center;gap:10px;padding:6px 0;background:none;border:0;margin:0}
 .classic-ui.focus-ui #gameMenu .currency-card img{width:28px;height:28px}
 .classic-ui.focus-ui #gameMenu .currency-card small{display:none}
}
@media(max-width:1000px) and (max-height:500px){
 .classic-ui.focus-ui.mobile-panel-open aside{inset:8px 8px 8px auto;width:min(420px,calc(100% - 16px))}
 .classic-ui.focus-ui.mobile-panel-open .mobile-game-nav{display:none}
 .classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-grid{grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:repeat(4,44px);min-height:184px;max-height:184px;flex:0 0 184px}
 .classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-slot{height:44px;min-height:44px}
 .classic-ui.focus-ui #adventureBody[data-page-key="pack"]{overflow-y:auto;scrollbar-width:none}
 .classic-ui.focus-ui #adventureBody[data-page-key="pack"] .inventory-readout{display:none}
}

#eatFood .quick-food-icon{display:none}
/* Thumb-reachable combat utilities; overhead bars remain the health display. */
#experienceRail{position:fixed;left:max(8px,env(safe-area-inset-left));top:42%;display:flex;flex-direction:column;gap:5px;max-width:175px;z-index:25;pointer-events:none}
.experience-drop{font:600 12px/1.3 'Segoe UI',sans-serif;color:#c6e1ff;text-shadow:0 1px 3px #000,0 0 4px #000;animation:experience-rise 3.4s ease-out both;pointer-events:none}
.experience-level{color:#f5d183}
@keyframes experience-rise{0%{opacity:0;transform:translateY(20px)}12%{opacity:1}68%{opacity:1}100%{opacity:0;transform:translateY(-100px)}}
@media(prefers-reduced-motion:reduce){.experience-drop{animation:experience-fade 3.4s linear both}@keyframes experience-fade{0%,100%{opacity:0}12%,70%{opacity:1}}}
.combat-quickbar.is-collapsed .protection-controls .prayer-grid{display:none}
@media(max-width:1000px){
 .classic-ui.focus-ui .mobile-game-nav{grid-template-columns:repeat(5,minmax(0,1fr))}
 .classic-ui.focus-ui.in-combat .player-vitals,.classic-ui.focus-ui #combatStatus,.classic-ui.focus-ui #fleeFight,.classic-ui.focus-ui #levelPopup{display:none}
 .classic-ui.focus-ui .combat-quickbar,.classic-ui.focus-ui .combat-quickbar.is-collapsed{display:grid;grid-template-columns:132px 44px;align-items:end;gap:8px;width:184px;min-width:0;padding:0;right:8px;bottom:calc(62px + env(safe-area-inset-bottom));border:0;background:none;box-shadow:none}
 .classic-ui.focus-ui .combat-quickbar[hidden],.classic-ui.focus-ui.mobile-panel-open .combat-quickbar,.classic-ui.focus-ui:has(.objective-expanded) .combat-quickbar{display:none}
 .classic-ui.focus-ui .combat-quickbar .protection-heading{margin:0 0 4px;gap:5px}
 .classic-ui.focus-ui .combat-quickbar .protection-heading strong{font-size:10px;letter-spacing:0}
 .classic-ui.focus-ui .combat-quickbar .protection-focus{font-size:10px}
 .classic-ui.focus-ui .combat-quickbar .quick-collapse,.classic-ui.focus-ui .combat-quickbar .quick-weapon-grid,.classic-ui.focus-ui .combat-quickbar .quick-status{display:none}
 .classic-ui.focus-ui .combat-quickbar .protection-controls .prayer-grid{display:grid;grid-template-columns:repeat(3,40px);gap:6px}
 .classic-ui.focus-ui .combat-quickbar .prayer-button{height:40px;min-height:40px;min-width:40px;width:40px;padding:2px;gap:0;font-size:9px;border-radius:4px}
 .classic-ui.focus-ui .combat-quickbar .prayer-button canvas{width:22px!important;height:22px!important}
 .classic-ui.focus-ui .combat-quickbar .combat-utilities{display:flex;flex-direction:column;gap:5px;padding:0;margin:0;border:0;background:none;min-width:0}
 .classic-ui.focus-ui .combat-quickbar .combat-utilities button{width:70px;min-width:0;min-height:36px;padding:4px;font-size:11px;margin:0;background:#3a3022;border:1px solid #ae915c}
 .classic-ui.focus-ui .combat-quickbar #heavyStrike{display:none}
 .classic-ui.focus-ui .combat-quickbar #eatFood{display:grid;place-items:center;position:relative;width:44px;min-width:44px;height:44px;min-height:44px;padding:3px;font-size:0;border-radius:4px}
 .classic-ui.focus-ui .combat-quickbar #eatFood .quick-food-icon{display:block;width:30px;height:30px}
 .classic-ui.focus-ui .combat-quickbar #eatFood .quick-food-label{display:none}
 .classic-ui.focus-ui .combat-quickbar #eatFood::after{content:attr(data-food-count);position:absolute;right:3px;bottom:1px;font-size:10px;line-height:1.2;color:#ffe3a1;text-shadow:0 1px 2px #000,1px 0 2px #000}
 .classic-ui.focus-ui .combat-quickbar #eatFood:disabled{display:grid;opacity:.5}
 .classic-ui.focus-ui .combat-quickbar .combat-utilities [hidden]{display:none}
 .classic-ui.focus-ui.in-combat #toast{max-width:220px;font-size:11px}
 .classic-ui.focus-ui.in-combat .feedback-rail{top:8px;right:auto;max-width:220px}
 .classic-ui.focus-ui.in-combat #lessonPointer,.classic-ui.focus-ui.in-combat #lessonFocusRing{display:none}
}
