:root{font-family:Inter,Pretendard,Noto Sans KR,system-ui,sans-serif;color:#20251f;background:#edf0e8;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 80% 0,#dce8d4 0,transparent 36%),#edf0e8}#app{max-width:920px;margin:auto;padding:56px 24px}header{display:flex;gap:18px;align-items:center;margin-bottom:30px}.mark{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:#253d2d;color:#f5f0db;font-family:Georgia,serif;font-weight:700;font-size:21px;box-shadow:0 12px 28px #2337292b}h1{font-family:Georgia,"Noto Serif KR",serif;font-size:clamp(30px,5vw,46px);line-height:1;margin:0;color:#1c3023}header p,.step p{color:#687065;margin:8px 0 0}.workspace{background:#faf9f3;border:1px solid #d6d8ce;border-radius:24px;box-shadow:0 24px 60px #27342b16;overflow:hidden}.step{display:grid;grid-template-columns:52px 1fr;gap:18px;padding:28px 32px;border-bottom:1px solid #e4e4dc}.step:last-child{border:0}.step>span{display:grid;place-items:center;width:36px;height:36px;border:1px solid #a7b3a4;border-radius:50%;font-family:Georgia,serif;color:#36533f}.step label{font-size:18px;font-weight:750;color:#24352a}.step p{font-size:14px;margin-bottom:16px}input[type=file]{max-width:100%;color:#60695f}input[type=file]::file-selector-button,.quiet,button{border:0;border-radius:10px;padding:10px 14px;font-weight:700;cursor:pointer}.meta{margin-top:12px;padding:12px 14px;border-radius:10px;background:#eef1e9;color:#536055;font-size:14px}textarea{width:100%;min-height:180px;resize:vertical;border:1px solid #cbd0c6;border-radius:12px;background:#fff;padding:14px;font:14px/1.65 ui-monospace,SFMono-Regular,Consolas,monospace;color:#29332c;outline:none}textarea:focus{border-color:#557961;box-shadow:0 0 0 3px #55796120}#jsonFile{margin-top:12px}.quiet{background:transparent;color:#47634f;text-decoration:underline}#convert{background:#2d5138;color:#fff;padding:13px 20px;font-size:15px;box-shadow:0 8px 18px #294e3530}#convert:disabled{opacity:.42;cursor:not-allowed;box-shadow:none}footer{text-align:center;color:#7b8179;font-size:13px;margin-top:22px}@media(max-width:600px){#app{padding:30px 14px}.step{grid-template-columns:38px 1fr;padding:23px 18px;gap:10px}header{align-items:flex-start}.mark{width:48px;height:48px;border-radius:14px}header p{font-size:13px}}
