/**
 * Copyright (c) 2015 Spoqa, Inc.
 *
 * Permission is hereby granted, free of charge, to any person obtaining
 * a copy of this software and associated documentation files (the
 * "Software"), to deal in the Software without restriction, including
 * without limitation the rights to use, copy, modify, merge, publish,
 * distribute, sublicense, and/or sell copies of the Software, and to
 * permit persons to whom the Software is furnished to do so, subject to
 * the following conditions:
 *
 * The above copyright notice and this permission notice shall be
 * included in all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
 * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
 * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 */

/* Bold (굵은) 글꼴 정의 */
@font-face {
    font-family: 'Spoqa Han Sans Neo';
    font-weight: 700;
    src: local('Spoqa Han Sans Neo Bold'),
         url('/fonts/SpoqaHanSansNeo/SpoqaHanSansNeo-Bold.woff2') format('woff2'),
         url('/fonts/SpoqaHanSansNeo/SpoqaHanSansNeo-Bold.woff') format('woff'),
         url('/fonts/SpoqaHanSansNeo/SpoqaHanSansNeo-Bold.ttf') format('truetype');
    /* 굵은 글꼴을 정의하며, 다양한 파일 형식을 지원합니다. */
}

/* Medium (중간 굵기) 글꼴 정의 */
@font-face {
    font-family: 'Spoqa Han Sans Neo';
    font-weight: 500;
    src: local('Spoqa Han Sans Neo Medium'),
         url('/fonts/SpoqaHanSansNeo/SpoqaHanSansNeo-Medium.woff2') format('woff2'),
         url('/fonts/SpoqaHanSansNeo/SpoqaHanSansNeo-Medium.woff') format('woff'),
         url('/fonts/SpoqaHanSansNeo/SpoqaHanSansNeo-Medium.ttf') format('truetype');
    /* 중간 굵기의 글꼴을 정의하며, 다양한 파일 형식을 지원합니다. */
}

/* Regular (기본) 글꼴 정의 */
@font-face {
    font-family: 'Spoqa Han Sans Neo';
    font-weight: 400;
    src: local('Spoqa Han Sans Neo Regular'),
         url('/fonts/SpoqaHanSansNeo/SpoqaHanSansNeo-Regular.woff2') format('woff2'),
         url('/fonts/SpoqaHanSansNeo/SpoqaHanSansNeo-Regular.woff') format('woff'),
         url('/fonts/SpoqaHanSansNeo/SpoqaHanSansNeo-Regular.ttf') format('truetype');
    /* 기본 굵기의 글꼴을 정의하며, 다양한 파일 형식을 지원합니다. */
}

/* Light (얇은) 글꼴 정의 */
@font-face {
    font-family: 'Spoqa Han Sans Neo';
    font-weight: 300;
    src: local('Spoqa Han Sans Neo Light'),
         url('/fonts/SpoqaHanSansNeo/SpoqaHanSansNeo-Light.woff2') format('woff2'),
         url('/fonts/SpoqaHanSansNeo/SpoqaHanSansNeo-Light.woff') format('woff'),
         url('/fonts/SpoqaHanSansNeo/SpoqaHanSansNeo-Light.ttf') format('truetype');
    /* 얇은 글꼴을 정의하며, 다양한 파일 형식을 지원합니다. */
}

/* Thin (가장 얇은) 글꼴 정의 */
@font-face {
    font-family: 'Spoqa Han Sans Neo';
    font-weight: 100;
    src: local('Spoqa Han Sans Neo Thin'),
         url('/fonts/SpoqaHanSansNeo/SpoqaHanSansNeo-Thin.woff2') format('woff2'),
         url('/fonts/SpoqaHanSansNeo/SpoqaHanSansNeo-Thin.woff') format('woff'),
         url('/fonts/SpoqaHanSansNeo/SpoqaHanSansNeo-Thin.ttf') format('truetype');
    /* 가장 얇은 글꼴을 정의하며, 다양한 파일 형식을 지원합니다. */
}

/* 전체 애플리케이션에 기본 글꼴 적용 */
body {
    font-family: 'Spoqa Han Sans Neo', sans-serif;
}

/* 헤더 스타일 정의 */
h1, h2, h3 {
    font-family: 'Spoqa Han Sans Neo';
}

