@import url('https://fonts.googleapis.com/css2?family=BIZ+UDPGothic:wght@400;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Kosugi+Maru&family=Sawarabi+Gothic&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Audiowide&display=swap');

.title-font {
    font-family: "BIZ UDPGothic", sans-serif;
    font-weight: 700;
    font-style: normal;
}

.noto-sans-jp {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
}

.kosugi-maru {
    font-family: "Kosugi Maru", sans-serif;
    font-weight: 400;
    font-style: normal;
}

.audiowide-regular {
    font-family: "Audiowide", sans-serif;
    font-weight: 400;
    font-style: normal;
}

html {
    font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

body {
    background-color: #F8FBF8;
}

.body-contents {
    margin-left: auto;
    margin-right: auto;
}

.body-contents:not(.admin) {
    max-width: 768px;
}

m-control:focus, .form-check-input:focus {
    box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

.w-fit {
    width: fit-content;
}

.h-0 {
    height: 0;
}

main {
    display: none;
    margin-bottom: 40px;
}

@media (min-width: 576px) {
    main {
        margin-bottom: unset;
    }
}

h1 {
    font-size: 1.4em;
    margin-bottom: 0.25rem;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight:700;
}

.league-name {
    font-family: "Audiowide", sans-serif;
    font-weight: 400;
    font-style: normal;
    word-spacing: -1em;
}

h1 .league-name {
    margin-top: 3px;
    font-size: 1.2em;
    line-height: 1em;
}

.league-name > span {
    display: inline-block;
    width: 1em;
    text-align: center;
}

.header-player {
    background-color: ghostwhite;
}

header {
    height: 3rem;
}

.navbar-brand {
    letter-spacing: 1px;
    font-weight: 700;
    color: var(--bs-gray-800);
}

footer {
    height: 40px;
    z-index: 10;
    background-color: #eafce7;
}

footer i {
    font-size: 1.75rem;
}

footer span {
    font-size: 0.9rem;
    margin-left: 0.5rem;
}

footer a {
    display: flex;
    align-items: center;
    text-decoration: none;
}

thead > tr > th {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

a.btn-link {
    text-decoration: none;
    --bs-link-color: black;
}

.btn.disabled, .btn:disabled, fieldset:disabled .btn {
    color: unset;
}

.btn:not(.btn-link) {
    box-shadow: rgba(0,0,0,0.4) 1px 1px 3px;
}