@layer theme{:root{--base:oklch(0.55 0.04 257);--light-start:0.995;--light-end:0.1;--chroma-start:0.005;--chroma-end:0.035;--accent:oklch(0.52 0.1 223);--destructive:oklch(0.56 0.19 17);--border-radius:2px;--light-avg:calc((var(--light-start) + var(--light-end)) / 2);--chroma-avg:calc((var(--chroma-start) + var(--chroma-end)) / 2);--chroma-med:calc((var(--chroma-avg) + var(--chroma-end)) / 1.5);--base-50:oklch(from var(--base) var(--light-start) var(--chroma-start) h/alpha);--base-100:oklch(from var(--base) calc(var(--light-avg) + ((var(--light-start) - var(--light-avg)) * 0.95)) calc(var(--chroma-med) + ((var(--chroma-start) - var(--chroma-med)) * 0.86)) h/alpha);--base-200:oklch(from var(--base) calc(var(--light-avg) + ((var(--light-start) - var(--light-avg)) * 0.86)) calc(var(--chroma-med) + ((var(--chroma-start) - var(--chroma-med)) * 0.71)) h/alpha);--base-300:oklch(from var(--base) calc(var(--light-avg) + ((var(--light-start) - var(--light-avg)) * 0.73)) calc(var(--chroma-med) + ((var(--chroma-start) - var(--chroma-med)) * 0.51)) h/alpha);--base-400:oklch(from var(--base) calc(var(--light-avg) + ((var(--light-start) - var(--light-avg)) * 0.39)) calc(var(--chroma-med) + ((var(--chroma-start) - var(--chroma-med)) * 0.29)) h/alpha);--base-500:oklch(from var(--base) var(--light-avg) var(--chroma-med) h/alpha);--base-600:oklch(from var(--base) calc(var(--light-avg) + ((var(--light-end) - var(--light-avg)) * 0.28)) calc(var(--chroma-med) + ((var(--chroma-end) - var(--chroma-med)) * 0.29)) h/alpha);--base-700:oklch(from var(--base) calc(var(--light-avg) + ((var(--light-end) - var(--light-avg)) * 0.45)) calc(var(--chroma-med) + ((var(--chroma-end) - var(--chroma-med)) * 0.51)) h/alpha);--base-800:oklch(from var(--base) calc(var(--light-avg) + ((var(--light-end) - var(--light-avg)) * 0.68)) calc(var(--chroma-med) + ((var(--chroma-end) - var(--chroma-med)) * 0.71)) h/alpha);--base-900:oklch(from var(--base) calc(var(--light-avg) + ((var(--light-end) - var(--light-avg)) * 0.83)) calc(var(--chroma-med) + ((var(--chroma-end) - var(--chroma-med)) * 0.86)) h/alpha);--base-950:oklch(from var(--base) var(--light-end) var(--chroma-end) h/alpha);--background:light-dark(var(--base-50),var(--base-950));--foreground:light-dark(var(--base-800),var(--base-300));--heading-foreground:light-dark(var(--base-900),var(--base-200));--muted-background:light-dark(var(--base-100),var(--base-900));--muted-foreground:light-dark(var(--base-700),var(--base-400));--primary-background:light-dark(var(--base-800),var(--base-100));--primary-foreground:light-dark(var(--base-50),var(--base-900));--secondary-background:light-dark(var(--base-200),var(--base-700));--secondary-foreground:light-dark(var(--base-950),var(--base-100));--accent-background:light-dark(var(--accent),oklch(from var(--accent) calc(var(--light-avg) - 0.1) c h/alpha));--accent-foreground:light-dark(var(--base-50),var(--base-100));--destructive-background:light-dark(var(--destructive),oklch(from var(--destructive) calc(var(--light-avg) - 0.1) c h/alpha));--destructive-foreground:light-dark(var(--base-50),var(--base-100));--border:1px solid light-dark(var(--base-200),var(--base-700));--font-family-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-family-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--size-1:4px;--size-2:8px;--size-3:12px;--size-4:16px;--size-5:24px;--size-6:32px;--size-7:40px;--size-8:48px;--size-9:64px;--size-10:96px;--font-size-1:12px;--font-size-2:14px;--font-size-3:16px;--font-size-4:18px;--font-size-5:20px;--font-size-6:24px;--font-size-7:30px;--font-size-8:36px;--font-size-9:48px;--font-size-10:60px;--letter-spacing-1:0.0025em;--letter-spacing-2:0em;--letter-spacing-3:0em;--letter-spacing-4:-0.0025em;--letter-spacing-5:-0.005em;--letter-spacing-6:-0.00625em;--letter-spacing-7:-0.0075em;--letter-spacing-8:-0.01em;--letter-spacing-9:-0.015em;--letter-spacing-10:-0.025em;--line-height-1:1.33;--line-height-2:1.43;--line-height-3:1.5;--line-height-4:1.56;--line-height-5:1.4;--line-height-6:1.33;--line-height-7:1.2;--line-height-8:1.11;--line-height-9:1;--line-height-10:1}}@layer base{::-webkit-backdrop,::-webkit-file-upload-button{box-sizing:border-box;margin:0;border:0 solid;padding:0;scrollbar-color:light-dark(var(--base-300),var(--base-700)) var(--muted-background);caret-color:var(--foreground)}*,::backdrop,::file-selector-button,:after,:before{box-sizing:border-box;margin:0;border:0 solid;padding:0;scrollbar-color:light-dark(var(--base-300),var(--base-700)) var(--muted-background);caret-color:var(--foreground)}:focus-visible{outline:var(--primary-background) solid 1px;outline-offset:1px}::selection{background-color:var(--primary-background);color:var(--primary-foreground)}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}::-webkit-search-decoration{-webkit-appearance:none}:host,html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;background-color:var(--background);color:var(--foreground);color-scheme:light dark;font-size:var(--font-size-3);line-height:var(--line-height-3);font-family:var(--font-family-sans);letter-spacing:var(--letter-spacing-3);-moz-tab-size:4;tab-size:4;@media (prefers-reduced-motion:no-preference){scroll-behavior:smooth}}hr{-webkit-border-before:var(--border);border-block-start:var(--border);height:0;color:inherit}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;vertical-align:baseline;font-size:75%;line-height:0}sub{inset-block-end:-.25em}sup{inset-block-start:-.5em}table{border-color:inherit;border-collapse:collapse;width:100%;text-indent:0;thead{-webkit-border-after:var(--border);border-block-end:var(--border);th{color:var(--heading-foreground);font-weight:600}}tbody{tr{-webkit-border-after:var(--border);border-block-end:var(--border);&:last-of-type{border:0}}}tfoot{-webkit-border-before:var(--border);border-block-start:var(--border)}td,th{padding:var(--size-2);text-align:start;&:first-of-type{-webkit-padding-start:0;padding-inline-start:0}&:last-of-type{-webkit-padding-end:0;padding-inline-end:0}}}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{display:block;border-radius:var(--border-radius)}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}button:not([type=reset],[type=button]){cursor:pointer}.button,button,input:where([type=button],[type=reset],[type=submit]){display:flex;justify-content:center;align-items:center;-webkit-appearance:button;-moz-appearance:button;appearance:button;border-radius:var(--border-radius);background-color:var(--primary-background);padding:var(--size-3) var(--size-4);height:var(--size-7);color:var(--primary-foreground);font-size:var(--font-size-2);line-height:var(--line-height-2);font-family:inherit;letter-spacing:var(--letter-spacing-2);text-decoration:none;&:disabled{opacity:50%;pointer-events:none}&.secondary{background-color:var(--secondary-background);color:var(--secondary-foreground)}&.accent{background-color:var(--accent-background);color:var(--accent-foreground)}&.destructive{background-color:var(--destructive-background);color:var(--destructive-foreground)}&.ghost{background-color:transparent}&.ghost,&.outline{color:var(--foreground)}&.outline{border:var(--border);background-color:var(--background)}&.icon{padding:var(--size-2);width:var(--size-7)}@media (hover:hover){&:hover{opacity:90%}&.ghost:hover,&.outline:hover{background-color:var(--muted-background)}}}.input,input:where(:not([type=button],[type=reset],[type=submit])),select,textarea{border:0;border-radius:var(--border-radius);background-color:var(--background);width:100%;height:var(--size-7);color:var(--foreground);accent-color:var(--accent-background);font-size:var(--font-size-3);line-height:var(--line-height-3);font-family:inherit;letter-spacing:var(--letter-spacing-3);&:not([switch]){display:flex;border:var(--border);padding:var(--size-2) var(--size-3)}&[multiple]{padding:var(--size-2)}&:not([type=checkbox],[type=radio]){appearance:none;-webkit-appearance:none;-moz-appearance:none}&::placeholder{color:color-mix(in oklch,currentColor 50%,transparent)}&:disabled{opacity:.5;cursor:not-allowed}&[type=checkbox],&[type=radio]{width:17px;height:17px}&[type=color]{border:0;background-color:transparent;padding:0;width:var(--size-7);height:var(--size-7);&::-webkit-color-swatch-wrapper{padding:0}&::-webkit-color-swatch{border:var(--border);border-radius:var(--size-9)}&::-moz-color-swatch,&::-moz-focus-inner{border:var(--border);border-radius:var(--size-9)}&::-moz-focus-inner{padding:0}}&[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;padding-inline:0;&::-webkit-slider-runnable-track{border-radius:var(--size-9);background-color:light-dark(var(--base-300),var(--base-700));height:var(--size-2)}&::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;-webkit-margin-before:-4px;margin-block-start:-4px;box-shadow:none;border-radius:var(--size-9);background-color:var(--foreground);width:var(--size-4);height:var(--size-4)}&::-moz-range-track{border-radius:var(--size-9);background-color:light-dark(var(--base-300),var(--base-700));height:var(--size-2)}&::-moz-range-thumb{border:0;border-radius:var(--size-9);background-color:var(--foreground);width:var(--size-4);height:var(--size-4)}}&::-webkit-file-upload-button{background-color:transparent;-webkit-padding-end:var(--size-2);padding-inline-end:var(--size-2);color:inherit;font:inherit;font-weight:600}&::file-selector-button{background-color:transparent;-webkit-padding-end:var(--size-2);padding-inline-end:var(--size-2);color:inherit;font:inherit;font-weight:600}}select{option{display:flex;align-items:center;border-radius:var(--border-radius);padding-inline:var(--size-2);padding-block:var(--size-1);height:var(--size-6);&:not(:last-child){-webkit-margin-after:var(--size-1);margin-block-end:var(--size-1)}&:hover{background-color:var(--muted-background)}&:checked{background-color:var(--muted-foreground);color:var(--background)}}&:not([multiple]){background-image:linear-gradient(45deg,transparent 50%,currentColor 0),linear-gradient(135deg,currentColor 50%,transparent 0);background-position:calc(100% - 20px) calc(1px + 50%),calc(100% - 16.1px) calc(1px + 50%);background-size:4px 4px,4px 4px;background-repeat:no-repeat;-webkit-padding-end:var(--size-6);padding-inline-end:var(--size-6)}}select[multiple],textarea{height:var(--size-10);min-height:var(--size-7);resize:vertical}.label,label{display:inline-block;margin-block:var(--size-1);font-weight:500;font-size:var(--font-size-2);line-height:var(--line-height-2);letter-spacing:var(--letter-spacing-2)}.badge{display:flex;justify-content:center;align-items:center;cursor:default;border-radius:var(--border-radius);background-color:var(--primary-background);padding:var(--size-1) var(--size-2);height:var(--size-5);color:var(--primary-foreground);font-size:var(--font-size-1);line-height:var(--line-height-1);letter-spacing:var(--letter-spacing-1);&.secondary{background-color:var(--secondary-background);color:var(--secondary-foreground)}&.accent{background-color:var(--accent-background);color:var(--accent-foreground)}&.destructive{background-color:var(--destructive-background);color:var(--destructive-foreground)}&.ghost{background-color:transparent}&.ghost,&.outline{color:var(--foreground)}&.outline{border:var(--border);background-color:var(--background)}}.link,a{cursor:pointer;color:var(--primary-background);text-decoration:underline;text-underline-offset:2px}code,kbd,pre,samp{font-family:var(--font-family-mono)}pre{margin:0;background-color:var(--base-900);padding:var(--size-4);overflow-x:auto;scrollbar-color:var(--base-700) var(--base-900);color:light-dark(var(--base-100),var(--base-200));font-size:var(--font-size-2);line-height:var(--line-height-3);letter-spacing:var(--letter-spacing-1)}code:not(pre code),pre{border-radius:var(--border-radius)}code:not(pre code){background-color:var(--muted-background);padding:2px var(--size-1);color:var(--heading-foreground);font-size:.9em}h1,h2,h3,h4,h5,h6{color:var(--heading-foreground);word-break:break-word;a{color:var(--heading-foreground);text-decoration:none}}h1{font-size:var(--font-size-9);line-height:var(--line-height-9);letter-spacing:var(--letter-spacing-9);text-wrap:balance;@media (min-width:640px){font-size:var(--font-size-10);line-height:var(--line-height-10);letter-spacing:var(--letter-spacing-10)}}h2{font-size:var(--font-size-8);line-height:var(--line-height-8);letter-spacing:var(--letter-spacing-8)}h3{font-size:var(--font-size-7);line-height:var(--line-height-7);letter-spacing:var(--letter-spacing-7)}h4{font-size:var(--font-size-6);line-height:var(--line-height-6);letter-spacing:var(--letter-spacing-6)}h5{font-size:var(--font-size-5);line-height:var(--line-height-5);letter-spacing:var(--letter-spacing-5)}h6{font-size:var(--font-size-4);line-height:var(--line-height-4);letter-spacing:var(--letter-spacing-4)}.prose{h1,section{-webkit-margin-after:var(--size-6);margin-block-end:var(--size-6)}h2{margin-block:var(--size-8) var(--size-5)}h3{margin-block:var(--size-7) var(--size-4)}h4{margin-block:var(--size-6) var(--size-3)}h5{margin-block:var(--size-5) var(--size-2)}dt,h6{margin-block:var(--size-4) var(--size-1)}:is(h1,h2,h3,h4,h5,h6)+:is(h1,h2,h3,h4,h5,h6){-webkit-margin-before:0;margin-block-start:0}dt{font-weight:600}blockquote,dl,ol,p,table,ul{&:not(li>&){-webkit-margin-after:var(--size-4);margin-block-end:var(--size-4)}}hr,iframe,img,pre,video{margin-block:var(--size-5)}blockquote,dd{padding-inline:var(--size-5)}blockquote{font-style:italic}blockquote,dd,li,p{text-wrap:pretty}ol,ul{-webkit-padding-start:var(--size-5);padding-inline-start:var(--size-5)}ul{list-style-type:disc}ol{list-style:decimal}li{margin-block:var(--size-1);-webkit-padding-start:var(--size-1);padding-inline-start:var(--size-1);&::marker{color:var(--muted-foreground)}}}}@layer base{::view-transition-group(*){animation-duration:.4s}@media (prefers-reduced-motion){::view-transition-group(*){animation-duration:0s}}:root{--base:rgb(75,76,100);--light-end:0.1;--accent:var(--base-950)}body{margin-inline:auto;padding:var(--size-6);max-width:105ch;font-family:Seravek,Gill Sans Nova,Ubuntu,Calibri,DejaVu Sans,source-sans-pro,sans-serif}}@layer components{#readme{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));grid-gap:var(--size-4);gap:var(--size-4);@media (min-width:1024px){grid-template-columns:repeat(3,minmax(0,1fr))}>:first-child{display:flex;flex-direction:column;justify-content:center;@media (min-width:1024px){grid-column:span 2/span 2}}}#projects{#features{display:flex;gap:var(--size-4);*{text-transform:capitalize}}#project-grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));grid-gap:var(--size-4);gap:var(--size-4);padding-block:var(--size-4);@media (min-width:540px){grid-template-columns:repeat(2,minmax(0,1fr))}@media (min-width:768px){grid-template-columns:repeat(3,minmax(0,1fr))}>*{display:flex;flex-direction:column;justify-content:space-between;gap:var(--size-1);border:var(--border);border-radius:var(--border-radius);background-color:var(--muted-background);padding:var(--size-4)}:last-child{display:flex;justify-content:space-between;gap:var(--size-4);.star-count{display:flex;align-items:center;gap:var(--size-2)}}h3{margin-block:0 var(--size-1);font-size:var(--font-size-5);line-height:var(--line-height-5);letter-spacing:var(--letter-spacing-5)}}}drab-share{display:contents;[data-swap]{display:none}button{margin-block:var(--size-6)}}}