diff --git a/assets/_custom.scss b/assets/_custom.scss index 4760346..bc78fea 100644 --- a/assets/_custom.scss +++ b/assets/_custom.scss @@ -1,4 +1,26 @@ -.book-menu-content nav ul:nth-child(5) { +.book-menu-content nav ul:nth-child(3) { + color: gray; + + label a img { + color: gray; + filter: invert(0.4) + } +} + +.book-search { + input { + transition: all; + transition-duration: 300ms; + width: 100%; + + &:focus { + width: 102%; + color: gold; + } + } +} + +.book-menu-content nav ul:nth-child(6) { padding-top: 20px; color: gray; } @@ -8,13 +30,6 @@ outline-color: transparent; } -@media (prefers-color-scheme: dark) { - :root { - --body-background: #121212 - } -} - - .book-menu { strong { color: gray; @@ -52,6 +67,9 @@ } .book-page { + article p:nth-child(2){ + color: gray; + } a { color: rgb(70, 100, 200); } diff --git a/assets/_variables.scss b/assets/_variables.scss new file mode 100644 index 0000000..957016c --- /dev/null +++ b/assets/_variables.scss @@ -0,0 +1,17 @@ +@mixin theme-dark { + --gray-100: rgba(255, 255, 255, 0.1); + --gray-200: rgba(255, 255, 255, 0.2); + --gray-500: rgba(255, 255, 255, 0.5); + + --color-link: #84b2ff; + --color-visited-link: #b88dff; + + --body-background: #121212; + --body-font-color: #d9dcdf; + + --icon-filter: brightness(0) invert(1); + + --hint-color-info: #6bf; + --hint-color-warning: #fd6; + --hint-color-danger: #f66; +} diff --git a/content/docs/admin-guidelines.md b/content/docs/admin-guidelines.md index e69de29..afc141a 100644 --- a/content/docs/admin-guidelines.md +++ b/content/docs/admin-guidelines.md @@ -0,0 +1,3 @@ +--- +BookMenuBundle: '/menu/test' +--- \ No newline at end of file diff --git a/content/docs/automation-guidelines.md b/content/docs/automation-guidelines.md index 52855ad..a879aa3 100644 --- a/content/docs/automation-guidelines.md +++ b/content/docs/automation-guidelines.md @@ -52,7 +52,7 @@ These guidelines are for tool usage for semi-automated actions or things that do As some software doesn't have this built in currently you can just put the information in your bio. This could be something such as "Some actions in this account are automated", "Cyborg account", or "Uses some automation tools". You could also put what specific things you use if you want but it is not required. If the software supports marking an account as a cyborg you can use that instead. ## Do we Make Updates to these Automation Guidelines? -We may update the Automation Guidelines from time to time. When we do, we will change the "Last Updated" date and author at the top of the page to indicate the date and author of the most recent changes. If we make changes we may notify you by posting a notice of such changes or by sending you a notification. We encourage you to review these Automation Guidelines periodically for any modifications. +We may update the Automation Guidelines from time to time. When we do the date at the bottom of the page will change to indicate the date of the most recent changes. In addition, clicking on that date will bring you to the commit in the code repository that shows who edited it, and what was changed. If we make changes we may notify you by posting a notice of such changes in our meta community on the programming.dev site, in the updates account on the bytes.programming.dev site, in the news community in our discord server, and in the news community in our matrix server. We encourage you to review the Automation Guidelines periodically for any modifications. ## Contact Us If you have questions or concerns about these Automation Guidelines you should contact us at info@programming.dev. diff --git a/content/docs/code-of-conduct.md b/content/docs/code-of-conduct.md index a104353..221743b 100644 --- a/content/docs/code-of-conduct.md +++ b/content/docs/code-of-conduct.md @@ -31,28 +31,22 @@ The following are not allowed in any of our sites and may result in you being ac Some communities within one of our sites may have additional or more specific guidelines in the community description that are expected to be followed when interacting in that community. Failure to follow those guidelines may result in you being actioned upon by moderators. ## Automation Guidelines -If you use any form of automation on your accounts you must abide by our [Automation Guidelines](https://github.com/programming-dot-dev/p.d-legal/blob/main/AUTOMATION-GUIDELINES.md). +If you use any form of automation on your accounts you must abide by our [Automation Guidelines](https://legal.programming.dev/docs/automation-guidelines). + +## Community Guidelines +If you manage a community on our sites you must abide by our [Community Guidelines](https://legal.programming.dev/docs/community-guidelines). + +## Moderator Guidelines +If you are a moderator for our sites or for a community on our sites you must abide by our [Moderator Guidelines](https://legal.programming.dev/docs/moderator-guidelines). + +## Admin Guidelines +If you are an admin for our sites you must abide by our [Admin Guidelines](https://legal.programming.dev/docs/admin-guidelines). ## Reporting When you see someone not behaving according to our code of conduct, if theres a report button built into the software (which should be most software we host) you can report them for the community team in charge of that software to be able to deal with it. If theres no report button email info@programming.dev with the report information. -## Moderator Guidelines -These are guidelines to follow when being a moderator for a community (community in this sense refers to user run communities such as on programming.dev). - -### Respect the CoC -When managing your community you may make rules for members interacting in that community to follow. These should not contradict our CoC (Code of Conduct). - -### Handle Reports -Users interacting in your community may make reports on content. This is expected to be handled swiftly (at most a day to action) to ensure that users in your community are following our CoC and your community rules. If a user breaks the CoC it may be handled by an admin as well but this should not be relied on as admins have many tasks around the sites to deal with. - -### Be Active -Moderators of a community are expected to be active on our site and communities should not be without moderation for long periods of time. If community moderators are no longer using the site and thus the community is going without moderation the communities may be transferred to new moderators. We will attempt to contact the current moderators of the community before transferring it. - -### Respect Your Scope -If a user does something in another community such as make a comment this should not affect their usage of your community. If you notice behaviour that breaks the CoC in other communities this should instead be reported so those community moderators or admins may deal with it. - ## Do we Make Updates to this Code of Conduct? -We may update the Code of Conduct from time to time. When we do, we will change the "Last Updated" date and author at the top of the page to indicate the date and author of the most recent changes. If we make changes we may notify you by posting a notice of such changes or by sending you a notification. We encourage you to review the Code of Conduct periodically for any modifications. +We may update the Code of Conduct from time to time. When we do the date at the bottom of the page will change to indicate the date of the most recent changes. In addition, clicking on that date will bring you to the commit in the code repository that shows who edited it, and what was changed. If we make changes we may notify you by posting a notice of such changes or by sending you a notification. We encourage you to review the Code of Conduct periodically for any modifications. ## Contact Us If you have questions or concerns about this Code of Conduct you should contact us at info@programming.dev. diff --git a/content/docs/community-guidelines.md b/content/docs/community-guidelines.md index e69de29..6364ca0 100644 --- a/content/docs/community-guidelines.md +++ b/content/docs/community-guidelines.md @@ -0,0 +1,12 @@ +# Community Guidelines +These Community Guidelines detail expected conduct and suggested actions when managing a community on Programming.Dev ("programming.dev", "we", "us", "our") sites. + +## 1. Community Info + +## 2. + +## Do we Make Updates to these Community Guidelines? +We may update the Community Guidelines from time to time. When we do the date at the bottom of the page will change to indicate the date of the most recent changes. In addition, clicking on that date will bring you to the commit in the code repository that shows who edited it, and what was changed. If we make changes we may notify you by posting a notice of such changes in our meta community on the programming.dev site, in the updates account on the bytes.programming.dev site, in the news community in our discord server, and in the news community in our matrix server. We encourage you to review the Community Guidelines periodically for any modifications. + +## Contact Us +If you have questions or concerns about these Community Guidelines you should contact us at info@programming.dev. diff --git a/content/docs/contributing-guidelines.md b/content/docs/contributing-guidelines.md new file mode 100644 index 0000000..e69de29 diff --git a/content/docs/defederation-policy.md b/content/docs/defederation-policy.md index 2dd21f7..95044c1 100644 --- a/content/docs/defederation-policy.md +++ b/content/docs/defederation-policy.md @@ -1,4 +1,4 @@ -# Defederation Policy +# 🌍 Defederation Policy This document details how Programming.Dev ("programming.dev", "we", "us", "our") choose to defederate with other instances. If an instance wishes to be federated and thus have their content show on our sites they must abide by the policy and ensure they do not do one of the actions in the how an instance gets defederated section. ## What is Defederation? @@ -6,10 +6,10 @@ Our sites are federated with other instances. Instances are essentially sites bu Defederating from a instance: - Makes users from our sites not be able to see things such as posts and comments from users on that instance. -- Makes users from that instance no longer be able to interact with communities or users on our sites. +- Makes users from that instance no longer be able to interact with communities or users on our sites in a way thats visible outside of their instance. ## How does an instance get defederated? -- Instances may be defederated if they break our [Code of Conduct](https://github.com/programming-dot-dev/p.d-legal/blob/main/CODE-OF-CONDUCT.md) whether though encouraging something we disallow or not moderating users that break it. +- Instances may be defederated if they break our [Code of Conduct](https://legal.programming.dev/docs/code-of-conduct) whether though encouraging something we disallow or not moderating users that break it. - Instances that have no active administrators may be defederated. - Instances that have a lack of security that is not addressed and that puts our users at risk may be defederated. This includes things like having a sign up process that does not stop bots from mass creating accounts. - Instances that have defederated from us may be defederated to prevent one way conversations where we get content from the other instance but users commenting on that content get no response. @@ -35,8 +35,11 @@ Microblogs more to be added here. Full list is visible on fediseer or our site federation tab if it exists ``` -## Do we Make Updates to this Defederation Policy? -We may update the Defederation Policy from time to time. When we do, we will change the "Last Updated" date and author at the top of the page to indicate the date and author of the most recent changes. If we make changes we may notify you by posting a notice of such changes or by sending you a notification. We encourage you to review the Defederation Policy periodically for any modifications. +## Defederation Appeals +If you are the admin of an instance we have defederated, you wish to reverse the defederation, and you follow our [Code of Conduct](https://legal.programming.dev/docs/code-of-conduct) contact us as info@programming.dev. + +## Are Updates Made to this Defederation Policy? +We may update the Defederation Policy from time to time. When we do the date at the bottom of the page will change to indicate the date of the most recent changes. In addition, clicking on that date will bring you to the commit in the code repository that shows who edited it, and what was changed. If we make changes we may notify you by posting a notice of such changes in our meta community on the programming.dev site, in the updates account on the bytes.programming.dev site, in our blog on the stacks.programming.dev site, in the news community in our discord server, and in the news community in our matrix server. We encourage you to review the Defederation Policy periodically for any modifications. ## Contact Us If you have questions or concerns about this Defederation Policy you should contact us at info@programming.dev. diff --git a/content/docs/donation-policy.md b/content/docs/donation-policy.md index c2af10e..b3e6403 100644 --- a/content/docs/donation-policy.md +++ b/content/docs/donation-policy.md @@ -1,5 +1,5 @@ -# Donation Policy -This is a policy that describes how Programming.Dev ("programming.dev", "we", "us", "our") handles donations towards us. +# ❤️ Donation Policy +This is a policy that describes how Programming.Dev ("programming.dev", "we", "us", "our") handles and spends donations made towards us. ## How are Donations Made? Donations are currently made using [snowe's github sponsors page](https://github.com/sponsors/snowe2010/). If you get another place to donate that is not this it is fake and should be reported to us. @@ -7,25 +7,25 @@ Donations are currently made using [snowe's github sponsors page](https://github ## How are Donations Spent? Donations are spent on things relating to our sites. This includes things such as server costs, infrastructure costs, tool costs, and payment for work done relating to it. -## Who is considered a donator? +## Who is Considered a Donator? Donators are people who have at one point made a donation towards us regardless on whether they are currently doing a monthly donation, did one in the past, or did a one time donation. ## Donation Perks We offer perks towards donators that have at one point made a donation towards us. These are the current perks donators get: -- A donator role on our discord server -- An account on our linkstack site https://me.programming.dev for sharing links related to you in one page +- A donator role on our discord server. +- An account on our linkstack site https://me.programming.dev for sharing links related to you in a page. ## Donation Perk Terms By donating to programming.dev you acknowledge and agree to the following terms: - **Display Proof:** To get access to a perk you must be able to prove that you are the one that made the donation. - **Account Requirement:** Access to a perk requires an account on the platform the perk is on. For example to get a discord role you need a discord account. -- **Request Perks:** To get a perk you need to request it from a community team admin in charge of the software the perk is on. +- **Request Perks:** To get a perk you need to request it from a community team admin in charge of the software the perk is on or from our contact email at info@programming.dev. - **Refund Policy:** Donations are generally non refundable. If a perk is removed or edited refunds will not be given. - **Modification of Perks:** Perks may be modified at any time to change details about a perk, add new perks, or remove existing perks. They are privileges and do not constitute a legal right or entitlement. - **Perk Removal:** Users may have perks taken away from them if they abuse the perk (as in use it in a way it was not intended) or break our [Code of Conduct](https://github.com/programming-dot-dev/p.d-legal/blob/main/CODE-OF-CONDUCT.md). -## Do we Make Updates to this Donation Policy? -We may update the Donation Policy from time to time. When we do, we will change the "Last Updated" date and author at the top of the page to indicate the date and author of the most recent changes. If we make changes we may notify you by posting a notice of such changes or by sending you a notification. We encourage you to review this Donation Policy periodically for any modifications. +## Are Updates Made to this Donation Policy? +We may update the Donation Policy from time to time. When we do the date at the bottom of the page will change to indicate the date of the most recent changes. In addition, clicking on that date will bring you to the commit in the code repository that shows who edited it, and what was changed. If we make changes we may notify you by posting a notice of such changes in our meta community on the programming.dev site, in the updates account on the bytes.programming.dev site, in our blog on the stacks.programming.dev site, in the news community in our discord server, and in the news community in our matrix server. We encourage you to review the Donation Policy periodically for any modifications. ## Contact Us If you have questions or concerns about this Donation Policy you should contact us at info@programming.dev. diff --git a/content/docs/moderator-guidelines.md b/content/docs/moderator-guidelines.md index e69de29..be5d005 100644 --- a/content/docs/moderator-guidelines.md +++ b/content/docs/moderator-guidelines.md @@ -0,0 +1,8 @@ +# Moderator Guidelines +These moderator guidelines detail expected conduct when moderating a community in one of the Programming.Dev ("programming.dev", "we", "us", "our") sites. + +## Do we Make Updates to these Moderator Guidelines? +We may update the Moderator Guidelines from time to time. When we do the date at the bottom of the page will change to indicate the date of the most recent changes. In addition, clicking on that date will bring you to the commit in the code repository that shows who edited it, and what was changed. If we make changes we may notify you by posting a notice of such changes in our meta community on the programming.dev site, in the updates account on the bytes.programming.dev site, in the news community in our discord server, and in the news community in our matrix server. We encourage you to review the Moderator Guidelines periodically for any modifications. + +## Contact Us +If you have questions or concerns about these Moderator Guidelines you should contact us at info@programming.dev. diff --git a/content/docs/test/test.md b/content/docs/test/test.md new file mode 100644 index 0000000..519beaf --- /dev/null +++ b/content/docs/test/test.md @@ -0,0 +1,7 @@ +--- +BookMenuBundle: '/menu/test' +--- + +Test 2A +ASFASF +ASFAISHFIUASF \ No newline at end of file diff --git a/content/menu/index.md b/content/menu/_index.md similarity index 79% rename from content/menu/index.md rename to content/menu/_index.md index 10f7214..99a8be7 100644 --- a/content/menu/index.md +++ b/content/menu/_index.md @@ -7,11 +7,13 @@ headless: true - [🤖 Automation Guidelines]({{< relref "/docs/automation-guidelines" >}}) - [🤝 Code of Conduct]({{< relref "/docs/code-of-conduct" >}}) - [🪴 Community Guidelines]({{< relref "/docs/community-guidelines" >}}) +- [🪲 Contributing Guidelines]({{< relref "/docs/contributing-guidelines" >}}) - [🍪 Cookie Policy]({{< relref "/docs/cookie-policy" >}}) - [📘 Data Retention Policy]({{< relref "/docs/data-retention-policy" >}}) -- [🖇️ Defederation Policy]({{< relref "/docs/defederation-policy" >}}) +- [🌍 Defederation Policy]({{< relref "/docs/defederation-policy" >}}) - [❤️ Donation Policy]({{< relref "/docs/donation-policy" >}}) - [🏡 Moderator Guidelines]({{< relref "/docs/moderator-guidelines" >}}) - [🔒 Privacy Policy]({{< relref "/docs/privacy-policy" >}}) - [📜 Terms of Service]({{< relref "/docs/terms-of-service" >}}) +- [A]({{< relref "/docs/test/test" >}})
diff --git a/content/menu/test/_index.md b/content/menu/test/_index.md new file mode 100644 index 0000000..c34fcfc --- /dev/null +++ b/content/menu/test/_index.md @@ -0,0 +1,14 @@ +--- +headless: true +--- + +**Documents** +- [🛠️ Admin Guidelines]({{< relref "/docs/privacy-policy" >}}) +- [🤖 Automation Guidelines]({{< relref "/docs/automation-guidelines" >}}) +- [🤝 Code of Conduct]({{< relref "/docs/code-of-conduct" >}}) +- [🪴 Community Guidelines]({{< relref "/docs/community-guidelines" >}}) +- [🪲 Contributing Guidelines]({{< relref "/docs/contributing-guidelines" >}}) +- [🍪 Cookie Policy]({{< relref "/docs/cookie-policy" >}}) +- [📘 Data Retention Policy]({{< relref "/docs/data-retention-policy" >}}) +- [A]({{< relref "/docs/test/test" >}}) +
diff --git a/hugo.yaml b/hugo.yaml index f25e56e..c106f3d 100644 --- a/hugo.yaml +++ b/hugo.yaml @@ -26,3 +26,4 @@ params: BookLogo: 'logo.png' BookFavicon: 'logo.png' BookMenuBundle: /menu + BookRepo: https://github.com/programming-dot-dev/p.d-legal diff --git a/layouts/partials/docs/menu-page-bundle.html b/layouts/partials/docs/menu-page-bundle.html new file mode 100644 index 0000000..0bd0278 --- /dev/null +++ b/layouts/partials/docs/menu-page-bundle.html @@ -0,0 +1,4 @@ +{{ with .Site.GetPage .Page.Params.BookMenuBundle }} + {{- $href := printf "href=\"%s\"" $.RelPermalink -}} + {{- replace .Content $href (print $href "class=active") | safeHTML -}} +{{ end }} diff --git a/layouts/partials/docs/menu.html b/layouts/partials/docs/menu.html new file mode 100644 index 0000000..2c3bef5 --- /dev/null +++ b/layouts/partials/docs/menu.html @@ -0,0 +1,25 @@ + + + +{{ $script := resources.Get "menu-reset.js" | resources.Minify }} +{{ with $script.Content }} + +{{ end }} diff --git a/resources/_gen/assets/scss/book.scss_e129fe35b8d0a70789c8a08429469073.content b/resources/_gen/assets/scss/book.scss_e129fe35b8d0a70789c8a08429469073.content index bf4393a..c61f29a 100644 --- a/resources/_gen/assets/scss/book.scss_e129fe35b8d0a70789c8a08429469073.content +++ b/resources/_gen/assets/scss/book.scss_e129fe35b8d0a70789c8a08429469073.content @@ -1 +1 @@ -@charset "UTF-8";:root{--gray-100:#f8f9fa;--gray-200:#e9ecef;--gray-500:#adb5bd;--color-link:#0055bb;--color-visited-link:#8440f1;--body-background:white;--body-font-color:black;--icon-filter:none;--hint-color-info:#6bf;--hint-color-warning:#fd6;--hint-color-danger:#f66}@media(prefers-color-scheme:dark){:root{--gray-100:rgba(255, 255, 255, 0.1);--gray-200:rgba(255, 255, 255, 0.2);--gray-500:rgba(255, 255, 255, 0.5);--color-link:#84b2ff;--color-visited-link:#b88dff;--body-background:#343a40;--body-font-color:#e9ecef;--icon-filter:brightness(0) invert(1);--hint-color-info:#6bf;--hint-color-warning:#fd6;--hint-color-danger:#f66}}/*!normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css*/html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}.flex{display:flex}.flex-auto{flex:auto}.flex-even{flex:1 1}.flex-wrap{flex-wrap:wrap}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.align-center{align-items:center}.mx-auto{margin:0 auto}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.hidden{display:none}input.toggle{height:0;width:0;overflow:hidden;opacity:0;position:absolute}.clearfix::after{content:"";display:table;clear:both}html{font-size:16px;scroll-behavior:smooth;touch-action:manipulation}body{min-width:20rem;color:var(--body-font-color);background:var(--body-background);letter-spacing:.33px;font-weight:400;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;box-sizing:border-box}body *{box-sizing:inherit}h1,h2,h3,h4,h5{font-weight:400}a{text-decoration:none;color:var(--color-link)}img{vertical-align:baseline}:focus{outline-style:auto;outline-color:currentColor;outline-color:-webkit-focus-ring-color}aside nav ul{padding:0;margin:0;list-style:none}aside nav ul li{margin:1em 0;position:relative}aside nav ul a{display:block}aside nav ul a:hover{opacity:.5}aside nav ul ul{padding-inline-start:1rem}ul.pagination{display:flex;justify-content:center;list-style-type:none;padding-inline-start:0}ul.pagination .page-item a{padding:1rem}.container{max-width:80rem;margin:0 auto}.book-icon{filter:var(--icon-filter)}.book-brand{margin-top:0;margin-bottom:1rem}.book-brand img{height:1.5em;width:1.5em;margin-inline-end:.5rem}.book-menu{flex:0 0 16rem;font-size:.875rem}.book-menu .book-menu-content{width:16rem;padding:1rem;background:var(--body-background);position:fixed;top:0;bottom:0;overflow-x:hidden;overflow-y:auto}.book-menu a,.book-menu label{color:inherit;cursor:pointer;word-wrap:break-word}.book-menu a.active{color:var(--color-link)}.book-menu input.toggle+label+ul{display:none}.book-menu input.toggle:checked+label+ul{display:block}.book-menu input.toggle+label::after{content:"▸"}.book-menu input.toggle:checked+label::after{content:"▾"}body[dir=rtl] .book-menu input.toggle+label::after{content:"◂"}body[dir=rtl] .book-menu input.toggle:checked+label::after{content:"▾"}.book-section-flat{margin:2rem 0}.book-section-flat>a,.book-section-flat>span,.book-section-flat>label{font-weight:bolder}.book-section-flat>ul{padding-inline-start:0}.book-page{min-width:20rem;flex-grow:1;padding:1rem}.book-post{margin-bottom:3rem}.book-header{display:none;margin-bottom:1rem}.book-header label{line-height:0}.book-header img.book-icon{height:1.5em;width:1.5em}.book-search{position:relative;margin:1rem 0;border-bottom:1px solid transparent}.book-search input{width:100%;padding:.5rem;border:0;border-radius:.25rem;background:var(--gray-100);color:var(--body-font-color)}.book-search input:required+.book-search-spinner{display:block}.book-search .book-search-spinner{position:absolute;top:0;margin:.5rem;margin-inline-start:calc(100% - 1.5rem);width:1rem;height:1rem;border:1px solid transparent;border-top-color:var(--body-font-color);border-radius:50%;animation:spin 1s ease infinite}@keyframes spin{100%{transform:rotate(360deg)}}.book-search small{opacity:.5}.book-toc{flex:0 0 16rem;font-size:.75rem}.book-toc .book-toc-content{width:16rem;padding:1rem;position:fixed;top:0;bottom:0;overflow-x:hidden;overflow-y:auto}.book-toc img{height:1em;width:1em}.book-toc nav>ul>li:first-child{margin-top:0}.book-footer{padding-top:1rem;font-size:.875rem}.book-footer img{height:1em;width:1em;margin-inline-end:.5rem}.book-comments{margin-top:1rem}.book-languages{margin-block-end:2rem}.book-languages .book-icon{height:1em;width:1em;margin-inline-end:.5em}.book-languages ul{padding-inline-start:1.5em}.book-menu-content,.book-toc-content,.book-page,.book-header aside,.markdown{transition:.2s ease-in-out;transition-property:transform,margin,opacity,visibility;will-change:transform,margin,opacity}@media screen and (max-width:56rem){#menu-control,#toc-control{display:inline}.book-menu{visibility:hidden;margin-inline-start:-16rem;font-size:16px;z-index:1}.book-toc{display:none}.book-header{display:block}#menu-control:focus~main label[for=menu-control]{outline-style:auto;outline-color:currentColor;outline-color:-webkit-focus-ring-color}#menu-control:checked~main .book-menu{visibility:initial}#menu-control:checked~main .book-menu .book-menu-content{transform:translateX(16rem);box-shadow:0 0 .5rem rgba(0,0,0,.1)}#menu-control:checked~main .book-page{opacity:.25}#menu-control:checked~main .book-menu-overlay{display:block;position:absolute;top:0;bottom:0;left:0;right:0}#toc-control:focus~main label[for=toc-control]{outline-style:auto;outline-color:currentColor;outline-color:-webkit-focus-ring-color}#toc-control:checked~main .book-header aside{display:block}body[dir=rtl] #menu-control:checked~main .book-menu .book-menu-content{transform:translateX(-16rem)}}@media screen and (min-width:80rem){.book-page,.book-menu .book-menu-content,.book-toc .book-toc-content{padding:2rem 1rem}}@font-face{font-family:roboto;font-style:normal;font-weight:400;font-display:swap;src:local(""),url(fonts/roboto-v27-latin-regular.woff2)format("woff2"),url(fonts/roboto-v27-latin-regular.woff)format("woff")}@font-face{font-family:roboto;font-style:normal;font-weight:700;font-display:swap;src:local(""),url(fonts/roboto-v27-latin-700.woff2)format("woff2"),url(fonts/roboto-v27-latin-700.woff)format("woff")}@font-face{font-family:roboto mono;font-style:normal;font-weight:400;font-display:swap;src:local(""),url(fonts/roboto-mono-v13-latin-regular.woff2)format("woff2"),url(fonts/roboto-mono-v13-latin-regular.woff)format("woff")}body{font-family:roboto,sans-serif}code{font-family:roboto mono,monospace}@media print{.book-menu,.book-footer,.book-toc{display:none}.book-header,.book-header aside{display:block}main{display:block!important}}.markdown{line-height:1.6}.markdown>:first-child{margin-top:0}.markdown h1,.markdown h2,.markdown h3,.markdown h4,.markdown h5,.markdown h6{font-weight:400;line-height:1;margin-top:1.5em;margin-bottom:1rem}.markdown h1 a.anchor,.markdown h2 a.anchor,.markdown h3 a.anchor,.markdown h4 a.anchor,.markdown h5 a.anchor,.markdown h6 a.anchor{opacity:0;font-size:.75em;vertical-align:middle;text-decoration:none}.markdown h1:hover a.anchor,.markdown h1 a.anchor:focus,.markdown h2:hover a.anchor,.markdown h2 a.anchor:focus,.markdown h3:hover a.anchor,.markdown h3 a.anchor:focus,.markdown h4:hover a.anchor,.markdown h4 a.anchor:focus,.markdown h5:hover a.anchor,.markdown h5 a.anchor:focus,.markdown h6:hover a.anchor,.markdown h6 a.anchor:focus{opacity:initial}.markdown h4,.markdown h5,.markdown h6{font-weight:bolder}.markdown h5{font-size:.875em}.markdown h6{font-size:.75em}.markdown b,.markdown optgroup,.markdown strong{font-weight:bolder}.markdown a{text-decoration:none}.markdown a:hover{text-decoration:underline}.markdown a:visited{color:var(--color-visited-link)}.markdown img{max-width:100%;height:auto}.markdown code{padding:0 .25rem;background:var(--gray-200);border-radius:.25rem;font-size:.875em}.markdown pre{padding:1rem;background:var(--gray-100);border-radius:.25rem;overflow-x:auto}.markdown pre code{padding:0;background:0 0}.markdown p{word-wrap:break-word}.markdown blockquote{margin:1rem 0;padding:.5rem 1rem .5rem .75rem;border-inline-start:.25rem solid var(--gray-200);border-radius:.25rem}.markdown blockquote :first-child{margin-top:0}.markdown blockquote :last-child{margin-bottom:0}.markdown table{overflow:auto;display:block;border-spacing:0;border-collapse:collapse;margin-top:1rem;margin-bottom:1rem}.markdown table tr th,.markdown table tr td{padding:.5rem 1rem;border:1px solid var(--gray-200)}.markdown table tr:nth-child(2n){background:var(--gray-100)}.markdown hr{height:1px;border:none;background:var(--gray-200)}.markdown ul,.markdown ol{padding-inline-start:2rem;word-wrap:break-word}.markdown dl dt{font-weight:bolder;margin-top:1rem}.markdown dl dd{margin-inline-start:0;margin-bottom:1rem}.markdown .highlight table tr td:nth-child(1) pre{margin:0;padding-inline-end:0}.markdown .highlight table tr td:nth-child(2) pre{margin:0;padding-inline-start:0}.markdown details{padding:1rem;border:1px solid var(--gray-200);border-radius:.25rem}.markdown details summary{line-height:1;padding:1rem;margin:-1rem;cursor:pointer}.markdown details[open] summary{margin-bottom:0}.markdown figure{margin:1rem 0}.markdown figure figcaption p{margin-top:0}.markdown-inner>:first-child{margin-top:0}.markdown-inner>:last-child{margin-bottom:0}.markdown .book-expand{margin-top:1rem;margin-bottom:1rem;border:1px solid var(--gray-200);border-radius:.25rem;overflow:hidden}.markdown .book-expand .book-expand-head{background:var(--gray-100);padding:.5rem 1rem;cursor:pointer}.markdown .book-expand .book-expand-content{display:none;padding:1rem}.markdown .book-expand input[type=checkbox]:checked+.book-expand-content{display:block}.markdown .book-tabs{margin-top:1rem;margin-bottom:1rem;border:1px solid var(--gray-200);border-radius:.25rem;overflow:hidden;display:flex;flex-wrap:wrap}.markdown .book-tabs label{display:inline-block;padding:.5rem 1rem;border-bottom:1px transparent;cursor:pointer}.markdown .book-tabs .book-tabs-content{order:999;width:100%;border-top:1px solid var(--gray-100);padding:1rem;display:none}.markdown .book-tabs input[type=radio]:checked+label{border-bottom:1px solid var(--color-link)}.markdown .book-tabs input[type=radio]:checked+label+.book-tabs-content{display:block}.markdown .book-tabs input[type=radio]:focus+label{outline-style:auto;outline-color:currentColor;outline-color:-webkit-focus-ring-color}.markdown .book-columns{margin-left:-1rem;margin-right:-1rem}.markdown .book-columns>div{margin:1rem 0;min-width:10rem;padding:0 1rem}.markdown a.book-btn{display:inline-block;font-size:.875rem;color:var(--color-link);line-height:2rem;padding:0 1rem;border:1px solid var(--color-link);border-radius:.25rem;cursor:pointer}.markdown a.book-btn:hover{text-decoration:none}.markdown .book-hint.info{border-color:#6bf;background-color:rgba(102,187,255,.1)}.markdown .book-hint.warning{border-color:#fd6;background-color:rgba(255,221,102,.1)}.markdown .book-hint.danger{border-color:#f66;background-color:rgba(255,102,102,.1)}.book-menu-content nav ul:nth-child(5){padding-top:20px;color:gray}*:focus{outline-style:none;outline-color:transparent}@media(prefers-color-scheme:dark){:root{--body-background:#121212}}.book-menu strong{color:gray}.book-menu a{transition:all;transition-duration:300ms}.book-menu a:hover{opacity:.8;transform:scale(1.05)}@media(prefers-reduced-motion){.book-menu a:hover{transform:none}}.book-menu a.active{color:transparent;background-clip:text;background-color:#2cafd0;background-image:linear-gradient(90deg,#2cafd0 0%,#942dfd 100%)}.book-brand span{color:transparent;background-clip:text;background-color:#2cafd0;background-image:linear-gradient(90deg,#2cafd0 -50%,#942dfd 150%)}.book-page a{color:#4664c8}.book-page h1{color:#2cafd0}.book-page h2{color:#5855e9}.book-page h3{color:#942dfd}.book-toc-content ul li a{transition:all;transition-duration:300ms;color:#969696}.book-toc-content ul ul li a{transition:all;transition-duration:300ms;color:#646464} \ No newline at end of file +@charset "UTF-8";:root{--gray-100:#f8f9fa;--gray-200:#e9ecef;--gray-500:#adb5bd;--color-link:#0055bb;--color-visited-link:#8440f1;--body-background:white;--body-font-color:black;--icon-filter:none;--hint-color-info:#6bf;--hint-color-warning:#fd6;--hint-color-danger:#f66}@media(prefers-color-scheme:dark){:root{--gray-100:rgba(255, 255, 255, 0.1);--gray-200:rgba(255, 255, 255, 0.2);--gray-500:rgba(255, 255, 255, 0.5);--color-link:#84b2ff;--color-visited-link:#b88dff;--body-background:#121212;--body-font-color:#d9dcdf;--icon-filter:brightness(0) invert(1);--hint-color-info:#6bf;--hint-color-warning:#fd6;--hint-color-danger:#f66}}/*!normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css*/html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}.flex{display:flex}.flex-auto{flex:auto}.flex-even{flex:1 1}.flex-wrap{flex-wrap:wrap}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.align-center{align-items:center}.mx-auto{margin:0 auto}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.hidden{display:none}input.toggle{height:0;width:0;overflow:hidden;opacity:0;position:absolute}.clearfix::after{content:"";display:table;clear:both}html{font-size:16px;scroll-behavior:smooth;touch-action:manipulation}body{min-width:20rem;color:var(--body-font-color);background:var(--body-background);letter-spacing:.33px;font-weight:400;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;box-sizing:border-box}body *{box-sizing:inherit}h1,h2,h3,h4,h5{font-weight:400}a{text-decoration:none;color:var(--color-link)}img{vertical-align:baseline}:focus{outline-style:auto;outline-color:currentColor;outline-color:-webkit-focus-ring-color}aside nav ul{padding:0;margin:0;list-style:none}aside nav ul li{margin:1em 0;position:relative}aside nav ul a{display:block}aside nav ul a:hover{opacity:.5}aside nav ul ul{padding-inline-start:1rem}ul.pagination{display:flex;justify-content:center;list-style-type:none;padding-inline-start:0}ul.pagination .page-item a{padding:1rem}.container{max-width:80rem;margin:0 auto}.book-icon{filter:var(--icon-filter)}.book-brand{margin-top:0;margin-bottom:1rem}.book-brand img{height:1.5em;width:1.5em;margin-inline-end:.5rem}.book-menu{flex:0 0 16rem;font-size:.875rem}.book-menu .book-menu-content{width:16rem;padding:1rem;background:var(--body-background);position:fixed;top:0;bottom:0;overflow-x:hidden;overflow-y:auto}.book-menu a,.book-menu label{color:inherit;cursor:pointer;word-wrap:break-word}.book-menu a.active{color:var(--color-link)}.book-menu input.toggle+label+ul{display:none}.book-menu input.toggle:checked+label+ul{display:block}.book-menu input.toggle+label::after{content:"▸"}.book-menu input.toggle:checked+label::after{content:"▾"}body[dir=rtl] .book-menu input.toggle+label::after{content:"◂"}body[dir=rtl] .book-menu input.toggle:checked+label::after{content:"▾"}.book-section-flat{margin:2rem 0}.book-section-flat>a,.book-section-flat>span,.book-section-flat>label{font-weight:bolder}.book-section-flat>ul{padding-inline-start:0}.book-page{min-width:20rem;flex-grow:1;padding:1rem}.book-post{margin-bottom:3rem}.book-header{display:none;margin-bottom:1rem}.book-header label{line-height:0}.book-header img.book-icon{height:1.5em;width:1.5em}.book-search{position:relative;margin:1rem 0;border-bottom:1px solid transparent}.book-search input{width:100%;padding:.5rem;border:0;border-radius:.25rem;background:var(--gray-100);color:var(--body-font-color)}.book-search input:required+.book-search-spinner{display:block}.book-search .book-search-spinner{position:absolute;top:0;margin:.5rem;margin-inline-start:calc(100% - 1.5rem);width:1rem;height:1rem;border:1px solid transparent;border-top-color:var(--body-font-color);border-radius:50%;animation:spin 1s ease infinite}@keyframes spin{100%{transform:rotate(360deg)}}.book-search small{opacity:.5}.book-toc{flex:0 0 16rem;font-size:.75rem}.book-toc .book-toc-content{width:16rem;padding:1rem;position:fixed;top:0;bottom:0;overflow-x:hidden;overflow-y:auto}.book-toc img{height:1em;width:1em}.book-toc nav>ul>li:first-child{margin-top:0}.book-footer{padding-top:1rem;font-size:.875rem}.book-footer img{height:1em;width:1em;margin-inline-end:.5rem}.book-comments{margin-top:1rem}.book-languages{margin-block-end:2rem}.book-languages .book-icon{height:1em;width:1em;margin-inline-end:.5em}.book-languages ul{padding-inline-start:1.5em}.book-menu-content,.book-toc-content,.book-page,.book-header aside,.markdown{transition:.2s ease-in-out;transition-property:transform,margin,opacity,visibility;will-change:transform,margin,opacity}@media screen and (max-width:56rem){#menu-control,#toc-control{display:inline}.book-menu{visibility:hidden;margin-inline-start:-16rem;font-size:16px;z-index:1}.book-toc{display:none}.book-header{display:block}#menu-control:focus~main label[for=menu-control]{outline-style:auto;outline-color:currentColor;outline-color:-webkit-focus-ring-color}#menu-control:checked~main .book-menu{visibility:initial}#menu-control:checked~main .book-menu .book-menu-content{transform:translateX(16rem);box-shadow:0 0 .5rem rgba(0,0,0,.1)}#menu-control:checked~main .book-page{opacity:.25}#menu-control:checked~main .book-menu-overlay{display:block;position:absolute;top:0;bottom:0;left:0;right:0}#toc-control:focus~main label[for=toc-control]{outline-style:auto;outline-color:currentColor;outline-color:-webkit-focus-ring-color}#toc-control:checked~main .book-header aside{display:block}body[dir=rtl] #menu-control:checked~main .book-menu .book-menu-content{transform:translateX(-16rem)}}@media screen and (min-width:80rem){.book-page,.book-menu .book-menu-content,.book-toc .book-toc-content{padding:2rem 1rem}}@font-face{font-family:roboto;font-style:normal;font-weight:400;font-display:swap;src:local(""),url(fonts/roboto-v27-latin-regular.woff2)format("woff2"),url(fonts/roboto-v27-latin-regular.woff)format("woff")}@font-face{font-family:roboto;font-style:normal;font-weight:700;font-display:swap;src:local(""),url(fonts/roboto-v27-latin-700.woff2)format("woff2"),url(fonts/roboto-v27-latin-700.woff)format("woff")}@font-face{font-family:roboto mono;font-style:normal;font-weight:400;font-display:swap;src:local(""),url(fonts/roboto-mono-v13-latin-regular.woff2)format("woff2"),url(fonts/roboto-mono-v13-latin-regular.woff)format("woff")}body{font-family:roboto,sans-serif}code{font-family:roboto mono,monospace}@media print{.book-menu,.book-footer,.book-toc{display:none}.book-header,.book-header aside{display:block}main{display:block!important}}.markdown{line-height:1.6}.markdown>:first-child{margin-top:0}.markdown h1,.markdown h2,.markdown h3,.markdown h4,.markdown h5,.markdown h6{font-weight:400;line-height:1;margin-top:1.5em;margin-bottom:1rem}.markdown h1 a.anchor,.markdown h2 a.anchor,.markdown h3 a.anchor,.markdown h4 a.anchor,.markdown h5 a.anchor,.markdown h6 a.anchor{opacity:0;font-size:.75em;vertical-align:middle;text-decoration:none}.markdown h1:hover a.anchor,.markdown h1 a.anchor:focus,.markdown h2:hover a.anchor,.markdown h2 a.anchor:focus,.markdown h3:hover a.anchor,.markdown h3 a.anchor:focus,.markdown h4:hover a.anchor,.markdown h4 a.anchor:focus,.markdown h5:hover a.anchor,.markdown h5 a.anchor:focus,.markdown h6:hover a.anchor,.markdown h6 a.anchor:focus{opacity:initial}.markdown h4,.markdown h5,.markdown h6{font-weight:bolder}.markdown h5{font-size:.875em}.markdown h6{font-size:.75em}.markdown b,.markdown optgroup,.markdown strong{font-weight:bolder}.markdown a{text-decoration:none}.markdown a:hover{text-decoration:underline}.markdown a:visited{color:var(--color-visited-link)}.markdown img{max-width:100%;height:auto}.markdown code{padding:0 .25rem;background:var(--gray-200);border-radius:.25rem;font-size:.875em}.markdown pre{padding:1rem;background:var(--gray-100);border-radius:.25rem;overflow-x:auto}.markdown pre code{padding:0;background:0 0}.markdown p{word-wrap:break-word}.markdown blockquote{margin:1rem 0;padding:.5rem 1rem .5rem .75rem;border-inline-start:.25rem solid var(--gray-200);border-radius:.25rem}.markdown blockquote :first-child{margin-top:0}.markdown blockquote :last-child{margin-bottom:0}.markdown table{overflow:auto;display:block;border-spacing:0;border-collapse:collapse;margin-top:1rem;margin-bottom:1rem}.markdown table tr th,.markdown table tr td{padding:.5rem 1rem;border:1px solid var(--gray-200)}.markdown table tr:nth-child(2n){background:var(--gray-100)}.markdown hr{height:1px;border:none;background:var(--gray-200)}.markdown ul,.markdown ol{padding-inline-start:2rem;word-wrap:break-word}.markdown dl dt{font-weight:bolder;margin-top:1rem}.markdown dl dd{margin-inline-start:0;margin-bottom:1rem}.markdown .highlight table tr td:nth-child(1) pre{margin:0;padding-inline-end:0}.markdown .highlight table tr td:nth-child(2) pre{margin:0;padding-inline-start:0}.markdown details{padding:1rem;border:1px solid var(--gray-200);border-radius:.25rem}.markdown details summary{line-height:1;padding:1rem;margin:-1rem;cursor:pointer}.markdown details[open] summary{margin-bottom:0}.markdown figure{margin:1rem 0}.markdown figure figcaption p{margin-top:0}.markdown-inner>:first-child{margin-top:0}.markdown-inner>:last-child{margin-bottom:0}.markdown .book-expand{margin-top:1rem;margin-bottom:1rem;border:1px solid var(--gray-200);border-radius:.25rem;overflow:hidden}.markdown .book-expand .book-expand-head{background:var(--gray-100);padding:.5rem 1rem;cursor:pointer}.markdown .book-expand .book-expand-content{display:none;padding:1rem}.markdown .book-expand input[type=checkbox]:checked+.book-expand-content{display:block}.markdown .book-tabs{margin-top:1rem;margin-bottom:1rem;border:1px solid var(--gray-200);border-radius:.25rem;overflow:hidden;display:flex;flex-wrap:wrap}.markdown .book-tabs label{display:inline-block;padding:.5rem 1rem;border-bottom:1px transparent;cursor:pointer}.markdown .book-tabs .book-tabs-content{order:999;width:100%;border-top:1px solid var(--gray-100);padding:1rem;display:none}.markdown .book-tabs input[type=radio]:checked+label{border-bottom:1px solid var(--color-link)}.markdown .book-tabs input[type=radio]:checked+label+.book-tabs-content{display:block}.markdown .book-tabs input[type=radio]:focus+label{outline-style:auto;outline-color:currentColor;outline-color:-webkit-focus-ring-color}.markdown .book-columns{margin-left:-1rem;margin-right:-1rem}.markdown .book-columns>div{margin:1rem 0;min-width:10rem;padding:0 1rem}.markdown a.book-btn{display:inline-block;font-size:.875rem;color:var(--color-link);line-height:2rem;padding:0 1rem;border:1px solid var(--color-link);border-radius:.25rem;cursor:pointer}.markdown a.book-btn:hover{text-decoration:none}.markdown .book-hint.info{border-color:#6bf;background-color:rgba(102,187,255,.1)}.markdown .book-hint.warning{border-color:#fd6;background-color:rgba(255,221,102,.1)}.markdown .book-hint.danger{border-color:#f66;background-color:rgba(255,102,102,.1)}.book-menu-content nav ul:nth-child(3){color:gray}.book-menu-content nav ul:nth-child(3) label a img{color:gray;filter:invert(.4)}.book-search input{transition:all;transition-duration:300ms;width:100%}.book-search input:focus{width:102%;color:gold}.book-menu-content nav ul:nth-child(6){padding-top:20px;color:gray}*:focus{outline-style:none;outline-color:transparent}.book-menu strong{color:gray}.book-menu a{transition:all;transition-duration:300ms}.book-menu a:hover{opacity:.8;transform:scale(1.05)}@media(prefers-reduced-motion){.book-menu a:hover{transform:none}}.book-menu a.active{color:transparent;background-clip:text;background-color:#2cafd0;background-image:linear-gradient(90deg,#2cafd0 0%,#942dfd 100%)}.book-brand span{color:transparent;background-clip:text;background-color:#2cafd0;background-image:linear-gradient(90deg,#2cafd0 -50%,#942dfd 150%)}.book-page article p:nth-child(2){color:gray}.book-page a{color:#4664c8}.book-page h1{color:#2cafd0}.book-page h2{color:#5855e9}.book-page h3{color:#942dfd}.book-toc-content ul li a{transition:all;transition-duration:300ms;color:#969696}.book-toc-content ul ul li a{transition:all;transition-duration:300ms;color:#646464} \ No newline at end of file diff --git a/resources/_gen/assets/scss/book.scss_e129fe35b8d0a70789c8a08429469073.json b/resources/_gen/assets/scss/book.scss_e129fe35b8d0a70789c8a08429469073.json index 0a66512..6e760c3 100644 --- a/resources/_gen/assets/scss/book.scss_e129fe35b8d0a70789c8a08429469073.json +++ b/resources/_gen/assets/scss/book.scss_e129fe35b8d0a70789c8a08429469073.json @@ -1 +1 @@ -{"Target":"book.min.be88099e095501d0b42a29e103f2e3c77f629430b25d08671f3f559cf78659f3.css","MediaType":"text/css","Data":{"Integrity":"sha256-vogJnglVAdC0KinhA/Ljx39ilDCyXQhnHz9VnPeGWfM="}} \ No newline at end of file +{"Target":"book.min.0beb2726d9ba157e98e2b24e91d69db40c1d53dfcc30016ea120564413e396a9.css","MediaType":"text/css","Data":{"Integrity":"sha256-C+snJtm6FX6Y4rJOkdadtAwdU9/MMAFuoSBWRBPjlqk="}} \ No newline at end of file