/* ============================================================
   블루아일랜드 전역 테마 및 공통 리셋
   theme.css
   ============================================================ */

:root {
    /* --- Core Colors --- */
    --color-lake: #2E6B8A;
    --color-earth: #8B6F47;
    --color-mist: #F2F0EB;
    --color-forest: #1A3A2A;

    /* --- Extended Colors --- */
    --color-lake-light: #3D8AAD;
    --color-forest-light: #254D39;
    --color-text-main: #1C2B22;
    --color-text-sub: #5A6E63;
    --color-border: #D8D4CE;
    --color-white: #FFFFFF;

    /* --- Fonts --- */
    --font-sans: 'Noto Sans KR', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    
    /* --- Shared Metrics --- */
    --radius-base: 8px;
    --radius-card: 16px;
    --transition-base: 0.22s ease;
    --shadow-base: 0 4px 12px rgba(0, 0, 0, 0.1);
}

/* --- Global Reset & Base Interaction --- */
*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    user-select: none;
    -webkit-user-select: none;
    cursor: default;
}

html,
body {
    height: 100%;
    min-height: 100vh;
}

body {
    font-family: var(--font-sans);
    line-height: 1.6;
}

/* --- Standard Interaction Policies --- */
a, button, [role="button"], label, summary {
    cursor: pointer !important;
}

input, textarea, select, [contenteditable] {
    user-select: auto !important;
    -webkit-user-select: auto !important;
    cursor: text !important;
}

input[type="range"], input[type="checkbox"], input[type="radio"], input[type="file"] {
    cursor: pointer !important;
}

/* --- Common Animations --- */
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes fadeInUp {
    from { opacity: 0; transform: translateY(18px); }
    to { opacity: 1; transform: translateY(0); }
}
