/*
Theme Name: KAICE
Description: 한국AI융합교육협회 공식 테마
Version: 1.0.0
Author: 한국AI융합교육협회
Author URI: https://kaice.org
Text Domain: kaice
Requires at least: 6.0
Tested up to: 6.4
Requires PHP: 7.4
License: GPL v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

/*글씨체 임포트*/
@font-face {
    font-family: 'S-CoreDream-3';
    font-weight: normal;
    font-style: normal;
    src: url(https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-3Light.woff) format('woff2'),
         url(https://cdn.jsdelivr.net/gh/webfontworld/SCoreDream/SCoreDream3.woff) format('woff');
    font-display: swap;
}

@font-face {
    font-family: 'S-CoreDream-4';
    font-weight: normal;
    font-style: normal;
    src: url(https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-4Regular.woff) format('woff2'),
         url(https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-4Regular.woff) format('woff');
    font-display: swap;
}

@font-face {
    font-family: 'S-CoreDream-5';
    font-weight: normal;
    font-style: normal;
    src: url(https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-5Medium.woff) format('woff2'),
         url(https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-5Medium.woff) format('woff');
    font-display: swap;
}

@import url('http://fonts.googleapis.com/earlyaccess/nanumgothic.css');

/*변수 설정*/
:root {
    /* ========== 브랜드 색상 시스템 ========== */
    --theme-color-accent: #354550;      /* 강조색 - 빈도 낮음, 중요한 강조 시 사용 */
    --theme-color-primary: #408090;     /* 상징색 - 메인 브랜드 컬러, 버튼/링크 */
    --theme-color-secondary: #70A0AC;   /* 바탕색 - 헤더 배경, 서브 강조 */
    --theme-color-tertiary: #E8F4F8;    /* 보조색 - 정보 영역 배경, 하이라이트 */
    --theme-color-background: #F5F7FA;  /* 밑바탕색 - 페이지 전체 배경 */
    --theme-color-text: #2D2D2D;        /* 글자색 - 본문 텍스트 */
    --theme-color-border: #CCCCCC;      /* 테두리색 - 일반 테두리, 구분선 */

    /* ========== 기본 색상 변수 (브랜드 색상 참조) ========== */
    --theme-color-bg: var(--theme-color-background);    /* 페이지 배경색 */
    --theme-main-color: var(--theme-color-primary);     /* 메인 브랜드 색상 */
    --theme-button-hover-bg: rgba(64, 128, 144, 0.9);   /* 버튼 호버 배경 */
    --theme-header-bg: var(--theme-color-secondary);    /* 헤더 배경색 */
    --theme-info-bg: var(--theme-color-tertiary);       /* 정보 영역 배경 */
    --theme-item-border: var(--theme-color-border);     /* 아이템 테두리 */
    --theme-input-border: var(--theme-color-border);    /* 입력 필드 테두리 */
    --theme-item-bg: #f8f9fa;                           /* 아이템 배경색 */
    --theme-post-hover-bg: #f8f9fa;                     /* 게시물 호버 배경 */
    --theme-table-bg: #f7f7f7;                          /* 테이블 배경색 */
    --theme-text-color: var(--theme-color-text);        /* 본문 텍스트 색상 */
    --theme-text-emphasis: var(--theme-color-primary);  /* 강조 텍스트 색상 */
    --theme-info-text: #6b7280;                         /* 부가 정보 텍스트 */
    --theme-card-border: #e9ecef;                       /* 카드 테두리 */
    --theme-border-strong: #999;                        /* 강한 테두리 */
    --theme-tab-default-bg: #f8f9fa;                    /* 탭 기본 배경 */
    --theme-tab-default-text-color: #666;               /* 탭 기본 텍스트 */
    --theme-tab-hover-bg: #e9ecef;                      /* 탭 호버 배경 */
    --theme-hint-text-color: #666;                      /* 힌트/플레이스홀더 */
    --theme-secondary-button-bg: var(--theme-color-accent);         /* 보조 버튼 배경 */
    --theme-secondary-button-hover-bg: rgba(53, 69, 80, 0.9);       /* 보조 버튼 호버 */
    --theme-danger-button-bg: #dc3545;                  /* 위험 버튼 배경 */
    --theme-danger-button-hover-bg: rgba(220, 53, 69, 0.9);         /* 위험 버튼 호버 */
    --theme-delete-button-hover-bg: #fbedee;            /* 삭제 버튼 호버 배경 */
    --theme-cancel-button-bg: #6c757d;                  /* 취소 버튼 배경 */
    --theme-cancel-button-hover-bg: rgba(108, 117, 125, 0.9);       /* 취소 버튼 호버 */
    --theme-modal-bg-dark: rgba(0, 0, 0, 0.95);         /* 모달 어두운 배경 */
    --theme-modal-bg-light: rgba(0, 0, 0, 0.5);         /* 모달 밝은 배경 */

    /* 폰트 변수 */
    --theme-font-normal: 'S-CoreDream-3', sans-serif;
    --theme-font-bold: 'S-CoreDream-4', sans-serif;
    --theme-font-extend: 'S-CoreDream-5', sans-serif;

    /* 글씨 크기 변수 */
    --theme-font-size-caption: 0.6875rem;   /* 11px - 캡션, 힌트 */
    --theme-font-size-mobile: 0.75rem;      /* 12px - 모바일 전용 */
    --theme-font-size-small: 0.75rem;       /* 12px - 작은 정보 */
    --theme-font-size-medium: 0.875rem;     /* 14px - 중간 크기 텍스트 */
    --theme-font-size-body: 0.9375rem;      /* 15px - 본문 텍스트 */
    --theme-font-size-input: 0.9375rem;     /* 15px - 입력 필드 */
    --theme-font-size-button: 0.875rem;     /* 14px - 버튼 텍스트 */
    --theme-font-size-subtitle: 1rem;       /* 16px - 부제목 */
    --theme-font-size-card-title: 1.0625rem; /* 17px - 카드 제목 */
    --theme-font-size-headline-title: 1.0625rem; /* 17px - 헤드라인 제목 */
    --theme-font-size-card-subtitle: 0.8125rem; /* 13px - 카드 부제목 */
    --theme-font-size-title: 1.125rem;      /* 18px - 제목 */
    --theme-font-size-title-large: 1.25rem; /* 20px - 큰 제목 */
    --theme-font-size-heading: 1.375rem;    /* 22px - 헤딩 */
    --theme-font-size-hero: 2.2rem;         /* 35.2px - 슬라이더/히어로 타이틀 */
    --theme-font-size-icon-small: 0.8125rem; /* 13px - 작은 아이콘 */
    --theme-font-size-icon-base: 0.9375rem; /* 15px - 기본 아이콘 */
    --theme-font-size-icon-large: 1.125rem; /* 18px - 큰 아이콘 */
    --theme-font-size-icon-xl: 2rem;        /* 32px - 매우 큰 아이콘 */
    --theme-font-size-icon-2xl: 2.75rem;    /* 44px - 특대 아이콘 */
    --theme-font-size-price: 1.25rem;       /* 20px - 가격 표시 */
    --theme-font-size-edit: 0.625rem;       /* 10px - 에디트 페이지 */

    /* 액션 색상 변수 */
    --theme-action-edit: #666;
    --theme-action-danger: #dc3545;

    /* radius 변수 */
    --theme-input-radius: 4px;
    --theme-card-radius: 8px;
    --theme-button-radius: 4px;
    --theme-info-radius: 4px;

    /* padding 변수 */
    --theme-button-padding: 0.75rem 1.5rem;
    --theme-mobile-content-padding: 1.5rem 1rem;

    /* shadow 변수 */
    --theme-box-shadow: 0 3px 30px rgba(25, 30, 35, 0.02);
    --theme-card-shadow: 0 12px 40px rgba(0,0,0,0.05);

    /* tag 변수 */
    --tag-radius: 16px;
    --tag-padding: 4px 8px;
    --tag-gap: 6px;

    /* required 변수 */
    --required-color: #dc3545;

    /* 글래스모피즘 변수 */
    --glass-bg-color: rgba(250 255 250 / 10%);
    --glass-border-color: rgba(255 255 255 / 30%);
    --glass-border-strong: rgba(255, 255, 255, 0.7);
    --glass-border-hover: rgba(255, 255, 255, 0.4);
    --glass-text-color: #4b5563;
    --glass-inactive-color: rgba(255, 255, 255, 0.8);
    --glass-hover-bg: rgba(255 255 255 / 15%);
    --glass-content-bg: rgb(146 151 179 / 13%);
    --glass-button-inactive: rgb(249 250 251 / 55%);
    --glass-input-bg: rgba(255 255 255 / 30%);
    --glass-scrollbar-bg: rgb(1 2 3 / 40%);
    --glass-primary-color: #408090;
    --glass-primary-bg: rgba(64, 128, 144, 0.7);
    --glass-primary-hover-bg: rgba(64, 128, 144, 0.5);
    --glass-primary-border: rgba(64, 128, 144, 0.3);
    --glass-primary-glow-center: rgba(144, 208, 224, 1);
    --glass-primary-glow-mid: rgba(96, 176, 192, 0.7);
    --glass-primary-glow-outer: rgba(64, 128, 144, 0.5);
    --glass-secondary-bg: transparent;
    --glass-secondary-hover-bg: var(--glass-hover-bg);
    --glass-google-bg: rgba(255, 255, 255, 0.7);
    --glass-google-hover-bg: rgba(255, 255, 255, 0.5);
    --glass-success-color: #3bf083;
    --glass-error-color: #ff6b6b;
    --glass-font-size-label: 0.875rem;
    --glass-font-size-small: 0.8125rem;
    --glass-font-size-button: 0.875rem;
    --glass-font-size-input: 0.875rem;
}

body {
    font-family: var(--theme-font-normal);
    background-color: var(--theme-color-bg);
    overflow-x: hidden; /* 100vw 사용 요소들로 인한 가로 스크롤 방지 */
}

a {
    text-decoration: none;
    color: var(--theme-main-color);
}

#content {
    padding-top: 40px;
    padding-bottom: 80px;
    min-height: calc(100vh - 80px - 200px); /* 헤더, 푸터 높이 제외 */
}

table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
}
