/* ==========================================================================
   EDWARDS EST4 FIRE ALARM CONTROL PANEL FASCIA STYLES
   Pixel-accurate rendition of the EST4 Touchscreen Command Center
   ========================================================================== */

:root {
  --est4-cabinet-bg: linear-gradient(180deg, #dce0e6 0%, #cbd1d9 30%, #b8bfc8 100%);
  --est4-cabinet-border: #7d848e;
  --est4-bezel-dark: #3a3f47;
  
  --est4-led-red: #ff2a2a;
  --est4-led-yellow: #ffb800;
  --est4-led-green: #10e045;
  --est4-led-blue: #2563eb;
  
  --est4-led-off-red: #351414;
  --est4-led-off-yellow: #383111;
  --est4-led-off-green: #0d2e18;
}

/* Outer Cabinet Tower */
.est4-cabinet {
  position: relative;
  width: 490px;
  max-width: 100%;
  margin: 0 auto;
  background: var(--est4-cabinet-bg);
  border: 4px solid var(--est4-cabinet-border);
  border-radius: 8px;
  box-shadow: 
    0 18px 50px rgba(0, 0, 0, 0.5),
    inset 0 1px 0 rgba(255, 255, 255, 0.85),
    inset 0 -2px 0 rgba(0, 0, 0, 0.3);
  padding: 16px 20px 20px 20px;
  box-sizing: border-box;
  user-select: none;
  font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
  color: #1a1e24;
}

/* --------------------------------------------------------------------------
   1. TOP ANNUNCIATOR STRIP (ALARM, TROUBLE, CPU FAIL, POWER ON)
   -------------------------------------------------------------------------- */
.est4-top-annunciator {
  background: linear-gradient(180deg, #d3d7de 0%, #bcc2cb 100%);
  border: 2px solid #5d636c;
  border-radius: 5px;
  box-shadow: inset 0 1px 2px rgba(0,0,0,0.3), 0 1px 0 rgba(255,255,255,0.7);
  padding: 8px 12px 10px 12px;
  margin-bottom: 14px;
}

.est4-ann-labels-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  text-align: center;
  font-size: 10.5px;
  font-weight: 900;
  letter-spacing: 0.6px;
  color: #1e242c;
  margin-bottom: 6px;
}

.est4-ann-leds-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  justify-items: center;
}

/* Metallic Reflector Slot for Top LEDs */
.est4-reflector-slot {
  width: 26px;
  height: 12px;
  background: #3a3f47;
  border: 1.5px solid #24282f;
  border-radius: 2px;
  box-shadow: inset 0 1px 2px #000;
  display: flex;
  align-items: center;
  justify-content: center;
}

.est4-led-indicator {
  width: 14px;
  height: 6px;
  border-radius: 1px;
  transition: all 0.12s ease;
}

.est4-led-indicator.red { background: var(--est4-led-off-red); }
.est4-led-indicator.red.active {
  background: var(--est4-led-red);
  box-shadow: 0 0 10px var(--est4-led-red), 0 0 4px #ffffff;
  animation: est4-fire-flash 0.9s infinite alternate;
}

.est4-led-indicator.yellow { background: var(--est4-led-off-yellow); }
.est4-led-indicator.yellow.active {
  background: var(--est4-led-yellow);
  box-shadow: 0 0 8px var(--est4-led-yellow), 0 0 3px #ffffff;
}

.est4-led-indicator.green { background: var(--est4-led-off-green); }
.est4-led-indicator.green.active {
  background: var(--est4-led-green);
  box-shadow: 0 0 8px var(--est4-led-green), 0 0 3px #ffffff;
}

@keyframes est4-fire-flash {
  0% { filter: brightness(0.9); }
  100% { filter: brightness(1.3); }
}

/* --------------------------------------------------------------------------
   2. CENTER COLOR TOUCHSCREEN DISPLAY FRAME
   -------------------------------------------------------------------------- */
.est4-screen-bezel {
  background: #23272d;
  padding: 6px;
  border-radius: 6px;
  border: 2px solid #5a616b;
  box-shadow: 
    inset 0 3px 8px rgba(0, 0, 0, 0.7),
    0 2px 4px rgba(255, 255, 255, 0.4);
  margin-bottom: 18px;
}

.est4-touch-display {
  background: #000000;
  width: 100%;
  height: 480px;
  border-radius: 3px;
  overflow: hidden;
  position: relative;
  box-shadow: inset 0 0 12px rgba(0, 0, 0, 0.8);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  user-select: none;
}

/* --------------------------------------------------------------------------
   2A. TOUCHSCREEN: SCREENSAVER / STANDBY MODE
   -------------------------------------------------------------------------- */
