/* V3 HfHud: original HF frame/gauges, supplied in-memory as blob images. */
.v4-character-hud{position:fixed;left:0;top:0;width:240px;height:80px;z-index:12;color:#dcdcdc;font:11px/14px Arial;text-shadow:1px 1px #000;user-select:none;resize:horizontal;overflow:hidden;min-width:179px;max-width:381px}
.hud-background{position:absolute;inset:0 0 0 14px;border:4px solid transparent;border-image:var(--hudBackground) 4 fill/4px stretch}.hud-spine{position:absolute;inset:0 auto 0 0;width:16px;background:var(--hudTile) repeat-y}.hud-spine>*{position:absolute;left:0;width:16px;height:8px}.hud-spine i{top:0;background:var(--hudTop)}.hud-spine b{top:calc(50% - 4px);background:var(--hudCenter)}.hud-spine em{bottom:0;background:var(--hudBottom)}
.hud-self-target{position:absolute;inset:0;width:100%;height:100%;box-sizing:border-box;z-index:1;border:0;padding:0;background:none;cursor:pointer;touch-action:manipulation}.hud-self-target:focus-visible{outline:auto;outline-offset:-2px}
.v4-character-hud header{position:absolute;inset:0 5px auto 16px;height:23px;z-index:2;cursor:move;touch-action:none}.hud-level{position:absolute;left:3px;top:2px;width:22px;height:20px;box-sizing:border-box;padding-top:3px;text-align:center;color:#799bb0;background:var(--hudLevel) no-repeat}.hud-name{position:absolute;left:29px;right:0;top:6px;height:14px;overflow:hidden;white-space:nowrap;text-align:left;border:0;background:none;color:inherit;font:inherit;padding:0;cursor:pointer}
.hud-gauge{position:absolute;left:19px;right:5px;height:13px;overflow:hidden}.hud-gauge[data-kind=CP]{top:23px}.hud-gauge[data-kind=HP]{top:36px}.hud-gauge[data-kind=MP]{top:49px}.hud-gauge[data-kind=EXP]{top:62px;left:28px}.hud-strip{position:absolute;inset:0;display:flex;overflow:hidden}.hud-strip>i{flex:0 0 4px}.hud-strip>b{flex:1;min-width:0}.hud-strip>*{height:100%;background-repeat:repeat-x;background-position:left top}.hud-fill{position:absolute;left:0;top:0;bottom:0;overflow:hidden}.hud-digits{display:flex;height:12px;white-space:nowrap}.hud-digits>i{display:block;flex:0 0 8px;width:8px;height:12px;background-image:var(--hf-digits);background-repeat:no-repeat}.hud-label{position:absolute;left:3px;top:0}.hud-value{position:absolute;right:3px;top:0}.hud-exp-cap{position:absolute;left:19px;top:62px;width:9px;height:15px;background:var(--hudCap)}
body:not(.v4-diagnostics) #hud,body:not(.v4-diagnostics) #help{display:none}
.v4-radar{position:fixed;right:-20px;top:-25px;width:256px;height:256px;z-index:12;pointer-events:none}.v4-radar>button{position:absolute;border:0;padding:0;cursor:pointer;pointer-events:auto;background:var(--normal) center/100% 100%}.v4-radar>button:hover{background-image:var(--over)}.v4-radar>button:active{background-image:var(--down)}.radar-options{position:absolute;left:70px;top:75px;font:11px Arial;color:#ddd;pointer-events:auto}.radar-options>b{display:block;margin-bottom:9px}.radar-options label{display:flex;height:17px;align-items:center}.radar-options input{margin:0 5px 0 0}.v4-map{width:338px;left:calc(50% - 169px);top:150px}.v4-map .v4-panel-content{padding:4px 5px 10px}.v4-map canvas{width:328px;height:328px;display:block;cursor:grab;touch-action:none}.map-controls{display:flex;gap:2px;margin-top:8px}.map-controls button{flex:1;height:27px;background:var(--hf-button) center/100% 100%;border:0;color:#ddd;font:11px Arial;cursor:pointer}
.v4-chat{position:fixed;left:0;bottom:2px;width:348px;height:187px;max-width:calc(100vw - 175px);z-index:14;font:12px/17px Arial;color:#dcdcdc;text-shadow:1px 1px #000}.v4-chat button{font:inherit;color:inherit;border:0;background:none;padding:0;cursor:pointer}.chat-bg{position:absolute;left:0;width:100%;background-size:100% 100%;pointer-events:none}.chat-bg-head{top:0;height:18px;background-image:var(--chat-head)}.chat-bg-body{top:18px;bottom:64px;background-image:var(--chat-body)}.chat-bg-bottom{bottom:46px;height:18px;background-image:var(--chat-bottom)}.chat-bg-input{bottom:0;height:46px;background-image:var(--chat-input)}.v4-chat-log{position:absolute;left:5px;right:15px;top:4px;bottom:49px;overflow:hidden}.v4-chat-system{position:absolute;left:0;bottom:100%;width:100%;height:128px;overflow:hidden;background:var(--chat-body) center/100% 100%;padding:4px 6px;box-sizing:border-box}.chat-line{height:17px;white-space:pre;overflow:hidden;box-sizing:border-box}.chat-sender:hover{text-decoration:underline}.v4-chat-tabs{position:absolute;left:22px;bottom:23px;height:23px;display:flex;right:4px}.v4-chat-tabs button{flex:1;height:21px;background:var(--chat-tab) center/100% 100%;white-space:nowrap}.v4-chat-tabs button[aria-selected=true]{background-image:var(--chat-selected);color:#fff3c3}.v4-chat form{position:absolute;left:23px;right:7px;bottom:6px;height:16px}.v4-chat input:not([type=checkbox]){width:100%;height:16px;box-sizing:border-box;border:0;outline:0;background:transparent;color:#ddd;font:12px Arial;padding:0}.v4-chat input:focus{background:#10100b99}.v4-chat .chat-options{position:absolute;left:5px;bottom:49px;width:15px;height:15px;background:var(--chat-options) center/100% 100%}.v4-chat .chat-party-match{position:absolute;left:5px;bottom:6px;width:15px;height:15px;background:var(--chat-party) center/100% 100%}.chat-notice{position:absolute;bottom:calc(100% + 136px);left:5px;color:#ffb090}.chat-filters{position:absolute;bottom:48px;left:24px;width:220px;padding:10px;background:var(--hf-frame) center/100% 100%;z-index:1}.chat-filters label{display:inline-flex;width:50%;align-items:center}.chat-filters>button{display:block;margin-top:5px;width:100%;background:var(--hf-button) center/100% 100%}
/* V3 scroll controls, decoded from the original HF packages in memory. */
.v4-chat-system{padding-right:19px}.chat-scroll{position:absolute;right:2px;width:12px;display:flex;flex-direction:column;align-items:center;background:#17171366}.chat-scroll-messages{top:4px;bottom:49px}.chat-scroll-system{bottom:calc(100% + 4px);height:120px}.v4-chat .chat-scroll button{flex:0 0 12px;width:12px;background:var(--chat-scroll-up) center/100% 100%}.v4-chat .chat-scroll button:last-child{background-image:var(--chat-scroll-down)}.chat-scroll button:disabled{opacity:.45}.v4-chat .chat-scroll input[type=range]{appearance:none;writing-mode:vertical-lr;direction:ltr;width:10px;height:0;min-height:0;flex:1;padding:0;margin:0;background:var(--chat-scroll-track) center/100% 100%;border:0}.chat-scroll input::-webkit-slider-thumb{appearance:none;width:9px;height:24px;border:0;border-radius:0;background:var(--chat-scroll-thumb) center/100% 100%}.chat-scroll input::-moz-range-thumb{width:9px;height:24px;border:0;border-radius:0;background:var(--chat-scroll-thumb) center/100% 100%}.v4-chat form{height:19px;bottom:4px}.v4-chat form input{height:19px!important;padding:1px 4px!important;background:#10100b99!important;border:1px solid #66644d!important;border-radius:1px}.v4-chat form input:focus{border-color:#c1ae79!important;background:#10100bdd!important}.v4-chat form input::placeholder{color:#aaa594;text-shadow:none}.chat-scroll[hidden]{display:none}
/* HF ChatFilterWnd coordinates; unavailable later-chronicle options are omitted. */
.chat-filters{left:24px;bottom:48px;width:243px;height:294px;padding:0;background:var(--filter-drawer) center/100% 100%;font:11px Arial}.chat-filters>*{position:absolute}.chat-filter-page{left:9px;top:32px;width:224px;height:219px}.chat-filter-page>*{position:absolute}.chat-filter-page label{display:flex;align-items:center;white-space:nowrap;width:auto}.chat-filter-page input[type=checkbox],.radar-options input[type=checkbox]{appearance:none;width:14px;height:14px;flex:0 0 14px;margin:0 4px 0 0;background:var(--filter-check) center/100% 100%}.chat-filter-page input:checked,.radar-options input:checked{background-image:var(--filter-checked)}.chat-filters .chat-filter-tab{margin:0;background:var(--hf-tab) center/100% 100%}.chat-filters .chat-filter-tab[aria-selected=true]{background-image:var(--hf-tabSelected)}.chat-filters .chat-filter-button{margin:0;background:var(--hf-button) center/100% 100%}.chat-filter-group{border:3px solid transparent;border-image:var(--filter-group) 3 fill/3px stretch;box-sizing:border-box;pointer-events:none}.chat-filter-page select{font:11px Arial;background:#171c22;color:#ddd;border:1px solid #555}.chat-filter-page select:disabled{opacity:.5}
/* HF ChatFilterWnd artwork uses the supplied textures' native Split9 values.
   Drawer:64x64,16px caps. Buttons:32x32,active29x27,13/2/14 caps;
   include the transparent3px right/5px bottom padding outside the control.
   Tabs:32x32,active height23,12/8/12 caps,9px transparent bottom padding. */
.chat-filters{background:none;border:0 solid transparent;border-image:var(--filter-drawer) 16 fill / 16px stretch}
.chat-filters .chat-filter-button{background:none;border-image:var(--hf-button) 0 17 5 13 fill / 0 17px 5px 13px / 0 3px 5px 0 stretch}
.chat-filters .chat-filter-button:active{border-image-source:var(--hf-buttonDown)}
.chat-filters .chat-filter-tab{background:none;border-image:var(--hf-tab) 0 12 9 12 fill / 0 12px 9px 12px / 0 0 9px 0 stretch}
.chat-filters .chat-filter-tab[aria-selected=true]{background:none;border-image-source:var(--hf-tabSelected)}
/* Original C4 commander choice through the existing HF checkbox art. The
   adaptation occupies18px inside the existing input, retaining five HF tabs. */
.v4-chat form .chat-commander{appearance:none;position:absolute;left:0;top:2px;width:14px;height:14px!important;margin:0;padding:0!important;border:0!important;background:var(--command-check) center/14px 14px no-repeat!important;cursor:pointer}
.v4-chat form .chat-commander:checked{background-image:var(--command-checked)!important}
.v4-chat form .chat-commander[hidden]{display:none}
.v4-chat form.is-command-owner>input:not([type=checkbox]){margin-left:18px;width:calc(100% - 18px)}
