*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #ffffff;--surface: #f5f5f5;--surface2: #ebebeb;--border: #d0d0d0;--accent: #2563eb;--accent-hover: #1d4ed8;--text: #111111;--text-muted: #666666;--error: #dc2626;--radius: 8px;--radius-sm: 4px}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;line-height:1.5;min-height:100vh}.app{max-width:720px;margin:0 auto;padding:48px 24px 80px}.back-link{display:inline-block;color:var(--text-muted);text-decoration:none;font-size:13px;font-weight:600;margin-bottom:24px}.back-link:hover{color:var(--accent)}.header{text-align:center;margin-bottom:32px}.header h1{font-size:2rem;font-weight:700;letter-spacing:-.02em}.subtitle{color:var(--text-muted);margin-top:8px}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px;display:flex;flex-direction:column;gap:20px}.field{display:flex;flex-direction:column;gap:8px}.field__head{display:flex;align-items:center;justify-content:space-between}.control-label{font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.textarea{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;padding:10px 12px;resize:vertical;outline:none;transition:border-color .15s}.textarea:focus{border-color:var(--accent)}.textarea[readonly]{background:var(--bg)}.output-block{background:var(--bg);white-space:pre-wrap;word-break:break-all;overflow-x:auto;max-height:320px;overflow-y:auto}.error{color:var(--error);font-size:13px}.note{color:var(--text-muted);font-size:12px}#result{display:flex;flex-direction:column;gap:20px}#claimsInfo{display:flex;flex-direction:column;gap:4px}.claim-line{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 12px}.btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border-radius:var(--radius-sm);font-size:14px;font-weight:600;cursor:pointer;border:1px solid transparent;transition:background .15s,color .15s,border-color .15s;line-height:1}.btn--secondary{background:transparent;color:var(--text-muted);border-color:var(--border)}.btn--secondary:hover{color:var(--text);border-color:var(--text-muted)}.btn--sm{padding:5px 12px;font-size:12px}