.est4-screensaver-view {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000000;
  background-image: url('data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAIBAQEBAQIBAQECAgICAgQDAgICAgUEBAMEBgUGBgYFBgYGBwkIBgcJBwYGCAsICQoKCgoKBggLDAsKDAkKCgr/2wBDAQICAgICAgUDAwUKBwYHCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgr/wAARCAEYAO4DASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD9VvCvw78B3Xhawuj4d0y9Y2Nv51wLeNyXZWYyOyqAN2RwParh+Gnw9PJ8F6Qf+3ZP8K/PTTv+DpP/AIJc6TpdrpOp3nxEWWxiSB0/4RQMY2RSgwTMCRjIPP8Ad9Kn/wCIqf8A4JVf9BL4jf8AhH//AHRT55lezpX2P0EHwz+Hq/d8F6QPpap/hSf8Kx+HRbcfBOj59fsqf/E1+fn/ABFT/wDBKr/oJfEb/wAI/wD+6KP+Iqf/AIJVf9BL4jf+Ef8A/dFTzVe5XLS7H6DL8OPAKHKeDtJH0t1/wp48A+ClXavhfTQPQQr/AIV+e3/EVP8A8Eqv+gl8Rv8Awj//ALoo/wCIqf8A4JVf9BL4jf8AhH//AHRRzVe4ctLsfoSfAPgojafC2mkenkr/AIUxvh14DbhvCGlH626/4V+fP/EVP/wSq/6CXxG/8I//AO6KP+Iqf/glV/0EviN/4R//AN0Uc1XuHLS7H6CN8NPh642v4L0gg9jbJ/hTf+FXfDj/AKEbRv8AwET/AOJr8/f+Iqf/AIJVf9BL4jf+Ef8A/dFH/EVP/wAEqv8AoJfEb/wj/wD7oo5qvcOWl2P0D/4Vf8Of+hH0b/wET/4mkPwv+HB6+B9G/wDARP8A4mvz9/4ip/8AglV/0EviN/4R/wD90Uf8RU//AASq/wCgl8Rv/CP/APuijmq9w5aXY/QM/DL4dkbT4J0fHp9lT/4mkHwt+G46eBdG/wDARP8A4mvz9/4ip/8AglV/0EviN/4R/wD90Uf8RU//AASq/wCgl8Rv/CP/APuijmq9w5aXY/QMfDH4dDp4I0cf9uqf/E0H4YfDk9fBGj/+Aif/ABNfn5/xFT/8Eqv+gl8Rv/CP/wDuij/iKn/4JVf9BL4jf+Ef/wDdFHNV7hy0ux+gf/Cr/hz/ANCPo3/gIn/xNJ/wq/4cf9CPo3/gIn/xNfn7/wARU/8AwSq/6CXxG/8ACP8A/uij/iKn/wCCVX/QS+I3/hH/AP3RRzVe4ctLsff158PPhbp9q95qHgnRRBEN0oa3RQVHUZ+U89PlO7n5QzYB+c/F37bf7NPgHwLb+NfGH7P93Yi6FpeWMF/Dp9t9t0+ezvLy3vFd5dqmWOzvU+ykrMZ4lj2L+7I8Lf8A4OnP+CU9/G1lJc/EGdZUKNbzeDiUmBH+rYCckq33SMdCa8Tm/wCCzH/BFSSxS1k8ffHAzWWnw6PY6rJ4ctXubbRxaSWq6cOsQh8qaUAuplDuzZBJNNSq9xONK2x9+fE34xfC6PS9f8M6f8AtUjsp5R4ePjCxs7VI7O6vLe3t4bqJXdZPOS4v0BhjWV1a1dgcrkbWqfHr4AatN4jvdD/Z61RLvSfH1x4ai0NvCa297fXcemLqbNb20oDeX5BIUOsSvs+VgZAa/PnRv+C5n/BG/AMat4N1Dw94++NtlH4FnvH0HS38PWVzBFNdXj3M0siz7h5oaV4xIm1hFJMgOHIO9q//Bf3/gj3rOp+ItesvFXxd0y71+W4nuNS0zw/teC4m02y05ri3YvmGVbWziVZG+6JZduM0+eZKjSvsfY0H7VX7P1pq8+ka1+z7c28+l6sbTxdLBBp0sGhtLepaRSvOJvIlQyy7WSB3+ziF0lO6KVqk+J37Vv7NPws8P6v4k8R/BO4hj0TxnL4alTU9Lg0r7XcQ6fHqJlVr8wKsElvLmPnzJm2CPKtvHwhpf8AwW7/AOCKllZaFpsviz4ym20a2itlhPhOyiS+tY76K/itbhItiMiXUKyF1wzF33ZDuDsfEH/gvp/wRn+Ieo6lrFz4j+L2kX2qaxJqU97p/ha3eRJX02LS5I8TSMm1raJc5BwSzDDAGkpVe5XLStsfot498XfAv4fah4E0jUvhNNdP8Q9Zj0nSp7Xwu/lW0klu0y+c0kcawtIAVjVm87chXyiVmaPmNP8Aj5+z7bW/jHUfiD8DZ/DCeDtGGt6iL7SoLiT+z3hupY5JY7RpWs3MVjNIyTpEF8yMEjfXxlqX/BxV/wAEetT8P+DvDof4lw2fgy7t7rQEj8MPlXt4GhjV234kUKThMbVB6Y4rkvCn/Bdv/gjn4f8AAXiP4Xal8RPjXr2heLZbxvEUOveHbF5tUFzC8FwZZoQszFkcIpdi22JACAow3KdiVCk3sfcF38dvAmjJe3Fz+ylqElzd+NLPQ/7Fkk0kS6ZeT6fYtGqO02J4iu+7cqJFhUyvIFQSMOr8X/En4HeDPi5onwuvPgO9wniA3SaLejTreFroeCC8uJLWG3kZbmdkitSJJEjeKOWWFPOCyhk+DvB3/BwD/wAEf/BevWfjK/8AFHxf13VrfxFPrUusax4aiWW+uWtPsDSkQt5aMltEsUbxBSokaRsyDdUHin/gv5/wSL8e+J7TxB4y+Ivxwv4rGb7QulppC21uJ447lI5o/KYSW7rBdOgMZG4xJI+dlQudPcp0qJ+hXwA8TfBX49+HdV1LRfhTp2nXOh65PpGp2t0LC4bz4ViaVle1kkidd0yKSjfu5FliK4Ckd0fhL8Lycn4faH/4Ax//ABNfmr8Kf+DkD/gkx8ILTWZrHxr8WtZutf1eK91nVtZ8LxtcXk8dpFbRSP5TIgKwwqmAQXyHYlhXV/8AEVP/AMEqv+gl8Rv/AAj/AP7orTnmRy0ux/OH8RtUi1XxrrN/Y6gbi1udVuJYZgu0SK77gNv8I4HHsKwMD0FdD8UpfN+I/iFh9hGdcu8rpsYjtx++fiJVAVYwOFA4C4Arn6kbd0JgegowPQUtFBFmJgegowPQUtFAWYmB6CjA9BS0UBZiYHoKMD0FLRQFmJgegowPQUtFAWYmB6CjA9BS0UBZiYHoKMD0FLRQFmJgegowPQUtFAWYmB6CnK7pyjkcEcHsRg/mKSigLMcJZApUSMASMjPXgj+RP500knGT06UUUFDmllckvIxySTk9Sep/GkaSRs7pGOTk5PU88/qfzpKKCbMMnnnr196UyO33nJ6dT6dKSigoMkAgHg9RSh3A2hzj0zSUUDuwycYz1HNJgegpaKBF7xM1ydfvUuIlj23TqI0jCBQGIAAXgACqNS6gzPezOzElriQsSeTzUVABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUATaiAL2bA/5eH/mKhqa/wD+PuY/9PEn8xUIIByRn2oAKKekTSsWEbEDAYIpIXPAz+Ndz8N/2ZP2h/i/qKab8LfgT4r8RSuMKmjeHru4ycHuiH6//WoA4Oivs34cf8G+n/BYz4o28d94c/YQ8Uw28qjy5NcvLLTAc983U0eP+BfTrivcvh3/AMGi3/BYHxkU/wCEm8JeAfCqt95tc8ZpKVHuLNJs/hn8uaAPzAor9l9G/wCDL79sW1CT/Eb9sX4S6TEw+f7LJqExTj1e3QHnjkitF/8Ag0B07RYjJ40/4Kr/AAw0zHDK2l/d/wCBSXSD8xQB+K9FftHN/wAGlfwjCZtf+CxHwvcjqP7PgP6LfE/pVO7/AODRN7wEeEv+CqnwguyR+7+0QGPP123LEfkaAPxoor9bfFP/AAaA/tnW0El14B/bF+A+vbR8kH/CR3lu789v9GdB+LCvJfG3/BrV/wAFifCqSzeHfgh4b8Vxp0m8N+PtNZWGf4VuJImP5UAfnZRX1F8WP+CL/wDwVL+CET3HxF/YS+INtEgzJJY6aL9FHTO+18xcfjXzx4o8A+NPBN82k+NfBGq6LdISPI1LTpoHBHXIkAP5CgDEop8ihAQCp9WDgg/QY4plABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQD0LckZl1d4Uh3l7mRVTGcknA7iv2E/4N1P+CMP/BND/gp98KfEHjz48+O/Gep+NvCWt/Z9Z8FaVqcdjaLaOM2t1kQCRkkAcHEgw0WOdxB/Hm5KLqjtISFF05YjrjI6V9Of8Ejf+CjHjj/gmX+2d4W+P+iS3c3h6W4TT/G+ixzFU1HSZSRIOP8AlpGGMiZBwyjGKAP6q/2f/wDgjV/wTB/Zkjil+Ev7FngqG8tiPL1XWNIW/vHcDAPm3auQT/skDn0rxP8AbY/4OJv+CX//AAT41LU/hxp/iceMfFulkwS+E/AmnLtgkRgrRy3BIhiKk57/AHSAM4FfcHwc+MXw6/aC+EmhfGT4V+Jodb8NeJtEh1PR9St3ytxbTR70JGPlfB5TqDkHpX8QP7WXgDxp8Jv2l/iH8MviEs39taH421G11Rpk2s06XMgL88kMMtnvlaAP1V/aT/4POf20/HtzcWX7L/wA8GeBbIllS91wy6zfFc8MCPJijOOCCsg5OOcEfEXxs/4Lwf8ABW349Sv/AMJv+3D4xsLaUHbp/ha+XTYVB7bbTYfzJr5CZmc7nYk+pNIMA5wPfigD6i/YO+Df7TX/AVX/bW8G/sp6v8AtB+KJLvxfcXDXWtavqd1qH2OCC3lnklZHmXPyxH+IckHnof1Ku/+DJXx/cSZT/gotZTBVBSWTwBKCTkjHF6SOO+Oa4P/AIMtf2bJPF37VPxK/am1bSnay8JeFU0bS5nTMa3t5KHkIz0ZYIyMjnEzDoxz/Qj+0h8ZPDn7OXwE8Y/H7xVEH07wZ4avNavYhN5ZmjtoWlMYbBwW27RweWoA/CA/8GRfxJ5jX/goTpYVuufAU/8AW6H86Vv+DIr4oIv+jf8ABQzSQ3YHwHMo/MXp/lXbS/8AB7n8LYCv2b9gfxDN5alSzePYU3DIwcG1Y5wD69aen/B798KSubj/AIJ++IR/u+P4G/Q2Q/nQBwbf8GUXx5tWMtn/AMFFNJDgZU/8IbdckcgH/SvWvL/27P8Ag3M/aN/4Jn/sh+MP2vPE3/BTe4ntfCEMBi0nS9Mv7SS9uJpo4Yoo3F0dpLyjnB4B6V9KW3/B7v8ABWd1Sb9gbxMoLAMU8bWxIHrj7OK+Ov8AgtN/wcj6Z/VM/ZQsf2ZfAX7POs+BLaXxTb6vrd5d+IY7pb+CCORVt9qxKQBI0cmM4zGp7UAfGHwM/bn/CCoWueONN+G3wC/at+Md1rmqXPkabpWh+MtRkkldgPkEfmNgLySx4ChskDJH7Kfsx/8El/+DjD40+AIpv2uP26fC+hWF1GmPDnxB0a08V3axnBHmI8RRMnHHmsc9QK57/gzI/YV8PXXhjx/wDt+eM/DMVzetqI8MeDLm4iUm12RmW9uI8j5WYSwRBl5x5g6E1+yH7d/wC2J8Of2Bf2WPF37VXxUjurjSPC1mkr2VkF826md0hhiUtwN8skalj0DE9qAPy78f8A/Bp1cfFGDzPiL8d/hY19KB5l3oHwUl0d92eWUafqkSMfUtEeM9Oo8w1P/gyGs7udjpX/AAUAFqC2Whf4fmRVHop+2hh+OayNT/4PefF8GpzSaP8A8E/dPeyVm+zm7+IEiSMCRgFVtCMge9Rp/wAHwfjEoWP/AATz0sP1x/saUA/+SVAFq6/4Mf9ct0aWz/4KE20rhTsST4dsoJ9ybw/yr5n/AG4v4NL/ANvH9lL4can8Yfhn418NfFHQ9D06W+1O30WK4s79IYvmci3lD+YQoJwrjgHr0P60f8Ef/wDg49+D3/BSrWvFfhf4zeCNC+EF94X0+2uludd8d27WuoCRymyNp0hO4H5jj0FfZnxK/b2/Yt8K+Adb8UXH7Tfw41BdO0me4ksIPF9lM90qRljEESUs+7GMAHOeeKAP4k/A/gnV/iB490X4b+FrbztU1vV7fTtPSRNoeeWVYoicj+8wBX2r9lU/4Mof2r72yS7H7YXgS3eVEP2abQ7otGMdCynBPTJr83/+CfH7QX7Onwd/4KU+C/2oP2l9N1ZfA3h7xrJ4iubLR7FbmcvGZZ7aNY2ZQQZ/KyMj5c1+/wDD/wAHiX/BKcgs2g/E1SxySfC8eNvJP/Lfr2/AUAfDE/8AwZN/tgxqTB+2D8PWPbfpF6B+mT+lEX/Bkz+2NIh3fth/DgHt/wASzUP/AIiv1l/4J4/8F9f2K/8Agpp8dpvgB+zfo3jUa1Z6RPql5Pq+gJDbRW0bBfmcSttJLqOnJwO9fcN/IkNu08kgRY1LM7AkAAZycEZ6UAfzaS/8GTf7aEeRH+138Nn9M2F+v6+WagT/AIMqf22oJ1kk/at+GJjQ7nBhvzkDnH+p79K/Q/xV/wAHbv8AwSi8HeLtT8L3uq+Prl9K1GezkuNO8LCWCUxyugdWLgkMFyDnuKii/wCDvv8A4JGzrgX3xGVyeA3g0gfpKT+lAH87P/BS7/gn14u/4JoftPX/AOyx4++Jmh+J9b0nSLK81K70BZfJha4TzEiO9QQ2wo3PZq+e69w/4KO/tRN+2f8AtwfFP9p2KS6az8YeMbq70b7YhV105WMdmhViSClskCAfwhSBgDFeIIMtj1Bxhc9qAEor7o/YW/4N9P2/P+CiH7P8H7SnwD0rwrB4au9TuLCzbxD4hW0kleIKGYDaSV3sQD/skV86ftwfsbfE39gv9obWP2ZfjHqmi3XiTQooH1E6DffaIIjKnmBC4A+YBhn6igDyKiiigT1JbtmF7KwY58085qNS5O1SMk9D0zT77/j7l/67v/Oo6Ckfs3/wa7f8FsU/Zt8f2X/BPz9pPxc0fgjxXqmPA+s6jeN5WhanMSBBIzNhYJnK8ZCq7bj3rrP+DtP/AIJJax4V+JB/4KbfAvw4bnQvEIjg+JtlaIHexvc7IdSIQ/6qdAEYjo8e48ucfh9ZSTLcq0WSVyxGe2MsfbgdRzxX9Ev/AAb2/wDBb/T+2Z8Mil+AYn/AAULuNP1rX7rS20bwvqviVt0fiuycY/s6435DXRjU7CeZAijO7FAj+diWMRrt468kDIzjsfQjmmwhGlVZG2qThj6Dv8ApX6f/wDBd7/g39+I/wDwTj8VX3xw/Z78P6h4m+DOq3++K7jiea58NSsT/ol0FyTCM7YpxwR8r/NtY/m58O/A2ufEnxxonw78N23nanr+qW2nafCqHLy3EyxJtx97LOBzQB/U1/waXfszv8DP+CUmm/EXVrBoNS+J3ia88QS7xh2tVItbbnqVMdvvA/2z6mv0O+PvwN+F37S/wi1v4EfGnw5HrHhjxJai21nSZbqWJbqEOr7GaJ1faSoyAcMMg5BIOT+yl8EtI/Zs/Zi8BfAPQbOKGDwd4P0/SEEEIUFoIFjZsKOpYMxPcsT1NflF/wAHMOof8FgvH/xw+H3w6/4JueDfjrBoOl+G573xFrPwqk1S1hu7yefAhmltim/y0hUqGzt8w4xk0AfWDf8ABtP/AMEXJlCN+xlYHLH5l1/URluev+k896Rv+DZ3/gi2qkn9jWyx7eIdQ/rcV+DR+GX/AAdU2rZLftmZB4A13xBI35CUk/lUMngb/g6oQ5MP7bBPqmp+JR/7NQB+71//AMGzn/BFOGCS9m/ZGt4o4kLyt/wlGoKEUcluJz0GT07V/Kx+1xefBvUf2n/iCf2e/Dp0rwR/wmOoQ+ELMyF9mnLOyWuWkyxJjXcT6kGvsi48Ef8AB0vJYzR6yv7ZYtGhYXH2/UvEPlFCCCH8xwu09Dn1r4//AGP/ANmHxN+19+1p4G/ZY0G4nsr7xp4mh0sXTW26S2RjmSUxsy52RhmIyOFoA/pn/wCDUn4kfBzWP+CS/hLwN4G8RWLa3pOuaqPFOmi5QXNvdNdsy7lY7mUxtHtbpxiv0T+Kvwm+G/xx8C3/AMNPi94E0nxPoOpJ5d/o2u6elxbzJkHDxtwwyBX4vfDX/gz98c/BLV/+Ep+C3/BVvxv4P1SYCJtT8LaFJZzuM/Ku+C9iJXAPBYDOOvSvjL/gp/8AtBf8Fpv+CRv7VF3+zV4Y/wCCkXxo8aaRbaHZ3WmeKdXjuHS7WVCWQfanud7K28H5+ij0FAH7pat/wQO/4I8aw5mvP2A/AcRc/vDbWckQb0ACSAKBgcCqX/EPl/wRpAIH7CHg0cdd8/8ASWv5urb/AIL2f8FybZdkf7ZXjzaP7+kWv9bcit3wF/wcNf8ABd/T/ENnY6T+1d4l1W5lukSCxu/BunXbXDk4EQQ2hLFidoA5yRjmgD+gHxn/AMG0/wDwRh8XaVJav+yDZaXkZM2j+IL63Zf9obZscc9Qe9flH/Xu/4Nrfgl+wZ+zZqP7ZX7IPjbXm0DRtRt4/EXhfxLdRXP2eKeeK3jltpkRXYeZKmVfOFyetfuj/wTL8d/tX/E/DYc+Hfj79t7Ql0r4m6vozz+JdPjsWtGhLTSiAyQH/UyGBYi65xuLdOlfFf/B3b+0Lonwo/4JZT/CZ7tF1X4jeMdPtLO234cxWky3U0gH93MUI/4HQB/LAzTMQxkJBUEjPTHA/KkXc2IwfYAngUgOEX5uT157UqffGTjnkmgD+g7/gym/ZgFp4U+Lv7YmqWzebfXlv4T0aYpw0aJHeXJDdfvm3U+4Nfq5/wVn/aXh/ZE/4Jz/F349fbvJu9I8HXMel4lKu17cAW0AQg5DCWZCCOQRXlX/Bu3+zJ/wAMs/8ABIz4TeGdS0z7PqniTSH8V60pTa/nai5uYw3qVtzbpz/dx2r5M/4PNP2k4/h3+wx4K/Zv0jVQmoePfGaXN9AkpDmwsVMpJx1U3DW5OeMqp6gUAfzPSF2GWJwzd/8APpimgAHIFL88mEyTjoP8+w/SlWIEEB8gfeYA/KPwFAHoH7JfwD8QftTftOeAP2b/AAtvF7428XWGjxOiFvKE86o0pAVuEUsx4IAU54zX7jft6/8ABq//AME3P2L/ANjX4k/tVXvx4+K83/CFeErvUNOtL3UtLjiurvY32aD/AI9lY7pniTDHJHA5xXx//wAGkv7L8Xxz/wCCpsfxO17RjNpvwx8KXmrySui7Yr2fFrbAAjIbEs7AjkGPI6V+4f8AwWYWz+O+v/AL/gn9EfOPxZ+L1heeK7GM9fDmlB76+LDoVLRQxkHg7wDQB63/AMEuv2bLP9hn/gnT8LvgTrAjs5vDPgy3m8SzEbES+kU3F47k9hJI/I4wnpX8en7d/wC0Zf8A7XH7YvxM/aUvZZNnjPxnfalaRSnJhtnmf7NECegSARLjttxX9Zn/AAXy/aZl/ZO/4JRfFzx5pGtPpus654bfw9os0TnzPtWoFbX5PR1SR3UjlRGSMYr+P74ffCr4h/FS4vtP+G3gbUtfuNL0ubUNRtdJtJJnt7SEL5s7KoyFXcCSOgyTxQBzNFWJ4CsImEfysCVcrgMoIXK8DIyPQHJ5qvQBLe/8fUv/AF8SfzFRVLff8fUn/XxJ/MVFQNCqzKQykgjoRVvQtc1jw9rdnr2hapdWl7ZXMc9ndWk7Rywyo4dHR1IKsHAYEEEEAjmqdFAj+kz/AIIOf8HC3w+/bQ8FWf7Cf/BQLW9Hh8cy2n9naL4j8QmL+z/GELKVWC6WUhPtfG3yz8s4OeW685+1X/Rm/wCCdv7BP/BW/wDZ6/aW0r4oaN8P/A+t+NbvWNb8I+JLuGDS9KbS7U3SywXEzHiS7FsnkZ+QsSpIzX87dpd3lpdxXlncyRzQuHikjchkIOQQRyCDzkc1+6H/BFX/g5V8Oaymgfskf8ABVI2WuWdvttPCPxR1vT0uJLcFcJDf7lbcpZUQT8kErvyAaAP2Xuf+Cr/APwTOsXRL/8Ab7+EUG7lPN+IFgofBIPDygnBXtTrf/grD/wS/dswf8FAfg3knJA+IenDJx/139B+lV/2kP8Agnh/T8/b9+GsPhz4v8AwG8G+KdHv7VbjS9b0qKOO4VGYHzba6tCsgG45yG2Z6qwJB/Jf9sD/gyytpnvtf8A2G/2mTAJWLWnhX4g27FYV3A7RewId/GQN0SdssaAP17X/gqr/wAE0WXcP+CgHwbA9/iNpv8A8foj/wCCqf8AwTSnby0/b/8Ag2T6D4jaaP8A2vX8ufxw/wCDbf8A4LDfA66lt5v2RNX8UW8ZwL7wTeQ6okvzYyscZEo69NmQOvAJrxDUf+CVv/BSXRL46bqv7BXxcimDbSjeAL/k+mRGRQB/Ur/Ub/4LAfsR/C39hT4q+Pfgx+2F8OPEPiyz8GXieHdI8N+O7K5vp7yVfJiMMcMxcsrSB8qMqFLcYzX8uH/AASt/a68PfsKf8FAvhd+1R410e41HRvCPiFp9WtLUAy/ZpreS3lkQEHLKkhfpk7cDBwa6Tw7/wAEXP8Agp/qegXfjDW/2OfFXhfRNNgaa/8AEHjeJNEsLWMD7z3F40SKQcYyeSQOSQD88ePfCUHgjXbvwu3iTStYmtMB9Q0e5ae2YghdschRQ+OfmUmM9jnFAH9pHwK/4Kn/APBOj9ofQbXxF8MP2z/h1cefFG4sb3xXa2l5ECrOI5LeWVZVZVIDZBGV7V6OP2h/2VdUCRD43eAbpf4CPE9g6jqeB5pPc9u9fwoCSQZw55GDz1Gc/A+acbm5K7TcPj03mgD+7Jfi9+y+43x/FLwAfca3Y//ABVQz/HX9lDQUGrzfGP4e2Yj5+0P4hsYgvbJbcMV/Csl/fxjEd7Mv0kIprXVy+A9xIdvTLnigD+0f9oP/gsz/wAEv/2ZfDl3q/xE/bW8B3MqW7sumeG9ftNUvZcA4jSO3dvmyeA3Hrxmv5nP+C7P/BXnV/8AgrL+0ra+KvDGhXei/D7wfZPY+C9IvGzLKkjhpb2dR8sc0pRAABxGirntXwupKncpIJBBI9D1pS7lSpc4JyRnv60AJgeldx+zL8LdL+N/7RfgT4O67r1tpWn+J/F2naZqOp3t4lvFaW01wkcszSSEKoVGZskjpXD0AlSGUkEdCKAP7kfAf7Tf7GPg/wAF6P4L8J/tMfDn7Fo+k29lp0MXjKwUCGKMRxR7UlOAqAAgDjIr+bn/AIO0/wBrvw1+0n/wUitfh74C8VWmraF8NPBtlpcV1p2ppc2095dD7dNLGy5B+SaGJiOpgAP3RX5bm4uCnlmd9pJJXccZOMn8cDP0FN3vt27jjGMZoAWFVaUKwz6D37da/pg/4N8f2Tf+CZngz/gmR4K8UftWaR8DdZ8ZeK57zWr6fxidLnurW2kkCQ27NcMXUCNUOw8As/HJr+Z0EqQykgg5BHalDuF2hzj0z/n1P50Af1q/8Ep/HX7DvhD43ftKftA+B/FHwu8D6X4j+Jy+FvDOiaZq2m2EX9maFCbP7UiRsBsubtrubIGGDIx9a6b4LeI/Cv7Y/wDwW78afFbwn4j07XfDHwA+Fln4e0a9sL2Ke2bWNbcXV68UiAhiltbwxkg9ZDnrX8gqyNlQ7naOMbj0PWv6wv8Ag1N/ZdHwF/4JO+HfiBq+keRrHxO1i98Q3RIxI1s8nkWuW6kGGBJBnp5px1OQDuP+ClGufBb43/t5fAT9jv49eI/DNv4J0S31T4jeNbTxZc2y2V8tvG2n6dbSrcfu33SXU7gMD/qsjmvd/h14I/4Jo/ALwxqfx/8AhX4V+DPg/SrW1l0/V/GXhy00yzt44Nys8El1GFDIcJuQkg7RkHAr+YP/AIOUP2nX/aZ/4K4fEqe21f7Tp/gmSHwnpTwtuQxWa4l29gPtElznFfF198XvinqPwztPhDdePtXbwlZ3z3lr4eF/ILJblhhpvIDbPMI4L4yfWgD7w/4OCvin/wAEhvi98eX8W/8ABOPRNQi8Qz38r+M9U0SzWHw5qL7j+9to2ctvJ5MsaiNumOc1+dNA4GBRQBLff8fUn/XxJ/MVFUl7/wAfUn/Xd/51HQAUUUUAFPhkdZQwOevUZ7enf/OaZQCR0NAH6Df8EiP+DgP9q3/gmLe2Pw3u7mbxt8KHuVN54I1Of5rMMyh5LCVs+U/O7yziM4x8udw/pf8A+Cf/APwVK/Y2/wCCk3gGHx1+zR8Ube8vEhB1bwnqDpBq2kOSPkuLZzvUbuBIu6Fs4WRiQK/ibV3UEKxAIwQD1FdT8G/jd8Wv2fviFp/xV+C/xC1fw14h0ti1hqujXzwzRHBGMqfmXnlGyrDIIIJFAH94V1KpgYOW5cKVZeR+AIz+HPpk18D/APBUD/g4Y/Yd/wCCbunX3g2PxWPiF8SI90UHgfwtdLIbKUHgX1wMx2wHJ2H9/wAAbRncPwQ/aL/4OW/+Crf7RfwJ0v4Fa98bYdBs4LJoNa13wzpi2epa+pG3/SJUICAjqsITdghsqSD8A31zd3ly99fTyySz/NLLO5ZpWJySc0AfWP8AwUr/AOCzH7bf/BTzXzcfG/4h/wBneEobhpNI8CaE5h0+yOeAwGHuHAwd8ueRx2r5HycYzxnOKUsx6semOvako1AKKXd7D8qC2ewoHaQlFFABJwKLxCzSCil2N6UYI5IpXZN0JRS7v9kflRkngKKLpjQlFKVI5IpKfqNp9AooooEOhO2QHAPs3Q+3t9a/Vr4Nf8HaP7cvwE+Dnhr4EfDn4G/DG28P+EfDdpo+jqljd+ZFb28KwRlsTbN5EanO3qx9c1+UYJU5UkcY4pd74xuP50AbHjrxdrnj/wAXaz468T3jXGqa3qc2oalO7fNJPPI0sjHdlmyznknPc1jd80odwnlhzt/u54pKACiiigCS8ybmQ4/5bv8AzFR1bvIcTyARk4lbG36/Tmq7Rk5YRkAexpJpst05qVrDKKXb9fyowO+fxFVZk2fYSinBQ3A/lUltAXfc0ZdR12/L+pBFLZaiIaOhyK2tF8A+MfFE4i8P+E9SvC/3fsli8h9eMAZr0Pwd+xF+0V4s2SR+AXso36SarcLAMY6lWOf0rnqYrD0leckjanhq9X4Ys8iycYzx6UAegr6i0n/gmpr9qiS+O/i7oWn7hmS3tYmuJFHtt610uk/sZ/sreG4w2ueL/E3iK4XqLBYraLPcYKO+PoD+HWvPqZ5l0NpX9Dup5NmU9fZ2R8cgHPKk/jiprWxuLlsW9nJMfRMn+Qr7d07w1+zD4MTyvDf7Pei3Ekf3ZtWnlvZG9z5rhF+nln8Oo27L47aj4bh8rwRoOj6PEnCjR/D8FuE+rIoJrilxJCL/AHdNv7j0KPDlWp8c0j4x8PfAb4x+LUEnh74Ya7cq/wBx4dKkKn/gWMV1mmfsMftQalB9qHwo1CGL+KW6CxBfrk8V9Nan8fvidrDebe+L9TZR0C3jqB+ANYGoePvE+oyF7jVbuXPXzLhj/M1hLiHG1NYpI7IZBg6fxSbPFbf9gX46GPdqCaPZnuLrUuR+Cgn9KP8Ahhzx1bNt1LxroERHULcSH+aAfrXr0niLVH5d5PqZCP1qE3V9dtklmz2ErH+dZLO8e3a6Nv7Hy1/Cm2eRT/saeIIAV/4T7QyR/wBNjWddfsm+K4G2ReJtKk9Cs5Nezy2dzO2w2jsT2qKfSJ7ZgrR3yM3TbcNgfhmtv7Xxi6oynlFBacjPDLz9mL4lQZFnDY3GOnlXHzH8DWLqHwQ+JulhmuPC1ywXq0Sh/wBBX0Y1lIjCEX1xvb7qyqWH61NF/a8I8uC7+bspQqPzrSOeYhbtGLyOhbZnybfaFrOlSmPUNOmjYfwyxsP0xVPAA6AnuQTxX17ML6WMxalZWs6H76Ou7d+Brntd+F3w48QK0uo+CY7Zj96W3xEOvX5RXZSzylL40cdTJJfYlY+YqK9u1z9mPwxeq0vhnxU1sT0jvIvlHP8Ae61x/iT9nP4j6Bumh0oX8AGRLaOCD+Fd1PMcHU+2vvPPq5biqO6OBoq3d6RqOlyGLUbGSKQHDJNEykfmMVFHbzXDBYoW5OBhCf5CuyMoyV01Y4uSalaxDRXe+BP2bfjL8RHB8MeAL6ZD/y1eIqn19a9b8Kn/BMD48ayUl1SBLVWHKJAzsP0rz8VnGVYL+NWSO2jlmNrtKED5phCGQCQEg8HAzXoXhr9kn9qfxxo8HiHwd+zT4+1Owu4xLa3+meDb+4hmQ9CrxwspH419VeB/wDgjF4+1aJbrUIdVZcEySLGqIFwc/wsRxnsa+1vg14Q/au+D/zcfW/hu0eHfh3oVyYIR0CPa2m/I4wdxr56vn2U4eN51kdtHJs0xUuWFLX1R+Bdr4k8S6fbfYbLXL2KDGBAl04THpgHGPwrZ8N/ELxD4ckBsrlkUkbgjlf5V97fEz/AIN1/wDgoT8P76UeG9N8F+IrdGIUad4ojikx15W4SMflmuDvf+CLP/BRjS7bz734AyyKvVrDXrCfn28uc1xR4w4bqx5JYqLXzN3wnxHCXPGg19x8+aT+0HczxJFqdrFOAOWlhVyfxIzXR6Z8S/DWq4F1bNC2OqPx/PivX9J/4Jifth6Kvk6n+zL45eXPLw6DJKmP95cg/nXXeHP2B/in4fmDeI/gX4pt9rfN9s8OzxD/AMeUVtTzrh6S56eIivmmbSy7imkuV0X9x5Vp1xY6gvmaZqkb+yyfN+RroNMm16yO+0u5cD0c8/rXvHhv9mHT9O2i68D3kGP+elm6/wAxXWab8CNF0/5v7Bkx6vAf6ir/ALcwEZe7Wi/mcyynOHrOjJfI8GsfiF4v09RF55ZR1Ei5z+PWt2w+LuvRKBc2sTgd1yp/wr2tfhVomwtJpUYA6lo9v8xWB4n8PfDfw/G39q67oVjj+K/1W2hx/wB9uKX9s4Jv+JFm8crzZb05fccHa/Ga4GBNZuvqQ2a0rX4v28nEkzr9VBrmvFXxM/Zj8Ou39tfH3wNbleqf8JRauR/3w5rhtf/AGqf2KNJLCX4/aHOw/hsba7uSf8Av3Ca1jmOHmr05X9CnluYR+ODXqj2xfiTps3P25M/7Sn/AApW8daZMubfUIwfTzMfzr5n1X9t/wDYvtGIstV8QamR0Om+Frts/QyKn86xL3/goB+y5b/8g3wF49ucdP8AiR2kYP53Of0rZZg/su/yJ/svENaxt8z6zfxVbydNVk/4DMf8aZ/b1m3zSXsjfWXP86+Rpf8Ago98DLfP2P4N+NZcf89nsos/98zNUEn/AAUk+Fq82fwK8Rk+k2tWy/8AoKNR/aGIey/ATympfWx9e/23p8bZa4H1aSmS+K9Ntz89yB7lx/jXx7L/AMFIvBrnFn8BNRI9bjxGg/8AQYaZ/wAPFPDJ/wCXe8j9m1FDj/yHR/aGK7fkH9kye7Prqbx3pcZ+W7DH/ZGarz/Ea0jH7oMfcrivkZv+Ci/hZfvfaB7G/j/+IqOT/got4UX7t3Iv/b1Gf/ZKPrmKfRfgXHKad9WfWU3xNncfuxj6Zqq/xD1FzuFxt/CvleL/AIKP+D4fv6vMPrcxf4VIP+CkfgiH/mKSn/t4i/wp/W8T2/A0WV0V0PqdPiFqC/euM/hUn/Cw7wjb5v47TXysf+ClXgZf+XyQ/wDb1F/hUbf8FLfAg+7I5/7eYv8ACl9bxPb8BrLKKPrSLx5dSDO4/gpoHie/m+bzW/EYr5MX/gpj4Ej6LI3/AG8Rf4U7/h5x4KTpBMf+28X+FH1vE9vwF/ZlHp+R9ZNr2oyfMbiX/gMhFRyapdvzJczH2Mpr5P8A+HnXg1ekEx/7bRf4Uf8ADzrwivSCY/8AbWL/AApfWsT2/Ar+z6S6H1b9tm/56y/9/DSfa5v+esv/AH9NfKX/AA878Kr0t5j/ANtov8KP+HnfhVekEx/7bRf4UfWsT2/AP7Pp9j6t+1zf89Zf+/po+1zf89Zf+/pr5S/4ed+FV6QTH/ttF/hR/wAPO/Cq9IJj/wBtx/hR9axPb8A/s+n2Pq77XN/z1l/7+mj7XN/z1l/7+mvkr/gqf8M16aZdn/gY/wAKb/w9T+GI/wCYTd/99j/Cj61ie34C/s+n2PrW88PeHtRiMN7oNhMh/hltEYfkRVWy+FPwrtbv7dF8OPD4nzxONEt/MB9d2zOfevllv+CqvwvX/mDXv/fZ/wAKjP8AwVa+GQ4Gh3x/7aH/AAo+uYp9H+BqstpLZfkfceieDvBmlgGy0SxtwBwsFpHGB+AFb9tfaDZqFheMAdlAr89pf+Crvw5X7nh2+P8A20P+FQv/AMFXvAC/c8L3x/7an/CsZYjEvr+BqstoLZfkfok/inSoBgXA/CqV54/0qDOJwSPevzwf/grj4JXp4Uvv+/p/wph/4K5+DV6eEb7/AL/H/CsXLET/AOGNPqNFH39e/FWzhyIxn8ayLz4v3Ugxbxgf7xNfCE3/AAWE8Lr9zwheH/tqf8KrN/wWB0Bvu+Dbwf8AbU/4UlRxUu/4EvDUkfcV38SdSuDzdKvsDWbc+LL66OXvnP0avieT/grxo/8AD4Ou/wDv6f8ACoJf+CuNiPu+D7r/AL+n/CrWFxD7/gR7Gkj7Pl1yaX78zH6tUDal6uPzr4uk/wCCulqPu+D7n/v6f8Kqyf8ABXmI9PB1z/39P+FaLB1/P8DN06Z9qm/z/GPzppvsH79fE7f8FeF/h8HXH/f0/wCFMP8AwV3P8Pg+4/7+n/CrWDr+f4E8lM+2jf8A+3Tf7RP9+viiP/grvM/Twfc/9/T/AIVah/4K33Z+/wCDbn/v6f8ACm8HiH0f4CcKZ9m/2gf79H9oH+/XxtF/wVquD18HXP8A39P+FWov+Cq92/Twfcf9/T/hU/U8R2/AXJTPsH7f/t0fb/8Abr5DT/gqpdkZ/wCEOn/7+n/Cn/8APVG7H/MnT/8Af0/4UfUsT2/Ach9dfb/9uj7f/t18jD/gqheH/mTZ/wDv6f8ACnf8PT7w/wDMmzf9/T/hS+pYnt+AXZ9bfb/9uj7f/t18kf8AD1G9/wChNm/7+n/Cl/4eoX3/AEJs3/f0/wCFH1LE9vwC7PrX7f8A7dH2/wD26+Sv+Hp18P8AmTZ/+/p/wpR/wVRv/wDoTZ/+/p/wo+pYnt+AXZ9afb/9uj7f/t18mD/gqffHp4NuP+/p/wAKd/w9P1EdfBtx/wB/T/hS+pYnt+AXZ9Y/b/8Abo+3/wC3XycP+CqGpHp4NuP+/p/wpf8Ah6dqn/QmXH/f0/4UfUsT2/Acj/9k=');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  cursor: pointer;
  z-index: 20;
}

