246 lines
5.0 KiB
CSS
246 lines
5.0 KiB
CSS
:root {
|
|
--color-base: hsl(0, 0%, 55%);
|
|
--color-light: hsl(0, 0%, 90%);
|
|
--color-dark: hsl(0, 0%, 10%);
|
|
--controls-size: 10vh;
|
|
--text-shadow-size: 0.65vh;
|
|
}
|
|
|
|
@media (orientation: landscape) {
|
|
:root {
|
|
--controls-size: 20vh;
|
|
--text-shadow-size: 1.3vh;
|
|
}
|
|
}
|
|
|
|
html {
|
|
touch-action: none;
|
|
}
|
|
|
|
body {
|
|
margin: 0;
|
|
background: #484050;
|
|
}
|
|
|
|
#app {
|
|
display: flex;
|
|
justify-content: center;
|
|
}
|
|
|
|
#app > div:first-child {
|
|
transform-origin: top !important;
|
|
}
|
|
|
|
#touchControls:not(.visible) {
|
|
display: none;
|
|
}
|
|
|
|
#dpad, #apad {
|
|
position: fixed;
|
|
bottom: 1rem;
|
|
z-index: 3;
|
|
}
|
|
|
|
@media (orientation: portrait) {
|
|
#dpad, #apad {
|
|
bottom: calc(1rem + env(safe-area-inset-bottom));
|
|
}
|
|
}
|
|
|
|
#dpad {
|
|
left: 1rem;
|
|
}
|
|
|
|
#apad {
|
|
right: 1rem;
|
|
}
|
|
|
|
#dpad svg {
|
|
width: calc(2 * var(--controls-size));
|
|
height: calc(2 * var(--controls-size));
|
|
fill: var(--color-base);
|
|
}
|
|
|
|
#dpad svg rect {
|
|
opacity: 0.6;
|
|
}
|
|
|
|
#apad > * {
|
|
width: var(--controls-size);
|
|
height: var(--controls-size);
|
|
}
|
|
|
|
#apad .apadBtn {
|
|
width: var(--controls-size);
|
|
height: var(--controls-size);
|
|
background-color: var(--color-base);
|
|
border-radius: 50%;
|
|
}
|
|
|
|
#apad .apadLabel {
|
|
font-family: 'emerald';
|
|
font-size: var(--controls-size);
|
|
text-shadow: var(--color-dark) var(--text-shadow-size) var(--text-shadow-size);
|
|
color: var(--color-light);
|
|
user-select: none;
|
|
}
|
|
|
|
#apad .apadLabelSmall {
|
|
font-size: calc(var(--controls-size) / 3);
|
|
text-shadow: var(--color-dark) calc(var(--text-shadow-size) / 3) calc(var(--text-shadow-size) / 3);
|
|
}
|
|
|
|
#apad #apadLabelAction, #apad #apadLabelCancel {
|
|
margin-left: calc(var(--controls-size) / 3);
|
|
line-height: 0.9;
|
|
}
|
|
|
|
#apad > :nth-child(2) {
|
|
position: relative;
|
|
right: var(--controls-size);
|
|
}
|
|
|
|
#apad .apadRectBtn {
|
|
position: relative;
|
|
text-align: center;
|
|
padding-right: 10%;
|
|
border-radius: 10%;
|
|
bottom: calc(var(--controls-size) * 0.05);
|
|
width: calc(var(--controls-size) * 0.6);
|
|
height: calc(var(--controls-size) * 0.3);
|
|
}
|
|
|
|
#apad .apadSqBtn {
|
|
border-radius: 10%;
|
|
width: calc(var(--controls-size) * 0.3);
|
|
height: calc(var(--controls-size) * 0.3);
|
|
}
|
|
|
|
#apad .apadBtnContainer {
|
|
position: relative;
|
|
display: flex;
|
|
}
|
|
|
|
#apad .apadRectBtnContainer {
|
|
flex-wrap: wrap;
|
|
margin-top: calc(var(--controls-size) * -0.8);
|
|
left: calc(var(--controls-size) * 0.175);
|
|
height: calc(var(--controls-size) * 0.8);
|
|
}
|
|
|
|
#apad .apadSqBtnContainer {
|
|
flex-wrap: wrap;
|
|
justify-content: space-evenly;
|
|
align-items: center;
|
|
margin-bottom: calc(var(--controls-size) * -0.8);
|
|
top: calc(var(--controls-size) * -0.9);
|
|
width: calc(var(--controls-size) * 0.8);
|
|
height: calc(var(--controls-size) * 0.8);
|
|
}
|
|
|
|
#apad .apadRectBtnContainer > #apadMenu {
|
|
align-self: flex-end;
|
|
}
|
|
|
|
#apad .apadRectBtnContainer > .apadSqBtn:not(:first-child) {
|
|
margin-left: 10%;
|
|
}
|
|
|
|
#touchControls:not([data-ui-mode='STARTER_SELECT']):not([data-ui-mode='SETTINGS']):not([data-ui-mode='SETTINGS_ACCESSIBILITY']):not([data-ui-mode='SETTINGS_GAMEPAD']):not([data-ui-mode='SETTINGS_KEYBOARD']) #apad .apadRectBtnContainer > .apadSqBtn,
|
|
#touchControls:not([data-ui-mode='STARTER_SELECT']):not([data-ui-mode='SETTINGS']):not([data-ui-mode='SETTINGS_ACCESSIBILITY']):not([data-ui-mode='SETTINGS_GAMEPAD']):not([data-ui-mode='SETTINGS_KEYBOARD']) #apad .apadSqBtnContainer
|
|
{
|
|
display: none;
|
|
}
|
|
|
|
#touchControls:not([data-ui-mode='COMMAND']):not([data-ui-mode='FIGHT']):not([data-ui-mode='BALL']):not([data-ui-mode='TARGET_SELECT']) #apad .apadBattle {
|
|
display: none;
|
|
}
|
|
|
|
#apad .apadRectBtnContainer + .apadSqBtnContainer {
|
|
top: calc(var(--controls-size) * -1.9);
|
|
left: calc(var(--controls-size) * -0.9);
|
|
}
|
|
|
|
#apad .apadBtnContainer .apadLabel {
|
|
margin-left: calc(var(--controls-size) / 12);
|
|
line-height: 0.8;
|
|
}
|
|
|
|
#dpad path:not(.active), #apad .apadBtn:not(.active) {
|
|
opacity: 0.6;
|
|
}
|
|
|
|
#layout:fullscreen #dpad, #layout:fullscreen #apad {
|
|
bottom: 6rem;
|
|
}
|
|
|
|
input:-internal-autofill-selected {
|
|
-webkit-background-clip: text;
|
|
background-clip: text;
|
|
}
|
|
#banner {
|
|
display: none;
|
|
position: absolute;
|
|
top: 33.2%;
|
|
left: 0;
|
|
text-align: center;
|
|
z-index: 1000; /* Ensures the banner is on top of other elements */
|
|
& > img {
|
|
opacity: 50%;
|
|
}
|
|
}
|
|
|
|
/* Firefox old*/
|
|
@-moz-keyframes blink {
|
|
0% {
|
|
opacity:1;
|
|
}
|
|
50% {
|
|
opacity:0;
|
|
}
|
|
100% {
|
|
opacity:1;
|
|
}
|
|
}
|
|
|
|
@-webkit-keyframes blink {
|
|
0% {
|
|
opacity:1;
|
|
}
|
|
50% {
|
|
opacity:0;
|
|
}
|
|
100% {
|
|
opacity:1;
|
|
}
|
|
}
|
|
/* IE */
|
|
@-ms-keyframes blink {
|
|
0% {
|
|
opacity:1;
|
|
}
|
|
50% {
|
|
opacity:0;
|
|
}
|
|
100% {
|
|
opacity:1;
|
|
}
|
|
}
|
|
/* Opera and prob css3 final iteration */
|
|
@keyframes blink {
|
|
0% {
|
|
opacity:1;
|
|
}
|
|
50% {
|
|
opacity:0;
|
|
}
|
|
100% {
|
|
opacity:1;
|
|
}
|
|
}
|
|
.blink-image {
|
|
-moz-animation: blink normal 4s infinite ease-in-out; /* Firefox */
|
|
-webkit-animation: blink normal 4s infinite ease-in-out; /* Webkit */
|
|
-ms-animation: blink normal 4s infinite ease-in-out; /* IE */
|
|
animation: blink normal 4s infinite ease-in-out; /* Opera and prob css3 final iteration */
|
|
} |