@font-face{font-family:geistSans;src:url(../media/geist_sans-s.p.40fv_8nktjm_5.woff)format("woff");font-display:swap;font-weight:100 900}@font-face{font-family:geistSans Fallback;src:local(Arial);ascent-override:85.83%;descent-override:20.52%;line-gap-override:9.33%;size-adjust:107.19%}.geistsans_53fa6caf-module__yxI-UG__className{font-family:geistSans,geistSans Fallback}.geistsans_53fa6caf-module__yxI-UG__variable{--font-geist-sans:"geistSans", "geistSans Fallback"}
:root{--speed:.25s;--curve:cubic-bezier(0, .55, .45, 1);--background:#fff;--foreground:#171717;--text-opacity:75%;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme]){--background:#000;--foreground:#ededed;--text-opacity:60%;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--background:#000;--foreground:#ededed;--text-opacity:60%;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;text-wrap:pretty;transition:color var(--speed) var(--curve);margin:0;padding:0}html,body{max-width:100vw;overflow-x:hidden}body{color:var(--foreground);background:var(--background);-webkit-font-smoothing:antialiased;transition:background var(--speed) var(--curve), color var(--speed) var(--curve);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}.page{--padding-x:1.618em;--padding-y:1.618em;justify-content:space-between;gap:var(--padding-y);max-width:60rem;min-height:100svh;padding:var(--padding-y) var(--padding-x);font-family:var(--font-geist-sans);flex-direction:column;flex:1;margin:0 auto;display:flex}.header{margin-top:var(--padding-y)}.header h1{margin-bottom:.5rem;font-size:2em;font-weight:600}.header p,.footer{color:color-mix(in srgb, var(--foreground) var(--text-opacity), transparent);font-size:.875em;font-weight:400}.grid{width:100%;padding:calc(var(--padding-y) * .5) 0 calc(var(--padding-y) * 2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.category{min-width:0;padding:var(--padding-y) var(--padding-x);outline:1px solid color-mix(in srgb, var(--foreground) 8%, var(--background));outline-offset:-.5px;flex-direction:column;display:flex}.category[data-wide]{grid-column:span 2;grid-template-columns:subgrid;grid-template-rows:min-content auto;display:grid}.category[data-wide] h2{grid-column:1/-1}.category h2{margin-bottom:calc(var(--padding-y) * .5);font-size:1em;font-weight:500}.column{flex-direction:column;display:flex}.tool{color:color-mix(in srgb, var(--foreground) var(--text-opacity), transparent);-webkit-text-decoration:underline color-mix(in srgb, currentcolor 20%, transparent);text-decoration:underline color-mix(in srgb, currentcolor 20%, transparent);align-self:flex-start;align-items:center;gap:.45rem;padding:.225rem 0;font-size:.875em;font-weight:400;display:flex}.favicon{border-radius:.2rem;flex-shrink:0;width:1rem;height:1rem;position:relative;overflow:hidden}.favicon img,.favicon svg{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.favicon svg{opacity:0;fill:none;stroke:currentColor;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.footer{margin-bottom:var(--padding-y);flex-flow:wrap;justify-content:space-between;gap:1.5rem;display:flex}.copy{flex-wrap:wrap;align-items:center;gap:.5em 1em;display:flex}.copy>*{align-items:center;gap:.35em;display:inline-flex}.curator{-webkit-text-decoration:underline color-mix(in srgb, currentcolor 20%, transparent);text-decoration:underline color-mix(in srgb, currentcolor 20%, transparent);align-items:center;gap:.25em;line-height:1;display:inline-flex}.theme-toggle{border:1px solid color-mix(in srgb, var(--foreground) 14%, transparent);width:2rem;height:2rem;color:inherit;cursor:pointer;background:0 0;border-radius:50%;place-items:center;padding:0;display:grid;position:relative}.theme-toggle svg{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;width:1rem;height:1rem;transition:opacity var(--speed) var(--curve), transform var(--speed) var(--curve);position:absolute}.theme-toggle .sun{opacity:0;transform:scale(.65)rotate(-30deg)}.theme-toggle .moon,:root[data-theme=dark] .theme-toggle .sun{opacity:1;transform:scale(1)rotate(0)}:root[data-theme=dark] .theme-toggle .moon{opacity:0;transform:scale(.65)rotate(30deg)}@media (prefers-color-scheme:dark){:root:not([data-theme]) .theme-toggle .sun{opacity:1;transform:scale(1)rotate(0)}:root:not([data-theme]) .theme-toggle .moon{opacity:0;transform:scale(.65)rotate(30deg)}}@media (hover:hover) and (pointer:fine){.tool:hover,.tool:hover *{transition:none!important}.tool:hover{color:var(--foreground);text-decoration:underline}.tool:hover .favicon img{opacity:0}.tool:hover .favicon svg{opacity:1}.theme-toggle:hover{color:var(--foreground);border-color:color-mix(in srgb, var(--foreground) 30%, transparent)}.curator:hover{color:var(--foreground)}.curator:hover .favicon img{opacity:0}.curator:hover .favicon svg{opacity:1}}@media (pointer:coarse){.tool{min-height:44px}.grid{padding-bottom:var(--padding-y)}.copy>*,.theme-toggle{min-height:44px}.theme-toggle{min-width:44px}.footer{margin-bottom:0}}@media (max-width:32rem){.grid{grid-template-columns:1fr}.category[data-wide]{grid-column:span 1;display:flex}}@media (min-width:32.001rem) and (max-width:48rem){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:480px){.copy,.footer{flex-direction:column;gap:.5em}.copy{align-items:flex-start}}
