/* Original classic CO atlas geometry; the browser owns layout and input. */
.world-status { position:absolute; z-index:5; top:4px; left:4px; max-width:calc(100% - 8px); overflow:hidden; white-space:nowrap; text-overflow:ellipsis; pointer-events:none; color:#ffff00; font:bold 11px/14px Arial,sans-serif; text-shadow:-1px -1px 0 #000,1px -1px 0 #000,-1px 1px 0 #000,1px 1px 0 #000; }
.alpha-testing-label { top:20px; left:50%; transform:translateX(-50%); }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.classic-viewport { --hud-scale:1; position:absolute; z-index:4; bottom:0; left:50%; width:1024px; height:132px; transform:translateX(-50%) scale(var(--hud-scale)); transform-origin:bottom center; }
.classic-menu { position:relative; width:1024px; height:132px; background:url('/ui/classic-hud.png?v=4') no-repeat; font:12px Arial,sans-serif; text-shadow:0 1px 2px #000; }
.classic-menu button { touch-action:manipulation; }
.classic-menu button:disabled { cursor:default; }
.classic-orb { position:absolute; top:1px; left:0; width:97px; height:131px; }
.classic-orb::after { content:''; position:absolute; inset:0; z-index:2; pointer-events:none; background:url('/ui/hud-orb-frame.png?v=4b11cc0870259abf') no-repeat; }
.orb-backdrop { position:absolute; left:9px; top:47px; width:75px; height:74px; background:url('/ui/orb-background.png?v=d45d3909769e4685') no-repeat; }
.orb-half { --remaining:0%; position:absolute; top:46px; z-index:1; clip-path:inset(calc(100% - var(--remaining)) 0 0 0); }
.orb-health { left:12px; width:29px; height:71px; background:url('/ui/health-fill-tight.png?v=fd2c73d8b95f73e5') no-repeat; }
.orb-mana { left:52px; top:44px; width:34px; height:85px; background:url('/ui/mana-fill-classic.png?v=36b6178a93d9e132') no-repeat;
  /* The original disc sits at its GUI.ini origin and is taller than the glass; fill across the
     same 46-117px band as health so equal percentages reach equal heights. */
  clip-path:inset(calc(2px + 71px * (1 - var(--fraction, 0))) 0 0 0); }
/* Conquer.exe binds GUI.ini [130-1025] (dialog 42,58) to Control.Ani [Progress46], an 8x70 stamina bar filling from the bottom. */
.orb-stamina { left:42px; top:47px; width:8px; height:70px; background:url('/ui/vitals/stamina-fill.png?v=667f997c8da89f54') no-repeat; }
.orb-stamina-bonus { left:42px; top:41px; width:8px; height:35px; background:url('/ui/vitals/stamina-bonus.png?v=82b9a49b24283dc2') 0 0 / 8px 35px no-repeat; clip-path:inset(0 0 calc(100% - var(--remaining)) 0); }
/* GUI.ini [130-1018] (dialog 0,50) is Control.Ani [Progress42], the 92x92 XP ring, drawn above the orb frame and filling from the bottom. */
.orb-xp { left:0; top:39px; width:92px; height:92px; z-index:3; pointer-events:none; background:url('/ui/vitals/xp-ring.png?v=313560c0d789f1ae') no-repeat; }
.orb-half[data-empty='true'] { visibility:hidden; }
.orb-tools { position:absolute; inset:0; z-index:3; pointer-events:none; }
.orb-tool { position:absolute; width:22px; height:22px; border:0; padding:0; pointer-events:auto; background-color:transparent; background-repeat:no-repeat; }
.orb-run { left:0; top:13px; background-image:url('/ui/orb-button-run.png?v=bef6f06b50676d11'); }
.orb-run[aria-pressed='false'],.orb-run:active { background-image:url('/ui/orb-button-run-pressed.png?v=653a60e254812870'); }
.orb-inspect { left:22px; top:1px; background-image:url('/ui/orb-button-inspect.png?v=bcd82ecfcd26f810'); }
.orb-inspect:active { background-image:url('/ui/orb-button-inspect-pressed.png?v=7165150f695b2327'); }
.orb-camera { left:50px; top:1px; background-image:url('/ui/orb-button-camera.png?v=4f89097ef20bf20e'); }
.orb-camera:active { background-image:url('/ui/orb-button-camera-pressed.png?v=79557033be0a28c3'); }
.orb-map { left:72px; top:13px; pointer-events:none; background-image:url('/ui/orb-button-map.png?v=7ece2732bccdb446'); }
.orb-history { left:35px; top:25px; background-image:url('/ui/orb-button-chat-toggle.png?v=b1957119e16b56ca'); }
.orb-history[aria-expanded='false'],.orb-history:active { background-image:url('/ui/orb-button-chat-toggle-pressed.png?v=98ea60cf9422f26c'); }
.classic-session { display:none; }
.connection { display:flex; align-items:center; gap:4px; color:#b5d0d6; }
.connection i { width:5px; height:5px; background:#bda46a; border-radius:50%; }
.connection[data-state='online'] i { background:#65d995; }.connection[data-state='offline'] i { background:#e87c63; }
/* An extra orb control above the recipient box: the original ChkAutoGroup checkbox. The zero-size second layer preloads the ticked frame. */
.classic-auto-ctrl { position:absolute; z-index:3; top:43px; left:100px; display:flex; align-items:center; gap:4px; color:#fff6da; font-size:11px; line-height:16px; text-shadow:1px 1px #000; cursor:pointer; user-select:none; }
.classic-auto-ctrl input { appearance:none; margin:0; width:14px; height:14px; cursor:pointer; background:url('/ui/checkbox.png?v=80f320718ba3f205'),url('/ui/checkbox-checked.png?v=42752eece6cf80dc'); background-size:auto,0 0; }
.classic-auto-ctrl input:checked { background:url('/ui/checkbox-checked.png?v=42752eece6cf80dc'); }
.classic-name { position:absolute; top:65px; left:119px; width:93px; height:21px; box-sizing:border-box; padding:0 4px; border:0; background:transparent; overflow:hidden; white-space:nowrap; color:#fff6da; text-align:left; font:11px/21px Arial,sans-serif; }
.classic-chat button { position:absolute; top:64px; width:48px; height:22px; padding:0; border:0; background-color:transparent; background-repeat:no-repeat; color:transparent; font-size:0; }
.classic-chat #chat-send { left:254px; background-image:url('/ui/chat/talk.png?v=7c3f557c466d8421'); }
.classic-chat #chat-clear { left:701px; background-image:url('/ui/button-clean.png?v=31b6065a06e1c071'); }
.classic-chat #chat-toggle { left:752px; background-image:url('/ui/button-chat-log.png?v=e0809e2b29a9eb09'); }
.classic-chat #chat-toggle:active { background-image:url('/ui/button-chat-log-pressed.png?v=4b4e0055a1302767'); }
.classic-chat .classic-send-icon { left:679px; top:66px; width:19px; height:15px; background-image:url('/ui/chat-send-native.png?v=1216d2faacbe6a0e'); }
.classic-emotion { position:absolute; left:655px; top:65px; width:19px; height:15px; background:url('/ui/chat-emotion.png?v=42f063cebe0a09dd') no-repeat; }
.classic-chat input { position:absolute; left:312px; top:65px; width:327px; height:21px; box-sizing:border-box; border:0; padding:0 4px; background:transparent; color:#bdc9c9; font:11px/21px Arial,sans-serif; }
#chat-modes { position:absolute; z-index:10; left:254px; bottom:68px; display:flex; flex-direction:column; width:48px; }
#chat-modes[hidden] { display:none; }
.classic-chat #chat-modes button { position:static; flex:none; width:48px; height:22px; background-repeat:no-repeat; }
.classic-chat [data-mode='talk'] { background-image:url('/ui/chat/talk.png?v=7c3f557c466d8421'); }
.classic-chat [data-mode='whisper'] { background-image:url('/ui/chat/whisper.png?v=75ee5417b5d9eebd'); }
.classic-chat [data-mode='team'] { background-image:url('/ui/chat/team.png?v=4affef9db67ff9ce'); }
.classic-chat [data-mode='guild'] { background-image:url('/ui/chat/guild.png?v=f3835d5841f65fb9'); }
.classic-chat [data-mode='friend'] { background-image:url('/ui/chat/friend.png?v=9cdb619a99a5e6cd'); }
.classic-chat [data-mode='service'] { background-image:url('/ui/chat/service.png?v=ca04ad1bc1e67ce0'); }
.classic-chat [data-mode='world'] { background-image:url('/ui/chat/world.png?v=3770e0a7570c6b9f'); }
.classic-chat [data-mode='broadcast'] { background-image:url('/ui/chat/broadcast.png?v=4843c8bfbacf912e'); color:#e9e1bf; font:bold 8px/22px Arial,sans-serif; }
.classic-chat #chat-send[data-mode] { background-size:48px 22px; }
.classic-chat #chat-send[data-mode='talk'] { background-image:url('/ui/chat/talk.png?v=7c3f557c466d8421'); }
.classic-chat #chat-send[data-mode='whisper'] { background-image:url('/ui/chat/whisper.png?v=75ee5417b5d9eebd'); }
.classic-chat #chat-send[data-mode='team'] { background-image:url('/ui/chat/team.png?v=4affef9db67ff9ce'); }
.classic-chat #chat-send[data-mode='guild'] { background-image:url('/ui/chat/guild.png?v=f3835d5841f65fb9'); }
.classic-chat #chat-send[data-mode='friend'] { background-image:url('/ui/chat/friend.png?v=9cdb619a99a5e6cd'); }
.classic-chat #chat-send[data-mode='service'] { background-image:url('/ui/chat/service.png?v=ca04ad1bc1e67ce0'); }
.classic-chat #chat-send[data-mode='world'] { background-image:url('/ui/chat/world.png?v=3770e0a7570c6b9f'); }
.classic-chat #chat-send[data-mode='broadcast'] { background-image:url('/ui/chat/broadcast.png?v=4843c8bfbacf912e'); color:#e9e1bf; font:bold 8px/22px Arial,sans-serif; }
.classic-chat #chat-modes button:is(:hover,:focus-visible,[aria-checked='true']),.classic-chat #chat-send:is(:active,[aria-expanded='true']) { background-image:var(--chat-pressed); }
.classic-chat [data-mode='talk'] { --chat-pressed:url('/ui/chat/talk-pressed.png?v=eb1c2580fa40e238'); }
.classic-chat [data-mode='whisper'] { --chat-pressed:url('/ui/chat/whisper-pressed.png?v=1a381e586c50f969'); }
.classic-chat [data-mode='team'] { --chat-pressed:url('/ui/chat/team-pressed.png?v=efbf8a061b8bd35e'); }
.classic-chat [data-mode='guild'] { --chat-pressed:url('/ui/chat/guild-pressed.png?v=fa613d052ec8d60c'); }
.classic-chat [data-mode='friend'] { --chat-pressed:url('/ui/chat/friend-pressed.png?v=2d9bee9f5fa7c04a'); }
.classic-chat [data-mode='service'] { --chat-pressed:url('/ui/chat/service-pressed.png?v=a24c8d4c80893f8e'); }
.classic-chat [data-mode='world'] { --chat-pressed:url('/ui/chat/world-pressed.png?v=8e524eedaf41e80c'); }
.classic-chat [data-mode='broadcast'] { --chat-pressed:url('/ui/chat/broadcast-pressed.png?v=1835ca1b03778e5c'); }
.chat-tag { padding:0; margin:0; border:0; background:none; color:#00ff00; font:inherit; font-weight:bold; text-shadow:inherit; cursor:pointer; }.chat-line { overflow-wrap:anywhere; }
.chat-tag:focus-visible { outline:1px solid #e4d39c; }
.chat-recipient-target { outline:1px solid #e4d39c; outline-offset:-1px; cursor:pointer; }
.chat-address { color:#fff; }.chat-sender,.chat-recipient { color:#c0ffc0; }
.chat-line.talk .chat-message { color:#fff; }.chat-line.whisper .chat-message { color:#ff99ff; }.chat-line.team .chat-message { color:#ffff00; }.chat-line.guild .chat-message { color:#00ff00; }.chat-line.friend .chat-message { color:#ffaaaa; }.chat-line.service .chat-message { color:#ffa500; }.chat-line.broadcast .chat-message { color:#ff3333; }.chat-line.world .chat-message { color:#ffff00; }
.classic-quickslots { position:absolute; left:96px; top:91px; width:402px; height:41px; display:grid; grid-template-columns:repeat(4,39.5px) repeat(6,40.666667px); }
.classic-quickslots .quickslot { position:relative; width:100%; height:41px; padding:0; border:0; border-radius:0; background:transparent; cursor:pointer; }
.classic-quickslots .quickslot img { position:absolute; width:32px; height:32px; top:0; left:50%; transform:translateX(-50%); object-fit:contain; pointer-events:none; }
.classic-quickslots .quickslot:is(:hover,:focus-visible),.classic-quickslots.assigning .quickslot { outline:1px solid #d5c28b88; outline-offset:-4px; }
.classic-quickslots .quickslot.unavailable img { filter:grayscale(1) brightness(.55); }
#carried-shortcut { position:fixed; z-index:2147483646; left:0; top:0; width:43px; height:43px; object-fit:contain; pointer-events:none; user-select:none; }
.classic-buttons { position:absolute; left:500px; top:86px; display:grid; grid-template-columns:repeat(5,50px); grid-template-rows:repeat(2,25px); }
.classic-menu-button { align-self:start; justify-self:start; width:48px; height:22px; padding:0; border:0; background-color:transparent; background-repeat:no-repeat; }
.classic-menu-button:disabled { opacity:1; }
.menu-character { background-image:url('/ui/button-character.png?v=9832c48a2fbcd016'); }.menu-character:is(:hover,:active,[aria-expanded='true']) { background-image:url('/ui/button-character-pressed.png?v=a0c0177f632351da'); }
.menu-inventory { background-image:url('/ui/button-inventory.png?v=328f985d1dba896e'); }.menu-inventory:is(:hover,:active,[aria-expanded='true']) { background-image:url('/ui/button-inventory-pressed.png?v=d7e548a601982007'); }
.menu-settings { background-image:url('/ui/button-settings.png?v=b1abd1e977a1f7fd'); }.menu-settings:is(:hover,:active,[aria-expanded='true']) { background-image:url('/ui/button-settings-pressed.png?v=0557f6a45956d9ed'); }
.menu-friend { background-image:url('/ui/button-friend.png?v=ffa383777ff7ad7b'); }.menu-capture { background-image:url('/ui/button-capture.png?v=916b13175dacb640'); }.menu-guild { background-image:url('/ui/button-guild.png?v=d421a0687e54c347'); }
.menu-action { background-image:url('/ui/button-action.png?v=35b8be58ccdc6406'); }.menu-trade { background-image:url('/ui/button-trade.png?v=7fa080deb907b03f'); }.menu-team { background-image:url('/ui/button-team.png?v=271c17c586042b2c'); }.menu-message { background-image:url('/ui/button-message.png?v=c77221d928840a1f'); }
.classic-skill-slot { position:absolute; left:753px; top:86px; width:47px; height:46px; }
.classic-experience { position:absolute; left:99px; top:87px; width:398px; height:3px; color:#00ff22; font:11px/12px 'Courier New',monospace; text-shadow:1px 1px #000; }
.experience-label { position:absolute; left:176px; top:-47px; white-space:nowrap; letter-spacing:1px; }
.experience-track { position:absolute; left:0; top:0; width:398px; height:3px; background:#171500; }
.experience-fill { display:block; width:0; height:3px; background:linear-gradient(to bottom,#edbb54 0 1px,#e8a326 1px 2px,#cd9b52 2px 3px); }
.panel-layer { position:absolute; z-index:8; inset:0; display:grid; place-items:center; padding:22px 22px 152px; background:#020b124d; }
.parchment-panel { width:min(440px,100%); max-height:100%; overflow:auto; padding:15px 18px; border:12px solid #a28d50; border-image:url('/ui/inventory-window.png?v=5f09e8cc95c591fd') 12 stretch; background:#17394c url('/ui/panel-texture.png?v=93164c996907e574') center/180px; box-shadow:0 8px 28px #000b; color:#eee4c9; font:12px/1.5 Arial,sans-serif; }
.panel-heading { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:12px; padding-bottom:8px; border-bottom:1px solid #b2a37055; }
.panel-heading h2 { margin:0; color:#efda9d; font:20px/1.2 Georgia,serif; }
.close-panel { width:24px; height:24px; padding:0; border:0; flex-shrink:0; background:transparent url('/ui/close.png?v=516ee3f630374e88') center/22px no-repeat; color:transparent; }
.close-panel:hover { background-image:url('/ui/close-pressed.png?v=d43d3dd4329aa332'); }
.panel-intro,.panel-note,.parchment-panel .credits { color:#bdccd0; font-size:11px; line-height:1.6; }
.panel-note { margin:12px 0 0; padding-top:10px; border-top:1px solid #b2a37044; }
.character-summary h3 { margin:0; color:#f4dea7; font-size:17px; }.character-summary p { margin:3px 0 14px; color:#adc7ce; font-size:11px; }
.character-tabs { display:flex; border-bottom:1px solid #b2a37077; margin-bottom:12px; }
.character-tabs button { flex:1; padding:8px; border:1px solid transparent; background:#112e3e; color:#c7d2ce; }
.character-tabs button[aria-selected='true'] { border-color:#ad9558; background:#345567; color:#fff0c1; }
.character-details,.bag-currency { margin:0; }
.character-details>div,.bag-currency>div { display:flex; justify-content:space-between; gap:16px; padding:6px 0; border-bottom:1px solid #879c9b22; }
.character-details dt,.bag-currency dt { color:#b4c7cc; }.character-details dd,.bag-currency dd { margin:0; color:#f0dfae; text-align:right; font-variant-numeric:tabular-nums; }
.equipment-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:8px; }
.equipment-slot { min-height:57px; padding:7px 9px 7px 48px; border:1px solid #857b4f; background:#112a38 url('/ui/equipment-armor-empty.png?v=7a52e6c45326ad84') 6px center/34px 40px no-repeat; }
.equipment-slot.gear-head { background-image:url('/ui/equipment-head-empty.png?v=d070f67ae3b51dde'); }.equipment-slot.gear-necklace { background-image:url('/ui/equipment-necklace-empty.png?v=3c7b27282a8c646a'); }.equipment-slot.gear-rightHand { background-image:url('/ui/equipment-weapon-empty.png?v=07868f3b3b499480'); }.equipment-slot.gear-leftHand { background-image:url('/ui/equipment-shield-empty.png?v=60b7c4bb04ee3295'); }.equipment-slot.gear-ring { background-image:url('/ui/equipment-ring-empty.png?v=c20bdefbf4be2926'); }.equipment-slot.gear-boots { background-image:url('/ui/equipment-boots-empty.png?v=b9bf43c704ef7643'); }
.equipment-label,.equipment-slot strong { display:block; font-size:10px; }.equipment-label { color:#c0c8b8; }.equipment-slot strong { margin-top:5px; color:#839ca3; font-weight:400; }
.inventory-panel { width:285px; }.inventory-count { margin:0 0 8px; color:#b8cbc8; font-size:11px; }
.inventory-grid { display:grid; grid-template-columns:repeat(5,43px); grid-template-rows:repeat(8,43px); width:215px; margin:0 auto 12px; }
.inventory-slot { width:43px; height:43px; background:url('/ui/inventory-slot.png?v=90657abfe5e8983f') center/43px 43px; font-size:9px; padding:4px; overflow:hidden; }
.inventory-slot:hover { filter:brightness(1.3); }
.setting-row { display:flex; justify-content:space-between; align-items:center; gap:16px; padding:12px 0; border-bottom:1px solid #b2a37044; }.setting-row strong { font-size:12px; font-weight:400; }.setting-row small { display:block; color:#a5bec5; font-size:10px; margin-top:3px; }
.setting-row select { max-width:145px; padding:6px; border:1px solid #8d815a; background:#102c3b; color:#eadbb0; font:11px Arial,sans-serif; }
/* Options "Hide": three model toggles on one row (hide-models.js). */
.graphics-setting { display:flex; flex-wrap:wrap; align-items:center; gap:6px 16px; margin:0; padding:12px 0; border:0; border-bottom:1px solid #b2a37044; }.graphics-setting legend { float:left; width:100%; padding:0; }.graphics-setting legend strong { font-size:12px; font-weight:400; }.graphics-setting legend small { display:block; color:#a5bec5; font-size:10px; margin-top:3px; }.graphics-setting label { display:flex; align-items:center; gap:6px; font-size:12px; cursor:pointer; }
.hide-models-setting { display:flex; flex-wrap:wrap; align-items:center; gap:6px 16px; margin:0; padding:12px 0; border:0; border-bottom:1px solid #b2a37044; }.hide-models-setting legend { float:left; width:100%; padding:0; }.hide-models-setting legend strong { font-size:12px; font-weight:400; }.hide-models-setting legend small { display:block; color:#a5bec5; font-size:10px; margin-top:3px; }.hide-models-setting label { display:flex; align-items:center; gap:6px; font-size:12px; cursor:pointer; }
.volume-setting { margin-top:15px; }.volume-setting label { display:flex; justify-content:space-between; }.volume-setting strong { font-weight:400; }.volume-controls { display:flex; gap:12px; align-items:center; margin-top:8px; }.volume-controls input { min-width:0; flex:1; accent-color:#c4aa69; }
.walk-button,.volume-controls button { padding:8px 12px; border:1px solid #aa945d; background:#193c50; color:#efdfb2; font-size:12px; }.walk-button:hover,.volume-controls button:hover { background:#2b546a; }
.session-actions { display:flex; gap:10px; margin-top:16px; }.session-actions button { flex:1; }
.controls-guide { margin:12px 0; }.controls-guide>div { margin-bottom:12px; }.controls-guide dt { color:#f1d79b; margin-bottom:3px; }.controls-guide dd { margin:0; color:#b9cbd0; font-size:11px; line-height:1.6; }
.sound-status:empty { display:none; }.sound-status { color:#e1c785; font-size:11px; }.parchment-panel a { color:#e2cd95; }
@media(max-height:680px) { .panel-layer { padding-top:10px; padding-bottom:142px; }.parchment-panel { padding:10px 15px; }.panel-heading { margin-bottom:8px; }.character-details>div { padding:4px 0; } }
@media(max-width:1023px) { .panel-layer { padding-bottom:calc(132 / 1024 * 100vw + 12px); } }

.world-status-timers{position:absolute;z-index:5;top:150px;right:12px;display:flex;flex-direction:column;gap:4px;pointer-events:none;color:#fff2b0;font:bold 12px/20px Arial,sans-serif;text-shadow:1px 1px 2px #000}
.world-status-timers[hidden]{display:none}
.world-status-timers>div{display:flex;align-items:center;justify-content:flex-end;gap:5px}
.world-status-timers img{width:20px;height:20px;object-fit:contain}
