@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Noto+Sans+KR:wght@400;500;600;700;800&display=swap";
:root{--color-primary-50:#ede9fe;--color-primary-100:#f0efff;--color-primary-400:#a55eea;--color-primary-500:#6c5ce7;--color-primary-600:#4834d4;--color-accent-400:#ff6b6b;--color-accent-500:#ff4d6a;--color-gray-50:#fafafa;--color-gray-100:#f5f5f5;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-500:#636e72;--color-gray-600:#4b5563;--color-gray-700:#374151;--color-gray-800:#2d3436;--color-gray-900:#222;--color-success:#00b894;--color-warning:#fbbf24;--color-error:#ff4d6a;--color-info:#3b82f6;--font-sans:"Noto Sans KR", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-2xl:48px;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px #00000012;--shadow-lg:0 2px 12px #0000000f;--shadow-header:0 2px 12px #0000000f;--shadow-hover:0 10px 25px #6c5ce726;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px;--header-height:64px;--max-width:1200px;--gradient-brand:linear-gradient(135deg, #ff6b6b, #a55eea);--gradient-primary:linear-gradient(135deg, #a55eea, #6c5ce7);--gradient-active:linear-gradient(90deg, #a55eea, #6c5ce7);--transition-fast:.15s ease;--transition-normal:.25s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);color:var(--color-gray-900);background-color:#fff;min-height:100vh;line-height:1.6}a{color:inherit;text-decoration:none}ul,ol{list-style:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}img{max-width:100%;display:block}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}img[data-logo-theme=light],body[data-hero-theme=dark] img[data-logo-theme=dark]{display:none!important}body[data-hero-theme=dark] img[data-logo-theme=light]{display:block!important}body[data-hero-theme=dark] header>div>nav a{text-shadow:0 1px 4px #0000004d;color:#ffffffd9!important}body[data-hero-theme=dark] header>div>nav a:hover{color:#fff!important}body[data-hero-theme=dark] header>div>nav a:after{background:#fff!important}body[data-hero-theme=dark] header button[aria-label=알림]{background:#ffffff26!important}body[data-hero-theme=dark] header button[aria-label=알림]:hover{background:#ffffff4d!important}body[data-hero-theme=dark] header button[aria-label=알림] svg{filter:drop-shadow(0 1px 2px #0000004d);color:#fff!important}body[data-hero-theme=dark] header a[aria-label=마이페이지]{background:#ffffff26!important;border-color:#ffffff40!important}body[data-hero-theme=dark] header a[aria-label=마이페이지]:hover{background:#ffffff4d!important;border-color:#fff6!important;box-shadow:0 4px 12px #00000026!important}body[data-hero-theme=dark] header a[aria-label=마이페이지] span{text-shadow:0 1px 4px #0000004d;color:#fff!important}body[data-hero-theme=dark] header button[aria-label=로그아웃]{background:#ffffff26!important}body[data-hero-theme=dark] header button[aria-label=로그아웃] svg{filter:drop-shadow(0 1px 2px #0000004d);color:#fff!important}body[data-hero-theme=dark] header a[href=\/login]{border:1px solid #ffffff4d;background:#fff3!important}body[data-hero-theme=dark] header button[aria-label=메뉴\ 열기]{background:#ffffff26!important;border-color:#fff3!important;box-shadow:0 4px 12px #0000001a!important}body[data-hero-theme=dark] header button[aria-label=메뉴\ 열기]:hover{background:#ffffff40!important;border-color:#fff6!important}body[data-hero-theme=dark] header button[aria-label=메뉴\ 열기] svg{color:#fff!important}body[data-hero-theme=dark] header button[aria-label=메뉴\ 닫기]{background:var(--color-gray-100,#f1f5f9)!important;border-color:var(--color-gray-200,#e2e8f0)!important;-webkit-backdrop-filter:none!important;box-shadow:0 2px 8px #0000000d!important}body[data-hero-theme=dark] header button[aria-label=메뉴\ 닫기]:hover{background:var(--color-gray-200,#e2e8f0)!important}body[data-hero-theme=dark] header button[aria-label=메뉴\ 닫기] svg{color:var(--color-gray-800,#1e293b)!important}@media (max-width:768px){:root{--header-height:56px;--spacing-xl:16px;--spacing-2xl:24px}body{padding-bottom:calc(64px + env(safe-area-inset-bottom))}}
