body {
  font-family: Arial, sans-serif;
  font-size: 85%;
  line-height: 1.125em;
  margin: 25px 0 0 0;
  padding: 0;
}

table {
  margin: 0;
  padding: 0;
  border-collapse: collapse;
  width: 100%;
}
td {
  vertical-align: top;
  padding: 0;
  margin: 0;
}

/* The pads should only take up their declared width when window size allows. */
#sidepad {
  width: 18px;
}
#contentpad {
  width: 30px;
}

#side {
  /* This width will only be achieved when screen width allows. */
  width: 220px;
}
#sidecontainer {
  /* By not wrapping text, we get a minimum width that depends on the longest
text in the side. */
  white-space: nowrap;
  margin-left: 10px;
  margin-right: 20px;
}

#side #rpcontinued {
  margin: 0 0 30px 6px;
  font-size: 1.6em;
  letter-spacing: 0.03em;
  line-height: 1em;
}

#side .nav {
  line-height: 30px;
  font-size: 1em;
}
#side .nav ul {
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
}
#side .nav li a {
  display: inline;
  line-height: 1.8em;
  padding: 0 12px 0 6px;
  margin-right: 16px;
  margin-top: 8px;
  margin-bottom: 8px;
  text-decoration: none;
  color: #222;
}
#side .nav li a:hover {
  text-decoration: underline;
}
#side .nav li a[selected="true"] {
  color: #35c;
  font-weight: bold;
}
#side .subnav {
  margin-top: 20px;
  padding-top: 20px;
  border: 1px solid #eee;
  border-width: 1px 0 0 0;
  line-height: 20px;
}
#side .subnav li a {
  line-height: 1em;
}
#side .subnav li a[selected="true"] {
  font-weight: bold;
}

#content {
  padding: 0 30px 10px 0;
}
#contentcontainer {
  min-width: 700px;
  max-width: 1000px;
}

#pagetitle {
  font-size: 1.6em;
  border: 0 solid #eee;
  padding-bottom: 10px;
  margin-bottom: 20px;
  border-bottom-width: 1px;
}
#page-subsection {
  font-size: 1.3em;
  border: 0 solid #eee;
  font-style: italic;

  padding-top: 10px;
  margin-top: 30px;

  padding-bottom: 10px;
  margin-bottom: 20px;
  border-bottom-width: 1px;
}
h2 {
  font-size: 1.3em;
  font-weight: normal;
}

p.learnmore {
  margin-bottom: 24px;
}

.settings input {
  margin-right: 10px;
  /* Vertically align the inputs and labels is annoying trial-and-error. */
  /* Note: this might be theme-dependent, too. Need to try on windows/mac. */
  margin-bottom: 5px;
  vertical-align: middle;
}
table.settings td {
  padding-bottom: 15px;
}
table.settings tr:not(:first-child) td {
  padding-top: 15px;
}
table.settings td:first-child {
  width: 140px;
  margin-right: 10px;
  font-weight: bold;
}
table.settings td:nth-child(2) {
  color: #444;
}
table.settings tr:not(:first-child) {
  border-top: 1px solid #eee;
}

#defaultdenysetting {
  margin-top: 10px;
}

#defaultpolicyword {
  font-weight: bold;
}

#subscriptionschanged {
  margin-top: 20px;
}

/* yourpolicy.html */

#addrule {
  background-color: #F7F7F7;
  padding: 10px;
  margin-bottom: 30px;
}

#addrule ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

#addrule ul li {
  padding: 5px;
  margin-left: 10px;
}

#addrule input[type="text"] {
  border: 1px solid #ddd;
  padding: 5px;
}

#addrule .input-label {
  font-weight: bold;
  margin-left: 0;
}

#addrule .rule-action {
  font-weight: bold;
}

#addrule p {
  padding-left: 5px;
  float: right;
}

#addrule a {
  color: #35c;
  font-weight: bold;
  text-decoration: none;
}

#addrule button {
  width: 25%;
}

#policysearch {
  text-align: right;
  font-weight: bold;
  margin-bottom: 10px;
  background-color: #F7F7F7;
  padding: 10px;
}

#policysearch input {
  padding: 5px;
  border: 1px solid #ddd;
  width: 25%;
}

#policy-user {
}

#policy-user th {
  text-align: left;
}

#policy-user tbody {
  border: 1px solid #ddd;
}

#policy-user tbody td,
#policy-user thead th {
  padding: 10px;
  overflow: hidden;
  word-wrap: break-word;
}

#policy-user col.origin,
#policy-user col.destination {
  width: 50%;
}

a.deleterule {
  color: #D0D0D0;
  text-decoration: none;
  font-weight: bold;
  font-size: 1.2em;
  outline: none;
}

#policy-user tr:hover a.deleterule {
  display: inline;
  color: #EA3556;
}

#policy-user tr:hover a.deleterule:hover {
  color: #000;
}

#policy-user tbody tr:nth-child(odd) {
   background-color: #FAFAFA;
}

#policy-user tbody tr:hover {
  background-color: #B9D3EE;
}

.allow {
  color: #007F00;
}

.block {
  color: #7F0000;
}

.yourpolicy h2 {
  border-bottom: 2px solid #E2E5EE;
  padding-bottom: 5px;
}
