@import url('https://fonts.googleapis.com/css2?family=Lexend:wght@100..900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap'); html, body { margin: 0; padding: 0; overflow: hidden; height: 100%; width: 100%; font-family: 'Poppins', sans-serif; background: transparent; } #garage-ui { position: absolute; bottom: 60px; left: 50%; transform: translateX(-50%); display: none; background: rgba(0, 0, 0, 0.839); border-radius: 14px; padding: 13px 25px 1px 25px; width: fit-content; max-width: 95vw; text-align: left; animation: popIn 0.8s cubic-bezier(0.68, -0.55, 0.265, 1.55) forwards; opacity: 0; transform: translateX(-50%) scale(0.3); overflow: visible; z-index: 1000; } @keyframes popIn { 0% { opacity: 0; transform: translateX(-50%) scale(0.3) rotateY(-15deg); } 50% { opacity: 0.8; transform: translateX(-50%) scale(1.1) rotateY(0deg); } 100% { opacity: 1; transform: translateX(-50%) scale(1) rotateY(0deg); } } .garage-header { display: flex; align-items: center; margin-bottom: 0px; } .garage-logo { width: 51px; height: 51px; margin-right: 5px; } .garage-texts { display: flex; flex-direction: column; } .garage-title { color: #dedede; font-size: 15px; font-weight: 600; } .garage-subtitle { color: #cef34d; font-size: 13px; font-weight: 400; margin-top: -6px; } #garage-ui.active { display: block; } #garage-ui h1 { color: #209be2; font-size: 28px; font-weight: 700; margin: 0 0 10px; } #vehicle-list { display: flex; gap: 20px; overflow-x: auto; padding: 25px 25px 25px 25px; width: 850px; max-width: 100vw; justify-content: flex-start; scroll-behavior: smooth; scroll-snap-type: x mandatory; box-sizing: border-box; -webkit-overflow-scrolling: touch; } #vehicle-list::-webkit-scrollbar { width: 0; background: transparent; } .vehicle-card { width: 280px; flex-shrink: 0; scroll-snap-align: start; box-sizing: border-box; background: linear-gradient(135deg, rgba(40, 40, 40, 0.4) 0%, rgba(20, 20, 20, 0.6) 100%); backdrop-filter: blur(10px); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 18px; padding: 22px; color: white; font-family: 'Lexend', sans-serif; position: relative; transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); text-align: left; flex: 0 0 auto; overflow: hidden; } .vehicle-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: linear-gradient(135deg, rgba(206, 243, 77, 0.05), transparent); opacity: 0; transition: opacity 0.3s ease; border-radius: 18px; } .vehicle-card:hover { transform: translateY(-8px) scale(1.02); cursor: pointer; border-color: rgba(206, 243, 77, 0.3); box-shadow: 0 15px 40px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(206, 243, 77, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.1); } .vehicle-card:hover::before { opacity: 1; } .vehicle-card.selected { background: linear-gradient(135deg, rgba(206, 243, 77, 0.15) 0%, rgba(168, 212, 56, 0.1) 100%); border-color: rgba(206, 243, 77, 0.5); } .vehicle-info .label { font-size: 13px; color: #aaa; } .vehicle-info .name, .vehicle-info .plate { font-weight: 700; font-size: 15px; color: #c8ff00; } .slot-number { position: absolute; top: 10px; right: 10px; background: #c8ff00; color: black; font-weight: bold; padding: 3px 8px; border-radius: 6px; font-size: 12px; } .tag { position: absolute; top: 10px; right: 60px; border: 1px solid #c8ff00; color: #c8ff00; font-weight: 600; font-size: 12px; padding: 4px 10px; border-radius: 10px; } .vehicle-card:not(.selected) .tag { display: none; } .vehicle-card::after { content: "Spausk, kad pasirinktum."; display: block; margin-top: 10px; font-size: 12px; color: #77777798; font-weight: 400; text-align: center; } #button-descriptions { display: none; position: absolute; top: 25px; right: 25px; z-index: 10; gap: 10px; } #button-descriptions.active { display: flex; } .button-description { display: flex; align-items: center; margin: 0 10px; white-space: nowrap; } .button-icon { width: 25px; height: 15px; margin-right: 10px; } .button-text { font-weight: 500; font-size: 1.2vh; color: #c4c4c4; } .vehicle-item { margin: 15px 0; padding: 14px; background-color: #00000065; border-radius: 10px; cursor: pointer; transition: background-color 0.3s ease, transform 0.2s ease; display: flex; justify-content: space-between; align-items: center; } .vehicle-item:hover { background-color: #1b1b1b9f; transform: scale(0.95); border-radius: 10px; } .plate-item { background-color: #209be2; padding: 5px 10px; border-radius: 8px; color: black; font-weight: 700; margin-left: 10px; } @media (max-width: 900px) { #vehicle-list { width: 100vw; padding: 10px; } .vehicle-card { width: 70vw; } } #vehicle-loader { position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 2000; border-radius: 12px; padding: 20px; } .loader-svg { --uib-size: 50px; --uib-color: #ffffff; --uib-speed: 3s; --uib-bg-opacity: 0.2; height: var(--uib-size); width: var(--uib-size); transform-origin: center; animation: rotate var(--uib-speed) linear infinite; overflow: visible; } .loader-svg .car { fill: none; stroke: var(--uib-color); stroke-dasharray: 1, 200; stroke-dashoffset: 0; stroke-linecap: round; animation: stretch calc(var(--uib-speed) * 0.75) ease-in-out infinite; transition: stroke 0.5s ease; } .loader-svg .track { fill: none; stroke: var(--uib-color); opacity: var(--uib-bg-opacity); transition: stroke 0.5s ease; } @keyframes rotate { 100% { transform: rotate(360deg); } } @keyframes stretch { 0% { stroke-dasharray: 0, 150; stroke-dashoffset: 0; } 50% { stroke-dasharray: 75, 150; stroke-dashoffset: -25; } 100% { stroke-dashoffset: -100; } }