From b70724e6201f053ee197244c852b2271c277485a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=B8=9B=E8=BE=B0?= <10956606+zou-bochen@user.noreply.gitee.com> Date: Sun, 13 Nov 2022 05:11:07 +0000 Subject: [PATCH 1/7] =?UTF-8?q?=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 邹帛辰 <10956606+zou-bochen@user.noreply.gitee.com> --- develop_doc.md | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 develop_doc.md diff --git a/develop_doc.md b/develop_doc.md new file mode 100644 index 0000000..58dc384 --- /dev/null +++ b/develop_doc.md @@ -0,0 +1,34 @@ +# PHP助手开发文档**(务必仔细阅读)** # +## 开发工具 ## +### 定义积木 ### +#### 使用Blockly Developer Tools #### +#### 链接:[http://blockly.daobanmojie.com/demos/blockfactory/](http://blockly.daobanmojie.com/demos/blockfactory/) #### +### 代码编辑器 ### +建议使用Web IDE或Visual Studio Code(需安装Git)。 +## 文件介绍 ## +### kzhzbcphp.php ### +用来更新ide.html。当修改了积木,工作箱,代码转换器时,就需要运行kzhzbcphp.php来更新ide.html +### index.php ### +官网 +### index.html ### +使用文档 +### blockly ### +包含了原生blockly的代码 +### blockly/media ### +存放blockly工作区媒体文件 +### blockly/ini ### +定制blockly的地方。里面有三个文件夹,分别是workspace,block和site +### blockly/ini/workspace ### +存放工作区定义(workspace.xml workspace.js),工作箱定义(toolbox.xml),块库(library.xml) +### blockly/ini/block ### +存放积木定义(get.js)和积木转换器(get.js.js) +### blockly/ini/site ### +存放网站的一些图片 +### blockly/colored_egg ### +存放彩蛋 +## 注意事项 ## +1. 提交时**一定要提交到Dev分支!一定要提交到Dev分支! 一定要提交到Dev分支!** +2. 如果提示存在**冲突**,请在讨论群中说明情况,说清文件名。**千万不要擅自建立分支!** +## 文档编写人员 ## +### CodeKpy ### +### ZouBochen ### \ No newline at end of file -- Gitee From aae7c2b66e34fe19c78a72615058cbcbaddc8705 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=B8=9B=E8=BE=B0?= <10956606+zou-bochen@user.noreply.gitee.com> Date: Sun, 13 Nov 2022 05:30:51 +0000 Subject: [PATCH 2/7] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20doc?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/.keep | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 doc/.keep diff --git a/doc/.keep b/doc/.keep new file mode 100644 index 0000000..e69de29 -- Gitee From e725689bc485dc037dedff28145221875901b741 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=B8=9B=E8=BE=B0?= <10956606+zou-bochen@user.noreply.gitee.com> Date: Sun, 13 Nov 2022 05:32:22 +0000 Subject: [PATCH 3/7] =?UTF-8?q?=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 邹帛辰 <10956606+zou-bochen@user.noreply.gitee.com> --- doc/develop_doc.md | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 doc/develop_doc.md diff --git a/doc/develop_doc.md b/doc/develop_doc.md new file mode 100644 index 0000000..22f02ae --- /dev/null +++ b/doc/develop_doc.md @@ -0,0 +1,35 @@ +# PHP助手开发文档 # +开发人员务必仔细阅读 +## 开发工具 ## +### 定义积木 ### +#### 使用Blockly Developer Tools #### +#### 链接:[http://blockly.daobanmojie.com/demos/blockfactory/](http://blockly.daobanmojie.com/demos/blockfactory/) #### +### 代码编辑器 ### +建议使用Web IDE或Visual Studio Code(需安装Git)。 +## 文件介绍 ## +### kzhzbcphp.php ### +用来更新ide.html。当修改了积木,工作箱,代码转换器时,就需要运行kzhzbcphp.php来更新ide.html +### index.php ### +官网 +### index.html ### +使用文档 +### blockly ### +包含了原生blockly的代码 +### blockly/media ### +存放blockly工作区媒体文件 +### blockly/ini ### +定制blockly的地方。里面有三个文件夹,分别是workspace,block和site +### blockly/ini/workspace ### +存放工作区定义(workspace.xml workspace.js),工作箱定义(toolbox.xml),块库(library.xml) +### blockly/ini/block ### +存放积木定义(get.js)和积木转换器(get.js.js) +### blockly/ini/site ### +存放网站的一些图片 +### blockly/colored_egg ### +存放彩蛋 +## 注意事项 ## +1. 提交时**一定要提交到Dev分支!一定要提交到Dev分支! 一定要提交到Dev分支!** +2. 如果提示存在**冲突**,请在讨论群中说明情况,说清文件名。**千万不要擅自建立分支!** +## 文档编写人员 ## +### CodeKpy ### +### ZouBochen ### \ No newline at end of file -- Gitee From eb18bee6bc6ae8baac983fb147853e9a1116799d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=B8=9B=E8=BE=B0?= <10956606+zou-bochen@user.noreply.gitee.com> Date: Sun, 13 Nov 2022 05:32:29 +0000 Subject: [PATCH 4/7] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=96=87=E4=BB=B6=20doc/?= =?UTF-8?q?.keep?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/.keep | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 doc/.keep diff --git a/doc/.keep b/doc/.keep deleted file mode 100644 index e69de29..0000000 -- Gitee From c89afd98c8e891f9ee8f1847ecffdc6b87507427 Mon Sep 17 00:00:00 2001 From: Wangs_official <10999119+wangs_official@user.noreply.gitee.com> Date: Sun, 13 Nov 2022 13:44:47 +0000 Subject: [PATCH 5/7] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E8=AF=AD=E6=B3=95?= =?UTF-8?q?=E5=8F=8A=E5=9B=BE=E7=89=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Wangs_official <10999119+wangs_official@user.noreply.gitee.com> --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index d9f0e46..51d30a5 100644 --- a/README.md +++ b/README.md @@ -59,9 +59,9 @@ index.php 把积木定义,工作区,工作箱的定义代码写入index.html 运营于[PHP助手官网](http://www.codekpy.site/php-helper-master/index.php), 借鉴[微信](https://weixin.qq.com/)的设计风格。 -在不违反法律的前提下,该源代码**(限于学习、公益用途)** , +在不违反法律的前提下,该源代码 **(限于学习、公益用途)** , 在使用中,**不强制要求注明制作方**。 产生的法律问题,PHP助手贡献人员**不负连带责任**。 - + 特此声明 \ No newline at end of file -- Gitee From 8a99065537a830e30bd2ed80a7043cc71588dd3c Mon Sep 17 00:00:00 2001 From: Wangs_official <35361565@qq.com> Date: Sun, 13 Nov 2022 22:19:06 +0800 Subject: [PATCH 6/7] =?UTF-8?q?css=E5=A4=A7=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 冲突很好解决,至少吧 --- css/pico.css | 2796 +++++++++++++++++++++++++++++++++++++++++++++++++ css/style.css | 135 +++ ide.html | 2245 ++++++++++++--------------------------- js/main.js | 880 ++++++++++++++++ kzhzbcphp.php | 681 ++++++++++++ 5 files changed, 5141 insertions(+), 1596 deletions(-) create mode 100644 css/pico.css create mode 100644 css/style.css create mode 100644 js/main.js diff --git a/css/pico.css b/css/pico.css new file mode 100644 index 0000000..21e81a3 --- /dev/null +++ b/css/pico.css @@ -0,0 +1,2796 @@ +@charset "UTF-8"; + +/*! + * Pico.css v1.5.6 (https://picocss.com) + * Copyright 2019-2022 - Licensed under MIT + */ +:root { + --font-family: system-ui, -apple-system, "Segoe UI", "Roboto", "Ubuntu", "Cantarell", "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + --line-height: 1.5; + --font-weight: 400; + --font-size: 16px; + --border-radius: 0.25rem; + --border-width: 1px; + --outline-width: 3px; + --spacing: 1rem; + --typography-spacing-vertical: 1.5rem; + --block-spacing-vertical: calc(var(--spacing) * 2); + --block-spacing-horizontal: var(--spacing); + --grid-spacing-vertical: 0; + --grid-spacing-horizontal: var(--spacing); + --form-element-spacing-vertical: 0.75rem; + --form-element-spacing-horizontal: 1rem; + --nav-element-spacing-vertical: 1rem; + --nav-element-spacing-horizontal: 0.5rem; + --nav-link-spacing-vertical: 0.5rem; + --nav-link-spacing-horizontal: 0.5rem; + --form-label-font-weight: var(--font-weight); + --transition: 0.2s ease-in-out; + --modal-overlay-backdrop-filter: blur(0.25rem) +} + +@media (min-width:576px) { + :root { + --font-size: 17px + } +} + +@media (min-width:768px) { + :root { + --font-size: 18px + } +} + +@media (min-width:992px) { + :root { + --font-size: 19px + } +} + +@media (min-width:1200px) { + :root { + --font-size: 20px + } +} + +@media (min-width:576px) { + + body>footer, + body>header, + body>main, + section { + --block-spacing-vertical: calc(var(--spacing) * 2.5) + } +} + +@media (min-width:768px) { + + body>footer, + body>header, + body>main, + section { + --block-spacing-vertical: calc(var(--spacing) * 3) + } +} + +@media (min-width:992px) { + + body>footer, + body>header, + body>main, + section { + --block-spacing-vertical: calc(var(--spacing) * 3.5) + } +} + +@media (min-width:1200px) { + + body>footer, + body>header, + body>main, + section { + --block-spacing-vertical: calc(var(--spacing) * 4) + } +} + +@media (min-width:576px) { + article { + --block-spacing-horizontal: calc(var(--spacing) * 1.25) + } +} + +@media (min-width:768px) { + article { + --block-spacing-horizontal: calc(var(--spacing) * 1.5) + } +} + +@media (min-width:992px) { + article { + --block-spacing-horizontal: calc(var(--spacing) * 1.75) + } +} + +@media (min-width:1200px) { + article { + --block-spacing-horizontal: calc(var(--spacing) * 2) + } +} + +dialog>article { + --block-spacing-vertical: calc(var(--spacing) * 2); + --block-spacing-horizontal: var(--spacing) +} + +@media (min-width:576px) { + dialog>article { + --block-spacing-vertical: calc(var(--spacing) * 2.5); + --block-spacing-horizontal: calc(var(--spacing) * 1.25) + } +} + +@media (min-width:768px) { + dialog>article { + --block-spacing-vertical: calc(var(--spacing) * 3); + --block-spacing-horizontal: calc(var(--spacing) * 1.5) + } +} + +a { + --text-decoration: none +} + +a.contrast, +a.secondary { + --text-decoration: underline +} + +small { + --font-size: 0.875em +} + +h1, +h2, +h3, +h4, +h5, +h6 { + --font-weight: 700 +} + +h1 { + --font-size: 2rem; + --typography-spacing-vertical: 3rem +} + +h2 { + --font-size: 1.75rem; + --typography-spacing-vertical: 2.625rem +} + +h3 { + --font-size: 1.5rem; + --typography-spacing-vertical: 2.25rem +} + +h4 { + --font-size: 1.25rem; + --typography-spacing-vertical: 1.874rem +} + +h5 { + --font-size: 1.125rem; + --typography-spacing-vertical: 1.6875rem +} + +[type=checkbox], +[type=radio] { + --border-width: 2px +} + +[type=checkbox][role=switch] { + --border-width: 3px +} + +tfoot td, +tfoot th, +thead td, +thead th { + --border-width: 3px +} + +:not(thead, tfoot)>*>td { + --font-size: 0.875em +} + +code, +kbd, +pre, +samp { + --font-family: "Menlo", "Consolas", "Roboto Mono", "Ubuntu Monospace", "Noto Mono", "Oxygen Mono", "Liberation Mono", monospace, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" +} + +kbd { + --font-weight: bolder +} + +:root:not([data-theme=dark]), +[data-theme=light] { + --background-color: #fff; + --color: hsl(205deg, 20%, 32%); + --h1-color: hsl(205deg, 30%, 15%); + --h2-color: #24333e; + --h3-color: hsl(205deg, 25%, 23%); + --h4-color: #374956; + --h5-color: hsl(205deg, 20%, 32%); + --h6-color: #4d606d; + --muted-color: hsl(205deg, 10%, 50%); + --muted-border-color: hsl(205deg, 20%, 94%); + --primary: hsl(195deg, 85%, 41%); + --primary-hover: hsl(195deg, 90%, 32%); + --primary-focus: rgba(16, 149, 193, 0.125); + --primary-inverse: #fff; + --secondary: hsl(205deg, 15%, 41%); + --secondary-hover: hsl(205deg, 20%, 32%); + --secondary-focus: rgba(89, 107, 120, 0.125); + --secondary-inverse: #fff; + --contrast: hsl(205deg, 30%, 15%); + --contrast-hover: #000; + --contrast-focus: rgba(89, 107, 120, 0.125); + --contrast-inverse: #fff; + --mark-background-color: #fff2ca; + --mark-color: #543a26; + --ins-color: #388e3c; + --del-color: #c62828; + --blockquote-border-color: var(--muted-border-color); + --blockquote-footer-color: var(--muted-color); + --button-box-shadow: 0 0 0 rgba(0, 0, 0, 0); + --button-hover-box-shadow: 0 0 0 rgba(0, 0, 0, 0); + --form-element-background-color: transparent; + --form-element-border-color: hsl(205deg, 14%, 68%); + --form-element-color: var(--color); + --form-element-placeholder-color: var(--muted-color); + --form-element-active-background-color: transparent; + --form-element-active-border-color: var(--primary); + --form-element-focus-color: var(--primary-focus); + --form-element-disabled-background-color: hsl(205deg, 18%, 86%); + --form-element-disabled-border-color: hsl(205deg, 14%, 68%); + --form-element-disabled-opacity: 0.5; + --form-element-invalid-border-color: #c62828; + --form-element-invalid-active-border-color: #d32f2f; + --form-element-invalid-focus-color: rgba(211, 47, 47, 0.125); + --form-element-valid-border-color: #388e3c; + --form-element-valid-active-border-color: #43a047; + --form-element-valid-focus-color: rgba(67, 160, 71, 0.125); + --switch-background-color: hsl(205deg, 16%, 77%); + --switch-color: var(--primary-inverse); + --switch-checked-background-color: var(--primary); + --range-border-color: hsl(205deg, 18%, 86%); + --range-active-border-color: hsl(205deg, 16%, 77%); + --range-thumb-border-color: var(--background-color); + --range-thumb-color: var(--secondary); + --range-thumb-hover-color: var(--secondary-hover); + --range-thumb-active-color: var(--primary); + --table-border-color: var(--muted-border-color); + --table-row-stripped-background-color: #f6f8f9; + --code-background-color: hsl(205deg, 20%, 94%); + --code-color: var(--muted-color); + --code-kbd-background-color: var(--contrast); + --code-kbd-color: var(--contrast-inverse); + --code-tag-color: hsl(330deg, 40%, 50%); + --code-property-color: hsl(185deg, 40%, 40%); + --code-value-color: hsl(40deg, 20%, 50%); + --code-comment-color: hsl(205deg, 14%, 68%); + --accordion-border-color: var(--muted-border-color); + --accordion-close-summary-color: var(--color); + --accordion-open-summary-color: var(--muted-color); + --card-background-color: var(--background-color); + --card-border-color: var(--muted-border-color); + --card-box-shadow: 0.0145rem 0.029rem 0.174rem rgba(27, 40, 50, 0.01698), 0.0335rem 0.067rem 0.402rem rgba(27, 40, 50, 0.024), 0.0625rem 0.125rem 0.75rem rgba(27, 40, 50, 0.03), 0.1125rem 0.225rem 1.35rem rgba(27, 40, 50, 0.036), 0.2085rem 0.417rem 2.502rem rgba(27, 40, 50, 0.04302), 0.5rem 1rem 6rem rgba(27, 40, 50, 0.06), 0 0 0 0.0625rem rgba(27, 40, 50, 0.015); + --card-sectionning-background-color: #fbfbfc; + --dropdown-background-color: #fbfbfc; + --dropdown-border-color: #e1e6eb; + --dropdown-box-shadow: var(--card-box-shadow); + --dropdown-color: var(--color); + --dropdown-hover-background-color: hsl(205deg, 20%, 94%); + --modal-overlay-background-color: rgba(213, 220, 226, 0.7); + --progress-background-color: hsl(205deg, 18%, 86%); + --progress-color: var(--primary); + --loading-spinner-opacity: 0.5; + --tooltip-background-color: var(--contrast); + --tooltip-color: var(--contrast-inverse); + --icon-checkbox: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(255, 255, 255)' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E"); + --icon-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(65, 84, 98)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E"); + --icon-chevron-button: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(255, 255, 255)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E"); + --icon-chevron-button-inverse: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(255, 255, 255)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E"); + --icon-close: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(115, 130, 140)' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='18' y1='6' x2='6' y2='18'%3E%3C/line%3E%3Cline x1='6' y1='6' x2='18' y2='18'%3E%3C/line%3E%3C/svg%3E"); + --icon-date: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(65, 84, 98)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='16' y1='2' x2='16' y2='6'%3E%3C/line%3E%3Cline x1='8' y1='2' x2='8' y2='6'%3E%3C/line%3E%3Cline x1='3' y1='10' x2='21' y2='10'%3E%3C/line%3E%3C/svg%3E"); + --icon-invalid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(198, 40, 40)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'%3E%3C/line%3E%3C/svg%3E"); + --icon-minus: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(255, 255, 255)' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'%3E%3C/line%3E%3C/svg%3E"); + --icon-search: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(65, 84, 98)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E"); + --icon-time: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(65, 84, 98)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpolyline points='12 6 12 12 16 14'%3E%3C/polyline%3E%3C/svg%3E"); + --icon-valid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(56, 142, 60)' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E"); + color-scheme: light +} + +@media only screen and (prefers-color-scheme:dark) { + :root:not([data-theme=light]) { + --background-color: #11191f; + --color: hsl(205deg, 16%, 77%); + --h1-color: hsl(205deg, 20%, 94%); + --h2-color: #e1e6eb; + --h3-color: hsl(205deg, 18%, 86%); + --h4-color: #c8d1d8; + --h5-color: hsl(205deg, 16%, 77%); + --h6-color: #afbbc4; + --muted-color: hsl(205deg, 10%, 50%); + --muted-border-color: #1f2d38; + --primary: hsl(195deg, 85%, 41%); + --primary-hover: hsl(195deg, 80%, 50%); + --primary-focus: rgba(16, 149, 193, 0.25); + --primary-inverse: #fff; + --secondary: hsl(205deg, 15%, 41%); + --secondary-hover: hsl(205deg, 10%, 50%); + --secondary-focus: rgba(115, 130, 140, 0.25); + --secondary-inverse: #fff; + --contrast: hsl(205deg, 20%, 94%); + --contrast-hover: #fff; + --contrast-focus: rgba(115, 130, 140, 0.25); + --contrast-inverse: #000; + --mark-background-color: #d1c284; + --mark-color: #11191f; + --ins-color: #388e3c; + --del-color: #c62828; + --blockquote-border-color: var(--muted-border-color); + --blockquote-footer-color: var(--muted-color); + --button-box-shadow: 0 0 0 rgba(0, 0, 0, 0); + --button-hover-box-shadow: 0 0 0 rgba(0, 0, 0, 0); + --form-element-background-color: #11191f; + --form-element-border-color: #374956; + --form-element-color: var(--color); + --form-element-placeholder-color: var(--muted-color); + --form-element-active-background-color: var(--form-element-background-color); + --form-element-active-border-color: var(--primary); + --form-element-focus-color: var(--primary-focus); + --form-element-disabled-background-color: hsl(205deg, 25%, 23%); + --form-element-disabled-border-color: hsl(205deg, 20%, 32%); + --form-element-disabled-opacity: 0.5; + --form-element-invalid-border-color: #b71c1c; + --form-element-invalid-active-border-color: #c62828; + --form-element-invalid-focus-color: rgba(198, 40, 40, 0.25); + --form-element-valid-border-color: #2e7d32; + --form-element-valid-active-border-color: #388e3c; + --form-element-valid-focus-color: rgba(56, 142, 60, 0.25); + --switch-background-color: #374956; + --switch-color: var(--primary-inverse); + --switch-checked-background-color: var(--primary); + --range-border-color: #24333e; + --range-active-border-color: hsl(205deg, 25%, 23%); + --range-thumb-border-color: var(--background-color); + --range-thumb-color: var(--secondary); + --range-thumb-hover-color: var(--secondary-hover); + --range-thumb-active-color: var(--primary); + --table-border-color: var(--muted-border-color); + --table-row-stripped-background-color: rgba(115, 130, 140, 0.05); + --code-background-color: #18232c; + --code-color: var(--muted-color); + --code-kbd-background-color: var(--contrast); + --code-kbd-color: var(--contrast-inverse); + --code-tag-color: hsl(330deg, 30%, 50%); + --code-property-color: hsl(185deg, 30%, 50%); + --code-value-color: hsl(40deg, 10%, 50%); + --code-comment-color: #4d606d; + --accordion-border-color: var(--muted-border-color); + --accordion-active-summary-color: var(--primary); + --accordion-close-summary-color: var(--color); + --accordion-open-summary-color: var(--muted-color); + --card-background-color: #141e26; + --card-border-color: var(--card-background-color); + --card-box-shadow: 0.0145rem 0.029rem 0.174rem rgba(0, 0, 0, 0.01698), 0.0335rem 0.067rem 0.402rem rgba(0, 0, 0, 0.024), 0.0625rem 0.125rem 0.75rem rgba(0, 0, 0, 0.03), 0.1125rem 0.225rem 1.35rem rgba(0, 0, 0, 0.036), 0.2085rem 0.417rem 2.502rem rgba(0, 0, 0, 0.04302), 0.5rem 1rem 6rem rgba(0, 0, 0, 0.06), 0 0 0 0.0625rem rgba(0, 0, 0, 0.015); + --card-sectionning-background-color: #18232c; + --dropdown-background-color: hsl(205deg, 30%, 15%); + --dropdown-border-color: #24333e; + --dropdown-box-shadow: var(--card-box-shadow); + --dropdown-color: var(--color); + --dropdown-hover-background-color: rgba(36, 51, 62, 0.75); + --modal-overlay-background-color: rgba(36, 51, 62, 0.8); + --progress-background-color: #24333e; + --progress-color: var(--primary); + --loading-spinner-opacity: 0.5; + --tooltip-background-color: var(--contrast); + --tooltip-color: var(--contrast-inverse); + --icon-checkbox: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(255, 255, 255)' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E"); + --icon-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(162, 175, 185)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E"); + --icon-chevron-button: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(255, 255, 255)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E"); + --icon-chevron-button-inverse: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(0, 0, 0)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E"); + --icon-close: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(115, 130, 140)' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='18' y1='6' x2='6' y2='18'%3E%3C/line%3E%3Cline x1='6' y1='6' x2='18' y2='18'%3E%3C/line%3E%3C/svg%3E"); + --icon-date: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(162, 175, 185)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='16' y1='2' x2='16' y2='6'%3E%3C/line%3E%3Cline x1='8' y1='2' x2='8' y2='6'%3E%3C/line%3E%3Cline x1='3' y1='10' x2='21' y2='10'%3E%3C/line%3E%3C/svg%3E"); + --icon-invalid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(183, 28, 28)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'%3E%3C/line%3E%3C/svg%3E"); + --icon-minus: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(255, 255, 255)' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'%3E%3C/line%3E%3C/svg%3E"); + --icon-search: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(162, 175, 185)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E"); + --icon-time: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(162, 175, 185)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpolyline points='12 6 12 12 16 14'%3E%3C/polyline%3E%3C/svg%3E"); + --icon-valid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(46, 125, 50)' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E"); + color-scheme: dark + } +} + +[data-theme=dark] { + --background-color: #11191f; + --color: hsl(205deg, 16%, 77%); + --h1-color: hsl(205deg, 20%, 94%); + --h2-color: #e1e6eb; + --h3-color: hsl(205deg, 18%, 86%); + --h4-color: #c8d1d8; + --h5-color: hsl(205deg, 16%, 77%); + --h6-color: #afbbc4; + --muted-color: hsl(205deg, 10%, 50%); + --muted-border-color: #1f2d38; + --primary: hsl(195deg, 85%, 41%); + --primary-hover: hsl(195deg, 80%, 50%); + --primary-focus: rgba(16, 149, 193, 0.25); + --primary-inverse: #fff; + --secondary: hsl(205deg, 15%, 41%); + --secondary-hover: hsl(205deg, 10%, 50%); + --secondary-focus: rgba(115, 130, 140, 0.25); + --secondary-inverse: #fff; + --contrast: hsl(205deg, 20%, 94%); + --contrast-hover: #fff; + --contrast-focus: rgba(115, 130, 140, 0.25); + --contrast-inverse: #000; + --mark-background-color: #d1c284; + --mark-color: #11191f; + --ins-color: #388e3c; + --del-color: #c62828; + --blockquote-border-color: var(--muted-border-color); + --blockquote-footer-color: var(--muted-color); + --button-box-shadow: 0 0 0 rgba(0, 0, 0, 0); + --button-hover-box-shadow: 0 0 0 rgba(0, 0, 0, 0); + --form-element-background-color: #11191f; + --form-element-border-color: #374956; + --form-element-color: var(--color); + --form-element-placeholder-color: var(--muted-color); + --form-element-active-background-color: var(--form-element-background-color); + --form-element-active-border-color: var(--primary); + --form-element-focus-color: var(--primary-focus); + --form-element-disabled-background-color: hsl(205deg, 25%, 23%); + --form-element-disabled-border-color: hsl(205deg, 20%, 32%); + --form-element-disabled-opacity: 0.5; + --form-element-invalid-border-color: #b71c1c; + --form-element-invalid-active-border-color: #c62828; + --form-element-invalid-focus-color: rgba(198, 40, 40, 0.25); + --form-element-valid-border-color: #2e7d32; + --form-element-valid-active-border-color: #388e3c; + --form-element-valid-focus-color: rgba(56, 142, 60, 0.25); + --switch-background-color: #374956; + --switch-color: var(--primary-inverse); + --switch-checked-background-color: var(--primary); + --range-border-color: #24333e; + --range-active-border-color: hsl(205deg, 25%, 23%); + --range-thumb-border-color: var(--background-color); + --range-thumb-color: var(--secondary); + --range-thumb-hover-color: var(--secondary-hover); + --range-thumb-active-color: var(--primary); + --table-border-color: var(--muted-border-color); + --table-row-stripped-background-color: rgba(115, 130, 140, 0.05); + --code-background-color: #18232c; + --code-color: var(--muted-color); + --code-kbd-background-color: var(--contrast); + --code-kbd-color: var(--contrast-inverse); + --code-tag-color: hsl(330deg, 30%, 50%); + --code-property-color: hsl(185deg, 30%, 50%); + --code-value-color: hsl(40deg, 10%, 50%); + --code-comment-color: #4d606d; + --accordion-border-color: var(--muted-border-color); + --accordion-active-summary-color: var(--primary); + --accordion-close-summary-color: var(--color); + --accordion-open-summary-color: var(--muted-color); + --card-background-color: #141e26; + --card-border-color: var(--card-background-color); + --card-box-shadow: 0.0145rem 0.029rem 0.174rem rgba(0, 0, 0, 0.01698), 0.0335rem 0.067rem 0.402rem rgba(0, 0, 0, 0.024), 0.0625rem 0.125rem 0.75rem rgba(0, 0, 0, 0.03), 0.1125rem 0.225rem 1.35rem rgba(0, 0, 0, 0.036), 0.2085rem 0.417rem 2.502rem rgba(0, 0, 0, 0.04302), 0.5rem 1rem 6rem rgba(0, 0, 0, 0.06), 0 0 0 0.0625rem rgba(0, 0, 0, 0.015); + --card-sectionning-background-color: #18232c; + --dropdown-background-color: hsl(205deg, 30%, 15%); + --dropdown-border-color: #24333e; + --dropdown-box-shadow: var(--card-box-shadow); + --dropdown-color: var(--color); + --dropdown-hover-background-color: rgba(36, 51, 62, 0.75); + --modal-overlay-background-color: rgba(36, 51, 62, 0.8); + --progress-background-color: #24333e; + --progress-color: var(--primary); + --loading-spinner-opacity: 0.5; + --tooltip-background-color: var(--contrast); + --tooltip-color: var(--contrast-inverse); + --icon-checkbox: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(255, 255, 255)' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E"); + --icon-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(162, 175, 185)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E"); + --icon-chevron-button: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(255, 255, 255)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E"); + --icon-chevron-button-inverse: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(0, 0, 0)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E"); + --icon-close: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(115, 130, 140)' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='18' y1='6' x2='6' y2='18'%3E%3C/line%3E%3Cline x1='6' y1='6' x2='18' y2='18'%3E%3C/line%3E%3C/svg%3E"); + --icon-date: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(162, 175, 185)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='16' y1='2' x2='16' y2='6'%3E%3C/line%3E%3Cline x1='8' y1='2' x2='8' y2='6'%3E%3C/line%3E%3Cline x1='3' y1='10' x2='21' y2='10'%3E%3C/line%3E%3C/svg%3E"); + --icon-invalid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(183, 28, 28)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'%3E%3C/line%3E%3C/svg%3E"); + --icon-minus: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(255, 255, 255)' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'%3E%3C/line%3E%3C/svg%3E"); + --icon-search: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(162, 175, 185)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E"); + --icon-time: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(162, 175, 185)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpolyline points='12 6 12 12 16 14'%3E%3C/polyline%3E%3C/svg%3E"); + --icon-valid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(46, 125, 50)' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E"); + color-scheme: dark +} + +[type=checkbox], +[type=radio], +[type=range], +progress { + accent-color: var(--primary) +} + +*, +::after, +::before { + box-sizing: border-box; + background-repeat: no-repeat +} + +::after, +::before { + text-decoration: inherit; + vertical-align: inherit +} + +:where(:root) { + -webkit-tap-highlight-color: transparent; + -webkit-text-size-adjust: 100%; + -moz-text-size-adjust: 100%; + text-size-adjust: 100%; + background-color: var(--background-color); + color: var(--color); + font-weight: var(--font-weight); + font-size: var(--font-size); + line-height: var(--line-height); + font-family: var(--font-family); + text-rendering: optimizeLegibility; + overflow-wrap: break-word; + cursor: default; + -moz-tab-size: 4; + -o-tab-size: 4; + tab-size: 4 +} + +main { + display: block +} + +body { + width: 100%; + margin: 0 +} + +body>footer, +body>header, +body>main { + width: 100%; + margin-right: auto; + margin-left: auto; + padding: var(--block-spacing-vertical) 0 +} + +.container, +.container-fluid { + width: 100%; + margin-right: auto; + margin-left: auto; + padding-right: var(--spacing); + padding-left: var(--spacing) +} + +@media (min-width:576px) { + .container { + max-width: 510px; + padding-right: 0; + padding-left: 0 + } +} + +@media (min-width:768px) { + .container { + max-width: 700px + } +} + +@media (min-width:992px) { + .container { + max-width: 920px + } +} + +@media (min-width:1200px) { + .container { + max-width: 1130px + } +} + +section { + margin-bottom: var(--block-spacing-vertical) +} + +.grid { + grid-column-gap: var(--grid-spacing-horizontal); + grid-row-gap: var(--grid-spacing-vertical); + display: grid; + grid-template-columns: 1fr; + margin: 0 +} + +@media (min-width:992px) { + .grid { + grid-template-columns: repeat(auto-fit, minmax(0%, 1fr)) + } +} + +.grid>* { + min-width: 0 +} + +figure { + display: block; + margin: 0; + padding: 0; + overflow-x: auto +} + +figure figcaption { + padding: calc(var(--spacing) * .5) 0; + color: var(--muted-color) +} + +b, +strong { + font-weight: bolder +} + +sub, +sup { + position: relative; + font-size: .75em; + line-height: 0; + vertical-align: baseline +} + +sub { + bottom: -.25em +} + +sup { + top: -.5em +} + +address, +blockquote, +dl, +figure, +form, +ol, +p, +pre, +table, +ul { + margin-top: 0; + margin-bottom: var(--typography-spacing-vertical); + color: var(--color); + font-style: normal; + font-weight: var(--font-weight); + font-size: var(--font-size) +} + +[role=link], +a { + --color: var(--primary); + --background-color: transparent; + outline: 0; + background-color: var(--background-color); + color: var(--color); + -webkit-text-decoration: var(--text-decoration); + text-decoration: var(--text-decoration); + transition: background-color var(--transition), color var(--transition), box-shadow var(--transition), -webkit-text-decoration var(--transition); + transition: background-color var(--transition), color var(--transition), text-decoration var(--transition), box-shadow var(--transition); + transition: background-color var(--transition), color var(--transition), text-decoration var(--transition), box-shadow var(--transition), -webkit-text-decoration var(--transition) +} + +[role=link]:is([aria-current], :hover, :active, :focus), +a:is([aria-current], :hover, :active, :focus) { + --color: var(--primary-hover); + --text-decoration: underline +} + +[role=link]:focus, +a:focus { + --background-color: var(--primary-focus) +} + +[role=link].secondary, +a.secondary { + --color: var(--secondary) +} + +[role=link].secondary:is([aria-current], :hover, :active, :focus), +a.secondary:is([aria-current], :hover, :active, :focus) { + --color: var(--secondary-hover) +} + +[role=link].secondary:focus, +a.secondary:focus { + --background-color: var(--secondary-focus) +} + +[role=link].contrast, +a.contrast { + --color: var(--contrast) +} + +[role=link].contrast:is([aria-current], :hover, :active, :focus), +a.contrast:is([aria-current], :hover, :active, :focus) { + --color: var(--contrast-hover) +} + +[role=link].contrast:focus, +a.contrast:focus { + --background-color: var(--contrast-focus) +} + +h1, +h2, +h3, +h4, +h5, +h6 { + margin-top: 0; + margin-bottom: var(--typography-spacing-vertical); + color: var(--color); + font-weight: var(--font-weight); + font-size: var(--font-size); + font-family: var(--font-family) +} + +h1 { + --color: var(--h1-color) +} + +h2 { + --color: var(--h2-color) +} + +h3 { + --color: var(--h3-color) +} + +h4 { + --color: var(--h4-color) +} + +h5 { + --color: var(--h5-color) +} + +h6 { + --color: var(--h6-color) +} + +:where(address, blockquote, dl, figure, form, ol, p, pre, table, ul)~:is(h1, h2, h3, h4, h5, h6) { + margin-top: var(--typography-spacing-vertical) +} + +.headings, +hgroup { + margin-bottom: var(--typography-spacing-vertical) +} + +.headings>*, +hgroup>* { + margin-bottom: 0 +} + +.headings>:last-child, +hgroup>:last-child { + --color: var(--muted-color); + --font-weight: unset; + font-size: 1rem; + font-family: unset +} + +p { + margin-bottom: var(--typography-spacing-vertical) +} + +small { + font-size: var(--font-size) +} + +:where(dl, ol, ul) { + padding-right: 0; + padding-left: var(--spacing); + -webkit-padding-start: var(--spacing); + padding-inline-start: var(--spacing); + -webkit-padding-end: 0; + padding-inline-end: 0 +} + +:where(dl, ol, ul) li { + margin-bottom: calc(var(--typography-spacing-vertical) * .25) +} + +:where(dl, ol, ul) :is(dl, ol, ul) { + margin: 0; + margin-top: calc(var(--typography-spacing-vertical) * .25) +} + +ul li { + list-style: square +} + +mark { + padding: .125rem .25rem; + background-color: var(--mark-background-color); + color: var(--mark-color); + vertical-align: baseline +} + +blockquote { + display: block; + margin: var(--typography-spacing-vertical) 0; + padding: var(--spacing); + border-right: none; + border-left: .25rem solid var(--blockquote-border-color); + -webkit-border-start: 0.25rem solid var(--blockquote-border-color); + border-inline-start: 0.25rem solid var(--blockquote-border-color); + -webkit-border-end: none; + border-inline-end: none +} + +blockquote footer { + margin-top: calc(var(--typography-spacing-vertical) * .5); + color: var(--blockquote-footer-color) +} + +abbr[title] { + border-bottom: 1px dotted; + text-decoration: none; + cursor: help +} + +ins { + color: var(--ins-color); + text-decoration: none +} + +del { + color: var(--del-color) +} + +::-moz-selection { + background-color: var(--primary-focus) +} + +::selection { + background-color: var(--primary-focus) +} + +:where(audio, canvas, iframe, img, svg, video) { + vertical-align: middle +} + +audio, +video { + display: inline-block +} + +audio:not([controls]) { + display: none; + height: 0 +} + +:where(iframe) { + border-style: none +} + +img { + max-width: 100%; + height: auto; + border-style: none +} + +:where(svg:not([fill])) { + fill: currentColor +} + +svg:not(:root) { + overflow: hidden +} + +button { + margin: 0; + overflow: visible; + font-family: inherit; + text-transform: none +} + +[type=button], +[type=reset], +[type=submit], +button { + -webkit-appearance: button +} + +button { + display: block; + width: 100%; + margin-bottom: var(--spacing) +} + +[role=button] { + display: inline-block; + text-decoration: none +} + +[role=button], +button, +input[type=button], +input[type=reset], +input[type=submit] { + --background-color: var(--primary); + --border-color: var(--primary); + --color: var(--primary-inverse); + --box-shadow: var(--button-box-shadow, 0 0 0 rgba(0, 0, 0, 0)); + padding: var(--form-element-spacing-vertical) var(--form-element-spacing-horizontal); + border: var(--border-width) solid var(--border-color); + border-radius: var(--border-radius); + outline: 0; + background-color: var(--background-color); + box-shadow: var(--box-shadow); + color: var(--color); + font-weight: var(--font-weight); + font-size: 1rem; + line-height: var(--line-height); + text-align: center; + cursor: pointer; + transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition) +} + +[role=button]:is([aria-current], :hover, :active, :focus), +button:is([aria-current], :hover, :active, :focus), +input[type=button]:is([aria-current], :hover, :active, :focus), +input[type=reset]:is([aria-current], :hover, :active, :focus), +input[type=submit]:is([aria-current], :hover, :active, :focus) { + --background-color: var(--primary-hover); + --border-color: var(--primary-hover); + --box-shadow: var(--button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0)); + --color: var(--primary-inverse) +} + +[role=button]:focus, +button:focus, +input[type=button]:focus, +input[type=reset]:focus, +input[type=submit]:focus { + --box-shadow: var(--button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0)), 0 0 0 var(--outline-width) var(--primary-focus) +} + +:is(button, input[type=submit], input[type=button], [role=button]).secondary, +input[type=reset] { + --background-color: var(--secondary); + --border-color: var(--secondary); + --color: var(--secondary-inverse); + cursor: pointer +} + +:is(button, input[type=submit], input[type=button], [role=button]).secondary:is([aria-current], :hover, :active, :focus), +input[type=reset]:is([aria-current], :hover, :active, :focus) { + --background-color: var(--secondary-hover); + --border-color: var(--secondary-hover); + --color: var(--secondary-inverse) +} + +:is(button, input[type=submit], input[type=button], [role=button]).secondary:focus, +input[type=reset]:focus { + --box-shadow: var(--button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0)), 0 0 0 var(--outline-width) var(--secondary-focus) +} + +:is(button, input[type=submit], input[type=button], [role=button]).contrast { + --background-color: var(--contrast); + --border-color: var(--contrast); + --color: var(--contrast-inverse) +} + +:is(button, input[type=submit], input[type=button], [role=button]).contrast:is([aria-current], :hover, :active, :focus) { + --background-color: var(--contrast-hover); + --border-color: var(--contrast-hover); + --color: var(--contrast-inverse) +} + +:is(button, input[type=submit], input[type=button], [role=button]).contrast:focus { + --box-shadow: var(--button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0)), 0 0 0 var(--outline-width) var(--contrast-focus) +} + +:is(button, input[type=submit], input[type=button], [role=button]).outline, +input[type=reset].outline { + --background-color: transparent; + --color: var(--primary) +} + +:is(button, input[type=submit], input[type=button], [role=button]).outline:is([aria-current], :hover, :active, :focus), +input[type=reset].outline:is([aria-current], :hover, :active, :focus) { + --background-color: transparent; + --color: var(--primary-hover) +} + +:is(button, input[type=submit], input[type=button], [role=button]).outline.secondary, +input[type=reset].outline { + --color: var(--secondary) +} + +:is(button, input[type=submit], input[type=button], [role=button]).outline.secondary:is([aria-current], :hover, :active, :focus), +input[type=reset].outline:is([aria-current], :hover, :active, :focus) { + --color: var(--secondary-hover) +} + +:is(button, input[type=submit], input[type=button], [role=button]).outline.contrast { + --color: var(--contrast) +} + +:is(button, input[type=submit], input[type=button], [role=button]).outline.contrast:is([aria-current], :hover, :active, :focus) { + --color: var(--contrast-hover) +} + +:where(button, [type=submit], [type=button], [type=reset], [role=button])[disabled], +:where(fieldset[disabled]) :is(button, [type=submit], [type=button], [type=reset], [role=button]), +a[role=button]:not([href]) { + opacity: .5; + pointer-events: none +} + +input, +optgroup, +select, +textarea { + margin: 0; + font-size: 1rem; + line-height: var(--line-height); + font-family: inherit; + letter-spacing: inherit +} + +input { + overflow: visible +} + +select { + text-transform: none +} + +legend { + max-width: 100%; + padding: 0; + color: inherit; + white-space: normal +} + +textarea { + overflow: auto +} + +[type=checkbox], +[type=radio] { + padding: 0 +} + +::-webkit-inner-spin-button, +::-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 +} + +::-moz-focus-inner { + padding: 0; + border-style: none +} + +:-moz-focusring { + outline: 0 +} + +:-moz-ui-invalid { + box-shadow: none +} + +::-ms-expand { + display: none +} + +[type=file], +[type=range] { + padding: 0; + border-width: 0 +} + +input:not([type=checkbox], [type=radio], [type=range]) { + height: calc(1rem * var(--line-height) + var(--form-element-spacing-vertical) * 2 + var(--border-width) * 2) +} + +fieldset { + margin: 0; + margin-bottom: var(--spacing); + padding: 0; + border: 0 +} + +fieldset legend, +label { + display: block; + margin-bottom: calc(var(--spacing) * .25); + font-weight: var(--form-label-font-weight, var(--font-weight)) +} + +input:not([type=checkbox], [type=radio]), +select, +textarea { + width: 100% +} + +input:not([type=checkbox], [type=radio], [type=range], [type=file]), +select, +textarea { + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + padding: var(--form-element-spacing-vertical) var(--form-element-spacing-horizontal) +} + +input, +select, +textarea { + --background-color: var(--form-element-background-color); + --border-color: var(--form-element-border-color); + --color: var(--form-element-color); + --box-shadow: none; + border: var(--border-width) solid var(--border-color); + border-radius: var(--border-radius); + outline: 0; + background-color: var(--background-color); + box-shadow: var(--box-shadow); + color: var(--color); + font-weight: var(--font-weight); + transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition) +} + +:where(select, textarea):is(:active, :focus), +input:not([type=submit], [type=button], [type=reset], [type=checkbox], [type=radio], [readonly]):is(:active, :focus) { + --background-color: var(--form-element-active-background-color) +} + +:where(select, textarea):is(:active, :focus), +input:not([type=submit], [type=button], [type=reset], [role=switch], [readonly]):is(:active, :focus) { + --border-color: var(--form-element-active-border-color) +} + +input:not([type=submit], [type=button], [type=reset], [type=range], [type=file], [readonly]):focus, +select:focus, +textarea:focus { + --box-shadow: 0 0 0 var(--outline-width) var(--form-element-focus-color) +} + +:where(fieldset[disabled]) :is(input:not([type=submit], [type=button], [type=reset]), select, textarea), +input:not([type=submit], [type=button], [type=reset])[disabled], +select[disabled], +textarea[disabled] { + --background-color: var(--form-element-disabled-background-color); + --border-color: var(--form-element-disabled-border-color); + opacity: var(--form-element-disabled-opacity); + pointer-events: none +} + +:where(input, select, textarea):not([type=checkbox], [type=radio], [type=date], [type=datetime-local], [type=month], [type=time], [type=week])[aria-invalid] { + padding-right: calc(var(--form-element-spacing-horizontal) + 1.5rem) !important; + padding-left: var(--form-element-spacing-horizontal); + -webkit-padding-start: var(--form-element-spacing-horizontal) !important; + padding-inline-start: var(--form-element-spacing-horizontal) !important; + -webkit-padding-end: calc(var(--form-element-spacing-horizontal) + 1.5rem) !important; + padding-inline-end: calc(var(--form-element-spacing-horizontal) + 1.5rem) !important; + background-position: center right .75rem; + background-size: 1rem auto; + background-repeat: no-repeat +} + +:where(input, select, textarea):not([type=checkbox], [type=radio], [type=date], [type=datetime-local], [type=month], [type=time], [type=week])[aria-invalid=false] { + background-image: var(--icon-valid) +} + +:where(input, select, textarea):not([type=checkbox], [type=radio], [type=date], [type=datetime-local], [type=month], [type=time], [type=week])[aria-invalid=true] { + background-image: var(--icon-invalid) +} + +:where(input, select, textarea)[aria-invalid=false] { + --border-color: var(--form-element-valid-border-color) +} + +:where(input, select, textarea)[aria-invalid=false]:is(:active, :focus) { + --border-color: var(--form-element-valid-active-border-color) !important; + --box-shadow: 0 0 0 var(--outline-width) var(--form-element-valid-focus-color) !important +} + +:where(input, select, textarea)[aria-invalid=true] { + --border-color: var(--form-element-invalid-border-color) +} + +:where(input, select, textarea)[aria-invalid=true]:is(:active, :focus) { + --border-color: var(--form-element-invalid-active-border-color) !important; + --box-shadow: 0 0 0 var(--outline-width) var(--form-element-invalid-focus-color) !important +} + +[dir=rtl] :where(input, select, textarea):not([type=checkbox], [type=radio]):is([aria-invalid], [aria-invalid=true], [aria-invalid=false]) { + background-position: center left .75rem +} + +input::-webkit-input-placeholder, +input::placeholder, +select:invalid, +textarea::-webkit-input-placeholder, +textarea::placeholder { + color: var(--form-element-placeholder-color); + opacity: 1 +} + +input:not([type=checkbox], [type=radio]), +select, +textarea { + margin-bottom: var(--spacing) +} + +select::-ms-expand { + border: 0; + background-color: transparent +} + +select:not([multiple], [size]) { + padding-right: calc(var(--form-element-spacing-horizontal) + 1.5rem); + padding-left: var(--form-element-spacing-horizontal); + -webkit-padding-start: var(--form-element-spacing-horizontal); + padding-inline-start: var(--form-element-spacing-horizontal); + -webkit-padding-end: calc(var(--form-element-spacing-horizontal) + 1.5rem); + padding-inline-end: calc(var(--form-element-spacing-horizontal) + 1.5rem); + background-image: var(--icon-chevron); + background-position: center right .75rem; + background-size: 1rem auto; + background-repeat: no-repeat +} + +[dir=rtl] select:not([multiple], [size]) { + background-position: center left .75rem +} + +:where(input, select, textarea)+small { + display: block; + width: 100%; + margin-top: calc(var(--spacing) * -.75); + margin-bottom: var(--spacing); + color: var(--muted-color) +} + +label>:where(input, select, textarea) { + margin-top: calc(var(--spacing) * .25) +} + +[type=checkbox], +[type=radio] { + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + width: 1.25em; + height: 1.25em; + margin-top: -.125em; + margin-right: .375em; + margin-left: 0; + -webkit-margin-start: 0; + margin-inline-start: 0; + -webkit-margin-end: .375em; + margin-inline-end: .375em; + border-width: var(--border-width); + font-size: inherit; + vertical-align: middle; + cursor: pointer +} + +[type=checkbox]::-ms-check, +[type=radio]::-ms-check { + display: none +} + +[type=checkbox]:checked, +[type=checkbox]:checked:active, +[type=checkbox]:checked:focus, +[type=radio]:checked, +[type=radio]:checked:active, +[type=radio]:checked:focus { + --background-color: var(--primary); + --border-color: var(--primary); + background-image: var(--icon-checkbox); + background-position: center; + background-size: .75em auto; + background-repeat: no-repeat +} + +[type=checkbox]~label, +[type=radio]~label { + display: inline-block; + margin-right: .375em; + margin-bottom: 0; + cursor: pointer +} + +[type=checkbox]:indeterminate { + --background-color: var(--primary); + --border-color: var(--primary); + background-image: var(--icon-minus); + background-position: center; + background-size: .75em auto; + background-repeat: no-repeat +} + +[type=radio] { + border-radius: 50% +} + +[type=radio]:checked, +[type=radio]:checked:active, +[type=radio]:checked:focus { + --background-color: var(--primary-inverse); + border-width: .35em; + background-image: none +} + +[type=checkbox][role=switch] { + --background-color: var(--switch-background-color); + --border-color: var(--switch-background-color); + --color: var(--switch-color); + width: 2.25em; + height: 1.25em; + border: var(--border-width) solid var(--border-color); + border-radius: 1.25em; + background-color: var(--background-color); + line-height: 1.25em +} + +[type=checkbox][role=switch]:focus { + --background-color: var(--switch-background-color); + --border-color: var(--switch-background-color) +} + +[type=checkbox][role=switch]:checked { + --background-color: var(--switch-checked-background-color); + --border-color: var(--switch-checked-background-color) +} + +[type=checkbox][role=switch]:before { + display: block; + width: calc(1.25em - (var(--border-width) * 2)); + height: 100%; + border-radius: 50%; + background-color: var(--color); + content: ""; + transition: margin .1s ease-in-out +} + +[type=checkbox][role=switch]:checked { + background-image: none +} + +[type=checkbox][role=switch]:checked::before { + margin-left: calc(1.125em - var(--border-width)); + -webkit-margin-start: calc(1.125em - var(--border-width)); + margin-inline-start: calc(1.125em - var(--border-width)) +} + +[type=checkbox]:checked[aria-invalid=false], +[type=checkbox][aria-invalid=false], +[type=checkbox][role=switch]:checked[aria-invalid=false], +[type=checkbox][role=switch][aria-invalid=false], +[type=radio]:checked[aria-invalid=false], +[type=radio][aria-invalid=false] { + --border-color: var(--form-element-valid-border-color) +} + +[type=checkbox]:checked[aria-invalid=true], +[type=checkbox][aria-invalid=true], +[type=checkbox][role=switch]:checked[aria-invalid=true], +[type=checkbox][role=switch][aria-invalid=true], +[type=radio]:checked[aria-invalid=true], +[type=radio][aria-invalid=true] { + --border-color: var(--form-element-invalid-border-color) +} + +[type=color]::-webkit-color-swatch-wrapper { + padding: 0 +} + +[type=color]::-moz-focus-inner { + padding: 0 +} + +[type=color]::-webkit-color-swatch { + border: 0; + border-radius: calc(var(--border-radius) * .5) +} + +[type=color]::-moz-color-swatch { + border: 0; + border-radius: calc(var(--border-radius) * .5) +} + +input:not([type=checkbox], [type=radio], [type=range], [type=file]):is([type=date], [type=datetime-local], [type=month], [type=time], [type=week]) { + --icon-position: 0.75rem; + --icon-width: 1rem; + padding-right: calc(var(--icon-width) + var(--icon-position)); + background-image: var(--icon-date); + background-position: center right var(--icon-position); + background-size: var(--icon-width) auto; + background-repeat: no-repeat +} + +input:not([type=checkbox], [type=radio], [type=range], [type=file])[type=time] { + background-image: var(--icon-time) +} + +[type=date]::-webkit-calendar-picker-indicator, +[type=datetime-local]::-webkit-calendar-picker-indicator, +[type=month]::-webkit-calendar-picker-indicator, +[type=time]::-webkit-calendar-picker-indicator, +[type=week]::-webkit-calendar-picker-indicator { + width: var(--icon-width); + margin-right: calc(var(--icon-width) * -1); + margin-left: var(--icon-position); + opacity: 0 +} + +[dir=rtl] :is([type=date], [type=datetime-local], [type=month], [type=time], [type=week]) { + text-align: right +} + +[type=file] { + --color: var(--muted-color); + padding: calc(var(--form-element-spacing-vertical) * .5) 0; + border: 0; + border-radius: 0; + background: 0 0 +} + +[type=file]::file-selector-button { + --background-color: var(--secondary); + --border-color: var(--secondary); + --color: var(--secondary-inverse); + margin-right: calc(var(--spacing)/ 2); + margin-left: 0; + -webkit-margin-start: 0; + margin-inline-start: 0; + -webkit-margin-end: calc(var(--spacing)/ 2); + margin-inline-end: calc(var(--spacing)/ 2); + padding: calc(var(--form-element-spacing-vertical) * .5) calc(var(--form-element-spacing-horizontal) * .5); + border: var(--border-width) solid var(--border-color); + border-radius: var(--border-radius); + outline: 0; + background-color: var(--background-color); + box-shadow: var(--box-shadow); + color: var(--color); + font-weight: var(--font-weight); + font-size: 1rem; + line-height: var(--line-height); + text-align: center; + cursor: pointer; + transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition) +} + +[type=file]::file-selector-button:is(:hover, :active, :focus) { + --background-color: var(--secondary-hover); + --border-color: var(--secondary-hover) +} + +[type=file]::-webkit-file-upload-button { + --background-color: var(--secondary); + --border-color: var(--secondary); + --color: var(--secondary-inverse); + margin-right: calc(var(--spacing)/ 2); + margin-left: 0; + -webkit-margin-start: 0; + margin-inline-start: 0; + -webkit-margin-end: calc(var(--spacing)/ 2); + margin-inline-end: calc(var(--spacing)/ 2); + padding: calc(var(--form-element-spacing-vertical) * .5) calc(var(--form-element-spacing-horizontal) * .5); + border: var(--border-width) solid var(--border-color); + border-radius: var(--border-radius); + outline: 0; + background-color: var(--background-color); + box-shadow: var(--box-shadow); + color: var(--color); + font-weight: var(--font-weight); + font-size: 1rem; + line-height: var(--line-height); + text-align: center; + cursor: pointer; + -webkit-transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition); + transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition) +} + +[type=file]::-webkit-file-upload-button:is(:hover, :active, :focus) { + --background-color: var(--secondary-hover); + --border-color: var(--secondary-hover) +} + +[type=file]::-ms-browse { + --background-color: var(--secondary); + --border-color: var(--secondary); + --color: var(--secondary-inverse); + margin-right: calc(var(--spacing)/ 2); + margin-left: 0; + margin-inline-start: 0; + margin-inline-end: calc(var(--spacing)/ 2); + padding: calc(var(--form-element-spacing-vertical) * .5) calc(var(--form-element-spacing-horizontal) * .5); + border: var(--border-width) solid var(--border-color); + border-radius: var(--border-radius); + outline: 0; + background-color: var(--background-color); + box-shadow: var(--box-shadow); + color: var(--color); + font-weight: var(--font-weight); + font-size: 1rem; + line-height: var(--line-height); + text-align: center; + cursor: pointer; + -ms-transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition); + transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition) +} + +[type=file]::-ms-browse:is(:hover, :active, :focus) { + --background-color: var(--secondary-hover); + --border-color: var(--secondary-hover) +} + +[type=range] { + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + width: 100%; + height: 1.25rem; + background: 0 0 +} + +[type=range]::-webkit-slider-runnable-track { + width: 100%; + height: .25rem; + border-radius: var(--border-radius); + background-color: var(--range-border-color); + -webkit-transition: background-color var(--transition), box-shadow var(--transition); + transition: background-color var(--transition), box-shadow var(--transition) +} + +[type=range]::-moz-range-track { + width: 100%; + height: .25rem; + border-radius: var(--border-radius); + background-color: var(--range-border-color); + -moz-transition: background-color var(--transition), box-shadow var(--transition); + transition: background-color var(--transition), box-shadow var(--transition) +} + +[type=range]::-ms-track { + width: 100%; + height: .25rem; + border-radius: var(--border-radius); + background-color: var(--range-border-color); + -ms-transition: background-color var(--transition), box-shadow var(--transition); + transition: background-color var(--transition), box-shadow var(--transition) +} + +[type=range]::-webkit-slider-thumb { + -webkit-appearance: none; + width: 1.25rem; + height: 1.25rem; + margin-top: -.5rem; + border: 2px solid var(--range-thumb-border-color); + border-radius: 50%; + background-color: var(--range-thumb-color); + cursor: pointer; + -webkit-transition: background-color var(--transition), transform var(--transition); + transition: background-color var(--transition), transform var(--transition) +} + +[type=range]::-moz-range-thumb { + -webkit-appearance: none; + width: 1.25rem; + height: 1.25rem; + margin-top: -.5rem; + border: 2px solid var(--range-thumb-border-color); + border-radius: 50%; + background-color: var(--range-thumb-color); + cursor: pointer; + -moz-transition: background-color var(--transition), transform var(--transition); + transition: background-color var(--transition), transform var(--transition) +} + +[type=range]::-ms-thumb { + -webkit-appearance: none; + width: 1.25rem; + height: 1.25rem; + margin-top: -.5rem; + border: 2px solid var(--range-thumb-border-color); + border-radius: 50%; + background-color: var(--range-thumb-color); + cursor: pointer; + -ms-transition: background-color var(--transition), transform var(--transition); + transition: background-color var(--transition), transform var(--transition) +} + +[type=range]:focus, +[type=range]:hover { + --range-border-color: var(--range-active-border-color); + --range-thumb-color: var(--range-thumb-hover-color) +} + +[type=range]:active { + --range-thumb-color: var(--range-thumb-active-color) +} + +[type=range]:active::-webkit-slider-thumb { + transform: scale(1.25) +} + +[type=range]:active::-moz-range-thumb { + transform: scale(1.25) +} + +[type=range]:active::-ms-thumb { + transform: scale(1.25) +} + +input:not([type=checkbox], [type=radio], [type=range], [type=file])[type=search] { + -webkit-padding-start: calc(var(--form-element-spacing-horizontal) + 1.75rem); + padding-inline-start: calc(var(--form-element-spacing-horizontal) + 1.75rem); + border-radius: 5rem; + background-image: var(--icon-search); + background-position: center left 1.125rem; + background-size: 1rem auto; + background-repeat: no-repeat +} + +input:not([type=checkbox], [type=radio], [type=range], [type=file])[type=search][aria-invalid] { + -webkit-padding-start: calc(var(--form-element-spacing-horizontal) + 1.75rem) !important; + padding-inline-start: calc(var(--form-element-spacing-horizontal) + 1.75rem) !important; + background-position: center left 1.125rem, center right .75rem +} + +input:not([type=checkbox], [type=radio], [type=range], [type=file])[type=search][aria-invalid=false] { + background-image: var(--icon-search), var(--icon-valid) +} + +input:not([type=checkbox], [type=radio], [type=range], [type=file])[type=search][aria-invalid=true] { + background-image: var(--icon-search), var(--icon-invalid) +} + +[type=search]::-webkit-search-cancel-button { + -webkit-appearance: none; + display: none +} + +[dir=rtl] :where(input):not([type=checkbox], [type=radio], [type=range], [type=file])[type=search] { + background-position: center right 1.125rem +} + +[dir=rtl] :where(input):not([type=checkbox], [type=radio], [type=range], [type=file])[type=search][aria-invalid] { + background-position: center right 1.125rem, center left .75rem +} + +:where(table) { + width: 100%; + border-collapse: collapse; + border-spacing: 0; + text-indent: 0 +} + +td, +th { + padding: calc(var(--spacing)/ 2) var(--spacing); + border-bottom: var(--border-width) solid var(--table-border-color); + color: var(--color); + font-weight: var(--font-weight); + font-size: var(--font-size); + text-align: left; + text-align: start +} + +tfoot td, +tfoot th { + border-top: var(--border-width) solid var(--table-border-color); + border-bottom: 0 +} + +table[role=grid] tbody tr:nth-child(odd) { + background-color: var(--table-row-stripped-background-color) +} + +code, +kbd, +pre, +samp { + font-size: .875em; + font-family: var(--font-family) +} + +pre { + -ms-overflow-style: scrollbar; + overflow: auto +} + +code, +kbd, +pre { + border-radius: var(--border-radius); + background: var(--code-background-color); + color: var(--code-color); + font-weight: var(--font-weight); + line-height: initial +} + +code, +kbd { + display: inline-block; + padding: .375rem .5rem +} + +pre { + display: block; + margin-bottom: var(--spacing); + overflow-x: auto +} + +pre>code { + display: block; + padding: var(--spacing); + background: 0 0; + font-size: 14px; + line-height: var(--line-height) +} + +code b { + color: var(--code-tag-color); + font-weight: var(--font-weight) +} + +code i { + color: var(--code-property-color); + font-style: normal +} + +code u { + color: var(--code-value-color); + text-decoration: none +} + +code em { + color: var(--code-comment-color); + font-style: normal +} + +kbd { + background-color: var(--code-kbd-background-color); + color: var(--code-kbd-color); + vertical-align: baseline +} + +hr { + height: 0; + border: 0; + border-top: 1px solid var(--muted-border-color); + color: inherit +} + +[hidden], +template { + display: none !important +} + +canvas { + display: inline-block +} + +details { + display: block; + margin-bottom: var(--spacing); + padding-bottom: var(--spacing); + border-bottom: var(--border-width) solid var(--accordion-border-color) +} + +details summary { + line-height: 1rem; + list-style-type: none; + cursor: pointer; + transition: color var(--transition) +} + +details summary:not([role]) { + color: var(--accordion-close-summary-color) +} + +details summary::-webkit-details-marker { + display: none +} + +details summary::marker { + display: none +} + +details summary::-moz-list-bullet { + list-style-type: none +} + +details summary::after { + display: block; + width: 1rem; + height: 1rem; + -webkit-margin-start: calc(var(--spacing, 1rem) * 0.5); + margin-inline-start: calc(var(--spacing, 1rem) * .5); + float: right; + transform: rotate(-90deg); + background-image: var(--icon-chevron); + background-position: right center; + background-size: 1rem auto; + background-repeat: no-repeat; + content: ""; + transition: transform var(--transition) +} + +details summary:focus { + outline: 0 +} + +details summary:focus:not([role=button]) { + color: var(--accordion-active-summary-color) +} + +details summary[role=button] { + width: 100%; + text-align: left +} + +details summary[role=button]::after { + height: calc(1rem * var(--line-height, 1.5)); + background-image: var(--icon-chevron-button) +} + +details summary[role=button]:not(.outline).contrast::after { + background-image: var(--icon-chevron-button-inverse) +} + +details[open]>summary { + margin-bottom: calc(var(--spacing)) +} + +details[open]>summary:not([role]):not(:focus) { + color: var(--accordion-open-summary-color) +} + +details[open]>summary::after { + transform: rotate(0) +} + +[dir=rtl] details summary { + text-align: right +} + +[dir=rtl] details summary::after { + float: left; + background-position: left center +} + +article { + margin: var(--block-spacing-vertical) 0; + padding: var(--block-spacing-vertical) var(--block-spacing-horizontal); + border-radius: var(--border-radius); + background: var(--card-background-color); + box-shadow: var(--card-box-shadow) +} + +article>footer, +article>header { + margin-right: calc(var(--block-spacing-horizontal) * -1); + margin-left: calc(var(--block-spacing-horizontal) * -1); + padding: calc(var(--block-spacing-vertical) * .66) var(--block-spacing-horizontal); + background-color: var(--card-sectionning-background-color) +} + +article>header { + margin-top: calc(var(--block-spacing-vertical) * -1); + margin-bottom: var(--block-spacing-vertical); + border-bottom: var(--border-width) solid var(--card-border-color); + border-top-right-radius: var(--border-radius); + border-top-left-radius: var(--border-radius) +} + +article>footer { + margin-top: var(--block-spacing-vertical); + margin-bottom: calc(var(--block-spacing-vertical) * -1); + border-top: var(--border-width) solid var(--card-border-color); + border-bottom-right-radius: var(--border-radius); + border-bottom-left-radius: var(--border-radius) +} + +:root { + --scrollbar-width: 0px +} + +dialog { + display: flex; + z-index: 999; + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + align-items: center; + justify-content: center; + width: inherit; + min-width: 100%; + height: inherit; + min-height: 100%; + padding: var(--spacing); + border: 0; + -webkit-backdrop-filter: var(--modal-overlay-backdrop-filter); + backdrop-filter: var(--modal-overlay-backdrop-filter); + background-color: var(--modal-overlay-background-color); + color: var(--color) +} + +dialog article { + max-height: calc(100vh - var(--spacing) * 2); + overflow: auto +} + +@media (min-width:576px) { + dialog article { + max-width: 510px + } +} + +@media (min-width:768px) { + dialog article { + max-width: 700px + } +} + +dialog article>footer, +dialog article>header { + padding: calc(var(--block-spacing-vertical) * .5) var(--block-spacing-horizontal) +} + +dialog article>header .close { + margin: 0; + margin-left: var(--spacing); + float: right +} + +dialog article>footer { + text-align: right +} + +dialog article>footer [role=button] { + margin-bottom: 0 +} + +dialog article>footer [role=button]:not(:first-of-type) { + margin-left: calc(var(--spacing) * .5) +} + +dialog article p:last-of-type { + margin: 0 +} + +dialog article .close { + display: block; + width: 1rem; + height: 1rem; + margin-top: calc(var(--block-spacing-vertical) * -.5); + margin-bottom: var(--typography-spacing-vertical); + margin-left: auto; + background-image: var(--icon-close); + background-position: center; + background-size: auto 1rem; + background-repeat: no-repeat; + opacity: .5; + transition: opacity var(--transition) +} + +dialog article .close:is([aria-current], :hover, :active, :focus) { + opacity: 1 +} + +dialog:not([open]), +dialog[open=false] { + display: none +} + +.modal-is-open { + padding-right: var(--scrollbar-width, 0); + overflow: hidden; + pointer-events: none +} + +.modal-is-open dialog { + pointer-events: auto +} + +:where(.modal-is-opening, .modal-is-closing) dialog, +:where(.modal-is-opening, .modal-is-closing) dialog>article { + animation-duration: .2s; + animation-timing-function: ease-in-out; + animation-fill-mode: both +} + +:where(.modal-is-opening, .modal-is-closing) dialog { + animation-duration: .8s; + animation-name: modal-overlay +} + +:where(.modal-is-opening, .modal-is-closing) dialog>article { + animation-delay: .2s; + animation-name: modal +} + +.modal-is-closing dialog, +.modal-is-closing dialog>article { + animation-delay: 0s; + animation-direction: reverse +} + +@keyframes modal-overlay { + from { + -webkit-backdrop-filter: none; + backdrop-filter: none; + background-color: transparent + } +} + +@keyframes modal { + from { + transform: translateY(-100%); + opacity: 0 + } +} + +:where(nav li)::before { + float: left; + content: "" +} + +nav, +nav ul { + display: flex +} + +nav { + justify-content: space-between +} + +nav ol, +nav ul { + align-items: center; + margin-bottom: 0; + padding: 0; + list-style: none +} + +nav ol:first-of-type, +nav ul:first-of-type { + margin-left: calc(var(--nav-element-spacing-horizontal) * -1) +} + +nav ol:last-of-type, +nav ul:last-of-type { + margin-right: calc(var(--nav-element-spacing-horizontal) * -1) +} + +nav li { + display: inline-block; + margin: 0; + padding: var(--nav-element-spacing-vertical) var(--nav-element-spacing-horizontal) +} + +nav li>* { + --spacing: 0 +} + +nav :where(a, [role=link]) { + display: inline-block; + margin: calc(var(--nav-link-spacing-vertical) * -1) calc(var(--nav-link-spacing-horizontal) * -1); + padding: var(--nav-link-spacing-vertical) var(--nav-link-spacing-horizontal); + border-radius: var(--border-radius); + text-decoration: none +} + +nav :where(a, [role=link]):is([aria-current], :hover, :active, :focus) { + text-decoration: none +} + +nav[aria-label=breadcrumb] { + align-items: center; + justify-content: start +} + +nav[aria-label=breadcrumb] ul li:not(:first-child) { + -webkit-margin-start: var(--nav-link-spacing-horizontal); + margin-inline-start: var(--nav-link-spacing-horizontal) +} + +nav[aria-label=breadcrumb] ul li:not(:last-child) ::after { + position: absolute; + width: calc(var(--nav-link-spacing-horizontal) * 2); + -webkit-margin-start: calc(var(--nav-link-spacing-horizontal)/ 2); + margin-inline-start: calc(var(--nav-link-spacing-horizontal)/ 2); + content: "/"; + color: var(--muted-color); + text-align: center +} + +nav[aria-label=breadcrumb] a[aria-current] { + background-color: transparent; + color: inherit; + text-decoration: none; + pointer-events: none +} + +nav [role=button] { + margin-right: inherit; + margin-left: inherit; + padding: var(--nav-link-spacing-vertical) var(--nav-link-spacing-horizontal) +} + +aside li, +aside nav, +aside ol, +aside ul { + display: block +} + +aside li { + padding: calc(var(--nav-element-spacing-vertical) * .5) var(--nav-element-spacing-horizontal) +} + +aside li a { + display: block +} + +aside li [role=button] { + margin: inherit +} + +[dir=rtl] nav[aria-label=breadcrumb] ul li:not(:last-child) ::after { + content: "\\" +} + +progress { + display: inline-block; + vertical-align: baseline +} + +progress { + -webkit-appearance: none; + -moz-appearance: none; + display: inline-block; + appearance: none; + width: 100%; + height: .5rem; + margin-bottom: calc(var(--spacing) * .5); + overflow: hidden; + border: 0; + border-radius: var(--border-radius); + background-color: var(--progress-background-color); + color: var(--progress-color) +} + +progress::-webkit-progress-bar { + border-radius: var(--border-radius); + background: 0 0 +} + +progress[value]::-webkit-progress-value { + background-color: var(--progress-color) +} + +progress::-moz-progress-bar { + background-color: var(--progress-color) +} + +@media (prefers-reduced-motion:no-preference) { + progress:indeterminate { + background: var(--progress-background-color) linear-gradient(to right, var(--progress-color) 30%, var(--progress-background-color) 30%) top left/150% 150% no-repeat; + animation: progress-indeterminate 1s linear infinite + } + + progress:indeterminate[value]::-webkit-progress-value { + background-color: transparent + } + + progress:indeterminate::-moz-progress-bar { + background-color: transparent + } +} + +@media (prefers-reduced-motion:no-preference) { + [dir=rtl] progress:indeterminate { + animation-direction: reverse + } +} + +@keyframes progress-indeterminate { + 0% { + background-position: 200% 0 + } + + 100% { + background-position: -200% 0 + } +} + +details[role=list], +li[role=list] { + position: relative +} + +details[role=list] summary+ul, +li[role=list]>ul { + display: flex; + z-index: 99; + position: absolute; + top: auto; + right: 0; + left: 0; + flex-direction: column; + margin: 0; + padding: 0; + border: var(--border-width) solid var(--dropdown-border-color); + border-radius: var(--border-radius); + border-top-right-radius: 0; + border-top-left-radius: 0; + background-color: var(--dropdown-background-color); + box-shadow: var(--card-box-shadow); + color: var(--dropdown-color); + white-space: nowrap +} + +details[role=list] summary+ul li, +li[role=list]>ul li { + width: 100%; + margin-bottom: 0; + padding: calc(var(--form-element-spacing-vertical) * .5) var(--form-element-spacing-horizontal); + list-style: none +} + +details[role=list] summary+ul li:first-of-type, +li[role=list]>ul li:first-of-type { + margin-top: calc(var(--form-element-spacing-vertical) * .5) +} + +details[role=list] summary+ul li:last-of-type, +li[role=list]>ul li:last-of-type { + margin-bottom: calc(var(--form-element-spacing-vertical) * .5) +} + +details[role=list] summary+ul li a, +li[role=list]>ul li a { + display: block; + margin: calc(var(--form-element-spacing-vertical) * -.5) calc(var(--form-element-spacing-horizontal) * -1); + padding: calc(var(--form-element-spacing-vertical) * .5) var(--form-element-spacing-horizontal); + overflow: hidden; + color: var(--dropdown-color); + text-decoration: none; + text-overflow: ellipsis +} + +details[role=list] summary+ul li a:hover, +li[role=list]>ul li a:hover { + background-color: var(--dropdown-hover-background-color) +} + +details[role=list] summary::after, +li[role=list]>a::after { + display: block; + width: 1rem; + height: calc(1rem * var(--line-height, 1.5)); + -webkit-margin-start: 0.5rem; + margin-inline-start: .5rem; + float: right; + transform: rotate(0); + background-position: right center; + background-size: 1rem auto; + background-repeat: no-repeat; + content: "" +} + +details[role=list] { + padding: 0; + border-bottom: none +} + +details[role=list] summary { + margin-bottom: 0 +} + +details[role=list] summary:not([role]) { + height: calc(1rem * var(--line-height) + var(--form-element-spacing-vertical) * 2 + var(--border-width) * 2); + padding: var(--form-element-spacing-vertical) var(--form-element-spacing-horizontal); + border: var(--border-width) solid var(--form-element-border-color); + border-radius: var(--border-radius); + background-color: var(--form-element-background-color); + color: var(--form-element-placeholder-color); + line-height: inherit; + cursor: pointer; + transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition) +} + +details[role=list] summary:not([role]):active, +details[role=list] summary:not([role]):focus { + border-color: var(--form-element-active-border-color); + background-color: var(--form-element-active-background-color) +} + +details[role=list] summary:not([role]):focus { + box-shadow: 0 0 0 var(--outline-width) var(--form-element-focus-color) +} + +details[role=list][open] summary { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0 +} + +details[role=list][open] summary::before { + display: block; + z-index: 1; + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + background: 0 0; + content: ""; + cursor: default +} + +nav details[role=list] summary, +nav li[role=list] a { + display: flex; + direction: ltr +} + +nav details[role=list] summary+ul, +nav li[role=list]>ul { + min-width: -moz-fit-content; + min-width: fit-content; + border-radius: var(--border-radius) +} + +nav details[role=list] summary+ul li a, +nav li[role=list]>ul li a { + border-radius: 0 +} + +nav details[role=list] summary, +nav details[role=list] summary:not([role]) { + height: auto; + padding: var(--nav-link-spacing-vertical) var(--nav-link-spacing-horizontal) +} + +nav details[role=list][open] summary { + border-radius: var(--border-radius) +} + +nav details[role=list] summary+ul { + margin-top: var(--outline-width); + -webkit-margin-start: 0; + margin-inline-start: 0 +} + +nav details[role=list] summary[role=link] { + margin-bottom: calc(var(--nav-link-spacing-vertical) * -1); + line-height: var(--line-height) +} + +nav details[role=list] summary[role=link]+ul { + margin-top: calc(var(--nav-link-spacing-vertical) + var(--outline-width)); + -webkit-margin-start: calc(var(--nav-link-spacing-horizontal) * -1); + margin-inline-start: calc(var(--nav-link-spacing-horizontal) * -1) +} + +li[role=list] a:active~ul, +li[role=list] a:focus~ul, +li[role=list]:hover>ul { + display: flex +} + +li[role=list]>ul { + display: none; + margin-top: calc(var(--nav-link-spacing-vertical) + var(--outline-width)); + -webkit-margin-start: calc(var(--nav-element-spacing-horizontal) - var(--nav-link-spacing-horizontal)); + margin-inline-start: calc(var(--nav-element-spacing-horizontal) - var(--nav-link-spacing-horizontal)) +} + +li[role=list]>a::after { + background-image: var(--icon-chevron) +} + +[aria-busy=true] { + cursor: progress +} + +[aria-busy=true]:not(input, select, textarea)::before { + display: inline-block; + width: 1em; + height: 1em; + border: .1875em solid currentColor; + border-radius: 1em; + border-right-color: transparent; + content: ""; + vertical-align: text-bottom; + vertical-align: -.125em; + animation: spinner .75s linear infinite; + opacity: var(--loading-spinner-opacity) +} + +[aria-busy=true]:not(input, select, textarea):not(:empty)::before { + margin-right: calc(var(--spacing) * .5); + margin-left: 0; + -webkit-margin-start: 0; + margin-inline-start: 0; + -webkit-margin-end: calc(var(--spacing) * .5); + margin-inline-end: calc(var(--spacing) * .5) +} + +[aria-busy=true]:not(input, select, textarea):empty { + text-align: center +} + +a[aria-busy=true], +button[aria-busy=true], +input[type=button][aria-busy=true], +input[type=reset][aria-busy=true], +input[type=submit][aria-busy=true] { + pointer-events: none +} + +@keyframes spinner { + to { + transform: rotate(360deg) + } +} + +[data-tooltip] { + position: relative +} + +[data-tooltip]:not(a, button, input) { + border-bottom: 1px dotted; + text-decoration: none; + cursor: help +} + +[data-tooltip]::after, +[data-tooltip]::before, +[data-tooltip][data-placement=top]::after, +[data-tooltip][data-placement=top]::before { + display: block; + z-index: 99; + position: absolute; + bottom: 100%; + left: 50%; + padding: .25rem .5rem; + overflow: hidden; + transform: translate(-50%, -.25rem); + border-radius: var(--border-radius); + background: var(--tooltip-background-color); + content: attr(data-tooltip); + color: var(--tooltip-color); + font-style: normal; + font-weight: var(--font-weight); + font-size: .875rem; + text-decoration: none; + text-overflow: ellipsis; + white-space: nowrap; + opacity: 0; + pointer-events: none +} + +[data-tooltip]::after, +[data-tooltip][data-placement=top]::after { + padding: 0; + transform: translate(-50%, 0); + border-top: .3rem solid; + border-right: .3rem solid transparent; + border-left: .3rem solid transparent; + border-radius: 0; + background-color: transparent; + content: ""; + color: var(--tooltip-background-color) +} + +[data-tooltip][data-placement=bottom]::after, +[data-tooltip][data-placement=bottom]::before { + top: 100%; + bottom: auto; + transform: translate(-50%, .25rem) +} + +[data-tooltip][data-placement=bottom]:after { + transform: translate(-50%, -.3rem); + border: .3rem solid transparent; + border-bottom: .3rem solid +} + +[data-tooltip][data-placement=left]::after, +[data-tooltip][data-placement=left]::before { + top: 50%; + right: 100%; + bottom: auto; + left: auto; + transform: translate(-.25rem, -50%) +} + +[data-tooltip][data-placement=left]:after { + transform: translate(.3rem, -50%); + border: .3rem solid transparent; + border-left: .3rem solid +} + +[data-tooltip][data-placement=right]::after, +[data-tooltip][data-placement=right]::before { + top: 50%; + right: auto; + bottom: auto; + left: 100%; + transform: translate(.25rem, -50%) +} + +[data-tooltip][data-placement=right]:after { + transform: translate(-.3rem, -50%); + border: .3rem solid transparent; + border-right: .3rem solid +} + +[data-tooltip]:focus::after, +[data-tooltip]:focus::before, +[data-tooltip]:hover::after, +[data-tooltip]:hover::before { + opacity: 1 +} + +@media (hover:hover) and (pointer:fine) { + + [data-tooltip]:hover::after, + [data-tooltip]:hover::before, + [data-tooltip][data-placement=bottom]:focus::after, + [data-tooltip][data-placement=bottom]:focus::before, + [data-tooltip][data-placement=bottom]:hover [data-tooltip]:focus::after, + [data-tooltip][data-placement=bottom]:hover [data-tooltip]:focus::before { + animation-duration: .2s; + animation-name: tooltip-slide-top + } + + [data-tooltip]:hover::after, + [data-tooltip][data-placement=bottom]:focus::after, + [data-tooltip][data-placement=bottom]:hover [data-tooltip]:focus::after { + animation-name: tooltip-caret-slide-top + } + + [data-tooltip][data-placement=bottom]:focus::after, + [data-tooltip][data-placement=bottom]:focus::before, + [data-tooltip][data-placement=bottom]:hover::after, + [data-tooltip][data-placement=bottom]:hover::before { + animation-duration: .2s; + animation-name: tooltip-slide-bottom + } + + [data-tooltip][data-placement=bottom]:focus::after, + [data-tooltip][data-placement=bottom]:hover::after { + animation-name: tooltip-caret-slide-bottom + } + + [data-tooltip][data-placement=left]:focus::after, + [data-tooltip][data-placement=left]:focus::before, + [data-tooltip][data-placement=left]:hover::after, + [data-tooltip][data-placement=left]:hover::before { + animation-duration: .2s; + animation-name: tooltip-slide-left + } + + [data-tooltip][data-placement=left]:focus::after, + [data-tooltip][data-placement=left]:hover::after { + animation-name: tooltip-caret-slide-left + } + + [data-tooltip][data-placement=right]:focus::after, + [data-tooltip][data-placement=right]:focus::before, + [data-tooltip][data-placement=right]:hover::after, + [data-tooltip][data-placement=right]:hover::before { + animation-duration: .2s; + animation-name: tooltip-slide-right + } + + [data-tooltip][data-placement=right]:focus::after, + [data-tooltip][data-placement=right]:hover::after { + animation-name: tooltip-caret-slide-right + } +} + +@keyframes tooltip-slide-top { + from { + transform: translate(-50%, .75rem); + opacity: 0 + } + + to { + transform: translate(-50%, -.25rem); + opacity: 1 + } +} + +@keyframes tooltip-caret-slide-top { + from { + opacity: 0 + } + + 50% { + transform: translate(-50%, -.25rem); + opacity: 0 + } + + to { + transform: translate(-50%, 0); + opacity: 1 + } +} + +@keyframes tooltip-slide-bottom { + from { + transform: translate(-50%, -.75rem); + opacity: 0 + } + + to { + transform: translate(-50%, .25rem); + opacity: 1 + } +} + +@keyframes tooltip-caret-slide-bottom { + from { + opacity: 0 + } + + 50% { + transform: translate(-50%, -.5rem); + opacity: 0 + } + + to { + transform: translate(-50%, -.3rem); + opacity: 1 + } +} + +@keyframes tooltip-slide-left { + from { + transform: translate(.75rem, -50%); + opacity: 0 + } + + to { + transform: translate(-.25rem, -50%); + opacity: 1 + } +} + +@keyframes tooltip-caret-slide-left { + from { + opacity: 0 + } + + 50% { + transform: translate(.05rem, -50%); + opacity: 0 + } + + to { + transform: translate(.3rem, -50%); + opacity: 1 + } +} + +@keyframes tooltip-slide-right { + from { + transform: translate(-.75rem, -50%); + opacity: 0 + } + + to { + transform: translate(.25rem, -50%); + opacity: 1 + } +} + +@keyframes tooltip-caret-slide-right { + from { + opacity: 0 + } + + 50% { + transform: translate(-.05rem, -50%); + opacity: 0 + } + + to { + transform: translate(-.3rem, -50%); + opacity: 1 + } +} + +[aria-controls] { + cursor: pointer +} + +[aria-disabled=true], +[disabled] { + cursor: not-allowed +} + +[aria-hidden=false][hidden] { + display: initial +} + +[aria-hidden=false][hidden]:not(:focus) { + clip: rect(0, 0, 0, 0); + position: absolute +} + +[tabindex], +a, +area, +button, +input, +label, +select, +summary, +textarea { + -ms-touch-action: manipulation +} + +[dir=rtl] { + direction: rtl +} + +@media (prefers-reduced-motion:reduce) { + + :not([aria-busy=true]), + :not([aria-busy=true])::after, + :not([aria-busy=true])::before { + background-attachment: initial !important; + animation-duration: 1ms !important; + animation-delay: -1ms !important; + animation-iteration-count: 1 !important; + scroll-behavior: auto !important; + transition-delay: 0s !important; + transition-duration: 0s !important + } +} + +/*# sourceMappingURL=pico.min.css.map */ \ No newline at end of file diff --git a/css/style.css b/css/style.css new file mode 100644 index 0000000..ce7ccda --- /dev/null +++ b/css/style.css @@ -0,0 +1,135 @@ +@font- face { + font-family: "myf"; + src: url("./blockly/ini/test.ttf") format("truetype"); +} +*{ + font-family:"myf"; +} +button { + padding: 1.3em 3em; + font-size: 12px; + text-transform: uppercase; + letter-spacing: 2.5px; + font-weight: 500; + color: #000; + background-color: #fff; + border: none; + border-radius: 45px; + box-shadow: 0px 8px 15px rgba(0, 0, 0, 0.1); + transition: all 0.3s ease 0s; + cursor: pointer; + outline: none; + width:100%; + height:5%; + font-size:14px; +} + +button:hover { + background-color: #23c483; + box-shadow: 0px 15px 20px rgba(46, 229, 157, 0.4); + color: #fff; + transform: translateY(-7px); +} + +button:active { + transform: translateY(-1px); +} +.bushu:hover .newimg{ + display:block; +} +.newimg{ + display:none; + weight:15px; + height:300px; +} + + + +*{ + margin: 0; + padding: 0; +} +html,body{ + height: 100%; + width: 100%; +} + /*最底下的灰色div*/ +.alertBelowDiv{ + width: 100%; + height: 100%; + position: fixed; + left: 0; + top: 0; + z-index: 1; + background-color: rgba(100, 100, 100, 0.8); + + /*将内容居中*/ + align-items: center; + display: -webkit-flex; + justify-content: center; +} +/*白色确定框*/ +.alertContentDiv{ + width: 25%; + height: 45%; + background-color: white; + border-radius: 5%; +} +/*展示文字部分*/ +.alertTextDiv{ + + width: 100%; + height: 10%; + margin: 15% auto; + text-align: center; + font-size: x-large; + font-weight: 600; + +} +/*取消按钮*/ +.alertCancelDiv{ + float: left; + width: 18%; + height: 15%; + background-color: lightslategrey; + border-radius: 15%; + font-weight: 600; + color: #fff; + align-items: center; + display: -webkit-flex; + justify-content: center; + margin-left: 15%; + +} + +/*确定按钮*/ +.alertSubmitDiv{ + float: right; + width: 18%; + height: 15%; + background-color: lightslategrey; + border-radius: 15%; + font-weight: 600; + color: #fff; + align-items: center; + display: -webkit-flex; + justify-content: center; + margin-right: 15%; +} + + +.blocklyMainBackground { + stroke-width: 1; + stroke: #fff; +} + +.blocklyToolboxDiv { + display: block; + left: 0px; + background-color: #fff; + height: 100%; +} + +.blocklyFlyoutBackground { + fill: #fff; +} \ No newline at end of file diff --git a/ide.html b/ide.html index 3b457ea..a4b8c42 100644 --- a/ide.html +++ b/ide.html @@ -1,1601 +1,654 @@ -
- -