body, table, p, ul, li, td, input[type=reset]  {
    font-family: Verdana, Arial, helvetica, sans-serif;
    font-size: 100%;
    color: black
}
body { margin: 0;
       background-color: #ffffff }

div.contents {padding-left: 2em; padding-right: 2em; text-align: left }
div.normal_text { max-width: 80ex; margin: 0 auto }

div.home { text-align: justify;
           padding: 1em 1em 0 1em;
           border-right: 1px solid #bbb;
           border-left: 1px solid #bbb;
           margin-right: 1em;
           max-width: 80ex}
div#footnote {
    border-top: 1px solid #bbb;
    text-align: justify;
    font-size: 80%;
}

a            { text-decoration: none }
a:link       { color: #389; background-color: transparent; font-weight: bold }
a:visited    { color: #278; background-color: transparent; font-weight: bold }
a:hover      { color: #49a; background-color: transparent }
a.small      { font-size: 80% }

th              { font-family: Verdana, Arial, helvetica, sans-serif;
                  color: white;
		  background-color: #000080;
		  border-color: #000080;
		  font-weight: bold }
#settings {
    font-size: 90%;
    background-color: #e8e8f0;
    float: right;
    margin-left: 15px;
    padding: 5px;
    border: solid 1px #bbc;
    max-width: 60ex;
    -moz-box-shadow: 3px 3px 5px #aaa;
    -webkit-box-shadow: 3px 3px 5px #aaa;
    box-shadow: 3px 3px 5px #aaa;
}

table { background-color: #e8e8f0 }
table.matrix { background-color: #e0e0f0 }
table.form { background-color: transparent; text-align: left }
table#main { margin: 0 auto }
table#ballot { margin: 0 auto }
table#ballot td { vertical-align: top; }
div.emphasized {
  background-color: #ffffd0; margin: 0px auto;
  font-size: 80%;
  max-width: 80ex;
  padding: 5px;
  border-style: solid;
  border-width: 1px;
  border-color: #cca
}

span.explain {font-size: 75%; color: #404040 }
span.explain img {max-height: 40px}

div.poll_end {display: inline}

p, ul, li {background-color: transparent}

h1, h2, h3, span.paragraph {
    font-family: Optima, Trebuchet MS, Verdana, Arial, helvetica, sans-serif;
    color: #258;
    background-color: transparent;
    font-weight: bold
}

table.banner a:link { color: white }
table.banner a:visited { color: white }
table.banner a:hover { color: yellow }
table.banner a.here, table.banner a.here:link, table.banner a.here:visited {
    color: #bdf
}

table.banner { background-image: url('sample-ballot.png');
               background-color: #008;
	       background-position: center left;
	       background-repeat: repeat-x}
table.banner h1 { color: white }
table.banner h2 { color: white }

/* used for mathematics */
.math        { color: black; font-family: Times New Roman, serif;
	       background-color: transparent }
.symbol      { font-family: Symbol, symbol }

h1  { font-size: 240%; text-align: center}
h2  { font-size: 140%; }
h3  { font-size: 120%; }
form, input, textarea { font-size: 100%; }
input[type="file"] { background-color: #f8f0d0 }
input, textarea, button { font-family: Verdana, helvetica, Arial, sans-serif;
           background-color: #fff8e0 }
button.small_button { font-size: 80% }
button#hide_details { margin-left: 2ex }

input#vote {font-size:130%; font-weight: normal; background-color: #ffc;
            margin: 0 auto}
input#vote:hover, input[type="submit"]:hover {background-color: #ff4}

input[type="button"], button {
    border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px;
}
input[type="button"], button, input[type="text"] {
    border: solid 1px #bbb }
input[type="submit"] {
    border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px;
    background-color: #ffc;
    border: 1px solid #666;
}
textarea { border: solid 1px #bbb }
input[type="file"]:hover,
  input[type="button"]:hover,
  input[type="text"]:hover,
  textarea:hover {
    background-color: #eec
}
/* input[type=text]:active, textarea:active, input[type=file]:active
    {background-color: #ffa}  -- a little too 'active' */

input#download {
    background-color: blue;
    color: white;
    border-style: solid;
    border-color: black;
    font-weight: bold
}
input#download:hover {
    background-color: #88f
}

pre, xmp { font-family: Courier New, Courier, monospace; margin-left: 1em;
	   font-size: 90% }
kbd, tt, code { font-family: Courier New, Courier, monospace; font-size: 90% }
td { font-family: Verdana, Arial, helvetica, sans-serif; font-size: 100%; }

td.recitation { background-color: #FFF0d0 }

td.win { font-family: Courier New, courier, fixed; text-align:center;
	 background-color: #d0ffd0; font-weight: bold }
td.tie { font-family: Courier New, courier, fixed; text-align:center;
	 background-color: #ffffd0; font-weight: bold }
td.lose { font-family: Courier New, courier, fixed; text-align:center;
	  background-color: #ffd0d0; font-weight: bold }
td.count { text-align: center; font-family: Courier New, courier, fixed }
th.choice { text-align: left }
table#preftable tr { border-style: none none groove none; border-bottom-color: #e8e8f0; border-bottom-width: 2px; border-collapse: collapse }
table#preftable tr.tied { border-color: #ccc; border-style: none none dashed none; border-bottom-width: 1px; border-collapse: collapse; padding-bottom: 2px }
table#preftable td { border-style: none; } 
table#preftable td.choice { cursor: move; padding-right: 1em }
table#preftable tr:hover td.choice,
    table#preftable tr:hover td.choice + td { background-color: #f0f0ff }
table#preftable tr.selected:hover td.choice,
    table#preftable tr.selected:hover td.choice + td  { background-color: #ffffe0 }

table#preftable { border-style: outset;
		  margin: 0 auto;
                  border-width: 1px;
		  border-collapse: collapse;
		  border-color: #abc }
td.choice, td.inactive_choice { font-weight: bold }
table.matrix th { background-color: transparent; color: black }
table.matrix, table.rankings { border: solid 1px #aac }
table.rankings tr td { text-indent: -3ex; padding-left: 3ex }
table.rankings tr td ol { text-indent: 0ex }

td#navbubbles {
    width: 35ex;
    vertical-align: top;
}
div#topmenu {
    position: relative;
    background: #119;
    top: -1.5ex;
    font-size: 110%;
}
div#topmenu a:hover {
    color: yellow;
}
div#topmenu a {
    color: white;
}
div#topmenu li {
    padding: 0.2ex 0
}
div.bubble {
    background-image: url('vertstrip.png');
    margin-bottom: 2em;
    padding: 3px 6px 3px 2px;
    border-color: #bbc;
    border-style: solid;
    border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 8px;
    border-width: 1px;
    -moz-box-shadow: 3px 3px 5px #aaa;
    -webkit-box-shadow: 3px 3px 5px #aaa;
    box-shadow: 3px 3px 5px #aaa;
}
div.bubble table { padding: 0; margin: 4px; background-color: transparent }
div.bubble ul { width: 100%; padding: 0ex; margin: 1px 7px 1px 3px; background-color: transparent }
div.bubble li { text-indent: 0; padding: 0; list-style: none; border-top: solid 1px #aaa; margin: 0; background-color: transparent}
div.bubble li:first-child { border-top: none }

div.bubble h3 { padding-top: 0; margin-top: 0 }

div.small_list { font-size: 90% }

table.links {
    margin: 5px;
    background-color: transparent
}
ul.news {
    font-size: 90%
}

table.links tr td {
    padding: 5px;
    border-width: 1px;
    margin: 0px
}

tr.selected { background-color: #ffffd0 }

table.banner h1 {text-shadow: white 2px 2px 4px }
table.banner td {white-space: nowrap}
p.suboption, div.suboption {margin: 0 0 0 5ex; text-indent: -2ex}
div.parent_wrapper {display: inline}
div.list {padding: 1px 0px 1px 2ex}
span.email {font-family: Courier New, courier, fixed; font-weight: 600}
.warning {color: red; font-weight: bold}

div.description { border: solid 1px #bbb;
		  border-radius: 8px;
		  max-width: 70ex;
		  margin-right: 20px;
		    -moz-border-radius: 8px;
		    -webkit-border-radius: 8px;
		  background-color: #f0f0f0; color: black; padding: 5px;
		  font-family: Verdana, Arial, helvetica, sans-serif; }
#jshelp p {text-align: left; width: 36ex}
#jshelp ol {text-align: left; width: 36ex}
p#jsnohelp {text-align: left; width: 36ex}

div#details { border: solid 1px #ccb; background-color: #eee;
              color: black; padding: 5px; margin: 5px;
	      display: none }

button#hide_details { display: inline }

div.content {text-align: left; padding: 5ex}
p.explanation {text-align: left; width: 60ex}
td.answer {text-align: left}
td.question {text-align: right}

dt { font-weight: bold }
dd { font-size: 90%; margin-left: 3em }

table#completion_meter { border-style: solid; border-width: 1px; border-color: black; width: 250px; padding: 0; margin: 0}
td#completed_meter {height: 1ex; background-color: #000080; padding: 0; margin: 0; border-style: none}
td#incomplete_meter {background-color: transparent; padding: 0; margin: 0; border-style: none}
table#civs_uses {font-size: 90%}
table.ballots {font-size: 80%; border: solid 1px #aac}
table.ballots th {background-color: transparent; color: black; font-size: 70%}

li b, td > b, strong { color: #842 }

#move_top, #move_up, #make_tie, #move_down, #move_bottom { font-size: 90% }

textarea.paste { font-family: Courier, fixed; font-size: 80% }

pre#examples {
    font-size: 80%;
    background-color: #eee;
    border: 1px solid #aaa;
    padding: 0.5ex;
    z-index: 3;
    width: 123ex;
}
div#fineprint {
    font-size: 80%;
    width: 80ex;
}
div#instructions {
    border-style: solid;
    border-width: 1px;
    font-size: 80%;
    padding-right: 1em;
    padding-left: 1ex;
    background-color: #fed;
    z-index: 2;
    position: absolute;
    right: 0;
}
.hint { font-size: 80%; margin: 0 0 0 0 }
input { font-family: serif; font-weight: bold; font-size: 110% }
span.m { font-family: serif; font-weight: bold; font-size: 110% }
span.mi { font-family: serif; font-style: italic; font-size: 110% }
#closebutton { position: absolute; right: 2px; top: 2px }
button { font-size: 100%; font-weight: bold; margin: 1ex 0 1ex 0.5ex }

input[type='reset'] {
    background-color: #d8d8e0;
    font-weight: normal;
    border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px;
    border: 1px solid #666;
}
