/* Reset and base styles */ body { margin: 0; padding: 0; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; } .app { min-height: 100vh; background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%); display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 1rem; } .container { max-width: 64rem; width: 100%; } .title { color: white; font-size: 2rem; font-weight: bold; text-align: center; margin-bottom: 3rem; } .content-wrapper { background: rgba(255, 255, 255, 0.05); backdrop-filter: blur(8px); border-radius: 1rem; padding: 2rem; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); } /* Scrolling sections styles */ .sections-container { width: 100%; max-width: 60rem; margin: 0 auto; position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; } .sections-viewport { position: relative; width: 100%; height: 12rem; margin-bottom: 1.5rem; } .topmargin { margin-top: 16rem; } .section-item { position: absolute; width: 100%; transition: all 700ms ease-in-out; } .section-item.before { transform: translateY(-125%); opacity: 0.5; scale: 0.95; } .section-item.active { transform: translateY(0); opacity: 1; scale: 1; } .section-item.after { transform: translateY(125%); opacity: 0.5; scale: 0.95; } .section-content { padding: 1.5rem; background: rgba(255, 255, 255, 0.9); backdrop-filter: blur(4px); border-radius: 0.5rem; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); } .section-sentence { font-size: 0.9rem; font-weight: 500; margin-bottom: 0.75rem; color: #1a1a2e; white-space: pre-line; } .section-source { font-size: 0.875rem; font-weight: 500; color: #666; } /* Progress bar styles */ .progress-container { width: 100%; height: 4px; background-color: rgba(255, 255, 255, 0.2); border-radius: 2px; overflow: hidden; z-index: 9999; padding-left: 1em; padding-right: 1em; position: absolute; } .progress-bar { height: 100%; background-color: #3b82f6; transition: width 100ms linear; } /* Navigation dots styles */ .navigation-dots { display: flex; justify-content: center; margin-top: 1.5rem; } .dot { width: 0.75rem; height: 0.75rem; border-radius: 50%; background-color: rgba(255, 255, 255, 0.3); margin: 0 0.375rem; cursor: pointer; transition: all 300ms ease; border: none; padding: 0; } .dot:hover { background-color: rgba(255, 255, 255, 0.5); } .dot.active { background-color: #3b82f6; transform: scale(1.1); }