:root {
  --ink: #18202a;
  --muted: #707984;
  --line: #e5e8eb;
  --paper: #f4f5f3;
  --white: #fff;
  --navy: #071d2e;
  --blue: #153c58;
  --yellow: #ffe12b;
  --green: #1a936f;
  --red: #cf4c4c;
  --radius: 18px;
  --shadow: 0 12px 40px rgba(20, 30, 40, .06);
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { min-width: 320px; background: var(--paper); overflow-y: scroll; scrollbar-gutter: stable; }
html:has(body.application-mail-page.is-embedded) { overflow-y: hidden; scrollbar-gutter: auto; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: NanumSquare, Arial, sans-serif; font-size: 15px; }
button, input, textarea, select { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }
button { color: inherit; }

.admin-shell { min-height: 100vh; }
.admin-sidebar { position: fixed; z-index: 20; inset: 0 auto 0 0; display: flex; flex-direction: column; width: 250px; padding: 29px 20px 24px; color: #fff; background: var(--navy); }
.admin-brand { padding: 0 10px 32px; border-bottom: 1px solid rgba(255,255,255,.12); }
.admin-brand a { display: block; }
.admin-brand img { display: block; width: 188px; max-width: 100%; filter: brightness(0) invert(1); }
.admin-brand span { display: block; margin-top: 13px; color: rgba(255,255,255,.44); font-size: 10px; font-weight: 800; letter-spacing: .28em; }
.admin-nav { display: grid; gap: 4px; margin-top: 25px; overflow-y: auto; scrollbar-width: thin; }
.admin-nav button, .admin-nav .admin-nav-external { position: relative; display: flex; align-items: center; gap: 15px; width: 100%; min-height: 48px; padding: 0 14px; border: 0; border-radius: 12px; color: rgba(255,255,255,.68); background: transparent; text-align: left; cursor: pointer; transition: .2s ease; }
.admin-nav button span, .admin-nav .admin-nav-external span { width: 20px; color: rgba(255,255,255,.28); font-size: 10px; font-weight: 700; }
.admin-nav button b { display: grid; place-items: center; min-width: 22px; height: 22px; margin-left: auto; padding: 0 6px; border-radius: 999px; color: #10202d; background: var(--yellow); font-size: 10px; }
.admin-nav .admin-nav-external b { margin-left: auto; color: var(--yellow); font-size: 13px; }
.admin-nav button:hover, .admin-nav .admin-nav-external:hover { color: #fff; background: rgba(255,255,255,.07); }
.admin-nav button.is-active { color: #fff; background: var(--blue); box-shadow: inset 3px 0 0 var(--yellow); }
.admin-nav button.is-active span { color: var(--yellow); }
.admin-sidebar__bottom { display: grid; gap: 10px; margin-top: auto; padding: 20px 10px 0; border-top: 1px solid rgba(255,255,255,.12); }
.admin-sidebar__bottom a { color: rgba(255,255,255,.67); font-size: 12px; }
.admin-sidebar__bottom a:hover { color: #fff; }
.admin-sidebar__bottom p { margin: 8px 0 0; color: #fff; font-size: 13px; font-weight: 700; }

.admin-main { --admin-gutter: clamp(24px, 4vw, 62px); min-height: 100vh; margin-left: 250px; }
.admin-topbar { position: sticky; z-index: 15; top: 0; display: flex; align-items: center; min-height: 86px; padding: 15px var(--admin-gutter); border-bottom: 1px solid rgba(20,30,40,.08); background: rgba(244,245,243,.92); backdrop-filter: blur(16px); }
.admin-topbar > div:first-of-type { display: grid; gap: 4px; }
.admin-topbar > div:first-of-type span { color: #9299a0; font-size: 11.7px; font-weight: 800; letter-spacing: .2em; }
.admin-topbar > div:first-of-type strong { font-size: 26px; }
.topbar-actions { display: flex; gap: 9px; margin-left: auto; }
.admin-home-button { gap: 7px; }
.admin-home-button svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; }
.admin-home-button span { display: inline; }
.sidebar-toggle { display: none; width: 42px; height: 42px; margin-right: 12px; border: 1px solid var(--line); border-radius: 11px; background: #fff; cursor: pointer; }

.button { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; padding: 0 17px; border: 1px solid transparent; border-radius: 11px; font-size: 13px; font-weight: 700; cursor: pointer; transition: transform .15s ease, background .15s ease, border-color .15s ease; }
.button:hover { transform: translateY(-1px); }
.button--primary { color: #fff; background: var(--navy); }
.button--primary:hover { background: #12354f; }
.button--ghost { border-color: #d9dde0; background: rgba(255,255,255,.72); }
.button--danger { color: #a34343; border-color: #e5c4c4; background: #fff7f7; }
.button--danger:hover { color: #8d2f2f; border-color: #d59d9d; background: #fbeeee; }
.button--small { min-height: 36px; padding-inline: 13px; border-color: var(--line); background: #fff; font-size: 12px; }
.button--light { color: var(--navy); background: #fff; }
.button--line-light { border-color: rgba(255,255,255,.34); color: #fff; background: transparent; }

.admin-content { width: 100%; margin: 0; padding: 27px var(--admin-gutter) 90px; }
.admin-panel { display: none; animation: panel-in .25s ease both; }
.admin-panel.is-active { display: block; }
.application-panel-back { margin-bottom: 14px; }
.admin-embedded-panel .application-panel-back { margin-bottom: 12px; }
@keyframes panel-in { from { opacity: 0; transform: translateY(7px); } }
.admin-dashboard { font-size: 19.5px; }
.admin-dashboard .stat-grid article > span { font-size: 13px; }
.admin-dashboard .stat-grid strong { margin: 10px 0 5px; font-size: 32px; }
.admin-dashboard .stat-grid small { font-size: 11px; }
.admin-dashboard .admin-card h2 { font-size: 27.3px; }
.admin-dashboard .eyebrow { font-size: 11.7px; }
.admin-dashboard .button { font-size: 16.9px; }
.admin-dashboard .text-button { font-size: 15.6px; }
.admin-dashboard .card-heading p { font-size: 15.6px; }
.admin-dashboard .empty-state { font-size: 16.9px; }
.admin-dashboard .recent-row strong { font-size: 16.9px; }
.admin-dashboard .recent-row p { font-size: 15.6px; }
.admin-dashboard .recent-row time { font-size: 14.3px; }
.panel-heading { display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, .65fr); gap: 40px; align-items: end; margin-bottom: 30px; }
.panel-heading span { display: block; margin-bottom: 8px; color: #899098; font-size: 10px; font-weight: 800; letter-spacing: .24em; }
.panel-heading h1 { margin: 0; font-size: clamp(28px, 3vw, 39px); line-height: 1.15; letter-spacing: -.035em; }
.panel-heading > p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.7; }

.stat-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 15px; }
.stat-grid article { min-height: 104px; padding: 16px 20px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; box-shadow: var(--shadow); }
.stat-grid article > span { color: var(--muted); font-size: 12px; font-weight: 700; }
.stat-grid strong { display: block; margin: 18px 0 8px; font-size: 35px; line-height: 1; letter-spacing: -.04em; }
.stat-grid strong.stat-date { margin-top: 21px; font-size: 18px; line-height: 1.25; }
.stat-grid small { color: #9aa0a6; font-size: 11px; }

.dashboard-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 16px; margin-top: 16px; }
.admin-card { padding: 29px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--white); box-shadow: var(--shadow); }
.admin-card--dark { color: #fff; background: var(--navy); }
.admin-card h2 { margin: 7px 0 12px; font-size: 21px; line-height: 1.35; letter-spacing: -.025em; }
.admin-card p { color: var(--muted); line-height: 1.7; }
.admin-card--dark p { color: rgba(255,255,255,.64); }
.admin-card--dark > div { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 25px; }
.eyebrow { color: #9aa2a9; font-size: 9px; font-weight: 800; letter-spacing: .22em; }
.admin-card--dark .eyebrow { color: var(--yellow); }
.text-link { display: inline-block; margin: 16px 18px 0 0; border-bottom: 1px solid #bac0c4; font-size: 13px; font-weight: 700; }
.text-button { padding: 0; border: 0; color: var(--blue); background: transparent; font-size: 12px; font-weight: 700; cursor: pointer; }
.recent-inquiries { margin-top: 16px; }
.dashboard-settings { position: relative; margin-top: 16px; padding: 0; overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius); background: var(--white); }
.dashboard-settings > summary { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; padding: 24px 29px; cursor: pointer; list-style: none; }
.dashboard-settings > summary::-webkit-details-marker { display: none; }
.dashboard-settings > summary > span { display: grid; gap: 6px; }
.dashboard-settings > summary strong { font-size: 18px; }
.dashboard-settings > summary > b { display: grid; place-items: center; width: 28px; height: 28px; border: 1px solid var(--line); border-radius: 50%; color: var(--blue); font-size: 20px; font-weight: 400; line-height: 1; transition: transform .2s ease, background .2s ease; }
.dashboard-settings > summary:hover > b { background: #eef4f7; }
.dashboard-settings[open] > summary { border-bottom: 1px solid var(--line); }
.dashboard-settings[open] > summary > b { transform: rotate(45deg); }
.admin-dashboard .dashboard-settings-save { position: static; flex: 0 0 auto; min-height: 36.4px; padding-inline: 13px; font-size: 14.3px; }
.dashboard-settings__body { display: grid; gap: 0; padding: 0; background: #fff; }
.dashboard-settings__body .form-card { margin-bottom: 0; border: 0; border-radius: 0; box-shadow: none; }
.dashboard-settings__body .form-card + .form-card { border-top: 1px solid var(--line); }
.dashboard-settings__group { margin: 0; border: 0; background: #fff; }
.dashboard-settings__group + .dashboard-settings__group { border-top: 1px solid var(--line); }
.dashboard-settings__group > summary { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 20px 29px; cursor: pointer; list-style: none; }
.dashboard-settings__group > summary::-webkit-details-marker { display: none; }
.dashboard-settings__group > summary > span { display: grid; gap: 6px; }
.dashboard-settings__group > summary strong { font-size: 18px; }
.dashboard-settings__group > summary > b { display: grid; place-items: center; width: 28px; height: 28px; border: 1px solid var(--line); border-radius: 50%; color: var(--blue); font-size: 20px; font-weight: 400; line-height: 1; transition: transform .2s ease, background .2s ease; }
.dashboard-settings__group > summary:hover > b { background: #eef4f7; }
.dashboard-settings__group[open] > summary { border-bottom: 1px solid var(--line); }
.dashboard-settings__group[open] > summary > b { transform: rotate(45deg); }
.dashboard-settings__actions { display: flex; justify-content: flex-end; padding: 0 29px 29px; }
.translation-settings-card { padding-top: 24px; }
.translation-settings-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; }
.translation-settings-heading h2 { margin: 0 0 7px; font-size: 18px !important; }
.translation-settings-heading p { max-width: 680px; margin: 0; color: var(--muted); font-size: 12px; line-height: 1.65; }
.translation-settings-heading .button { flex: 0 0 auto; min-height: 38px; padding-inline: 14px; font-size: 12px; }
.translation-generation-status { min-height: 20px; margin: 16px 0 9px !important; color: var(--blue) !important; font-size: 11px !important; font-weight: 700; }
.translation-language-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; }
.translation-language-grid label { display: grid; grid-template-columns: 18px 27px minmax(0, 1fr) auto; align-items: center; gap: 7px; min-height: 49px; margin: 0; padding: 8px 11px; border: 1px solid var(--line); border-radius: 10px; color: var(--ink); background: #fafbfa; cursor: pointer; }
.translation-language-grid label:has(input:checked) { border-color: #b4c7d3; background: #f0f6f9; }
.translation-language-grid input { width: 17px !important; height: 17px !important; margin: 0; padding: 0 !important; accent-color: var(--navy); }
.translation-language-grid label > span { font-size: 19px; line-height: 1; }
.translation-language-grid strong { overflow: hidden; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.translation-language-grid small, .translation-language-grid a { color: #77838a; font-size: 9px; font-weight: 700; white-space: nowrap; }
.translation-language-grid a:hover { color: var(--blue); text-decoration: underline; }
.card-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; }
.card-heading h2 { margin-top: 5px; }
.card-heading p { margin: 4px 0 0; font-size: 12px; }

.form-layout, .settings-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 16px; }
.application-settings-layout { display: grid; grid-template-columns: minmax(0, 1fr) 420px; gap: 16px; align-items: start; margin-bottom: 16px; }
.application-editor { min-width: 0; }
.application-library { position: sticky; top: 106px; padding: 22px; }
.application-library h2 { margin: 0 0 15px; font-size: 16px; }
.application-library-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 15px; }
.application-library-heading h2 { margin: 0; }
.application-library-heading .button { flex: 0 0 auto; }
.application-library-list { display: grid; gap: 8px; }
.application-library-card { width: 100%; min-height: 52px; padding: 12px 13px; border: 1px solid var(--line); border-radius: 10px; color: var(--ink); background: #fff; text-align: left; cursor: grab; transition: border-color .15s, background .15s, transform .15s, opacity .15s; }
.application-library-card:active { cursor: grabbing; }
.application-library-card.is-dragging { opacity: .45; }
.application-library-card.is-drag-over { border-color: var(--blue); background: #eef4f7; box-shadow: inset 0 2px 0 var(--blue); }
.application-library-card__row { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.application-library-card strong { display: block; min-width: 0; font-size: 12px; line-height: 1.45; }
.application-library-card:hover { border-color: #9aaeba; transform: translateY(-1px); }
.application-library-card.is-active { border-color: var(--blue); background: #eef4f7; box-shadow: inset 3px 0 0 var(--blue); }
.application-library-actions { display: flex; flex: 0 0 auto; gap: 2px; }
.application-library-actions button { display: inline-grid; width: 24px; height: 24px; place-items: center; border: 0; border-radius: 5px; color: #65737b; background: transparent; cursor: pointer; }
.application-library-actions button:hover { color: var(--blue); background: #e3edf2; }
.application-library-actions button:last-child { color: #a34343; }
.application-library-actions button:last-child:hover { color: #8d2f2f; background: #f8eaea; }
.application-library-actions svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.6; }
.application-library-add { min-height: 48px; border: 1px dashed #aab6bd; border-radius: 10px; color: var(--blue); background: #f8fafb; font-size: 12px; font-weight: 800; cursor: pointer; }
.application-library-add:hover { border-color: var(--blue); background: #eef4f7; }
.application-library-settings { display: flex; align-items: center; justify-content: center; min-height: 42px; border: 1px solid #cbd6dc; border-radius: 10px; color: var(--blue); background: #fff; font-size: 12px; font-weight: 800; cursor: pointer; }
.application-library-settings:hover { border-color: var(--blue); background: #f5f9fb; }
.application-settings-actions { display: flex; justify-content: flex-end; }
.application-mail-settings-card { margin-top: 8px; padding: 16px; border: 1px solid var(--line); border-radius: 10px; background: #f8fafb; }
.application-mail-settings-heading { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 12px; }
.application-mail-settings-heading h3 { margin: 0; font-size: 14px; }
.application-mail-settings-heading span { color: #92999f; font-size: 10px; }
.application-mail-settings-card label { display: grid; gap: 6px; margin-top: 12px; color: #4e5861; font-size: 11px; font-weight: 700; }
.application-mail-settings-card .toggle-field { display: flex; align-items: center; gap: 8px; }
.application-mail-settings-card .toggle-field input { width: 17px; height: 17px; margin: 0; accent-color: var(--navy); }
.application-mail-settings-card input[type="email"], .application-mail-settings-card input[type="text"], .application-mail-settings-card textarea { width: 100%; padding: 9px 10px; border: 1px solid #dce0e3; border-radius: 7px; outline: 0; color: var(--ink); background: #fff; font: inherit; font-size: 11px; font-weight: 400; }
.application-mail-settings-card input[type="email"], .application-mail-settings-card input[type="text"] { height: 36px; }
.application-mail-settings-card textarea { line-height: 1.5; resize: vertical; }
.application-mail-settings-card input:focus, .application-mail-settings-card textarea:focus { border-color: #61839b; box-shadow: 0 0 0 3px rgba(21,60,88,.09); }
.application-mail-settings-save { width: 100%; min-height: 38px; margin-top: 14px; font-size: 11px; }
.form-card { margin-bottom: 16px; }
.form-card h2 { margin: 0 0 22px; }
.form-card label { display: grid; gap: 8px; margin-top: 17px; color: #4e5861; font-size: 12px; font-weight: 700; }
.form-card input, .form-card textarea, .form-card select, .inquiry-toolbar select { width: 100%; border: 1px solid #dce0e3; border-radius: 10px; outline: 0; color: var(--ink); background: #fafbfa; transition: border-color .15s, box-shadow .15s, background .15s; }
.form-card input, .form-card select { height: 45px; padding: 0 13px; }
.form-card textarea { min-height: 96px; padding: 12px 13px; line-height: 1.65; resize: vertical; }
.form-card input:focus, .form-card textarea:focus, .form-card select:focus, .inquiry-toolbar select:focus { border-color: #61839b; background: #fff; box-shadow: 0 0 0 3px rgba(21,60,88,.09); }
.seo-image-upload-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; align-items: stretch; margin-top: 14px; }
.seo-image-upload-button { display: inline-flex !important; align-items: center; justify-content: center; min-height: 45px; margin-top: 0 !important; padding-inline: 16px; color: var(--ink) !important; font-size: 12px !important; cursor: pointer; }
.image-dropzone { position: relative; flex-direction: column; gap: 3px !important; row-gap: 3px !important; border-style: dashed !important; border-color: #bdc8cd !important; background: #f8faf9 !important; line-height: 1; transition: border-color .18s ease, color .18s ease, background .18s ease, box-shadow .18s ease; }
.image-dropzone::after { display: block; content: '파일을 끌어놓기'; color: #99a1a6; font-size: 9px; font-weight: 600; line-height: 1; }
.image-dropzone.is-dragover { color: var(--blue) !important; border-color: var(--blue) !important; background: #eef5f8 !important; box-shadow: 0 0 0 3px rgba(21,60,88,.08); }
.image-dropzone.is-dragover::after { content: '이미지를 놓아주세요'; color: var(--blue); }
.page-image-action.image-dropzone { min-height: 45px; padding-inline: 5px; font-size: 10px; text-align: center; }
.page-image-action.image-dropzone::after { font-size: 7px; }
.seo-image-preview { display: grid; place-items: center; min-height: 120px; margin-top: 15px; overflow: hidden; border: 1px dashed #cfd4d6; border-radius: 11px; color: #9aa0a5; background: #f6f7f6; font-size: 11px; }
.seo-image-preview img { display: block; width: 100%; max-height: 260px; object-fit: contain; background: #eef0ef; }
.media-library-card { padding: 30px; }
.media-video-settings-card { margin-bottom: 16px; padding: 26px 30px 22px; }
.media-video-settings-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin: 0; cursor: pointer; list-style: none; }
.media-video-settings-heading::-webkit-details-marker { display: none; }
.media-video-settings-heading::after { flex: 0 0 auto; content: '+'; color: var(--blue); font-size: 28px; font-weight: 300; line-height: 1; }
.media-video-settings-card[open] .media-video-settings-heading { margin-bottom: 20px; }
.media-video-settings-card[open] .media-video-settings-heading::after { content: '−'; }
.media-video-settings-heading h1 { margin: 6px 0 0; font-size: 22px; }
.media-video-settings-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.media-video-settings-grid label { display: grid; gap: 8px; color: #4e5861; font-size: 12px; font-weight: 700; }
.media-video-settings-grid input { width: 100%; height: 45px; padding: 0 13px; border: 1px solid #dce0e3; border-radius: 10px; outline: 0; color: var(--ink); background: #fafbfa; font-size: 12px; }
.media-video-settings-grid input:focus { border-color: #61839b; background: #fff; box-shadow: 0 0 0 3px rgba(21,60,88,.09); }
.media-video-settings-card > .field-help { margin-top: 14px; }
.media-save-mobile { display: none; }
.media-library-heading { grid-template-columns: minmax(0, 1fr) auto; align-items: flex-end; margin-bottom: 25px; }
.media-library-heading h1 { margin: 6px 0 8px; font-size: 25px; }
.media-library-heading p { margin: 0; color: var(--muted); font-size: 12px; }
.media-library-toolbar { display: flex; min-width: 0; width: 100%; flex-wrap: nowrap; align-items: center; justify-content: flex-end; gap: 9px; margin-left: auto; }
.media-toolbar-actions { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 6px; white-space: nowrap; }
.media-toolbar-actions > * { min-height: 42px; }
.media-view-toggle { display: inline-flex; flex: 0 0 auto; margin-left: -10px; overflow: hidden; border: 1px solid var(--line); border-radius: 11px; background: #fff; }
.media-view-button { min-height: 42px; padding: 0 17px; border: 0; color: #727c83; background: transparent; font-size: 13px; font-weight: 700; white-space: nowrap; cursor: pointer; }
.media-view-button + .media-view-button { border-left: 1px solid var(--line); }
.media-view-button.is-active { color: #fff; background: var(--navy); }
.media-select-all { min-width: 88px; }
.media-delete-selected { min-width: 70px; }
.media-upload-button { position: relative; flex: 0 0 auto; cursor: pointer; }
.media-dropzone { display: grid; place-items: center; gap: 3px; row-gap: 3px; min-height: 78px; margin-bottom: 20px; padding: 16px; border: 1px dashed #bdc8cd; border-radius: 12px; color: #6f7b82; background: #f8faf9; text-align: center; transition: border-color .18s ease, color .18s ease, background .18s ease; }
.media-dropzone strong { font-size: 12px; }
.media-dropzone span { color: #99a1a6; font-size: 10px; }
.media-dropzone.is-dragover { border-color: var(--blue); color: var(--blue); background: #eef5f8; }
.media-library-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; }
.media-library-grid.is-list-view { grid-template-columns: 1fr; gap: 9px; }
.media-library-item { min-width: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 13px; background: #fff; }
.media-library-thumb { position: relative; aspect-ratio: 1 / 1; overflow: hidden; background: #f1f3f2; }
.media-library-thumb-button { display: block; width: 100%; height: 100%; padding: 0; border: 0; color: inherit; background: transparent; cursor: zoom-in; }
.media-library-thumb-button:focus-visible { outline: 3px solid var(--yellow); outline-offset: -3px; }
.media-library-thumb-button:hover img { transform: scale(1.025); }
.media-library-thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }
.media-select-control { position: absolute; z-index: 2; top: 10px; left: 10px; display: grid; place-items: center; width: 26px; height: 26px; border: 1px solid rgba(255,255,255,.9); border-radius: 7px; background: rgba(255,255,255,.9); box-shadow: 0 4px 12px rgba(0,0,0,.15); opacity: 0; cursor: pointer; transition: opacity .16s ease, background .16s ease; }
.media-library-item:hover .media-select-control, .media-select-control:focus-within, .media-select-control.is-selected { opacity: 1; }
.media-select-control input { width: 16px; height: 16px; margin: 0; accent-color: var(--navy); cursor: pointer; }
.media-library-meta { display: grid; gap: 5px; padding: 12px 13px 0; }
.media-library-meta strong { overflow: hidden; color: var(--ink); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.media-library-meta small { overflow: hidden; color: var(--muted); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.media-library-actions { display: flex; gap: 6px; padding: 11px 13px 13px; }
.media-library-actions .row-button { flex: 1; min-width: 0; padding-inline: 6px; font-size: 10px; }
.media-library-actions .row-button--danger { color: #a34343; border-color: #e5c4c4; background: #fff7f7; }
.media-library-actions .row-button--danger:hover { color: #8d2f2f; border-color: #d59d9d; background: #fbeeee; }
.media-library-grid.is-list-view .media-library-item { display: grid; grid-template-columns: 112px minmax(0, 1fr) auto; align-items: center; }
.media-library-grid.is-list-view .media-library-thumb { width: 112px; height: 75px; aspect-ratio: auto; }
.media-library-grid.is-list-view .media-library-thumb img { object-fit: cover; }
.media-library-grid.is-list-view .media-library-meta { min-width: 0; padding: 0 16px; }
.media-library-grid.is-list-view .media-library-actions { padding: 0 13px; }
.media-picker-open { min-height: 34px; margin-top: 7px; padding-inline: 11px; font-size: 10px; }
.seo-image-picker-button { align-self: stretch; min-height: 45px; margin-top: 0; padding-inline: 16px; }
.seo-image-upload-button, .seo-image-picker-button { width: 100%; font-size: 12px !important; }
.media-picker-dialog { width: min(900px, calc(100% - 30px)); max-height: calc(100vh - 40px); padding: 0; border: 0; border-radius: 20px; color: var(--ink); box-shadow: 0 30px 90px rgba(0,0,0,.28); }
.media-preview-dialog { width: min(900px, calc(100% - 30px)); max-height: calc(100vh - 40px); padding: 0; border: 0; border-radius: 20px; color: var(--ink); box-shadow: 0 30px 90px rgba(0,0,0,.28); }
.media-crop-dialog { width: min(840px, calc(100% - 30px)); max-height: calc(100vh - 40px); padding: 0; border: 0; border-radius: 20px; color: var(--ink); box-shadow: 0 30px 90px rgba(0,0,0,.28); }
.media-picker-dialog::backdrop { background: rgba(5,16,25,.6); backdrop-filter: blur(3px); }
.media-preview-dialog::backdrop { background: rgba(5,16,25,.6); backdrop-filter: blur(3px); }
.media-crop-dialog::backdrop { background: rgba(5,16,25,.6); backdrop-filter: blur(3px); }
.media-picker-dialog > form { position: absolute; z-index: 1; top: 16px; right: 16px; }
.media-picker-dialog > form button { width: 38px; height: 38px; border: 0; border-radius: 50%; color: var(--ink); background: #eff1f2; font-size: 22px; cursor: pointer; }
.media-preview-dialog > form { position: absolute; z-index: 1; top: 14px; right: 14px; }
.media-preview-dialog > form button { display: grid; place-items: center; width: 50px; height: 50px; border: 1px solid #cbd4d8; border-radius: 50%; color: var(--navy); background: #fff; box-shadow: 0 8px 22px rgba(5,16,25,.18); font-size: 32px; font-weight: 300; line-height: 1; cursor: pointer; }
.media-preview-dialog > form button:hover { color: #fff; border-color: var(--navy); background: var(--navy); }
.media-crop-dialog > form { position: absolute; z-index: 1; top: 14px; right: 14px; }
.media-crop-dialog > form button { display: grid; place-items: center; width: 50px; height: 50px; border: 1px solid #cbd4d8; border-radius: 50%; color: var(--navy); background: #fff; box-shadow: 0 8px 22px rgba(5,16,25,.18); font-size: 32px; font-weight: 300; line-height: 1; cursor: pointer; }
.media-crop-dialog > form button:hover { color: #fff; border-color: var(--navy); background: var(--navy); }
.media-picker-content { padding: 32px; }
.media-preview-content { padding: 32px; }
.media-crop-content { padding: 32px; }
.media-preview-content h2 { margin: 7px 50px 20px 0; font-size: 24px; }
.media-crop-content h2 { margin: 7px 50px 5px 0; font-size: 24px; }
.media-preview-content p { margin: 14px 0 0; color: var(--muted); font-size: 12px; }
.media-crop-content > p { margin: 0 0 18px; color: var(--muted); font-size: 12px; }
.media-preview-image { display: grid; place-items: center; min-height: 180px; max-height: calc(100vh - 220px); overflow: hidden; border-radius: 12px; background: #f1f3f2; }
.media-preview-image img { display: block; width: 100%; max-height: calc(100vh - 220px); object-fit: contain; }
.media-crop-stage { display: grid; place-items: center; min-height: 280px; max-height: min(58vh, 560px); overflow: auto; padding: 16px; border-radius: 12px; background: #101920; }
.media-crop-stage canvas { display: block; max-width: 100%; height: auto; touch-action: none; cursor: grab; }
.media-crop-stage canvas:active { cursor: grabbing; }
.media-crop-controls { display: grid; grid-template-columns: auto minmax(140px, 1fr) auto auto; gap: 12px; align-items: center; margin-top: 17px; color: #4e5861; font-size: 12px; font-weight: 700; }
.media-crop-controls input[type="range"] { width: 100%; accent-color: var(--navy); }
.media-crop-controls > span, .media-crop-controls > small { color: var(--muted); font-size: 11px; font-weight: 700; }
.media-crop-actions { display: flex; justify-content: flex-end; gap: 9px; margin-top: 20px; }
.media-picker-content h2 { margin: 7px 50px 5px 0; font-size: 24px; }
.media-picker-content > p { margin: 0 0 22px; color: var(--muted); font-size: 12px; }
.media-picker-content .media-library-grid { max-height: calc(100vh - 220px); overflow-y: auto; padding-right: 3px; }
.field-row, .field-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.field-grid.three { grid-template-columns: repeat(3, 1fr); }
.field-help { margin: 9px 0 0; color: #959ca3 !important; font-size: 11px; }
.field-help code { padding: 2px 5px; border-radius: 4px; background: #eef0f1; }

.application-card { margin-bottom: 0; }
.application-card__heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; }
.application-card__heading h2 { margin-top: 7px; margin-bottom: 0; }
.application-enabled { flex: 0 0 auto; min-height: 38px; padding-inline: 10px; }
.application-source { margin: 10px 0 20px; font-size: 11px; }
.application-source a { color: var(--blue); text-decoration: underline; text-underline-offset: 3px; }
.application-fields-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 25px; }
.application-fields-heading h3 { margin: 0; font-size: 14px; transform: translateY(4px); }
.application-fields-heading span { color: #92999f; font-size: 11px; }
.application-fields-table { margin-top: 10px; overflow-x: auto; border: 1px solid var(--line); border-radius: 11px; }
.application-fields-table table { min-width: 620px; }
.application-fields-table th { padding: 10px 12px; }
.application-fields-table td { padding: 8px 10px; }
.application-fields-table td:first-child { width: 31%; }
.application-fields-table td:nth-child(2) { width: 29%; }
.application-fields-table td:nth-child(3) { width: 22%; }
.application-fields-table input[type="text"], .application-fields-table select { height: 37px; min-width: 150px; padding: 0 9px; border: 1px solid #dce0e3; border-radius: 7px; background: #fff; font-size: 12px; }
.application-fields-table .application-field-example { min-width: 0; }
.application-fields-table select { min-width: 110px; }
.application-fields-table .application-field-options { display: block; width: 100%; min-height: 62px; margin-top: 8px; padding: 8px 9px; border: 1px solid #dce0e3; border-radius: 7px; outline: 0; color: var(--ink); background: #fff; font-size: 11px; line-height: 1.45; resize: vertical; }
.application-fields-table .application-field-options:focus { border-color: #61839b; box-shadow: 0 0 0 3px rgba(21,60,88,.09); }
.application-fields-table input[type="checkbox"] { width: 17px; height: 17px; min-width: 17px; margin: 0; accent-color: var(--navy); }
.application-fields-table td:nth-child(4) input[type="checkbox"] { transform: translateX(3px); }
.application-fields-table small { display: block; margin-top: 4px; color: #92999f; font-size: 10px; }
.application-fields-table td:last-child { width: 58px; padding-right: 20px; text-align: right; }
.application-field-remove { padding: 4px 0; border: 0; color: #a55a5a; background: transparent; font-size: 10px; cursor: pointer; transform: translate(-20px, -1px); }
.application-empty-fields { padding: 25px 12px; color: #9aa0a5; text-align: center; }
.application-add-field { min-height: 38px; margin-top: 12px; padding-inline: 13px; font-size: 11px; }
.application-source--custom { color: #92999f; }
.application-footer-fields { margin-top: 3px; }

.repeater { display: grid; gap: 12px; margin-top: 22px; }
.repeat-item { position: relative; padding: 21px; border: 1px solid var(--line); border-radius: 14px; background: #f8f9f8; }
.repeat-item__head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 5px; }
.repeat-item__head strong { font-size: 13px; }
.repeat-remove { width: 28px; height: 28px; border: 0; border-radius: 50%; color: #8a9197; background: #e9ecee; cursor: pointer; }
.repeat-remove:hover { color: #fff; background: var(--red); }
.repeater--cards, .repeater--metrics, .repeater--videos { grid-template-columns: 1fr 1fr; }
.repeat-item .field-grid { gap: 10px; }

.section-editor-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.section-editor-grid .form-card { margin-bottom: 0; }

.post-list-card { padding: 0; overflow: hidden; }
.post-toolbar { display: flex; align-items: end; justify-content: space-between; gap: 20px; padding: 21px 24px; border-bottom: 1px solid var(--line); }
.page-list-toolbar { padding-left: 18px; }
.post-filters { display: flex; gap: 10px; }
.page-list-filters { display: flex; gap: 10px; }
.post-toolbar label { display: grid; gap: 6px; color: var(--muted); font-size: 11px; font-weight: 700; }
.post-toolbar select { min-width: 135px; height: 39px; padding: 0 10px; border: 1px solid var(--line); border-radius: 9px; background: #fff; }
.post-toolbar > div:last-child { display: flex; align-items: center; gap: 14px; }
.post-toolbar > div:last-child > span { color: var(--muted); font-size: 12px; }
.post-table .post-title-cell { min-width: 320px; white-space: normal; }
.page-translation-flags { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 7px; }
.page-translation-flags > a, .page-translation-flags > span { display: grid; width: 24px; height: 24px; place-items: center; border: 1px solid #dce2e5; border-radius: 50%; background: #fff; font-size: 14px; line-height: 1; text-decoration: none; transition: border-color .15s, box-shadow .15s, transform .15s; }
.page-translation-flags > a:hover { border-color: #86a1b2; box-shadow: 0 4px 10px rgba(21, 60, 88, .12); transform: translateY(-1px); }
.page-table td:last-child { text-align: right; }
.page-table th:last-child, .page-table td:last-child, .posts-table th:last-child, .posts-table td:last-child { padding-right: 24px; }
.page-table .row-actions { justify-content: flex-end; flex-wrap: nowrap; }
.page-table .row-actions .row-button { flex: 0 0 auto; padding-inline: 8px; }
.page-editor-card .field-grid > label, .post-editor-card .field-grid > label { min-width: 0; overflow: hidden; }
.admin-datetime-shell { display: contents; }
.admin-datetime-display { display: none; }
.page-editor-card input[type="datetime-local"], .post-editor-card input[type="datetime-local"] { display: block; box-sizing: border-box; width: 100%; inline-size: 100%; min-width: 0; min-inline-size: 0; max-width: 100%; max-inline-size: 100%; overflow: hidden; text-overflow: clip; white-space: nowrap; text-align: left; direction: ltr; }
.page-editor-card input[type="datetime-local"]::-webkit-datetime-edit, .post-editor-card input[type="datetime-local"]::-webkit-datetime-edit { display: flex !important; align-items: center; justify-content: flex-start !important; width: 100%; min-width: 0; max-width: 100%; overflow: hidden; white-space: nowrap; text-align: left !important; }
.page-editor-card input[type="datetime-local"]::-webkit-datetime-edit-fields-wrapper, .post-editor-card input[type="datetime-local"]::-webkit-datetime-edit-fields-wrapper { display: flex !important; align-items: center; justify-content: flex-start !important; width: 100%; min-width: 0; max-width: 100%; overflow: hidden; text-align: left !important; }
.post-date-cell { width: 116px; min-width: 116px; }
.post-date-cell time { display: block; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-variant-numeric: tabular-nums; }
.post-date-compact { display: none; }
.posts-table { min-width: 880px; table-layout: fixed; }
.posts-table th:nth-child(1), .posts-table td:nth-child(1) { width: 96px; }
.posts-table th:first-child, .posts-table td:first-child { padding-left: 24px; }
.posts-table th:nth-child(2), .posts-table td:nth-child(2) { width: 96px; }
.posts-table th:nth-child(3), .posts-table td:nth-child(3) { width: 116px; }
.posts-table th:nth-child(5), .posts-table td:nth-child(5) { width: 280px; }
.posts-table th:last-child, .posts-table td:last-child { text-align: right; }
.posts-table .post-title-cell { min-width: 0; }
.posts-table .post-title-cell strong, .posts-table .post-title-cell small { display: block; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.posts-table .row-actions { justify-content: flex-end; flex-wrap: nowrap; }
.posts-table .row-actions .row-button { flex: 0 0 auto; padding-inline: 8px; }
.row-button--icon { width: 32px; height: 32px; padding: 0 !important; }
.row-button--icon svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; }
.row-button--icon:hover:not(:disabled) { color: var(--blue); border-color: #b9cbd5; background: #f5f9fb; }
.posts-table .row-button--danger { color: #a34343; border-color: #e5c4c4; background: #fff7f7; }
.posts-table .row-button--danger:hover { color: #8d2f2f; border-color: #d59d9d; background: #fbeeee; }
.application-table { width: max-content; min-width: 100%; }
.application-table th, .application-table td { padding-inline: 12px; }
.application-table th:first-child, .application-table td:first-child { padding-left: 24px; }
.application-table th:last-child, .application-table td:last-child { padding-right: 24px; }
.application-table th:first-child, .application-table td:first-child { width: 42px; }
.application-table th:nth-child(2), .application-table td:nth-child(2) { width: 52px; }
.application-table th:nth-child(3), .application-table td:nth-child(3) { width: 150px; }
.application-table th:nth-child(4), .application-table td:nth-child(4) { width: 130px; }
.application-table th:nth-child(5), .application-table td:nth-child(5) { width: 68px; }
.application-table th:nth-child(6), .application-table td:nth-child(6) { width: 130px; }
.application-table th:nth-child(7), .application-table td:nth-child(7) { width: 90px; }
.application-table th:nth-child(8), .application-table td:nth-child(8) { width: 220px; }
.application-table th:nth-child(9), .application-table td:nth-child(9) { width: 80px; }
.application-table th:nth-child(10), .application-table td:nth-child(10) { width: 150px; }
.post-title-cell strong { max-width: 600px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.post-title-cell small { display: block; max-width: 520px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.post-status { display: inline-flex; align-items: center; min-height: 25px; padding: 0 9px; border-radius: 999px; font-size: 10px; font-weight: 800; }
.post-status-publish { color: #247051; background: #dcefe6; }
.post-status-draft { color: #786b56; background: #ebe7df; }
.row-actions { display: flex; gap: 6px; }
.row-actions .row-button { display: inline-flex; align-items: center; justify-content: center; white-space: nowrap; }
.dashboard-post-button { margin-top: 16px; border-bottom: 1px solid #bac0c4; }

.post-editor-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 18px; }
.post-editor-heading-actions { display: flex; align-items: center; justify-content: flex-end; gap: 9px; }
.post-editor-heading span { color: #969ca1; font-size: 9px; font-weight: 800; letter-spacing: .18em; }
.post-editor-heading h2 { margin: 0; font-size: 24px; }
.post-editor-card { padding: 34px; }
.post-history-toggle { width: max-content; min-width: 150px; margin-top: 10px; }
.post-history-toggle[hidden] { display: none !important; }
.post-image-seo-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; align-items: start; margin-top: 25px; }
.post-image-seo-grid > .post-image-section, .post-image-seo-grid > .post-seo-fields { min-width: 0; padding: 20px; border: 1px solid var(--line); border-radius: 13px; background: #fafbfa; }
.post-image-seo-grid > .post-image-section { grid-template-columns: 1fr; gap: 12px; margin-top: 0; }
.post-image-seo-grid > .post-seo-fields { margin-top: 0; padding-top: 20px; border-top: 1px solid var(--line); }
.post-image-seo-grid > .post-image-section h2 { margin: 0 0 2px; font-size: 17px; }
.post-image-upload-row { margin-top: 0; }
.post-image-url-field { margin-top: 0 !important; }
.post-image-seo-grid > .post-seo-fields h2 { margin-bottom: 8px; }
.post-image-section { display: grid; grid-template-columns: minmax(0, 1fr) minmax(220px, 280px); gap: 16px; align-items: stretch; margin-top: 17px; }
.post-image-fields { display: grid; gap: 12px; align-content: start; }
.post-image-fields > label { margin-top: 0; }
.post-file-label input { height: auto; padding: 10px; background: #fff; }
.post-file-label > span { color: #989ea3; font-size: 10px; font-weight: 400; }
.post-image-preview { display: grid; place-items: center; min-height: 174px; max-height: 190px; margin-top: 0; overflow: hidden; border: 1px dashed #cfd4d6; border-radius: 11px; color: #9aa0a5; background: #f6f7f6; font-size: 11px; }
.post-image-preview img { display: block; width: 100%; max-height: 188px; object-fit: contain; background: #eef0ef; }
.post-body-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; align-items: start; margin-top: 10px; }
.post-body-grid > .post-image-section, .post-body-grid > .rich-editor-wrap { min-width: 0; }
.post-body-grid > .post-image-section { grid-template-columns: 1fr; gap: 12px; margin-top: 0; padding: 20px; border: 1px solid var(--line); border-radius: 13px; background: #fafbfa; }
.post-body-grid > .post-image-section h2 { margin: 0 0 2px; font-size: 17px; }
.post-media-add-section { min-width: 0; margin-top: 0; padding: 20px; border: 1px solid var(--line); border-radius: 13px; background: #fafbfa; }
.post-media-add-section h2 { margin: 0 0 2px; font-size: 17px; }
.post-media-preview { min-height: 180px; margin-top: 16px; overflow: hidden; border: 1px dashed #cfd4d6; border-radius: 11px; background: #f6f7f6; }
.post-media-preview > span { display: grid; min-height: 180px; place-items: center; color: #9aa0a5; font-size: 11px; }
.post-media-preview-grid { display: grid; gap: 10px; padding: 10px; }
.post-media-preview-entry { position: relative; overflow: hidden; border-radius: 8px; background: #eef0ef; cursor: grab; }
.post-media-preview-entry.is-dragging { opacity: .45; }
.post-media-preview-entry.is-drag-over { outline: 2px solid var(--ink); outline-offset: 2px; }
.post-media-preview-drag-handle { position: absolute; z-index: 1; top: 7px; left: 7px; padding: 5px 7px; border-radius: 5px; color: #fff; background: rgba(25,30,32,.72); font-size: 10px; font-weight: 700; pointer-events: none; }
.post-media-preview-order { position: absolute; z-index: 1; top: 7px; right: 42px; display: flex; gap: 4px; }
.post-media-preview-order button { display: grid; width: 27px; height: 27px; place-items: center; padding: 0; border: 1px solid rgba(255,255,255,.75); border-radius: 5px; color: #fff; background: rgba(25,30,32,.72); font-size: 15px; line-height: 1; cursor: pointer; }
.post-media-preview-order button:hover, .post-media-preview-order button:focus-visible { background: var(--ink); outline: none; }
.post-media-preview-item, .post-media-preview-video { min-height: 52px; }
.post-media-preview-item img { display: block; width: 100%; max-height: 190px; object-fit: contain; }
.post-media-preview-video iframe { display: block; width: 100%; aspect-ratio: 16 / 9; border: 0; }
.post-media-preview-remove { position: absolute; top: 7px; right: 7px; display: grid; width: 28px; height: 28px; place-items: center; padding: 0; border: 1px solid rgba(255,255,255,.75); border-radius: 50%; color: #fff; background: rgba(25,30,32,.78); font-size: 19px; line-height: 1; cursor: pointer; }
.post-media-preview-remove:hover, .post-media-preview-remove:focus-visible { background: #a34343; outline: none; }
.post-media-add-options { display: grid; gap: 12px; margin-top: 17px; }
.post-media-add-option { display: grid; gap: 10px; padding: 14px; border: 1px solid #e1e5e6; border-radius: 11px; background: #fff; }
.post-media-add-option > strong { color: var(--ink); font-size: 12px; }
.post-media-add-option > label { margin-top: 0; }
.post-media-add-row { margin-top: 0; }
.post-video-add-button { justify-self: start; margin-top: 0; }
.post-body-grid > .rich-editor-wrap { margin-top: 0; }
.post-seo-fields--standalone { margin-top: 20px; padding: 20px; border: 1px solid var(--line); border-radius: 13px; background: #fafbfa; }
.post-seo-fields--standalone h2 { margin-bottom: 8px; }
.rich-editor-wrap { margin-top: 25px; }
.rich-editor-label { display: block; margin-bottom: 8px; color: #4e5861; font-size: 12px; font-weight: 700; }
.rich-editor-toolbar { display: flex; flex-wrap: wrap; gap: 5px; padding: 9px; border: 1px solid #dce0e3; border-bottom: 0; border-radius: 11px 11px 0 0; background: #f4f5f4; }
.rich-editor-toolbar button { min-width: 37px; height: 32px; padding: 0 10px; border: 1px solid #d6dadd; border-radius: 7px; background: #fff; font-size: 11px; cursor: pointer; }
.rich-editor-toolbar button:hover { border-color: #8ca0ae; }
.rich-editor-toolbar .rich-editor-default-style { min-width: 76px; color: #fff; border-color: var(--blue); background: var(--blue); font-weight: 700; white-space: nowrap; }
.rich-editor-toolbar .rich-editor-default-style:hover { border-color: var(--navy); background: var(--navy); }
.rich-editor { min-height: 430px; padding: 24px; overflow: auto; border: 1px solid #dce0e3; border-radius: 0 0 11px 11px; outline: 0; background: #fff; font-size: 15px; line-height: 1.8; }
.rich-editor:focus { border-color: #61839b; box-shadow: 0 0 0 3px rgba(21,60,88,.09); }
.rich-editor img { display: block; max-width: 100%; height: auto; margin: 20px auto; }
.rich-editor p { min-height: 1em; }
.post-editor-actions { display: flex; justify-content: flex-end; gap: 9px; margin-top: 24px; }

.page-editor-card { padding: 34px; }
.page-title-field { transform: translateY(4px); }
.page-editor-columns { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 40px; margin-top: 28px; }
.page-composition-fields { min-width: 0; padding-right: 40px; border-right: 1px solid var(--line); }
.page-composition-fields .page-section-title, .page-seo-fields h2 { margin: 0 0 14px; font-size: 17px; }
.page-application-fields, .page-code-fields { margin-top: 26px; padding-top: 25px; border-top: 1px solid var(--line); }
.page-seo-fields { min-width: 0; margin-top: 0; padding-top: 0; border-top: 0; }
.page-application-fields h2, .page-code-fields h2 { margin: 0 0 4px; font-size: 17px; }
.page-code-heading { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 16px; }
.page-code-heading h2 { margin: 0; }
.page-type-switch { min-height: 36px; padding-inline: 12px; font-size: 11px; }
.page-media-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.page-media-add-section { min-width: 0; margin-top: 17px; padding: 20px; border: 1px solid var(--line); border-radius: 13px; background: #fafbfa; }
.page-media-add-section h2 { margin: 0 0 2px; font-size: 17px; }
.page-media-add-section > .field-help { margin-top: 0; }
.page-media-add-section .post-media-preview { margin-top: 16px; }
.page-image-field { display: grid; gap: 8px; margin-top: 17px; color: #4e5861; font-size: 12px; font-weight: 700; }
.page-image-controls { display: grid; grid-template-columns: minmax(0, 1fr) 72px 72px; gap: 6px; align-items: stretch; }
.page-image-input-wrap { position: relative; min-width: 0; }
.page-image-controls > input, .page-image-input-wrap > input { min-width: 0; height: 45px; padding: 0 13px; border: 1px solid #dce0e3; border-radius: 10px; outline: 0; color: var(--ink); background: #fafbfa; font-size: 12px; }
.page-image-input-wrap > input { width: 100%; padding-right: 34px; }
.page-image-input-wrap > input { color: transparent; text-indent: -9999px; caret-color: transparent; cursor: default; }
.page-image-input-wrap > input::selection { color: transparent; background: transparent; }
.page-image-controls > input:focus, .page-image-input-wrap > input:focus { border-color: #61839b; background: #fff; box-shadow: 0 0 0 3px rgba(21,60,88,.09); }
.page-image-clear { position: absolute; top: 50%; right: 7px; display: grid; width: 24px; height: 24px; place-items: center; padding: 0; border: 0; border-radius: 50%; color: #7f888e; background: transparent; font-size: 19px; font-weight: 400; line-height: 1; cursor: pointer; transform: translateY(-50%); }
.page-image-clear:hover { color: #a34343; background: #f8eaea; }
.page-image-clear[hidden] { display: none; }
.page-image-action { min-height: 45px; margin: 0 !important; padding-inline: 8px; font-size: 11px; }
.page-code-fields textarea { min-height: 170px; color: #e8edf0; border-color: #263641; background: #17232b; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 12px; line-height: 1.65; tab-size: 2; }
.page-code-fields textarea:focus { border-color: #8faec0; background: #122029; }
.panel-small-label { color: var(--muted); font-size: 12px; }

.member-table th:first-child, .member-table td:first-child { width: 42px; }
.member-table th:nth-child(2), .member-table td:nth-child(2) { width: 52px; }
.member-table th:nth-child(4), .member-table td:nth-child(4) { width: 100px; }
.member-table { width: 100%; min-width: 0; table-layout: fixed; }
.member-table th, .member-table td { min-width: 0; padding-inline: 10px; overflow: hidden; text-overflow: ellipsis; }
.member-table th:nth-child(1), .member-table td:nth-child(1) { width: 5%; }
.member-table th:nth-child(2), .member-table td:nth-child(2) { width: 5%; }
.member-table th:nth-child(3), .member-table td:nth-child(3) { width: 11%; padding-right: 5px; }
.member-table th:nth-child(4), .member-table td:nth-child(4) { width: 8%; padding-left: 12px; }
.member-table th:nth-child(5), .member-table td:nth-child(5) { width: 8%; padding-left: 14px; }
.member-table th:nth-child(6), .member-table td:nth-child(6) { width: 7%; padding-left: 14px; }
.member-table th:nth-child(7), .member-table td:nth-child(7) { width: 13%; padding-left: 16px; padding-right: 3px; }
.member-table th:nth-child(8), .member-table td:nth-child(8) { width: 11%; padding-left: 27px; padding-right: 2.5px; }
.member-table th:nth-child(9), .member-table td:nth-child(9) { width: 13%; padding-left: 29px; text-indent: 0; }
.member-table td:nth-child(9) { overflow: visible; }
.member-table td:nth-child(9) .member-institution-value { display: block; max-width: none; overflow: visible; text-overflow: clip; white-space: nowrap; }
.member-table th:nth-child(10), .member-table td:nth-child(10) { width: 19%; padding-left: 85px; }
.member-table input[type="checkbox"] { width: 17px; height: 17px; accent-color: var(--navy); }
.member-table .member-contact-link { color: var(--blue); }
.member-table .application-name-link { display: block; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.member-table .member-notes-preview { display: block; max-width: 100%; overflow: hidden; color: #747d84; text-overflow: ellipsis; white-space: nowrap; }
.member-category-badge { display: inline-flex; align-items: center; min-height: 25px; padding: 0 9px; border-radius: 999px; font-size: 10px; font-weight: 800; }
.member-category-regular { color: #69747b; background: #edf0f1; }
.member-category-vip { color: #8a5f00; background: #fff0b5; }
.member-category-chair { color: #7b5300; background: #ffedb5; }
.member-category-executive { color: #1f5a79; background: #dceef7; }
.member-category-advisor { color: #68518a; background: #eee5fb; }
.member-category-ambassador { color: #914d54; background: #f9e1e2; }
.member-category-celebrity { color: #a54b70; background: #f8dfeb; }
.member-category-influencer { color: #32735a; background: #dff1e6; }
.member-category-other { color: #667078; background: #e7ebed; }
.member-celeb-badge { display: inline-flex; align-items: center; min-height: 25px; padding: 0 9px; border-radius: 999px; color: #7b8388; background: #edf0f1; font-size: 10px; font-weight: 800; }
.member-celeb-badge.is-yes { color: #8a5f00; background: #fff0b5; }
.member-editor-card { padding: 34px; }

.application-mail-page { min-width: 0; background: #f3f5f6; color: var(--ink); }
.admin-embedded-panel { padding: 0 !important; overflow: visible; background: #f3f5f6; }
.admin-embedded-frame { display: block; width: 100%; height: 1520px; min-height: 0; overflow: hidden; border: 0; background: #f3f5f6; }
.admin-embedded-frame--application-mail { height: 1750px; }
.admin-embedded-frame--vip { min-height: 0; }
.application-mail-page.is-embedded .application-mail-topbar { display: none; }
.application-mail-page.is-embedded .application-mail-shell { width: 100%; max-width: none; margin: 0; }
.application-mail-page.is-embedded .application-mail-form-list { top: 0; }
.application-mail-topbar { position: sticky; z-index: 20; top: 0; display: grid; grid-template-columns: 180px 1fr 180px; align-items: center; min-height: 82px; padding: 0 38px; border-bottom: 1px solid var(--line); background: rgba(255,255,255,.96); backdrop-filter: blur(12px); }
.application-mail-topbar > a { color: #60707a; font-size: 12px; font-weight: 800; }
.application-mail-topbar > a:last-child { text-align: right; }
.application-mail-topbar > div { display: grid; gap: 5px; text-align: center; }
.application-mail-topbar > div span { color: #9aa2a7; font-size: 9px; font-weight: 800; letter-spacing: .18em; }
.application-mail-topbar > div strong { font-size: 18px; }
.application-mail-shell { display: grid; grid-template-columns: 270px minmax(0, 1fr); width: min(calc(100% - 48px), 1420px); margin: 24px auto 70px; gap: 18px; align-items: start; }
.application-mail-form-list { position: sticky; top: 106px; display: grid; gap: 7px; padding: 20px 14px; overflow: visible; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.application-mail-form-list h2 { margin: 0 8px 10px; font-size: 13px; }
.application-mail-form-list a { display: grid; gap: 4px; padding: 12px 13px; border: 1px solid transparent; border-radius: 9px; color: #53616a; }
.application-mail-form-list a:hover { background: #f5f7f8; }
.application-mail-form-list a.is-active { border-color: #c8d6de; background: #edf4f7; color: var(--navy); }
.application-mail-form-list a strong { overflow: hidden; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.application-mail-form-list a span { color: #9aa1a5; font-size: 9px; }
.application-mail-content { min-width: 0; }
.application-mail-heading { display: flex; align-items: center; justify-content: space-between; gap: 22px; min-height: 116px; padding: 25px 30px; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.application-mail-heading > div { display: grid; gap: 6px; }
.application-mail-heading span, .application-mail-card-heading > div span { color: #8c989f; font-size: 9px; font-weight: 800; letter-spacing: .15em; }
.application-mail-heading h1 { margin: 0; font-size: 25px; letter-spacing: -.04em; }
.application-mail-heading p { margin: 0; color: #7b858b; font-size: 11px; }
.application-mail-heading button, .application-mail-bottom-actions button { min-width: 110px; min-height: 43px; padding: 0 18px; border: 0; border-radius: 8px; background: var(--navy); color: #fff; font: inherit; font-size: 12px; font-weight: 800; cursor: pointer; }
.application-mail-message { margin: 12px 0 0; padding: 12px 15px; border-radius: 8px; font-size: 11px; }
.application-mail-message.is-success { border: 1px solid #bcdcc8; background: #eff9f2; color: #287447; }
.application-mail-message.is-error { border: 1px solid #e2c1c1; background: #fff1f1; color: #a44040; }
.application-mail-card { margin-top: 16px; padding: 28px 30px; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.application-mail-card-heading { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 18px; }
.application-mail-card-heading > div { display: grid; gap: 5px; }
.application-mail-card-heading h2 { margin: 0; font-size: 18px; }
.application-mail-toggle { display: inline-flex !important; grid-template-columns: none !important; align-items: center; gap: 7px !important; min-height: 36px; padding: 0 11px; border: 1px solid #d7dde0; border-radius: 8px; background: #fafbfb; font-size: 10px !important; }
.application-mail-toggle input, .application-mail-fields input { width: 17px; height: 17px; margin: 0; accent-color: var(--navy); }
.application-mail-note { margin: 0 0 18px; color: #778188; font-size: 11px; line-height: 1.65; }
.application-mail-card > label { display: grid; gap: 7px; margin-top: 16px; color: #4e5960; font-size: 11px; font-weight: 800; }
.application-mail-card > label small { color: #99a0a4; font-size: 9px; font-weight: 500; }
.application-mail-card input[type="text"], .application-mail-card textarea { width: 100%; padding: 11px 12px; border: 1px solid #d9dfe2; border-radius: 8px; outline: 0; color: #30383d; background: #fff; font: inherit; font-size: 12px; font-weight: 400; line-height: 1.6; }
.application-mail-card input[type="text"] { height: 43px; }
.application-mail-card textarea { resize: vertical; }
.application-mail-card input:focus, .application-mail-card textarea:focus { border-color: #66879a; box-shadow: 0 0 0 3px rgba(34,76,101,.08); }
.application-mail-fields { overflow-x: auto; border: 1px solid #e1e5e7; border-radius: 9px; }
.application-mail-fields table { width: 100%; min-width: 650px; border-collapse: collapse; }
.application-mail-fields th, .application-mail-fields td { padding: 12px 14px; border-bottom: 1px solid #e7eaec; font-size: 10px; text-align: left; }
.application-mail-fields tr:last-child td { border-bottom: 0; }
.application-mail-fields th { color: #7e888e; background: #f7f9fa; font-size: 9px; }
.application-mail-fields th:nth-last-child(-n+2), .application-mail-fields td:nth-last-child(-n+2) { width: 96px; text-align: center; }
.application-mail-fields td:first-child { display: grid; gap: 3px; }
.application-mail-fields td:first-child small { color: #9aa2a7; font-size: 9px; }
.application-mail-fields code, .application-mail-tokens code, .application-mail-note code { padding: 3px 6px; border-radius: 5px; color: #285c78; background: #edf4f7; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 9px; }
.application-mail-tokens { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; margin-top: 16px; }
.application-mail-tokens strong { margin-right: 4px; font-size: 10px; }
.application-mail-bottom-actions { display: flex; justify-content: flex-end; gap: 9px; margin-top: 16px; }
.application-mail-bottom-actions a { display: inline-flex; align-items: center; justify-content: center; min-width: 90px; min-height: 43px; border: 1px solid #d4dadd; border-radius: 8px; color: #667178; background: #fff; font-size: 11px; font-weight: 800; }
.application-mail-empty { padding: 70px 20px; border: 1px solid var(--line); border-radius: 12px; background: #fff; color: #899298; text-align: center; }

.standalone-setup-page { min-width: 0; background: #f2f4f5; }
.standalone-setup-shell { width: min(calc(100% - 32px), 620px); margin: 40px auto 70px; }
.standalone-setup-back { display: inline-flex; margin-bottom: 13px; color: #68747b; font-size: 11px; font-weight: 800; }
.standalone-setup-card { padding: 38px 40px; border: 1px solid var(--line); border-radius: 14px; background: #fff; box-shadow: 0 18px 55px rgba(30,42,48,.07); }
.standalone-setup-card h1 { margin: 8px 0 10px; font-size: 28px; letter-spacing: -.05em; }
.standalone-setup-card > p { margin: 0; color: #778187; font-size: 12px; line-height: 1.7; }
.standalone-setup-status { display: grid; gap: 4px; margin: 24px 0 20px; padding: 15px 16px; border: 1px solid #e2d3aa; border-radius: 9px; background: #fff9e9; }
.standalone-setup-status.is-ready { border-color: #bddcc8; background: #eff9f2; }
.standalone-setup-status strong { color: #745f22; font-size: 12px; }
.standalone-setup-status.is-ready strong { color: #287447; }
.standalone-setup-status span { color: #85847d; font-size: 10px; }
.standalone-data-status { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin: 0 0 20px; }
.standalone-data-status article { display: grid; gap: 5px; min-width: 0; padding: 13px 12px; border: 1px solid #e0e4e6; border-radius: 9px; background: #f8fafb; }
.standalone-data-status span { color: #7d888e; font-size: 9px; font-weight: 800; }
.standalone-data-status strong { color: var(--navy); font-size: 17px; }
.standalone-data-status small { overflow: hidden; color: #9aa1a5; font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.standalone-setup-message { margin: 0 0 16px !important; padding: 12px 14px; border-radius: 8px; }
.standalone-setup-message.is-success { border: 1px solid #bddcc8; background: #eff9f2; color: #287447; }
.standalone-setup-message.is-error { border: 1px solid #e2c1c1; background: #fff1f1; color: #a44040; }
.standalone-setup-card form { display: grid; gap: 14px; }
.standalone-setup-card form label { display: grid; gap: 7px; color: #4e5960; font-size: 11px; font-weight: 800; }
.standalone-setup-card form label small { color: #929ba0; font-size: 9px; font-weight: 500; }
.standalone-setup-card form input { width: 100%; height: 45px; padding: 0 12px; border: 1px solid #d9dfe2; border-radius: 8px; outline: 0; color: var(--ink); background: #fff; font: inherit; font-size: 13px; }
.standalone-setup-card form input:focus { border-color: #66879a; box-shadow: 0 0 0 3px rgba(34,76,101,.08); }
.standalone-setup-card form button { min-height: 48px; margin-top: 5px; border: 0; border-radius: 8px; color: #fff; background: var(--navy); font: inherit; font-size: 13px; font-weight: 800; cursor: pointer; }
.standalone-setup-help { margin-top: 18px !important; padding-top: 17px; border-top: 1px solid var(--line); font-size: 10px !important; }

.toggle-field { display: flex !important; grid-template-columns: none; align-items: center; gap: 10px !important; min-height: 45px; padding: 0 13px; border: 1px solid #dce0e3; border-radius: 10px; background: #fafbfa; }
.form-card .toggle-field input[type="checkbox"] { flex: 0 0 auto; width: 17px; height: 17px; margin: 0; accent-color: var(--navy); }
.toggle-field span { font-size: 12px; }

.inquiry-card { margin-bottom: 24px; padding: 0; overflow: hidden; }
.application-inbox-card { border: 1px solid var(--line); border-radius: var(--radius); background: var(--white); box-shadow: var(--shadow); }
.inquiry-toolbar { display: flex; align-items: end; padding: 21px 24px; border-bottom: 1px solid var(--line); }
.inquiry-toolbar label { display: grid; gap: 6px; color: var(--muted); font-size: 11px; font-weight: 700; }
.inquiry-toolbar select { width: 130px; height: 39px; padding: 0 10px; }
.application-inbox-toolbar { justify-content: space-between; gap: 20px; }
.application-inbox-filters, .application-inbox-actions { display: flex; align-items: end; gap: 14px; }
.application-inbox-actions { align-items: center; flex-wrap: wrap; }
.application-inbox-actions > span { margin-left: 0; }
.application-inbox-actions .button { min-height: 39px; }
.application-search-field { min-width: 200px; }
.application-search-field input { width: 100%; height: 39px; padding: 0 11px; border: 1px solid var(--line); border-radius: 9px; background: #fff; font-size: 12px; }
.inquiry-toolbar > span { margin-left: auto; color: var(--muted); font-size: 12px; }
.table-wrap { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; white-space: nowrap; }
th { padding: 15px 18px; color: #8d949a; background: #f8f9f8; font-size: 10px; text-align: left; letter-spacing: .05em; }
td { padding: 17px 18px; border-top: 1px solid #edf0f1; color: #4d575f; font-size: 12px; vertical-align: middle; }
td strong { display: block; margin-bottom: 4px; color: var(--ink); font-size: 13px; }
td small { color: #979da3; }
.message-preview { display: block; max-width: 220px; overflow: hidden; text-overflow: ellipsis; }
.status-badge { display: inline-flex; align-items: center; min-height: 25px; padding: 0 8px; border-radius: 999px; font-size: 10px; font-weight: 800; }
.status-new { color: #a06d00; background: #fff1b7; }
.status-in_progress { color: #145a7c; background: #dcedf5; }
.status-done { color: #39735c; background: #dcefe7; }
.row-button { min-height: 32px; padding: 0 10px; border: 1px solid var(--line); border-radius: 8px; background: #fff; font-size: 11px; cursor: pointer; }
.application-name-link { padding: 0; border: 0; color: var(--ink); background: transparent; font: inherit; font-weight: 700; text-align: left; text-decoration: underline; text-decoration-color: #c8ced1; text-underline-offset: 3px; cursor: pointer; }
.application-name-link:hover { color: var(--blue); text-decoration-color: currentColor; }
.application-social-link { color: var(--blue); text-decoration: underline; text-underline-offset: 3px; }
.application-social-link:hover { color: var(--navy); }
.empty-state { padding: 28px 0; color: #959ba1; font-size: 13px; text-align: center; }
.recent-row { display: grid; grid-template-columns: 88px 1fr auto; gap: 15px; align-items: center; padding: 14px 0; border-top: 1px solid var(--line); }
.recent-row:first-child { margin-top: 15px; }
.recent-row strong { font-size: 13px; }
.recent-row p { margin: 3px 0 0; font-size: 12px; }
.recent-row time { color: #969da2; font-size: 11px; }

.inquiry-dialog { width: min(620px, calc(100% - 32px)); max-height: calc(100vh - 40px); padding: 0; border: 0; border-radius: 20px; color: var(--ink); box-shadow: 0 30px 90px rgba(0,0,0,.28); }
.inquiry-dialog::backdrop { background: rgba(5,16,25,.6); backdrop-filter: blur(3px); }
.inquiry-dialog > form { position: absolute; z-index: 1; top: 16px; right: 16px; }
.inquiry-dialog > form button { width: 38px; height: 38px; border: 0; border-radius: 50%; background: #eff1f2; font-size: 22px; cursor: pointer; }
.inquiry-detail { padding: 34px; }
.inquiry-detail > span { color: #8d9499; font-size: 10px; font-weight: 800; letter-spacing: .15em; }
.inquiry-detail h2 { margin: 7px 50px 25px 0; font-size: 25px; }
.inquiry-meta { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; padding: 18px; border-radius: 13px; background: #f5f6f5; }
.inquiry-meta div { display: grid; gap: 4px; }
.inquiry-meta span { color: #92999f; font-size: 10px; }
.inquiry-meta strong, .inquiry-meta a { font-size: 13px; }
.inquiry-message { margin: 21px 0; padding: 19px; border: 1px solid var(--line); border-radius: 13px; white-space: pre-wrap; line-height: 1.7; }
.application-values { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 21px 0; padding: 18px; border-radius: 13px; background: #f5f6f5; }
.application-values div { display: grid; gap: 4px; min-width: 0; }
.application-values span { color: #92999f; font-size: 10px; }
.application-values strong { overflow-wrap: anywhere; font-size: 13px; white-space: pre-wrap; }
.application-edit-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 21px 0; padding: 18px; border-radius: 13px; background: #f5f6f5; }
.application-edit-field { display: grid; gap: 6px; min-width: 0; color: #92999f; font-size: 10px; }
.application-edit-field input, .application-edit-field textarea { width: 100%; padding: 10px 11px; border: 1px solid #dce0e3; border-radius: 8px; outline: 0; color: var(--ink); background: #fff; font: inherit; font-size: 12px; }
.application-edit-field textarea { min-height: 72px; resize: vertical; line-height: 1.5; }
.application-edit-field input:focus, .application-edit-field textarea:focus { border-color: #61839b; box-shadow: 0 0 0 3px rgba(21,60,88,.09); }
.inquiry-status-form { display: flex; gap: 9px; }
.inquiry-status-form select { flex: 1; height: 43px; padding: 0 12px; border: 1px solid var(--line); border-radius: 10px; }

.admin-toast { position: fixed; z-index: 60; right: 26px; bottom: 26px; max-width: 380px; padding: 15px 18px; border-radius: 12px; color: #fff; background: var(--navy); box-shadow: 0 16px 45px rgba(0,0,0,.2); opacity: 0; pointer-events: none; transform: translateY(12px); transition: .2s ease; }
.admin-refresh-button { white-space: nowrap; }
.admin-toast.is-visible { opacity: 1; transform: none; }
.admin-toast.is-error { background: #a53c3c; }
.loading-screen { position: fixed; z-index: 100; inset: 0; display: grid; place-content: center; justify-items: center; color: #fff; background: var(--navy); transition: opacity .3s, visibility .3s; }
.loading-screen div { width: 35px; height: 35px; border: 3px solid rgba(255,255,255,.2); border-top-color: var(--yellow); border-radius: 50%; animation: spin .8s linear infinite; }
.loading-screen p { margin-top: 16px; color: rgba(255,255,255,.7); font-size: 12px; }
.loading-screen.is-hidden { opacity: 0; visibility: hidden; }
@keyframes spin { to { transform: rotate(360deg); } }

.admin-login-page { min-height: 100vh; display: grid; place-items: center; padding: 24px; background: var(--paper); }
.admin-login-shell { width: min(100%, 430px); padding: 38px; border: 1px solid var(--line); border-radius: 22px; background: #fff; box-shadow: 0 20px 60px rgba(20,30,40,.1); }
.admin-login-logo { display: block; width: 190px; max-width: 100%; }
.admin-login-eyebrow { display: block; margin-top: 23px; color: #9299a0; font-size: 10px; font-weight: 800; letter-spacing: .24em; }
.admin-login-shell h1 { margin: 9px 0 10px; font-size: 31px; letter-spacing: -.04em; }
.admin-login-description { margin: 0 0 25px; color: var(--muted); font-size: 13px; line-height: 1.7; }
.admin-login-error { margin: 0 0 16px; padding: 12px 14px; border-radius: 9px; color: #a53c3c; background: #fff0f0; font-size: 12px; line-height: 1.5; }
.admin-login-form { display: grid; gap: 8px; }
.admin-login-form label { margin-top: 8px; color: #4e5861; font-size: 12px; font-weight: 700; }
.admin-login-form input { width: 100%; height: 47px; padding: 0 13px; border: 1px solid #dce0e3; border-radius: 10px; outline: 0; background: #fafbfa; }
.admin-login-form input:focus { border-color: #61839b; background: #fff; box-shadow: 0 0 0 3px rgba(21,60,88,.09); }
.admin-login-form button { min-height: 48px; margin-top: 17px; border: 0; border-radius: 10px; color: #fff; background: var(--navy); font-size: 14px; font-weight: 800; cursor: pointer; }
.admin-login-home { display: block; margin-top: 19px; color: var(--blue); text-align: center; font-size: 12px; font-weight: 700; }

@media (max-width: 1080px) {
  .admin-sidebar { width: 220px; }
  .admin-main { margin-left: 220px; }
  .stat-grid { grid-template-columns: 1fr 1fr; }
  .field-grid.three { grid-template-columns: 1fr 1fr; }
  .media-library-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .media-video-settings-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 820px) {
  .application-mail-topbar { grid-template-columns: auto 1fr auto; min-height: 68px; padding: 0 16px; gap: 10px; }
  .application-mail-topbar > div span { display: none; }
  .application-mail-topbar > div strong { font-size: 15px; }
  .application-mail-topbar > a { font-size: 10px; }
  .application-mail-shell { display: block; width: calc(100% - 24px); margin: 12px auto 45px; }
  .application-mail-form-list { position: static; display: flex; flex-wrap: wrap; margin-bottom: 12px; padding: 10px; overflow: visible; }
  .application-mail-form-list h2 { display: none; }
  .application-mail-form-list a { flex: 0 0 160px; }
  .application-mail-heading { min-height: 0; padding: 20px 18px; }
  .application-mail-heading h1 { font-size: 20px; }
  .application-mail-heading p { display: none; }
  .application-mail-heading button { min-width: 78px; }
  .application-mail-card { padding: 22px 17px; }
  .application-mail-card-heading { align-items: flex-start; }
  .application-mail-card-heading h2 { font-size: 16px; }
  .application-mail-toggle { flex: 0 0 auto; }
  .application-mail-bottom-actions { position: sticky; bottom: 0; padding: 10px 0; background: rgba(243,245,246,.94); }
  .admin-sidebar { width: min(82vw, 280px); transform: translateX(-102%); transition: transform .25s ease; }
  .admin-sidebar.is-open { transform: none; box-shadow: 20px 0 60px rgba(0,0,0,.22); }
  .admin-main { --admin-gutter: 18px; margin-left: 0; }
  .sidebar-toggle { display: inline-grid; place-items: center; }
  .admin-topbar { min-height: 74px; padding-inline: var(--admin-gutter); }
  .admin-topbar > div:first-of-type span { display: none; }
  .admin-topbar > div:first-of-type strong { font-size: 22.1px; }
  .admin-topbar .topbar-actions > [data-save] { display: none !important; }
  .admin-content { width: 100%; padding: 17px var(--admin-gutter) 90px; }
  .panel-heading { display: block; }
  .panel-heading > p { margin-top: 13px; }
  .dashboard-grid, .form-layout, .settings-grid, .section-editor-grid, .application-settings-layout { grid-template-columns: 1fr; }
  .application-library { position: static; }
  .repeater--cards, .repeater--metrics, .repeater--videos { grid-template-columns: 1fr; }
  .post-image-seo-grid { grid-template-columns: 1fr; }
  .post-body-grid { grid-template-columns: 1fr; }
  .post-image-section { grid-template-columns: 1fr; }
  .page-media-grid { grid-template-columns: 1fr; }
  .media-library-heading { display: block; }
  .media-video-settings-heading { display: flex; }
  .media-upload-button { margin-top: 20px; }
  .media-library-toolbar .media-upload-button { margin-top: 0; }
  .media-library-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .page-editor-card { padding: 24px; }
  .page-editor-columns { grid-template-columns: 1fr; gap: 0; }
  .page-composition-fields { padding-right: 0; border-right: 0; }
  .page-seo-fields { margin-top: 26px; padding-top: 25px; border-top: 1px solid var(--line); }
  .member-editor-card { padding: 24px; }
  .dashboard-settings__group > summary { padding: 20px 24px; }
  .dashboard-settings__actions { padding: 0 24px 24px; }
  .dashboard-settings > summary { padding: 20px 24px; }
  .admin-dashboard .dashboard-settings-save { min-height: 33.8px; padding-inline: 12px; font-size: 14.3px; }
  .translation-language-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-panel="members"] .post-toolbar > div:last-child { gap: 14px; }
  .member-table th:nth-child(2), .member-table td:nth-child(2),
  .member-table th:nth-child(4), .member-table td:nth-child(4),
  .member-table th:nth-child(5), .member-table td:nth-child(5),
  .member-table th:nth-child(6), .member-table td:nth-child(6),
  .member-table th:nth-child(7), .member-table td:nth-child(7),
  .member-table th:nth-child(10), .member-table td:nth-child(10) { display: none; }
  .member-table th, .member-table td { padding-inline: 8px; }
  .member-table th:nth-child(1), .member-table td:nth-child(1) { width: 40px; }
  .member-table th:nth-child(3), .member-table td:nth-child(3),
  .member-table th:nth-child(8), .member-table td:nth-child(8),
  .member-table th:nth-child(9), .member-table td:nth-child(9) { width: 32%; }
  .member-table th:nth-child(3), .member-table td:nth-child(3) { padding-right: 3px; }
  .member-table th:nth-child(8), .member-table td:nth-child(8) { padding-left: 0; padding-right: 3px; }
  .member-table th:nth-child(9), .member-table td:nth-child(9) { padding-left: 0; }
  .member-table th:nth-child(9) { font-size: 0; }
  .member-table th:nth-child(9)::after { content: "소속"; font-size: 10px; }
}

@media (max-width: 560px) {
  .standalone-setup-shell { width: calc(100% - 24px); margin-top: 18px; }
  .standalone-setup-card { padding: 28px 20px; }
  .standalone-setup-card h1 { font-size: 24px; }
  .standalone-data-status { grid-template-columns: 1fr; }
  .admin-login-shell { padding: 28px 22px; }
  .admin-login-shell h1 { font-size: 27px; }
  .topbar-actions .button--ghost { display: none; }
  .topbar-actions .admin-refresh-button { display: inline-flex; }
  .topbar-actions .admin-home-button { display: inline-flex; width: 39px; padding: 0; }
  .admin-home-button span { display: none; }
  .topbar-actions .button { min-height: 39px; padding-inline: 13px; }
  .stat-grid { gap: 9px; }
  .stat-grid article { min-height: 88px; padding: 14px 15px; }
  .admin-dashboard .stat-grid strong { margin: 8px 0 4px; font-size: 26px; }
  .admin-card { padding: 22px; border-radius: 15px; }
  .translation-settings-heading { display: grid; gap: 15px; }
  .translation-settings-heading .button { width: 100%; }
  .translation-language-grid { grid-template-columns: 1fr; }
  .field-row, .field-grid, .field-grid.three { grid-template-columns: 1fr; gap: 0; }
  .page-table .post-title-cell, .posts-table .post-title-cell { min-width: 0; }
  .page-table .post-title-cell strong, .posts-table .post-title-cell strong { display: block; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .page-table th:nth-child(3), .page-table td:nth-child(3), .posts-table th:nth-child(3), .posts-table td:nth-child(3) { width: 50px; min-width: 50px; max-width: 50px; padding-inline: 4px; }
  .post-date-cell { width: 50px; min-width: 50px; max-width: 50px; padding-inline: 4px; text-align: center; }
  .post-date-cell time { display: block; width: 100%; overflow: hidden; text-align: center; font-size: 10px; font-weight: 800; letter-spacing: -.04em; text-overflow: clip; }
  .post-date-full { display: none; }
  .post-date-compact { display: inline; }
  .admin-datetime-field { overflow: visible !important; }
  .admin-datetime-shell { position: relative; display: block; width: 100%; min-width: 0; height: 45px; overflow: hidden; border: 1px solid #dce0e3; border-radius: 10px; background: #fafbfa; transition: border-color .15s, box-shadow .15s, background .15s; }
  .admin-datetime-shell:focus-within { border-color: #61839b; background: #fff; box-shadow: 0 0 0 3px rgba(21,60,88,.09); }
  .admin-datetime-display { display: flex; align-items: center; width: 100%; height: 43px; padding: 0 13px; overflow: hidden; color: var(--ink); font-size: 12px; font-weight: 700; line-height: 43px; letter-spacing: normal; white-space: nowrap; text-align: left; }
  .post-editor-card .admin-datetime-shell > input[type="datetime-local"], .page-editor-card .admin-datetime-shell > input[type="datetime-local"] { position: absolute; z-index: 1; inset: 0; display: block; box-sizing: border-box; width: 100% !important; inline-size: 100% !important; min-width: 0 !important; min-inline-size: 0 !important; max-width: 100% !important; max-inline-size: 100% !important; height: 43px; margin: 0; padding: 0 !important; border: 0 !important; border-radius: 0 !important; opacity: 0; background: transparent !important; cursor: pointer; }
  .seo-image-upload-row { grid-template-columns: 1fr; gap: 0; }
  .seo-image-upload-button { justify-self: start; }
  .seo-image-picker-button { justify-self: start; margin-top: 10px; }
  .media-library-card { padding: 22px; }
  .media-video-settings-card { padding: 22px; }
  .media-save-mobile { display: inline-flex; margin-top: 12px; }
  .media-video-settings-grid { grid-template-columns: 1fr; }
  .media-library-grid { grid-template-columns: 1fr; }
  .media-library-grid.is-list-view { grid-template-columns: 1fr; }
  .media-library-grid.is-list-view .media-library-item { grid-template-columns: 76px minmax(0, 1fr) auto; }
  .media-library-grid.is-list-view .media-library-thumb { width: 76px; height: 54px; }
  .media-library-grid.is-list-view .media-library-meta { padding-inline: 10px; }
  .media-library-grid.is-list-view .media-library-actions { padding-inline: 7px; }
  .media-picker-content { padding: 28px 20px; }
  .media-preview-content { padding: 28px 20px; }
  .media-crop-content { padding: 28px 20px; }
  .media-crop-stage { min-height: 220px; padding: 10px; }
  .media-crop-controls { grid-template-columns: auto 1fr auto; gap: 8px; }
  .media-crop-controls > small { grid-column: 1 / -1; }
  .recent-row { grid-template-columns: 72px 1fr; }
  .recent-row time { display: none; }
  .inquiry-detail { padding: 28px 20px; }
  .inquiry-meta { grid-template-columns: 1fr; }
  .application-values { grid-template-columns: 1fr; }
  .application-edit-fields { grid-template-columns: 1fr; }
  .inquiry-toolbar { flex-wrap: wrap; gap: 10px; }
  .application-inbox-toolbar { align-items: stretch; flex-direction: column; }
  .application-inbox-filters, .application-inbox-actions { width: 100%; }
  .application-inbox-actions { align-items: center; justify-content: flex-end; }
  .application-search-field { flex: 1 1 100%; min-width: 0; }
  .post-toolbar { align-items: stretch; flex-direction: column; }
  .post-toolbar > div:last-child { justify-content: space-between; }
  [data-panel="members"] .post-toolbar { align-items: stretch; }
  [data-panel="members"] .post-toolbar > div:last-child { width: 100%; justify-content: flex-end; gap: 14px; }
  .media-library-toolbar { flex-wrap: nowrap; justify-content: flex-end; gap: 4px; margin-top: 16px; }
  .media-toolbar-actions { display: grid; flex: 1 1 auto; grid-template-columns: minmax(0, 1fr) minmax(0, .7fr) minmax(0, 1.15fr); width: auto; gap: 6px; }
  .media-toolbar-actions > * { min-width: 0; padding-inline: 4px; font-size: 11px; white-space: nowrap; }
  .media-select-all, .media-delete-selected { min-width: 0; }
  .media-view-button { padding-inline: 8px; font-size: 11px; }
  .post-filters { display: grid; grid-template-columns: 1fr 1fr; }
  .post-toolbar select { width: 100%; min-width: 0; }
  .post-editor-heading { align-items: center; justify-content: space-between; }
  .post-editor-heading-actions { gap: 6px; }
  .post-editor-card { padding: 22px; }
  .post-image-preview { min-height: 130px; max-height: 150px; }
  .post-image-preview img { max-height: 148px; }
  .rich-editor { min-height: 340px; padding: 17px; }
  .post-editor-actions { flex-wrap: wrap; }
}
