:root { --bg: #050505; --panel-bg: #151515; --accent: #00f2ff; /* Cyan néon pour le 1080p */ --danger: #ff004c; --text: #ffffff; } body { background: var(--bg); color: var(--text); margin: 0; font-family: 'Segoe UI', Roboto, sans-serif; overflow: hidden; height: 100vh; } /* Header Studio */ header { height: 80px; background: linear-gradient(180deg, #222 0%, #111 100%); display: flex; align-items: center; padding: 0 30px; justify-content: space-between; border-bottom: 3px solid #333; box-shadow: 0 4px 20px rgba(0,0,0,0.5); } /* Grille Full HD (8 colonnes x 8 lignes = 64 boutons) */ .grid { display: grid; grid-template-columns: repeat(8, 1fr); grid-template-rows: repeat(8, 1fr); gap: 10px; height: calc(100vh - 80px); padding: 15px; box-sizing: border-box; } .btn { background: #1a1a1a; border: 1px solid #333; border-radius: 6px; display: flex; flex-direction: column; align-items: center; justify-content: center; position: relative; font-size: 0.9rem; font-weight: 500; transition: all 0.1s ease; cursor: pointer; box-shadow: inset 0 0 10px rgba(0,0,0,0.5); } .btn:hover { background: #222; border-color: #555; } .btn.active { border-color: #444; color: #aaa; } .btn.playing { background: var(--danger); color: white; box-shadow: 0 0 20px var(--danger), inset 0 0 15px rgba(0,0,0,0.3); border-color: white; transform: scale(0.98); } .btn-num { position: absolute; top: 5px; left: 8px; font-size: 0.7rem; color: #555; } .loop-tag { position: absolute; bottom: 5px; right: 8px; font-size: 14px; color: var(--accent); opacity: 0; } .btn.has-loop .loop-tag { opacity: 1; } /* Modale d'édition centrée (Style Desktop) */ #editOverlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.9); display: none; z-index: 100; justify-content: center; align-items: center; } #editPanel { background: var(--panel-bg); width: 500px; padding: 40px; border-radius: 15px; border: 2px solid var(--accent); box-shadow: 0 0 50px rgba(0,242,255,0.2); } input[type="text"], input[type="range"] { width: 100%; padding: 12px; margin: 10px 0; background: #000; border: 1px solid #444; color: white; border-radius: 4px; } .actions { display: flex; gap: 15px; margin-top: 30px; } .actions button { flex: 1; padding: 15px; border-radius: 5px; font-weight: bold; border: none; cursor: pointer; } .btn-save { background: var(--accent); color: black; } .btn-cancel { background: #333; color: white; } body.edit-mode .btn { border: 1px dashed var(--accent); cursor: crosshair; } .stop-all { background: var(--danger); color: white; border: none; padding: 12px 25px; border-radius: 4px; font-weight: bold; cursor: pointer; } .btn.dragging { opacity: 0.4; transform: scale(0.9); } .btn.drag-over { border: 2px solid var(--accent) !important; background: #333; }