@charset 'iso-2022-jp';
@import 'xhtml.css';

/* Document Header in Body */

div.header, header {
  display: block;
  padding-bottom: 1em;
  border-bottom: 2px groove #C0C0C0;
}

hgroup {
  display: block;
}

/* Title */
html.formal-specification h1 {
  margin-bottom: 0;
  text-align: left;
  line-height: 1.5;
  font-size: 170%;
}

html.formal-specification h1 + h1:lang(en) {
  margin-top: 0;
  font-size: 120%;
}

@media screen {
  html.formal-specification h1 + h1:lang(en) {
    opacity: 0.3;
  }
}

/* Status and Date */
html.formal-specification h1 + h2,
html.formal-specification hgroup h1 + h2 {
  margin-top: 0.2em;
  text-align: left;
  line-height: 1.5;
  font-size: 140%;
}

/* --- Sections --- */

body {
  counter-reset: chapter appendix;
  padding-left: 2em;
}

div.section, section {
  clear: both;
}

html.formal-specification div.section#abstract,
html.formal-specification div.section#ABSTRACT,
html.formal-specification div.section#status,
html.formal-specification div.section#STATUS {
  counter-increment: none;
}

html.formal-specification h1, 
html.formal-specification h2,
html.formal-specification h3,
html.formal-specification h4,
html.formal-specification h5,
html.formal-specification h6 {
  color: #400080;
  background-color: transparent;
}

h2, div.appendix h3 {
  font-size: 140%;
  counter-increment: chapter;
  counter-reset: section;
}

h2:before {
  content: "";
  content: counter(chapter) ". ";
}

div.appendix h3:before {
  content: counter(appendix, upper-alpha) "." counter(chapter) ". ";
}

html.formal-specification div.header > h2,
html.formal-specification div.section#abstract > h2, 
html.formal-specification div.section#ABSTRACT > h2, 
html.formal-specification div.section#status > h2,
html.formal-specification div.section#STATUS > h2 {
  counter-increment: none;
}

html.formal-specification div.header > h2:before,
html.formal-specification div.section#abstract > h2:before, 
html.formal-specification div.section#ABSTRACT > h2:before, 
html.formal-specification div.section#status > h2:before,
html.formal-specification div.section#STATUS > h2:before {
  content: "";
  content: normal;
  counter-increment: none;
}

h3, div.appendix h4 {
  counter-increment: section;
  counter-reset: subsection;
  font-size: 120%;
}

h3:before {
  content: "";
  content: counter(chapter) "." counter(section) ". ";
}

html.formal-specification h4:before {
  content: "";
  content: counter(appendix, upper-alpha) "."
           counter(chapter) "." counter(section) ". ";
  counter-reset: subsection;
}

html.formal-specification h5:before {
  content: "";
  content: counter(appendix, upper-alpha) "."
           counter(chapter) "." counter(section) "."
           counter(subsection)". ";
  counter-increment: subsection;
}

div.section.normative h2:after {
  content: " ($B5,Dj(B) ";
}
div.section.normative h2:lang(en):after {
  content: " (Normative) ";
}
#reference.section.normative h2:after,
#REFERENCE.section.normative h2:after {
  display: none;
  content: "";
}

div.section.informative > h2:after,
div.section.informative > h3:after {
  content: " ($B;29M(B) ";
}
div.section.informative > h2:lang(en):after,
div.section.informative > h3:lang(en):after {
  content: " (Informative) ";
}
.reference.section.informative > h2:after,
.reference.section.informative > h3:after,
#INFORMATIVE-REFERENCE.section.informative > h2:after {
  display: none;
  content: "";
}

div.appendix {
  margin-top: 5em;
  border-top: solid black 1px;
  padding-top: 1em;
  counter-reset: chapter;
  counter-increment: appendix;
}

@media print {
  div.appendix {
    border-style: none;
    page-break-before: always;
  }
}

div.appendix h2 {
  counter-increment: none;
  text-align: center;
}

div.appendix h2:before {
  content: "$BImB0=q(B";
  content: "$BImB0=q(B " counter(appendix, upper-alpha);
  display: block;
}

div.appendix h2:after {
  display: block;
  color: gray;
  font-size: 70%;
  font-weight: normal;
}

html.anolis h2:before,
html.anolis h3:before,
html.anolis h4:before,
html.anolis h5:before,
html.anolis h6:before {
  content: "";
}

.toc li {
  list-style: none;
}

/*
  Paragraphs at the beginning of sections, such as
  "This section is non-normative".
*/
.section-info {
  margin-bottom: 1em;
  text-indent: 0;
  line-height: 1.5;
}
.section-info:lang(en), .section-info:lang(ja) {
  text-indent: 0;
}
.section-info:lang(en) {
  font-style: italic;
}

/* --- Ordered List --- */

ol li, ol li ol li, ol li ol li ol li {
  list-style-type: decimal;
}

/* --- Term Definition --- */

dl.term-definition {
  counter-reset: term;
}

html.formal-specification div.section div.section
dl.term-definition > dd + dt {
  margin-top: 1em;
}

html.formal-specification div.section div.section
dl.term-definition > dt:first-child:before,
html.formal-specification div.section div.section
dl.term-definition > dd + dt:before {
  display: block;
  content: counter(chapter) "." counter(section) "." counter(term) ". ";
  counter-increment: term;
}

var:lang(en) {
  font-family: inherit;
}

dfn:lang(en) {
  font-style: normal;
  font-weight: bolder;
}

dfn:lang(en) var:lang(en):lang(en) {
  font-style: italic;
}

/* --- Algorithms --- */

.algorithm {
  margin: 0.3em 1.5em;
  border-left: #400080 1px solid;
  padding-left: 1.5em;
}

/* --- Code fragments --- */

pre {
  margin: 0.3em 1.5em;
  border: 0.0625em solid black;
  padding: 0.5em 1em;
  line-height: 1.4;
  background-color: #dfdfdf;
  color: black;
  white-space: pre-wrap;
}

pre > code, pre a {
  color: inherit;
}

.idl {
  margin-left: 3em;
}

.idl::before {
  content: "IDL";
  position: absolute;
  top: auto;
  width: 1.5em;
  margin: -0.5625em 0 0 -3.1625em;
  border: 1px black;
  border-style: solid none solid solid;
  border-radius: 1em 0 0 1em;
  padding: 0.3em;
  background-color: #dfdfdf;
  color: black;
}

/* --- References --- */

.standard-number,
.standard-section,
.standard-this {
  font-family: sans-serif;
  font-weight: bolder;
  text-decoration: none;
}

cite.bibref.normative {
  color: red;
}

cite.bibref.informative {
  color: green;
}
.reference > dl > dt,
#REFERENCE > dl > dt {
  width: 7em;
  float: left;
  clear: left;
  list-style: none;
  font-weight: normal;
}

.normative.reference > dl > dt {
  color: red;
  background-color: transparent;
}

.informative.reference > dl > dt {
  color: green;
  background-color: transparent;
}

.reference > dl > dt:before,
div#REFERENCE > dl > dt:before {
  content: "[";
}

.reference > dl > dt:after,
div#REFERENCE > dl > dt:after {
  content: "]";
}

.reference > dl > dd,
div#REFERENCE > dl > dd {
  margin-left: 0.5em;
  margin-bottom: 1em;
  padding-left: 1em;
}

.reference > dl > dd + dd,
div#REFERENCE > dl > dd + dd {
  margin-left: 9.5em;
}


/* License

Copyright 2004-2013 Wakaba <wakaba@suikawiki.org>.

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; see the file COPYING.  If not, write to
the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA.

*/
