/* hackade.org CSS inspired by Sourcehut style */ :root { --blue: #007bff; --indigo: #6610f2; --purple: #6f42c1; --pink: #e83e8c; --red: #dc3545; --orange: #fd7e14; --yellow: #ffc107; --green: #28a745; --teal: #20c997; --cyan: #17a2b8; --white: #fff; --gray: #6c757d; --gray-dark: #343a40; --primary: #007bff; --secondary: #6c757d; --success: #28a745; --info: #17a2b8; --warning: #ffc107; --danger: #dc3545; --light: #f8f9fa; --dark: #343a40; --breakpoint-xs: 0; --breakpoint-sm: 576px; --breakpoint-md: 768px; --breakpoint-lg: 992px; --breakpoint-xl: 1200px; --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; --font-family-monospace: monospace; } *, *::before, *::after { box-sizing: border-box; } html { font-family: sans-serif; line-height: 1.15; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; -ms-overflow-style: scrollbar; -webkit-tap-highlight-color: transparent; } @-ms-viewport { width: device-width; } footer, header, nav { display: block; } body { margin: 0; font-family: -apple-system, BlinkMacSystemFont, segoe ui, Roboto, helvetica neue, Arial, sans-serif, apple color emoji, segoe ui emoji, segoe ui symbol; font-size: 1rem; font-weight: 400; line-height: 1.5; color: #212529; text-align: left; background-color: #fff; } hr { box-sizing: content-box; height: 0; overflow: visible; } h1, h2, h3, h4, h5, h6 { margin-top: 0; margin-bottom: 0.5rem; } p { margin-top: 0; margin-bottom: 1rem; } address { margin-bottom: 1rem; font-style: normal; line-height: inherit; } ol, ul { margin-top: 0; margin-bottom: 1rem; } ol ol, ul ul, ol ul, ul ol { margin-bottom: 0; } blockquote { margin: 0 0 1rem; } strong { font-weight: bolder; } a { color: #0242f2; text-decoration: none; background-color: initial; -webkit-text-decoration-skip: objects; } a:hover { color: #0056b3; text-decoration: underline; } a:not([href]):not([tabindex]) { color: inherit; text-decoration: none; } a:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus { color: inherit; text-decoration: none; } a:not([href]):not([tabindex]):focus { outline: 0; } pre, code { font-family: monospace; font-size: 1em; } pre { margin-top: 0; margin-bottom: 1rem; overflow: auto; -ms-overflow-style: scrollbar; } img { vertical-align: middle; border-style: none; } svg:not(:root) { overflow: hidden; } table { border-collapse: collapse; } caption { padding-top: 0.75rem; padding-bottom: 0.75rem; color: #6c757d; text-align: left; caption-side: bottom; } th { text-align: inherit; } progress { vertical-align: baseline; } [type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; } ::-webkit-file-upload-button { font: inherit; -webkit-appearance: button; } code { font-size: 87.5%; color: #e83e8c; word-break: break-word; } a > code { color: inherit; } pre { display: block; font-size: 87.5%; color: #212529; } pre code { font-size: inherit; color: inherit; word-break: normal; } pre.hl { background: #e9ecef; padding: 0.25rem; } h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { margin-bottom: 0.5rem; font-family: inherit; font-weight: 500; line-height: 1.2; color: inherit; } h1, .h1 { font-size: 2.5rem; } h2, .h2 { font-size: 2rem; } h3, .h3 { font-size: 1.75rem; } h4, .h4 { font-size: 1.5rem; } h5, .h5 { font-size: 1.25rem; } h6, .h6 { font-size: 1rem; } hr { margin-top: 1rem; margin-bottom: 1rem; border: 0; border-top: 1px solid rgba(0, 0, 0, 0.1); } .blockquote { margin-bottom: 1rem; font-size: 1.25rem; } .container { width: 100%; padding-right: 15px; padding-left: 15px; margin-right: auto; margin-left: auto; } @media (min-width: 576px) { .container { max-width: 540px; } } @media (min-width: 768px) { .container { max-width: 720px; } } @media (min-width: 992px) { .container { max-width: 960px; } } @media (min-width: 1200px) { .container { max-width: 1140px; } } .table, .markdown table { width: 100%; max-width: 100%; margin-bottom: 1rem; background-color: initial; } .table th, .markdown table th, .table td, .markdown table td { padding: 0.75rem; vertical-align: top; border-top: 1px solid #dee2e6; } .table thead th, .markdown table thead th { vertical-align: bottom; border-bottom: 2px solid #dee2e6; } .table tbody + tbody, .markdown table tbody + tbody { border-top: 2px solid #dee2e6; } .table .table, .markdown table .table, .table .markdown table, .markdown .table table, .markdown table table { background-color: #fff; } @keyframes progress-bar-stripes { from { background-position: 1rem 0; } to { background-position: 0 0; } } .progress { display: flex; /* height: 1rem; */ overflow: hidden; font-size: 0.75rem; background-color: #e9ecef; border-radius: 0.25rem; } .nav { display: flex; flex-wrap: wrap; padding-left: 0; margin-bottom: 0; list-style: none; } .nav-link { display: block; padding: 0.5rem 1rem; } .nav-link:hover, .nav-link:focus { text-decoration: none; } .nav-tabs { border-bottom: 1px solid #dee2e6; } .nav-tabs .nav-item { margin-bottom: -1px; } .nav-tabs .nav-link { border: 1px solid transparent; border-top-left-radius: 0.25rem; border-top-right-radius: 0.25rem; } .nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus { border-color: #e9ecef #e9ecef #dee2e6; } .nav-tabs .nav-link.active, .nav-tabs .nav-item.show .nav-link { color: #495057; background-color: #fff; border-color: #dee2e6 #dee2e6 #fff; } .navbar { position: relative; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; padding: 0.5rem 1rem; } .navbar > .container { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; } .navbar-brand { display: inline-block; padding-top: 0.3125rem; padding-bottom: 0.3125rem; margin-right: 1rem; font-size: 1.25rem; line-height: inherit; white-space: nowrap; } .navbar-brand:hover, .navbar-brand:focus { text-decoration: none; } .navbar-nav { display: flex; flex-direction: column; padding-left: 0; margin-bottom: 0; list-style: none; } .navbar-nav .nav-link { padding-right: 0; padding-left: 0; } @media (max-width: 575.98px) { .navbar-expand-sm > .container { padding-right: 0; padding-left: 0; } } @media (min-width: 576px) { .navbar-expand-sm { flex-flow: row nowrap; justify-content: flex-start; } .navbar-expand-sm .navbar-nav { flex-direction: row; } .navbar-expand-sm .navbar-nav .nav-link { padding-right: 0.5rem; padding-left: 0.5rem; } .navbar-expand-sm > .container { flex-wrap: nowrap; } } .navbar-light .navbar-brand { color: #000; } .navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus { color: #000; } .navbar-light .navbar-nav .nav-link { color: dimgray; } .navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus { color: rgba(0, 0, 0, 0.7); } .navbar-light .navbar-nav .show > .nav-link, .navbar-light .navbar-nav .active > .nav-link, .navbar-light .navbar-nav .nav-link.show, .navbar-light .navbar-nav .nav-link.active { color: #000; } .alert { position: relative; padding: 0.75rem 1.25rem; margin-bottom: 1rem; border: 1px solid transparent; border-radius: 0.25rem; } @media print { *, *::before, *::after { text-shadow: none !important; box-shadow: none !important; } a:not(.btn) { text-decoration: underline; } pre { white-space: pre-wrap !important; } pre, blockquote { border: 1px solid #adb5bd; page-break-inside: avoid; } thead { display: table-header-group; } tr, img { page-break-inside: avoid; } p, h2, h3 { orphans: 3; widows: 3; } h2, h3 { page-break-after: avoid; } @page { size: a3; } body { min-width: 992px !important; } .container { min-width: 992px !important; } .navbar { display: none; } .table, .markdown table { border-collapse: collapse !important; } .table td, .markdown table td, .table th, .markdown table th { background-color: #fff !important; } } .icon { display: inline-block; line-height: 0.75em; width: 1.1em; vertical-align: -0.2em; } .icon svg { display: block; } @keyframes fa-spin { 0% { transform: rotate(0); } 100% { transform: rotate(1turn); } } .navbar { flex-wrap: wrap; } .navbar .navbar-nav { flex-grow: 1; flex-wrap: nowrap; } @media (max-width: 575.98px) { .navbar .navbar-nav { flex-direction: row !important; } .navbar .navbar-nav .nav-link { padding: 0 0.5rem; } .navbar .navbar-nav .nav-link:first-child { padding-left: 0; } } .navbar .nav-link:hover { text-decoration: underline; } .navbar-light .navbar-brand a { text-decoration: none; color: #000; } .navbar-light .navbar-brand a:hover { text-decoration: underline; } .navbar-light .navbar-brand .icon { position: relative; top: 1px; } .nav-tabs { padding-left: 1rem; margin-bottom: 0.5rem; border-bottom: 3px #ddd solid; } .nav-tabs .nav-link { padding: 0 1rem; border-radius: 0; border: none; color: #65686a; cursor: pointer; } .nav-tabs .nav-link.active, .nav-tabs .nav-link.active:hover { color: #000; background: #ddd; } .header-tabbed { border-bottom: 3px solid #ddd; margin-bottom: 1rem; } .header-tabbed .container { display: flex; flex-wrap: wrap; } @media (max-width: 767.98px) { .header-tabbed .container { flex-direction: column; } } .header-tabbed h2 { display: inline; margin: 0; padding-right: 1rem; } .header-tabbed .nav { border: none; margin: 0; flex-grow: 1; display: inline-flex; flex-wrap: nowrap; padding: 0; } .header-tabbed .nav li { align-self: flex-end; } .header-tabbed .nav .nav-item:hover { background: #ddd; } .header-tabbed .nav .nav-item:hover a { color: #000; } @media (max-width: 767.98px) { .header-tabbed .nav { flex-wrap: wrap; } .header-tabbed .nav li { align-self: flex-start; margin: 0 -1rem; width: 100vw; } } .header-tabbed form { margin-top: 0; margin-bottom: 0; } @media (max-width: 575.98px) { .header-tabbed .nav-tabs { padding-left: 0; } } .map { margin-bottom: 1rem; text-overflow: ellipsis; overflow: hidden; padding: 0.5rem; margin: 0.5rem 0; background: #f8f9fa; } .map a { color: #0640e0; } .map a:hover { color: #0056b3; } .map:first-child { margin-top: 0; } .map:last-child { margin-bottom: 0; } .map h4 { text-overflow: ellipsis; white-space: nowrap; overflow: hidden; margin-bottom: 0; padding: 0; } .map blockquote { margin-bottom: 0.5rem; } .map blockquote *:last-child { margin-bottom: 0; } .map *:last-child { margin-bottom: 0; } .toc { margin-bottom: 1rem; text-overflow: ellipsis; overflow: hidden; padding: 0.5rem; margin: 0.5rem 0; background: #f8f9fa; } .toc a { color: #0640e0; } .toc a:hover { color: #0056b3; } .toc:first-child { margin-top: 0; } .toc:last-child { margin-bottom: 0; } .toc h4 { text-overflow: ellipsis; white-space: nowrap; overflow: hidden; margin-bottom: 0; padding: 0; } .toc blockquote { margin-bottom: 0.5rem; } .toc blockquote *:last-child { margin-bottom: 0; } .toc *:last-child { margin-bottom: 0; } body { font-family: sans-serif; font-size: 1rem; padding-bottom: 1rem; text-align: initial; } @media (max-width: 991.98px) { .container { width: 100%; max-width: 100%; } } a { text-decoration: underline; } a:hover { text-decoration: none; } a.nav-link, a.navbar-brand { text-decoration: none; } h1 a, h2 a, h3 a, h4 a, h5 a { text-decoration: none; } h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover { text-decoration: underline; } form { margin-bottom: 1rem; } h1 { font-size: 1.5rem; border-bottom: 1px solid #e9ecef; padding-bottom: 0.25rem; margin-top: 0; } h2 { font-size: 1.4rem; border-bottom: 1px solid #e9ecef; padding-bottom: 0.25rem; margin-top: 0; } h3 { font-size: 1.3rem; border-bottom: 1px solid #e9ecef; padding-bottom: 0.25rem; } h4 { font-size: 1.2rem; padding-bottom: 0.25rem; } h5 { font-size: 1rem; font-weight: 700; } .table thead th, .markdown table thead th { padding: 0.1rem 0.75rem; border: none; } .table tbody td, .markdown table tbody td { position: relative; background-clip: padding-box; vertical-align: middle; padding: 0.1rem 0.75rem; border: 1px solid #ced4da; background-color: #fff; } .alert { padding: 0.5rem; border-radius: 0; } blockquote { padding-left: 0.5rem; border-left: 3px solid #aaa; } pre { background: #e9ecef; padding: 0.25rem; } code { margin: 0; background: 0 0; color: #000; } .markdown h1, .markdown h2, .markdown h3, .markdown h4, .markdown h5, .markdown h6 { position: relative; margin-top: 1em; } .markdown h1:first-child, .markdown h2:first-child, .markdown h3:first-child, .markdown h4:first-child, .markdown h5:first-child, .markdown h6:first-child { margin-top: 0; } .markdown h1 > a:first-child, .markdown h2 > a:first-child, .markdown h3 > a:first-child, .markdown h4 > a:first-child, .markdown h5 > a:first-child, .markdown h6 > a:first-child { transition: opacity 0.15s linear; opacity: 0; position: absolute; font-size: inherit; left: -0.7em; } @media (prefers-reduced-motion) { .markdown h1 > a:first-child, .markdown h2 > a:first-child, .markdown h3 > a:first-child, .markdown h4 > a:first-child, .markdown h5 > a:first-child, .markdown h6 > a:first-child { transition: none; } } .markdown h1:hover > a:first-child, .markdown h2:hover > a:first-child, .markdown h3:hover > a:first-child, .markdown h4:hover > a:first-child, .markdown h5:hover > a:first-child, .markdown h6:hover > a:first-child { opacity: 1; } .markdown h1 img, .markdown h2 img, .markdown h3 img, .markdown h4 img, .markdown h5 img, .markdown h6 img { margin: 0 0.2rem; max-width: 100%; } @media (prefers-color-scheme: dark) { body { background: #212529; color: #f8f9fa; } .toc { background: #131618; color: #fff; } .toc a:not(.btn) { color: #3395ff; } .map { background: #131618; color: #fff; } .map a:not(.btn) { color: #3395ff; } a { color: #3395ff; } h3, h4 { border-bottom-color: #495057; } pre { color: #fff; background: #131618; } code { color: #fff; } .table, .markdown table, .table tbody tr, .markdown table tbody tr, .table tbody td, .markdown table tbody td, .table thead th, .markdown table thead th { background: #343a40; } .table tbody td, .markdown table tbody td { border: 1px solid #212529; } .navbar-light .navbar-brand, .navbar-light .navbar-brand a, .navbar-light .navbar-brand a:hover, .navbar-light .navbar-brand:hover { color: #fff; } .navbar-light .navbar-nav .nav-link { color: #78828a; } .navbar-light .navbar-nav .nav-link:focus { color: #adb5bd; } .navbar-light .navbar-nav .nav-link:hover { color: #fff; } .navbar-light .navbar-nav .active .nav-link { color: #fff; } .header-tabbed { border-color: #131618; } .header-tabbed .nav .nav-item .nav-link.active, .header-tabbed .nav .nav-item .nav-link:hover { color: #fff; background: #131618; border-color: #131618; } .header-tabbed .nav .nav-link { color: #ced4da; } } html, body { min-height: 100%; height: 100%; } img { max-width: 100%; /* display: block;*/ margin: 0 0.2rem; } .img-block { display: block; } h3 { padding-top: 1rem; } h4 { padding-top: 1rem; } h5 { padding-top: 1rem; } h6 { padding-top: 1rem; } .toc { padding: 0.5rem 1rem; } .map { padding: 0.5rem 1rem; } .alert { position: initial; } .toc { padding: 0.5rem 1rem; } .map { display: flex; justify-content: space-between; align-content: space-between; align-items: stretch; flex-wrap: wrap; margin-bottom: 0; } .toggle { display: inline-block; text-align: center; white-space: nowrap; vertical-align: middle; user-select: none; transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; background: #dee2e6; border: #343a40 1px solid; color: #000; border-radius: 0; padding: 0.1rem 0.75rem; font-size: 0.9rem; transition: background 0.1s linear; } @media screen and (prefers-reduced-motion: reduce) { .toggle { transition: none; } } .toggle:hover, .toggle:focus { text-decoration: none; } .toggle:focus { outline: 0; box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); } .toggle:disabled { opacity: 0.65; } .toggle:not(:disabled):not(.disabled) { cursor: pointer; } .toggle:not(:disabled):not(.disabled):active, .toggle:not(:disabled):not(.disabled).active { background-image: none; } a.toggle { color: #000; text-decoration: none; } a.toggle:hover { color: #000; } .toggle:hover { background: #e9ecef; } .tip { position: relative; padding: 0.75rem 1.25rem; margin-bottom: 1rem; border: 1px solid transparent; border-radius: 0.25rem; color: #004085; background-color: #cce5ff; border-color: #b8daff; } .tip hr { border-top-color: #9fcdff; } a.tip { color: #002752; } .note { position: relative; padding: 0.75rem 1.25rem; margin-bottom: 1rem; border: 1px solid transparent; border-radius: 0.25rem; color: #0c5460; background-color: #d1ecf1; border-color: #bee5eb; } .note hr { border-top-color: #abdde5; } a.note { color: #062c33; } .important { position: relative; padding: 0.75rem 1.25rem; margin-bottom: 1rem; border: 1px solid transparent; border-radius: 0.25rem; color: #1b1e21; background-color: #d6d8d9; border-color: #c6c8ca; } .important hr { border-top-color: #b9bbbe; } a.important { color: #040505; } .caution { position: relative; padding: 0.75rem 1.25rem; margin-bottom: 1rem; border: 1px solid transparent; border-radius: 0.25rem; color: #856404; background-color: #fff3cd; border-color: #ffeeba; } .caution hr { border-top-color: #ffe8a1; } a.caution { color: #533f03; } .warning { position: relative; padding: 0.75rem 1.25rem; margin-bottom: 1rem; border: 1px solid transparent; border-radius: 0.25rem; color: #721c24; background-color: #f8d7da; border-color: #f5c6cb; } .warning hr { border-top-color: #f1b0b7; } a.warning { color: #491217; } .sidebar { width: 20ex; float: right; margin-left: 4px; margin-bottom: 4px; margin-top: -1px; padding: 0ex 2ex; border-top: 0px; border-left: 1px solid #ddd; border-bottom: 0px; border-right: 0px; background: white; color: black !important; } header.header { font-size: 100%; font-weight: bold; line-height: 1em; } .inlinepage { border: 0px; } .inlinefooter { display: none; }