:root {
  --ui-bg:#202321; --ui-panel:#292c29; --ui-inset:#151a18;
  --ui-line:#686b5f; --ui-line-soft:#3c433d; --ui-text:#ece9d9;
  --ui-muted:#aeb6a8; --ui-accent:#c7b37f; --ui-positive:#91b993;
  --ui-danger:#d27d71; --ui-xp:#78b3aa;
  --hp-bg-1:var(--ui-panel); --hp-bg-2:var(--ui-inset);
  --hp-border:var(--ui-line); --hp-border-bright:var(--ui-accent);
  --hp-text:var(--ui-text); --hp-text-dim:var(--ui-muted);
}
.game-theme { font-family:Arial,sans-serif; color:var(--ui-text); }
.game-theme button { background:var(--ui-panel)!important; border:1px solid var(--ui-line)!important; color:var(--ui-text)!important; box-shadow:inset 0 1px #ffffff0a!important; text-shadow:none; border-radius:3px!important; letter-spacing:0!important; }
.game-theme button:hover { background:#373c34!important; transform:none!important; border-color:var(--ui-accent)!important; }
.game-theme button:disabled { cursor:default; opacity:.45; }
.game-theme button:focus-visible, .game-theme [role=button]:focus-visible { outline:2px solid var(--ui-accent); outline-offset:2px; }
#game-container::before { box-shadow:inset 0 0 0 2px #171c19!important; }
#hp-topbar, #hp-topbar *, #hp-actionbar *, #hp-resources *, #hp-quest-tracker *, #hp-tooltip *, #hp-toast-layer *, #hp-player-status * { font-family:Arial,sans-serif!important; letter-spacing:0!important; text-shadow:none; box-sizing:border-box; }
#hp-topbar { position:absolute; top:14px; left:16px; right:16px; width:auto; height:42px; display:flex; align-items:stretch; justify-content:space-between; gap:16px; padding:0; transform:none; z-index:20; }
.hp-top-left { display:flex; min-width:0; gap:0; background:#202722f5; border:1px solid var(--ui-line); box-shadow:0 3px 0 #0005; border-radius:3px; }
.hp-location { display:flex; align-items:center; gap:10px; padding:5px 14px 5px 10px; min-width:0; }
.hp-location > svg { width:20px; height:20px; color:var(--ui-accent); flex:none; }
.hp-location div { min-width:0; }
#hp-location-name { display:block; font-size:14px; font-weight:700; color:var(--ui-text); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:220px; }
#hp-location-type { display:block; font-size:10px; margin-top:3px; color:var(--ui-muted); }
#hp-topbar .hp-clock { min-width:78px; border:0!important; border-left:1px solid var(--ui-line-soft)!important; border-radius:0!important; box-shadow:none!important; background:none!important; padding:5px 10px; gap:6px; }
.hp-clock-icon { color:var(--ui-accent); font-size:16px; }
.hp-clock-icon svg { width:17px; height:17px; }
#hp-clock-time { font-size:12px; font-variant-numeric:tabular-nums; }
#hp-clock-phase { font-size:9px; color:var(--ui-muted); }
#hp-weather, #hp-compass { display:none!important; }
#hp-topbar .hp-top-right { display:flex; gap:4px; align-items:center; background:#202722f5; border:1px solid var(--ui-line); padding:4px; border-radius:3px; box-shadow:0 3px 0 #0005; }
#hp-topbar .hp-top-btn { width:30px; height:30px; border:0!important; padding:6px!important; background:transparent!important; color:#c5cebf!important; border-radius:2px!important; box-shadow:none!important; }
#hp-topbar .hp-top-btn:hover { background:#3a4336!important; color:#fff6d4!important; }
#hp-topbar .hp-top-btn svg { width:18px; height:18px; }
#hp-resources { top:64px; left:16px; right:auto; transform:none; display:flex; justify-content:flex-start; align-items:center; gap:0; width:auto; height:30px; max-width:300px; padding:0; background:#202722ef!important; border:1px solid var(--ui-line-soft)!important; border-radius:3px!important; box-shadow:none!important; z-index:18; }
#hp-resources .hp-res-item { min-width:0; padding:5px 10px; gap:6px; border-right:1px solid var(--ui-line-soft); color:var(--ui-text); }
#hp-resources .hp-res-item:last-child { border:0; }
#hp-resources .hp-res-kills, #hp-resources .hp-res-potions, #hp-resources .hp-res-quests { display:none; }
#hp-resources .hp-res-icon { color:var(--ui-accent); }
#hp-resources .hp-res-talents .hp-res-icon { color:var(--ui-positive); }
#hp-resources .hp-res-val { color:var(--ui-text); font-size:11px; font-variant-numeric:tabular-nums; }
#hp-resources .hp-res-tooltip { background:var(--ui-inset); color:var(--ui-text); border:1px solid var(--ui-line); box-shadow:none; }
#hp-quest-tracker { top:108px; left:16px; width:240px; max-height:calc(100% - 320px); padding:0; background:#202722eb!important; border:1px solid var(--ui-line-soft)!important; border-radius:3px!important; box-shadow:none!important; }
#hp-quest-tracker[data-empty=true] { display:none!important; }
.hp-quest-tracker-head { padding:8px 10px; border-bottom:1px solid var(--ui-line-soft); }
.hp-th-tag { color:var(--ui-accent)!important; font-size:11px; }
.hp-th-sub { background:none; border:0; color:var(--ui-muted); }
.hp-quest-list { padding:0 10px; }
#hp-quest-tracker .hp-quest-card { border:0; border-bottom:1px solid var(--ui-line-soft); border-radius:0!important; padding:10px 0; background:none!important; box-shadow:none; }
.hp-quest-title { color:var(--ui-text); font-size:12px; line-height:1.4; }
.hp-quest-giver { color:var(--ui-muted); font-size:10px; }
.hp-quest-goals { font-size:11px; }
.hp-q-check { background:none!important; }
.hp-quest-bar { background:var(--ui-inset)!important; border:0!important; height:3px; }
.hp-quest-bar-fill { background:var(--ui-xp)!important; box-shadow:none!important; }
#hp-status-col { display:none; }
#hp-actionbar { width:calc(100% - 32px); max-width:1480px; bottom:14px; gap:12px; grid-template-columns:minmax(230px,1fr) minmax(420px,1.7fr) minmax(230px,1fr); align-items:end; --hp-ring-size:82px; --hp-portrait-size:66px; }
#hp-actionbar .hp-portrait-block { height:104px; min-height:104px; background:#222823f5!important; border:1px solid #737664!important; border-radius:4px!important; box-shadow:0 4px 0 #0006,inset 0 1px #cdd1a91c!important; padding:9px!important; gap:10px; }
#hp-actionbar .hp-portrait-wrap { flex:none; }
#hp-actionbar .hp-portrait-target { flex-direction:row; }
#hp-actionbar .hp-portrait { border:1px solid #515949; background:#111a17; box-shadow:none; }
#hp-actionbar .hp-ring { filter:none; }
#hp-actionbar .hp-ring-fill-hp { stroke:#c66e64; filter:none; stroke-width:5px; }
#hp-actionbar .hp-ring-fill-mp { stroke:var(--ui-xp); filter:none; stroke-width:2px; }
#hp-actionbar .hp-ring-bg-hp { stroke:#463a35; stroke-width:5px; }
#hp-actionbar .hp-ring-bg-mp { stroke:#35413a; stroke-width:2px; }
#hp-actionbar .hp-ring-target { stroke:#c66e64; filter:none; stroke-width:5px; }
#hp-actionbar .hp-pill-lvl { background:#b9a475!important; color:#19221b; border:1px solid #dbc797; font:700 12px Arial,sans-serif!important; box-shadow:0 1px 3px #0006; min-width:24px; height:22px; bottom:-1px; right:0; }
#hp-actionbar .hp-cores-badge { display:none; }
#hp-actionbar .hp-stat-info, #hp-actionbar .hp-target-info { min-width:0; }
#hp-actionbar .hp-stat-name { font-size:14px; margin-bottom:4px; color:var(--ui-text); }
#hp-actionbar .hp-stat-lvl { font-size:10px; color:var(--ui-muted); }
#hp-actionbar .hp-hp-text { font-size:11px; font-weight:700; color:#edd8cd; }
.hp-health-track { height:6px; margin-bottom:6px; background:#101713; border:1px solid #554b42; }
#hp-health-fill { background:#ba655b; }
#hp-actionbar .hp-xp-outer { height:13px; border:1px solid #4e5d51; background:#101a15; border-radius:1px; }
#hp-actionbar .hp-xp-fill { background:#547e71; }
#hp-actionbar .hp-xp-text { font-size:9px; color:#edf0dc; }
#hp-actionbar .hp-target-hpbar { height:17px; border:1px solid #675148; background:#181c18; border-radius:1px; margin-top:8px; }
#hp-actionbar .hp-target-hpfill { background:#a85950; }
#hp-actionbar #hp-target-block.hp-target-empty { opacity:1!important; }
#hp-actionbar #hp-target-block.hp-target-empty .hp-portrait { opacity:1; filter:none; }
#hp-actionbar #hp-portrait-target > svg { width:24px; height:24px; color:#727d70; }
#hp-actionbar .hp-target-empty .hp-target-hpbar, #hp-actionbar .hp-target-empty #hp-target-sub { visibility:hidden; }
#hp-actionbar .hp-target-empty #hp-target-name { color:#829182; font-size:11px; font-weight:400; }
#hp-portrait-target .hp-no-target { font-size:9px; line-height:1.4; color:#728274; text-shadow:none; }
#hp-actionbar #hp-slots { padding:8px; gap:5px; background:#1d251ff5!important; border:1px solid #737664!important; border-radius:4px; box-shadow:0 4px 0 #0006,inset 0 1px #cdd1a91c!important; }
#hp-actionbar .hp-slot-inner { background:#121c18!important; border:1px solid #596154!important; border-radius:2px; box-shadow:inset 0 0 0 2px #202b23!important; }
#hp-actionbar .hp-slot-icon { width:calc(100% - 8px); height:calc(100% - 8px); }
#hp-actionbar .hp-slot-icon canvas { display:block; width:100%; height:100%; image-rendering:pixelated; }
#hp-actionbar .hp-slot-empty .hp-slot-inner { border-color:#3f4b41!important; background:#18231c!important; }
#hp-actionbar .hp-slot.hp-slot-empty { opacity:.8; }
#hp-actionbar .hp-slot-key { right:3px; bottom:2px; color:#b6c5ad; border:0; border-radius:0; background:#121b14e8; font-size:9px; padding:0 2px; }
#hp-actionbar .hp-slot-count { color:#efdcaf; font-size:10px; right:auto; left:3px; bottom:2px; text-shadow:0 1px #101811; }
#hp-actionbar .hp-slot-cdtext { font-size:13px; font-weight:700; color:#f8eed4; text-shadow:0 1px 2px #000; }
#hp-actionbar .hp-slot-rarity-rare .hp-slot-inner { border-bottom-color:#709d9e!important; }
#hp-actionbar .hp-slot-rarity-uncommon .hp-slot-inner { border-bottom-color:#8dba89!important; }
#hp-actionbar .hp-slot-rarity-elite .hp-slot-inner { border-bottom-color:#b794a3!important; }
#hp-actionbar .hp-slot-rarity-legendary .hp-slot-inner { border-bottom-color:#d9b674!important; }
#hp-actionbar .hp-slot:hover .hp-slot-inner, #hp-actionbar .hp-slot-selected .hp-slot-inner { border-color:#d4c089!important; }
#hp-player-status { left:16px!important; bottom:128px!important; transform:none!important; z-index:14; max-width:calc(100% - 200px); }
#hp-player-status .hp-buff-row, #hp-player-status .hp-debuff-row { gap:5px; }
#hp-player-status .hp-fx-icon { width:30px; height:34px; border-radius:3px; background:#19231feb; box-shadow:none; }
#hp-player-status .hp-fx-glyph { color:#afc6a6; }
#hp-player-status .hp-fx-time { font-size:9px; }
#hp-tooltip { background:var(--ui-inset)!important; border:1px solid var(--ui-line)!important; color:var(--ui-text); box-shadow:0 4px 16px #0008!important; border-radius:3px!important; font:12px Arial,sans-serif; max-width:min(300px,calc(100vw - 24px)); }
#hp-toast-layer { top:auto; bottom:140px; left:50%; transform:translateX(-50%); width:340px; max-width:calc(100% - 32px); align-items:center; }
#hp-toast-layer .hp-toast { width:100%; padding:8px 12px; font-size:11px; font-weight:400; color:var(--ui-text); border:1px solid var(--ui-line-soft)!important; border-left:3px solid #82987b!important; background:#19231fee!important; box-shadow:0 2px 8px #0004!important; border-radius:2px!important; }
#hp-toast-layer .hp-toast-bad { border-left-color:var(--ui-danger)!important; }
#hp-dmg-layer .hp-dmg { font-family:Arial,sans-serif; font-weight:700; font-size:13px; text-shadow:0 1px 2px #000; animation-duration:.75s; }
#hp-dmg-layer .hp-dmg-crit { font-size:17px; color:#e6cf8d; }
#hp-dmg-layer .hp-dmg-heal { font-size:12px; color:#b0d39e; }
#hp-dmg-layer .hp-dmg-label { font-size:11px; color:#e1dbc5; font-weight:400; }
#hp-dmg-layer .hp-dmg-miss { font-size:11px; color:#bcc2ae; }
#hp-heal-pulse { display:none!important; }
#hp-lvlup { pointer-events:none; transform:translate(-50%,-50%) scale(.7); }
#hp-lvlup .hp-lvlup-ring { display:none; }
#hp-lvlup .hp-lvlup-txt { position:relative; flex-direction:row; gap:8px; white-space:nowrap; font:700 18px Arial,sans-serif; color:var(--ui-text); letter-spacing:0; text-shadow:0 2px 3px #000; }
#hp-lvlup .hp-lvlup-txt b { font-size:24px; margin:0; letter-spacing:0; color:var(--ui-accent); text-shadow:0 2px 3px #000; }
#reset-btn { display:none!important; }
.game-theme:has(.modal.visible, .prog-modal.visible, .sk-modal.visible, .invp-modal.visible, #inventory-pro-modal.visible, #enchanting-modal.visible, #af-panel.visible) #controls-cursor,
.game-theme:has(.modal.visible, .prog-modal.visible, .sk-modal.visible, .invp-modal.visible, #inventory-pro-modal.visible, #enchanting-modal.visible, #af-panel.visible) #crosshair { display:none!important; }
.game-theme:has(#af-panel.af-panel-open, #worldmap-overlay.visible, #bio-profile-modal.bio-visible) #controls-cursor,
.game-theme:has(#af-panel.af-panel-open, #worldmap-overlay.visible, #bio-profile-modal.bio-visible) #crosshair { display:none!important; }
#af-btn { right:16px!important; left:auto!important; top:auto!important; bottom:130px!important; width:auto!important; min-width:88px; height:30px; padding:5px 9px!important; font:11px Arial,sans-serif!important; color:var(--ui-muted)!important; background:#202a23f0!important; border:1px solid #727c64!important; box-shadow:none!important; }
#af-btn { right:50px!important; display:flex!important; align-items:center; justify-content:center; gap:6px; z-index:14!important; animation:none!important; letter-spacing:0!important; }
#af-btn svg, #af-settings svg, #af-panel svg { width:14px; height:14px; }
#af-btn .af-dot { width:5px; height:5px; box-shadow:none!important; animation:none!important; }
#af-btn.af-on { color:var(--ui-positive)!important; border-color:var(--ui-positive)!important; }
#af-settings { position:absolute; right:16px; bottom:130px; width:30px; height:30px; padding:6px; z-index:14; display:grid; place-items:center; }
#af-panel { background:#080b0ab5!important; backdrop-filter:none!important; }
#af-panel .af-box { background:var(--ui-bg)!important; border:1px solid var(--ui-line)!important; border-radius:4px!important; box-shadow:0 10px 40px #0008!important; width:min(380px,calc(100% - 24px)); max-height:calc(100% - 24px); overflow:auto; padding:18px; color:var(--ui-text); }
#af-panel .af-title { font:700 18px Arial,sans-serif; color:var(--ui-text); letter-spacing:0; margin-bottom:16px; }
#af-panel .af-row { border-color:var(--ui-line-soft); gap:10px; }
#af-panel .af-label, #af-panel .af-radio-lbl, #af-panel .af-stat-line { color:var(--ui-muted); font-family:Arial,sans-serif; letter-spacing:0; }
#af-panel .af-section-title, #af-panel .af-value, #af-panel .af-stat-line b { color:var(--ui-text); letter-spacing:0; }
#af-panel .af-state-badge { background:var(--ui-inset); color:var(--ui-positive); }
#af-panel input { accent-color:var(--ui-positive); }
.game-theme .ia-modal-backdrop { font-family:Arial,sans-serif; background:#080b0ab5; }
.game-theme .ia-modal { box-sizing:border-box; width:min(560px,calc(100% - 24px)); min-width:0; max-height:calc(100% - 24px); background:var(--ui-bg); border:1px solid var(--ui-line); border-radius:4px; color:var(--ui-text); box-shadow:0 8px 32px #0008; }
.game-theme .ia-modal h2 { color:var(--ui-text); font-size:18px; letter-spacing:0; }
.game-theme .ia-modal .ia-row { border-color:var(--ui-line-soft); border-bottom-style:solid; }
.game-theme .ia-modal .ia-row-reward { color:var(--ui-positive); }
.game-theme:has(.ia-modal-backdrop) #controls-cursor, .game-theme:has(.ia-modal-backdrop) #crosshair { display:none!important; }
#lab-modal .lab-sample-art { float:left; display:block; width:48px; height:48px; margin:0 14px 8px 0; background:var(--ui-inset); border:1px solid var(--ui-line-soft); }
#lab-modal .lab-sample-art canvas { width:100%; height:100%; image-rendering:pixelated; }
#enchanting-modal { --ench-bg:var(--ui-bg); --ench-line:var(--ui-line-soft); --ench-text:var(--ui-text); --ench-muted:var(--ui-muted); --ench-green:var(--ui-positive); --ench-gold:var(--ui-accent); border:1px solid var(--ui-line); box-shadow:0 10px 40px #0008; }
#interact-hint { bottom:132px; font:12px Arial,sans-serif; border:1px solid var(--ui-line); border-radius:3px; background:#1b261fec; color:var(--ui-text); letter-spacing:0; }
#minimap-wrap { position:absolute!important; right:16px!important; top:66px!important; width:166px!important; height:auto!important; padding:0!important; background:none!important; border:0!important; border-radius:0!important; box-shadow:none!important; z-index:14!important; }
#minimap-pro-canvas { aspect-ratio:1; image-rendering:pixelated; }
.minimap-toolbar { display:flex; justify-content:center; gap:5px; margin-top:4px; }
.minimap-toolbar button { display:grid; place-items:center; width:26px; height:24px; padding:4px; background:#222a22f5!important; color:var(--ui-muted)!important; border-color:#606a59!important; }
.minimap-toolbar svg { width:14px; height:14px; }
#minimap-pro-tip { position:fixed!important; max-width:220px; background:var(--ui-inset)!important; border:1px solid var(--ui-line)!important; color:var(--ui-text)!important; font:11px Arial,sans-serif!important; letter-spacing:0!important; border-radius:3px!important; }
#sk-modal .sk-box, #prog-talent-modal .prog-box { background:var(--ui-bg); border-color:var(--ui-line); }
#sk-modal button, #sk-modal select, #prog-talent-modal button { color:var(--ui-text)!important; border-color:var(--ui-line)!important; }
#sk-modal .sk-row[aria-pressed=true], #prog-talent-modal .tt-row[aria-pressed=true] { background:#353d30!important; box-shadow:inset 3px 0 var(--ui-accent)!important; }
#sk-modal .sk-tab[aria-selected=true], #prog-talent-modal .tt-branch-tab[aria-selected=true] { border-bottom-color:var(--ui-accent)!important; }
#sk-modal .sk-upgrade, #prog-talent-modal .tt-cta { background:#64774d!important; color:#f7f5dc!important; }
@media(min-width:1600px) { #hp-actionbar { --hp-ring-size:88px; --hp-portrait-size:72px; } }
@media(max-width:1050px) { #hp-actionbar { grid-template-columns:minmax(200px,1fr) minmax(310px,1.5fr) minmax(200px,1fr); --hp-ring-size:66px; --hp-portrait-size:54px; gap:8px; } #hp-actionbar .hp-portrait-block { gap:7px; padding:7px!important; } #hp-actionbar .hp-stat-name { font-size:12px; } }
@media(max-width:760px) {
  #hp-topbar { left:8px; right:8px; top:8px; height:auto; display:flex; flex-wrap:wrap; gap:6px; }
  .hp-top-left { width:100%; justify-content:space-between; height:42px; }
  .hp-location { padding:5px 9px; gap:7px; }
  #hp-location-name { font-size:13px; max-width:220px; }
  #hp-topbar .hp-top-right { height:34px; gap:3px; padding:2px; }
  #hp-topbar .hp-top-btn { width:28px; height:28px; padding:5px!important; }
  #hp-resources { top:98px!important; left:8px!important; right:auto!important; height:28px; width:auto!important; max-width:calc(100% - 140px); padding:0; gap:0; justify-content:flex-start; }
  #hp-resources .hp-res-item { padding:4px 7px; }
  #hp-quest-tracker { left:8px!important; top:136px!important; width:calc(100% - 144px); max-width:calc(100% - 144px); max-height:240px; }
  #minimap-wrap { right:8px!important; top:98px!important; width:116px!important; }
  .minimap-toolbar { gap:3px; margin-top:1px; }
  .minimap-toolbar button { width:24px; height:22px; }
  #hp-actionbar { width:calc(100% - 16px); bottom:8px; grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-areas:'player target' 'slots slots'; gap:5px; --hp-ring-size:50px; --hp-portrait-size:40px; }
  #hp-actionbar .hp-portrait-player { grid-area:player; }
  #hp-actionbar .hp-portrait-target { grid-area:target; }
  #hp-actionbar .hp-portrait-block { min-height:83px; height:83px; padding:5px!important; gap:5px; }
  #hp-actionbar .hp-stat-name { font-size:11px; }
  #hp-actionbar .hp-stat-lvl { font-size:9px; }
  #hp-actionbar .hp-hp-text { font-size:9px; }
  #hp-actionbar .hp-xp-text { font-size:8px; }
  #hp-actionbar .hp-pill-lvl { min-width:19px; height:18px; font-size:10px!important; }
  #hp-actionbar #hp-slots { grid-area:slots; gap:3px; padding:4px; }
  #hp-actionbar .hp-slot-icon { width:calc(100% - 3px); height:calc(100% - 3px); }
  #hp-actionbar .hp-slot-key, #hp-actionbar .hp-slot-count { font-size:8px; }
  #hp-player-status { bottom:150px!important; left:8px!important; }
  #hp-toast-layer { bottom:195px; width:260px; }
  #af-btn { right:42px!important; bottom:150px!important; }
  #af-settings { right:8px; bottom:150px; }
  #interact-hint { bottom:185px; max-width:calc(100% - 20px); }
}
