:root{--primary: #7c6af0;--primary-hover: #6b58e4;--primary-light: #f4f2fd;--primary-border: #d4cdf7;--accent: #0ea5e9;--accent-hover: #0284c7;--accent-light: #e0f6ff;--accent-border: #b3e8fb;--success: #16a34a;--warning: #d97706;--danger: #dc2626;--bg-success: #f0fdf4;--border-success: #86efac;--bg-error: #fef2f2;--border-error: #fecaca;--bg-warning: #fffbeb;--border-warning: #fde68a;--bg-indigo: #eef2ff;--border-indigo: #c7d2fe;--bg-purple: #f5f3ff;--bg-slate: #f1f5f9;--surface: #ffffff;--surface-elevated: #ffffff;--bg: #f8f5f1;--bg-warm: #f3efe8;--sidebar-bg: #18181b;--border: #e9e4db;--border-light: #f2ede6;--text: #1e1b17;--text-secondary: #7c7068;--text-muted: #b3a99e;--shadow-sm: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--shadow: 0 4px 16px rgba(0,0,0,.07);--shadow-md: 0 8px 28px rgba(0,0,0,.09);--shadow-lg: 0 20px 56px rgba(0,0,0,.12);--radius-sm: 8px;--radius: 12px;--radius-lg: 18px;--sidebar-w: 252px;--transition-fast: .12s ease;--transition: .18s ease;--transition-slow: .28s ease}[data-theme=dark]{color-scheme:dark;--primary: #9d8df8;--primary-hover: #8b7cf8;--primary-light: rgba(157,141,248,.14);--primary-border: rgba(157,141,248,.32);--accent: #38bdf8;--accent-hover: #0ea5e9;--accent-light: rgba(56,189,248,.12);--accent-border: rgba(56,189,248,.28);--success: #34d399;--warning: #fbbf24;--danger: #f87171;--bg-success: rgba(52,211,153,.1);--border-success: rgba(52,211,153,.35);--bg-error: rgba(248,113,113,.1);--border-error: rgba(248,113,113,.35);--bg-warning: rgba(251,191,36,.1);--border-warning: rgba(251,191,36,.35);--bg-indigo: rgba(157,141,248,.12);--border-indigo: rgba(157,141,248,.32);--bg-purple: rgba(168,85,247,.1);--bg-slate: rgba(255,255,255,.04);--surface: #18181b;--surface-elevated: #1f1f23;--bg: #09090b;--bg-warm: #111113;--sidebar-bg: #0c0c0f;--border: #27272a;--border-light: #1c1c1f;--text: #fafafa;--text-secondary: #a1a1aa;--text-muted: #71717a;--shadow-sm: 0 1px 3px rgba(0,0,0,.5), inset 0 1px 0 rgba(255,255,255,.04);--shadow: 0 4px 16px rgba(0,0,0,.6);--shadow-md: 0 8px 32px rgba(0,0,0,.7), inset 0 1px 0 rgba(255,255,255,.04);--shadow-lg: 0 24px 64px rgba(0,0,0,.85)}body,main,aside,nav,header,footer,div,section,article,button,input,textarea,select,a{transition:background-color .22s ease,border-color .22s ease,box-shadow .22s ease,color .15s ease}[data-theme=dark] input,[data-theme=dark] textarea,[data-theme=dark] select{background-color:var(--bg-warm)!important;color:var(--text)!important;border-color:var(--border)!important}[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:var(--text-muted)!important;opacity:1}[data-theme=dark] input:focus,[data-theme=dark] textarea:focus,[data-theme=dark] select:focus{border-color:var(--primary)!important;box-shadow:0 0 0 3px #9d8df82e!important;outline:none!important}[data-theme=dark] .card-highlight{box-shadow:var(--shadow-md),inset 0 1px #ffffff0f!important}[data-theme=dark] .shimmer{background:linear-gradient(90deg,#1c1c20 25%,#26262c,#1c1c20 75%);background-size:800px 100%}[data-theme=dark] ::-webkit-scrollbar-thumb{background:#3f3f46}[data-theme=dark] *{scrollbar-color:#3f3f46 transparent}*{margin:0;padding:0;box-sizing:border-box}html{color-scheme:light}[data-theme=dark] html,html:has([data-theme=dark]){color-scheme:dark}body{font-family:Pretendard Variable,Pretendard,-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Noto Sans KR,Inter,sans-serif;line-height:1.6;color:var(--text);background:var(--bg);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-break:keep-all;overflow-wrap:break-word}#root{min-height:100vh}a{text-decoration:none;color:inherit}h1,h2,h3,h4,h5,h6{letter-spacing:-.02em;line-height:1.35}p{line-height:1.7}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#d4ccc2;border-radius:99px}div:hover>.widget-overlay{opacity:1!important;pointer-events:all!important}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUpSm{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{box-shadow:0 0 #e0525266}50%{box-shadow:0 0 0 12px #e0525200}}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.page-anim{animation:slideUpSm .22s cubic-bezier(.16,1,.3,1) both}.anim-scale{animation:scaleIn .18s cubic-bezier(.16,1,.3,1) both}.card{background:var(--surface);border-radius:var(--radius-lg);border:1.5px solid var(--border-light);box-shadow:var(--shadow-sm)}.card-hover{transition:transform var(--transition),box-shadow var(--transition);cursor:pointer}.card-hover:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)!important}.card-hover:active{transform:translateY(-1px)}.gradient-text{background:linear-gradient(135deg,var(--primary) 0%,var(--accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.shimmer{background:linear-gradient(90deg,#f2ede6 25%,#ede8e0,#f2ede6 75%);background-size:800px 100%;animation:shimmer 1.6s infinite;border-radius:var(--radius)}:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:4px}button:focus:not(:focus-visible),input:focus:not(:focus-visible){outline:none}button:not(:disabled):active{transform:scale(.97)!important}::selection{background:#7c6af02e;color:var(--text)}
