@import "../shared.css"; * { box-sizing: border-box; } body { margin: 0; min-height: 100dvh; padding: 2rem; background: var(--page-bg); color: var(--text); } .toolbar { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; padding: 1rem 1.5rem; background: var(--surface); border: 1px solid var(--border); border-radius: 16px; box-shadow: var(--shadow-md); margin-bottom: 1.25rem; } select { min-width: 150px; } input { width: 120px; padding: 0 10px; } .year-control { display: inline-flex; align-items: center; gap: 8px; color: var(--muted-foreground); font-size: 14px; } a { display: inline-flex; align-items: center; padding: 0 12px; text-decoration: none; } #status { margin-left: auto; } .loading { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; background: var(--background); z-index: 5; color: var(--muted-foreground); font-size: 14px; border-radius: 16px; } .loading[hidden] { display: none; } .spinner { width: 24px; height: 24px; border: 2.5px solid var(--border); border-top-color: var(--primary); border-radius: 50%; animation: spin 0.6s linear infinite; } @keyframes spin { to { transform: rotate(360deg); } } iframe { display: block; width: 100%; height: calc(100dvh - 140px); border: 0; border-radius: 16px; background: var(--surface); box-shadow: var(--shadow-md); } iframe[hidden] { display: none; } .viewer-wrap { position: relative; min-height: calc(100dvh - 140px); }