/* pbPT quest book and tracker (quests.js): the classic skin of the world map, the buff row and the auto-hunt
   (map-ui-classic.css, buff-hud.css, autohunt.css): the game's own art of system-assets/native (Help box frame,
   title bar, leather plate, gold line), gold Georgia titles and Tahoma text. Plates only stretch sideways (23 px). */
.pq-win { --gold:#ffd623; --text:#e9e4d2; --dim:#9f9a86; --line:#a88a52; --field:#0b120d; --ok:#9fe07a; --hot:#ffb08a;
  color:var(--text); font:12px/1.35 Tahoma,Verdana,sans-serif; text-shadow:0 1px 1px #000; user-select:none; -webkit-user-select:none; box-sizing:border-box; }
.pq-win *, .pq-win *::before, .pq-win *::after { box-sizing:border-box; }
.pq-win[hidden], .pq-toast[hidden], .pq-show[hidden], .pq-marks[hidden] { display:none !important; }
.pq-win, .pq-win *, .pq-show { cursor:url('login-assets/game-cursor.png') 0 0, auto; }

/* leather plate: 23 px high, stretched only sideways */
.pq-plate { height:23px; min-width:0; margin:0; padding:0 9px; border-style:solid; border-width:0 6px; border-color:transparent; border-radius:0;
  border-image:url('system-assets/native/plate.png') 0 6 fill stretch; background:none; color:var(--gold, #ffd623);
  font:bold 11px/1 Georgia,'Times New Roman',serif; text-shadow:1px 1px 0 #1b0e00; white-space:nowrap; display:inline-flex; align-items:center; justify-content:center; gap:5px; }
.pq-plate:hover { filter:brightness(1.25); }
.pq-plate:active { filter:brightness(1.4); }
.pq-plate:disabled { filter:grayscale(.9) brightness(.7); }
.pq-plate.pq-on { color:var(--ok); }
.pq-plate.pq-gold { color:#fff2b0; filter:brightness(1.15) drop-shadow(0 0 3px #ffd62355); }

/* the book: the Help box frame with its leather strip, the title bar on top */
.pq-book { position:fixed; z-index:64; width:min(780px,calc(100vw - 12px)); height:min(570px,calc(100vh - 12px)); padding:30px 20px 40px; isolation:isolate;
  display:flex; flex-direction:column; pointer-events:auto; }
.pq-book::after { content:''; position:absolute; inset:6px 6px 10px; z-index:-2; background:#040a07e6; }
.pq-book::before { content:''; position:absolute; inset:0; z-index:-1; border-style:solid; border-width:32px 64px 64px;
  border-image:url('system-assets/native/frame.png') 32 64 64 fill stretch; opacity:.97; }
.pq-book h3 { position:absolute; left:50%; top:2px; transform:translateX(-50%); width:210px; max-width:calc(100% - 90px); height:26px; margin:0;
  border-style:solid; border-width:0 30px; border-color:transparent; border-image:url('system-assets/native/title.png') 0 34 fill stretch;
  display:grid; place-items:center; color:var(--gold); font:bold 13px/1 Georgia,'Times New Roman',serif; letter-spacing:.06em; white-space:nowrap; }
.pq-x { position:absolute; right:12px; top:5px; width:26px; padding:0; font:bold 14px/1 Tahoma,sans-serif; }
.pq-tabs { display:flex; flex-wrap:wrap; gap:3px 2px; padding:0 0 5px; }
.pq-tab { padding:0 9px; font-size:11px; color:#d8c48a; }
.pq-tab[aria-selected=true] { color:var(--gold); filter:brightness(1.3) drop-shadow(0 0 3px #ffd62366); }
.pq-switches { display:flex; flex-wrap:wrap; gap:2px 14px; padding:0 2px 5px; margin-bottom:6px; background:url('system-assets/native/line.png') left bottom/100% 2px repeat-x; }
.pq-chk { display:flex; align-items:center; gap:6px; margin:2px 0; cursor:pointer; white-space:nowrap; }
.pq-chk input { accent-color:#c9953f; width:15px; height:15px; margin:0; flex:none; }
.pq-body { flex:1; min-height:0; overflow-y:auto; overscroll-behavior:contain; padding:0 6px 4px 2px; scrollbar-width:thin; scrollbar-color:#a88a52 #0b120d; }
.pq-body:has(.pq-cols) { overflow:hidden; display:flex; flex-direction:column; }
.pq-foot { position:absolute; left:26px; right:26px; bottom:14px; color:#e2d3b0; font:11px/1.2 Tahoma,sans-serif; text-align:center; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.pq-win ::-webkit-scrollbar { width:16px; }
.pq-win ::-webkit-scrollbar-track { background:url('system-assets/native/scroll-bar.png') center/8px 100% no-repeat; }
.pq-win ::-webkit-scrollbar-thumb { min-height:16px; background:url('system-assets/native/scroll-thumb.png') center/16px 16px no-repeat; }

.pq-filters { display:flex; flex-wrap:wrap; gap:3px; margin:0 0 5px; }
.pq-chip { height:20px; padding:0 8px; border:1px solid #a88a5577; background:#0b120d; color:#d8c48a; font:11px/1 Tahoma,sans-serif; text-shadow:0 1px 1px #000; }
.pq-chip.pq-on { border-color:var(--gold); color:var(--gold); box-shadow:inset 0 0 6px #ffd62333; }
.pq-cols { flex:1; min-height:0; display:grid; grid-template-columns:minmax(220px,40%) 1fr; gap:10px; }
.pq-list, .pq-detail { min-height:0; overflow-y:auto; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:#a88a52 #0b120d; padding-right:4px; }
.pq-detail { padding:6px 10px 8px; background:#0b120d99; border:1px solid #a88a5555; box-shadow:inset 0 0 0 1px #000; }
.pq-body h4 { margin:8px 0 4px; padding:0 0 3px; color:#f0c419; font:bold 12px/1.2 Georgia,serif; letter-spacing:.03em;
  background:url('system-assets/native/line.png') left bottom/100% 2px repeat-x; }
.pq-body h4:first-child, .pq-list h4:first-child { margin-top:0; }
.pq-body h4 small { color:var(--dim); font:normal 10px Tahoma,sans-serif; letter-spacing:0; white-space:nowrap; }
.pq-list h4 small { display:block; margin-top:1px; }
.pq-item { position:relative; display:grid; width:100%; margin:0 0 3px; padding:4px 22px 5px 7px; text-align:left; border:1px solid #a88a5544; background:#0b120d99;
  box-shadow:inset 0 0 0 1px #000; color:var(--text); font:inherit; text-shadow:inherit; }
.pq-item b { color:var(--gold); font:bold 12px/1.25 Georgia,serif; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.pq-item span { color:var(--dim); font-size:10px; }
.pq-item em { font-style:normal; font-size:11px; color:#e2d3b0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.pq-item:hover { border-color:#a88a52aa; }
.pq-item.pq-sel { border-color:var(--gold); box-shadow:inset 0 0 0 1px #000, inset 0 0 10px #ffd62322; }
.pq-item.pq-s-ready em { color:#fff2b0; }
.pq-item.pq-s-locked { opacity:.7; }
.pq-item.pq-s-locked b { color:#b9a46a; }
.pq-pin { position:absolute; right:6px; top:5px; color:var(--gold); font-style:normal; font-size:10px; }
.pq-bar { display:block; height:5px; margin:3px 0 1px; background:linear-gradient(90deg,#d6a52a var(--v),#1d1608 var(--v)); box-shadow:0 0 0 1px #000, 0 0 0 2px #a88a5555; }
.pq-prog { display:grid; grid-template-columns:1fr auto; align-items:center; gap:8px; margin:4px 0; }
.pq-prog .pq-bar { margin:0; }
.pq-prog span { color:#fff; font:bold 11px Tahoma,sans-serif; }

.pq-detail h5 { margin:0 0 4px; color:var(--gold); font:bold 15px/1.25 Georgia,serif; }
.pq-detail h6 { margin:8px 0 3px; padding-bottom:2px; color:#f0c419; font:bold 11px/1.2 Georgia,serif; letter-spacing:.04em; text-transform:uppercase;
  background:url('system-assets/native/line.png') left bottom/100% 1px repeat-x; }
.pq-tags { display:flex; flex-wrap:wrap; gap:3px 12px; color:var(--dim); font-size:11px; }
.pq-tags b { color:var(--text); font-weight:bold; }
.pq-st { color:#e2d3b0; font-weight:bold; }
.pq-st.pq-s-ready { color:#fff2b0; } .pq-st.pq-s-active { color:var(--ok); } .pq-st.pq-s-locked { color:var(--hot); } .pq-st.pq-s-done { color:var(--ok); }
.pq-sum { margin:6px 0 4px; color:#e2d3b0; }
.pq-now { margin:4px 0; padding:4px 7px; background:#1d16084d; border-left:2px solid var(--gold); }
.pq-now b { color:var(--gold); font-family:Georgia,serif; }
.pq-now em { color:var(--dim); font-style:normal; }
.pq-goals { margin:0; padding:0; list-style:none; }
.pq-goals li { padding:2px 0; font-size:11px; }
.pq-g-ok { color:var(--ok); } .pq-g-now { color:#fff2b0; font-weight:bold; } .pq-g-next { color:var(--dim); }
.pq-reward { margin:2px 0; color:#fff2b0; }
.pq-btns { display:flex; flex-wrap:wrap; align-items:center; gap:4px; margin:7px 0 2px; }
.pq-btns small { color:var(--dim); font-size:10px; }
.pq-small { font-size:10px; padding:0 7px; }
.pq-note { margin:4px 0; color:var(--dim); font-size:11px; }
.pq-back { margin:0 0 6px; }

/* dailies / month: cards */
.pq-prov { margin:0 0 6px; padding:4px 8px; border:1px solid #c9953f88; background:#2a1b0599; color:#f0deb0; font-size:11px; }
.pq-prov b { color:var(--hot); font:bold 11px Georgia,serif; letter-spacing:.05em; }
.pq-cards { display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:6px; }
.pq-card { display:grid; align-content:start; gap:2px; padding:6px 8px; background:#0b120d99; border:1px solid #a88a5555; box-shadow:inset 0 0 0 1px #000; }
.pq-card > b { color:var(--gold); font:bold 12px/1.25 Georgia,serif; }
.pq-card > span { color:#e2d3b0; font-size:11px; }
.pq-card > em { color:#d9b56a; font-style:normal; font-size:10px; }
.pq-card.pq-s-done { border-color:#62d23a66; }
.pq-card.pq-s-done > b { color:var(--ok); }

/* the tracker: the game's info box look, by the minimap */
.pq-tracker { position:fixed; z-index:57; width:228px; padding:4px 7px 6px; background:#040a07d0; border:1px solid var(--line); box-shadow:inset 0 0 0 1px #000,0 2px 6px #000a;
  pointer-events:auto; font-size:11px; }
.pq-thead { display:flex; align-items:center; gap:5px; padding:0 0 3px; background:url('system-assets/native/line.png') left bottom/100% 2px repeat-x; }
.pq-thead > b { flex:1; color:var(--gold); font:bold 12px/1.2 Georgia,serif; letter-spacing:.04em; }
.pq-tguide { font-size:10px; gap:3px; color:#e2d3b0; }
.pq-tguide input { width:12px; height:12px; }
.pq-tbtn { width:18px; height:18px; padding:0; border:1px solid #a88a5577; background:#0b120d; color:var(--gold); font:bold 11px/1 Tahoma,sans-serif; text-shadow:0 1px 1px #000; }
.pq-tbtn:hover { border-color:var(--gold); }
.pq-tbody { display:grid; gap:4px; padding-top:4px; }
.pq-trow { display:grid; gap:1px; padding:2px 0 3px; border-bottom:1px solid #a88a5522; }
.pq-trow:last-child { border-bottom:0; }
.pq-tt { display:flex; align-items:center; gap:4px; min-width:0; }
.pq-tt b { flex:1; min-width:0; color:var(--gold); font:bold 11px/1.25 Georgia,serif; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.pq-tb { height:19px; padding:0 6px; border-width:0 5px; font-size:10px; flex:none; }
.pq-tb.pq-go { width:28px; padding:0; font:bold 12px/1 Tahoma,sans-serif; }
.pq-ts { color:#e2d3b0; font-size:10.5px; line-height:1.3; }
.pq-ready .pq-ts { color:#fff2b0; }
.pq-n { justify-self:end; margin-top:-1px; color:#fff; font:bold 10px Tahoma,sans-serif; }
.pq-tracker.pq-min { width:auto; min-width:150px; }
.pq-tracker.pq-min .pq-thead { background:none; padding:0; }
.pq-show { position:fixed; z-index:57; padding:0 10px; }

/* quest marks over the NPCs: the game's gold, outlined like its own labels */
.pq-marks { position:fixed; left:0; top:0; width:0; height:0; z-index:56; pointer-events:none; }
.pq-mark { position:absolute; left:0; top:0; margin:-46px 0 0 -7px; width:14px; text-align:center; color:#ffd623; font:bold 22px/1 Georgia,serif; font-style:normal;
  text-shadow:1px 1px 0 #000,-1px -1px 0 #000,1px -1px 0 #000,-1px 1px 0 #000,0 0 6px #ffb000; will-change:transform; }
.pq-mark-q { color:#9fe07a; text-shadow:1px 1px 0 #000,-1px -1px 0 #000,1px -1px 0 #000,-1px 1px 0 #000,0 0 6px #62d23a; }

.pq-toast { position:fixed; z-index:66; left:50%; top:24%; transform:translateX(-50%); max-width:min(440px,calc(100vw - 24px)); padding:8px 14px;
  background:#040a07ee; border:1px solid #a88a52; box-shadow:inset 0 0 0 1px #000,0 3px 10px #000b; color:#ffd623; font:bold 13px/1.35 Georgia,serif;
  text-align:center; text-shadow:1px 1px 0 #000; pointer-events:none; }

/* touch: the book as a sheet on the right; list or detail (‹ Back), larger targets; compact tracker */
.pq-book.pq-sheet { left:auto !important; top:max(6px,env(safe-area-inset-top)) !important; right:max(8px,env(safe-area-inset-right)); bottom:6px;
  width:min(620px,calc(100vw - 16px)); height:auto; padding:28px 16px 34px; z-index:70; }
.pq-sheet .pq-tabs { flex-wrap:nowrap; overflow-x:auto; scrollbar-width:none; }
.pq-sheet .pq-tabs::-webkit-scrollbar { display:none; }
.pq-sheet .pq-tab { flex:none; }
.pq-sheet .pq-chk input { width:18px; height:18px; }
.pq-sheet .pq-switches { gap:0 12px; font-size:11px; }
.pq-sheet .pq-foot { bottom:11px; font-size:10px; }
.pq-sheet .pq-cols { grid-template-columns:1fr; }
.pq-sheet .pq-detail { display:none; }
.pq-sheet .pq-show-detail .pq-list { display:none; }
.pq-sheet .pq-show-detail .pq-detail { display:block; }
.pq-sheet .pq-item { padding:5px 22px 6px 8px; }
@media (max-height:420px) {
  .pq-book.pq-sheet { padding-top:26px; padding-bottom:28px; }
  .pq-sheet .pq-tabs { padding-bottom:3px; }
  .pq-sheet .pq-switches { padding-bottom:3px; margin-bottom:4px; }
  .pq-sheet .pq-foot { display:none; }
}
.pq-tracker.pq-touch { width:196px; padding:3px 6px 4px; }
.pq-tracker.pq-touch .pq-tbtn { width:24px; height:22px; }
.pq-tracker.pq-touch .pq-tb { height:22px; }
.pq-tracker.pq-touch .pq-tb.pq-go { width:32px; }
.pq-tracker.pq-touch .pq-tguide input { width:16px; height:16px; }
@media (max-height:420px) { .pq-tracker.pq-touch .pq-ts { font-size:10px; } .pq-tracker.pq-touch { width:184px; } }
