:root{--line: #d4d4d8;--ink: #18181b;--muted: #71717a;--brand: #0f766e;--warn: #b91c1c}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,Apple SD Gothic Neo,Noto Sans KR,sans-serif;color:var(--ink);background:#f4f4f5;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}.eform{max-width:720px;margin:0 auto;padding:16px 16px calc(88px + env(safe-area-inset-bottom));background:#fff;min-height:100vh}.eform__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;border-bottom:2px solid var(--ink);padding-bottom:10px}.eform__head h1{font-size:18px;margin:0}.eform__progress{font-size:13px;color:var(--muted);white-space:nowrap}.page__title{font-size:17px;text-align:center;margin:20px 0 14px}.page__heading{font-size:14px;margin:18px 0 6px;padding-left:8px;border-left:3px solid var(--ink)}.page__para{font-size:14px;line-height:1.75;white-space:pre-wrap;margin:0 0 14px}table.kv{width:100%;border-collapse:collapse;margin-bottom:16px;font-size:14px}table.kv th,table.kv td{border:1px solid var(--line);padding:8px 10px;text-align:left;word-break:break-all}table.kv th{background:#fafafa;font-weight:500;width:32%}.sig{margin:18px 0 24px}.sig__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.sig__label{font-size:14px;font-weight:600}.sig__ok{color:var(--brand);font-weight:400;font-size:13px}.sig__canvas{display:block;width:100%;border:1px dashed var(--line);border-radius:8px;background:#fff;touch-action:none}.sig__hint{font-size:12px;color:var(--muted);margin:6px 0 0}.agree{display:flex;gap:8px;align-items:flex-start;font-size:14px;line-height:1.6;padding:12px;background:#fefce8;border-radius:8px;margin-top:12px}.eform__foot{position:fixed;left:0;right:0;bottom:0;display:flex;gap:10px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line)}button{flex:1;min-height:48px;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:15px;font-family:inherit;color:var(--ink)}button.primary{background:var(--brand);border-color:var(--brand);color:#fff;font-weight:600}button:disabled{opacity:.45}.sig__head button{flex:0 0 auto;min-height:32px;padding:0 12px;font-size:13px}.warn{position:fixed;bottom:calc(74px + env(safe-area-inset-bottom));left:16px;right:16px;margin:0;font-size:13px;color:var(--warn);text-align:center}.centered{max-width:480px;margin:0 auto;padding:80px 24px;text-align:center}.centered h1{font-size:20px}.muted{color:var(--muted);font-size:13px}
