From patchwork Wed Jan 28 14:02:04 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Alba Herrerias X-Patchwork-Id: 79926 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4D730E63C8C for ; Wed, 28 Jan 2026 14:02:53 +0000 (UTC) Received: from mail-wm1-f41.google.com (mail-wm1-f41.google.com [209.85.128.41]) by mx.groups.io with SMTP id smtpd.msgproc02-g2.13895.1769608971156519721 for ; Wed, 28 Jan 2026 06:02:52 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@thehoodiefirm-com.20230601.gappssmtp.com header.s=20230601 header.b=LuncD8oC; spf=neutral (domain: thehoodiefirm.com, ip: 209.85.128.41, mailfrom: alba@thehoodiefirm.com) Received: by mail-wm1-f41.google.com with SMTP id 5b1f17b1804b1-4806ce0f97bso8199685e9.0 for ; Wed, 28 Jan 2026 06:02:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=thehoodiefirm-com.20230601.gappssmtp.com; s=20230601; t=1769608969; x=1770213769; darn=lists.yoctoproject.org; h=content-transfer-encoding:mime-version:reply-to:references :in-reply-to:message-id:date:subject:cc:to:from:sender:from:to:cc :subject:date:message-id:reply-to; bh=ZHOIglpygeJV22wLQbhjN2W/GIZmY+FjGGAqgppI6/w=; b=LuncD8oCqgQlg85/pJAcY5rEdykm4E5adFewCI9sIRKCyth0SDlFampzmQss1T/+93 iYXVkWurPYKQULptQwLIk7vhvMIq45FNFxFsiPyhWUhT1ShMCI9gdOmSTsdWpXZDAeXA Wb/Y/Hi70YZrvtHGuP/cqGO1wcUX9bj7XADY4Aadv3jDNCdyCaN4Lu7RupRoLFJHTOQy n9hNgNhpOE/pdkhQkQpWv6TzEL7bGCs3mXcHuIXwd/5HF++RKLwAo9uB6VIe3zQwCTEk SyuSHjX10t/3TF+eJ1lQ8pYMAMKP4E02/z6Z0J1fuuSzGTqmwELDBnkbcVIMgtBD+r2B qyLQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1769608969; x=1770213769; h=content-transfer-encoding:mime-version:reply-to:references :in-reply-to:message-id:date:subject:cc:to:from:sender:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=ZHOIglpygeJV22wLQbhjN2W/GIZmY+FjGGAqgppI6/w=; b=guwdqsv+Jf2644LE8ZynbDkH0MfJWqabZu8wCtElboWvfcqNZ1eo3lqbpsRqAIXPHG r6RIz+TA1QSyQI70mhS2xbnuhm1yhA+v5UwrTBb1rZb4xMP5AA774uc1pJt/o68g/NuJ L0PbF87v+oXGH03e5KNwiPrWxrNtRzA0AOF6Qb/jGpgcaXiAIfyLjI41fFexRdqwSA22 EVfhCs5dM2IJUydcvBJ+WdOL8FGxlIkVDwnIKbjOULIBlFUteOYjam9bxGy+4DlrtkXQ rVOtn3z+7BwLY0yjWcD5Jnd2UgJk1Cp42n5ryoQ8Buxgl6Djg8kMQa5mth6oIco/C0oe lzTA== X-Gm-Message-State: AOJu0YxC9hdXuw2qNCRgd3vVWLuD+UPuT6gHOFFD9PanlaI2QS7mgg0r A7gWE0x6L/Yw3stNkLjwkFp8x0nF0UneQan1oNLbR7kQXfxvHxXWoRKhMCrtgFhqun826+0l7Zm 2iy1etEc= X-Gm-Gg: AZuq6aKpIE93AdT6FxFUITsPrwrsGh469h41RT1E66GkozxJCQHOhKk1W8zHkADYvBB vau1oEmp2fDmq9zSIjRRIfLs78awBlfGkw+ntdJkXkVHiCuiy4JfZ3yHag8VUFIHZHAb4iAfW7J CFf0gMSqzIOnPWeuvEwHY/rc3z+qknKei4l6AqaVn6Kc959IaxjM1lF+uWdURFVegHStN+DOHp8 QYJFwgP/DUNSdnWLmf/ZvDbQwpm87OBBp5/wUFu4jhnWsNc5aNpJfrqspPbte3tpg3sJD9A41M/ ACDgrOGPWLVjF8WL9E2E+KU0tqXH4EefrYsBjif26HVuj59Aj2TjsKrJHh8GWYdixzlVtM/yVsO GzA93ZwKnaJz+kfCkN58/9mtwwmolYzPIeb1xOfjb0bf0kAUH7meyCkr1wOh3lGdbPi50iob20+ abIRdabs41rFj9TpJTK8ktylYjPdBdoEhiw2JgokAFzbI0eJOL++saG5TTgtFxlIHMs7d79vpfw wEJZXC8I2wEAog= X-Received: by 2002:a05:600c:458a:b0:47b:e2a9:2bd7 with SMTP id 5b1f17b1804b1-48069c6970fmr62343545e9.19.1769608967575; Wed, 28 Jan 2026 06:02:47 -0800 (PST) Received: from localhost.localdomain (253.red-83-57-139.dynamicip.rima-tde.net. [83.57.139.253]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4806cdd78d3sm68522105e9.1.2026.01.28.06.02.46 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Wed, 28 Jan 2026 06:02:46 -0800 (PST) Sender: =?utf-8?q?Alba_Herrer=C3=ADas_Ram=C3=ADrez?= From: Alba Herrerias X-Google-Original-From: Alba Herrerias To: yocto-patches@lists.yoctoproject.org Cc: engineering@neighbourhood.ie, Alex Feyerke Subject: [yocto-autobuilder-helper][PATCH 1/4] dashboard: update to unify styles with CVE/Patch Metrics pages Date: Wed, 28 Jan 2026 14:02:04 +0000 Message-Id: <20260128140207.61443-2-albaherreriasdev@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20260128140207.61443-1-albaherreriasdev@gmail.com> References: <20260128140207.61443-1-albaherreriasdev@gmail.com> Reply-To: engineering@neighbourhood.ie MIME-Version: 1.0 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Wed, 28 Jan 2026 14:02:53 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/yocto-patches/message/3132 From: Alex Feyerke Signed-off-by: Alex Feyerke --- scripts/dashboard/index.html | 77 ++++++++++-------- .../dashboard/resources/apple-touch-icon.png | Bin 0 -> 7683 bytes scripts/dashboard/resources/favicon-16x16.png | Bin 0 -> 792 bytes scripts/dashboard/resources/favicon-32x32.png | Bin 0 -> 1246 bytes .../resources/pico.fluid.classless.min.css | 4 + scripts/dashboard/resources/shared-styles.css | 75 +++++++++++++++++ 6 files changed, 123 insertions(+), 33 deletions(-) create mode 100644 scripts/dashboard/resources/apple-touch-icon.png create mode 100644 scripts/dashboard/resources/favicon-16x16.png create mode 100644 scripts/dashboard/resources/favicon-32x32.png create mode 100644 scripts/dashboard/resources/pico.fluid.classless.min.css create mode 100644 scripts/dashboard/resources/shared-styles.css diff --git a/scripts/dashboard/index.html b/scripts/dashboard/index.html index 5cff80a..86b4cb8 100644 --- a/scripts/dashboard/index.html +++ b/scripts/dashboard/index.html @@ -1,39 +1,50 @@ + -Yocto Project Dashboard - + Yocto Project Dashboard + + + + + + + -

Yocto Project Dashboard

-

Current project status is included in the Weekly Status Report

-

Links to our commonly used tools and the data they generate:

- -

Other useful links:

-

- +
+

Yocto Project Dashboard

+
+

Current project status is included in the Weekly Status Report

+ +

Links to our commonly used tools and the data they generate:

+ +

Other useful links:

+

+ +
+
- + + \ No newline at end of file diff --git a/scripts/dashboard/resources/apple-touch-icon.png b/scripts/dashboard/resources/apple-touch-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..d11f8bd0f9c0d6a765c815986199c36504bdaf20 GIT binary patch literal 7683 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 literal 0 HcmV?d00001 diff --git a/scripts/dashboard/resources/favicon-16x16.png b/scripts/dashboard/resources/favicon-16x16.png new file mode 100644 index 0000000000000000000000000000000000000000..ba9765fb51ae810cab294ca1d695f691c7e18c1a GIT binary patch literal 792 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJOS+@4BLl<6e(pbstU$g(vPY0F z14ES>14Ba#1H&(%P{RubhEf9thF1v;3|2E37{m+a>6{%E-tl zEiJXSwr*{0_4D&HG&HQOt-X5ns=mH{c6Rp7n>WM5!yOzPjvP5MW5x_CE32J5cP?47 z#KgqJz`&rmxVX2s_xkng5fKrF2Ktu1Nsj3gO)PATjg7v3{km}BLL(zXE5BsN%&8_8 zw)OS(PoF-GjEpokHrcv$>+#mvmi z)z$U?|Nk#zBd-E|EnX7j7t9iQ>Gz*o8SGK7KIUJ1`s>D38-y(DrC!Rhvyc0mIOy>PznArRB%pCn`+Tshg-pk2tmyKTd>t8{M zeqlqURs6au%umYdZ8&#}S{#}F?O%4wlE)8UihNk~e`g6Bi{|T>G5bC+W~`H8Irr(a z7tq0~C9V-ADTyViR>?)FK#IZ0z{o_`z*N`3BE-PL%Fx)#z(U)=z{ONMCJ(l=?0GlUV03# X#05(}IhjrcTEXDy>gTe~DWM4fR(cu) literal 0 HcmV?d00001 diff --git a/scripts/dashboard/resources/favicon-32x32.png b/scripts/dashboard/resources/favicon-32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..244edb606d7cfdd1c8bca17416d1911ff06d80f8 GIT binary patch literal 1246 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabR7dyEa{HEjtmSN`?>!lvVtU&J%W50 z7^>757#dm_7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD+081LOVxpAc7|0^sEVv`)}XA)z;R2 z{`~pfyLY9frKeAy_VV&FGBPwaGIDly-nVbx{{8!%oSf3r)6HChY$Hm|U4lzWO5VSJ z|MBC;_3PLF`}fbp%F(rao!_jtZdIF2teqVk9G*RU*3#1ARVS}*|&}#-378c8vExUN}qQAd?e0==9d-s0+{MpynXKHG? zcJ11~fByyq1ax+Ge)#a=)2B~OO-<(J=2NFm{q^hD>eZ_q9Ua}=+@?>Te);m{A3uJ$ zxVYT9b!)6?a{<#sua{puU z;RjZwzgNDy^nLI3z}ObnN4%?k>|^^-Sbhhni!sUD-Nj~kR^oXehrPtp*OmPRD+dQJ z=g)7#UPZ!4!i_^7}p9VWQiX45fwWy_Y?u}i$HIg1XA3UV@=9u4`cX=ECC5W@8 z#?AFlfA;6woxQ)GF)D}%tl$Vr+SlY9lEuq3E!+9i3R+jgI*TFMQyTKTuMVbH~i^rDlP}@@461vNZ|oDvRpYlr~1T7Z+w$w(=)z zdiCfAZ(UeK^!*!8`V;cE9Q_$~%;l+<9BHm0}p1!I1-{irR z^8M4RU&k7jHbj4(`}*I*iCzp}UjBS~HESdHC;J1jIkna0+@JRgw)Oj8p6=17cw;-W zYJ|^(p46#KT1#~%aJ@3wY2(SS5vx8|Jtc*ytLNOLQ_V)3Z1-D9TUE%t=)!sVqoU$Sf#HW?-n8^Y{}F zM`4(T#wq{PXFQ(m_pwD+_y17GV}vaA`0(oWiWUIYi;~jVmXPoH-(Mg#C1b d#{w@shF9W(C7+y3rvj~D@O1TaS?83{1ORK00eJub literal 0 HcmV?d00001 diff --git a/scripts/dashboard/resources/pico.fluid.classless.min.css b/scripts/dashboard/resources/pico.fluid.classless.min.css new file mode 100644 index 0000000..de403a2 --- /dev/null +++ b/scripts/dashboard/resources/pico.fluid.classless.min.css @@ -0,0 +1,4 @@ +@charset "UTF-8";/*! + * Pico CSS ✨ v2.1.1 (https://picocss.com) + * Copyright 2019-2025 - Licensed under MIT + */:host,:root{--pico-font-family-emoji:"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--pico-font-family-sans-serif:system-ui,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,Helvetica,Arial,"Helvetica Neue",sans-serif,var(--pico-font-family-emoji);--pico-font-family-monospace:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace,var(--pico-font-family-emoji);--pico-font-family:var(--pico-font-family-sans-serif);--pico-line-height:1.5;--pico-font-weight:400;--pico-font-size:100%;--pico-text-underline-offset:0.1rem;--pico-border-radius:0.25rem;--pico-border-width:0.0625rem;--pico-outline-width:0.125rem;--pico-transition:0.2s ease-in-out;--pico-spacing:1rem;--pico-typography-spacing-vertical:1rem;--pico-block-spacing-vertical:var(--pico-spacing);--pico-block-spacing-horizontal:var(--pico-spacing);--pico-form-element-spacing-vertical:0.75rem;--pico-form-element-spacing-horizontal:1rem;--pico-group-box-shadow:0 0 0 rgba(0, 0, 0, 0);--pico-group-box-shadow-focus-with-button:0 0 0 var(--pico-outline-width) var(--pico-primary-focus);--pico-group-box-shadow-focus-with-input:0 0 0 0.0625rem var(--pico-form-element-border-color);--pico-modal-overlay-backdrop-filter:blur(0.375rem);--pico-nav-element-spacing-vertical:1rem;--pico-nav-element-spacing-horizontal:0.5rem;--pico-nav-link-spacing-vertical:0.5rem;--pico-nav-link-spacing-horizontal:0.5rem;--pico-nav-breadcrumb-divider:">";--pico-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");--pico-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");--pico-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(136, 145, 164)' 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");--pico-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(136, 145, 164)' 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");--pico-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(136, 145, 164)' 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");--pico-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(136, 145, 164)' stroke-width='1.5' 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");--pico-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(136, 145, 164)' stroke-width='3' 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");--pico-icon-loading:url("data:image/svg+xml,%3Csvg fill='none' height='24' width='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E g %7B animation: rotate 2s linear infinite; transform-origin: center center; %7D circle %7B stroke-dasharray: 75,100; stroke-dashoffset: -5; animation: dash 1.5s ease-in-out infinite; stroke-linecap: round; %7D @keyframes rotate %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D @keyframes dash %7B 0%25 %7B stroke-dasharray: 1,100; stroke-dashoffset: 0; %7D 50%25 %7B stroke-dasharray: 44.5,100; stroke-dashoffset: -17.5; %7D 100%25 %7B stroke-dasharray: 44.5,100; stroke-dashoffset: -62; %7D %7D %3C/style%3E%3Cg%3E%3Ccircle cx='12' cy='12' r='10' fill='none' stroke='rgb(136, 145, 164)' stroke-width='4' /%3E%3C/g%3E%3C/svg%3E")}@media (min-width:576px){:host,:root{--pico-font-size:106.25%}}@media (min-width:768px){:host,:root{--pico-font-size:112.5%}}@media (min-width:1024px){:host,:root{--pico-font-size:118.75%}}@media (min-width:1280px){:host,:root{--pico-font-size:125%}}@media (min-width:1536px){:host,:root{--pico-font-size:131.25%}}a{--pico-text-decoration:underline}small{--pico-font-size:0.875em}h1,h2,h3,h4,h5,h6{--pico-font-weight:700}h1{--pico-font-size:2rem;--pico-line-height:1.125;--pico-typography-spacing-top:3rem}h2{--pico-font-size:1.75rem;--pico-line-height:1.15;--pico-typography-spacing-top:2.625rem}h3{--pico-font-size:1.5rem;--pico-line-height:1.175;--pico-typography-spacing-top:2.25rem}h4{--pico-font-size:1.25rem;--pico-line-height:1.2;--pico-typography-spacing-top:1.874rem}h5{--pico-font-size:1.125rem;--pico-line-height:1.225;--pico-typography-spacing-top:1.6875rem}h6{--pico-font-size:1rem;--pico-line-height:1.25;--pico-typography-spacing-top:1.5rem}tfoot td,tfoot th,thead td,thead th{--pico-font-weight:600;--pico-border-width:0.1875rem}code,kbd,pre,samp{--pico-font-family:var(--pico-font-family-monospace)}kbd{--pico-font-weight:bolder}:where(select,textarea),input:not([type=submit],[type=button],[type=reset],[type=checkbox],[type=radio],[type=file]){--pico-outline-width:0.0625rem}[type=search]{--pico-border-radius:5rem}[type=checkbox],[type=radio]{--pico-border-width:0.125rem}[type=checkbox][role=switch]{--pico-border-width:0.1875rem}[role=search]{--pico-border-radius:5rem}[role=group] [role=button],[role=group] [type=button],[role=group] [type=submit],[role=group] button,[role=search] [role=button],[role=search] [type=button],[role=search] [type=submit],[role=search] button{--pico-form-element-spacing-horizontal:2rem}details summary[role=button]::after{filter:brightness(0) invert(1)}[aria-busy=true]:not(input,select,textarea):is(button,[type=submit],[type=button],[type=reset],[role=button])::before{filter:brightness(0) invert(1)}:host(:not([data-theme=dark])),:root:not([data-theme=dark]),[data-theme=light]{color-scheme:light;--pico-background-color:#fff;--pico-color:#373c44;--pico-text-selection-color:rgba(2, 154, 232, 0.25);--pico-muted-color:#646b79;--pico-muted-border-color:rgb(231, 234, 239.5);--pico-primary:#0172ad;--pico-primary-background:#0172ad;--pico-primary-border:var(--pico-primary-background);--pico-primary-underline:rgba(1, 114, 173, 0.5);--pico-primary-hover:#015887;--pico-primary-hover-background:#02659a;--pico-primary-hover-border:var(--pico-primary-hover-background);--pico-primary-hover-underline:var(--pico-primary-hover);--pico-primary-focus:rgba(2, 154, 232, 0.5);--pico-primary-inverse:#fff;--pico-secondary:#5d6b89;--pico-secondary-background:#525f7a;--pico-secondary-border:var(--pico-secondary-background);--pico-secondary-underline:rgba(93, 107, 137, 0.5);--pico-secondary-hover:#48536b;--pico-secondary-hover-background:#48536b;--pico-secondary-hover-border:var(--pico-secondary-hover-background);--pico-secondary-hover-underline:var(--pico-secondary-hover);--pico-secondary-focus:rgba(93, 107, 137, 0.25);--pico-secondary-inverse:#fff;--pico-contrast:#181c25;--pico-contrast-background:#181c25;--pico-contrast-border:var(--pico-contrast-background);--pico-contrast-underline:rgba(24, 28, 37, 0.5);--pico-contrast-hover:#000;--pico-contrast-hover-background:#000;--pico-contrast-hover-border:var(--pico-contrast-hover-background);--pico-contrast-hover-underline:var(--pico-secondary-hover);--pico-contrast-focus:rgba(93, 107, 137, 0.25);--pico-contrast-inverse:#fff;--pico-box-shadow:0.0145rem 0.029rem 0.174rem rgba(129, 145, 181, 0.01698),0.0335rem 0.067rem 0.402rem rgba(129, 145, 181, 0.024),0.0625rem 0.125rem 0.75rem rgba(129, 145, 181, 0.03),0.1125rem 0.225rem 1.35rem rgba(129, 145, 181, 0.036),0.2085rem 0.417rem 2.502rem rgba(129, 145, 181, 0.04302),0.5rem 1rem 6rem rgba(129, 145, 181, 0.06),0 0 0 0.0625rem rgba(129, 145, 181, 0.015);--pico-h1-color:#2d3138;--pico-h2-color:#373c44;--pico-h3-color:#424751;--pico-h4-color:#4d535e;--pico-h5-color:#5c6370;--pico-h6-color:#646b79;--pico-mark-background-color:rgb(252.5, 230.5, 191.5);--pico-mark-color:#0f1114;--pico-ins-color:rgb(28.5, 105.5, 84);--pico-del-color:rgb(136, 56.5, 53);--pico-blockquote-border-color:var(--pico-muted-border-color);--pico-blockquote-footer-color:var(--pico-muted-color);--pico-button-box-shadow:0 0 0 rgba(0, 0, 0, 0);--pico-button-hover-box-shadow:0 0 0 rgba(0, 0, 0, 0);--pico-table-border-color:var(--pico-muted-border-color);--pico-table-row-stripped-background-color:rgba(111, 120, 135, 0.0375);--pico-code-background-color:rgb(243, 244.5, 246.75);--pico-code-color:#646b79;--pico-code-kbd-background-color:var(--pico-color);--pico-code-kbd-color:var(--pico-background-color);--pico-form-element-background-color:rgb(251, 251.5, 252.25);--pico-form-element-selected-background-color:#dfe3eb;--pico-form-element-border-color:#cfd5e2;--pico-form-element-color:#23262c;--pico-form-element-placeholder-color:var(--pico-muted-color);--pico-form-element-active-background-color:#fff;--pico-form-element-active-border-color:var(--pico-primary-border);--pico-form-element-focus-color:var(--pico-primary-border);--pico-form-element-disabled-opacity:0.5;--pico-form-element-invalid-border-color:rgb(183.5, 105.5, 106.5);--pico-form-element-invalid-active-border-color:rgb(200.25, 79.25, 72.25);--pico-form-element-invalid-focus-color:var(--pico-form-element-invalid-active-border-color);--pico-form-element-valid-border-color:rgb(76, 154.5, 137.5);--pico-form-element-valid-active-border-color:rgb(39, 152.75, 118.75);--pico-form-element-valid-focus-color:var(--pico-form-element-valid-active-border-color);--pico-switch-background-color:#bfc7d9;--pico-switch-checked-background-color:var(--pico-primary-background);--pico-switch-color:#fff;--pico-switch-thumb-box-shadow:0 0 0 rgba(0, 0, 0, 0);--pico-range-border-color:#dfe3eb;--pico-range-active-border-color:#bfc7d9;--pico-range-thumb-border-color:var(--pico-background-color);--pico-range-thumb-color:var(--pico-secondary-background);--pico-range-thumb-active-color:var(--pico-primary-background);--pico-accordion-border-color:var(--pico-muted-border-color);--pico-accordion-active-summary-color:var(--pico-primary-hover);--pico-accordion-close-summary-color:var(--pico-color);--pico-accordion-open-summary-color:var(--pico-muted-color);--pico-card-background-color:var(--pico-background-color);--pico-card-border-color:var(--pico-muted-border-color);--pico-card-box-shadow:var(--pico-box-shadow);--pico-card-sectioning-background-color:rgb(251, 251.5, 252.25);--pico-loading-spinner-opacity:0.5;--pico-modal-overlay-background-color:rgba(232, 234, 237, 0.75);--pico-progress-background-color:#dfe3eb;--pico-progress-color:var(--pico-primary-background);--pico-tooltip-background-color:var(--pico-contrast-background);--pico-tooltip-color:var(--pico-contrast-inverse);--pico-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(76, 154.5, 137.5)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");--pico-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(200.25, 79.25, 72.25)' 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")}:host(:not([data-theme=dark])) input:is([type=submit],[type=button],[type=reset],[type=checkbox],[type=radio],[type=file]),:root:not([data-theme=dark]) input:is([type=submit],[type=button],[type=reset],[type=checkbox],[type=radio],[type=file]),[data-theme=light] input:is([type=submit],[type=button],[type=reset],[type=checkbox],[type=radio],[type=file]){--pico-form-element-focus-color:var(--pico-primary-focus)}@media only screen and (prefers-color-scheme:dark){:host(:not([data-theme])),:root:not([data-theme]){color-scheme:dark;--pico-background-color:rgb(19, 22.5, 30.5);--pico-color:#c2c7d0;--pico-text-selection-color:rgba(1, 170, 255, 0.1875);--pico-muted-color:#7b8495;--pico-muted-border-color:#202632;--pico-primary:#01aaff;--pico-primary-background:#0172ad;--pico-primary-border:var(--pico-primary-background);--pico-primary-underline:rgba(1, 170, 255, 0.5);--pico-primary-hover:#79c0ff;--pico-primary-hover-background:#017fc0;--pico-primary-hover-border:var(--pico-primary-hover-background);--pico-primary-hover-underline:var(--pico-primary-hover);--pico-primary-focus:rgba(1, 170, 255, 0.375);--pico-primary-inverse:#fff;--pico-secondary:#969eaf;--pico-secondary-background:#525f7a;--pico-secondary-border:var(--pico-secondary-background);--pico-secondary-underline:rgba(150, 158, 175, 0.5);--pico-secondary-hover:#b3b9c5;--pico-secondary-hover-background:#5d6b89;--pico-secondary-hover-border:var(--pico-secondary-hover-background);--pico-secondary-hover-underline:var(--pico-secondary-hover);--pico-secondary-focus:rgba(144, 158, 190, 0.25);--pico-secondary-inverse:#fff;--pico-contrast:#dfe3eb;--pico-contrast-background:#eff1f4;--pico-contrast-border:var(--pico-contrast-background);--pico-contrast-underline:rgba(223, 227, 235, 0.5);--pico-contrast-hover:#fff;--pico-contrast-hover-background:#fff;--pico-contrast-hover-border:var(--pico-contrast-hover-background);--pico-contrast-hover-underline:var(--pico-contrast-hover);--pico-contrast-focus:rgba(207, 213, 226, 0.25);--pico-contrast-inverse:#000;--pico-box-shadow:0.0145rem 0.029rem 0.174rem rgba(7, 8.5, 12, 0.01698),0.0335rem 0.067rem 0.402rem rgba(7, 8.5, 12, 0.024),0.0625rem 0.125rem 0.75rem rgba(7, 8.5, 12, 0.03),0.1125rem 0.225rem 1.35rem rgba(7, 8.5, 12, 0.036),0.2085rem 0.417rem 2.502rem rgba(7, 8.5, 12, 0.04302),0.5rem 1rem 6rem rgba(7, 8.5, 12, 0.06),0 0 0 0.0625rem rgba(7, 8.5, 12, 0.015);--pico-h1-color:#f0f1f3;--pico-h2-color:#e0e3e7;--pico-h3-color:#c2c7d0;--pico-h4-color:#b3b9c5;--pico-h5-color:#a4acba;--pico-h6-color:#8891a4;--pico-mark-background-color:#014063;--pico-mark-color:#fff;--pico-ins-color:#62af9a;--pico-del-color:rgb(205.5, 126, 123);--pico-blockquote-border-color:var(--pico-muted-border-color);--pico-blockquote-footer-color:var(--pico-muted-color);--pico-button-box-shadow:0 0 0 rgba(0, 0, 0, 0);--pico-button-hover-box-shadow:0 0 0 rgba(0, 0, 0, 0);--pico-table-border-color:var(--pico-muted-border-color);--pico-table-row-stripped-background-color:rgba(111, 120, 135, 0.0375);--pico-code-background-color:rgb(26, 30.5, 40.25);--pico-code-color:#8891a4;--pico-code-kbd-background-color:var(--pico-color);--pico-code-kbd-color:var(--pico-background-color);--pico-form-element-background-color:rgb(28, 33, 43.5);--pico-form-element-selected-background-color:#2a3140;--pico-form-element-border-color:#2a3140;--pico-form-element-color:#e0e3e7;--pico-form-element-placeholder-color:#8891a4;--pico-form-element-active-background-color:rgb(26, 30.5, 40.25);--pico-form-element-active-border-color:var(--pico-primary-border);--pico-form-element-focus-color:var(--pico-primary-border);--pico-form-element-disabled-opacity:0.5;--pico-form-element-invalid-border-color:rgb(149.5, 74, 80);--pico-form-element-invalid-active-border-color:rgb(183.25, 63.5, 59);--pico-form-element-invalid-focus-color:var(--pico-form-element-invalid-active-border-color);--pico-form-element-valid-border-color:#2a7b6f;--pico-form-element-valid-active-border-color:rgb(22, 137, 105.5);--pico-form-element-valid-focus-color:var(--pico-form-element-valid-active-border-color);--pico-switch-background-color:#333c4e;--pico-switch-checked-background-color:var(--pico-primary-background);--pico-switch-color:#fff;--pico-switch-thumb-box-shadow:0 0 0 rgba(0, 0, 0, 0);--pico-range-border-color:#202632;--pico-range-active-border-color:#2a3140;--pico-range-thumb-border-color:var(--pico-background-color);--pico-range-thumb-color:var(--pico-secondary-background);--pico-range-thumb-active-color:var(--pico-primary-background);--pico-accordion-border-color:var(--pico-muted-border-color);--pico-accordion-active-summary-color:var(--pico-primary-hover);--pico-accordion-close-summary-color:var(--pico-color);--pico-accordion-open-summary-color:var(--pico-muted-color);--pico-card-background-color:#181c25;--pico-card-border-color:var(--pico-card-background-color);--pico-card-box-shadow:var(--pico-box-shadow);--pico-card-sectioning-background-color:rgb(26, 30.5, 40.25);--pico-loading-spinner-opacity:0.5;--pico-modal-overlay-background-color:rgba(7.5, 8.5, 10, 0.75);--pico-progress-background-color:#202632;--pico-progress-color:var(--pico-primary-background);--pico-tooltip-background-color:var(--pico-contrast-background);--pico-tooltip-color:var(--pico-contrast-inverse);--pico-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(42, 123, 111)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");--pico-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(149.5, 74, 80)' 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")}:host(:not([data-theme])) input:is([type=submit],[type=button],[type=reset],[type=checkbox],[type=radio],[type=file]),:root:not([data-theme]) input:is([type=submit],[type=button],[type=reset],[type=checkbox],[type=radio],[type=file]){--pico-form-element-focus-color:var(--pico-primary-focus)}}[data-theme=dark]{color-scheme:dark;--pico-background-color:rgb(19, 22.5, 30.5);--pico-color:#c2c7d0;--pico-text-selection-color:rgba(1, 170, 255, 0.1875);--pico-muted-color:#7b8495;--pico-muted-border-color:#202632;--pico-primary:#01aaff;--pico-primary-background:#0172ad;--pico-primary-border:var(--pico-primary-background);--pico-primary-underline:rgba(1, 170, 255, 0.5);--pico-primary-hover:#79c0ff;--pico-primary-hover-background:#017fc0;--pico-primary-hover-border:var(--pico-primary-hover-background);--pico-primary-hover-underline:var(--pico-primary-hover);--pico-primary-focus:rgba(1, 170, 255, 0.375);--pico-primary-inverse:#fff;--pico-secondary:#969eaf;--pico-secondary-background:#525f7a;--pico-secondary-border:var(--pico-secondary-background);--pico-secondary-underline:rgba(150, 158, 175, 0.5);--pico-secondary-hover:#b3b9c5;--pico-secondary-hover-background:#5d6b89;--pico-secondary-hover-border:var(--pico-secondary-hover-background);--pico-secondary-hover-underline:var(--pico-secondary-hover);--pico-secondary-focus:rgba(144, 158, 190, 0.25);--pico-secondary-inverse:#fff;--pico-contrast:#dfe3eb;--pico-contrast-background:#eff1f4;--pico-contrast-border:var(--pico-contrast-background);--pico-contrast-underline:rgba(223, 227, 235, 0.5);--pico-contrast-hover:#fff;--pico-contrast-hover-background:#fff;--pico-contrast-hover-border:var(--pico-contrast-hover-background);--pico-contrast-hover-underline:var(--pico-contrast-hover);--pico-contrast-focus:rgba(207, 213, 226, 0.25);--pico-contrast-inverse:#000;--pico-box-shadow:0.0145rem 0.029rem 0.174rem rgba(7, 8.5, 12, 0.01698),0.0335rem 0.067rem 0.402rem rgba(7, 8.5, 12, 0.024),0.0625rem 0.125rem 0.75rem rgba(7, 8.5, 12, 0.03),0.1125rem 0.225rem 1.35rem rgba(7, 8.5, 12, 0.036),0.2085rem 0.417rem 2.502rem rgba(7, 8.5, 12, 0.04302),0.5rem 1rem 6rem rgba(7, 8.5, 12, 0.06),0 0 0 0.0625rem rgba(7, 8.5, 12, 0.015);--pico-h1-color:#f0f1f3;--pico-h2-color:#e0e3e7;--pico-h3-color:#c2c7d0;--pico-h4-color:#b3b9c5;--pico-h5-color:#a4acba;--pico-h6-color:#8891a4;--pico-mark-background-color:#014063;--pico-mark-color:#fff;--pico-ins-color:#62af9a;--pico-del-color:rgb(205.5, 126, 123);--pico-blockquote-border-color:var(--pico-muted-border-color);--pico-blockquote-footer-color:var(--pico-muted-color);--pico-button-box-shadow:0 0 0 rgba(0, 0, 0, 0);--pico-button-hover-box-shadow:0 0 0 rgba(0, 0, 0, 0);--pico-table-border-color:var(--pico-muted-border-color);--pico-table-row-stripped-background-color:rgba(111, 120, 135, 0.0375);--pico-code-background-color:rgb(26, 30.5, 40.25);--pico-code-color:#8891a4;--pico-code-kbd-background-color:var(--pico-color);--pico-code-kbd-color:var(--pico-background-color);--pico-form-element-background-color:rgb(28, 33, 43.5);--pico-form-element-selected-background-color:#2a3140;--pico-form-element-border-color:#2a3140;--pico-form-element-color:#e0e3e7;--pico-form-element-placeholder-color:#8891a4;--pico-form-element-active-background-color:rgb(26, 30.5, 40.25);--pico-form-element-active-border-color:var(--pico-primary-border);--pico-form-element-focus-color:var(--pico-primary-border);--pico-form-element-disabled-opacity:0.5;--pico-form-element-invalid-border-color:rgb(149.5, 74, 80);--pico-form-element-invalid-active-border-color:rgb(183.25, 63.5, 59);--pico-form-element-invalid-focus-color:var(--pico-form-element-invalid-active-border-color);--pico-form-element-valid-border-color:#2a7b6f;--pico-form-element-valid-active-border-color:rgb(22, 137, 105.5);--pico-form-element-valid-focus-color:var(--pico-form-element-valid-active-border-color);--pico-switch-background-color:#333c4e;--pico-switch-checked-background-color:var(--pico-primary-background);--pico-switch-color:#fff;--pico-switch-thumb-box-shadow:0 0 0 rgba(0, 0, 0, 0);--pico-range-border-color:#202632;--pico-range-active-border-color:#2a3140;--pico-range-thumb-border-color:var(--pico-background-color);--pico-range-thumb-color:var(--pico-secondary-background);--pico-range-thumb-active-color:var(--pico-primary-background);--pico-accordion-border-color:var(--pico-muted-border-color);--pico-accordion-active-summary-color:var(--pico-primary-hover);--pico-accordion-close-summary-color:var(--pico-color);--pico-accordion-open-summary-color:var(--pico-muted-color);--pico-card-background-color:#181c25;--pico-card-border-color:var(--pico-card-background-color);--pico-card-box-shadow:var(--pico-box-shadow);--pico-card-sectioning-background-color:rgb(26, 30.5, 40.25);--pico-loading-spinner-opacity:0.5;--pico-modal-overlay-background-color:rgba(7.5, 8.5, 10, 0.75);--pico-progress-background-color:#202632;--pico-progress-color:var(--pico-primary-background);--pico-tooltip-background-color:var(--pico-contrast-background);--pico-tooltip-color:var(--pico-contrast-inverse);--pico-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(42, 123, 111)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");--pico-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(149.5, 74, 80)' 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")}[data-theme=dark] input:is([type=submit],[type=button],[type=reset],[type=checkbox],[type=radio],[type=file]){--pico-form-element-focus-color:var(--pico-primary-focus)}[type=checkbox],[type=radio],[type=range],progress{accent-color:var(--pico-primary)}*,::after,::before{box-sizing:border-box;background-repeat:no-repeat}::after,::before{text-decoration:inherit;vertical-align:inherit}:where(:host),:where(:root){-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;background-color:var(--pico-background-color);color:var(--pico-color);font-weight:var(--pico-font-weight);font-size:var(--pico-font-size);line-height:var(--pico-line-height);font-family:var(--pico-font-family);text-underline-offset:var(--pico-text-underline-offset);text-rendering:optimizeLegibility;overflow-wrap:break-word;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{width:100%;margin:0}main{display:block}body>footer,body>header,body>main{width:100%;margin-right:auto;margin-left:auto;padding:var(--pico-block-spacing-vertical) var(--pico-block-spacing-horizontal)}section{margin-bottom:var(--pico-block-spacing-vertical)}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,ol,p,pre,table,ul{margin-top:0;margin-bottom:var(--pico-typography-spacing-vertical);color:var(--pico-color);font-style:normal;font-weight:var(--pico-font-weight)}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:var(--pico-typography-spacing-vertical);color:var(--pico-color);font-weight:var(--pico-font-weight);font-size:var(--pico-font-size);line-height:var(--pico-line-height);font-family:var(--pico-font-family)}h1{--pico-color:var(--pico-h1-color)}h2{--pico-color:var(--pico-h2-color)}h3{--pico-color:var(--pico-h3-color)}h4{--pico-color:var(--pico-h4-color)}h5{--pico-color:var(--pico-h5-color)}h6{--pico-color:var(--pico-h6-color)}:where(article,address,blockquote,dl,figure,form,ol,p,pre,table,ul)~:is(h1,h2,h3,h4,h5,h6){margin-top:var(--pico-typography-spacing-top)}p{margin-bottom:var(--pico-typography-spacing-vertical)}hgroup{margin-bottom:var(--pico-typography-spacing-vertical)}hgroup>*{margin-top:0;margin-bottom:0}hgroup>:not(:first-child):last-child{--pico-color:var(--pico-muted-color);--pico-font-weight:unset;font-size:1rem}:where(ol,ul) li{margin-bottom:calc(var(--pico-typography-spacing-vertical) * .25)}:where(dl,ol,ul) :where(dl,ol,ul){margin:0;margin-top:calc(var(--pico-typography-spacing-vertical) * .25)}ul li{list-style:square}mark{padding:.125rem .25rem;background-color:var(--pico-mark-background-color);color:var(--pico-mark-color);vertical-align:baseline}blockquote{display:block;margin:var(--pico-typography-spacing-vertical) 0;padding:var(--pico-spacing);border-right:none;border-left:.25rem solid var(--pico-blockquote-border-color);border-inline-start:0.25rem solid var(--pico-blockquote-border-color);border-inline-end:none}blockquote footer{margin-top:calc(var(--pico-typography-spacing-vertical) * .5);color:var(--pico-blockquote-footer-color)}abbr[title]{border-bottom:1px dotted;text-decoration:none;cursor:help}ins{color:var(--pico-ins-color);text-decoration:none}del{color:var(--pico-del-color)}::-moz-selection{background-color:var(--pico-text-selection-color)}::selection{background-color:var(--pico-text-selection-color)}:where(a:not([role=button])),[role=link]{--pico-color:var(--pico-primary);--pico-background-color:transparent;--pico-underline:var(--pico-primary-underline);outline:0;background-color:var(--pico-background-color);color:var(--pico-color);-webkit-text-decoration:var(--pico-text-decoration);text-decoration:var(--pico-text-decoration);text-decoration-color:var(--pico-underline);text-underline-offset:0.125em;transition:background-color var(--pico-transition),color var(--pico-transition),box-shadow var(--pico-transition),-webkit-text-decoration var(--pico-transition);transition:background-color var(--pico-transition),color var(--pico-transition),text-decoration var(--pico-transition),box-shadow var(--pico-transition);transition:background-color var(--pico-transition),color var(--pico-transition),text-decoration var(--pico-transition),box-shadow var(--pico-transition),-webkit-text-decoration var(--pico-transition)}:where(a:not([role=button])):is([aria-current]:not([aria-current=false]),:hover,:active,:focus),[role=link]:is([aria-current]:not([aria-current=false]),:hover,:active,:focus){--pico-color:var(--pico-primary-hover);--pico-underline:var(--pico-primary-hover-underline);--pico-text-decoration:underline}:where(a:not([role=button])):focus-visible,[role=link]:focus-visible{box-shadow:0 0 0 var(--pico-outline-width) var(--pico-primary-focus)}a[role=button]{display:inline-block}button{margin:0;overflow:visible;font-family:inherit;text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[role=button],[type=button],[type=file]::file-selector-button,[type=reset],[type=submit],button{--pico-background-color:var(--pico-primary-background);--pico-border-color:var(--pico-primary-border);--pico-color:var(--pico-primary-inverse);--pico-box-shadow:var(--pico-button-box-shadow, 0 0 0 rgba(0, 0, 0, 0));padding:var(--pico-form-element-spacing-vertical) var(--pico-form-element-spacing-horizontal);border:var(--pico-border-width) solid var(--pico-border-color);border-radius:var(--pico-border-radius);outline:0;background-color:var(--pico-background-color);box-shadow:var(--pico-box-shadow);color:var(--pico-color);font-weight:var(--pico-font-weight);font-size:1rem;line-height:var(--pico-line-height);text-align:center;text-decoration:none;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background-color var(--pico-transition),border-color var(--pico-transition),color var(--pico-transition),box-shadow var(--pico-transition)}[role=button]:is(:hover,:active,:focus),[role=button]:is([aria-current]:not([aria-current=false])),[type=button]:is(:hover,:active,:focus),[type=button]:is([aria-current]:not([aria-current=false])),[type=file]::file-selector-button:is(:hover,:active,:focus),[type=file]::file-selector-button:is([aria-current]:not([aria-current=false])),[type=reset]:is(:hover,:active,:focus),[type=reset]:is([aria-current]:not([aria-current=false])),[type=submit]:is(:hover,:active,:focus),[type=submit]:is([aria-current]:not([aria-current=false])),button:is(:hover,:active,:focus),button:is([aria-current]:not([aria-current=false])){--pico-background-color:var(--pico-primary-hover-background);--pico-border-color:var(--pico-primary-hover-border);--pico-box-shadow:var(--pico-button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0));--pico-color:var(--pico-primary-inverse)}[role=button]:focus,[role=button]:is([aria-current]:not([aria-current=false])):focus,[type=button]:focus,[type=button]:is([aria-current]:not([aria-current=false])):focus,[type=file]::file-selector-button:focus,[type=file]::file-selector-button:is([aria-current]:not([aria-current=false])):focus,[type=reset]:focus,[type=reset]:is([aria-current]:not([aria-current=false])):focus,[type=submit]:focus,[type=submit]:is([aria-current]:not([aria-current=false])):focus,button:focus,button:is([aria-current]:not([aria-current=false])):focus{--pico-box-shadow:var(--pico-button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0)),0 0 0 var(--pico-outline-width) var(--pico-primary-focus)}[type=button],[type=reset],[type=submit]{margin-bottom:var(--pico-spacing)}[type=file]::file-selector-button,[type=reset]{--pico-background-color:var(--pico-secondary-background);--pico-border-color:var(--pico-secondary-border);--pico-color:var(--pico-secondary-inverse);cursor:pointer}[type=file]::file-selector-button:is([aria-current]:not([aria-current=false]),:hover,:active,:focus),[type=reset]:is([aria-current]:not([aria-current=false]),:hover,:active,:focus){--pico-background-color:var(--pico-secondary-hover-background);--pico-border-color:var(--pico-secondary-hover-border);--pico-color:var(--pico-secondary-inverse)}[type=file]::file-selector-button:focus,[type=reset]:focus{--pico-box-shadow:var(--pico-button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0)),0 0 0 var(--pico-outline-width) var(--pico-secondary-focus)}:where(button,[type=submit],[type=reset],[type=button],[role=button])[disabled],:where(fieldset[disabled]) :is(button,[type=submit],[type=button],[type=reset],[role=button]){opacity:.5;pointer-events:none}:where(table){width:100%;border-collapse:collapse;border-spacing:0;text-indent:0}td,th{padding:calc(var(--pico-spacing)/ 2) var(--pico-spacing);border-bottom:var(--pico-border-width) solid var(--pico-table-border-color);background-color:var(--pico-background-color);color:var(--pico-color);font-weight:var(--pico-font-weight);text-align:left;text-align:start}tfoot td,tfoot th{border-top:var(--pico-border-width) solid var(--pico-table-border-color);border-bottom:0}table.striped tbody tr:nth-child(odd) td,table.striped tbody tr:nth-child(odd) th{background-color:var(--pico-table-row-stripped-background-color)}: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(:host),svg:not(:root){overflow:hidden}code,kbd,pre,samp{font-size:.875em;font-family:var(--pico-font-family)}pre code,pre samp{font-size:inherit;font-family:inherit}pre{-ms-overflow-style:scrollbar;overflow:auto}code,kbd,pre,samp{border-radius:var(--pico-border-radius);background:var(--pico-code-background-color);color:var(--pico-code-color);font-weight:var(--pico-font-weight);line-height:initial}code,kbd,samp{display:inline-block;padding:.375rem}pre{display:block;margin-bottom:var(--pico-spacing);overflow-x:auto}pre>code,pre>samp{display:block;padding:var(--pico-spacing);background:0 0;line-height:var(--pico-line-height)}kbd{background-color:var(--pico-code-kbd-background-color);color:var(--pico-code-kbd-color);vertical-align:baseline}figure{display:block;margin:0;padding:0}figure figcaption{padding:calc(var(--pico-spacing) * .5) 0;color:var(--pico-muted-color)}hr{height:0;margin:var(--pico-typography-spacing-vertical) 0;border:0;border-top:1px solid var(--pico-muted-border-color);color:inherit}[hidden],template{display:none!important}canvas{display:inline-block}input,optgroup,select,textarea{margin:0;font-size:1rem;line-height:var(--pico-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(--pico-line-height) + var(--pico-form-element-spacing-vertical) * 2 + var(--pico-border-width) * 2)}fieldset{width:100%;margin:0;margin-bottom:var(--pico-spacing);padding:0;border:0}fieldset legend,label{display:block;margin-bottom:calc(var(--pico-spacing) * .375);color:var(--pico-color);font-weight:var(--pico-form-label-font-weight,var(--pico-font-weight))}fieldset legend{margin-bottom:calc(var(--pico-spacing) * .5)}button[type=submit],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(--pico-form-element-spacing-vertical) var(--pico-form-element-spacing-horizontal)}input,select,textarea{--pico-background-color:var(--pico-form-element-background-color);--pico-border-color:var(--pico-form-element-border-color);--pico-color:var(--pico-form-element-color);--pico-box-shadow:none;border:var(--pico-border-width) solid var(--pico-border-color);border-radius:var(--pico-border-radius);outline:0;background-color:var(--pico-background-color);box-shadow:var(--pico-box-shadow);color:var(--pico-color);font-weight:var(--pico-font-weight);transition:background-color var(--pico-transition),border-color var(--pico-transition),color var(--pico-transition),box-shadow var(--pico-transition)}:where(select,textarea):not([readonly]):is(:active,:focus),input:not([type=submit],[type=button],[type=reset],[type=checkbox],[type=radio],[readonly]):is(:active,:focus){--pico-background-color:var(--pico-form-element-active-background-color)}:where(select,textarea):not([readonly]):is(:active,:focus),input:not([type=submit],[type=button],[type=reset],[role=switch],[readonly]):is(:active,:focus){--pico-border-color:var(--pico-form-element-active-border-color)}:where(select,textarea):not([readonly]):focus,input:not([type=submit],[type=button],[type=reset],[type=range],[type=file],[readonly]):focus{--pico-box-shadow:0 0 0 var(--pico-outline-width) var(--pico-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],label[aria-disabled=true],select[disabled],textarea[disabled]{opacity:var(--pico-form-element-disabled-opacity);pointer-events:none}label[aria-disabled=true] input[disabled]{opacity:1}:where(input,select,textarea):not([type=checkbox],[type=radio],[type=date],[type=datetime-local],[type=month],[type=time],[type=week],[type=range])[aria-invalid]{padding-right:calc(var(--pico-form-element-spacing-horizontal) + 1.5rem)!important;padding-left:var(--pico-form-element-spacing-horizontal);padding-inline-start:var(--pico-form-element-spacing-horizontal)!important;padding-inline-end:calc(var(--pico-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],[type=range])[aria-invalid=false]:not(select){background-image:var(--pico-icon-valid)}:where(input,select,textarea):not([type=checkbox],[type=radio],[type=date],[type=datetime-local],[type=month],[type=time],[type=week],[type=range])[aria-invalid=true]:not(select){background-image:var(--pico-icon-invalid)}:where(input,select,textarea)[aria-invalid=false]{--pico-border-color:var(--pico-form-element-valid-border-color)}:where(input,select,textarea)[aria-invalid=false]:is(:active,:focus){--pico-border-color:var(--pico-form-element-valid-active-border-color)!important}:where(input,select,textarea)[aria-invalid=false]:is(:active,:focus):not([type=checkbox],[type=radio]){--pico-box-shadow:0 0 0 var(--pico-outline-width) var(--pico-form-element-valid-focus-color)!important}:where(input,select,textarea)[aria-invalid=true]{--pico-border-color:var(--pico-form-element-invalid-border-color)}:where(input,select,textarea)[aria-invalid=true]:is(:active,:focus){--pico-border-color:var(--pico-form-element-invalid-active-border-color)!important}:where(input,select,textarea)[aria-invalid=true]:is(:active,:focus):not([type=checkbox],[type=radio]){--pico-box-shadow:0 0 0 var(--pico-outline-width) var(--pico-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(--pico-form-element-placeholder-color);opacity:1}input:not([type=checkbox],[type=radio]),select,textarea{margin-bottom:var(--pico-spacing)}select::-ms-expand{border:0;background-color:transparent}select:not([multiple],[size]){padding-right:calc(var(--pico-form-element-spacing-horizontal) + 1.5rem);padding-left:var(--pico-form-element-spacing-horizontal);padding-inline-start:var(--pico-form-element-spacing-horizontal);padding-inline-end:calc(var(--pico-form-element-spacing-horizontal) + 1.5rem);background-image:var(--pico-icon-chevron);background-position:center right .75rem;background-size:1rem auto;background-repeat:no-repeat}select[multiple] option:checked{background:var(--pico-form-element-selected-background-color);color:var(--pico-form-element-color)}[dir=rtl] select:not([multiple],[size]){background-position:center left .75rem}textarea{display:block;resize:vertical}textarea[aria-invalid]{--pico-icon-height:calc(1rem * var(--pico-line-height) + var(--pico-form-element-spacing-vertical) * 2 + var(--pico-border-width) * 2);background-position:top right .75rem!important;background-size:1rem var(--pico-icon-height)!important}:where(input,select,textarea,fieldset)+small{display:block;width:100%;margin-top:calc(var(--pico-spacing) * -.75);margin-bottom:var(--pico-spacing);color:var(--pico-muted-color)}:where(input,select,textarea,fieldset)[aria-invalid=false]+small{color:var(--pico-ins-color)}:where(input,select,textarea,fieldset)[aria-invalid=true]+small{color:var(--pico-del-color)}label>:where(input,select,textarea){margin-top:calc(var(--pico-spacing) * .25)}label:has([type=checkbox],[type=radio]){width:-moz-fit-content;width:fit-content;cursor:pointer}[type=checkbox],[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:1.25em;height:1.25em;margin-top:-.125em;margin-inline-end:.5em;border-width:var(--pico-border-width);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{--pico-background-color:var(--pico-primary-background);--pico-border-color:var(--pico-primary-border);background-image:var(--pico-icon-checkbox);background-position:center;background-size:.75em auto;background-repeat:no-repeat}[type=checkbox]~label,[type=radio]~label{display:inline-block;margin-bottom:0;cursor:pointer}[type=checkbox]~label:not(:last-of-type),[type=radio]~label:not(:last-of-type){margin-inline-end:1em}[type=checkbox]:indeterminate{--pico-background-color:var(--pico-primary-background);--pico-border-color:var(--pico-primary-border);background-image:var(--pico-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{--pico-background-color:var(--pico-primary-inverse);border-width:.35em;background-image:none}[type=checkbox][role=switch]{--pico-background-color:var(--pico-switch-background-color);--pico-color:var(--pico-switch-color);width:2.25em;height:1.25em;border:var(--pico-border-width) solid var(--pico-border-color);border-radius:1.25em;background-color:var(--pico-background-color);line-height:1.25em}[type=checkbox][role=switch]:not([aria-invalid]){--pico-border-color:var(--pico-switch-background-color)}[type=checkbox][role=switch]:before{display:block;aspect-ratio:1;height:100%;border-radius:50%;background-color:var(--pico-color);box-shadow:var(--pico-switch-thumb-box-shadow);content:"";transition:margin .1s ease-in-out}[type=checkbox][role=switch]:focus{--pico-background-color:var(--pico-switch-background-color);--pico-border-color:var(--pico-switch-background-color)}[type=checkbox][role=switch]:checked{--pico-background-color:var(--pico-switch-checked-background-color);--pico-border-color:var(--pico-switch-checked-background-color);background-image:none}[type=checkbox][role=switch]:checked::before{margin-inline-start:calc(2.25em - 1.25em)}[type=checkbox][role=switch][disabled]{--pico-background-color:var(--pico-border-color)}[type=checkbox][aria-invalid=false]:checked,[type=checkbox][aria-invalid=false]:checked:active,[type=checkbox][aria-invalid=false]:checked:focus,[type=checkbox][role=switch][aria-invalid=false]:checked,[type=checkbox][role=switch][aria-invalid=false]:checked:active,[type=checkbox][role=switch][aria-invalid=false]:checked:focus{--pico-background-color:var(--pico-form-element-valid-border-color)}[type=checkbox]:checked:active[aria-invalid=true],[type=checkbox]:checked:focus[aria-invalid=true],[type=checkbox]:checked[aria-invalid=true],[type=checkbox][role=switch]:checked:active[aria-invalid=true],[type=checkbox][role=switch]:checked:focus[aria-invalid=true],[type=checkbox][role=switch]:checked[aria-invalid=true]{--pico-background-color:var(--pico-form-element-invalid-border-color)}[type=checkbox][aria-invalid=false]:checked,[type=checkbox][aria-invalid=false]:checked:active,[type=checkbox][aria-invalid=false]:checked:focus,[type=checkbox][role=switch][aria-invalid=false]:checked,[type=checkbox][role=switch][aria-invalid=false]:checked:active,[type=checkbox][role=switch][aria-invalid=false]:checked:focus,[type=radio][aria-invalid=false]:checked,[type=radio][aria-invalid=false]:checked:active,[type=radio][aria-invalid=false]:checked:focus{--pico-border-color:var(--pico-form-element-valid-border-color)}[type=checkbox]:checked:active[aria-invalid=true],[type=checkbox]:checked:focus[aria-invalid=true],[type=checkbox]:checked[aria-invalid=true],[type=checkbox][role=switch]:checked:active[aria-invalid=true],[type=checkbox][role=switch]:checked:focus[aria-invalid=true],[type=checkbox][role=switch]:checked[aria-invalid=true],[type=radio]:checked:active[aria-invalid=true],[type=radio]:checked:focus[aria-invalid=true],[type=radio]:checked[aria-invalid=true]{--pico-border-color:var(--pico-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(--pico-border-radius) * .5)}[type=color]::-moz-color-swatch{border:0;border-radius:calc(var(--pico-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]){--pico-icon-position:0.75rem;--pico-icon-width:1rem;padding-right:calc(var(--pico-icon-width) + var(--pico-icon-position));background-image:var(--pico-icon-date);background-position:center right var(--pico-icon-position);background-size:var(--pico-icon-width) auto;background-repeat:no-repeat}input:not([type=checkbox],[type=radio],[type=range],[type=file])[type=time]{background-image:var(--pico-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(--pico-icon-width);margin-right:calc(var(--pico-icon-width) * -1);margin-left:var(--pico-icon-position);opacity:0}@-moz-document url-prefix(){[type=date],[type=datetime-local],[type=month],[type=time],[type=week]{padding-right:var(--pico-form-element-spacing-horizontal)!important;background-image:none!important}}[dir=rtl] :is([type=date],[type=datetime-local],[type=month],[type=time],[type=week]){text-align:right}[type=file]{--pico-color:var(--pico-muted-color);margin-left:calc(var(--pico-outline-width) * -1);padding:calc(var(--pico-form-element-spacing-vertical) * .5) 0;padding-left:var(--pico-outline-width);border:0;border-radius:0;background:0 0}[type=file]::file-selector-button{margin-right:calc(var(--pico-spacing)/ 2);padding:calc(var(--pico-form-element-spacing-vertical) * .5) var(--pico-form-element-spacing-horizontal)}[type=file]:is(:hover,:active,:focus)::file-selector-button{--pico-background-color:var(--pico-secondary-hover-background);--pico-border-color:var(--pico-secondary-hover-border)}[type=file]:focus::file-selector-button{--pico-box-shadow:var(--pico-button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0)),0 0 0 var(--pico-outline-width) var(--pico-secondary-focus)}[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:.375rem;border-radius:var(--pico-border-radius);background-color:var(--pico-range-border-color);-webkit-transition:background-color var(--pico-transition),box-shadow var(--pico-transition);transition:background-color var(--pico-transition),box-shadow var(--pico-transition)}[type=range]::-moz-range-track{width:100%;height:.375rem;border-radius:var(--pico-border-radius);background-color:var(--pico-range-border-color);-moz-transition:background-color var(--pico-transition),box-shadow var(--pico-transition);transition:background-color var(--pico-transition),box-shadow var(--pico-transition)}[type=range]::-ms-track{width:100%;height:.375rem;border-radius:var(--pico-border-radius);background-color:var(--pico-range-border-color);-ms-transition:background-color var(--pico-transition),box-shadow var(--pico-transition);transition:background-color var(--pico-transition),box-shadow var(--pico-transition)}[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:1.25rem;height:1.25rem;margin-top:-.4375rem;border:2px solid var(--pico-range-thumb-border-color);border-radius:50%;background-color:var(--pico-range-thumb-color);cursor:pointer;-webkit-transition:background-color var(--pico-transition),transform var(--pico-transition);transition:background-color var(--pico-transition),transform var(--pico-transition)}[type=range]::-moz-range-thumb{-webkit-appearance:none;width:1.25rem;height:1.25rem;margin-top:-.4375rem;border:2px solid var(--pico-range-thumb-border-color);border-radius:50%;background-color:var(--pico-range-thumb-color);cursor:pointer;-moz-transition:background-color var(--pico-transition),transform var(--pico-transition);transition:background-color var(--pico-transition),transform var(--pico-transition)}[type=range]::-ms-thumb{-webkit-appearance:none;width:1.25rem;height:1.25rem;margin-top:-.4375rem;border:2px solid var(--pico-range-thumb-border-color);border-radius:50%;background-color:var(--pico-range-thumb-color);cursor:pointer;-ms-transition:background-color var(--pico-transition),transform var(--pico-transition);transition:background-color var(--pico-transition),transform var(--pico-transition)}[type=range]:active,[type=range]:focus-within{--pico-range-border-color:var(--pico-range-active-border-color);--pico-range-thumb-color:var(--pico-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]{padding-inline-start:calc(var(--pico-form-element-spacing-horizontal) + 1.75rem);background-image:var(--pico-icon-search);background-position:center left calc(var(--pico-form-element-spacing-horizontal) + .125rem);background-size:1rem auto;background-repeat:no-repeat}input:not([type=checkbox],[type=radio],[type=range],[type=file])[type=search][aria-invalid]{padding-inline-start:calc(var(--pico-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(--pico-icon-search),var(--pico-icon-valid)}input:not([type=checkbox],[type=radio],[type=range],[type=file])[type=search][aria-invalid=true]{background-image:var(--pico-icon-search),var(--pico-icon-invalid)}[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}details{display:block;margin-bottom:var(--pico-spacing)}details summary{line-height:1rem;list-style-type:none;cursor:pointer;transition:color var(--pico-transition)}details summary:not([role]){color:var(--pico-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;margin-inline-start:calc(var(--pico-spacing,1rem) * .5);float:right;transform:rotate(-90deg);background-image:var(--pico-icon-chevron);background-position:right center;background-size:1rem auto;background-repeat:no-repeat;content:"";transition:transform var(--pico-transition)}details summary:focus{outline:0}details summary:focus:not([role]){color:var(--pico-accordion-active-summary-color)}details summary:focus-visible:not([role]){outline:var(--pico-outline-width) solid var(--pico-primary-focus);outline-offset:calc(var(--pico-spacing,1rem) * 0.5);color:var(--pico-primary)}details summary[role=button]{width:100%;text-align:left}details summary[role=button]::after{height:calc(1rem * var(--pico-line-height,1.5))}details[open]>summary{margin-bottom:var(--pico-spacing)}details[open]>summary:not([role]):not(:focus){color:var(--pico-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-bottom:var(--pico-block-spacing-vertical);padding:var(--pico-block-spacing-vertical) var(--pico-block-spacing-horizontal);border-radius:var(--pico-border-radius);background:var(--pico-card-background-color);box-shadow:var(--pico-card-box-shadow)}article>footer,article>header{margin-right:calc(var(--pico-block-spacing-horizontal) * -1);margin-left:calc(var(--pico-block-spacing-horizontal) * -1);padding:calc(var(--pico-block-spacing-vertical) * .66) var(--pico-block-spacing-horizontal);background-color:var(--pico-card-sectioning-background-color)}article>header{margin-top:calc(var(--pico-block-spacing-vertical) * -1);margin-bottom:var(--pico-block-spacing-vertical);border-bottom:var(--pico-border-width) solid var(--pico-card-border-color);border-top-right-radius:var(--pico-border-radius);border-top-left-radius:var(--pico-border-radius)}article>footer{margin-top:var(--pico-block-spacing-vertical);margin-bottom:calc(var(--pico-block-spacing-vertical) * -1);border-top:var(--pico-border-width) solid var(--pico-card-border-color);border-bottom-right-radius:var(--pico-border-radius);border-bottom-left-radius:var(--pico-border-radius)}[role=group],[role=search]{display:inline-flex;position:relative;width:100%;margin-bottom:var(--pico-spacing);border-radius:var(--pico-border-radius);box-shadow:var(--pico-group-box-shadow,0 0 0 transparent);vertical-align:middle;transition:box-shadow var(--pico-transition)}[role=group] input:not([type=checkbox],[type=radio]),[role=group] select,[role=group]>*,[role=search] input:not([type=checkbox],[type=radio]),[role=search] select,[role=search]>*{position:relative;flex:1 1 auto;margin-bottom:0}[role=group] input:not([type=checkbox],[type=radio]):not(:first-child),[role=group] select:not(:first-child),[role=group]>:not(:first-child),[role=search] input:not([type=checkbox],[type=radio]):not(:first-child),[role=search] select:not(:first-child),[role=search]>:not(:first-child){margin-left:0;border-top-left-radius:0;border-bottom-left-radius:0}[role=group] input:not([type=checkbox],[type=radio]):not(:last-child),[role=group] select:not(:last-child),[role=group]>:not(:last-child),[role=search] input:not([type=checkbox],[type=radio]):not(:last-child),[role=search] select:not(:last-child),[role=search]>:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}[role=group] input:not([type=checkbox],[type=radio]):focus,[role=group] select:focus,[role=group]>:focus,[role=search] input:not([type=checkbox],[type=radio]):focus,[role=search] select:focus,[role=search]>:focus{z-index:2}[role=group] [role=button]:not(:first-child),[role=group] [type=button]:not(:first-child),[role=group] [type=reset]:not(:first-child),[role=group] [type=submit]:not(:first-child),[role=group] button:not(:first-child),[role=group] input:not([type=checkbox],[type=radio]):not(:first-child),[role=group] select:not(:first-child),[role=search] [role=button]:not(:first-child),[role=search] [type=button]:not(:first-child),[role=search] [type=reset]:not(:first-child),[role=search] [type=submit]:not(:first-child),[role=search] button:not(:first-child),[role=search] input:not([type=checkbox],[type=radio]):not(:first-child),[role=search] select:not(:first-child){margin-left:calc(var(--pico-border-width) * -1)}[role=group] [role=button],[role=group] [type=button],[role=group] [type=reset],[role=group] [type=submit],[role=group] button,[role=search] [role=button],[role=search] [type=button],[role=search] [type=reset],[role=search] [type=submit],[role=search] button{width:auto}@supports selector(:has(*)){[role=group]:has(button:focus,[type=submit]:focus,[type=button]:focus,[role=button]:focus),[role=search]:has(button:focus,[type=submit]:focus,[type=button]:focus,[role=button]:focus){--pico-group-box-shadow:var(--pico-group-box-shadow-focus-with-button)}[role=group]:has(button:focus,[type=submit]:focus,[type=button]:focus,[role=button]:focus) input:not([type=checkbox],[type=radio]),[role=group]:has(button:focus,[type=submit]:focus,[type=button]:focus,[role=button]:focus) select,[role=search]:has(button:focus,[type=submit]:focus,[type=button]:focus,[role=button]:focus) input:not([type=checkbox],[type=radio]),[role=search]:has(button:focus,[type=submit]:focus,[type=button]:focus,[role=button]:focus) select{border-color:transparent}[role=group]:has(input:not([type=submit],[type=button]):focus,select:focus),[role=search]:has(input:not([type=submit],[type=button]):focus,select:focus){--pico-group-box-shadow:var(--pico-group-box-shadow-focus-with-input)}[role=group]:has(input:not([type=submit],[type=button]):focus,select:focus) [role=button],[role=group]:has(input:not([type=submit],[type=button]):focus,select:focus) [type=button],[role=group]:has(input:not([type=submit],[type=button]):focus,select:focus) [type=submit],[role=group]:has(input:not([type=submit],[type=button]):focus,select:focus) button,[role=search]:has(input:not([type=submit],[type=button]):focus,select:focus) [role=button],[role=search]:has(input:not([type=submit],[type=button]):focus,select:focus) [type=button],[role=search]:has(input:not([type=submit],[type=button]):focus,select:focus) [type=submit],[role=search]:has(input:not([type=submit],[type=button]):focus,select:focus) button{--pico-button-box-shadow:0 0 0 var(--pico-border-width) var(--pico-primary-border);--pico-button-hover-box-shadow:0 0 0 var(--pico-border-width) var(--pico-primary-hover-border)}[role=group] [role=button]:focus,[role=group] [type=button]:focus,[role=group] [type=reset]:focus,[role=group] [type=submit]:focus,[role=group] button:focus,[role=search] [role=button]:focus,[role=search] [type=button]:focus,[role=search] [type=reset]:focus,[role=search] [type=submit]:focus,[role=search] button:focus{box-shadow:none}}[role=search]>:first-child{border-top-left-radius:5rem;border-bottom-left-radius:5rem}[role=search]>:last-child{border-top-right-radius:5rem;border-bottom-right-radius:5rem}[aria-busy=true]:not(input,select,textarea,html,form){white-space:nowrap}[aria-busy=true]:not(input,select,textarea,html,form)::before{display:inline-block;width:1em;height:1em;background-image:var(--pico-icon-loading);background-size:1em auto;background-repeat:no-repeat;content:"";vertical-align:-.125em}[aria-busy=true]:not(input,select,textarea,html,form):not(:empty)::before{margin-inline-end:calc(var(--pico-spacing) * .5)}[aria-busy=true]:not(input,select,textarea,html,form):empty{text-align:center}[role=button][aria-busy=true],[type=button][aria-busy=true],[type=reset][aria-busy=true],[type=submit][aria-busy=true],a[aria-busy=true],button[aria-busy=true]{pointer-events:none}:host,:root{--pico-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:0;border:0;-webkit-backdrop-filter:var(--pico-modal-overlay-backdrop-filter);backdrop-filter:var(--pico-modal-overlay-backdrop-filter);background-color:var(--pico-modal-overlay-background-color);color:var(--pico-color)}dialog>article{width:100%;max-height:calc(100vh - var(--pico-spacing) * 2);margin:var(--pico-spacing);overflow:auto}@media (min-width:576px){dialog>article{max-width:510px}}@media (min-width:768px){dialog>article{max-width:700px}}dialog>article>header>*{margin-bottom:0}dialog>article>header :is(a,button)[rel=prev]{margin:0;margin-left:var(--pico-spacing);padding:0;float:right}dialog>article>footer{text-align:right}dialog>article>footer [role=button],dialog>article>footer button{margin-bottom:0}dialog>article>footer [role=button]:not(:first-of-type),dialog>article>footer button:not(:first-of-type){margin-left:calc(var(--pico-spacing) * .5)}dialog>article :is(a,button)[rel=prev]{display:block;width:1rem;height:1rem;margin-top:calc(var(--pico-spacing) * -1);margin-bottom:var(--pico-spacing);margin-left:auto;border:none;background-image:var(--pico-icon-close);background-position:center;background-size:auto 1rem;background-repeat:no-repeat;background-color:transparent;opacity:.5;transition:opacity var(--pico-transition)}dialog>article :is(a,button)[rel=prev]:is([aria-current]:not([aria-current=false]),:hover,:active,:focus){opacity:1}dialog:not([open]),dialog[open=false]{display:none}:where(nav li)::before{float:left;content:"​"}nav,nav ul{display:flex}nav{justify-content:space-between;overflow:visible}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(--pico-nav-element-spacing-horizontal) * -1)}nav ol:last-of-type,nav ul:last-of-type{margin-right:calc(var(--pico-nav-element-spacing-horizontal) * -1)}nav li{display:inline-block;margin:0;padding:var(--pico-nav-element-spacing-vertical) var(--pico-nav-element-spacing-horizontal)}nav li :where(a,[role=link]){display:inline-block;margin:calc(var(--pico-nav-link-spacing-vertical) * -1) calc(var(--pico-nav-link-spacing-horizontal) * -1);padding:var(--pico-nav-link-spacing-vertical) var(--pico-nav-link-spacing-horizontal);border-radius:var(--pico-border-radius)}nav li :where(a,[role=link]):not(:hover){text-decoration:none}nav li [role=button],nav li [type=button],nav li button,nav li input:not([type=checkbox],[type=radio],[type=range],[type=file]),nav li select{height:auto;margin-right:inherit;margin-bottom:0;margin-left:inherit;padding:calc(var(--pico-nav-link-spacing-vertical) - var(--pico-border-width) * 2) var(--pico-nav-link-spacing-horizontal)}nav[aria-label=breadcrumb]{align-items:center;justify-content:start}nav[aria-label=breadcrumb] ul li:not(:first-child){margin-inline-start:var(--pico-nav-link-spacing-horizontal)}nav[aria-label=breadcrumb] ul li a{margin:calc(var(--pico-nav-link-spacing-vertical) * -1) 0;margin-inline-start:calc(var(--pico-nav-link-spacing-horizontal) * -1)}nav[aria-label=breadcrumb] ul li:not(:last-child)::after{display:inline-block;position:absolute;width:calc(var(--pico-nav-link-spacing-horizontal) * 4);margin:0 calc(var(--pico-nav-link-spacing-horizontal) * -1);content:var(--pico-nav-breadcrumb-divider);color:var(--pico-muted-color);text-align:center;text-decoration:none;white-space:nowrap}nav[aria-label=breadcrumb] a[aria-current]:not([aria-current=false]){background-color:transparent;color:inherit;text-decoration:none;pointer-events:none}aside li,aside nav,aside ol,aside ul{display:block}aside li{padding:calc(var(--pico-nav-element-spacing-vertical) * .5) var(--pico-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(--pico-spacing) * .5);overflow:hidden;border:0;border-radius:var(--pico-border-radius);background-color:var(--pico-progress-background-color);color:var(--pico-progress-color)}progress::-webkit-progress-bar{border-radius:var(--pico-border-radius);background:0 0}progress[value]::-webkit-progress-value{background-color:var(--pico-progress-color);-webkit-transition:inline-size var(--pico-transition);transition:inline-size var(--pico-transition)}progress::-moz-progress-bar{background-color:var(--pico-progress-color)}@media (prefers-reduced-motion:no-preference){progress:indeterminate{background:var(--pico-progress-background-color) linear-gradient(to right,var(--pico-progress-color) 30%,var(--pico-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}}[data-tooltip]{position:relative}[data-tooltip]:not(a,button,input,[role=button]){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(--pico-border-radius);background:var(--pico-tooltip-background-color);content:attr(data-tooltip);color:var(--pico-tooltip-color);font-style:normal;font-weight:var(--pico-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(--pico-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]:focus::after,[data-tooltip]:focus::before,[data-tooltip]:hover::after,[data-tooltip]:hover::before{--pico-tooltip-slide-to:translate(-50%, -0.25rem);transform:translate(-50%,.75rem);animation-duration:.2s;animation-fill-mode:forwards;animation-name:tooltip-slide;opacity:0}[data-tooltip]:focus::after,[data-tooltip]:hover::after{--pico-tooltip-caret-slide-to:translate(-50%, 0rem);transform:translate(-50%,-.25rem);animation-name:tooltip-caret-slide}[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{--pico-tooltip-slide-to:translate(-50%, 0.25rem);transform:translate(-50%,-.75rem);animation-name:tooltip-slide}[data-tooltip][data-placement=bottom]:focus::after,[data-tooltip][data-placement=bottom]:hover::after{--pico-tooltip-caret-slide-to:translate(-50%, -0.3rem);transform:translate(-50%,-.5rem);animation-name:tooltip-caret-slide}[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{--pico-tooltip-slide-to:translate(-0.25rem, -50%);transform:translate(.75rem,-50%);animation-name:tooltip-slide}[data-tooltip][data-placement=left]:focus::after,[data-tooltip][data-placement=left]:hover::after{--pico-tooltip-caret-slide-to:translate(0.3rem, -50%);transform:translate(.05rem,-50%);animation-name:tooltip-caret-slide}[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{--pico-tooltip-slide-to:translate(0.25rem, -50%);transform:translate(-.75rem,-50%);animation-name:tooltip-slide}[data-tooltip][data-placement=right]:focus::after,[data-tooltip][data-placement=right]:hover::after{--pico-tooltip-caret-slide-to:translate(-0.3rem, -50%);transform:translate(-.05rem,-50%);animation-name:tooltip-caret-slide}}@keyframes tooltip-slide{to{transform:var(--pico-tooltip-slide-to);opacity:1}}@keyframes tooltip-caret-slide{50%{opacity:0}to{transform:var(--pico-tooltip-caret-slide-to);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}} \ No newline at end of file diff --git a/scripts/dashboard/resources/shared-styles.css b/scripts/dashboard/resources/shared-styles.css new file mode 100644 index 0000000..fce74f0 --- /dev/null +++ b/scripts/dashboard/resources/shared-styles.css @@ -0,0 +1,75 @@ +/* + +Shared Styles for various Pico-styled Yocto web properties within this repo: + +- Dashboard: https://dashboard.yoctoproject.org/ +- BugZilla Stats: https://dashboard.yoctoproject.org/bugzilla_stats.html +- Bug Triage: https://dashboard.yoctoproject.org/bugtriage/ +- Autobuilder Issue Summary: https://valkyrie.yocto.io/pub/non-release/abint/ + This lives in `/scripts/abint` and since it lives under a different URL, has its own copy of this file and related assets. + +The repo `yocto-metrics` also uses the same/similar styles for these pages: + +- Current CVE status for meta-openembedded: https://valkyrie.yocto.io/pub/non-release/patchmetrics-meta-oe/ +- Patchmetrics: https://valkyrie.yocto.io/pub/non-release/patchmetrics/ + +*/ + +html { + scroll-behavior: smooth; + scroll-padding-top: 1em; +} + +main { + font-size: 0.9em; +} + +section { + max-width: 55rem; + margin-inline: 3rem; +} + +.indented { + margin-inline: 3rem; +} + +h1.with-logo{ + position: relative; + margin-inline-start: 3rem; +} + +h1.with-logo::before { + content: ""; + background: url(apple-touch-icon.png); + width: 1em; + height: 1em; + display: block; + background-size: contain; + position: absolute; + left: -1.5em; + top: 0.05em; + border-radius: 10%; +} + +h2 { + padding-top: 1em; +} + +.header { + display: flex; + flex-direction: row; + flex-wrap: nowrap; + align-items: flex-start; + gap: 1em +} + +.logo { + height: 2.6em; + border-radius: 10%; +} + +.chart-container { + /* Apache eCharts like to have a container that already has a height */ + height: 400px; + width: 100%; +} \ No newline at end of file From patchwork Wed Jan 28 14:02:06 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Alba Herrerias X-Patchwork-Id: 79927 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 42ECAD3F062 for ; Wed, 28 Jan 2026 14:03:03 +0000 (UTC) Received: from mail-wm1-f44.google.com (mail-wm1-f44.google.com [209.85.128.44]) by mx.groups.io with SMTP id smtpd.msgproc01-g2.13579.1769608977014107981 for ; Wed, 28 Jan 2026 06:02:57 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@thehoodiefirm-com.20230601.gappssmtp.com header.s=20230601 header.b=Cm4SCUYr; spf=neutral (domain: thehoodiefirm.com, ip: 209.85.128.44, mailfrom: alba@thehoodiefirm.com) Received: by mail-wm1-f44.google.com with SMTP id 5b1f17b1804b1-4806dffc64cso6331865e9.1 for ; Wed, 28 Jan 2026 06:02:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=thehoodiefirm-com.20230601.gappssmtp.com; s=20230601; t=1769608975; x=1770213775; darn=lists.yoctoproject.org; h=content-transfer-encoding:mime-version:reply-to:references :in-reply-to:message-id:date:subject:cc:to:from:sender:from:to:cc :subject:date:message-id:reply-to; bh=7n+5MzBEcZ0m75jilE+qh+9JOajgYDnZG0GfKz4tvgA=; b=Cm4SCUYrvMU9q03j8EKYvzFpRgq8Zqs3eVYPHSpULB+GFZcRuISjOkXs0qes3gFew8 WoIcfvyotBVFju6WIlhjRUMPHXZ09F+4wsQRDKUYimJ6Uwbhd7sEIzog+gvjPAEIVOyf gpwle7PUxtTOCpfP20grTw6QGYwUa6HUpD2uz7py7CDDQPfNTZFDTmtfS//F6KhV6WOK o946hytdDbVQxNRqawxxvwtDGC+z3Tg91eNmbGbW+rAqt9RTdEisPELvpg6XyZ/scTxE utnf5AEkEp8MSYMEu6r1wNSMUYa4GhXsARY8C8/qoRY5TjMKSlqp3J9wYtrh0Wej/EvU 2zpw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1769608975; x=1770213775; h=content-transfer-encoding:mime-version:reply-to:references :in-reply-to:message-id:date:subject:cc:to:from:sender:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=7n+5MzBEcZ0m75jilE+qh+9JOajgYDnZG0GfKz4tvgA=; b=ER0g+qb0eW5DZPclZP5vs4kRQoytz8ANEfAxTB2cF/eMSDgRwjgt2ccdLeJncFi0j3 8Uy4GVA8zImtUgjo8ZWvqk2aOpvlR5VD79u+mYPGcZNBP+gJ8oqOBp8H21S5Gm1x7zOl sbZkdvM39Czbt6AUg7wnukzSfcZ1d1enKoVcBaPs7VlQhyRTJphvuGogoVY+SyIyzGxM f9AJOc/JteF+yQKiKRY/jwQvhHsPx97Xo+pOczGjbTQHxjYrcRqqWYO0igdqwhkS59YV LAqk6S8yUY2y6CuQg1Y8g61n6UoHJlDbFamThf4eDbXFTJlx/NvtuJEeybbdVBLyCo5f K/sQ== X-Gm-Message-State: AOJu0YwyA2tUMsCkzpMmva3Mf9+TWXrTgm0pTlMZt7WcAnTdS5cCy2jP Y1u0Er7nb+4WRPAPjFWxPYc0AD9HMZZ9Z63jhApIjIA76rjcXy2rrztF1lTM3bv8MUz7xS2J1Ak s68r5sss= X-Gm-Gg: AZuq6aJBlQ/2DMltkcJYWbO3sscJGahd7Nq0sO3Yr85+zou76Dt/5oVVq3uRKuaFHQY BvA8XzQv0AGXGfL7931JoRwhSFV9ZpUPmY7AF6HUoTbXCHI1vghCdSiAe2GdaAb9nwc5MsGAIfi mMHP9C0zY3QG83IgjnArmoWnysHw73o15q4jnv+hLc1DaSpqIkDwdretfC60C1Mvg5yTRVO35sS Ir0JuOo1Zs0BXSykDpcVbFKlpfFKZXYja8aL+yfHphRhT1ZodvQh1V0eymS1ZIECVxD9RUTsBm9 E8mN7kUQWSBBW4ez6gEtXmnelL4LlJs91IUS9MmyyOzUxm3HSqSRDr5+58KS482H3MBDnx1u9kk hYpNseUTFa1xxMT0uOer+lktZhLDhXaopWnpnL2/uNpr+pN/jHvNcqVvnMv24un18HI0DRXJGWq t9oU39ok09e/bL2yyj0GgFVP+GbEbP1tycfNWsgeixbSyEpEvXwcnU2tuEarAQVJki22S7ZKfSb CnOcAsuhPXRO/s= X-Received: by 2002:a05:600c:3113:b0:480:1c75:407c with SMTP id 5b1f17b1804b1-48069bfaaf6mr69391475e9.2.1769608974859; Wed, 28 Jan 2026 06:02:54 -0800 (PST) Received: from localhost.localdomain (253.red-83-57-139.dynamicip.rima-tde.net. [83.57.139.253]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4806cdd78d3sm68522105e9.1.2026.01.28.06.02.53 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Wed, 28 Jan 2026 06:02:54 -0800 (PST) Sender: =?utf-8?q?Alba_Herrer=C3=ADas_Ram=C3=ADrez?= From: Alba Herrerias X-Google-Original-From: Alba Herrerias To: yocto-patches@lists.yoctoproject.org Cc: engineering@neighbourhood.ie, Alex Feyerke Subject: [yocto-autobuilder-helper][PATCH 3/4] dashboard/bugtriage: update to unify styles with CVE/Patch Metrics pages Date: Wed, 28 Jan 2026 14:02:06 +0000 Message-Id: <20260128140207.61443-4-albaherreriasdev@gmail.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20260128140207.61443-1-albaherreriasdev@gmail.com> References: <20260128140207.61443-1-albaherreriasdev@gmail.com> Reply-To: engineering@neighbourhood.ie MIME-Version: 1.0 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Wed, 28 Jan 2026 14:03:03 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/yocto-patches/message/3134 From: Alex Feyerke Replaced Google Material libraries with Pico.css, updated table sorting library. Signed-off-by: Alex Feyerke --- scripts/dashboard/bugtriage/index.html | 588 ++++++++++++------ scripts/dashboard/bugtriage/tablesort.min.js | 6 + .../dashboard/bugtriage/tablesort.number.js | 26 + 3 files changed, 447 insertions(+), 173 deletions(-) create mode 100644 scripts/dashboard/bugtriage/tablesort.min.js create mode 100644 scripts/dashboard/bugtriage/tablesort.number.js diff --git a/scripts/dashboard/bugtriage/index.html b/scripts/dashboard/bugtriage/index.html index 10d998d..82ee3c3 100644 --- a/scripts/dashboard/bugtriage/index.html +++ b/scripts/dashboard/bugtriage/index.html @@ -5,181 +5,414 @@ Bug Triage - - + + + + + - - - - -
-
-

- The outcome of the bug triage meeting should be that all bugs have an - owner, a target milestone, and a priority. -

-

- The meeting is held every Thursday at 07:30 Pacific Time (typically - 15:30 GMT or 16:30 CET, but be aware of daylight saving shifts). The - meeting is held on Zoom, join with either the direct - link or use the Meeting ID 454-367-603 and password - 277925. -

-

- The call facilitator is Stephen Jolley <sjolley.yp.pm@gmail.com>. The - facilitator's job is to ensure the agenda is kept to, without ratholing - on any particular bug, and keeping to the time slot. -

- -
-

Security-related

-

- View security-related bugs in Bugzilla. -

-

- Security issues a need to be viewed directly in Bugzilla as they are - only visible to users with sufficient permissions. -

-
+ tr td:nth-child(2) { + word-break: break-word; + } -
-

Unprioritised refresh

-

- Bugs without a priority, that need a priority, target milestone, and owner assigned. -

-
-
+ #table-of-contents { + position: fixed; + margin: 0.5em 1em; + } -
-

High refresh

-

- All open high-priority bugs. -

-
-
+ #table-of-contents ul { + padding: 0; + margin: 0.5em; + } -
-

Reopened refresh

-

- Bugs that have been reopened. The owner should be reviewed and the bug - moved to another state. -

-
-
+ #table-of-contents li { + list-style: none; + } -
-

Autobuilder Intermittent refresh

-

- Bugs which are tagged as tracking intermittent failures on the - autobuilder. A graphical - view is also available. -

-
-
+ #table-of-contents a { + text-decoration: none; + padding-inline-start: 0.5em; + border-left: 5px solid transparent; + } -
-

Need Info refresh

-

- All bugs that are in the NEEDINFO state, and should be reviewed to - identify if the information has been provided and the bug should be - moved to another state. -

-
-
+ #table-of-contents a.active { + font-weight: bold; + border-left-color: var(--pico-primary); + } -
-

Inactive Bugs refresh

-

- All open bugs that haven't been altered in two years. -

-
-
+ .bug-count { + padding-inline: 0.25em; + } -
-

Inactive Enhancements refresh

-

- All open enhancements that haven't been altered in two years. -

-
-
+ .reload-button { + cursor: pointer; + text-decoration: none; + font-size: 0; + } -
-

Wrong Milestone refresh

-

- All open bugs that are targetted for a milestone in the past: they - should be closed if fixed, or moved to a future milestone. -

-
-
+ .reload-button::after { + content: "↻"; + font-size: 1.25rem; + } -
-

Potential Newcomer refresh

-

- All open bugs which have been tagged as being potentially good for - newcomers to the project who want to make their first contribution. -

-
-
+ [href="#top"] { + cursor: pointer; + text-decoration: none; + font-size: 1em; + padding-inline-end: 1em; + } + + .table-container { + overflow-x: auto; + margin-inline-end: 0; + max-width: calc(100vw - 20rem); + } + + th { + cursor: pointer; + } + + th span { + display: flex; + flex-direction: row; + flex-wrap: nowrap; + align-items: center; + gap: 0.5em; + } + + th span:after { + content: "⏶⏷"; + color: #111; + opacity: 0.25; + } + + @media (prefers-color-scheme: dark) { + th span:after { + color: #EEE; + } + } + + th[aria-sort="ascending"] span:after { + content: "⏶"; + opacity: 1; + } + + th[aria-sort="descending"] span:after { + content: "⏷"; + opacity: 1; + } + + #nav-drawer-open, + #nav-drawer-close { + display: none; + cursor: pointer; + font-size: 2.5rem; + line-height: 0.9em; + } -
-

Needs Testing refresh

-

- All open bugs which have been tagged as needing to be retested. -

-
+ #nav-drawer-open { + margin-inline-end: 0.75em; + } + + #nav-drawer-close { + width: 100%; + text-align: right; + margin-top: 0.35em; + padding-inline-end: 0.4em; + } + + @media (max-width: 1024px) { + body>main { + padding-right: 0; + } + #nav-drawer-open, + #nav-drawer-close { + display: block; + } + .spread { + display: flex; + justify-content: space-between; + position: sticky; + } + body.show-nav .sidebar{ + transform: translateX(0em); + } + .sidebar { + display: block; + position: fixed; + background: white; + height: 100vh; + z-index: 1; + transform: translateX(22em); + width: auto; + transition: all 0.5s; + overflow-y: auto; + } + #table-of-contents { + position: relative; + margin-bottom: 2em; + } + section { + margin-inline: 0; + } + .table-container { + max-width: 95vw; + } + } + + + + +
+
+ +
+
+

Yocto Project Bug Triage

+ +
+
+

+ The outcome of the bug triage meeting should be that all bugs have an + owner, a target milestone, and a priority. +

+

+ The meeting is held every Thursday at 07:30 Pacific Time (typically + 15:30 GMT or 16:30 CET, but be aware of daylight saving shifts). The + meeting is held on Zoom, join with either the direct + link or use the Meeting ID 454-367-603 and password + 277925. +

+

+ The call facilitator is Stephen Jolley <sjolley.yp.pm@gmail.com>. The + facilitator's job is to ensure the agenda is kept to, without ratholing + on any particular bug, and keeping to the time slot. +

+
+
+

Security-related

+

+ View security-related bugs in Bugzilla. +

+

+ Security issues a need to be viewed directly in Bugzilla as they are + only visible to users with sufficient permissions. +

+
+ +
+ + +

UnprioritisedReload Bugs

+
+ Back to top ⏶ +
+

+ Bugs without a priority, that need a priority, target milestone, and owner assigned. +

+
+
+ +
+ + +

HighReload Bugs

+
+ Back to top ⏶ +
+

+ All open high-priority bugs. +

+
+
+ +
+ + +

ReopenedReload Bugs

+
+ Back to top ⏶ +
+

+ Bugs that have been reopened. The owner should be reviewed and the bug + moved to another state. +

+
+
+ +
+ + +

Autobuilder IntermittentReload Bugs

+
+ Back to top ⏶ +
+

+ Bugs which are tagged as tracking intermittent failures on the + autobuilder. A graphical + view is also available. +

+
+
+ +
+ + +

Need InfoReload Bugs

+
+ Back to top ⏶ +
+

+ All bugs that are in the NEEDINFO state, and should be reviewed to + identify if the information has been provided and the bug should be + moved to another state. +

+
+
+ +
+ + +

Inactive BugsReload Bugs

+
+ Back to top ⏶ +
+

+ All open bugs that haven't been altered in two years. +

+
+
+ +
+ + +

Inactive EnhancementsReload Bugs

+
+ Back to top ⏶ +
+

+ All open enhancements that haven't been altered in two years. +

+
+
+ +
+ + +

Wrong MilestoneReload Bugs

+
+ Back to top ⏶ +
+

+ All open bugs that are targetted for a milestone in the past: they + should be closed if fixed, or moved to a future milestone. +

+
+
+ +
+ + +

Potential NewcomerReload Bugs

+
+ Back to top ⏶ +
+

+ All open bugs which have been tagged as being potentially good for + newcomers to the project who want to make their first contribution. +

+
+
+ +
+ + +

Needs TestingReload Bugs

+
+ Back to top ⏶ +
+

+ All open bugs which have been tagged as needing to be retested. +

+
+
- -
-
- + + + + + - - + \ No newline at end of file diff --git a/scripts/dashboard/bugtriage/tablesort.min.js b/scripts/dashboard/bugtriage/tablesort.min.js new file mode 100644 index 0000000..e745bef --- /dev/null +++ b/scripts/dashboard/bugtriage/tablesort.min.js @@ -0,0 +1,6 @@ +/*! + * tablesort v5.7.0 (2025-12-26) + * http://tristen.ca/tablesort/demo/ + * Copyright (c) 2025 ; Licensed MIT +*/ +(()=>{function r(t,e){if(!(this instanceof r))return new r(t,e);if(!t||"TABLE"!==t.tagName)throw new Error("Element must be a table");this.init(t,e||{})}function v(t){var e;return window.CustomEvent&&"function"==typeof window.CustomEvent?e=new CustomEvent(t):(e=document.createEvent("CustomEvent")).initCustomEvent(t,!1,!1,void 0),e}function p(t,e){return e=e.sortAttribute||"data-sort",t.hasAttribute(e)?t.getAttribute(e):t.textContent||t.innerText||""}function A(t,e){return(t=t.trim().toLowerCase())===(e=e.trim().toLowerCase())?0:t