:root{--bg:#fdfdf7;--fg:#111;--muted:#666;--accent:#1e3de2;--border:#e0e0db}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:IBM Plex Sans,Helvetica Neue,Arial,sans-serif;background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app-root{max-width:980px;margin:48px auto 64px;padding:0 32px}.header{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid var(--border)}.title{margin:0;font-family:Times New Roman,serif;font-size:28px;letter-spacing:8px;text-transform:uppercase}.subtitle{margin:8px 0 0;color:var(--muted);font-size:14px;letter-spacing:2px;text-transform:uppercase}.main{margin-top:12px}.filter-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:18px 24px;margin-bottom:16px}.filter{display:flex;flex-direction:column}.filter label{font-size:11px;color:var(--muted);letter-spacing:1px;text-transform:uppercase;margin-bottom:6px}.filter select{background:transparent;border:1px solid var(--border);color:var(--fg);padding:8px 12px;min-width:180px;font-size:14px;font-family:inherit}.actions-bar{display:flex;justify-content:flex-end;margin-bottom:16px}.actions-bar.bottom{margin-top:16px;margin-bottom:0}.download-button{background:transparent;border:1px solid var(--border);color:var(--accent);font-size:12px;letter-spacing:1px;text-transform:uppercase;padding:8px 16px;cursor:pointer}.download-button:disabled{opacity:.4;cursor:not-allowed;border-color:var(--border);color:var(--muted)}.aprs-table{width:100%;border-collapse:collapse;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.aprs-table thead th{font-size:11px;text-align:left;padding:12px 8px;color:var(--muted);letter-spacing:1.5px;text-transform:uppercase}.sort-button{background:transparent;border:0;color:inherit;font:inherit;padding:0;display:flex;align-items:center;gap:6px;cursor:pointer;justify-content:flex-start}.sort-button-right{justify-content:flex-end}.sort-button:focus-visible{outline:1px solid var(--fg);outline-offset:2px}.sort-indicator{font-size:12px;color:var(--accent)}.aprs-table tbody td{padding:14px 8px;border-top:1px solid var(--border);font-size:15px}.market-link{color:var(--fg);text-decoration:none;border-bottom:1px solid transparent}.market-link:hover{border-bottom-color:var(--accent)}.numeric{text-align:right;white-space:nowrap}.apr{text-align:right;font-weight:600;white-space:nowrap}.explorer-cell{text-align:right;width:40px}.explorer-link{color:var(--accent);display:inline-flex;align-items:center;justify-content:center;padding:4px;border-radius:4px;border:1px solid transparent;text-decoration:none}.explorer-link:hover{border-color:var(--accent)}.explorer-placeholder{color:var(--border)}.message{padding:24px 0;color:var(--muted);font-size:14px;letter-spacing:1px}.message.error{color:#c01933}.pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;font-size:12px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--border);padding-bottom:18px}.pagination button{background:transparent;border:0;color:var(--accent);padding:4px 0;font-size:12px;letter-spacing:1px;cursor:pointer}.pagination button:disabled{color:var(--border);cursor:not-allowed}.footer{margin-top:38px;color:var(--muted);font-size:11px;letter-spacing:1px;text-transform:uppercase;border-top:1px solid var(--border);padding-top:18px}code{background:transparent;color:var(--accent);font-family:Courier New,Courier,monospace}
