@import "https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable-dynamic-subset.min.css";:root{--color-canvas:#fff;--color-surface-subtle:#f7f7f7;--color-divider:#ececec;--color-ink:#242424;--color-muted:#6f6f6f;--color-button:#333;--overlay:#0000004d;--color-ink-hover:#3a3a3a;--color-surface-hover:#f0f0f0;--color-divider-strong:#d8d8d8;--color-disabled-bg:#f7f7f7;--color-disabled-ink:#b0b0b0;--focus-ring:#2424242e;--color-warn:#b45309;--color-warn-bg:#fffbeb;--color-danger:#b91c1c;--color-danger-bg:#fef2f2;--color-ok:#15803d;--color-ok-bg:#f0fdf4;--font-sans:"Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, "Malgun Gothic", sans-serif;--text-body:14px;--leading-body:1.7143;--weight-body:400;--text-heading:28px;--leading-heading:1.3571;--weight-heading:700;--text-heading-xl:44px;--leading-heading-xl:1.2273;--weight-heading-xl:700;--text-utility:12px;--leading-utility:1.5;--weight-utility:400;--radius-button:4px;--radius-pill:100px;--radius-card:10px;--radius-panel:16px;--radius-hero:20px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--color-canvas);color:var(--color-ink);font-family:var(--font-sans);font-size:var(--text-body);line-height:var(--leading-body);font-weight:var(--weight-body);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,h4{font-weight:var(--weight-heading);margin:0}h1{font-size:var(--text-heading-xl);line-height:var(--leading-heading-xl);font-weight:var(--weight-heading-xl)}h2{font-size:var(--text-heading);line-height:var(--leading-heading)}h3{font-size:20px;line-height:1.4}a{color:inherit;text-decoration:none}.shell{min-height:100%;display:flex}.sidebar{border-right:1px solid var(--color-divider);background:var(--color-canvas);width:216px;height:100vh;padding:var(--space-5) 0 var(--space-4);flex-direction:column;flex-shrink:0;display:flex;position:sticky;top:0}.sidebar__brand{padding:0 var(--space-5) var(--space-5);letter-spacing:-.01em;font-size:17px;font-weight:700}.sidebar__section{padding:0 var(--space-5) var(--space-4);border-bottom:1px solid var(--color-divider);margin-bottom:var(--space-3)}.sidebar__nav{padding:0 var(--space-3);flex-direction:column;flex:1;gap:2px;display:flex}.sidebar__foot{padding:var(--space-3) var(--space-3) 0;border-top:1px solid var(--color-divider);flex-direction:column;gap:4px;display:flex}.sidebar__foot .utility{padding:0 var(--space-2)}.side-link{display:block}.side-link__inner{padding:9px var(--space-3);font-size:var(--text-body);color:var(--color-muted);border-radius:6px;align-items:center;gap:10px;transition:background .15s,color .15s;display:flex}.side-link__inner:hover{background:var(--color-surface-subtle);color:var(--color-ink)}.side-link__inner.is-active{background:var(--color-ink);color:#fff;font-weight:600}.side-link__icon{text-align:center;opacity:.85;width:18px;font-size:13px}.content{flex-direction:column;flex:1;min-width:0;display:flex}.content__foot{border-top:1px solid var(--color-divider);padding:var(--space-4) var(--space-6)}.login{min-height:100vh;padding:var(--space-5);background:var(--color-canvas);justify-content:center;align-items:center;display:flex}.login__card{border:1px solid var(--color-divider);border-radius:var(--radius-lg);width:100%;max-width:380px;padding:var(--space-6) var(--space-5);background:#fff}.login__brand{letter-spacing:-.02em;font-size:26px;font-weight:700}.page{max-width:1040px;padding:var(--space-6) var(--space-5) var(--space-7);margin:0 auto}.stack{gap:var(--space-4);flex-direction:column;display:flex}.row{align-items:center;gap:var(--space-2);display:flex}.spread{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.muted{color:var(--color-muted)}.utility{font-size:var(--text-utility);line-height:var(--leading-utility);color:var(--color-muted)}.btn{height:36px;padding:0 var(--space-4);background:var(--color-button);color:#fff;border:1px solid var(--color-button);border-radius:var(--radius-button);font-family:inherit;font-size:var(--text-body);cursor:pointer;justify-content:center;align-items:center;gap:6px;font-weight:600;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.btn:hover:not(:disabled){background:#1f1f1f;border-color:#1f1f1f}.btn:focus-visible{box-shadow:0 0 0 3px var(--focus-ring);outline:none}.btn:disabled{background:var(--color-disabled-bg);border-color:var(--color-divider);color:var(--color-disabled-ink);cursor:not-allowed}.btn--ghost{color:var(--color-ink);border-color:var(--color-divider);background:0 0}.btn--ghost:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-divider-strong)}.btn--quiet{color:var(--color-muted);background:0 0;border-color:#0000}.btn--quiet:hover:not(:disabled){background:var(--color-surface-subtle);color:var(--color-ink)}.btn--sm{height:28px;padding:0 var(--space-3);font-size:var(--text-utility)}.btn--danger{color:var(--color-danger);border-color:var(--color-divider);background:0 0}.btn--danger:hover:not(:disabled){background:var(--color-danger-bg)}.card{background:var(--color-canvas);border:1px solid var(--color-divider);border-radius:var(--radius-card);padding:var(--space-4) var(--space-5)}.panel{background:var(--color-surface-subtle);border-radius:var(--radius-panel);padding:var(--space-5)}.input,.textarea,.select{background:var(--color-canvas);width:100%;color:var(--color-ink);border:1px solid var(--color-divider);border-radius:var(--radius-button);font-family:inherit;font-size:var(--text-body);line-height:var(--leading-body);padding:8px 12px;transition:border-color .15s,box-shadow .15s}.input:focus,.textarea:focus,.select:focus{border-color:var(--color-ink);box-shadow:0 0 0 3px var(--focus-ring);outline:none}.input::placeholder,.textarea::placeholder{color:var(--color-disabled-ink)}.textarea{resize:vertical;min-height:96px}.label{font-size:var(--text-utility);color:var(--color-muted);margin-bottom:var(--space-1);display:block}.tabs{gap:var(--space-1);border-bottom:1px solid var(--color-divider);display:flex}.tab{padding:8px var(--space-4);font-family:inherit;font-size:var(--text-body);color:var(--color-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;transition:color .15s,border-color .15s}.tab:hover{color:var(--color-ink)}.tab[aria-selected=true]{color:var(--color-ink);border-bottom-color:var(--color-ink);font-weight:700}.chip{background:var(--color-canvas);border:1px solid var(--color-divider);border-radius:var(--radius-pill);font-family:inherit;font-size:var(--text-utility);color:var(--color-muted);cursor:pointer;align-items:center;gap:4px;padding:5px 12px;transition:all .15s;display:inline-flex}.chip:hover{border-color:var(--color-divider-strong);color:var(--color-ink)}.chip[aria-pressed=true]{background:var(--color-ink);border-color:var(--color-ink);color:#fff}.chip--block{justify-content:center;width:100%;padding:7px 12px;display:flex}.badge{border-radius:var(--radius-pill);font-size:var(--text-utility);line-height:var(--leading-utility);background:var(--color-surface-subtle);color:var(--color-muted);align-items:center;gap:4px;padding:2px 10px;display:inline-flex}.badge--warn{background:var(--color-warn-bg);color:var(--color-warn)}.badge--danger{background:var(--color-danger-bg);color:var(--color-danger)}.badge--ok{background:var(--color-ok-bg);color:var(--color-ok)}.table{border-collapse:collapse;width:100%;font-size:var(--text-body)}.table th,.table td{padding:10px var(--space-3);text-align:left;border-bottom:1px solid var(--color-divider)}.table th{font-size:var(--text-utility);color:var(--color-muted);font-weight:600}.overlay{z-index:1000;background:var(--overlay);padding:var(--space-4);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--color-canvas);border-radius:var(--radius-panel);padding:var(--space-5);width:min(94vw,860px);max-height:88vh;overflow-y:auto}@media (width<=900px){.shell{flex-direction:column}.sidebar{border-right:none;border-bottom:1px solid var(--color-divider);width:100%;height:auto;padding:var(--space-4) 0;position:static}.sidebar__nav{flex-flow:wrap}.sidebar__foot{border-top:none;flex-flow:wrap;align-items:center}}@media (width<=768px){h1{font-size:32px}h2{font-size:22px}.page{padding:var(--space-5) var(--space-4) var(--space-6)}}
