:root{--brand-ink:#0a0a0b;--brand-graphite:#16181c;--brand-primary:#0a0a0b;--brand-steel:#6e7378;--brand-silver:#c9cdd2;--brand-accent:#0a0a0b;--brand-bg:#fff;--brand-surface:#fff;--brand-surface-2:#f5f6f7;--brand-border:#e4e5e8;--brand-on-dark:#fff;--brand-muted:#6e7378;--radius:14px;--radius-sm:8px;--radius-pill:999px;--maxw:1120px;--metal-dark:linear-gradient(145deg,#0a0a0b,#1b1e23 55%,#0e1014);--metal-light:linear-gradient(145deg,#fff,#edeef0);--success:#0f6e56;--success-strong:#0b5743;--danger:#b3261e;--warning:#b4232a;--success-bg:#e7f3ef;--danger-bg:#fbeae9;--info:#185fa5;--info-bg:#e8eff7;--font-sans:ui-sans-serif,system-ui,-apple-system,"Apple SD Gothic Neo","Pretendard",sans-serif;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-8:48px;--text-xs:12px;--text-sm:14px;--text-base:16px;--text-lg:18px;--text-xl:22px;--text-2xl:28px;--text-3xl:36px;--shadow-sm:0 1px 2px rgba(10,10,11,.06);--shadow-md:0 4px 12px rgba(10,10,11,.08);--shadow-lg:0 12px 32px rgba(10,10,11,.12);--ease-out:cubic-bezier(.2,.7,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--dur-fast:.15s;--dur-base:.25s;--dur-slow:.4s}*{box-sizing:border-box}html{scroll-behavior:smooth}body,html{margin:0;padding:0}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.reveal{animation:fadeUp .6s cubic-bezier(.2,.7,.2,1) both}.reveal-2{animation:fadeUp .6s cubic-bezier(.2,.7,.2,1) .12s both}.reveal-3{animation:fadeUp .6s cubic-bezier(.2,.7,.2,1) .24s both}@media (prefers-reduced-motion:reduce){.reveal,.reveal-2,.reveal-3{animation:none}html{scroll-behavior:auto}}body{background:var(--brand-bg);color:var(--brand-ink);font-family:var(--font-sans);line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}h1,h2,h3{letter-spacing:-.02em}h1{font-size:30px;margin:8px 0 14px}h1,h2{font-weight:700}h2{font-size:22px;margin:4px 0 10px}h3{font-size:16px;font-weight:600}.container{max-width:var(--maxw);margin:0 auto;padding:0 22px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--brand-ink);color:#fff;padding:13px 26px;border-radius:var(--radius-pill);border:0;cursor:pointer;font-weight:600;font-size:15px;line-height:1;letter-spacing:.01em;transition:transform .04s ease,opacity .15s ease}.btn:hover{opacity:.88}.btn:active{transform:scale(.985)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-accent{background:var(--brand-ink)}.btn-outline{background:transparent;color:var(--brand-ink);border:1px solid var(--brand-border)}.btn-outline:hover{border-color:var(--brand-ink);opacity:1}.card{background:var(--brand-surface);border:1px solid var(--brand-border);border-radius:var(--radius);padding:18px;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.card:hover{transform:translateY(-2px);border-color:#cfd2d6;box-shadow:0 6px 22px rgba(10,10,11,.06)}.tile{background:var(--brand-surface-2);border:1px solid var(--brand-border);border-radius:var(--radius);padding:22px 20px;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.tile:hover{transform:translateY(-2px);border-color:#cfd2d6;box-shadow:0 6px 22px rgba(10,10,11,.06)}.badge{background:var(--brand-ink);color:#fff;border-radius:var(--radius-pill);padding:3px 11px;font-weight:600}.badge,.chip{display:inline-flex;align-items:center;gap:4px;font-size:12px}.chip{background:hsla(0,0%,100%,.08);color:var(--brand-silver);border:1px solid hsla(0,0%,100%,.15);border-radius:var(--radius-pill);padding:4px 11px}input,select{font:inherit;padding:9px 11px;border:1px solid var(--brand-border);border-radius:var(--radius-sm);background:#fff;color:var(--brand-ink)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand-ink);box-shadow:0 0 0 3px rgba(10,10,11,.12)}.btn:focus-visible,a:focus-visible{outline:2px solid var(--brand-ink);outline-offset:2px;border-radius:var(--radius-sm)}header a:focus-visible{outline-color:var(--brand-on-dark)}.auto-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-gap:16px;gap:16px}@media (max-width:640px){.grid{grid-template-columns:1fr!important}.auto-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}h1{font-size:24px}h2{font-size:19px}h3{font-size:15px}.container{padding:0 16px}.btn{padding:13px 22px}.btn,input,select,textarea{min-height:44px}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInBase{0%{opacity:0}to{opacity:1}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes pulseSoft{0%,to{opacity:1}50%{opacity:.6}}.fade-in-up{animation:fadeInUp .6s cubic-bezier(.2,.7,.2,1) both}.fade-in{animation:fadeInBase .6s ease both}.hover-lift{transition:transform .2s ease,box-shadow .2s ease}.hover-lift:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(10,10,11,.08)}.shimmer,.skeleton{background:linear-gradient(90deg,#edeef0 25%,#f5f6f7 37%,#edeef0 63%);background-size:200% 100%;animation:shimmer 1.4s ease-in-out infinite;border-radius:var(--radius-sm)}.float{animation:float 3.5s ease-in-out infinite}.pulse-soft{animation:pulseSoft 2s ease-in-out infinite}.delay-1{animation-delay:.08s}.delay-2{animation-delay:.16s}.delay-3{animation-delay:.24s}.delay-4{animation-delay:.32s}@media (prefers-reduced-motion:reduce){.fade-in,.fade-in-up,.float,.pulse-soft,.shimmer,.skeleton{animation:none}.hover-lift{transition:none}.hover-lift:hover{transform:none}}.btn:focus-visible,a.btn:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(10,10,11,.25)}header .btn:focus-visible,header a:focus-visible,header button:focus-visible{outline:none;box-shadow:0 0 0 3px hsla(0,0%,100%,.55)}.btn:disabled,.btn[aria-disabled=true],a.btn[aria-disabled=true],button:disabled,button[aria-disabled=true]{opacity:.55;cursor:not-allowed;pointer-events:none}.btn-sm{padding:6px 14px;font-size:13px;min-height:32px}.table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-scroll>table{min-width:max-content}.container-responsive{width:100%;margin:0 auto;padding-left:var(--space-4);padding-right:var(--space-4)}@media (min-width:768px){.container-responsive{max-width:720px;padding-left:var(--space-5);padding-right:var(--space-5)}}@media (min-width:1024px){.container-responsive{max-width:960px}}@media (min-width:1440px){.container-responsive{max-width:1200px}}.grid-responsive{display:grid;grid-template-columns:1fr;grid-gap:var(--space-4);gap:var(--space-4)}@media (min-width:768px){.grid-responsive{grid-template-columns:repeat(2,1fr);gap:var(--space-5)}}@media (min-width:1024px){.grid-responsive{grid-template-columns:repeat(3,1fr)}}@media (min-width:1440px){.grid-responsive{grid-template-columns:repeat(4,1fr)}}@media (max-width:767px){.hide-mobile{display:none!important}}@media (min-width:768px){.hide-desktop{display:none!important}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--brand-ink:#ecedef;--brand-graphite:#0a0a0b;--brand-primary:#ecedef;--brand-steel:#9aa0a6;--brand-silver:#c9cdd2;--brand-accent:#ecedef;--brand-bg:#0e0f11;--brand-surface:#16181c;--brand-surface-2:#1e2126;--brand-border:#2a2d33;--brand-on-dark:#fff;--brand-muted:#9aa0a6;--metal-light:linear-gradient(145deg,#1e2126,#16181c);--success:#34c99a;--success-strong:#28a982;--danger:#f0625a;--warning:#f0625a;--success-bg:#122a24;--danger-bg:#2c1614;--info:#58a6e8;--info-bg:#16252f;--shadow-sm:0 1px 2px rgba(0,0,0,.5);--shadow-md:0 4px 12px rgba(0,0,0,.55);--shadow-lg:0 12px 32px rgba(0,0,0,.6)}}[data-theme=dark]{color-scheme:dark;--brand-ink:#ecedef;--brand-graphite:#0a0a0b;--brand-primary:#ecedef;--brand-steel:#9aa0a6;--brand-silver:#c9cdd2;--brand-accent:#ecedef;--brand-bg:#0e0f11;--brand-surface:#16181c;--brand-surface-2:#1e2126;--brand-border:#2a2d33;--brand-on-dark:#fff;--brand-muted:#9aa0a6;--metal-light:linear-gradient(145deg,#1e2126,#16181c);--success:#34c99a;--success-strong:#28a982;--danger:#f0625a;--warning:#f0625a;--success-bg:#122a24;--danger-bg:#2c1614;--info:#58a6e8;--info-bg:#16252f;--shadow-sm:0 1px 2px rgba(0,0,0,.5);--shadow-md:0 4px 12px rgba(0,0,0,.55);--shadow-lg:0 12px 32px rgba(0,0,0,.6)}