.est4-ss-header-strip {
  background: rgba(220, 224, 230, 0.88);
  color: #111418;
  font-size: 11px;
  font-weight: 700;
  text-align: right;
  padding: 3px 8px;
  border-bottom: 1px solid #717781;
}

.est4-ss-wake-prompt {
  background: rgba(0, 0, 0, 0.65);
  color: #f1f5f9;
  text-align: center;
  padding: 6px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.5px;
  backdrop-filter: blur(2px);
}

/* --------------------------------------------------------------------------
   2B. TOUCHSCREEN: ACTIVE INTERFACE UI (Event Explorer, Tabs, Matrix)
   -------------------------------------------------------------------------- */
.est4-active-view {
  width: 100%;
  height: 100%;
  background: #f1f3f6;
  display: flex;
  flex-direction: column;
}

/* Top Real-Time Status Summary Grid (8 Colored Blocks) */
.est4-status-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2px;
  background: #23272d;
  padding: 2px;
  border-bottom: 1.5px solid #000;
}

.est4-status-tile {
  padding: 3px 4px;
  font-size: 9.5px;
  font-weight: 800;
  text-align: center;
  line-height: 1.15;
  border-radius: 1px;
}

.est4-status-tile.red {
  background: #d32f2f;
  color: #ffffff;
}

