:root { --primary: #2ecc71; --secondary: #3498db; --danger: #e74c3c; --bg: #1a1a1a; --container-bg: #2c3e50; --text: #ffffff; }
* { box-sizing: border-box; }
body { font-family: 'Segoe UI', sans-serif; background: var(--bg); color: var(--text); margin: 0; padding: 5px; overflow-x: hidden; }

.container { width: 96%; max-width: 500px; margin: 10px auto; background: var(--container-bg); padding: 15px; border-radius: 20px; position: relative; min-height: 90vh; display: flex; flex-direction: column; }

/* Header & Menü Fix */
.header-ui { display: flex; justify-content: space-between; align-items: center; background: rgba(0,0,0,0.3); padding: 12px; border-radius: 15px; margin-bottom: 10px; }
.nav-icons { display: flex; align-items: center; gap: 15px; position: relative; }
.icon-btn { font-size: 1.8rem; cursor: pointer; user-select: none; }

.dropdown-content { display: none; position: absolute; right: 0; top: 50px; background: #34495e; min-width: 200px; z-index: 9999; border-radius: 12px; border: 1px solid var(--secondary); }
.dropdown-content button { width: 100%; padding: 14px; border: none; background: none; color: white; text-align: left; border-bottom: 1px solid rgba(255,255,255,0.05); cursor: pointer; font-size: 1rem; }

/* WÜRFEL FIX - Damit sie garantiert erscheinen */
.dice-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin: 20px 0; min-height: 200px; justify-items: center; align-items: center; }
.die { width: 85px; height: 85px; background: white; border-radius: 15px; display: grid; grid-template-columns: repeat(3, 1fr); padding: 8px; border: 2px solid #ccc; position: relative; cursor: pointer; transition: transform 0.2s; }
.die.selected { border: 6px solid var(--primary); background: #d1ffd6; transform: scale(1.05); }
.dot { background: black; border-radius: 50%; width: 75%; height: 75%; margin: auto; visibility: hidden; }
.dot.visible { visibility: visible; }

/* Timer */
#timer-container { width: 100%; height: 8px; background: rgba(255,255,255,0.1); border-radius: 4px; margin: 10px 0; overflow: hidden; display: none; }
#timer-bar { height: 100%; width: 100%; background: var(--secondary); transition: width 0.1s linear; }

.btn { width: 100%; padding: 18px; border-radius: 15px; border: none; font-weight: bold; color: white; font-size: 1.2rem; margin-bottom: 10px; cursor: pointer; text-transform: uppercase; }
.btn-roll { background: var(--secondary); }
.btn-save { background: var(--primary); }
.btn-stop { background: var(--danger); }
.btn:disabled { opacity: 0.3; }

/* Modals */
.modal { display: none; position: fixed; z-index: 10001; left: 0; top: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.9); }
.modal-content { background: var(--container-bg); margin: 10% auto; padding: 25px; border-radius: 20px; width: 90%; max-width: 450px; border: 2px solid var(--secondary); }