/* * Copyright (C) 2018-2022 Apple Inc. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGE. */ :root { --color-primary: #34AADC; --color-secondary: #86D9FF; --text-color-inverse: white; --text-color-primary: black; --text-color-secondary: #555555; --text-color-tertiary: #444444; --text-color-subtle: #6c6c71; --text-color-very-subtle: #8E8E93; --heading-color: #2C98D1; --link-hover-color: #0086BF; --button-color-primary: rgb(52, 170, 220); --error-text-color: #d24a59; --benchmark-heading-color: rgb(183, 183, 183); --benchmark-error-text-color: #ff8686; --benchmark-done-result-color: #4A4A4A; --gap: 3rem; --width: 200px; } html, svg text { font-family: "Helvetica Neue", Helvetica, Verdana, sans-serif; font-size: 62.5%; font-synthesis: none; height: 100vh; } body { display: flex; flex-direction: column; gap: var(--gap); margin: 0; font-size: 1.6rem; font-weight: 400; line-height: 1.4; background-repeat: no-repeat; background-position: center -5vw; background-size: 100vw; padding-bottom: 0px; background-image: url('clouds.svg'); overflow-y: hidden; height: 100%; } table { border-spacing: 0; } body.nonDefaultParams { filter: hue-rotate(152deg); } .nonDefaultParams .summary { display: none; } #non-default-params { display: none; text-align: center; & h2 { text-align: center; } & p { text-align: center; } } .nonDefaultParams #non-default-params { display: block; } #non-standard-params-table { border-collapse: collapse; text-align: left; display: inline-block; margin-top: var(--gap); } #non-standard-params-table tr { padding: 2px; } #non-standard-params-table thead th { border-bottom: 1px solid var(--foreground); } #non-standard-params-table tbody td { font-weight: normal; text-align: left; } #non-standard-params-table thead th, #non-standard-params-table tbody td { padding: 0.1em 0.3em; } #non-standard-params-table tbody td:nth-child(2) { color: var(--highlight); } .overflow-scroll { overflow-y: auto; } .overflow-visible { overflow: visible; } ::selection { background-color: var(--color-primary); color: var(--text-color-inverse); } main { display: flex; flex-direction: column; gap: var(--gap); margin: 0 auto; padding: 0 var(--gap); max-width: 1180px; text-align: center; flex: 1; overflow: hidden; } main p { margin: 0; } img { -webkit-user-drag: none; user-select: none; } .logo { box-sizing: border-box; width: 100%; user-select: none; perspective: 600; } .logo .logo-image { display: block; box-sizing: border-box; background-repeat: no-repeat; background-position: center; background-image: url('JetStream3Logo.svg'); color: transparent; animation: swingin 350ms ease-out forwards; will-change: transform, opacity; height: 75px; } #jetstreams { background-image: url('jetstreams.svg'); background-repeat: no-repeat; background-size: contain; background-position: center; padding: 2rem 0; margin: -2rem 0; } #jetstreams svg { width: 100%; max-height: 120px; } #magic { position: absolute; top: -900px; left: -900px; width: 300px; height: 300px; display: none; } .summary { text-align: center; } .summary:empty { display: none; } article, .summary { max-width: 70rem; margin: 0 auto 0 auto; opacity: 0; animation: fadein 0.5s ease-in-out forwards; animation-delay: 200ms; } article { display: flex; flex-direction: column; gap: var(--gap); } h1 { color: var(--text-color-primary); text-align: center; margin-bottom: 0; } h2, h3, h4, h5, h6 { color: var(--heading-color); text-align: left; } h4, h5, h6 { margin-bottom: 0; } p { text-align: left; color: var(--text-color-secondary); } h5, h6 { font-size: 1.6rem; } h6 { color: var(--text-color-tertiary); } dt { margin-top: 10px; font-weight: bold; text-align: left; } dd { text-align: left; padding: 10px 20px; margin: 0; } a:link, a:visited { color: var(--color-primary); } a:hover, a:active { color: var(--link-hover-color); } #status label, a.button { display: inline-block; font-weight: 500; text-decoration: none; font-size: 2rem; background-color: var(--button-color-primary); background-image: linear-gradient(180deg, rgba(134, 217, 255, 1) -80%, rgb(52, 170, 220) 100%); color: var(--text-color-inverse); border: 1px solid var(--button-color-primary); border-radius: 2px; padding: 0.3rem 0.3rem 0.5rem; text-align: center; width: var(--width); -webkit-touch-callout: none; user-select: none; } a.button { animation: fadein 500ms ease-in forwards, scaledown 500ms ease-in forwards; opacity: 0; } #status label, .button:hover { background-image: none; } #status.loading { position: absolute; top: 0; left: 0; margin: 48vh 0 0; width: 100%; line-height: 1.2; font-size: 4rem; font-style: italic; font-weight: 500; letter-spacing: -0.10rem; color: transparent; background-image: linear-gradient(132deg, #96E5FF 0%, #96E5FF 2%, #86D9FF 42%, #8BDAFF 84%, #96E5FF 98%, #96E5FF 100%); -webkit-background-clip: text; background-repeat: no-repeat; -webkit-touch-callout: none; user-select: none; } #status.error { max-width: 70rem; margin: 0 auto 1rem; } .error h2, .error p { color: var(--error-text-color); margin-bottom: 0; text-align: center; font-weight: 500; } .error h2 { font-size: 5rem; letter-spacing: -0.1rem; line-height: 1; } #result-summary:empty { display: none; } #result-summary { margin-top: 20px; } #result-summary label { color: var(--text-color-subtle); } #result-summary .score { font-weight: bold; font-size: 4rem; line-height: 1; color: var(--color-primary); font-weight: 500; } .benchmark .plot svg { display: inline-block; vertical-align: middle; } #result-summary .score .interval { display: block; font-weight: normal; } #results { display: flex; flex-wrap: wrap; justify-content: space-around; gap: var(--gap); margin: 0 calc(var(--gap) * -1) 0 calc(-var(--gap) * -1); animation: fadein 500ms ease-out forwards; opacity: 0; overflow-y: auto; flex: 1; padding-bottom: var(--gap); box-sizing: border-box; } .benchmark { position: relative; flex: 1; max-width: 20%; min-width: var(--width); text-align: left; color: var(--text-color-very-subtle); font-size: 1.6rem; scroll-margin-top: 20vh; scroll-margin-bottom: 20vh; } .benchmark .result.detail { display: none; } .details .benchmark .result.detail { display: inline-block; } .benchmark h4, .benchmark .result, .benchmark label, .benchmark .plot { color: transparent; background: linear-gradient(160deg, rgba(249, 249, 249, 1) 0%, rgba(238, 238, 238, 1) 100%); border-radius: 3px; } .benchmark h3 { color: var(--benchmark-heading-color); } .benchmark-running h4, .benchmark-running .result, .benchmark-running label, .benchmark-running .plot { color: var(--color-secondary); background-color: var(--color-secondary); background-image: none; } .benchmark-done h3, .benchmark-done h4, .benchmark-done .result, .benchmark-done label, .benchmark-done .plot { background-color: transparent; background-image: none; -webkit-touch-callout: revert; user-select: text; } .benchmark-error h4, .benchmark-error .result, .benchmark-error label, .benchmark-error .plot { color: var(--benchmark-error-text-color); background-color: var(--benchmark-error-text-color); background-image: none; } .benchmark-error h3 { color: var(--benchmark-error-text-color); } .benchmark h3 { font-weight: 400; font-size: 1.6rem; margin: 0; } .benchmark-running h3 { background-color: transparent; background-image: none; color: var(--color-primary); } .benchmark-done h3 { color: var(--text-color-subtle); } .benchmark a.info { display: inline-block; width: 1.5rem; height: 1.5rem; border-radius: 100%; background-color: var(--benchmark-heading-color); color: var(--text-color-inverse) !important; user-select: none; text-align: center; vertical-align: middle; font-style: italic; font-weight: bold; font-family: 'Times New Roman', Times, serif; line-height: 1.6rem; margin-top: -0.2rem; } .benchmark-running a.info { background-color: var(--color-primary); } .benchmark-done a.info { background-color: var(--text-color-subtle); } .benchmark h3 a, .benchmark h3 a:link, .benchmark h3 a:active, .benchmark h3 a:hover, .benchmark h3 a:visited { color: inherit; text-decoration: none; } .benchmark-done h3 a:hover { color: var(--color-primary); text-decoration: underline; } .benchmark h4 { margin: 0.3rem 0; line-height: 1; font-weight: 400; font-size: 2.4rem; } .benchmark-done h4 { color: var(--color-primary); background-color: none; } .benchmark p, .benchmark-done p { margin: 0; } .benchmark .result { display: inline-block; margin-right: 1.6rem; line-height: 1.3; font-size: 1.3rem; font-weight: bold; } #result-summary .benchmark { text-align: center; max-width: 100%; margin: 0; margin-left: 1.6rem; } .benchmark-done .result { color: var(--benchmark-done-result-color); } .benchmark label { display: block; } .benchmark-done label { color: var(--text-color-very-subtle); font-weight: 400; } dt:target { background-color: var(--color-secondary); color: var(--text-color-inverse); padding-left: 10px; border-radius: 5px; } .plot svg circle { fill: var(--color-primary); opacity: 0.8; } @keyframes fadein { from { opacity: 0; } to { opacity: 1; } } @keyframes scaledown { from { transform: scale(1.3, 1.3); } to { transform: scale(1, 1); } } @keyframes shine { 0% { background-position: -1200px center; } 100% { background-position: 100vw center; } } @keyframes swingin { from { opacity: 0; transform: rotateY(-85deg) translateZ(200px); } to { opacity: 1; transform: rotateY(0deg) translateZ(0px); } } @media (max-width: 415px) { body { background-position: center 4rem; } .logo .logo-image { height: 60px; } #jetstreams { background-size: 200%; } }