html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; } html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { border: 0; font-size: 100%; } html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, tt, var, b, u, i, center, dl, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { vertical-align: baseline; } html, body, div, span, applet, object, iframe, p, blockquote, a, abbr, acronym, address, big, cite, del, dfn, em, img, ins, q, s, small, strike, strong, sub, sup, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { font-family: {{bodyfont}}; } code, pre, tt, kbd, samp { font-family: {{monospacefont}}; font-variant-ligatures: none; } code *, pre *, tt *, kbd *, samp * { font-family: {{monospacefont}} !important; font-variant-ligatures: none; } article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; } table { border-collapse: collapse; border-spacing: 0; } h1, h2, h3, h4, h5, h6 { font-family: {{headerfont}}; } blockquote, q { quotes: none; } blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; } .h2Annex { font-family: {{headerfont}}; } dl { display: grid; grid-template-columns: max-content auto; } dl dt p, dl dd p { margin-top: 0; } dl dt { grid-column-start: 1; } dl dd { grid-column-start: 2; } b, strong { font-weight: bold; } div.document-stage-band, div.document-type-band { background-color: #333333; } #nist-sp-band { background-color: #d8eca8; } #nist-sp { border-bottom: solid 3px #d8eca8; } #nist-cswp-band { background-color: #b2da54; } #nist-cswp { border-bottom: solid 3px #b2da54; } #standard-band { background-color: #9ABD48; } #standard { border-bottom: solid 3px #9ABD48; } #final-band { background-color: #d8eca8; } #final { border-bottom: solid 3px #d8eca8; } #proposal-band { background-color: #F7803C; } #proposal { border-bottom: solid 3px #F7803C; } #internal-draft-band { background-color: #F7803C; } #internal-draft { border-bottom: solid 3px #F7803C; } #public-draft-band { background-color: #fd06fd; } #public-draft { border-bottom: solid 3px #fd06fd; } #initial-public-draft-band { background-color: #fd06fd; } #initial-public-draft { border-bottom: solid 3px #fd06fd; } #final-public-draft-band { background-color: #fd06fd; } #final-public-draft { border-bottom: solid 3px #fd06fd; } #withdrawal-pending-band { background-color: #750697; } #withdrawal-pending { border-bottom: solid 3px #750697; } #retired-draft-band { background-color: #7e0d13; } #retired-draft { border-bottom: solid 3px #7e0d13; } #withdrawn-band { background-color: #7e0d13; } #withdrawn { border-bottom: solid 3px #7e0d13; } dl { grid-template-columns: 25% 75%; } dl.glossary dt { font-weight: bold; } body { margin-left: auto; margin-right: auto; max-width: 100%; font-size: 14px; font-weight: 400; line-height: 1.6em; color: #141115; background-color: #fff; } body main { margin: 0 3em 0 6em; } .rule { width: 100%; height: 1px; background-color: #2677ea; margin: 2em 0; } .rule-2 { width: 100%; height: 1px; background-color: #2677ea; } .rule-thick { width: 100%; height: 3px; background-color: #2677ea; margin: 3em 0 0 0; } #toc { font-family: 'Source Sans Pro', sans-serif; } #toc ul { margin: 0; padding: 0; list-style: none; } #toc ul li a { padding: 5px 10px; } #toc ul a { color: #141115; text-decoration: none; display: block; } #toc ul a:hover { box-shadow: none; color: white; } #toc .h2 { padding-left: 30px; } #toc .h3 { padding-left: 50px; } #toc .toc-active, #toc li:hover { background: #006494; box-shadow: inset -5px 0px 10px -5px #006494 !important; } #toc .toc-active a, #toc li:hover a { color: white; } @media print { #toc .toc-active, #toc li:hover { background: white; box-shadow: none !important; } #toc .toc-active a { color: #141115; } #toc li:hover a { color: black; } } #toc li a { font-size: 14px; } #toc li:before { content: " "; display: none; } @media screen and (min-width: 768px) { nav { position: fixed; top: 0; bottom: 0; left: 0; width: 323px; font-size: 0.9em; overflow: auto; padding: 0 0 0 45px; background-color: white; } } @media print { nav { position: relative; width: auto; font-size: 0.9em; overflow: auto; padding: 0; margin-right: 0; background-color: white; } } nav #toc { font-family: {{bodyfont}}; font-weight: 400; } @media screen and (max-width: 768px) { nav #toc { padding: 0 1.5em; overflow: visible; } } @media screen and (min-width: 768px) { #toggle { position: fixed; height: 100%; width: 30px; background-color: #006494; color: white !important; cursor: pointer; z-index: 100; } #toggle span { text-align: center; width: 100%; position: absolute; top: 50%; transform: translate(0, -50%); } } @media screen and (max-width: 768px) { #toggle { display: none; } } @media print { #toggle { display: none; } } @media screen and (min-width: 768px) { .container { padding-left: 360px; } } @media print { .container { padding-left: 0; } } @media screen and (min-width: 768px) { .rule.toc { display: none; } } span.nistvariable { font-family: {{bodyfont}}; font-style: italic; } /* Document bands */ .document-stage-band { left: 0; top: 0; height: 100%; position: fixed; display: block; z-index: 101; box-shadow: -5px 0px 10px #1d1d1d; } .document-stage-band > :first-child { position: relative; width: 25px; font-family: 'Source Sans Pro', sans-serif; font-weight: 300; height: 160px; color: #7ba812; text-transform: uppercase; font-size: 0.9em; font-weight: 400; letter-spacing: 0.05em; margin: 0; margin-left: 6px; writing-mode: tb-rl; -webkit-transform: rotate(180deg); -moz-transform: rotate(180deg); -o-transform: rotate(180deg); white-space: nowrap; display: block; bottom: 0; } @media print { .document-stage-band { display: none; } } .document-type-band { left: 0; top: 180px; height: 100%; position: fixed; display: block; z-index: 102; } .document-type-band > :first-child { position: relative; width: 25px; font-family: 'Source Sans Pro', sans-serif; font-weight: 400; color: #7ba812; text-transform: uppercase; font-size: 0.9em; font-weight: 400; letter-spacing: 0.05em; margin: 0; margin-left: 6px; writing-mode: tb-rl; -webkit-transform: rotate(180deg); -moz-transform: rotate(180deg); -o-transform: rotate(180deg); white-space: nowrap; display: block; bottom: 0; } @media print { .document-type-band { display: none; } } .document-type-band .document-type { top: 20px; } #governance-band p.document-type { height: 230px !important; } #standard-band p { height: 270px !important; } #proposal-band p { height: 150px !important; } #standard, #final { color: #9ABD48; } .coverpage-maturity, .coverpage-stage { font-family: 'Source Sans Pro', sans-serif; font-weight: 400; font-size: 1em; margin: 0 0 2em 0; text-transform: uppercase; } .coverpage-maturity { font-family: {{bodyfont}}; font-weight: 400; font-size: 1em; margin: 0 0 2em 0; text-transform: uppercase; } .coverpage-warning { border: #f36f36 solid 2px; color: #f36f36 !important; margin: 50px 100px; color: #2e81c2; padding: 10px; border-radius: 25px; text-align: center; font-size: 14px; } .coverpage-warning p { margin: 0; line-height: 1.6; } .coverpage-warning .title, .coverpage-warning .authority6 h1, .coverpage-warning .authority6 h2 { margin-top: 0em; font-family: 'Source Sans Pro', sans-serif; font-weight: 300; text-transform: uppercase; font-size: 1.2em; } .logo-wrapper { margin-left: 3em; margin-top: 100px; margin-bottom: 100px; float: right; } img#NIST-logo { width: 300px; height: auto; padding-top: 3m; margin-right: 50px; } .logo-info { margin-left: 3em; margin-bottom: 1.5em; } .logo-info p { margin: 0; } #commerce-logo { width: 150px; height: auto; } .authors-container, .currency { margin-top: 2em; } .affiliation { font-style: italic; margin-bottom: 1em; } .main-section { word-wrap: break-word; } .coverpage-title { font-family: {{headerfont}}; } .coverpage-title span { font-family: {{headerfont}}; font-size: 1.1em; line-height: 1; } .wrapper-top { background: #fff; color: #141115; padding: 7em 0; margin-left: 3em; } .doc-number { font-size: 20px; font-family: {{bodyfont}}; line-height: 1.6; margin: 1.5em 0; } .title-second { font-style: italic; font-size: 15px; line-height: 1.6; margin-bottom: 1.5em; } .download-info { margin-top: 2em; } .category { color: #2677ea; margin-top: 4em; margin-right: 2em; padding: 0.7em 1em; text-align: center; border-top: solid 1px #2677ea; border-bottom: solid 1px #2677ea; text-transform: uppercase; } .banner { border-top: 1px solid #2677ea; border-bottom: 1px solid #2677ea; margin-right: 50px; margin-top: 100px; } #inactive-draft.banner { display: none; } .banner p { text-transform: uppercase; font-weight: 300; font-size: 16px; letter-spacing: 5px; text-align: center; color: #2677ea; font-family: {{monospacefont}}; } .WordSection11 { padding: 0 2em 0 3em; } .info-section { padding: 0; } .prefatory-section { padding: 0 3em 0 6em; } .zzSTDTitle1, .MsoCommentText { display: none; } .coverpage { text-align: left; padding-left: 1.5em; } .coverpage-logo span, .coverpage-tc-name span { font-family: {{bodyfont}}; text-transform: none; font-weight: 300; } .coverpage-logo span { display: block; float: left; } .coverpage-tc-name { font-size: 1.2em; line-height: 1.2em; margin: 0.25em 0; } .coverpage-doc-identity { font-size: 2em; line-height: 1.5em; margin-bottom: 150px; } .coverpage-stage-block { font-family: 'Source Sans Pro', sans-serif; font-weight: 600; font-size: 1.25em; margin: 2em 0em 2em 0em; text-transform: uppercase; } .copyright { padding: 1em; font-size: 0.9em; text-align: left; } table.coverpage-table { max-width: 500px; font-size: 14px; } .more-info { margin-right: 50px; } .more-info h2 { text-align: center; color: #2e81c2; font-size: 20px; font-family: 'Source Sans Pro', sans-serif; font-weight: 300; text-transform: uppercase; } .more-info p { font-size: 14px; } .contact-info, .authority5 { padding: 2em; margin-top: 5em; text-align: left; color: #2677ea !important; background-color: #f1f8ff; border-radius: 25px; } .contact-info a, .contact-info a:hover, .authority5 a, .authority5 a:hover { color: #2677ea; } .authority5 h2 { text-align: center; } .authority3 { border: solid; padding: 1em; } .contact-info { width: 280px; } .contact-info a:hover { text-decoration: underline; background: none; box-shadow: 0 0 0 0; } .contact-info p, .contact-info a { font-family: {{monospacefont}}; font-variant-ligatures: none; font-weight: 400; } .contact-info .name { font-weight: 700; font-size: 14px; margin-bottom: 5px; } .contact-info .address { font-size: 12px; line-height: 1.3em; margin-top: 0; } .draft-state-container { margin-bottom: 30px; margin-top: -30px; } .draft-state { font-size: 20px; color: #f36f36; } #inactive-draft.draft-state { color: #7e0d13; } #inactive-final.draft-state { color: #750697; } .draft-description { font-size: 14px; } .draft-description p { margin-top: 10px; margin-bottom: 0; } #retired-draft { color: #7e0d13; } @media print { .coverpage { height: 23cm; } } .recommend { background-color: #ccffcc; padding: 1.2em; margin: 2em 0 1em 0; } .recommend .RecommendationTitle { font-weight: 700; font-size: 1em; text-align: center; } .require .RecommendationTitle { font-weight: 700; font-size: 1em; text-align: center; } .permission .RecommendationTitle { font-weight: 700; font-size: 1em; text-align: center; } /* TYPOGRAPHY */ h1, h2, h3, h4, h5, h6 { font-weight: 400; margin-top: 1.6em; margin-bottom: 0.3em; } h1 { font-size: 1.4em; text-transform: uppercase; margin-top: 2em; } h1#content { margin-top: 2em; } h2 { margin-top: 1.7em; font-size: 1.3em; font-weight: 300; } h2 p { display: inline; } h2.TermNum { margin-bottom: 0; } h3 { margin-top: 1.5em; font-size: 1.2em; font-weight: 100; } h4 { font-size: 1em; } .TermNum, .Terms, .AltTerms { font-weight: 300; } p { margin-top: 1em; margin-bottom: 1em; } p.AltTerms { font-size: 20px; margin-top: 1em; } /* Links, selection */ a, a:visited { text-decoration: none; color: #2677EA; } a:hover { color: white; background: #2677EA; box-shadow: 3px 0 0 #2677EA, -3px 0 0 #2677EA; } ::selection, ::-moz-selection { background: #2677EA; color: white; } /* Lists */ ul, ol { margin-left: 1.2em; } ul > li:first-child { margin-top: 1em; } ul > li p:first-child { display: inline; } /* Bibliograhy */ p.Biblio, p.NormRef { margin-top: 1em; margin-left: 2em; } /* Blocks */ .figure { line-height: 1.6em; padding: 1.5em; margin: 2em 0 1em 0; overflow: auto; font-family: {{monospacefont}}; font-variant-ligatures: none; font-size: 0.8em; background-color: #f6f6f6; } .figure .FigureTitle, .figure .figure-title { font-weight: 700; font-size: 1em; text-align: center; } .figure > img { margin-left: auto; margin-right: auto; display: block; max-width: 100%; height: auto; } .SourceTitle { font-weight: 700; font-size: 1em; text-align: center; } pre { font-family: {{monospacefont}}; font-variant-ligatures: none; background-color: #f6f6f6; font-size: 0.8em; line-height: 1.6em; padding: 1.5em; margin: 2em 0 1em 0; overflow-y: auto; overflow-x: scroll; } .pseudocode { background-color: #f6f6f6; font-size: 0.8em; line-height: 1.6em; padding: 1.5em; margin: 2em 0 1em 0; overflow: auto; } .pseudocode .SourceTitle { font-weight: 700; font-size: 1em; text-align: center; } .Note { background-color: #ffca3a; color: #141115; padding: 1.2em; margin: 1em 0 1em 0; } .Note p { margin: 0; } .Admonition { background-color: #ffcccc; color: #47430c; padding: 1.2em; margin: 1em 0 1em 0; } .Admonition .AdmonitionTitle { font-weight: 700; font-size: 1em; text-align: center; } .Admonition p { margin: 0; } .Quote { background-color: #f6f6f6; font-style: italic; width: 80%; padding: 1.5em; margin-top: 2em; margin-left: auto; margin-right: auto; } p.blockQuote { padding-left: 20px; } .formula { background-color: #f6f6f6; padding: 1.5em; margin-top: 2em; text-align: center; } /* Examples */ .example { background-color: #e1eef1; padding: 1.2em; margin: 2em 0 1em 0; padding-left: 2em; } .example pre, .example .pseudocode { background: none; } .example .example-title { font-weight: 700; text-transform: uppercase; margin-top: 0; margin-left: -1.5em; } .pseudocode { background-color: #dddddd; padding: 1.2em; margin: 2em 0 1em 0; padding-left: 2em; } .pseudocode .example-title { font-weight: 700; text-transform: uppercase; text-align: center; margin-top: 0; margin-left: -1.5em; } .example pre, .example .pseudocode { background: none; } /* Tables */ table { width: 100%; font-weight: 300; margin: 1em 0 2em 0; margin-left: auto; margin-right: auto; padding-right: 2em; color: #141115; } table, table th, table td { border: none !important; font-size: 0.95em; } table th, table td { padding: 1em; } table td.header { font-weigth: 400; } table tr:nth-child(even) { background: #f1f8ff; } table tr:nth-child(odd) { background: #f6f8fa; } p.TableTitle { text-align: center; margin-top: 2.5em; font-weight: 400; } /* Footnotes */ a.footnote-number { vertical-align: super; font-size: 0.8em; } .footnote { font-size: 0.9em; } /* Keywords */ span.keyword { font-weight: 600; } /* To top button */ #myBtn { font-family: {{monospacefont}}; font-variant-ligatures: none; display: none; position: fixed; bottom: 20px; right: 30px; z-index: 99; font-size: 12px; border: none; outline: none; background-color: #2677ea; opacity: 0.15; color: white; cursor: pointer; padding: 10px 15px 10px 15px; border-radius: 4px; text-transform: uppercase; } #myBtn:hover { opacity: 1; } @media print { #myBtn { display: none; } } @media print { #myBtn { background-color: white; } } .anchorjs-link:hover { background: none; color: #2e81ca; box-shadow: none; } @page { margin: 2cm 1cm; } @media print { .document-info, nav, .copyright { page-break-before: always; } nav { page-break-after: always; } h1, h2, h3, h4 { page-break-after: avoid; margin-top: 1.2em; } .note, .figure, pre, .pseudocode, table { page-break-inside: avoid; } .info-section { display: none; } .wrapper-top { top: 0; padding-top: 4cm; padding-bottom: 4cm; } .wrapper-top-bottom { display: none; } h1 { font-size: 1.5em; line-height: 1.5; } h1.content { margin-top: 2em; line-height: 2.5em; } h2 { font-size: 1.2em; } h3 { font-size: 1em; } .Note { background-color: #fff495; color: #47430c; padding: 5px; margin: 2em 0 1em 0; } .Note p { padding: 0 5px 0 5px; } nav { line-height: 1; } }