@font-face {
    font-family: Inter;
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
    src: url('./inter-variable.woff2') format('woff2');
}

@font-face {
    font-family: 'Material Symbols Outlined';
    font-style: normal;
    font-weight: 400;
    font-display: block;
    src: url('./material-symbols-outlined.ttf') format('truetype');
}

.material-symbols-outlined {
    font-family: 'Material Symbols Outlined';
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    display: inline-block;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    font-feature-settings: 'liga';
    -webkit-font-smoothing: antialiased;
}

.service-notice, .service-feedback {
    margin-bottom: 1.5rem;
    padding: 1rem 1.25rem;
    border: 1px solid #e9cc83;
    border-radius: 1rem;
    background: #fff8e6;
    color: #654813;
    font-size: .875rem;
    line-height: 1.65;
    overflow-wrap: anywhere;
}

.service-notice strong { display: block; margin-bottom: .25rem; }
.service-feedback { margin-top: 1.25rem; }
.service-feedback:focus { outline: 2px solid #004532; outline-offset: 3px; }
.auth-main { padding-top: 6rem; }
fieldset { min-width: 0; }
fieldset:disabled { opacity: .65; }
button, a, input, textarea { -webkit-tap-highlight-color: transparent; }
button:focus-visible, a:focus-visible { outline: 2px solid #004532; outline-offset: 4px; }
.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { transition: none !important; animation: none !important; }
}
