:root{--bg:#f3f1ec;--card:#fff;--ink:#1d241f;--sub:#626b64;--line:#dfdbd2;--soft:#ebe8e1;--brand:#24452c;--brand-ink:#fff;--ok:#2d7a4b;--warn:#b4532c;--wait:#8a6d1f;--shadow:0 1px 2px rgba(20,30,24,.06)}
@media (prefers-color-scheme:dark){:root{--bg:#121513;--card:#1a1f1b;--ink:#e6ebe7;--sub:#9aa69e;--line:#2b332d;--soft:#222924;--brand:#7fbf8f;--brand-ink:#0f1a12;--ok:#72c592;--warn:#e7997a;--wait:#d8bb6a;--shadow:none}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.6 -apple-system,"Apple SD Gothic Neo",Pretendard,"Noto Sans KR",sans-serif}
a{color:var(--brand)}
.wrap{max-width:1200px;margin:0 auto;padding:0 16px}
header.top{background:var(--card);border-bottom:1px solid var(--line)}
header.top .wrap{display:flex;align-items:center;gap:12px;height:60px}
.brand{text-decoration:none;color:var(--ink);font-weight:300;letter-spacing:.04em;font-size:18px}
.brand b{font-weight:800}.brand small{font-size:13px;color:var(--sub);letter-spacing:0;margin-left:8px;font-weight:500}
.sp{flex:1}
.btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:10px;padding:8px 14px;font:inherit;font-size:14px;cursor:pointer;text-decoration:none;white-space:nowrap}
.btn:hover{border-color:var(--brand)}
.btn.pri{background:var(--brand);color:var(--brand-ink);border-color:var(--brand);font-weight:600}
.btn.ghost{border-color:transparent;background:transparent;color:var(--sub)}
.btn.sm{padding:5px 10px;font-size:13px;border-radius:8px}
h1{font-size:26px;line-height:1.3;margin:28px 0 6px;letter-spacing:-.02em}
.muted{color:var(--sub)}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}
.badge{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:600;border-radius:999px;padding:2px 10px;border:1px solid currentColor;white-space:nowrap}
.badge.pending{color:var(--wait)}.badge.approve{color:var(--ok)}.badge.revise{color:var(--warn)}
.notice{display:flex;gap:10px;align-items:flex-start;background:color-mix(in srgb,var(--wait) 10%,var(--card));border:1px solid color-mix(in srgb,var(--wait) 35%,transparent);border-radius:12px;padding:12px 14px;font-size:14px;margin:14px 0 22px}
input[type=text],input[type=password],textarea{width:100%;font:inherit;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:10px;padding:10px 12px}
input:focus,textarea:focus{outline:2px solid color-mix(in srgb,var(--brand) 35%,transparent);border-color:var(--brand)}
textarea{resize:vertical;min-height:84px;line-height:1.55}
label.f{display:block;font-size:13px;font-weight:600;margin:12px 0 6px}
.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--ink);color:var(--bg);padding:10px 16px;border-radius:10px;font-size:14px;opacity:0;transition:opacity .2s;pointer-events:none;z-index:50}
.toast.on{opacity:1}

nav.tabs{display:flex;gap:4px;margin-left:18px}nav.tabs a{padding:6px 14px;border-radius:999px;text-decoration:none;color:var(--sub);font-size:14px;font-weight:600}nav.tabs a:hover{color:var(--ink)}nav.tabs a.on{background:var(--brand);color:var(--brand-ink)}