.est4-status-tile.green {
  background: #388e3c;
  color: #ffffff;
}

.est4-status-tile.yellow {
  background: #fbc02d;
  color: #111417;
}

.est4-status-tile.blue {
  background: #1976d2;
  color: #ffffff;
}

.est4-status-tile.time {
  grid-column: span 2;
  background: #e2e8f0;
  color: #0f172a;
  font-size: 10px;
  font-weight: 700;
}

/* Event Category Selection Tabs */
.est4-cat-tabs-row {
  display: flex;
  align-items: center;
  background: #cfd4dc;
  padding: 3px 2px;
  gap: 2px;
  border-bottom: 2px solid #94a3b8;
}

.est4-tab-arrow-btn {
  background: #b0b7c1;
  border: 1px solid #78828e;
  border-radius: 2px;
  width: 20px;
  height: 26px;
  font-size: 10px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

.est4-cat-tab {
  flex: 1;
  height: 26px;
  border: 1px solid #64748b;
  border-radius: 2px;
  font-size: 10px;
  font-weight: 800;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.1s;
}

.est4-cat-tab.alarm {
  background: #d32f2f;
  color: #ffffff;
  border-color: #991b1b;
}

.est4-cat-tab.trouble {
  background: #fbc02d;
  color: #000000;
}

.est4-cat-tab.supervisory {
  background: #fdd835;
  color: #000000;
}

.est4-cat-tab.requests {
  background: #64b5f6;
  color: #0f172a;
}

.est4-cat-tab.active {
  box-shadow: inset 0 2px 4px rgba(0,0,0,0.4);
  filter: brightness(1.15);
  font-weight: 900;
}

/* Active Event List Container */
.est4-event-list-container {
  flex: 1;
  display: flex;
  flex-direction: column;
  background: #ffffff;
  overflow: hidden;
}

.est4-event-header-bar {
  background: #c62828;
  color: #ffffff;
  padding: 4px 8px;
  font-size: 11px;
  font-weight: 900;
  display: flex;
  justify-content: space-between;
  align-items: center;
  letter-spacing: 0.5px;
}

.est4-event-header-bar.trouble-bg { background: #d97706; color: #fff; }
.est4-event-header-bar.supervisory-bg { background: #b45309; color: #fff; }

.est4-event-rows {
  flex: 1;
  overflow-y: auto;
  font-size: 10px;
}

.est4-event-row {
  display: grid;
  grid-template-columns: 20px 1fr 50px 20px;
  padding: 5px 6px;
  border-bottom: 1px solid #e2e8f0;
  align-items: center;
}

.est4-event-row:nth-child(even) {
  background: #f8fafc;
}

.est4-event-row.selected {
  background: #fee2e2;
}

.est4-ev-num { font-weight: 800; color: #475569; }
.est4-ev-title { font-weight: 800; color: #b91c1c; }
.est4-ev-loc { font-size: 9px; color: #334155; }
.est4-ev-time { font-family: monospace; font-size: 9.5px; font-weight: 700; color: #64748b; text-align: right; }
.est4-ev-ack { color: #16a34a; font-weight: 900; text-align: center; }

/* Bottom Touch Softkeys */
.est4-bottom-toolbar {
  display: flex;
  align-items: center;
  background: #bcc3cc;
  padding: 4px 3px;
  gap: 3px;
  border-top: 2px solid #78828e;
}

.est4-softkey-btn {
  flex: 1;
  background: linear-gradient(180deg, #e4e7eb 0%, #cbd1d8 100%);
  border: 1px solid #717b87;
  border-radius: 2px;
  height: 26px;
  font-size: 9.5px;
  font-weight: 800;
  color: #1e242c;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  box-shadow: 0 1px 1px rgba(0,0,0,0.15);
}

.est4-softkey-btn:active {
  transform: translateY(1px);
  background: #9ca3af;
}

/* --------------------------------------------------------------------------
   3. BOTTOM OPERATING CONTROL DECK: 4 Pushbuttons & Status Labels
   -------------------------------------------------------------------------- */
.est4-bottom-deck {
  display: grid;
  grid-template-columns: 36px 125px 1fr;
  gap: 12px;
  align-items: center;
  padding: 4px 6px;
}

/* 4 Left LED Indicator Slots */
.est4-deck-led-col {
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
}

.est4-deck-led-slot {
  width: 22px;
  height: 10px;
  background: #20242a;
  border: 1px solid #14171a;
  border-radius: 2px;
  box-shadow: inset 0 1px 2px #000;
  display: flex;
  align-items: center;
  justify-content: center;
}

.est4-deck-led {
  width: 12px;
  height: 5px;
  border-radius: 1px;
}

.est4-deck-led.yellow { background: var(--est4-led-off-yellow); }
.est4-deck-led.yellow.active {
  background: var(--est4-led-yellow);
  box-shadow: 0 0 7px var(--est4-led-yellow), 0 0 2px #fff;
}

.est4-deck-led.red { background: var(--est4-led-off-red); }
.est4-deck-led.red.active {
  background: var(--est4-led-red);
  box-shadow: 0 0 8px var(--est4-led-red), 0 0 2px #fff;
}

.est4-deck-led.green { background: var(--est4-led-off-green); }
.est4-deck-led.green.active {
  background: var(--est4-led-green);
  box-shadow: 0 0 8px var(--est4-led-green), 0 0 2px #fff;
}

/* 4 Large Oval Metallic Pushbuttons */
.est4-buttons-col {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.est4-oval-btn {
  height: 34px;
  background: linear-gradient(180deg, #f2f5f8 0%, #d8dde3 55%, #bcc2c9 100%);
  border: 2px solid #5a6068;
  border-radius: 22px;
  box-shadow: 
    0 2px 4px rgba(0, 0, 0, 0.3),
    inset 0 1px 0 #ffffff;
  cursor: pointer;
  transition: all 0.08s ease;
  padding: 0;
}

.est4-oval-btn:active {
  transform: translateY(1.5px);
  background: #9fa6b0;
  box-shadow: inset 0 1px 3px rgba(0,0,0,0.5);
}

/* Button 3: ALARM SILENCE with prominent red perimeter ring */
.est4-oval-btn.alarm-silence {
  box-shadow: 
    0 0 0 2px #dc2626,
    0 2px 4px rgba(0, 0, 0, 0.3),
    inset 0 1px 0 #ffffff;
}

/* Button 4: RESET with prominent green perimeter ring */
.est4-oval-btn.system-reset {
  box-shadow: 
    0 0 0 2px #16a34a,
    0 2px 4px rgba(0, 0, 0, 0.3),
    inset 0 1px 0 #ffffff;
}

/* Right Recessed Inset Label Plate */
.est4-labels-plate {
  background: linear-gradient(180deg, #c5cad2 0%, #b3b9c2 100%);
  border: 2px solid #636a73;
  border-radius: 4px;
  box-shadow: 
    inset 0 1px 3px rgba(0,0,0,0.35),
    0 1px 0 rgba(255,255,255,0.6);
  padding: 8px 12px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.est4-plate-label {
  font-size: 11.5px;
  font-weight: 900;
  letter-spacing: 0.6px;
  color: #14181f;
  line-height: 1;
}
