:root {
  --accent: #f97316;
  --accent-dark: #ea580c;
  --accent-soft: #fff1e7;
  --ink: #202124;
  --muted: #777b83;
  --line: #ececef;
  --surface: #ffffff;
  --background: #f7f7f8;
  --success: #16845b;
  --success-soft: #e7f6ee;
  --radius: 20px;
  --shadow: 0 4px 20px rgba(27, 31, 35, .045);
  font-family: -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", sans-serif;
}
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; color: var(--ink); background: var(--background); }
button, input, select { font: inherit; }
button { cursor: pointer; }
button:focus-visible, input:focus-visible, select:focus-visible { outline: 3px solid rgba(249,115,22,.3); outline-offset: 2px; }
button:disabled { opacity: .5; cursor: not-allowed; }
h1,h2,h3,p { margin-top: 0; }
h1 { margin-bottom: 0; font-size: 22px; letter-spacing: -.7px; }
h2 { margin-bottom: 8px; font-size: 25px; letter-spacing: -.9px; }
h3 { margin-bottom: 0; font-size: 16px; letter-spacing: -.3px; }
p { line-height: 1.5; }
.muted { color: var(--muted); }
.small { font-size: 12px; }
.tiny { font-size: 11px; line-height: 1.55; }
.eyebrow { margin-bottom: 7px; color: var(--accent-dark); font-size: 10px; font-weight: 800; letter-spacing: 1.5px; }
.card { background: var(--surface); border: 1px solid rgba(0,0,0,.025); border-radius: var(--radius); box-shadow: var(--shadow); }
.pill { display: inline-flex; align-items: center; justify-content: center; padding: 7px 10px; border-radius: 999px; background: var(--accent-soft); color: var(--accent-dark); font-size: 11px; font-weight: 750; white-space: nowrap; }
.pill.neutral { color: #62666e; background: #f0f1f3; }
.primary-button, .secondary-button, .danger-button { min-height: 48px; border: 0; border-radius: 14px; padding: 0 16px; font-weight: 750; }
.primary-button { background: var(--accent); color: #fff; box-shadow: 0 5px 12px rgba(249,115,22,.18); }
.primary-button:active { background: var(--accent-dark); transform: translateY(1px); }
.secondary-button { background: #f1f2f4; color: var(--ink); }
.danger-button { background: #fff0ef; color: #c43d35; }
.full-button { width: 100%; }
.text-button { border: 0; background: transparent; color: var(--accent-dark); font-size: 12px; font-weight: 750; padding: 8px 0 8px 8px; }
.progress-track { width: 100%; height: 8px; overflow: hidden; border-radius: 999px; background: #f0f0f2; }
.progress-fill { height: 100%; width: 0; border-radius: inherit; background: var(--accent); transition: width .25s ease; }
.split-meta { display: flex; align-items: center; justify-content: space-between; gap: 12px; color: var(--muted); font-size: 12px; }
.section-title-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 25px 2px 12px; }
.notice-box { padding: 13px 14px; border-radius: 13px; background: #fff7ed; color: #85512d; font-size: 12px; line-height: 1.6; }

/* Operational MVP additions */
[hidden]{display:none!important}.check-field{display:flex;align-items:center;gap:9px;margin:12px 0;color:var(--text,#242424);font-size:14px}.check-field input{accent-color:var(--accent)}
.history-action{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:10px}.history-action button{border:0;border-radius:10px;padding:8px 11px;font-weight:700;cursor:pointer}.history-action .approve{background:#fff0e5;color:#c2410c}.history-action .reject{background:#f3f4f6;color:#4b5563}.history-row{gap:12px}.history-row>div:first-child{min-width:0}.history-title{overflow-wrap:anywhere}.status-chip{display:inline-flex;padding:3px 8px;border-radius:999px;background:#fff0e5;color:#c2410c;font-size:11px;font-weight:700}.empty-state{padding:18px;text-align:center;color:#888;font-size:14px}

/* Admin category accordions and bottom image banner */
.admin-template-group{border:1px solid var(--line);border-radius:14px;overflow:hidden;margin:10px 0;background:#fff}
.admin-template-group-heading{width:100%;border:0;background:#fafafa;padding:13px 14px;display:flex;align-items:center;justify-content:space-between;text-align:left;color:var(--ink)}
.admin-template-group-heading span:first-child{display:flex;flex-direction:column;gap:4px}
.admin-template-group-heading small{font-size:12px;color:var(--muted)}
.admin-template-group-body{padding:0 10px 8px}
.public-banner-wrap{margin:24px 0 8px;overflow:hidden;border-radius:14px}
.public-banner-wrap a{display:block}
.public-banner-wrap img{display:block;width:100%;height:auto;max-height:180px;object-fit:cover}
.banner-preview-wrap{margin:12px 0;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.banner-preview-wrap img{display:block;width:100%;height:auto;max-height:180px;object-fit:contain;background:#f5f5f5}
