/*
 Display accesskeys, enhanced
 http://userstyles.org/styles/2193
 BEGIN
*/

@namespace
 url(http://www.w3.org/1999/xhtml);
@-moz-document 
 url-prefix(http://)
,url-prefix(https://) 
{

/*
 default appearance for either userscript or css-generated content
*/
span.my_accesskey  ,
label[accesskey]::after  ,
legend[accesskey]::after  ,
button[accesskey]::after  ,
a[accesskey]::after  {
 content: attr(accesskey) !important;
 position: static !important;
 display: inline !important;
 text-decoration: none !important;
 text-indent: 0 !important;
 text-transform: uppercase !important;
 font-family: "Courier new", Courier, monospace !important;
 font-size: 12px !important;
 font-weight: normal !important;
 border: none !important;
 color: #000 !important;
 background-color: #eee !important;
 border-radius: 0.7em !important;
 opacity: 0.8 !important;
 padding: 0 4px 0 4px !important;
 margin: 0 0 0 -15px !important;
}

/*
 :hover and his best friend :focus
 hiding, but for checkboxes see below
*/

span.my_accesskey:hover  ,

textarea[accesskey]:focus + span.my_accesskey  ,
input[accesskey]:focus + span.my_accesskey  ,
select[accesskey]:focus + span.my_accesskey  ,
label[accesskey]:focus::after  ,
legend[accesskey]:focus::after  ,
button[accesskey]:focus::after  ,
a[accesskey]:focus::after  ,

textarea[accesskey]:hover + span.my_accesskey  ,
input[accesskey]:hover + span.my_accesskey  ,
select[accesskey]:hover + span.my_accesskey  ,
label[accesskey]:hover::after  ,
legend[accesskey]:hover::after  ,
button[accesskey]:hover::after  ,
a[accesskey]:hover::after  {
 visibility: hidden !important;
}

/*
 this can spoil something
 but is necessary
 13:40:26 hopefully, not anymore (?)
*/
/*
a[accesskey]  {
 white-space: nowrap !important;
}
*/


/*
 supposing textarea will have scrollbar
*/
textarea[accesskey] + span.my_accesskey {
 margin: 0 0 0 -30px !important;
 padding: 0 19px 0 4px !important;
}

/*
 border for checkboxes and radios
*/
input[accesskey][type="checkbox"] + span.my_accesskey ,
input[accesskey][type="radio"] + span.my_accesskey {
 border: 1px solid #000 !important;
 padding: 0 3px 0 3px !important;
}

input[accesskey][type="checkbox"] + span.my_accesskey {
 border-radius: 0 !important;
}

/*
 inverting colours for checked radios / checkboxes
*/
input[accesskey][type="radio"]:checked + span.my_accesskey ,
input[accesskey][type="checkbox"]:checked + span.my_accesskey {
 color: #fff !important;
 border-color: #fff !important;
 background-color: #000 !important;
}

/*
 focus: for radio and checkbox do not hide but emphasize
*/
input[accesskey][type="radio"]:focus + span.my_accesskey ,
input[accesskey][type="checkbox"]:focus + span.my_accesskey {
 outline: 1px dotted red !important;
 visibility: visible !important;
}
/*
 focus: others - hide
*/
input[accesskey][type="radio"]:focus + span.my_accesskey:hover ,
input[accesskey][type="checkbox"]:focus + span.my_accesskey:hover ,
input[accesskey][type="radio"]:focus:hover + span.my_accesskey ,
input[accesskey][type="checkbox"]:focus:hover + span.my_accesskey {
 visibility: hidden !important;
}

/*
 red for submits
*/
input[accesskey][type="submit"] + span.my_accesskey {
 background-color: #f99 !important;
}

}

/*
 END
 Display accesskeys, enhanced
 http://userstyles.org/styles/2193
*/