/* 이탤릭 스타일 정의 */
em {
    font-family: 'Spoqa Han Sans Neo';
    font-style: italic;
}

/* 굵은 텍스트 스타일 정의 */
strong {
    font-family: 'Spoqa Han Sans Neo';
    font-weight: bold;
}

/* 굵은 이탤릭 스타일 정의 */
strong em {
    font-family: 'Spoqa Han Sans Neo';
    font-weight: bold;
    font-style: italic;
}

/* 링크 스타일 정의 */
a {
    font-family: 'Spoqa Han Sans Neo';
    text-decoration: none;
}

/* 인용구 스타일 정의 */
blockquote {
    font-family: 'Spoqa Han Sans Neo';
    font-style: italic;
    border-left: 4px solid #ccc;
    padding-left: 16px;
}

/* 목록 스타일 정의 */
ul, ol {
    font-family: 'Spoqa Han Sans Neo';
}

/* 상태 색상 정의 */
:root {
    --pm-color-available: #B7B7B7; /* 사용가능 */
    --pm-color-empty: #F6F7FA; /* empty */
    --pm-color-active: #9FC1B8; /* 사용중 */
    --pm-color-expiring: #FFCD4A; /* 만료임박 */
    --pm-color-overused: #FD8A69; /* 초과사용 */
    --pm-color-unreturned: #0E6CA5; /* 키 미반환 */
    --pm-color-restricted: #75778C; /* 사용제한 */
    --pm-color-default: #9798A8; /* 기본 배지 색상 */
    --pm-color-highlight: #00A79D; /* 강조 색상 */
}

/* 페이지 설정 */
.custom-stack {
    border-radius: 5px;
    border: 1px solid var(--rz-base-400);
    vertical-align: middle;
    padding: 5px 10px; /* Top/Bottom 5px, Left/Right 10px */
}

.custom-top-btn {
    font-size: 12px; 
    height: 30px; 
    min-height: 30px; 
    width: 100px; 
    text-align: center;
}

.custom-grid-btn {
    height: 28px; 
    min-height: 28px; 
    width: 28px; 
    border-radius: 14px;
}

.custom-label-style {
    display: flex;
    font-weight: bold;
    align-items: center;
    background-color: var(--rz-base-200);
    padding: 5px 8px;
    height: 28px;
    justify-content: flex-end; /* Aligns the text to the right */
}

.cust-calendar {
    --rz-input-height: 28px;
    --rz-input-font-size: 12px;
}

.cust-dropdown {
    height: 28px; 
    font-size: 12px; 
    padding-top: 5px; 
    position: relative; 
    top: -1px;
}

.cust-1week {
    font-size: 9.5px;
    height: 24px;
    min-height: 24px;
    margin-left: 3px;
    padding-top: 2px;
    padding-bottom: 2px;
    padding-left: 3px;
    padding-right: 3px
}

.thumbnail {
    width: 60px;
    height: 60px;
    object-fit: cover;
    border-radius: 30px;
}

.thumbnail-small {
    width: 46px;
    height: 46px;
    object-fit: cover;
    border-radius: 23px;
}

.cust-status {
    display:inline-block;
    padding:0.25rem 0.75rem;
    border-radius:9999px;
    font-size:0.7rem;
    font-weight:500;
    color:#fff;
}

/* 락커,캐비넷 상태 색상 정의 */
.c-card-back-default { background-color: var(--rz-base-100);}
.c-card-back-package { background-color: var(--rz-primary-lighter);}
.c-card-back-lesson { background-color: var(--rz-series-16);}
.c-card-back-locker { background-color: var(--rz-info-lighter);}
.c-card-back-sw { background-color: var(--rz-success-lighter);}
.c-card-back-ht { background-color: var(--rz-warning-lighter);}
.c-card-back-gf { background-color: var(--rz-danger-lighter);}
.c-card-back-pt { background-color: var(--rz-base-400);}

/* 골프타석 정의 */
.layout-editor {
    position: relative;
    margin: auto;
    border: 1px solid #ddd;
    overflow: auto;
}
.layout-editor .background-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: contain; /* 이미지가 비율을 유지하며 컨테이너에 맞춰집니다. */
}
.tee-card {
    position: absolute;
    user-select: none;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2);
    border-radius: 4px;
    font-weight: 500;
}
