@import url('https://fonts.googleapis.com/css2?family=Oxygen:wght@700&family=Poppins:wght@100;200;300;400;500;600;700;800;900&family=Roboto:wght@400;700&family=Signika:wght@500&display=swap'); @import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@200;300;400;700;800&display=swap"); :root { --zenix_background_1: rgba(39, 39, 39, 0); --zenix_background_2: rgb(39, 39, 39); --zenix_black: rgb(0, 0, 0); --zenix_white: rgb(255, 255, 255); --custom-shape: url('data:image/svg+xml;utf8,'); } body { font-family: 'Poppins', sans-serif; user-select: none; overflow: hidden; margin: 0; color: var(--zenix_white); } .fnc_logo { position: absolute; top: 1vh; right: 1vh; width: 20vh; height: auto; z-index: 9999; } .fnc_hud_all_container { position: absolute; bottom: 1vh; left: 50%; transform: translateX(-50%); display: flex; align-items: center; justify-content: center; z-index: 999; } .fnc_hud_container { position: relative; border-radius: 1.2vh; transform: translateX(0%, -50%); } .fnc_hud_wrapper { display: flex; padding: 0 0.5vh; } .fnc_hud_item_1, .fnc_hud_item_2, .fnc_hud_item_3, .fnc_hud_item_4, .fnc_hud_item_5, .fnc_hud_item_6, .fnc_hud_item_7, .fnc_hud_item_8, .fnc_hud_item_9 { position: relative; display: flex; justify-content: center; align-items: center; margin: 0.7vh 0.5vh; width: 5vh; height: 5vh; background-color: #252525; overflow: hidden; transition: transform 0.3s ease, background-color 0.3s ease; -webkit-mask-image: var(--custom-shape); mask-image: var(--custom-shape); -webkit-mask-size: 100%; mask-size: 100%; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; } .fnc_hud_item_1 i, .fnc_hud_item_2 i, .fnc_hud_item_3 i, .fnc_hud_item_4 i, .fnc_hud_item_5 i, .fnc_hud_item_6 i, .fnc_hud_item_7 i, .fnc_hud_item_8 i { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); font-size: 1.8vh; background: linear-gradient(to top, #00613c, #00ff8c); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; text-fill-color: transparent; filter: drop-shadow(0 0 0.1vh #00613c); z-index: 100; pointer-events: none; } .fnc_carhud_icons_vertical { display: flex; flex-direction: column; align-items: flex-end; gap: 0; padding-right: 2vh; margin-bottom: -5vh; } .fnc_hud_item_8 { margin-bottom: -0.3vh; } .fnc_hud_item_9 i { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); font-size: 2.2vh; background: linear-gradient(to top, #00613c, #00ff8c); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; text-fill-color: transparent; filter: drop-shadow(0 0 0.1vh #00613c); z-index: 100; pointer-events: none; } #seatbelt_ring { background: conic-gradient(#00613c 0deg, #00613c var(--rotation, 360deg)); } .svg-seatbelt-icon { width: 2vh; height: 2vh; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 100; pointer-events: none; } .fnc_fill, .fnc_bg, #health, #thirst, #hunger, #armour, #voice, #lung, #stamina, #fuel { -webkit-mask-image: var(--custom-shape); mask-image: var(--custom-shape); -webkit-mask-size: 100%; mask-size: 100%; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; } .fnc_bg { position: absolute; width: 80%; height: 80%; left: 50%; top: 50%; transform: translate(-50%, -50%); background-color: #252525; border: #252525 solid 0.2vh; } .fnc_glow { position: absolute; width: 60%; height: 50%; left: 50%; top: 60%; transform: translateX(-50%); background: radial-gradient(circle, rgba(0, 255, 140, 0.5) 0%, rgba(0, 255, 140, 0) 100%); filter: blur(1vh); z-index: 2; pointer-events: none; } @keyframes pulse-voice { 0% { transform: scale(1) translateZ(0); } 50% { transform: scale(1.05) translateZ(0.2vh); } 100% { transform: scale(1) translateZ(0); } } .fnc_hud_item_5.active { animation: pulse-voice 2.4s infinite ease-in-out; } #health, #thirst, #hunger, #armour, #voice, #stamina, #lung, #fuel { background: conic-gradient(#00ff8c 0deg, #00ff8c var(--rotation, 0deg), rgba(0, 0, 0, 0.1) var(--rotation, 0deg)); } .fnc_fill { position: absolute; width: 100%; height: 100%; transition: --rotation 0.5s ease-in-out, background 0.5s ease-in-out; transform-origin: center; } .fnc_carhud_bottomwrapper { position: absolute; bottom: 0.5vh; right: -1vh; /* dokładnie taki sam jak tło ulicy */ display: flex; flex-direction: column; align-items: flex-end; z-index: 9999; } .fnc_carhud_stack { display: flex; flex-direction: column; align-items: flex-end; gap: 0.6vh; width: fit-content; max-width: 28vh; } .fnc_carhud_topicons_horizontal { display: flex; flex-direction: row; gap: 0.5vh; width: auto; margin-left: auto; padding-right: 0vh; transform: translateY(1.2vh); box-sizing: border-box; } .fnc_carhud_speedblock { display: flex; align-items: flex-end; justify-content: flex-end; gap: 0.5vh; padding-right: 0.5vh; /* taki sam jak .fnc_carhud_header */ box-sizing: border-box; width: 100%; position: relative; } #carhud_speed { font-size: 7vh; font-weight: 900; letter-spacing: 0.3vh; line-height: 1; font-variant-numeric: tabular-nums; width: 16.5vh; height: 7vh; text-align: right; margin-right: -2vh; color: #ffffff; white-space: nowrap; overflow: hidden; display: inline-block; } .fnc_speed_unitblock_inline { display: flex; align-items: center; gap: 0.3vh; margin-left: 2vh; transform: translateY(-1vh); /* ⬆️ lekko wyżej */ } .fnc_speed_unitblock_inline .carhud-speed-icon { font-size: 1.6vh; background: linear-gradient(to top, #00aa66, #00ff8c); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; text-fill-color: transparent; } .carhud-align-right { width: 100%; display: flex; justify-content: flex-end; padding-right: 1.5vh; box-sizing: border-box; } .fnc_speed_unitblock_inline .carhud-label-unit { font-size: 1.6vh; font-weight: 800; color: #ffffff; white-space: nowrap; } .fnc_carhud_header { width: 100%; max-width: 30vh; min-width: 30vh; padding: 1vh 1.5vh; background: linear-gradient(to top, #2a493c 0%, #252525 100%); display: flex; align-items: center; justify-content: space-between; border-radius: 0.6vh; margin-left: auto; } .fnc_carhud_header_content { display: flex; flex-direction: row; align-items: center; gap: 1.4vh; font-size: 1.6vh; font-weight: 600; color: white; white-space: nowrap; width: 100%; min-width: 0; overflow: hidden; } .carhud-direction { background-color: rgba(0, 255, 140, 0.12); width: 5vh; padding: 1vh 0; height: 100%; border-radius: 0.6vh; display: flex; align-items: center; justify-content: center; font-weight: 900; font-size: 1.9vh; color: #00ff8c; line-height: 1; position: relative; text-align: center; flex-shrink: 0; } .carhud-direction::before { content: ''; position: absolute; inset: 0; background: rgba(0, 255, 140, 0.08); backdrop-filter: blur(0.6vh); z-index: 0; border-radius: inherit; } .carhud-direction span { position: relative; z-index: 1; font-weight: 900; font-size: 1.9vh; color: #00ff8c; line-height: 1; display: inline-block; width: 100%; text-align: center; } .carhud-street { font-size: 1.6vh; font-weight: 600; color: #ffffff; opacity: 0.9; line-height: 1; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; flex-grow: 1; min-width: 0; max-width: 18vh; } #notifications-wrapper { position: fixed; top: 1vh; left: 50%; transform: translateX(-50%); z-index: 9999; display: flex; flex-direction: column; gap: 1vh; align-items: center; pointer-events: none; } .notification { display: flex; align-items: center; font-family: "Montserrat", sans-serif; color: white; position: relative; animation: show-up 0.3s ease-out forwards; background-color: #252525; border-radius: 0.5vh; width: 35vh; height: 7vh; min-height: 7vh; box-sizing: border-box; overflow: hidden; border: 0.1vh rgba(128, 128, 128, 0.4) solid; } .notification-left { position: relative; width: 7vh; height: 100%; display: flex; align-items: center; justify-content: center; background-color: #252525; border: #252525 solid 0.2vh; border-top-left-radius: 0.5vh; border-bottom-left-radius: 0.5vh; z-index: 0; overflow: hidden; flex-shrink: 0; } .notification-left::after { content: ""; position: absolute; width: 90%; height: 80%; left: 50%; top: 55%; transform: translate(-50%, -50%); background: radial-gradient(circle, rgba(0, 255, 140, 0.4) 0%, rgba(0, 255, 140, 0) 100%); filter: blur(1.2vh); z-index: 0; pointer-events: none; } .notification-icon { font-size: 2vh; position: relative; display: flex; align-items: center; justify-content: center; background: linear-gradient(to top, #00613c, #00ff8c); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; text-fill-color: transparent; filter: drop-shadow(0 0 0.1vh #00613c); z-index: 1; pointer-events: none; } .notify-circle { position: absolute; width: 3.6vh; height: 3.6vh; border-radius: 50%; background: conic-gradient(#00ff8c var(--angle, 360deg), transparent 0deg); mask: radial-gradient(farthest-side, transparent 90%, black 91%); -webkit-mask: radial-gradient(farthest-side, transparent 90%, black 91%); top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 0; pointer-events: none; } .notification-separator { width: 0.1vh; background-color: rgba(128, 128, 128, 0.3); border-radius: 0.2vh; align-self: stretch; } .notification-texts { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; height: 100%; padding-left: 1.4vh; padding-right: 2vh; flex-grow: 1; gap: 0.2vh; } .notification-title { font-size: 1.6vh; font-weight: bold; color: #ffffff; line-height: 1.6vh; margin: 0; } .notification-desc { font-size: 1.4vh; font-weight: 300; line-height: 1.6vh; word-break: break-word; margin: 0; } @keyframes show-up { 0% { opacity: 0; } 100% { opacity: 1; } } @keyframes close-down { 0% { opacity: 1; } 100% { opacity: 0; } } .notification-icon.drynda { animation: bell-drynda 1.2s ease-out; transform-origin: top center; } /* @keyframes bell-drynda { 0% { transform: rotate(0deg); } 10% { transform: rotate(30deg); } 20% { transform: rotate(-28deg); } 30% { transform: rotate(25deg); } 40% { transform: rotate(-22deg); } 50% { transform: rotate(18deg); } 60% { transform: rotate(-14deg); } 70% { transform: rotate(10deg); } 80% { transform: rotate(-6deg); } 90% { transform: rotate(3deg); } 100% { transform: rotate(0deg); } } */ #progress-bar-wrapper { position: absolute; bottom: 18vh; left: 50%; transform: translateX(-50%); width: 20vh; background-color: #121412; border-radius: 0.60rem; padding: 0.9vh 1vh 0.6vh 1vh; display: flex; flex-direction: column; align-items: center; font-family: "Montserrat", sans-serif; z-index: 9999; } #progress-bar-text { color: white; font-size: 1.1vh; font-weight: 700; margin-bottom: 0.4vh; text-align: center; } #progress-bar-track { width: 95%; height: 0.3vh; border-top: 1vh; background-color: #535353; border-radius: 0.2vh; overflow: hidden; } #progress-bar-fill { width: 0%; height: 100%; background: #00ff8c; border-radius: 0.2vh; }