/* * Copyright (c) 2025-2026 Taras Greben * SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Commercial-pcb-retrace * See LICENSE file for details. */ :root { --border: #cbd5e1; --text-muted: #94a3b8; --bg-default: #f1f5f9; --text-default: #1e293b; } body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; margin: 0; padding: 0; /* MOBILE VIEWPORT FIX */ height: 100vh; /* Fallback */ height: 100dvh; /* Dynamic height handles mobile toolbars */ display: flex; flex-direction: column; overflow: hidden; /* Prevent body scroll, let containers scroll */ } /* COMPACT FOOTER */ .app-footer { padding: 0.2rem 0; text-align: center; font-size: 0.65rem; color: var(--text-muted); border-top: 1px solid var(--border); background: rgba(255, 255, 255, 0.9); /* Slight transparency */ flex-shrink: 0; z-index: 20; width: 100%; } .app-footer a { color: inherit; text-decoration: none; border-bottom: 1px dotted var(--border); } @keyframes spin { 100% { -webkit-transform: rotate(360deg); transform:rotate(360deg); } }