:root{--text:#3f3f46;--text-h:#18181b;--bg:#f4f4f5;--surface:#fff;--border:#e4e4e7;--accent:#1d4ed8;--accent-contrast:#fff;--danger:#dc2626;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font:16px/1.45 system-ui,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--text:#d4d4d8;--text-h:#fafafa;--bg:#18181b;--surface:#27272a;--border:#3f3f46}}*{box-sizing:border-box}body{overscroll-behavior-y:contain;margin:0}#root{flex-direction:column;min-height:100svh;display:flex}h1{color:var(--text-h);margin:0 0 16px;font-size:24px}button{font:inherit;cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--text-h);border-radius:8px;padding:10px 16px}button[type=submit]{background:var(--accent);color:var(--accent-contrast);border-color:var(--accent)}input,select{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text-h);border-radius:8px;width:100%;padding:10px 12px}label{text-align:left;flex-direction:column;gap:6px;margin-bottom:14px;font-size:14px;display:flex}.error{color:var(--danger);font-size:14px}.centered{margin:auto}.auth-page{flex:1;justify-content:center;align-items:center;padding:24px;display:flex}.auth-form{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;width:100%;max-width:360px;padding:24px;display:flex}.auth-form button[type=submit]{margin:8px 0}.wallet-page{flex:1;width:100%;max-width:640px;margin:0 auto;padding:24px 16px}.wallet-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.pull-indicator{color:var(--text);justify-content:center;align-items:center;font-size:13px;transition:height .15s,opacity .15s;display:flex;overflow:hidden}.header-menu{position:relative}.header-menu-trigger{padding:8px 12px;font-size:20px;line-height:1}.header-menu-panel{z-index:10;background:var(--surface);border:1px solid var(--border);border-radius:10px;flex-direction:column;min-width:200px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden;box-shadow:0 8px 24px #00000040}.header-menu-email{color:var(--text);word-break:break-all;padding:8px 12px 4px;font-size:13px}.header-menu-panel a,.header-menu-panel button{text-align:left;color:var(--text-h);font:inherit;background:0 0;border:none;border-radius:6px;width:100%;padding:10px 12px;text-decoration:none}.header-menu-panel a:hover,.header-menu-panel button:hover{background:var(--bg)}.header-menu-panel a.disabled{opacity:.5;pointer-events:none}.offline-banner{color:#92400e;background:#fef3c7;border-radius:8px;margin-bottom:16px;padding:10px 14px;font-size:14px}.card-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.card-tile{aspect-ratio:16/10;background:var(--tile-color,var(--surface));border:1px solid var(--border);color:inherit;text-align:center;border-radius:12px;justify-content:center;align-items:center;padding:14px;text-decoration:none;display:flex;overflow:hidden}.card-tile-logo{object-fit:contain;max-width:100%;max-height:100%}.card-tile-title{color:var(--text-h);-webkit-line-clamp:3;-webkit-box-orient:vertical;font-weight:600;display:-webkit-box;overflow:hidden}.scan-page,.edit-card-page{flex:1;width:100%;max-width:480px;margin:0 auto;padding:24px 16px}.scan-camera video{background:#000;border-radius:12px;width:100%}.scan-camera .hint{margin-top:8px;font-size:14px}.scan-form-actions{justify-content:flex-end;gap:12px;display:flex}.current-logo{max-width:120px;max-height:120px;margin-bottom:8px;display:block}.card-detail-page{flex:1;width:100%;max-width:480px;margin:0 auto;padding:24px 16px}.card-detail-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.back-link{color:var(--text);text-decoration:none}.card-detail-actions{align-items:center;gap:16px;font-size:14px;display:flex}.card-detail-actions a{color:var(--text)}button.danger{color:var(--danger);border-color:var(--danger);background:0 0}.card-detail-body{text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;align-items:center;padding:32px 20px;display:flex}.card-detail-logo{object-fit:contain;width:64px;height:64px;margin-bottom:12px}.code-display{background:#fff;border-radius:8px;margin:16px 0 8px;padding:16px}.code-display canvas{max-width:100%;height:auto}.card-detail-code{color:var(--text);overflow-wrap:anywhere;min-width:0;max-width:100%;font-family:ui-monospace,Consolas,monospace;font-size:14px}
