/* Reset en basis styling */ * { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; overflow: hidden; background: #1a1a1a; } /* Container voor alle schermen */ .container { width: 100vw; height: 100vh; position: relative; } /* Timer border animatie rondom scherm */ .timer-border { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; pointer-events: none; z-index: 1000; } .timer-bar { position: absolute; background: white; } /* Top balk */ .timer-top { top: 0; left: 0; height: 8px; width: 0; } /* Right balk */ .timer-right { top: 0; right: 0; width: 8px; height: 0; } /* Bottom balk */ .timer-bottom { bottom: 0; right: 0; height: 8px; width: 0; } /* Left balk */ .timer-left { bottom: 0; left: 0; width: 8px; height: 0; } /* Timer animatie - elke balk is 1/4 van totale tijd */ .timer-active .timer-top { animation: fillWidth calc(var(--timer-duration) / 4) linear forwards; } .timer-active .timer-right { animation: fillHeight calc(var(--timer-duration) / 4) linear forwards; animation-delay: calc(var(--timer-duration) / 4); } .timer-active .timer-bottom { animation: fillWidth calc(var(--timer-duration) / 4) linear forwards; animation-delay: calc(var(--timer-duration) / 2); } .timer-active .timer-left { animation: fillHeight calc(var(--timer-duration) / 4) linear forwards; animation-delay: calc(var(--timer-duration) * 3 / 4); } @keyframes fillWidth { from { width: 0; } to { width: 100vw; } } @keyframes fillHeight { from { height: 0; } to { height: 100vh; } } /* Stellingen scherm - 50/50 split */ .statement-screen { display: flex; width: 100%; height: 100%; } .statement { flex: 1; display: flex; align-items: center; justify-content: center; padding: 2rem; } .statement p { color: white; font-weight: bold; text-align: center; text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3); line-height: 1.4; } /* Overlay met knop (over stellingen heen) */ .overlay { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; display: flex; align-items: flex-start; justify-content: center; padding-top: 15vh; background: rgba(0, 0, 0, 0.4); z-index: 500; } .next-button { padding: 1.5rem 3rem; font-size: 1.5rem; font-weight: bold; color: white; background: #3B82F6; border: none; border-radius: 12px; cursor: pointer; transition: all 0.3s ease; box-shadow: 0 4px 12px rgba(59, 130, 246, 0.4); } .next-button:hover { background: #2563EB; transform: translateY(-2px); box-shadow: 0 6px 16px rgba(59, 130, 246, 0.6); } .next-button:active { transform: translateY(0); } /* Start scherm */ .start-screen { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; background: #1a1a1a; } .start-button { padding: 2rem 4rem; font-size: 2rem; font-weight: bold; color: white; background: #10b981; border: none; border-radius: 16px; cursor: pointer; transition: all 0.3s ease; box-shadow: 0 6px 16px rgba(16, 185, 129, 0.4); } .start-button:hover { background: #059669; transform: translateY(-3px); box-shadow: 0 8px 20px rgba(16, 185, 129, 0.6); } .start-button:active { transform: translateY(0); } /* Eind scherm */ .finish-screen { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; background: #1a1a1a; } .finish-screen h1 { color: white; font-weight: bold; text-align: center; padding: 2rem; } /* Stelling counter rechtsonder */ .counter-display { position: fixed; bottom: 2rem; right: 2rem; color: white; font-size: 1.5rem; font-weight: bold; text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5); z-index: 1500; } /* Fullscreen knop rechtsonder */ .fullscreen-button { position: fixed; bottom: 2rem; right: 6rem; width: 3rem; height: 3rem; display: flex; align-items: center; justify-content: center; background: rgba(255, 255, 255, 0.2); border: 2px solid rgba(255, 255, 255, 0.4); border-radius: 8px; color: white; cursor: pointer; transition: all 0.3s ease; z-index: 1500; backdrop-filter: blur(10px); } .fullscreen-button:hover { background: rgba(255, 255, 255, 0.3); border-color: rgba(255, 255, 255, 0.6); transform: scale(1.1); } .fullscreen-button:active { transform: scale(0.95); } /* Fullscreen knop icoon wisselen wanneer in fullscreen */ .fullscreen-button.is-fullscreen svg { transform: rotate(180deg); } /* Helper classes */ .hidden { display: none !important; }