body { font-family: Pretendard, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-weight: 400; }
.login h1, .admin-intro h1 { font-weight: 800; }
.kicker { font-family: Pretendard, sans-serif; font-weight: 600; letter-spacing: .08em; }
.editor-language { display: flex; gap: 8px; margin: 0 0 28px; }
.editor-language button { appearance: none; border: 1px solid var(--line); border-radius: 999px; background: transparent; color: var(--ink); padding: 8px 14px; font-weight: 700; cursor: pointer; }
.editor-language button.is-active { background: var(--ink); border-color: var(--ink); color: var(--paper); }
.admin-section-tabs { position: sticky; top: 12px; z-index: 2; display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 26px; padding: 10px; border: 1px solid var(--line); background: rgba(250,250,248,.94); backdrop-filter: blur(12px); }
.admin-section-tabs button { appearance: none; border: 1px solid var(--line); border-radius: 999px; background: transparent; color: var(--ink); padding: 9px 14px; font-size: 12px; font-weight: 800; cursor: pointer; }
.admin-section-tabs button.is-active { background: var(--ink); border-color: var(--ink); color: var(--paper); }
.editor-section[hidden] { display: none; }
.shared-media-note { margin: -12px 0 28px; color: rgba(29, 28, 28, .68); font-size: 13px; line-height: 1.5; }
.media-aspect { width: auto; min-width: 116px; font-size: 11px; }
.media-aspect select { width: 100%; border: 1px solid var(--line); background: transparent; color: var(--ink); padding: 8px; }
.work-item { align-items: flex-start; }
.work-item textarea { min-height: 44px; max-width: 260px; }
.media-upload { display: grid; grid-template-columns: auto minmax(180px, 1fr) minmax(150px, 1fr) auto; gap: 12px; align-items: center; width: min(100%, 860px); padding: 14px; border: 1px solid var(--line); background: rgba(29, 28, 28, .025); }
.media-upload input[type="file"] { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.file-picker { display: inline-flex; align-items: center; width: auto; min-height: 42px; cursor: pointer; }
.file-picker span { display: inline-flex; align-items: center; min-height: 42px; padding: 0 14px; border: 1px solid var(--ink); border-radius: 999px; font-size: 12px; font-weight: 800; white-space: nowrap; }
.upload-file-meta { display: grid; gap: 3px; min-width: 0; }
.upload-file-meta strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; }
.upload-file-meta span { color: rgba(29, 28, 28, .62); font-size: 12px; }
.upload-progress { display: grid; grid-template-columns: 1fr auto; gap: 8px; align-items: center; min-width: 0; color: rgba(29, 28, 28, .62); font-size: 12px; font-variant-numeric: tabular-nums; }
.upload-progress progress { width: 100%; height: 8px; accent-color: var(--ink); }
.media-upload .upload-button { margin: 0; white-space: nowrap; }
.media-upload[data-upload-state="selected"] { border-color: rgba(29, 28, 28, .55); background: rgba(29, 28, 28, .045); }
.media-upload[data-upload-state="uploading"] { border-color: var(--ink); background: rgba(29, 28, 28, .07); }
.media-upload[data-upload-state="complete"] { border-color: rgba(29, 28, 28, .5); }
.media-upload[data-upload-state="complete"] .upload-file-meta span { color: #176b41; }
.media-upload[data-upload-state="error"] { border-color: #a82b2b; }
.media-upload[data-upload-state="error"] .upload-file-meta span { color: #a82b2b; }
.work-upload-controls { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; width: 100%; }
.work-upload-controls .media-upload { grid-column: 1 / -1; width: 100%; }
.service-media-editor { display: grid; gap: 12px; padding: 16px; border: 1px solid var(--line); }
.media-choice { margin: 0; color: rgba(29, 28, 28, .65); font-size: 12px; font-weight: 800; letter-spacing: .02em; }
.youtube-link-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.youtube-link-actions button { width: auto; margin: 0; padding: 9px 13px; font-size: 12px; }
.youtube-link-actions .ghost-action { color: rgba(29, 28, 28, .72); background: transparent; }
.media-current-label { font-size: 11px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.media-current { display: grid; grid-template-columns: 112px minmax(0, 1fr); grid-template-rows: auto auto auto; column-gap: 12px; align-items: center; min-height: 78px; padding: 10px; border: 1px solid var(--line); color: var(--ink); text-decoration: none; }
.media-current > video, .media-current > img { grid-row: 1 / -1; width: 112px; height: 64px; object-fit: cover; background: var(--ink); }
.media-current span { font-size: 11px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.media-current strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; }
.media-current small { color: rgba(29, 28, 28, .62); font-size: 11px; }
.media-current.is-empty { grid-template-columns: 1fr; grid-template-rows: auto auto; min-height: 0; color: rgba(29, 28, 28, .54); }
.media-current.is-empty strong { color: rgba(29, 28, 28, .52); }
.media-current-youtube img { object-fit: cover; }
.work-list { gap: 18px; }
.work-item { display: grid; gap: 16px; padding: 18px 0 0; }
.work-item-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.work-item-head p { margin: 0; font-size: 12px; font-weight: 800; letter-spacing: .06em; }
.work-order-controls { display: flex; gap: 6px; align-items: center; }
.work-order-controls button { min-width: 34px; height: 34px; border: 1px solid var(--ink); border-radius: 999px; background: transparent; font-weight: 800; cursor: pointer; }
.work-order-controls button:disabled { opacity: .3; cursor: default; }
.work-order-controls .remove-work { width: auto; padding: 0 12px; margin: 0; }
.work-current-media { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.work-current-media .media-current { grid-template-columns: 88px minmax(0, 1fr); }
.work-current-media .media-current > video, .work-current-media .media-current > img { width: 88px; height: 54px; }
.work-copy-fields { display: grid; grid-template-columns: minmax(180px, .7fr) minmax(280px, 1.3fr); gap: 10px; }
.work-copy-fields textarea { max-width: none; }
.work-media-fields { display: grid; gap: 10px; }
.inquiry-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0 0 14px; }
.inquiry-toolbar p { margin: 0; color: rgba(29, 28, 28, .62); font-size: 13px; }
.inquiry-toolbar button, .inquiry-actions button { width: auto; margin: 0; padding: 9px 13px; font-size: 12px; }
.inquiry-list { display: grid; gap: 12px; }
.inquiry-card { padding: 18px; border: 1px solid var(--line); background: rgba(29, 28, 28, .018); }
.inquiry-card.is-unread { border-left: 4px solid var(--ink); background: rgba(29, 28, 28, .055); }
.inquiry-card-head { display: flex; justify-content: space-between; gap: 16px; align-items: flex-start; }
.inquiry-card-head h3 { margin: 4px 0 0; font-size: 18px; }
.inquiry-card-head time, .inquiry-state { margin: 0; color: rgba(29, 28, 28, .62); font-size: 11px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.inquiry-email { display: inline-block; margin-top: 12px; color: var(--ink); font-size: 13px; text-decoration: underline; text-underline-offset: 3px; }
.inquiry-message { margin: 14px 0; color: rgba(29, 28, 28, .76); font-size: 14px; line-height: 1.65; }
.inquiry-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.inquiry-actions .danger-action { border-color: #a82b2b; color: #a82b2b; }
@media(max-width:760px) { .work-item textarea { max-width: none; } .media-upload { grid-template-columns: 1fr; width: 100%; } .upload-progress { grid-template-columns: 1fr auto; } .work-upload-controls, .work-current-media, .work-copy-fields { grid-template-columns: 1fr; } .media-current { grid-template-columns: 88px minmax(0, 1fr); } .media-current > video, .media-current > img { width: 88px; height: 54px; } .youtube-link-actions button { flex: 1 1 auto; } .inquiry-toolbar, .inquiry-card-head { align-items: flex-start; flex-direction: column; } .admin-section-tabs { top: 6px; margin-bottom: 20px; padding: 8px; } .admin-section-tabs button { padding: 8px 12px; } }
