:root{font-family:Pretendard Variable,Pretendard,Noto Sans KR,Apple SD Gothic Neo,sans-serif;--text: #0b1220;--muted: #475569;--surface: rgba(255, 255, 255, .86);--surface-2: rgba(255, 255, 255, .94);--border: rgba(148, 163, 184, .35);--shadow: 0 24px 48px rgba(15, 23, 42, .08);--primary: #2563eb;--primary-2: #1d4ed8;color:var(--text);background:radial-gradient(circle at 20% 10%,rgba(255,237,213,.92) 0,transparent 40%),radial-gradient(circle at 80% 0%,rgba(220,252,231,.92) 0,transparent 32%),radial-gradient(circle at 55% 70%,rgba(219,234,254,.85) 0,transparent 45%),linear-gradient(180deg,#f8fafc,#eef2ff)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:transparent;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2{margin:0 0 .6rem;letter-spacing:-.02em}h1{font-size:1.65rem}h2{font-size:1.2rem}.nav{display:flex;justify-content:space-between;gap:1rem;padding:.95rem 1.2rem;margin:1rem auto 0;max-width:1080px;background:var(--surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:16px;position:sticky;top:10px;z-index:10}.nav a{color:#27364d;text-decoration:none;margin-right:.9rem;font-weight:600;padding:.35rem .45rem;border-radius:10px;transition:background .12s ease,color .12s ease}.nav a:hover{background:#2563eb14;color:#0f172a}.nav .brand{font-weight:800;color:#0f172a;margin-right:.7rem;display:inline-flex;align-items:center;gap:.55rem;padding:.35rem .6rem}.brand-mark{width:28px;height:28px;display:inline-grid;place-items:center;border-radius:10px;background:linear-gradient(135deg,#0f172a,var(--primary));color:#fff;font-size:.95rem;letter-spacing:-.06em}.brand-text{font-weight:800}.page{max-width:1080px;margin:1.1rem auto;padding:0 1.1rem 2rem}.card{background:var(--surface-2);border-radius:16px;border:1px solid var(--border);padding:1.05rem;margin-bottom:1rem;display:grid;gap:.7rem;box-shadow:0 8px 24px #0f172a0a}.auth-page{min-height:82vh;display:grid;place-items:center}.hero-card{width:min(100%,500px);background:var(--surface);border:1px solid var(--border);border-radius:22px;padding:1.4rem;box-shadow:var(--shadow);animation:rise .32s ease-out}.eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--primary)}.row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;padding:.5rem 0;border-bottom:1px solid #e5e7eb}.tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}button,input{padding:.62rem .78rem;border-radius:10px;border:1px solid rgba(148,163,184,.45);font-size:.95rem}button{background:linear-gradient(135deg,#0f172a,#1e293b);color:#fff;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,opacity .12s ease}button.active{background:linear-gradient(135deg,var(--primary-2),var(--primary))}button:hover{transform:translateY(-1px);box-shadow:0 8px 18px #0f172a2e}.btn-secondary{background:#ffffffb8;color:#0f172a}.btn-secondary:hover{box-shadow:0 8px 18px #0f172a1f}.danger{background:linear-gradient(135deg,#b91c1c,#dc2626)}.error{color:#dc2626}input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #3b82f62b}.ok{color:#166534;font-weight:600}.muted{color:var(--muted)}@keyframes rise{0%{transform:translateY(8px);opacity:.1}to{transform:translateY(0);opacity:1}}@media(max-width:720px){.nav{top:0;margin-top:0;border-radius:0;border-left:0;border-right:0}.row{flex-direction:column;align-items:stretch}}
