:root{color-scheme:light;--bg: #f5f1e8;--bg2: #e8efe9;--card: rgba(255, 255, 255, .78);--text: #132019;--muted: #5d6c63;--accent: #1f6f5b;--accent2: #c4812b;--border: rgba(19, 32, 25, .12)}*{box-sizing:border-box}html,body,#root{width:100%;min-height:100%}body{margin:0;font-family:Noto Sans KR,Apple SD Gothic Neo,sans-serif;color:var(--text);background:radial-gradient(circle at top left,var(--bg) 0%,var(--bg2) 55%,#d8e0dd 100%);overflow-x:hidden}.page{max-width:1420px;margin:0 auto;padding:24px clamp(14px,2vw,28px) 56px}.workspace{display:grid;grid-template-columns:minmax(240px,280px) minmax(0,1fr);gap:18px;align-items:start;min-width:0}.sidebar{position:sticky;top:20px;display:grid;gap:14px;padding:18px;border:1px solid var(--border);border-radius:26px;background:#ffffffa3;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 20px 60px #19241e14;min-width:0}.sidebarBrand h1{font-size:32px;margin:0}.sidebarSub{margin:8px 0 0;color:var(--muted)}.sidebarNav{display:grid;gap:10px}.sidebarLink{display:grid;gap:4px;text-align:left;background:#ffffffb3;color:var(--text);border:1px solid var(--border);padding:14px 16px;border-radius:18px}.sidebarLink span{font-weight:700}.sidebarLink small{color:var(--muted)}.sidebarLink.active{background:linear-gradient(135deg,#1f6f5b2e,#c4812b29);border-color:#1f6f5b59;box-shadow:inset 0 0 0 1px #ffffff73,0 12px 30px #1f6f5b1f}.sidebarLink:hover{transform:translate(2px)}.sidebarCard{padding:16px;border-radius:18px;border:1px solid var(--border);background:#ffffffa6;display:grid;gap:8px}.sidebarCard span{color:var(--muted);font-size:12px}.sidebarCard strong{font-size:18px}.sidebarCard p{margin:0;color:var(--muted);word-break:break-all}.workspaceMain{display:grid;gap:18px;min-width:0}.sidebarTitle{display:inline-flex;align-items:center;gap:10px}.sidebarTitle i{font-style:normal;width:22px;height:22px;display:inline-grid;place-items:center;border-radius:8px;background:#1f6f5b1f;color:var(--accent)}.sidebarTip{padding:12px 14px;border-radius:16px;background:linear-gradient(135deg,#1f6f5b1a,#c4812b1a);color:var(--muted);font-size:13px;line-height:1.5}.hero{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:24px;flex-wrap:wrap}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--accent);font-size:12px;margin:0 0 10px}h1{margin:0;font-size:clamp(34px,6vw,56px);line-height:1.05}.lead{max-width:720px;color:var(--muted);font-size:18px;line-height:1.6}.panel.status{min-width:240px;max-width:100%;padding:18px;border:1px solid var(--border);border-radius:20px;background:var(--card);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.panel.status span{display:block;color:var(--muted);font-size:12px;margin-bottom:8px}.panel.status strong{word-break:break-all}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px}.card,.panel{border:1px solid var(--border);border-radius:24px;background:var(--card);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 20px 60px #19241e14}.card{padding:20px;min-width:0}.dashboardGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;min-width:0}.dashboardCard{min-height:150px;display:grid;align-content:start;gap:12px}.dashboardCard span{color:var(--muted);font-size:13px}.dashboardCard strong{font-size:34px;line-height:1}.dashboardCard p{margin:0;color:var(--muted);line-height:1.6}.dashboardCard.spotlight{background:linear-gradient(135deg,#1f6f5b24,#c4812b1a)}.cardHero{position:relative;overflow:hidden}.cardHeading{display:flex;align-items:start;justify-content:space-between;gap:16px;margin-bottom:8px}.cardHeading h2{margin:0;font-size:22px}.badge{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:#1f6f5b1f;color:var(--accent);font-size:12px;font-weight:700;white-space:nowrap}.badge.subtle{background:#ffffffb3;color:var(--muted);border:1px solid var(--border)}.form{display:grid;gap:10px}label{font-size:13px;color:var(--muted)}input,select,button{border-radius:14px;border:1px solid var(--border);padding:12px 14px;font:inherit}.emailComposer{display:flex;gap:10px;align-items:center;min-width:0}.emailComposer input{flex:1;min-width:0}.emailComposer span{padding:12px 14px;border-radius:14px;border:1px solid var(--border);background:#ffffff9e;color:var(--muted);white-space:nowrap}.fieldHint{color:var(--muted);font-size:12px;margin-top:-4px}textarea{border-radius:14px;border:1px solid var(--border);padding:12px 14px;font:inherit;resize:vertical;min-height:160px}button{background:linear-gradient(135deg,var(--accent),#2c8a72);color:#fff;cursor:pointer;border:0}button:hover{opacity:.95}.ghost{background:#eef3ef;color:var(--text)}.danger{background:#b94545;color:#fff}.rowActions{display:flex;gap:8px;flex-wrap:wrap}.alert{margin:18px 0;padding:14px 16px;border-radius:16px}.alert.ok{background:#e5f5ec;color:#1d5d46}.alert.error{background:#fde8e8;color:#9a1d1d}.setupBox{margin-top:14px;display:grid;gap:8px;color:var(--muted)}.hint{color:var(--muted);font-size:13px;margin-top:10px}.guideGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.guideItem{padding:16px;border:1px solid var(--border);border-radius:18px;background:#ffffff8c}.guideItem h3{margin:0 0 10px}.guideItem p{margin:6px 0;color:var(--muted)}.guideItem button{margin-top:10px}.loginCard{max-width:460px;margin:80px auto 0}.resetCard{max-width:540px;margin:80px auto 0}.loginAlert{margin:0 0 14px;padding:14px 16px;border-radius:16px;background:#fde8e8;color:#9a1d1d;font-weight:700;font-size:16px}.modalBackdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0c120e73;display:grid;place-items:center;padding:20px;z-index:50}.modalCard{width:min(560px,100%);border-radius:28px;background:linear-gradient(180deg,#fffffffa,#f4f8f4f5);border:1px solid var(--border);box-shadow:0 30px 90px #00000038;padding:26px;position:relative;overflow:hidden;max-height:90vh;overflow-y:auto}.modalCard:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:5px;background:linear-gradient(90deg,var(--accent),var(--accent2))}.modalCard h2{margin-top:0}.modalLead{margin-top:-4px;color:var(--muted)}.noticeCard.error:before{background:linear-gradient(90deg,#b94545,#e07b7b)}.noticeCard.error h2{color:#9a1d1d}.noticeCard.pending:before{background:linear-gradient(90deg,#c4812b,#e8b15a)}.noticeCard.pending h2{color:#7a4b12}.adminList{margin-top:14px;display:grid;gap:10px}.adminRow{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:16px;background:#ffffff80}.sectionHead{display:flex;align-items:center;justify-content:space-between;gap:12px}.pageStack{display:grid;gap:18px;min-width:0}.stackGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;min-width:0}.accountMetaCard{max-width:720px}.summaryGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}.summaryGrid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.summaryItem{padding:12px;border:1px solid var(--border);border-radius:16px;background:#ffffff8c;display:grid;gap:6px}.summaryItem span{font-size:20px;font-weight:700}.logPanel{display:grid;gap:10px}.logPanel pre{margin:0;padding:12px 14px;border-radius:14px;background:#0d1310e6;color:#e9f0eb;overflow:auto;white-space:pre-wrap}.tableWrap{width:100%;overflow-x:auto}table{width:100%;border-collapse:collapse}table th,table td{white-space:nowrap}table td:first-child,table th:first-child{white-space:normal}th,td{text-align:left;padding:12px 8px;border-bottom:1px solid var(--border)}th{color:var(--muted);font-size:13px}@media (max-width: 960px){.workspace{grid-template-columns:1fr}.sidebar{position:relative;top:0}.hero,.grid,.dashboardGrid{grid-template-columns:1fr;display:grid}.stackGrid{grid-template-columns:1fr}.panel.status{min-width:0}.guideGrid{grid-template-columns:1fr}.summaryGrid,.summaryGrid.compact{grid-template-columns:1fr 1fr}.emailComposer{flex-direction:column;align-items:stretch}.emailComposer span{text-align:center}.cardHeading,.sectionHead{flex-direction:column;align-items:start}.grid,.dashboardGrid,.summaryGrid,.summaryGrid.compact{grid-template-columns:1fr}.card,.panel{border-radius:20px}.tableWrap{margin-right:-4px}table{min-width:860px}}
