:root{--clr-primary-100: #ffffff;--clr-primary-99: #fffbff;--clr-primary-98: #fdf8ff;--clr-primary-95: #f4eeff;--clr-primary-90: #e6deff;--clr-primary-80: #c9beff;--clr-primary-70: #ae9eff;--clr-primary-60: #9380f1;--clr-primary-50: #7966d5;--clr-primary-40: #604cba;--clr-primary-35: #543fad;--clr-primary-30: #4832a1;--clr-primary-25: #3c2495;--clr-primary-20: #31148a;--clr-primary-10: #1b0062;--clr-primary-0: #000000;--clr-secondary-100: #ffffff;--clr-secondary-99: #fffbff;--clr-secondary-98: #fdf8ff;--clr-secondary-95: #f4eeff;--clr-secondary-90: #e6dff9;--clr-secondary-80: #c9c3dc;--clr-secondary-70: #aea8c0;--clr-secondary-60: #938ea5;--clr-secondary-50: #79748b;--clr-secondary-40: #605c71;--clr-secondary-35: #545065;--clr-secondary-30: #484459;--clr-secondary-25: #3c394d;--clr-secondary-20: #312e41;--clr-secondary-10: #1c192b;--clr-secondary-0: #000000;--clr-tertiary-100: #ffffff;--clr-tertiary-99: #fffbff;--clr-tertiary-98: #fff8f8;--clr-tertiary-95: #ffecf1;--clr-tertiary-90: #ffd8e6;--clr-tertiary-80: #edb8cc;--clr-tertiary-70: #d09db1;--clr-tertiary-60: #b38396;--clr-tertiary-50: #976a7d;--clr-tertiary-40: #7c5264;--clr-tertiary-35: #6f4658;--clr-tertiary-30: #623b4c;--clr-tertiary-25: #553040;--clr-tertiary-20: #482535;--clr-tertiary-10: #301120;--clr-tertiary-0: #000000;--clr-primary: var(--clr-primary-40);--clr-header: var(--clr-secondary-30);--clr-header-subtle: var(--clr-secondary-50);--clr-link: #16c;--font-primary: sans-serif;--font-mono: monospace}*{box-sizing:border-box}.flex{flex:1}html,body{margin:0;padding:0}body{font-family:var(--font-primary);font-size:12pt;letter-spacing:-.02em;color:#222}.container{display:flex;flex-direction:row-reverse;gap:32px;justify-content:start;align-items:flex-start;position:relative;width:100%;min-height:100vh}footer{margin-top:48px;font-size:.9rem;color:#666}main{flex:1;max-width:60em;min-width:0;width:100%;padding:24px 16px;border-radius:4px;word-break:break-word}main .flags{float:right}header h1{margin:0;font-size:1.5rem;text-align:center;background-color:var(--clr-primary-98)}header h1 a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:8px;text-decoration:none}header h1 a img{width:64px}aside{position:sticky;top:0px;width:256px;height:100vh}aside{overflow-y:scroll;word-wrap:break-word;background-color:var(--clr-primary-98)}aside header{margin:24px 0 32px}aside a{display:block;padding:8px 4px 8px 12px;font-size:.95em;text-decoration:none}aside a.active{font-weight:bold}aside>a{color:var(--clr-secondary-20)}aside .flags{margin-top:32px;margin-left:12px}aside .flags a{padding:0px}nav{padding:0 0 0 16px;font-size:.9rem}nav details a{padding:4px 4px 4px 16px}nav details summary{display:flex;padding:8px 4px 8px 12px;color:var(--clr-secondary-20);cursor:pointer}nav details summary img{width:20px}nav details summary .expand{display:block}nav details summary .collapse{display:none}nav details[open]{padding-bottom:8px}nav details[open] summary .expand{display:none}nav details[open] summary .collapse{display:block}nav summary:hover,nav a:hover,nav a.active{background-color:#fff}.flags{display:flex;flex-wrap:wrap;gap:8px}.flags a{display:flex;align-items:center;justify-content:center;padding:0px}.nav__title{color:var(--clr-primary);font-weight:bold}h1{margin:4px 0 32px;font-weight:normal;color:var(--clr-header)}h2{margin:64px 0 24px;color:var(--clr-header)}h3{margin:48px 0 24px;color:var(--clr-header)}h4{margin:48px 0 24px}h5{margin:48px 0 24px}p{margin:24px 0}p.subtitle{margin:24px 0 4px;font-size:1.2em;color:var(--clr-header-subtle)}a{color:var(--clr-link)}ul{margin:24px 0}ul ul{margin:0;padding-left:32px}code{padding:0 4px;font-size:.85rem;background-color:var(--clr-secondary-98) !important;border:solid 1px var(--clr-secondary-90);font-family:var(--font-mono)}pre{padding:0;background-color:var(--clr-secondary-98) !important;border:solid 2px var(--clr-secondary-90)}pre code{display:block;margin:0 8px;padding:8px 0;background-color:rgba(0,0,0,0);border:0;font-size:.9rem;overflow-x:auto}blockquote{margin-left:0;padding-left:2rem;border-left:solid 2px var(--clr-primary)}img{max-width:100%}img.small{max-width:128px}table{width:100%;border-spacing:0;border:1px solid #d2d2d2}table th{padding:8px}table td{padding:8px;border-top:1px solid #d2d2d2}.table-container--errors table th:nth-child(1){width:40%}.table-container--errors table th:nth-child(2){width:40%}.table-container--errors table th:nth-child(3){width:20%}.toc{padding:8px 0;background-color:var(--clr-secondary-99);border:solid 2px var(--clr-secondary-95)}.toc ul{margin:0}.toc ul li{line-height:1.6em}.info::before{content:"i";display:flex;align-items:center;justify-content:center;position:absolute;top:0;left:0;height:100%;width:32px;background-color:#80d5ff;color:#fff;font-size:1.7rem;font-weight:bold}.info{position:relative;padding:6px 6px 6px 40px;background-color:#f0faff;border:solid 2px #80d5ff}.warning::before{content:"!";display:flex;align-items:center;justify-content:center;position:absolute;top:0;left:0;height:100%;width:32px;background-color:#ffd580;color:#fff;font-size:1.7rem;font-weight:bold}.warning{position:relative;padding:6px 6px 6px 40px;background-color:#fffaf0;border:solid 2px #ffd580}.color-showcase{display:inline-block;width:100px;padding:4px 8px;margin-right:8px;text-align:center;border:solid 1px #000;user-select:all}.color-showcase.dark{color:#fff}.badge--codeberg{width:128px}.small-screen{display:none}.large-screen{display:block}@media screen and (max-width: 720px){.small-screen{display:block}.large-screen{display:none}.container{flex-direction:column}header{width:100%;padding-top:8px}aside{position:relative;width:100%;height:auto;padding:16px 8px}nav{padding:0}main{padding-top:0;padding-bottom:0}}nav a{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.spec{padding:0 1em;background-color:#fcfcfc;border:solid 2px #ececec;font-family:monospace;font-size:.9rem}.spec h1,.spec h2,.spec h3,.spec h4,.spec h5,.spec h6{margin-top:1em;margin-bottom:1em;font-size:1em;color:#222;cursor:text;font-weight:bold}.spec p{font-size:1em;margin-top:1em;margin-left:3ch;margin-bottom:1em}.spec ul,.spec ol{font-size:1em;margin:1em 0 1em 6ch;padding-left:3ch}.spec ul ul,.spec ol ol{margin-left:0}.spec ul{list-style:circle}.spec li p{margin:0}.spec pre{margin-left:3ch;padding:0;background:rgba(0,0,0,0) !important;border:0}.spec code{margin:0;padding:0;background:rgba(0,0,0,0) !important;border:0}.spec blockquote{border-left:0;margin-left:3ch;padding-left:0}