@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:400;src:url(../fonts/Roboto-Regular.ttf) format("truetype")}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:700;src:url(../fonts/Roboto-Bold.ttf) format("truetype")}*,:after,:before{cursor:inherit}body,html{cursor:url(../cursors/left_ptr.png) 2 2,default}.cursor-default,:where([style*="cursor: default"]){cursor:url(../cursors/left_ptr.png) 2 2,default!important}.cursor-pointer,[role=button],[style*="cursor: pointer"],a,button,label[for],select,summary{cursor:url(../cursors/hand2.png) 8 2,pointer!important}.cursor-text,[contenteditable=true],[style*="cursor: text"],input:not([type=button]):not([type=submit]):not([type=reset]):not([type=checkbox]):not([type=radio]):not([type=file]):not([type=color]):not([type=range]),textarea{cursor:url(../cursors/xterm.png) 8 8,text!important}.cursor-not-allowed,.disabled,[aria-disabled=true],[disabled],[style*="cursor: not-allowed"],button[disabled]{cursor:url(../cursors/crossed_circle.png) 8 8,not-allowed!important}.cursor-help,[style*="cursor: help"]{cursor:url(../cursors/question_arrow.png) 2 2,help!important}.cursor-crosshair,[style*="cursor: crosshair"]{cursor:url(../cursors/crosshair.png) 8 8,crosshair!important}.cursor-all-scroll,.cursor-move,[style*="cursor: all-scroll"],[style*="cursor: move"]{cursor:url(../cursors/move.png) 12 12,move!important}.cursor-grab,[style*="cursor: grab"]{cursor:url(../cursors/hand1.png) 12 12,grab!important}.cursor-grabbing,[style*="cursor: grabbing"]{cursor:url(../cursors/grabbing.png) 12 12,grabbing!important}.cursor-progress,.cursor-wait,[aria-busy=true],[style*="cursor: progress"],[style*="cursor: wait"]{cursor:url(../cursors/left_ptr.png) 2 2,wait!important}.cursor-context-menu,[style*="cursor: context-menu"]{cursor:url(../cursors/context-menu.png) 2 2,context-menu!important}.cursor-copy,[style*="cursor: copy"]{cursor:url(../cursors/copy.png) 2 2,copy!important}.cursor-alias,[style*="cursor: alias"]{cursor:url(../cursors/link.png) 2 2,alias!important}.cursor-no-drop,[style*="cursor: no-drop"]{cursor:url(../cursors/dnd_no_drop.png) 12 12,no-drop!important}.cursor-cell,[style*="cursor: cell"]{cursor:url(../cursors/plus.png) 12 12,cell!important}.cursor-vertical-text,[style*="cursor: vertical-text"]{cursor:url(../cursors/vertical-text.png) 12 12,vertical-text!important}.cursor-zoom-in{cursor:url(../cursors/circle.png) 12 12,zoom-in!important}.cursor-zoom-out{cursor:url(../cursors/circle.png) 12 12,zoom-out!important}.cursor-n-resize,[style*="cursor: n-resize"]{cursor:url(../cursors/top_side.png) 12 2,n-resize!important}.cursor-s-resize,[style*="cursor: s-resize"]{cursor:url(../cursors/bottom_side.png) 12 22,s-resize!important}.cursor-e-resize,[style*="cursor: e-resize"]{cursor:url(../cursors/right_side.png) 22 12,e-resize!important}.cursor-w-resize,[style*="cursor: w-resize"]{cursor:url(../cursors/left_side.png) 2 12,w-resize!important}.cursor-ne-resize,[style*="cursor: ne-resize"]{cursor:url(../cursors/top_right_corner.png) 22 2,ne-resize!important}.cursor-nw-resize,[style*="cursor: nw-resize"]{cursor:url(../cursors/top_left_corner.png) 2 2,nw-resize!important}.cursor-se-resize,[style*="cursor: se-resize"]{cursor:url(../cursors/bottom_right_corner.png) 22 22,se-resize!important}.cursor-sw-resize,[style*="cursor: sw-resize"]{cursor:url(../cursors/bottom_left_corner.png) 2 22,sw-resize!important}.cursor-ns-resize,.cursor-row-resize,[style*="cursor: ns-resize"],[style*="cursor: row-resize"]{cursor:url(../cursors/sb_v_double_arrow.png) 12 12,ns-resize!important}.cursor-col-resize,.cursor-ew-resize,[style*="cursor: col-resize"],[style*="cursor: ew-resize"]{cursor:url(../cursors/sb_h_double_arrow.png) 12 12,ew-resize!important}.cursor-nesw-resize,[style*="cursor: nesw-resize"]{cursor:url(../cursors/fd_double_arrow.png) 12 12,nesw-resize!important}.cursor-nwse-resize,[style*="cursor: nwse-resize"]{cursor:url(../cursors/bd_double_arrow.png) 12 12,nwse-resize!important}@font-face{font-display:swap;font-family:Cozette;font-style:normal;font-weight:400;src:url(../fonts/CozetteVector.woff2) format("woff2")}@font-face{font-display:swap;font-family:Cozette;font-style:normal;font-weight:700;src:url(../fonts/CozetteVectorBold.woff2) format("woff2")}:root{--color-primary:#3b82f6;--color-primary-hover:#2563eb;--color-secondary:#8b5cf6;--color-secondary-hover:#7c3aed;--color-background:#fff;--color-surface:#f9fafb;--color-border:#e5e7eb;--color-text-primary:#111827;--color-text-secondary:#6b7280;--color-text-tertiary:#9ca3af;--color-success:#10b981;--color-warning:#f59e0b;--color-error:#ef4444;--color-info:#3b82f6;--font-mono:"Cozette","Courier New",Courier,"Lucida Console",Monaco,monospace;--font-display:"Cozette","Courier New",Courier,monospace;--spacing-xs:.25rem;--spacing-sm:.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--radius-sm:.25rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-full:9999px;--shadow-sm:0 1px 2px 0 rgba(0,0,0,.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,.1);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.1);--shadow-xl:0 20px 25px -5px rgba(0,0,0,.5);--transition-fast:.15s ease-in-out;--transition-base:.2s ease-in-out;--transition-slow:.3s ease-in-out;--expo-out:cubic-bezier(.16,1,.3,1)}[data-theme=dark]{--color-primary:#60a5fa;--color-primary-hover:#3b82f6;--color-secondary:#a78bfa;--color-secondary-hover:#8b5cf6;--color-background:#000;--color-surface:#0a0a0a;--color-border:#1a1a1a;--color-text-primary:#fff;--color-text-secondary:#a3a3a3;--color-text-tertiary:#737373;--color-success:#34d399;--color-warning:#fbbf24;--color-error:#f87171;--color-info:#60a5fa;--shadow-sm:0 1px 2px 0 rgba(0,0,0,.3);--shadow-md:0 4px 6px -1px rgba(0,0,0,.4);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.4);--shadow-xl:0 20px 25px -5px rgba(0,0,0,.5)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--color-background);color:var(--color-text-primary);font-family:Cozette,Courier New,Courier,monospace;font-size:20px;font-weight:400;image-rendering:pixelated;-webkit-font-smoothing:none;-moz-osx-font-smoothing:unset;font-smooth:never;overflow-x:hidden;transition:background-color var(--transition-base),color var(--transition-base)}h1,h2,h3,h4,h5,h6{font-weight:700}body.linux-os-active{overflow:hidden}body.linux-os-active .back-to-top,body.linux-os-active .click-spark-canvas,body.linux-os-active .language-switcher,body.linux-os-active .navbar,body.linux-os-active .pattern-bg,body.linux-os-active .theme-toggle{display:none!important}.container{margin:0 auto;max-width:1280px;padding:0 var(--spacing-md);width:100%}.surface{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-tertiary{color:var(--color-text-tertiary)}:root{--click-x:50%;--click-y:50%}::view-transition-group(root){animation-timing-function:var(--expo-out)}::view-transition-new(root){animation:scale 1s;animation-fill-mode:both;clip-path:circle(0 at var(--click-x) var(--click-y));filter:blur(20px)}.dark::view-transition-old(root),::view-transition-old(root){animation:none;z-index:-1}@keyframes scale{to{clip-path:circle(150vmax at var(--click-x) var(--click-y));filter:blur(0)}}.txtanim{--link-color:#a5a5a5;--hovered-link-color:hsla(0,0%,65%,.8);--link-color-web:rgba(12,122,122,.6);--hovered-link-color-web:#0c7a7a;--link-color-linux:rgba(0,64,255,.6);--hovered-link-color-linux:#0040ff;--hovered-link-color-js:#0040ff;--link-color-edu:rgba(95,84,0,.6);--hovered-link-color-edu:#5f5400;--link-color-rust:rgba(229,55,23,.6);--hovered-link-color-rust:#e53717;--link-color-react:rgba(97,219,251,.6);--hovered-link-color-react:#61dbfb;--color-vue:rgba(0,232,128,.6);--color-vue-hover:#00e880;--link-color-py:rgba(0,13,255,.6);--hovered-link-color-py:#000dff;--link-color-cpp:rgba(0,89,157,.6);--hovered-link-color-cpp:#00599d;--link-color-js:rgba(240,220,78,.6);--hovered-link-color-js:#f0dc4e;--link-color-projects:rgba(0,200,0,.6);--hovered-link-color-projects:#00c800;--time:.4s;--bg-small-size:4px;--padding-top:2px;--padding-sides:2px;--padding-bottom:1px;background-color:transparent;color:var(--color-text-primary);text-decoration:none;transition:color .2s ease 0s}.link-color{background-image:linear-gradient(transparent 0,transparent calc(50% - var(--bg-small-size)),var(--link-color) calc(50% - var(--bg-small-size)),var(--link-color) 100%);background-position:0 0;background-size:100% 200%;cursor:pointer;padding:var(--padding-top) var(--padding-sides) var(--padding-bottom);transition:background-size,background-position var(--time) ease-in-out 0s;word-break:break-word}.link-color:hover,.link-static{background-image:linear-gradient(transparent 0,transparent calc(50% - var(--bg-small-size)),var(--hovered-link-color) calc(50% - var(--bg-small-size)),var(--hovered-link-color) 100%);background-position:0 100%}.link-static{cursor:default}.link-color-linux,.link-static{padding:var(--padding-top) var(--padding-sides) var(--padding-bottom)}.link-color-linux{background-image:linear-gradient(transparent 0,transparent calc(50% - var(--bg-small-size)),var(--link-color-linux) calc(50% - var(--bg-small-size)),var(--link-color-linux) 100%);background-position:0 0;background-size:100% 200%;cursor:pointer;transition:background-size,background-position var(--time) ease-in-out 0s;word-break:break-word}.link-color-linux:hover,.link-static-linux{background-image:linear-gradient(transparent 0,transparent calc(50% - var(--bg-small-size)),var(--hovered-link-color-linux) calc(50% - var(--bg-small-size)),var(--hovered-link-color-linux) 100%);background-position:0 100%}.link-static-linux{cursor:default}.link-color-web{background-image:linear-gradient(transparent 0,transparent calc(50% - var(--bg-small-size)),var(--link-color-web) calc(50% - var(--bg-small-size)),var(--link-color-web) 100%);background-position:0 0;background-size:100% 200%;cursor:pointer;padding:var(--padding-top) var(--padding-sides) var(--padding-bottom);transition:background-size,background-position var(--time) ease-in-out 0s;word-break:break-word}.link-color-web:hover,.link-static-web{background-image:linear-gradient(transparent 0,transparent calc(50% - var(--bg-small-size)),var(--hovered-link-color-web) calc(50% - var(--bg-small-size)),var(--hovered-link-color-web) 100%);background-position:0 100%}.link-static-web{cursor:default}.link-color-js{background-image:linear-gradient(transparent 0,transparent calc(50% - var(--bg-small-size)),var(--link-color-js) calc(50% - var(--bg-small-size)),var(--link-color-js) 100%);background-position:0 0;background-size:100% 200%;cursor:pointer;padding:var(--padding-top) var(--padding-sides) var(--padding-bottom);transition:background-size,background-position var(--time) ease-in-out 0s;word-break:break-word}.link-color-js:hover,.link-static-js{background-image:linear-gradient(transparent 0,transparent calc(50% - var(--bg-small-size)),var(--hovered-link-color-js) calc(50% - var(--bg-small-size)),var(--hovered-link-color-js) 100%);background-position:0 100%}.link-static-js{cursor:default}.link-color-edu{background-image:linear-gradient(transparent 0,transparent calc(50% - var(--bg-small-size)),var(--link-color-edu) calc(50% - var(--bg-small-size)),var(--link-color-edu) 100%);background-position:0 0;background-size:100% 200%;cursor:pointer;padding:var(--padding-top) var(--padding-sides) var(--padding-bottom);transition:background-size,background-position var(--time) ease-in-out 0s;word-break:break-word}.link-color-edu:hover,.link-static-edu{background-image:linear-gradient(transparent 0,transparent calc(50% - var(--bg-small-size)),var(--hovered-link-color-edu) calc(50% - var(--bg-small-size)),var(--hovered-link-color-edu) 100%);background-position:0 100%}.link-static-edu{cursor:default}.link-color-rust{background-image:linear-gradient(transparent 0,transparent calc(50% - var(--bg-small-size)),var(--link-color-rust) calc(50% - var(--bg-small-size)),var(--link-color-rust) 100%);background-position:0 0;background-size:100% 200%;cursor:pointer;padding:var(--padding-top) var(--padding-sides) var(--padding-bottom);transition:background-size,background-position var(--time) ease-in-out 0s;word-break:break-word}.link-color-rust:hover,.link-static-rust{background-image:linear-gradient(transparent 0,transparent calc(50% - var(--bg-small-size)),var(--hovered-link-color-rust) calc(50% - var(--bg-small-size)),var(--hovered-link-color-rust) 100%);background-position:0 100%}.link-static-rust{cursor:default}.link-color-react{background-image:linear-gradient(transparent 0,transparent calc(50% - var(--bg-small-size)),var(--link-color-react) calc(50% - var(--bg-small-size)),var(--link-color-react) 100%);background-position:0 0;background-size:100% 200%;cursor:pointer;padding:var(--padding-top) var(--padding-sides) var(--padding-bottom);transition:background-size,background-position var(--time) ease-in-out 0s;word-break:break-word}.link-color-react:hover,.link-static-react{background-image:linear-gradient(transparent 0,transparent calc(50% - var(--bg-small-size)),var(--hovered-link-color-react) calc(50% - var(--bg-small-size)),var(--hovered-link-color-react) 100%);background-position:0 100%}.link-static-react{cursor:default}.link-color-vue{background-image:linear-gradient(transparent 0,transparent calc(50% - var(--bg-small-size)),var(--color-vue) calc(50% - var(--bg-small-size)),var(--color-vue) 100%);background-position:0 0;background-size:100% 200%;cursor:pointer;padding:var(--padding-top) var(--padding-sides) var(--padding-bottom);transition:background-size,background-position var(--time) ease-in-out 0s;word-break:break-word}.link-color-vue:hover,.link-static-vue{background-image:linear-gradient(transparent 0,transparent calc(50% - var(--bg-small-size)),var(--color-vue-hover) calc(50% - var(--bg-small-size)),var(--color-vue-hover) 100%);background-position:0 100%}.link-static-vue{cursor:default}.link-color-py{background-image:linear-gradient(transparent 0,transparent calc(50% - var(--bg-small-size)),var(--link-color-py) calc(50% - var(--bg-small-size)),var(--link-color-py) 100%);background-position:0 0;background-size:100% 200%;cursor:pointer;padding:var(--padding-top) var(--padding-sides) var(--padding-bottom);transition:background-size,background-position var(--time) ease-in-out 0s;word-break:break-word}.link-color-py:hover,.link-static-py{background-image:linear-gradient(transparent 0,transparent calc(50% - var(--bg-small-size)),var(--hovered-link-color-py) calc(50% - var(--bg-small-size)),var(--hovered-link-color-py) 100%);background-position:0 100%}.link-static-py{cursor:default}.link-color-cpp{background-image:linear-gradient(transparent 0,transparent calc(50% - var(--bg-small-size)),var(--link-color-cpp) calc(50% - var(--bg-small-size)),var(--link-color-cpp) 100%);background-position:0 0;background-size:100% 200%;cursor:pointer;padding:var(--padding-top) var(--padding-sides) var(--padding-bottom);transition:background-size,background-position var(--time) ease-in-out 0s;word-break:break-word}.link-color-cpp:hover,.link-static-cpp{background-image:linear-gradient(transparent 0,transparent calc(50% - var(--bg-small-size)),var(--hovered-link-color-cpp) calc(50% - var(--bg-small-size)),var(--hovered-link-color-cpp) 100%);background-position:0 100%}.link-static-cpp{cursor:default}.link-color-projects{background-image:linear-gradient(transparent 0,transparent calc(50% - var(--bg-small-size)),var(--link-color-projects) calc(50% - var(--bg-small-size)),var(--link-color-projects) 100%);background-position:0 0;background-size:100% 200%;cursor:pointer;padding:var(--padding-top) var(--padding-sides) var(--padding-bottom);transition:background-size,background-position var(--time) ease-in-out 0s;word-break:break-word}.link-color-projects:hover,.link-static-projects{background-image:linear-gradient(transparent 0,transparent calc(50% - var(--bg-small-size)),var(--hovered-link-color-projects) calc(50% - var(--bg-small-size)),var(--hovered-link-color-projects) 100%);background-position:0 100%}.link-static-projects{cursor:default}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border-width:0;white-space:nowrap}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:var(--color-background)}::-webkit-scrollbar-thumb{background:var(--color-text-primary);border:2px solid var(--color-background);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}::-webkit-scrollbar-corner{background:var(--color-background)}.resume-section>div>p>span.inline-block,.resume-section>p>span.inline-block{backdrop-filter:blur(10px) saturate(1.2);-webkit-backdrop-filter:blur(10px) saturate(1.2);background:color-mix(in srgb,var(--color-background) 62%,transparent);box-decoration-break:clone;-webkit-box-decoration-break:clone;padding:2px 6px}:root{--s-accent:var(--project-color,var(--color-primary));--s-line-height:1.5;--s-fg:var(--color-text-primary);--s-fg-muted:var(--color-text-secondary);--s-fg-dim:var(--color-text-tertiary);--s-bg:var(--color-background);--s-bg-hover:color-mix(in srgb,var(--s-fg) 8%,transparent);--s-border:var(--color-border);--s-border-strong:color-mix(in srgb,var(--s-fg) 60%,transparent)}.s-card{color:var(--s-fg);display:block;font-family:var(--font-mono);max-width:100%;min-width:0;position:relative;white-space:normal}.s-card__header{align-items:center;display:flex;justify-content:space-between;min-width:0;width:100%}.s-card__seg-corner-l,.s-card__seg-corner-r,.s-card__seg-left,.s-card__seg-mid,.s-card__seg-right{align-self:stretch;padding:0;position:relative}.s-card__seg-corner-l:before,.s-card__seg-corner-r:before,.s-card__seg-left:before,.s-card__seg-mid:before,.s-card__seg-right:before{background:var(--s-border-strong);content:"";height:2px;left:0;position:absolute;right:0;top:50%;transform:translateY(-50%)}.s-card__seg-corner-l:after,.s-card__seg-left:after{background:var(--s-border-strong);bottom:0;content:"";left:0;position:absolute;top:50%;width:2px}.s-card__seg-corner-r:after,.s-card__seg-right:after{background:var(--s-border-strong);bottom:0;content:"";position:absolute;right:0;top:50%;width:2px}.s-card__seg-left,.s-card__seg-right{min-width:10%;width:100%}.s-card__seg-corner-l,.s-card__seg-corner-r{flex-shrink:0;min-width:1ch}.s-card__seg-mid{flex:1;min-width:2ch}.s-card__title{all:unset;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;color:var(--s-accent);font-family:var(--font-mono);font-weight:700;line-height:1.2;margin:0;max-width:100%;overflow:hidden;overflow-wrap:break-word;text-transform:lowercase}.s-card__actions,.s-card__title{background:var(--s-bg);flex-shrink:1;font-size:1em;min-width:0;padding:.25em 1ch;z-index:1}.s-card__actions{line-height:1;max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-card__actions a{color:var(--s-fg-muted);text-decoration:none;transition:color .15s}.s-card__actions a:hover{color:var(--s-accent)}.s-card__body{box-shadow:inset 2px 0 0 0 var(--s-border-strong),inset -2px 0 0 0 var(--s-border-strong),inset 0 -2px 0 0 var(--s-border-strong);display:block;min-width:0;overflow:visible;padding:.75em 2ch 1em;word-wrap:break-word;overflow-wrap:break-word}.s-card__body>*{max-width:100%}.s-card__body pre,.s-card__body table{max-width:100%;overflow-x:auto}.s-card__body::-webkit-scrollbar{display:none}.s-divider{background:var(--s-border-strong);border:none;flex-shrink:0}.s-divider--horizontal{height:1px;margin:1lh 0;width:100%}.s-divider--vertical{align-self:stretch;height:100%;margin:0 2ch;width:1px}.s-divider--dashed.s-divider--horizontal{background:transparent;border-top:1px dashed var(--s-border-strong);height:0}.s-badge{background:var(--s-border);color:var(--s-fg);display:inline-block;font-family:var(--font-mono);font-size:.85em;font-weight:400;line-height:1.4;padding:0 1ch;text-align:center;text-transform:uppercase;vertical-align:top;white-space:nowrap}.s-badge--accent{color:var(--s-accent)}.s-badge--success{color:var(--color-success)}.s-badge--warning{color:var(--color-warning)}.s-badge--error{color:var(--color-error)}.s-badge--info{color:var(--color-info)}.s-badge--solid,.s-button{background:var(--s-accent);color:var(--s-bg)}.s-button{align-items:center;border:0;cursor:pointer;display:inline-flex;font-family:var(--font-mono);font-size:1em;font-weight:400;justify-content:center;letter-spacing:.04em;line-height:1;margin:0;min-height:2.4em;outline:0;padding:0 1.5ch;text-transform:uppercase;transition:all .15s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.s-button:hover{filter:brightness(1.15)}.s-button:active{transform:translateY(1px)}.s-button:focus-visible{outline:2px solid var(--s-accent);outline-offset:2px}.s-button[aria-disabled=true],.s-button[disabled]{cursor:not-allowed;opacity:.5;pointer-events:none}.s-button--ghost{background:transparent;box-shadow:inset 0 0 0 2px var(--s-border-strong);color:var(--s-fg)}.s-button--ghost:hover{background:var(--s-bg-hover);box-shadow:inset 0 0 0 2px var(--s-accent);color:var(--s-accent)}.s-button--link{background:transparent;color:var(--s-accent);letter-spacing:0;min-height:auto;padding:0;text-transform:none}.s-button--link:hover{text-decoration:underline}.s-code{background:color-mix(in srgb,var(--s-accent) 14%,transparent);color:var(--s-accent);display:inline;font-family:var(--font-mono);font-size:.92em;padding:.05em .5ch;vertical-align:baseline;white-space:nowrap}.s-code--subtle{background:transparent;color:var(--s-fg-muted)}.s-code--kbd{background:var(--color-surface);border:solid var(--s-border);border-width:1px 1px 2px;color:var(--s-fg);display:inline-block;font-size:.82em;padding:.1em .6ch}.s-code-block{background:var(--s-bg);color:var(--s-fg);display:block;font-family:var(--font-mono);font-size:.95em;line-height:var(--s-line-height);margin:0;position:relative}.s-code-block__toolbar{align-items:center;background:color-mix(in srgb,var(--s-accent) 18%,transparent);box-shadow:inset 2px 0 0 0 var(--s-border-strong),inset -2px 0 0 0 var(--s-border-strong),inset 0 2px 0 0 var(--s-border-strong);display:flex;gap:2ch;justify-content:space-between;padding:.25em 2ch}.s-code-block__lang{color:var(--s-accent)}.s-code-block__copy,.s-code-block__lang{font-size:.85em;letter-spacing:.05em;text-transform:uppercase}.s-code-block__copy{background:var(--s-accent);border:0;color:var(--s-bg);cursor:pointer;font-family:var(--font-mono);padding:0 1ch;transition:.15s ease}.s-code-block__copy:hover{filter:brightness(1.15)}.s-code-block__copy--ok{background:var(--color-success)}.s-code-block__container{box-shadow:inset 2px 0 0 0 var(--s-border-strong),inset -2px 0 0 0 var(--s-border-strong),inset 0 -2px 0 0 var(--s-border-strong);display:flex;overflow-x:auto}.s-code-block:not(:has(.s-code-block__toolbar)) .s-code-block__container{box-shadow:inset 2px 0 0 0 var(--s-border-strong),inset -2px 0 0 0 var(--s-border-strong),inset 0 2px 0 0 var(--s-border-strong),inset 0 -2px 0 0 var(--s-border-strong)}.s-code-block__lines{border-right:1px solid var(--s-border);color:var(--s-fg-dim);flex-shrink:0;font-variant-numeric:tabular-nums;padding:.5em 1ch;text-align:right;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:pre}.s-code-block__pre{background:transparent;color:inherit;flex:1;font:inherit;margin:0;min-width:0;overflow-x:visible;padding:.5em 2ch;-moz-tab-size:2;-o-tab-size:2;tab-size:2;white-space:pre}.s-alert{background:var(--s-alert-bg,transparent);border:1px solid var(--s-alert-border,var(--s-fg));color:var(--s-fg);font-family:var(--font-mono);font-size:1em;line-height:var(--s-line-height);padding:.5em 1ch}.s-alert__head{align-items:center;display:flex;gap:1ch}.s-alert__icon{flex-shrink:0}.s-alert__icon,.s-alert__title{color:var(--s-alert-accent,var(--s-fg))}.s-alert__title{font-weight:700}.s-alert__close{background:transparent;border:0;color:var(--s-alert-accent,var(--s-fg));cursor:pointer;font:inherit;margin-left:auto;padding:0}.s-alert__close:hover{text-decoration:underline}.s-alert__body{margin-top:.25em}.s-alert--info{--s-alert-border:var(--color-info);--s-alert-accent:var(--color-info)}.s-alert--success{--s-alert-border:var(--color-success);--s-alert-accent:var(--color-success)}.s-alert--warning{--s-alert-border:var(--color-warning);--s-alert-accent:var(--color-warning)}.s-alert--error{--s-alert-border:var(--color-error);--s-alert-accent:var(--color-error)}.s-alert--accent{--s-alert-border:var(--s-accent);--s-alert-accent:var(--s-accent)}.s-table{background:var(--s-bg);border-collapse:collapse;box-shadow:inset 2px 0 0 0 var(--s-border-strong),inset -2px 0 0 0 var(--s-border-strong),inset 0 2px 0 0 var(--s-border-strong),inset 0 -2px 0 0 var(--s-border-strong);color:var(--s-fg);font-family:var(--font-mono);font-size:.95em;line-height:var(--s-line-height);width:100%}.s-table thead{border-bottom:1px solid var(--s-border-strong)}.s-table td,.s-table th{padding:.25em 2ch;text-align:left;vertical-align:top}.s-table th{color:var(--s-accent);font-weight:700;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.s-table tbody tr{transition:background .15s}.s-table tbody tr:hover{background:var(--s-bg-hover)}.s-table--bordered td,.s-table--bordered th{border-right:1px solid var(--s-border)}.s-table--bordered td:last-child,.s-table--bordered th:last-child{border-right:none}.s-table--bordered tbody tr{border-bottom:1px solid var(--s-border)}.s-table--bordered tbody tr:last-child{border-bottom:none}.s-table--striped tbody tr:nth-child(2n){background:var(--s-bg-hover)}.s-table--compact td,.s-table--compact th{padding:.15em 1ch}.s-heading{color:var(--s-fg);font-family:var(--font-mono);font-weight:700;line-height:1.2;margin:0}.s-heading--accent{color:var(--s-accent)}.s-heading--center{text-align:center}.s-heading--lower{text-transform:lowercase}.s-heading--upper{letter-spacing:.04em;text-transform:uppercase}.s-loader{color:var(--s-accent);display:inline-block;font-family:var(--font-mono)}.s-loader--bar{background:var(--s-border);display:inline-block;height:1em;overflow:hidden;position:relative;width:20ch}.s-loader--bar:after{animation:s-bar-slide 1.2s ease-in-out infinite;background:var(--s-accent);content:"";inset:0;position:absolute;width:30%}@keyframes s-bar-slide{0%{transform:translate(-100%)}to{transform:translate(400%)}}.s-loader--block:before{animation:s-block-blink 1s steps(2) infinite;content:"█"}@keyframes s-block-blink{50%{opacity:0}}.s-loader--dots:after{animation:s-dots 1.4s steps(4) infinite;content:"...";display:inline-block;overflow:hidden;vertical-align:bottom;white-space:nowrap;width:1.5em}@keyframes s-dots{0%{width:0}to{width:1.5em}}.s-progress{background:var(--s-border);display:block;font-family:var(--font-mono);height:1em;overflow:hidden;position:relative;width:100%}.s-progress__fill{background:var(--s-accent);height:100%;transition:width .2s ease-out}.s-progress__label{color:var(--s-fg);display:flex;font-size:.85em;inset:0;mix-blend-mode:difference;position:absolute}.s-avatar,.s-progress__label{align-items:center;justify-content:center}.s-avatar{background:var(--s-accent);color:var(--s-bg);display:inline-flex;font-family:var(--font-mono);font-weight:700;height:3ch;overflow:hidden;text-transform:uppercase;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:3ch}.s-avatar img{display:block;height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.s-avatar--bordered{background:transparent;box-shadow:inset 0 0 0 1px var(--s-accent);color:var(--s-accent)}.s-breadcrumbs{align-items:center;color:var(--s-fg-muted);display:inline-flex;flex-wrap:wrap;font-family:var(--font-mono);font-size:.95em;gap:.5ch}.s-breadcrumbs a{color:var(--s-fg-muted);text-decoration:none}.s-breadcrumbs a:hover{color:var(--s-accent);text-decoration:underline}.s-breadcrumbs__sep{color:var(--s-fg-dim);-webkit-user-select:none;-moz-user-select:none;user-select:none}.s-breadcrumbs__current{color:var(--s-accent);font-weight:700}.s-field{color:var(--s-fg);display:block;font-family:var(--font-mono)}.s-field__label{color:var(--s-fg-muted);display:block;font-size:.85em;letter-spacing:.05em;margin-bottom:.25em;text-transform:uppercase}.s-field__hint{color:var(--s-fg-dim);display:block;font-size:.8em;margin-top:.25em}.s-input,.s-textarea{background:var(--s-bg);border:0;box-shadow:inset 0 0 0 1px var(--s-border-strong);color:var(--s-fg);display:block;font-family:var(--font-mono);font-size:1em;line-height:1.4;outline:0;padding:.4em 1ch;transition:box-shadow .15s;width:100%}.s-input:focus,.s-textarea:focus{box-shadow:inset 0 0 0 2px var(--s-accent)}.s-input::-moz-placeholder,.s-textarea::-moz-placeholder{color:var(--s-fg-dim)}.s-input::placeholder,.s-textarea::placeholder{color:var(--s-fg-dim)}.s-input[disabled],.s-textarea[disabled]{cursor:not-allowed;opacity:.5}.s-textarea{min-height:4lh;resize:vertical}.s-check{align-items:center;color:var(--s-fg);cursor:pointer;display:inline-flex;font-family:var(--font-mono);gap:1ch;-webkit-user-select:none;-moz-user-select:none;user-select:none}.s-check input{opacity:0;pointer-events:none;position:absolute}.s-check__box{align-items:center;background:var(--s-bg);box-shadow:inset 0 0 0 2px var(--s-border-strong);color:var(--s-accent);display:inline-flex;flex-shrink:0;font-weight:700;height:1.4em;justify-content:center;width:1.4em}.s-check__box:before{content:"";font-family:var(--font-mono);line-height:1}.s-check input:checked~.s-check__box{background:var(--s-accent);box-shadow:inset 0 0 0 2px var(--s-accent);color:var(--s-bg)}.s-check input:checked~.s-check__box:before{content:"x"}.s-check--radio .s-check__box{border-radius:50%;box-shadow:inset 0 0 0 2px var(--s-border-strong)}.s-check--radio input:checked~.s-check__box{background:var(--s-bg);box-shadow:inset 0 0 0 2px var(--s-accent)}.s-check--radio input:checked~.s-check__box:before{background:var(--s-accent);border-radius:50%;content:"";height:.7em;width:.7em}.s-check input:focus-visible~.s-check__box{outline:2px solid var(--s-accent);outline-offset:2px}.s-check input[disabled]~.s-check__box,.s-check[aria-disabled=true]{cursor:not-allowed;opacity:.5}.s-toggle{align-items:center;color:var(--s-fg);cursor:pointer;display:inline-flex;font-family:var(--font-mono);gap:1ch;-webkit-user-select:none;-moz-user-select:none;user-select:none}.s-toggle input{opacity:0;pointer-events:none;position:absolute}.s-toggle__track{background:var(--s-border);box-shadow:inset 0 0 0 1px var(--s-border-strong);display:inline-block;flex-shrink:0;height:1.4em;position:relative;transition:background .15s;width:4ch}.s-toggle__thumb{background:var(--s-fg);height:calc(1.4em - 4px);left:2px;position:absolute;top:2px;transition:transform .15s ease,background .15s;width:calc(1.4em - 4px)}.s-toggle input:checked~.s-toggle__track{background:var(--s-accent)}.s-toggle input:checked~.s-toggle__track .s-toggle__thumb{background:var(--s-bg);transform:translate(calc(4ch - 1.4em))}.s-toggle input:focus-visible~.s-toggle__track{outline:2px solid var(--s-accent);outline-offset:2px}.s-slider{display:block;font-family:var(--font-mono);width:100%}.s-slider input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--s-border);cursor:pointer;height:1em;outline:0;width:100%}.s-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:var(--s-accent);border:0;cursor:grab;height:1.4em;width:1ch}.s-slider input[type=range]::-moz-range-thumb{background:var(--s-accent);border:0;cursor:grab;height:1.4em;width:1ch}.s-tooltip{display:inline-block;position:relative}.s-tooltip__bubble{background:var(--s-fg);bottom:calc(100% + 6px);color:var(--s-bg);font-family:var(--font-mono);font-size:.85em;left:50%;opacity:0;padding:.25em 1ch;pointer-events:none;position:absolute;transform:translate(-50%);transition:opacity .15s .2s;white-space:nowrap;z-index:100}.s-tooltip:focus-within .s-tooltip__bubble,.s-tooltip:hover .s-tooltip__bubble{opacity:1}.s-tabs{color:var(--s-fg);font-family:var(--font-mono)}.s-tabs__list{border-bottom:1px solid var(--s-border-strong);display:flex;gap:0;overflow-x:auto}.s-tabs__trigger{background:transparent;border:0;border-bottom:2px solid transparent;color:var(--s-fg-muted);cursor:pointer;font-family:inherit;font-size:1em;letter-spacing:.04em;margin-bottom:-1px;padding:.4em 2ch;text-transform:uppercase;transition:color .15s,border-color .15s;white-space:nowrap}.s-tabs__trigger:hover{color:var(--s-fg)}.s-tabs__trigger[aria-selected=true]{border-bottom-color:var(--s-accent);color:var(--s-accent)}.s-tabs__trigger:focus-visible{outline:2px solid var(--s-accent);outline-offset:-2px}.s-tabs__panel{padding:1em 0}.s-accordion{color:var(--s-fg);font-family:var(--font-mono)}.s-accordion__item{border-bottom:1px solid var(--s-border)}.s-accordion__trigger{align-items:center;background:transparent;border:0;color:var(--s-fg);cursor:pointer;display:flex;font-family:inherit;font-size:1em;gap:1ch;justify-content:space-between;padding:.6em 0;text-align:left;width:100%}.s-accordion__chev,.s-accordion__trigger:hover{color:var(--s-accent)}.s-accordion__chev{transition:transform .15s}.s-accordion__item[data-open=true] .s-accordion__chev{transform:rotate(90deg)}.s-accordion__panel{color:var(--s-fg-muted);padding:0 0 .6em}.s-overlay{align-items:center;background:#0009;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.s-dialog{background:var(--s-bg);box-shadow:inset 2px 0 0 0 var(--s-border-strong),inset -2px 0 0 0 var(--s-border-strong),inset 0 -2px 0 0 var(--s-border-strong);color:var(--s-fg);font-family:var(--font-mono);max-width:min(90vw,80ch);min-width:40ch}.s-drawer-overlay{background:#0009;inset:0;position:fixed;z-index:1000}.s-drawer{background:var(--s-bg);bottom:0;color:var(--s-fg);display:flex;flex-direction:column;font-family:var(--font-mono);position:fixed;top:0;width:min(90vw,40ch);z-index:1001}.s-drawer--right{box-shadow:inset 2px 0 0 0 var(--s-border-strong);right:0}.s-drawer--left{box-shadow:inset -2px 0 0 0 var(--s-border-strong);left:0}.s-dialog__header,.s-drawer__header{align-items:center;border-bottom:1px solid var(--s-border-strong);color:var(--s-accent);display:flex;font-weight:700;gap:1ch;justify-content:space-between;letter-spacing:.05em;padding:.5em 2ch;text-transform:uppercase}.s-dialog__body,.s-drawer__body{flex:1;overflow-y:auto;padding:1em 2ch}.s-dialog__close,.s-drawer__close{background:transparent;border:0;color:var(--s-fg-muted);cursor:pointer;font:inherit;padding:0}.s-dialog__close:hover,.s-drawer__close:hover{color:var(--s-accent)}.s-fade-enter-active,.s-fade-leave-active{transition:opacity .15s}.s-fade-enter-from,.s-fade-leave-to{opacity:0}.s-slide-r-enter-active,.s-slide-r-leave-active{transition:transform .2s ease}.s-slide-r-enter-from,.s-slide-r-leave-to{transform:translate(100%)}.s-slide-l-enter-active,.s-slide-l-leave-active{transition:transform .2s ease}.s-slide-l-enter-from,.s-slide-l-leave-to{transform:translate(-100%)}.s-text{color:var(--s-fg);font-family:var(--font-mono);margin:0}.s-text--muted{color:var(--s-fg-muted)}.s-text--dim{color:var(--s-fg-dim)}.s-text--accent{color:var(--s-accent)}.s-text--small{font-size:.85em}.s-text--xs{font-size:.75em}.s-text--bold{font-weight:700}.s-text--italic{font-style:italic}.s-text--upper{letter-spacing:.04em;text-transform:uppercase}.s-text--lower{text-transform:lowercase}.s-text--mono-num{font-variant-numeric:tabular-nums}.s-label{color:var(--s-fg-muted);display:inline-block;font-family:var(--font-mono);font-size:.85em;letter-spacing:.05em;margin-bottom:.25em;text-transform:uppercase}.s-label--required:after{color:var(--color-error);content:" *"}.s-form{font-family:var(--font-mono);gap:1em}.s-fieldset,.s-form{display:flex;flex-direction:column}.s-fieldset{border:1px solid var(--s-border);gap:.75em;padding:1em 2ch}.s-fieldset__legend{color:var(--s-accent);font-family:var(--font-mono);font-size:.9em;letter-spacing:.05em;padding:0 1ch;text-transform:uppercase}.s-grid{display:grid;gap:var(--s-gap,1em);grid-template-columns:repeat(var(--s-cols,12),minmax(0,1fr))}.s-card-double{display:grid;font-family:var(--font-mono);gap:0;grid-template-columns:1fr 1fr}.s-card-double>*+*{box-shadow:inset 2px 0 0 0 var(--s-border-strong)}@media(max-width:640px){.s-card-double{grid-template-columns:1fr}.s-card-double>*+*{box-shadow:inset 0 2px 0 0 var(--s-border-strong)}}.s-action-bar{box-shadow:inset 2px 0 0 0 var(--s-border-strong),inset -2px 0 0 0 var(--s-border-strong),inset 0 2px 0 0 var(--s-border-strong),inset 0 -2px 0 0 var(--s-border-strong);display:flex;font-family:var(--font-mono);gap:0}.s-action-bar>*+*{box-shadow:inset 2px 0 0 0 var(--s-border-strong)}.s-action-button{align-items:center;background:transparent;border:0;color:var(--s-fg);cursor:pointer;display:inline-flex;font-family:inherit;font-size:1em;gap:1ch;letter-spacing:.04em;padding:.4em 1.5ch;text-transform:uppercase;transition:.15s}.s-action-button:hover{background:var(--s-bg-hover);color:var(--s-accent)}.s-action-button:focus-visible{outline:2px solid var(--s-accent);outline-offset:-2px}.s-action-button.is-active,.s-action-button[aria-current=true]{background:var(--s-accent);color:var(--s-bg)}.s-nav{border-bottom:1px solid var(--s-border-strong);display:flex;font-family:var(--font-mono);gap:0}.s-nav__item{background:transparent;border:0;border-bottom:2px solid transparent;color:var(--s-fg-muted);cursor:pointer;font-family:inherit;font-size:1em;letter-spacing:.04em;margin-bottom:-1px;padding:.5em 2ch;text-decoration:none;text-transform:uppercase;transition:.15s}.s-nav__item:hover{color:var(--s-fg)}.s-nav__item.is-active,.s-nav__item[aria-current=page]{border-bottom-color:var(--s-accent);color:var(--s-accent)}.s-message-list{display:flex;flex-direction:column;font-family:var(--font-mono);gap:.5em}.s-message{background:var(--color-surface);color:var(--s-fg);display:flex;gap:1ch;max-width:80%;padding:.5em 1ch}.s-message--self{align-self:flex-end;background:color-mix(in srgb,var(--s-accent) 18%,transparent)}.s-message__author{color:var(--s-accent);font-size:.85em;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.s-message__time{color:var(--s-fg-dim);font-size:.75em;margin-left:auto}.s-message__body{line-height:1.4}.s-collapsible{font-family:var(--font-mono)}.s-collapsible__trigger{align-items:center;background:transparent;border:0;color:var(--s-fg);cursor:pointer;display:flex;font-family:inherit;font-size:1em;gap:1ch;padding:.4em 0;text-align:left;width:100%}.s-collapsible__chev,.s-collapsible__trigger:hover{color:var(--s-accent)}.s-collapsible__chev{transition:transform .15s}.s-collapsible[data-open=true] .s-collapsible__chev{transform:rotate(90deg)}.s-collapsible__content{color:var(--s-fg-muted);padding:.25em 0 .5em 2ch}.s-toggle-group{box-shadow:inset 2px 0 0 0 var(--s-border-strong),inset -2px 0 0 0 var(--s-border-strong),inset 0 2px 0 0 var(--s-border-strong),inset 0 -2px 0 0 var(--s-border-strong);display:inline-flex;font-family:var(--font-mono)}.s-toggle-group__item{background:transparent;border:0;color:var(--s-fg);cursor:pointer;font-family:inherit;font-size:1em;letter-spacing:.04em;padding:.4em 1.5ch;text-transform:uppercase;transition:.15s}.s-toggle-group__item+.s-toggle-group__item{box-shadow:inset 2px 0 0 0 var(--s-border-strong)}.s-toggle-group__item[aria-pressed=true]{background:var(--s-accent);color:var(--s-bg)}.s-toggle-group__item:hover:not([aria-pressed=true]){background:var(--s-bg-hover)}.s-meter{background:var(--s-border);display:block;height:1em;overflow:hidden;position:relative;width:100%}.s-meter__fill{background:var(--s-accent);height:100%;transition:width .2s}.s-meter--warn .s-meter__fill{background:var(--color-warning)}.s-meter--error .s-meter__fill{background:var(--color-error)}.s-meter--ok .s-meter__fill{background:var(--color-success)}.s-number{align-items:stretch;box-shadow:inset 0 0 0 1px var(--s-border-strong);display:inline-flex;font-family:var(--font-mono)}.s-number__btn{background:transparent;border:0;color:var(--s-fg);cursor:pointer;font-family:inherit;font-size:1em;padding:0 1ch;transition:.15s}.s-number__btn:hover{background:var(--s-accent);color:var(--s-bg)}.s-number__btn:disabled{cursor:not-allowed;opacity:.4}.s-number__input{-moz-appearance:textfield;background:transparent;border:0;color:var(--s-fg);font-family:inherit;font-size:1em;font-variant-numeric:tabular-nums;outline:0;padding:.3em 0;text-align:center;width:6ch}.s-number__input::-webkit-inner-spin-button,.s-number__input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.s-tree{color:var(--s-fg);font-family:var(--font-mono)}.s-tree__node{-webkit-user-select:none;-moz-user-select:none;user-select:none}.s-tree__row{align-items:center;cursor:pointer;display:flex;gap:1ch;padding:.15em 1ch;white-space:nowrap}.s-tree__row:hover{background:var(--s-bg-hover)}.s-tree__row[aria-selected=true]{background:var(--s-accent);color:var(--s-bg)}.s-tree__chev{color:var(--s-accent);display:inline-block;transition:transform .15s;width:1ch}.s-tree__chev--open{transform:rotate(90deg)}.s-tree__chev--leaf{visibility:hidden}.s-tree__children{border-left:1px dashed var(--s-border);margin-left:2ch;padding-left:1ch}.s-pop-anchor{display:inline-block;position:relative}.s-popover{background:var(--s-bg);box-shadow:inset 2px 0 0 0 var(--s-border-strong),inset -2px 0 0 0 var(--s-border-strong),inset 0 2px 0 0 var(--s-border-strong),inset 0 -2px 0 0 var(--s-border-strong);color:var(--s-fg);font-family:var(--font-mono);min-width:16ch;padding:.5em 1ch;position:absolute;z-index:50}.s-popover--bottom{left:0;top:calc(100% + 4px)}.s-popover--top{bottom:calc(100% + 4px);left:0}.s-popover--right{left:calc(100% + 4px);top:0}.s-popover--left{right:calc(100% + 4px);top:0}.s-menu{min-width:18ch;padding:0}.s-menu__item{align-items:center;background:transparent;border:0;color:var(--s-fg);cursor:pointer;display:flex;font:inherit;gap:1ch;padding:.35em 1.5ch;text-align:left;white-space:nowrap;width:100%}.s-menu__item:focus-visible,.s-menu__item:hover{background:var(--s-accent);color:var(--s-bg);outline:0}.s-menu__item[aria-disabled=true]{cursor:not-allowed;opacity:.4}.s-menu__sep{background:var(--s-border);height:1px;margin:.25em 0}.s-menu__label{color:var(--s-fg-dim);display:block;font-size:.75em;letter-spacing:.05em;padding:.4em 1.5ch .2em;text-transform:uppercase}.s-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--s-bg);background-image:linear-gradient(45deg,transparent 50%,var(--s-accent) 50%),linear-gradient(135deg,var(--s-accent) 50%,transparent 50%);background-position:calc(100% - 1.4ch),calc(100% - .6ch);background-repeat:no-repeat;background-size:.5ch .5ch;border:0;box-shadow:inset 0 0 0 1px var(--s-border-strong);color:var(--s-fg);display:block;font-family:var(--font-mono);font-size:1em;outline:0;padding:.4em 2.5ch .4em 1ch;width:100%}.s-select:focus{box-shadow:inset 0 0 0 2px var(--s-accent)}.s-toast-viewport{bottom:1em;display:flex;flex-direction:column;gap:.5em;max-width:min(90vw,50ch);pointer-events:none;position:fixed;right:1em;z-index:2000}.s-toast{align-items:flex-start;background:var(--s-bg);box-shadow:inset 2px 0 0 0 var(--s-accent),inset -2px 0 0 0 var(--s-accent),inset 0 2px 0 0 var(--s-accent),inset 0 -2px 0 0 var(--s-accent);color:var(--s-fg);display:flex;font-family:var(--font-mono);gap:1ch;padding:.6em 1.5ch;pointer-events:auto}.s-toast--success{box-shadow:inset 2px 0 0 0 var(--color-success),inset -2px 0 0 0 var(--color-success),inset 0 2px 0 0 var(--color-success),inset 0 -2px 0 0 var(--color-success)}.s-toast--error{box-shadow:inset 2px 0 0 0 var(--color-error),inset -2px 0 0 0 var(--color-error),inset 0 2px 0 0 var(--color-error),inset 0 -2px 0 0 var(--color-error)}.s-toast--warning{box-shadow:inset 2px 0 0 0 var(--color-warning),inset -2px 0 0 0 var(--color-warning),inset 0 2px 0 0 var(--color-warning),inset 0 -2px 0 0 var(--color-warning)}.s-toast__close{background:transparent;border:0;color:var(--s-fg-muted);cursor:pointer;font:inherit;margin-left:auto}.s-toast-enter-active,.s-toast-leave-active{transition:all .2s ease}.s-toast-enter-from,.s-toast-leave-to{opacity:0;transform:translate(100%)}.s-scroll{overflow:auto;scrollbar-color:var(--s-border-strong) transparent;scrollbar-width:thin}.s-scroll::-webkit-scrollbar{height:1ch;width:1ch}.s-scroll::-webkit-scrollbar-track{background:transparent}.s-scroll::-webkit-scrollbar-thumb{background:var(--s-border-strong)}.s-scroll::-webkit-scrollbar-thumb:hover{background:var(--s-accent)}.s-sidebar-layout{display:grid;font-family:var(--font-mono);grid-template-columns:var(--s-sidebar-w,24ch) 1fr;min-height:100%}.s-sidebar-layout__aside{border-right:1px solid var(--s-border-strong);overflow-y:auto;padding:1em 1ch}.s-sidebar-layout__main{min-width:0;overflow-x:auto;padding:1em 2ch}@media(max-width:720px){.s-sidebar-layout{grid-template-columns:1fr}.s-sidebar-layout__aside{border-bottom:1px solid var(--s-border-strong);border-right:0}}.s-toolbar{align-items:center;background:var(--color-surface);border-bottom:1px solid var(--s-border-strong);display:flex;font-family:var(--font-mono);gap:.5ch;padding:.25em 1ch}.s-toolbar__sep{align-self:stretch;background:var(--s-border-strong);margin:0 .5ch;width:1px}.s-toolbar__spacer{flex:1}.s-menubar{background:var(--color-surface);border-bottom:1px solid var(--s-border-strong);display:flex;font-family:var(--font-mono)}.s-menubar__trigger{background:transparent;border:0;color:var(--s-fg);cursor:pointer;font:inherit;letter-spacing:.04em;padding:.4em 1.5ch}.s-menubar__trigger:hover,.s-menubar__trigger[aria-expanded=true]{background:var(--s-accent);color:var(--s-bg)}.s-preview{display:inline-block;position:relative}.s-preview__panel{background:var(--s-bg);box-shadow:inset 2px 0 0 0 var(--s-border-strong),inset -2px 0 0 0 var(--s-border-strong),inset 0 2px 0 0 var(--s-border-strong),inset 0 -2px 0 0 var(--s-border-strong);color:var(--s-fg);font-family:var(--font-mono);left:0;min-width:24ch;opacity:0;padding:.75em 1.5ch;pointer-events:none;position:absolute;top:calc(100% + 4px);transform:translateY(-4px);transition:opacity .15s .2s,transform .15s .2s;z-index:50}.s-preview:focus-within .s-preview__panel,.s-preview:hover .s-preview__panel{opacity:1;pointer-events:auto;transform:translateY(0)}.s-combo{font-family:var(--font-mono);position:relative}.s-combo__input{background:var(--s-bg);border:0;box-shadow:inset 0 0 0 1px var(--s-border-strong);color:var(--s-fg);display:block;font:inherit;font-size:1em;outline:0;padding:.4em 1ch;width:100%}.s-combo__input:focus{box-shadow:inset 0 0 0 2px var(--s-accent)}.s-combo__list{background:var(--s-bg);box-shadow:inset 2px 0 0 0 var(--s-border-strong),inset -2px 0 0 0 var(--s-border-strong),inset 0 2px 0 0 var(--s-border-strong),inset 0 -2px 0 0 var(--s-border-strong);left:0;max-height:14lh;overflow-y:auto;position:absolute;right:0;top:calc(100% + 2px);z-index:50}.s-combo__opt{cursor:pointer;padding:.3em 1ch;white-space:nowrap}.s-combo__opt:hover,.s-combo__opt[aria-selected=true]{background:var(--s-accent);color:var(--s-bg)}.s-combo__empty{color:var(--s-fg-dim);font-style:italic;padding:.3em 1ch}.s-datepicker{display:inline-block;font-family:var(--font-mono);position:relative}.s-datepicker__panel{background:var(--s-bg);box-shadow:inset 2px 0 0 0 var(--s-border-strong),inset -2px 0 0 0 var(--s-border-strong),inset 0 2px 0 0 var(--s-border-strong),inset 0 -2px 0 0 var(--s-border-strong);color:var(--s-fg);left:0;min-width:28ch;padding:.5em 1ch;position:absolute;top:calc(100% + 2px);z-index:50}.s-datepicker__head{align-items:center;border-bottom:1px solid var(--s-border);display:flex;gap:1ch;justify-content:space-between;margin-bottom:.4em;padding-bottom:.4em}.s-datepicker__title{color:var(--s-accent);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.s-datepicker__nav{background:transparent;border:0;color:var(--s-fg);cursor:pointer;font:inherit;padding:0 1ch}.s-datepicker__nav:hover{color:var(--s-accent)}.s-datepicker__grid{display:grid;font-variant-numeric:tabular-nums;gap:0;grid-template-columns:repeat(7,1fr)}.s-datepicker__weekday{color:var(--s-fg-dim);font-size:.78em;padding:.2em 0;text-align:center;text-transform:uppercase}.s-datepicker__day{background:transparent;border:0;color:var(--s-fg);cursor:pointer;font:inherit;padding:.25em 0;text-align:center;transition:.1s}.s-datepicker__day:hover{background:var(--s-bg-hover);color:var(--s-accent)}.s-datepicker__day--out{color:var(--s-fg-dim)}.s-datepicker__day--today{box-shadow:inset 0 0 0 1px var(--s-accent)}.s-datepicker__day--selected{background:var(--s-accent);color:var(--s-bg)}.theme-toggle[data-v-2126a165]{align-items:center;background-color:var(--color-surface);border:2px solid var(--color-border);border-radius:0;box-shadow:3px 3px 0 var(--color-border);color:var(--color-text-primary);cursor:pointer;display:flex;font-family:var(--font-mono);font-size:20px;height:44px;image-rendering:pixelated;justify-content:center;position:fixed;right:var(--spacing-md);top:var(--spacing-md);transition:none;width:44px;z-index:1000}.theme-toggle[data-v-2126a165]:hover{border-color:var(--color-text-primary);box-shadow:4px 4px 0 var(--color-border);color:var(--color-primary);transform:translate(-1px,-1px)}.theme-toggle[data-v-2126a165]:active{box-shadow:1px 1px 0 var(--color-border);transform:translate(1px,1px)}.language-switcher[data-v-0142fadb]{align-items:center;background-color:var(--color-surface);border:2px solid var(--color-border);border-radius:0;color:var(--color-text-primary);cursor:pointer;display:flex;font-family:Cozette,Courier New,Courier,monospace;font-size:13px;font-weight:700;height:44px;justify-content:center;letter-spacing:.08em;position:fixed;right:calc(var(--spacing-md) + 44px + var(--spacing-sm));top:var(--spacing-md);width:44px;-webkit-font-smoothing:none;-moz-osx-font-smoothing:unset;font-smooth:never;box-shadow:3px 3px 0 var(--color-border);image-rendering:pixelated;text-transform:uppercase;transition:none;z-index:1000}.language-switcher[data-v-0142fadb]:hover{border-color:var(--color-text-primary);box-shadow:4px 4px 0 var(--color-border);color:var(--color-primary);transform:translate(-1px,-1px)}.language-switcher[data-v-0142fadb]:active{box-shadow:1px 1px 0 var(--color-border);transform:translate(1px,1px)}.language-label[data-v-0142fadb]{align-items:center;display:flex;justify-content:center;line-height:1}@media(max-width:768px){.language-switcher[data-v-0142fadb]{right:var(--spacing-md);top:calc(var(--spacing-md) + 48px + var(--spacing-sm))}}.navbar[data-v-b7b2edf2]{background:transparent;border:none;bottom:12px;display:flex;font-family:var(--font-mono);gap:10px;image-rendering:pixelated;left:50%;padding:0;position:fixed;transform:translate(-50%);z-index:50;-webkit-font-smoothing:none;font-smooth:never}.nav-link[data-v-b7b2edf2]{color:inherit;display:inline-block;text-decoration:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.keycap[data-v-b7b2edf2]{align-items:stretch;animation:keycap-idle-b7b2edf2 2.4s ease-in-out infinite;display:inline-flex;justify-content:stretch;padding:0;transform:translateY(0);transition:transform .08s ease-out}.nav-link:first-child .keycap[data-v-b7b2edf2]{animation-delay:0s}.nav-link:nth-child(2) .keycap[data-v-b7b2edf2]{animation-delay:.15s}.nav-link:nth-child(3) .keycap[data-v-b7b2edf2]{animation-delay:.3s}.nav-link:nth-child(4) .keycap[data-v-b7b2edf2]{animation-delay:.45s}@keyframes keycap-idle-b7b2edf2{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.keycap-top[data-v-b7b2edf2]{align-items:center;background:color-mix(in srgb,var(--color-surface) 90%,var(--color-background));border-bottom-width:2px;border:2px solid var(--color-border);box-shadow:0 5px 0 var(--color-border),0 5px 0 1px var(--color-border);color:var(--color-text-secondary);display:inline-flex;font-family:var(--font-mono);font-size:14px;font-weight:700;image-rendering:pixelated;justify-content:center;letter-spacing:.1em;min-width:64px;padding:12px 18px;text-transform:uppercase;-webkit-font-smoothing:none;font-smooth:never;transition:transform .1s ease-out,box-shadow .1s ease-out,background .15s ease-out,color .15s ease-out,border-color .15s ease-out}.nav-link:hover .keycap[data-v-b7b2edf2]{animation-play-state:paused}.nav-link:hover .keycap-top[data-v-b7b2edf2]{border-color:var(--color-primary);box-shadow:0 8px color-mix(in srgb,var(--color-primary) 60%,var(--color-background)),0 8px 0 1px var(--color-primary),0 8px 18px -4px color-mix(in srgb,var(--color-primary) 50%,transparent);color:var(--color-text-primary);transform:translateY(-3px)}.nav-link:active .keycap-top[data-v-b7b2edf2]{box-shadow:0 0 color-mix(in srgb,var(--color-primary) 60%,var(--color-background)),0 0 0 1px var(--color-primary);transform:translateY(5px)}.nav-link.active .keycap[data-v-b7b2edf2]{animation:none}.nav-link.active .keycap-top[data-v-b7b2edf2]{background:color-mix(in srgb,var(--color-primary) 22%,var(--color-background));border-color:var(--color-primary);box-shadow:0 3px color-mix(in srgb,var(--color-primary) 80%,var(--color-background)),0 3px 0 1px var(--color-primary);color:var(--color-text-primary);transform:translateY(2px)}.nav-link.active:hover .keycap-top[data-v-b7b2edf2]{box-shadow:0 5px color-mix(in srgb,var(--color-primary) 80%,var(--color-background)),0 5px 0 1px var(--color-primary),0 5px 15px -2px color-mix(in srgb,var(--color-primary) 55%,transparent);transform:translateY(0)}.keycap-label[data-v-b7b2edf2]{display:inline-block}.nav-link-neutral:hover .keycap-top[data-v-b7b2edf2]{border-color:var(--color-text-primary);box-shadow:0 8px color-mix(in srgb,var(--color-text-primary) 60%,var(--color-background)),0 8px 0 1px var(--color-text-primary),0 8px 18px -4px color-mix(in srgb,var(--color-text-primary) 50%,transparent)}.nav-link-neutral:active .keycap-top[data-v-b7b2edf2]{box-shadow:0 0 color-mix(in srgb,var(--color-text-primary) 60%,var(--color-background)),0 0 0 1px var(--color-text-primary)}.nav-link-neutral.active .keycap-top[data-v-b7b2edf2]{background:color-mix(in srgb,var(--color-text-primary) 18%,var(--color-background));border-color:var(--color-text-primary);box-shadow:0 3px color-mix(in srgb,var(--color-text-primary) 80%,var(--color-background)),0 3px 0 1px var(--color-text-primary)}.nav-link-neutral.active:hover .keycap-top[data-v-b7b2edf2]{box-shadow:0 5px color-mix(in srgb,var(--color-text-primary) 80%,var(--color-background)),0 5px 0 1px var(--color-text-primary),0 5px 15px -2px color-mix(in srgb,var(--color-text-primary) 55%,transparent)}@media(max-width:768px){.navbar[data-v-b7b2edf2]{bottom:max(20px,env(safe-area-inset-bottom));gap:6px}.keycap-top[data-v-b7b2edf2]{font-size:11px;letter-spacing:.06em;min-width:44px;padding:9px 12px}}.cookie-rain{inset:0;overflow:visible;pointer-events:none;position:fixed}.cookie-rain .cookie{filter:drop-shadow(1px 1px 0 rgba(0,0,0,.3));image-rendering:pixelated;left:0;position:absolute;shape-rendering:crispEdges;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none;will-change:transform}.cb-banner{align-items:center;background:var(--color-background,#fff);border:2px solid var(--color-text-primary,#000);bottom:96px;box-shadow:4px 4px 0 0 var(--color-text-primary,#000);color:var(--color-text-primary,#000);display:flex;font-family:var(--font-mono);font-size:13px;gap:14px;image-rendering:pixelated;padding:10px 16px;position:fixed;right:20px;z-index:60;-webkit-font-smoothing:none;font-smooth:never;flex-wrap:wrap;justify-content:center;max-width:calc(100vw - 24px)}.cb-copy{align-items:flex-start;display:flex;flex-direction:column;gap:2px}.cb-text{white-space:nowrap}.cb-fineprint{color:inherit;font-size:11px;opacity:.7;text-decoration:underline}.cb-fineprint:hover{opacity:1}.cb-ok{background:var(--color-text-primary,#000);border:2px solid var(--color-text-primary,#000);color:var(--color-background,#fff);cursor:pointer;font-family:inherit;font-size:13px;font-weight:700;image-rendering:pixelated;letter-spacing:1px;padding:4px 14px}.cb-ok:hover{box-shadow:2px 2px 0 0 var(--color-text-primary,#000);transform:translate(-1px,-1px)}.cb-ok:active{box-shadow:none;transform:translate(1px,1px)}.cb-slide-enter-active,.cb-slide-leave-active{transition:opacity .18s ease,transform .18s ease}.cb-slide-enter-from,.cb-slide-leave-to{opacity:0;transform:translateY(12px)}@media(max-width:560px){.cb-banner{bottom:84px;font-size:12px;gap:10px;padding:8px 12px;right:12px}}.click-spark-container[data-v-9346f2f5]{position:relative;width:100%}.click-spark-canvas[data-v-9346f2f5]{height:100vh;image-rendering:pixelated;image-rendering:crisp-edges;left:0;pointer-events:none;position:fixed;top:0;width:100vw;z-index:999999}.pattern-bg[data-v-ff5728ea]{contain:strict;inset:0;overflow:hidden;pointer-events:none;position:fixed;z-index:-1}.pattern-bg canvas[data-v-ff5728ea]{height:100%;image-rendering:pixelated;-o-object-fit:cover;object-fit:cover;opacity:1;width:100%;will-change:contents}.app-content-wrapper[data-v-d47e2a73]{min-height:100vh;position:relative;width:100%;z-index:0}
