html, body { height: 100%; } body { background: linear-gradient(90deg, #024b78, #0bb0be); margin: 0; height: 100vh; max-height: 100vh; overflow: hidden; font-family: 'Montserrat', sans-serif; display: flex; flex-direction: column; box-sizing: border-box; } *, *::before, *::after { box-sizing: border-box; } /* Fits a 890×610 window with a 68px browser sidebar (~822×610 content) by compacting chrome — cards stay full size. */ /* header */ header { color: #ffffff; display: flex; flex: 0 0 auto; height: 48px; padding: 4px 12px; align-items: center; justify-content: start; } header img { height: 36px; width: auto; } header-logo { height: 50px; width: 100px; } .branding { font-weight: 600; margin: 0 12px; font-size: 1.25rem; text-transform: uppercase; } section { flex: 1 1 auto; min-height: 0; display: flex; flex-direction: column; justify-content: center; padding: 8px 8px 0; } /* cards */ .download-cards { margin: 0 auto; padding: 0; width: 100%; max-width: 1400px; text-align: center; color: #ffffff; display: flex; flex-direction: column; align-items: center; min-height: 0; } .download-cards-text { font-weight: 600; font-size: 1.25rem; margin: 0 0 2px; flex-shrink: 0; } .download-cards > a { font-size: 13px !important; margin-top: 2px !important; flex-shrink: 0; } .download-options { display: flex; flex-wrap: nowrap; justify-content: center; align-items: flex-start; width: 100%; margin: 8px auto 0; gap: 4px; min-height: 0; } .download-row { display: contents; } #windows-option { order: 1; } #apple-silicon-option { order: 2; } #apple-arm-option { order: 3; } #apple-intel-option { order: 4; } #linux-option { order: 5; } /* When five full-size cards cannot sit on one row: Win+Linux on top, Macs below. Card size is driven by --card-height from index.js (innerHeight), not 100vh. */ @media (max-width: 1024px) { section { padding: 2px 6px 0; justify-content: center; } body.qt-embed section { padding-top: 4px; } .download-cards { flex: 0 1 auto; justify-content: flex-start; max-height: 100%; } .download-cards-text { font-size: 1.05rem; } .download-cards > a { font-size: 12px !important; margin-top: 0 !important; } .download-options { flex: 0 0 auto; flex-direction: column; flex-wrap: nowrap; align-items: center; justify-content: flex-start; gap: 0; margin-top: 2px; } .download-row { display: flex; flex-wrap: nowrap; justify-content: center; align-items: flex-start; gap: 2px; flex: 0 0 auto; } #windows-option, #apple-silicon-option, #apple-arm-option, #apple-intel-option, #linux-option { order: initial; } .card { width: 148px; height: var(--card-height, 200px); min-height: var(--card-height, 200px); max-height: var(--card-height, 200px); margin: 1px; padding: var(--card-pad, 12px) 14px; } .card:hover { transform: none; } .option-logo { font-size: var(--card-logo-size, 56px); margin-bottom: var(--card-logo-gap, 8px); } .card-info { min-height: 0; } .card-info h3 { margin: 0 0 2px; font-size: 0.95rem; } .card-info p { font-size: 11px; line-height: 1.15; } .card button { height: var(--card-btn-height, 30px); font-size: 13px; } .detected-message { height: 14px; margin-top: 0; font-size: 11px; } } /* Qt embed: collapse chrome so the download header sits at the top */ body.qt-embed header, body.qt-embed footer { display: none; } body.qt-embed section { padding-top: 8px; } @media (max-width: 1024px) { body.qt-embed section { padding-top: 6px; } } /* Apple flip card */ .flip-card, .flip-card--detected { background: transparent; margin: 15px; perspective: 500px; transition: 0.5s; } .flip-card:hover { transform: scale(1.1); } .flip-card:hover .flip-card-inner, .flip-card--detected:hover .flip-card-inner { transform: rotatey(180deg); } .flip-card-inner { transition: 0.5s; transform-style: preserve-3d; box-shadow: 0px 8px 8px rgba(29, 28, 29, 0.5); } .flip-card-inner:hover { transition: 0.5s; box-shadow: 0px 12px 12px rgba(29, 28, 29, 0.5); } .flip-card-front, .flip-card-back { -webkit-backface-visibility: hidden; backface-visibility: hidden; } .flip-card-front { position: absolute; align-content: space-between; background: rgba(255, 255, 255, 1); border-radius: 8px; color: #1d1c1d; display: flex; flex-direction: column; font-weight: 500; height: 300px; padding: 40px 30px; width: 180px; } .flip-card-back { align-content: space-between; background: rgba(255, 255, 255, 1); border-radius: 8px; color: #1d1c1d; display: flex; flex-direction: column; font-weight: 500; height: 300px; padding: 40px 30px; width: 180px; transform: rotatey(180deg); } .version-selection { display: flex; flex-direction: column; align-items: center; margin: 10px 0; } .version-selection button { margin: 0; width: 180px; } .version-selection p { margin-bottom: 2px; } /* standard card */ .option { display: flex; flex-direction: column; align-items: center; border: 2px solid transparent; border-radius: 15px; flex-shrink: 0; } .option--detected { border: 2px solid #ffffff; border-radius: 15px; transition: 0.5s; } .option--detected:hover { border: 2px solid #ffffff; } .detected-message { visibility: hidden; height: 18px; margin-top: 6px; font-size: 13px; text-shadow: 0px 5px 8px rgba(29, 28, 29, 0.5); width: 100%; text-align: center; pointer-events: none; } .detected-message--detected { visibility: visible; } .detected-message p { margin: 0; } .card { background: rgba(255, 255, 255, 1); border-radius: 8px; box-shadow: 0px 8px 8px rgba(29, 28, 29, 0.5); color: #1d1c1d; display: flex; flex-direction: column; align-items: center; font-weight: 500; height: var(--card-height, 300px); min-height: var(--card-height, 300px); max-height: var(--card-height, 300px); margin: 6px; padding: var(--card-pad, 40px) 30px; width: 180px; transition: box-shadow 0.25s; z-index: 10; box-sizing: border-box; flex-shrink: 0; } .card:hover { box-shadow: 0px 12px 12px rgba(29, 28, 29, 0.5); transform: scale(1.05); } .card--detected { transform: none !important; } .option-logo { font-size: var(--card-logo-size, 100px); margin-bottom: var(--card-logo-gap, 20px); line-height: 1; flex-shrink: 0; } .card-info { display: flex; flex-direction: column; align-items: center; justify-content: flex-start; flex: 1 1 auto; width: 100%; min-height: 90px; text-align: center; } .card-info h3 { margin: 0 0 6px; font-size: 1.17em; line-height: 1.2; } .card-info p { margin: 0; line-height: 1.35; font-size: 14px; } .card button { background: #007e9c; border: none; border-radius: 30px; color: #ffffff; font-size: medium; font-weight: 500; margin-top: auto; width: 100%; height: var(--card-btn-height, 40px); flex-shrink: 0; transition: 0.25s; } .card button:hover:not(:disabled) { background: #ffffff; border: 2px solid #007e9c; color: #007e9c; cursor: pointer; transition: 0.25s; } .card button:disabled { background: #9aa7ac; color: #ffffff; cursor: not-allowed; } .card button:active { background: #0bb0be; color: #ffffff; transition: 0.15s; } /* footer */ footer { border-top: 2px solid #007e9c; padding: 0 16px; font-size: 11px; background: #1d1c1d; color: #ffffff; position: relative; flex: 0 0 auto; display: flex; justify-content: space-between; align-items: center; height: 40px; gap: 8px; } .copyright { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; } .social-links { display: flex; justify-content: flex-end; flex-shrink: 0; } .social-link { color: #ffffff; font-size: 1.25rem; margin: 0 6px; transition: 0.25s; } .social-link:hover { color: rgba(11, 176, 190, 0.8); cursor: pointer; transition: 0.25s; }