@@ 0,0 1,81 @@
+head, link, meta, style, script, title {speak: never}
+datalist {speak: never}
+
+/** Forms **/
+/* Hide buttons that don't do anything */
+button[type=button] {speak: never}
+button[formaction] {speak: always}
+
+button::before {content: "Button"; pitch: high}
+select::before, textarea::before, input::before {content: "Input"; pitch: high}
+output::before {content: "Output"; pitch: high}
+button, select, input, output {pitch: low}
+input, output {content: attr(value)}
+
+option:not([checked]) {speak: never}
+select[multiple] option {cue-before: url(bulletpoint.wav)}
+
+/* Forms themselves require a label in order to support navigation */
+form::before {content: "Form"}
+form[action]::before {content: attr(action)}
+form[alt]::before {content: attr(alt)}
+form[title]::before {content: attr(title)}
+
+/** Tables **/
+table::before {content: "Table"; voice-volume: x-soft}
+tr {cue-before: url(bulletpoint.wav)}
+td, th {cue-before: url(bulletpoint.wav) -1db}
+th::th /* Rhapsode-specific, selects inlined table headers */ {speak: never;}
+table caption {voice-volume: soft}
+
+/** Sectioning **/
+footer, header {voice-volume: soft}
+h1, h2, h3, h4, h5, h6, legend, caption, th {voice-stress: strong}
+h1 {pause: x-strong; voice-rate: x-slow}
+h2 {pause: strong; voice-rate: slow}
+h3, caption, th, h3 {pause: medium; voice-rate: medium}
+h4 {pause: weak; voice-rate: fast}
+h5, h6 {pause: x-weak; voice-rate: fast}
+h6 {pitch: high}
+
+/** Text **/
+hr {pause: x-strong}
+p, pre {pause: strong}
+pre, address {speak-as: literal-punctuation}
+
+:link {cue-before: url(link.wav); voice-rate: slow}
+:link:visited {cue-before: url(link.wav) -1db}
+
+b, strong {voice-rate: x-slow}
+i, em {voice-stress: strong}
+br {pause: medium}
+code {speak-as: literal-punctuation}
+s, del {voice-volume: x-soft}
+u {voice-volume: loud}
+
+/** lists **/
+li {cue-before: url(bulletpoint.wav); pause: strong}
+li li {cue-before: url(bulletpoint.wav) -1db}
+li li li {cue-before: url(bulletpoint.wav) -2db}
+li li li li {cue-before: url(bulletpoint.wav) -3db}
+li li li li li {cue-before: url(bulletpoint.wav) -4db}
+li li li li li li {cue-before: url(bulletpoint.wav) -5db}
+
+ol {counter-reset: -rhaps-ol1}
+ol ol {counter-reset: -rhaps-ol2}
+ol ol ol {counter-reset: -rhaps-ol3}
+ol ol ol ol {counter-reset: -rhaps-ol4}
+ol ol ol ol ol {counter-reset: -rhaps-ol5}
+ol ol ol ol ol ol {counter-reset -rhaps-ol6}
+ol li::before {content: counter(-rhaps-ol1)}
+ol ol li::before {content: counters(-rhaps-ol1, -rhaps-ol2)}
+ol ol ol li::before {content: counters(-rhaps-ol1, -rhaps-ol2, -rhaps-ol3)}
+ol ol ol ol li::before {
+ content: counters(-rhaps-ol1, -rhaps-ol2, -rhaps-ol3, -rhaps-ol4)
+}
+ol ol ol ol ol li::before {
+ content: counters(-rhaps-ol1, -rhaps-ol2, -rhaps-ol3, -rhaps-ol4, -rhaps-ol5)
+}
+ol ol ol ol ol ol li::before {
+ content: counters(-rhaps-ol1, -rhaps-ol2, -rhaps-ol3, -rhaps-ol4, -rhaps-ol5, -rhaps-ol6)
+}<
\ No newline at end of file