@@ -29,13 +29,13 @@
<!-- Acciones rápidas ( arriba , estilo más sutil ) -- >
<!-- Acciones rápidas ( arriba , estilo más sutil ) -- >
< div class = "quick-actions top" >
< div class = "quick-actions top" >
< button @click ="selectRandom" class = "qa-btn" >
< button @click ="selectRandom" class = "qa-btn" >
Seleccionar Aleatorio
🎲 Seleccionar Aleatorio
< / button >
< / button >
< button @click ="goToDashboard" class = "qa-btn" >
< button @click ="goToDashboard" class = "qa-btn" >
Panel de Adminstración
🎛 ️ Panel de Adminstración
< / button >
< / button >
< button @click ="goToLeaderboard" class = "qa-btn" >
< button @click ="goToLeaderboard" class = "qa-btn" >
Estadísticas
📈 Estadísticas
< / button >
< / button >
< / div >
< / div >
@@ -769,7 +769,7 @@ async function copyToClipboard() {
< style scoped >
< style scoped >
. uuid - selector - container {
. uuid - selector - container {
min - height : 100 vh ;
min - height : calc ( var ( -- app - vh , 1 vh ) * 100 ) ;
background : linear - gradient ( 135 deg , # 667 eea 0 % , # 764 ba2 100 % ) ;
background : linear - gradient ( 135 deg , # 667 eea 0 % , # 764 ba2 100 % ) ;
display : flex ;
display : flex ;
align - items : center ;
align - items : center ;
@@ -871,6 +871,8 @@ async function copyToClipboard() {
transition : transform 0.15 s ease , box - shadow 0.2 s ease , background 0.2 s ease ;
transition : transform 0.15 s ease , box - shadow 0.2 s ease , background 0.2 s ease ;
box - shadow : 0 6 px 18 px rgba ( 102 , 126 , 234 , 0.12 ) ;
box - shadow : 0 6 px 18 px rgba ( 102 , 126 , 234 , 0.12 ) ;
user - select : none ;
user - select : none ;
- webkit - tap - highlight - color : transparent ;
outline : none ;
}
}
. qa - btn : hover {
. qa - btn : hover {
@@ -883,10 +885,7 @@ async function copyToClipboard() {
box - shadow : 0 2 px 8 px rgba ( 0 , 0 , 0 , 0.12 ) ;
box - shadow : 0 2 px 8 px rgba ( 0 , 0 , 0 , 0.12 ) ;
}
}
. qa - btn : focus - visible {
. qa - btn : focus , . qa - btn : focus - visible { outline : none ; }
outline : 2 px solid rgba ( 102 , 126 , 234 , 0.6 ) ;
outline - offset : 2 px ;
}
. search - input {
. search - input {
width : 100 % ;
width : 100 % ;
@@ -914,14 +913,19 @@ async function copyToClipboard() {
/* QR Mode Toggle Styles */
/* QR Mode Toggle Styles */
. qr - mode - container { margin : 16 px 0 0 0 ; display : flex ; justify - content : center ; }
. qr - mode - container { margin : 16 px 0 0 0 ; display : flex ; justify - content : center ; }
. qr - mode - label { display : flex ; align - items : center ; gap : 10 px ; cursor : pointer ; user - select : none ; }
. qr - mode - label { display : flex ; align - items : center ; gap : 10 px ; cursor : pointer ; user - select : none ; - webkit - tap - highlight - color : transparent ; outline : none ; }
. qr - mode - checkbox { position : absolute ; opacity : 0 ; width : 0 ; height : 0 ; }
. qr - mode - checkbox { position : absolute ; opacity : 0 ; width : 0 ; height : 0 ; }
. qr - toggle { width : 48 px ; height : 26 px ; background : linear - gradient ( 180 deg , rgba ( 255 , 255 , 255 , 0.6 ) , rgba ( 255 , 255 , 25 5 , 0.3 5 ) ) ; backdrop - filter : blur ( 10 px ) ; - webkit - backdrop - filter : blur ( 10 px ) ; border : 1 px solid rgba ( 255 , 255 , 255 , 0.6 ) ; border - radius : 999 px ; position : relative ; transition : background 0.25 s ease , border - color 0.25 s ease ; box - shadow : inset 0 2 px 6 px rgba ( 0 , 0 , 0 , 0.08 ) ; }
. qr - toggle { width : 48 px ; height : 26 px ; background : linear - gradient ( 180 deg , rgba ( 246 , 247 , 250 , 0.95 ) , rgba ( 226 , 229 , 23 5 , 0.8 5 ) ) ; backdrop - filter : blur ( 10 px ) ; - webkit - backdrop - filter : blur ( 10 px ) ; border : 1 px solid rgba ( 0 , 0 , 0 , 0.18 ) ; border - radius : 999 px ; position : relative ; transition : background 0.25 s ease , border - color 0.25 s ease ; box - shadow : inset 0 2 px 6 px rgba ( 0 , 0 , 0 , 0.14 ) ; }
. qr - toggle : hover { border - color : rgba ( 0 , 0 , 0 , 0.24 ) ; }
. qr - toggle : : after { content : '' ; width : 20 px ; height : 20 px ; background : white ; border - radius : 50 % ; position : absolute ; top : 3 px ; left : 3 px ; transition : transform 0.25 s ease , box - shadow 0.25 s ease ; box - shadow : 0 3 px 8 px rgba ( 0 , 0 , 0 , 0.18 ) ; }
. qr - toggle : : after { content : '' ; width : 20 px ; height : 20 px ; background : white ; border - radius : 50 % ; position : absolute ; top : 3 px ; left : 3 px ; transition : transform 0.25 s ease , box - shadow 0.25 s ease ; box - shadow : 0 3 px 8 px rgba ( 0 , 0 , 0 , 0.18 ) ; }
. qr - mode - checkbox : checked + . qr - toggle { background : linear - gradient ( 135 deg , rgba ( 102 , 126 , 234 , 0.6 ) 0 % , rgba ( 118 , 75 , 162 , 0.6 ) 100 % ) ; border - color : rgba ( 255 , 255 , 255 , 0.7 ) ; }
. qr - mode - checkbox : checked + . qr - toggle { background : linear - gradient ( 135 deg , rgba ( 102 , 126 , 234 , 0.6 ) 0 % , rgba ( 118 , 75 , 162 , 0.6 ) 100 % ) ; border - color : rgba ( 255 , 255 , 255 , 0.7 ) ; }
. qr - mode - checkbox : checked + . qr - toggle : : after { transform : translateX ( 22 px ) ; }
. qr - mode - checkbox : checked + . qr - toggle : : after { transform : translateX ( 22 px ) ; }
. qr - mode - text { font - size : 14 px ; font - weight : 600 ; color : # 374151 ; }
. qr - mode - text { font - size : 14 px ; font - weight : 600 ; color : # 374151 ; }
/* Remove distracting tap highlight / outlines on touch for cards */
. uuid - card { - webkit - tap - highlight - color : transparent ; outline : none ; }
. uuid - card : focus , . uuid - card : focus - visible { outline : none ; }
. uuids - grid {
. uuids - grid {
display : grid ;
display : grid ;
grid - template - columns : repeat ( auto - fill , minmax ( 180 px , 1 fr ) ) ;
grid - template - columns : repeat ( auto - fill , minmax ( 180 px , 1 fr ) ) ;