/* ⚠️ 생성 산출물 — 손편집 금지. 입력을 고친 뒤 아래 명령으로 재생성한다. */
/* 생성기: pwsh -NoProfile -File tools/generators/build-admin-css.ps1 */
/* 입력 지문: sha256=c41c616e1f85c3b854d1d15c7180b88f77337c26ab2149396872ffd8a8ae9617 */

/* == adm-tokens:start == */
:root {
    --adm-accent: #5a3fd6;
    --adm-accent-vivid: #6c3bf0;
    --adm-fg-strong: #221f36;
    --adm-fg-default: #6f6b86;
    --adm-fg-muted: #9a96ad;
    --adm-bg-surface: #ffffff;
    --adm-bg-subtle: #f0eef5;
    --adm-border-subtle: #ececf3;
    --adm-border-default: #e0dcec;
    --adm-border-strong: #ddd9e8;
    --adm-danger: #c0271c;
    --adm-page-bg: #f4f3f8;
    --adm-shell-ink: #211c37;
    --adm-on-ink: #ffffff;
    --adm-nav-fg: #a9a2c4;
    --adm-nav-fg-muted: #8b85a8;
    --adm-legend-fg: #a9b8c9;
    --adm-accent-soft: #efeafc;
    --adm-accent-border: #d8ccf5;
    --adm-warn: #f0b429;
    --adm-divider-on-ink: rgba(255,255,255,.08);
    --adm-gradient-accent: linear-gradient(100deg,#6c3bf0,#5a3fd6);
    --adm-gradient-brand: linear-gradient(145deg,#7b6ef0,#5a3fd6);
    --adm-gradient-shell: radial-gradient(90% 40% at 20% 0%,#332a52 0%,rgba(51,42,82,0) 60%);
    --adm-shadow-surface: 0 2px 10px rgba(30,22,70,.04);
    --adm-shadow-accent: 0 6px 14px rgba(108,59,240,.28);
    --adm-shadow-brand: 0 8px 20px rgba(108,59,240,.45);
    --adm-fg-label: #57536e;
    --adm-table-head-ink: #2b2447;
    --adm-row-hover: #f6f8fb;
    --adm-danger-border: #eccfcd;
    --adm-note-info-fg: #4a4468;
    --adm-note-ok-fg: #15803d;
    --adm-note-ok-bg: #e0f5e7;
    --adm-note-warn-fg: #8a5a06;
    --adm-note-warn-bg: #fdf0d3;
    --adm-note-warn-border: #f5dfa8;
    --adm-note-risk-fg: #a02017;
    --adm-note-risk-bg: #fbe5e3;
    --adm-note-risk-border: #f2cbc7;
    --adm-note-off-fg: #8a86a0;
}
/* == adm-tokens:end == */

@layer theme, base, components, utilities;
@layer utilities;
html, body {
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  background: var(--adm-page-bg);
}
a, .btn-link {
  color: var(--adm-accent);
}
.btn-primary {
  color: #fff;
  background-color: var(--adm-accent);
  border-color: var(--adm-accent-vivid);
}
.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem var(--adm-accent-vivid);
}
.content {
  padding: 24px 28px 60px;
}
h1:focus {
  outline: none;
}
.valid.modified:not([type=checkbox]) {
  outline: 1px solid #26b050;
}
.invalid {
  outline: 1px solid var(--adm-danger);
}
.validation-message {
  color: var(--adm-danger);
}
.blazor-error-boundary {
  background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, var(--adm-danger);
  padding: 1rem 1rem 1rem 3.7rem;
  color: white;
}
.blazor-error-boundary::after {
  content: "An error has occurred.";
}
.darker-border-checkbox.form-check-input {
  border-color: var(--adm-fg-default);
}
.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
  color: var(--bs-secondary-color);
  text-align: end;
}
.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
  text-align: start;
}
.adm-surface {
  background: var(--adm-bg-surface);
  border: 1px solid var(--adm-border-subtle);
  border-radius: 16px;
  box-shadow: var(--adm-shadow-surface);
}
.adm-card {
  display: block;
  height: 100%;
  padding: 18px 20px;
  color: var(--adm-fg-strong);
  text-decoration: none;
}
.adm-card:hover {
  border-color: var(--adm-accent-border);
}
.adm-card__title {
  margin: 0;
  font-size: 15px;
  font-weight: 800;
  color: var(--adm-fg-strong);
}
.adm-card__desc {
  margin-top: 4px;
  font-size: 13px;
  color: var(--adm-fg-default);
}
.adm-page-head {
  margin-bottom: 16px;
}
.adm-page-title {
  margin: 0;
  font-size: 19px;
  font-weight: 800;
  letter-spacing: -.01em;
  color: var(--adm-fg-strong);
}
.adm-page-desc {
  margin-top: 4px;
  font-size: 13px;
  color: var(--adm-fg-default);
}
.adm-btn-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 38px;
  padding: 0 22px;
  border: none;
  border-radius: 10px;
  background: var(--adm-gradient-accent);
  box-shadow: var(--adm-shadow-accent);
  color: var(--adm-on-ink);
  font-weight: 700;
  font-size: 13.5px;
}
.adm-btn-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 36px;
  padding: 0 16px;
  border: 1px solid var(--adm-accent-border);
  border-radius: 10px;
  background: var(--adm-bg-surface);
  color: var(--adm-accent);
  font-weight: 700;
  font-size: 13px;
  text-decoration: none;
}
.adm-badge {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 8px;
  background: var(--adm-accent-soft);
  color: var(--adm-accent);
  font-weight: 700;
  font-size: 11.5px;
  white-space: nowrap;
}
.adm-field {
  height: 38px;
  padding: 0 12px;
  border: 1px solid var(--adm-border-strong);
  border-radius: 10px;
  background: var(--adm-bg-surface);
  font-size: 13.5px;
}
.adm-divider {
  padding: 11px 14px;
  border-top: 1px solid var(--adm-bg-subtle);
  font-size: 13px;
}
.adm-brand {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 20px 18px 16px;
  border-bottom: 1px solid var(--adm-divider-on-ink);
}
.adm-brand__mark {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: none;
  width: 34px;
  height: 34px;
  border-radius: 11px;
  background: var(--adm-gradient-brand);
  box-shadow: var(--adm-shadow-brand);
  color: var(--adm-on-ink);
  font-weight: 800;
  font-size: 13px;
}
.adm-brand__name {
  font-weight: 800;
  font-size: 14.5px;
  color: var(--adm-on-ink);
}
.adm-brand__sub {
  margin-top: 2px;
  font-weight: 500;
  font-size: 11px;
  color: var(--adm-nav-fg-muted);
}
.adm-topbar__label {
  font-weight: 600;
  font-size: 12.5px;
  color: var(--adm-fg-muted);
}
.adm-topbar__end {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-left: auto;
}
.adm-navsec {
  padding: 6px 0;
}
.adm-navsec__label {
  padding: 12px 16px 6px;
  color: var(--adm-nav-fg-muted);
  font-weight: 800;
  font-size: 11.5px;
  letter-spacing: .04em;
}
.adm-navsec__empty {
  padding: 2px 16px 8px;
  color: var(--adm-nav-fg-muted);
  font-size: 11px;
}
.adm-dot-warn {
  display: inline-block;
  flex: none;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--adm-warn);
}
.adm-legend {
  padding: 14px 18px;
  border-top: 1px solid var(--adm-divider-on-ink);
  color: var(--adm-nav-fg-muted);
  font-size: 11px;
  line-height: 1.9;
}
.adm-legend__title {
  margin-bottom: 2px;
  color: var(--adm-legend-fg);
  font-weight: 700;
}
.adm-navsec--mockup {
  border-left: 2px solid var(--adm-warn);
}
.adm-section {
  margin-bottom: 16px;
  overflow: hidden;
}
.adm-section h2 {
  margin: 0;
  padding: 16px 22px;
  border-bottom: 1px solid var(--adm-border-subtle);
  font-weight: 800;
  font-size: 15px;
  color: var(--adm-fg-strong);
}
.adm-section__body {
  padding: 16px 22px;
}
.adm-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}
.adm-hint {
  margin: 0;
  padding: 16px 22px;
  font-size: 13px;
  color: var(--adm-fg-default);
}
.adm-tablewrap {
  overflow-x: auto;
}
.adm-table {
  width: 100%;
  border-collapse: collapse;
}
.adm-table thead {
  background: var(--adm-table-head-ink);
  text-align: left;
}
.adm-table th {
  padding: 11px 14px;
  font-size: 12.5px;
  font-weight: 700;
  color: var(--adm-on-ink);
  white-space: nowrap;
}
.adm-table td {
  padding: 11px 14px;
  border-top: 1px solid var(--adm-bg-subtle);
  font-size: 13px;
}
.adm-table tbody tr:hover {
  background: var(--adm-row-hover);
}
.adm-btn-row {
  display: inline-flex;
  align-items: center;
  height: 28px;
  padding: 0 12px;
  border-radius: 8px;
  font-weight: 700;
  font-size: 12px;
  white-space: nowrap;
  border: 1px solid transparent;
  cursor: pointer;
}
.adm-btn-row--solid {
  color: var(--adm-on-ink);
  background: var(--adm-accent);
  border-color: var(--adm-accent);
}
.adm-btn-row--edit {
  color: var(--adm-accent);
  background: var(--adm-bg-surface);
  border-color: var(--adm-accent-border);
}
.adm-btn-row--del {
  color: var(--adm-danger);
  background: var(--adm-bg-surface);
  border-color: var(--adm-danger-border);
}
.adm-btn-row--gray {
  color: var(--adm-fg-default);
  background: var(--adm-bg-surface);
  border-color: var(--adm-border-default);
}
.adm-field--inline {
  width: 220px;
}
.adm-field--block {
  width: 100%;
  max-width: 420px;
}
.adm-textarea {
  width: 100%;
  max-width: 560px;
  height: 96px;
  border: 1px solid var(--adm-border-strong);
  border-radius: 10px;
  padding: 10px 12px;
  background: var(--adm-bg-surface);
  font-size: 13.5px;
  resize: vertical;
}
.adm-label {
  display: block;
  padding-top: 8px;
  font-weight: 700;
  font-size: 13px;
  color: var(--adm-fg-label);
}
.adm-formrow {
  display: grid;
  grid-template-columns: 200px 1fr;
  gap: 16px;
  padding: 13px 0;
  border-bottom: 1px solid var(--adm-bg-subtle);
}
.adm-alert {
  display: flex;
  gap: 9px;
  align-items: flex-start;
}
.alert {
  padding: 10px 14px;
  border-radius: 11px;
  border: 1px solid transparent;
  font-size: 12.5px;
  line-height: 1.65;
  font-weight: 500;
  margin-bottom: 12px;
}
.alert-info {
  color: var(--adm-note-info-fg);
  background: var(--adm-bg-subtle);
  border-color: var(--adm-border-default);
}
.alert-success {
  color: var(--adm-note-ok-fg);
  background: var(--adm-note-ok-bg);
  border-color: var(--adm-note-ok-bg);
}
.alert-warning {
  color: var(--adm-note-warn-fg);
  background: var(--adm-note-warn-bg);
  border-color: var(--adm-note-warn-border);
}
.alert-danger {
  color: var(--adm-note-risk-fg);
  background: var(--adm-note-risk-bg);
  border-color: var(--adm-note-risk-border);
}
.alert-secondary {
  color: var(--adm-note-off-fg);
  background: var(--adm-bg-subtle);
  border-color: var(--adm-border-default);
}
.adm-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: flex-end;
  margin-bottom: 12px;
  border-bottom: 1px solid var(--adm-border-subtle);
}
.adm-tabs__group {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  align-items: center;
}
.adm-tabs__group--mockup {
  padding-left: 10px;
  border-left: 2px solid var(--adm-warn);
}
.adm-tabs__label {
  margin-right: 6px;
  font-size: 11.5px;
  font-weight: 800;
  color: var(--adm-fg-muted);
}
.adm-tabs__item {
  height: 40px;
  padding: 0 14px;
  border: none;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  background: transparent;
  color: var(--adm-fg-default);
  font-weight: 700;
  font-size: 13px;
  cursor: pointer;
}
.adm-tabs__item--active {
  color: var(--adm-accent);
  border-bottom-color: var(--adm-accent);
}
.adm-searchrow {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 12px;
}
.adm-searchrow__label {
  display: block;
  margin-bottom: 6px;
  font-weight: 700;
  font-size: 12px;
  color: var(--adm-fg-default);
}
.adm-section__foot {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  padding: 14px 22px;
  border-top: 1px solid var(--adm-bg-subtle);
}
.adm-section__foot .alert {
  flex: 1 1 auto;
  margin: 0;
}
.adm-step {
  border-top: 1px solid var(--adm-border-subtle);
}
.adm-step:first-of-type {
  border-top: none;
}
.adm-subhead {
  margin: 0;
  padding: 16px 22px 8px;
  font-weight: 800;
  font-size: 13.5px;
  color: var(--adm-fg-strong);
}
.adm-kv {
  padding: 8px 22px;
}
.adm-kv__row {
  display: grid;
  grid-template-columns: 200px 1fr;
  gap: 14px;
  align-items: center;
  padding: 7px 0;
  border-bottom: 1px solid var(--adm-bg-subtle);
}
.adm-kv__label {
  font-weight: 700;
  font-size: 12.5px;
  color: var(--adm-fg-default);
}
.adm-kv__value {
  display: flex;
  align-items: center;
  min-height: 34px;
  padding: 6px 12px;
  border: 1px solid var(--adm-border-subtle);
  border-radius: 8px;
  background: var(--adm-page-bg);
  color: var(--adm-fg-label);
  font-size: 13px;
  overflow-wrap: anywhere;
}
.adm-inline-group {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
.adm-btn-danger {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 36px;
  padding: 0 18px;
  border: 1px solid var(--adm-danger);
  border-radius: 10px;
  background: var(--adm-danger);
  color: var(--adm-on-ink);
  font-weight: 700;
  font-size: 13px;
  cursor: pointer;
}
.adm-navsec--cm {
  border-top: 1px solid var(--adm-divider-on-ink);
}
.adm-navsub {
  padding: 10px 16px 2px;
  color: var(--adm-nav-fg-muted);
  font-weight: 800;
  font-size: 11px;
  letter-spacing: .04em;
}
.adm-navcat {
  margin: 0;
}
.adm-navcat__head {
  padding: 6px 16px 6px 20px;
  color: var(--adm-nav-fg);
  font-weight: 700;
  font-size: 12.5px;
  cursor: pointer;
}
.adm-navcat--empty .adm-navcat__head {
  cursor: default;
  color: var(--adm-nav-fg-muted);
  font-weight: 600;
}
.adm-navcat__body {
  padding-bottom: 4px;
}
.adm-navsec .adm-navcat__body .nav-item:first-of-type {
  padding-top: 0;
}
.adm-navsec .adm-navcat__body .nav-item:last-of-type {
  padding-bottom: 0.25rem;
}
.adm-navmark {
  margin-left: auto;
  padding: 0 6px;
  border: 1px solid var(--adm-warn);
  border-radius: 8px;
  color: var(--adm-warn);
  font-weight: 700;
  font-size: 10.5px;
  line-height: 1.6;
}
.adm-mk-sample {
  display: inline-flex;
  align-items: center;
  margin: 14px 22px 10px;
  padding: 2px 10px;
  border: 1px solid var(--adm-accent-border);
  border-radius: 999px;
  background: var(--adm-accent-soft);
  color: var(--adm-accent);
  font-weight: 700;
  font-size: 11.5px;
}
.adm-mk-notes {
  margin-bottom: 16px;
}
.adm-mk-notes__label {
  margin-bottom: 6px;
  font-weight: 800;
  font-size: 11.5px;
  color: var(--adm-fg-muted);
}
.adm-mk-tone {
  display: inline-block;
  padding: 3px 10px;
  border-radius: 999px;
  font-weight: 700;
  font-size: 12px;
}
.adm-mk-tone--ok {
  color: var(--adm-note-ok-fg);
  background: var(--adm-note-ok-bg);
}
.adm-mk-tone--warn {
  color: var(--adm-note-warn-fg);
  background: var(--adm-note-warn-bg);
}
.adm-mk-tone--off {
  color: var(--adm-note-off-fg);
  background: var(--adm-bg-subtle);
}
.adm-mk-tone--risk {
  color: var(--adm-danger);
  background: var(--adm-note-risk-bg);
}
.adm-mk-tone--blue {
  color: var(--adm-accent);
  background: var(--adm-accent-soft);
}
.adm-mk-fbadge {
  display: inline-block;
  margin-bottom: 6px;
  padding: 1px 8px;
  border-radius: 6px;
  font-weight: 700;
  font-size: 11px;
}
.adm-mk-fbadge--warn {
  color: var(--adm-note-warn-fg);
  background: var(--adm-note-warn-bg);
}
.adm-mk-fbadge--off {
  color: var(--adm-note-off-fg);
  background: var(--adm-bg-subtle);
}
.adm-mk-fbadge--risk {
  color: var(--adm-danger);
  background: var(--adm-note-risk-bg);
}
.adm-mk-req {
  margin-left: 3px;
  color: var(--adm-danger);
}
.adm-mk-fnote {
  margin: 6px 0 0;
  font-size: 12px;
  color: var(--adm-fg-muted);
}
.adm-mk-field--off {
  opacity: .55;
}
.adm-mk-file {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  color: var(--adm-fg-muted);
}
.adm-mk-toggle {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  color: var(--adm-fg-default);
}
.adm-mk-toggle__track {
  display: inline-block;
  width: 34px;
  height: 20px;
  border-radius: 999px;
  background: var(--adm-border-default);
}
.adm-mk-checklist {
  max-width: 560px;
  padding: 10px 12px;
  border: 1px solid var(--adm-border-strong);
  border-radius: 10px;
  background: var(--adm-bg-surface);
  font-size: 13px;
  color: var(--adm-fg-default);
}
.adm-mk-tabs {
  padding: 0 22px 16px;
}
.adm-mk-tab {
  border-bottom: 1px solid var(--adm-border-subtle);
}
.adm-mk-tab__head {
  padding: 12px 4px;
  font-weight: 700;
  font-size: 13px;
  color: var(--adm-fg-default);
  cursor: pointer;
}
.adm-mk-tab[open] .adm-mk-tab__head {
  color: var(--adm-accent);
}
.adm-mk-cards {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}
.adm-mk-card {
  flex: 1 1 320px;
  padding: 20px 22px;
}
.adm-mk-card__value {
  margin-top: 10px;
  font-weight: 800;
  font-size: 30px;
  color: var(--adm-fg-strong);
}
.adm-mk-card__sub {
  margin-top: 6px;
  font-size: 12.5px;
  color: var(--adm-fg-muted);
}
.adm-mk-hist {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  padding: 9px 0;
  border-bottom: 1px solid var(--adm-bg-subtle);
  font-size: 13px;
}
.nav-link .adm-dot-warn {
  margin-left: 6px;
}
.adm-legend .adm-dot-warn {
  margin-right: 6px;
}
