:root{--bg-base:#f8f9fa;--bg-surface:#fff;--bg-panel:#fff;--border-subtle:#e5e7eb;--border-default:#d1d5db;--border-focus:#7f1d1d;--text-primary:#111;--text-body:#1a1a1a;--text-muted:#6b7280;--text-faint:#9ca3af;--accent:#7f1d1d;--accent-bg:#fff1f1;--accent-border:#fca5a5;--focus-ring:#7f1d1d1f}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-base);color:var(--text-body);flex-direction:column;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:flex}.app-header{border-bottom:1px solid var(--border-subtle);background:var(--bg-surface);padding:1.5rem 2rem}.app-header h1{letter-spacing:-.01em;color:var(--text-primary);font-size:1.1rem;font-weight:600}.app-header p{color:var(--text-muted);margin-top:.2rem;font-size:.8rem}.app-container{flex-direction:row;flex:1;gap:1.5rem;min-height:0;padding:1.5rem 2rem;display:flex}.panel{flex-direction:column;flex:1;min-width:0;display:flex}.panel-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-faint);margin-bottom:.5rem;font-size:.7rem;font-weight:600}.text-input{width:100%;min-height:400px;color:var(--text-body);background:var(--bg-panel);border:1px solid var(--border-default);resize:vertical;border-radius:8px;outline:none;flex:1;padding:1rem;font-family:SF Mono,Fira Code,Cascadia Code,Menlo,Monaco,monospace;font-size:.8rem;line-height:1.6;transition:border-color .15s}.text-input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--focus-ring)}.demangled-text{background:var(--bg-panel);border:1px solid var(--border-default);border-radius:8px;flex:1;min-height:400px;overflow:auto}.demangled-text pre{white-space:pre-wrap;word-break:break-all;padding:1rem;font-family:SF Mono,Fira Code,Cascadia Code,Menlo,Monaco,monospace;font-size:.8rem;line-height:1.6}.demangled-text code{display:block}span.demangled-symbol{background:var(--accent-bg);color:var(--accent);border:1px solid var(--accent-border);border-radius:2px;padding:1px;display:inline}.app-footer{border-top:1px solid var(--border-subtle);background:var(--bg-surface);color:var(--text-faint);text-align:center;padding:1rem 2rem;font-size:.75rem}.app-footer a{color:var(--accent);text-decoration:none}.app-footer a:hover{text-decoration:underline}@media (width<=768px){.app-container{flex-direction:column;gap:1rem;padding:1rem}.text-input,.demangled-text{min-height:250px}}
