CombatEventPopup.uss 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227
  1. /* Combat Event Popup Styles */
  2. /* Main Container */
  3. .combat-popup-container {
  4. position: absolute;
  5. top: 0;
  6. left: 0;
  7. right: 0;
  8. bottom: 0;
  9. justify-content: center;
  10. align-items: center;
  11. transition-property: opacity;
  12. transition-duration: 0.3s;
  13. }
  14. /* Background Overlay */
  15. .combat-popup-overlay {
  16. position: absolute;
  17. top: 0;
  18. left: 0;
  19. right: 0;
  20. bottom: 0;
  21. background-color: rgba(0, 0, 0, 0.7);
  22. /* Ensure the overlay captures all mouse events */
  23. -unity-slice-left: 0;
  24. -unity-slice-top: 0;
  25. -unity-slice-right: 0;
  26. -unity-slice-bottom: 0;
  27. }
  28. /* Main Panel */
  29. .combat-popup-panel {
  30. background-color: rgba(38, 38, 51, 0.95);
  31. border-color: rgba(204, 51, 51, 1);
  32. border-width: 3px;
  33. border-radius: 10px;
  34. min-width: 400px;
  35. max-width: 600px;
  36. padding: 20px;
  37. transition-property: scale, opacity;
  38. transition-duration: 0.3s;
  39. transition-timing-function: ease-out-back;
  40. }
  41. /* Title Styles */
  42. .combat-title {
  43. font-size: 24px;
  44. color: rgba(255, 77, 77, 1);
  45. -unity-font-style: bold;
  46. -unity-text-align: middle-center;
  47. margin-bottom: 15px;
  48. text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
  49. }
  50. /* Description */
  51. .combat-description {
  52. font-size: 16px;
  53. color: rgba(255, 255, 255, 1);
  54. -unity-text-align: middle-center;
  55. white-space: normal;
  56. margin-bottom: 20px;
  57. }
  58. /* Enemy Section */
  59. .enemy-section {
  60. margin-bottom: 25px;
  61. }
  62. .enemy-header {
  63. font-size: 18px;
  64. color: rgba(255, 204, 51, 1);
  65. -unity-font-style: bold;
  66. -unity-text-align: middle-center;
  67. margin-bottom: 10px;
  68. }
  69. .enemy-list {
  70. background-color: rgba(26, 26, 38, 0.8);
  71. border-radius: 5px;
  72. padding: 10px 15px;
  73. }
  74. /* Enemy Item */
  75. .enemy-item {
  76. flex-direction: row;
  77. justify-content: space-between;
  78. align-items: center;
  79. margin-bottom: 8px;
  80. padding: 8px 10px;
  81. background-color: rgba(51, 51, 64, 0.6);
  82. border-radius: 4px;
  83. transition-property: background-color, scale;
  84. transition-duration: 0.2s;
  85. }
  86. .enemy-item:hover {
  87. background-color: rgba(77, 77, 92, 0.8);
  88. scale: 1.02;
  89. }
  90. .enemy-info {
  91. flex-direction: column;
  92. flex-grow: 1;
  93. }
  94. .enemy-name {
  95. font-size: 16px;
  96. color: rgba(255, 230, 179, 1);
  97. -unity-font-style: bold;
  98. }
  99. .enemy-stats {
  100. font-size: 12px;
  101. color: rgba(204, 204, 204, 1);
  102. }
  103. .enemy-weapon {
  104. font-size: 11px;
  105. color: rgba(179, 179, 255, 1);
  106. }
  107. /* Threat Indicator */
  108. .threat-indicator {
  109. width: 60px;
  110. height: 20px;
  111. border-radius: 10px;
  112. justify-content: center;
  113. align-items: center;
  114. }
  115. .threat-low {
  116. background-color: rgba(77, 204, 77, 1); /* Green */
  117. }
  118. .threat-medium {
  119. background-color: rgba(255, 204, 51, 1); /* Yellow */
  120. }
  121. .threat-high {
  122. background-color: rgba(255, 102, 51, 1); /* Orange */
  123. }
  124. .threat-extreme {
  125. background-color: rgba(204, 51, 51, 1); /* Red */
  126. }
  127. .threat-label {
  128. font-size: 11px;
  129. color: rgba(255, 255, 255, 1);
  130. -unity-font-style: bold;
  131. }
  132. /* Button Container */
  133. .button-container {
  134. flex-direction: row;
  135. justify-content: space-around;
  136. margin-top: 20px;
  137. }
  138. /* Button Base Style */
  139. .combat-button {
  140. font-size: 16px;
  141. color: rgba(255, 255, 255, 1);
  142. border-radius: 8px;
  143. padding: 12px 20px;
  144. min-width: 120px;
  145. transition-property: background-color, scale, border-color;
  146. transition-duration: 0.2s;
  147. border-width: 2px;
  148. border-color: transparent;
  149. }
  150. .combat-button:hover {
  151. scale: 1.05;
  152. border-color: rgba(255, 255, 255, 0.3);
  153. }
  154. .combat-button:active {
  155. scale: 0.98;
  156. }
  157. /* Run Away Button */
  158. .run-button {
  159. background-color: rgba(153, 153, 26, 1);
  160. }
  161. .run-button:hover {
  162. background-color: rgba(179, 179, 51, 1);
  163. }
  164. /* Attack Button */
  165. .attack-button {
  166. background-color: rgba(204, 51, 51, 1);
  167. }
  168. .attack-button:hover {
  169. background-color: rgba(230, 77, 77, 1);
  170. }
  171. /* Animation Classes */
  172. .popup-enter {
  173. opacity: 1;
  174. scale: 1;
  175. }
  176. .popup-exit {
  177. opacity: 0;
  178. scale: 0.8;
  179. }
  180. .popup-hidden {
  181. display: none;
  182. }
  183. /* Pulse Animation for Threat Indicators */
  184. @keyframes threat-pulse {
  185. 0% { scale: 1; }
  186. 50% { scale: 1.1; }
  187. 100% { scale: 1; }
  188. }
  189. .threat-extreme .threat-label {
  190. animation-name: threat-pulse;
  191. animation-duration: 1.5s;
  192. animation-iteration-count: infinite;
  193. animation-timing-function: ease-in-out;
  194. }