* {
    box-sizing: border-box;
}

html {
    padding: 0;
    margin: 0;
}

body {
    font-family: Arial, sans-serif;
    background-color: black;
    color: white;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0;
    padding: 0;
    overflow: hidden;
    height: 100vh;
    width: 100vw;
    position: fixed;
}

body.body-align-end {
    align-items: flex-end;
}

[v-cloak] {
    display: none;
}

#app {
    width: calc(100% - 1em);
    background-color: black;
    overflow: hidden;
}

/* iPadなどのタブレット */
@media (min-width: 540px) { /* iPadの一般的な最小幅 */
    #app {
        width: 540px;
    }
}
  
/* PCなどのより大きな画面 */
@media (min-width: 992px) { /* 例: より一般的なPCの画面サイズ */
    #app {
        width: 24em; /* 必要に応じて調整 */
    }
}

/* 横向きで、かつ画面の高さが 600px 以下の場合 */
@media (orientation: landscape) and (max-height: 600px) {
    #app {
        width: 20em;
    }
}

#debug {
    position: fixed;
    top: 0;
    color: #fff;
    background-color: rgba(0,0,0,0.5);
    z-index: 4;

}