@layer base,utils,components;@layer base{:root{--background0: #fff;--background1: #ddd;--background2: #bbb;--background3: #999;--foreground0: #000;--foreground1: #444;--foreground2: #888;--font-size: 16px;--line-height: 1.3;--font-weight-bold: 700;--font-weight-normal: 400;--font-family: monospace;--box-border-color: var(--foreground0);--table-border-color: var(--box-border-color);--separator-color: var(--box-border-color);--separator-background: transparent}[data-webtui-theme=dark]{--background0: #000;--background1: #222;--background2: #444;--background3: #666;--foreground0: #fff;--foreground1: #ccc;--foreground2: #999}body,html{background-color:var(--background0);color:var(--foreground0);font-family:var(--font-family);font-size:var(--font-size);font-weight:var(--font-weight-normal);line-height:var(--line-height, 1.5);font-variant-ligatures:common-ligatures}*{box-sizing:border-box;margin:0;padding:0;outline:none}}@layer utils{@property --box-rounded-radius{syntax: "<length>"; inherits: false; initial-value: 4px;}@property --box-border-width{syntax: "<length>"; inherits: false; initial-value: 2px;}@property --box-double-border-width{syntax: "<length>"; inherits: false; initial-value: 1px;}[box-=square],[box-=round],[box-=double]{position:relative;isolation:isolate;padding:1lh 1ch}[box-=square]:before,[box-=round]:before,[box-=double]:before{content:"";position:absolute;top:50%;left:50%;translate:-50% -50%;width:calc(100% - 1ch - var(--box-border-width));height:calc(100% - 1lh - var(--box-border-width));border:solid var(--box-border-width) var(--box-border-color);z-index:-1}[box-=square][box-=round]:before,[box-=round][box-=round]:before,[box-=double][box-=round]:before{border-radius:var(--box-rounded-radius)}[box-=square][box-=round]:after,[box-=round][box-=round]:after,[box-=double][box-=round]:after{border-radius:calc(var(--box-rounded-radius) + 2px)}[box-=square][box-=double]:before,[box-=round][box-=double]:before,[box-=double][box-=double]:before{border-width:var(--box-double-border-width)}[box-=square][box-=double]:after,[box-=round][box-=double]:after,[box-=double][box-=double]:after{content:"";position:absolute;top:50%;left:50%;translate:-50% -50%;width:calc(100% - 1ch + var(--box-double-border-width) * 2);height:calc(100% - 1lh + var(--box-double-border-width) * 2);border:solid var(--box-double-border-width) var(--box-border-color);z-index:-1}[box-=square][shear-=both],[box-=round][shear-=both],[box-=double][shear-=both]{padding-top:0;padding-bottom:0}[box-=square][shear-=top],[box-=round][shear-=top],[box-=double][shear-=top]{padding-top:0}[box-=square][shear-=bottom],[box-=round][shear-=bottom],[box-=double][shear-=bottom]{padding-bottom:0}}@layer components{button,input[type=button],input[type=submit],input[type=reset],[is-~=button]{--button-primary: var(--foreground0);--button-secondary: var(--background0);--mapped-primary: var(--button-primary);--mapped-secondary: var(--button-secondary);color:var(--mapped-secondary);background-color:var(--mapped-primary);font-family:var(--font-family);font-size:var(--font-size);line-height:var(--line-height);display:inline-flex;align-items:center;justify-content:center;border:none;padding:0 2ch;outline:none}button[box-],input[type=button][box-],input[type=submit][box-],input[type=reset][box-],[is-~=button][box-]{color:var(--mapped-primary);background-color:transparent;--box-border-color: var(--mapped-primary)}button:focus,input[type=button]:focus,input[type=submit]:focus,input[type=reset]:focus,[is-~=button]:focus{font-weight:700;text-decoration:underline}button:active,input[type=button]:active,input[type=submit]:active,input[type=reset]:active,[is-~=button]:active{--mapped-primary: var(--mapped-secondary);--mapped-secondary: var(--mapped-primary)}button:disabled,input[type=button]:disabled,input[type=submit]:disabled,input[type=reset]:disabled,[is-~=button]:disabled{text-decoration:line-through;pointer-events:none}button[size-=small],input[type=button][size-=small],input[type=submit][size-=small],input[type=reset][size-=small],[is-~=button][size-=small]{padding:0 1ch;height:1lh}button:not([size-]):not([box-]),button[size-=default]:not([box-]),input[type=button]:not([size-]):not([box-]),input[type=button][size-=default]:not([box-]),input[type=submit]:not([size-]):not([box-]),input[type=submit][size-=default]:not([box-]),input[type=reset]:not([size-]):not([box-]),input[type=reset][size-=default]:not([box-]),[is-~=button]:not([size-]):not([box-]),[is-~=button][size-=default]:not([box-]){background-color:transparent;background-image:linear-gradient(to bottom,transparent 0,transparent .5lh,var(--mapped-primary) .5lh,var(--mapped-primary) calc(100% - .5lh),transparent calc(100% - .5lh),transparent)}button[size-=large],button[size-=default],button:not([size-]),input[type=button][size-=large],input[type=button][size-=default],input[type=button]:not([size-]),input[type=submit][size-=large],input[type=submit][size-=default],input[type=submit]:not([size-]),input[type=reset][size-=large],input[type=reset][size-=default],input[type=reset]:not([size-]),[is-~=button][size-=large],[is-~=button][size-=default],[is-~=button]:not([size-]){height:3lh}button[variant-=foreground0],button:not([variant-]),input[type=button][variant-=foreground0],input[type=button]:not([variant-]),input[type=submit][variant-=foreground0],input[type=submit]:not([variant-]),input[type=reset][variant-=foreground0],input[type=reset]:not([variant-]),[is-~=button][variant-=foreground0],[is-~=button]:not([variant-]){--button-primary: var(--foreground0);--button-secondary: var(--background0)}button[variant-=foreground1],input[type=button][variant-=foreground1],input[type=submit][variant-=foreground1],input[type=reset][variant-=foreground1],[is-~=button][variant-=foreground1]{--button-primary: var(--foreground1);--button-secondary: var(--background0)}button[variant-=foreground2],input[type=button][variant-=foreground2],input[type=submit][variant-=foreground2],input[type=reset][variant-=foreground2],[is-~=button][variant-=foreground2]{--button-primary: var(--foreground2);--button-secondary: var(--background0)}button[variant-=background0],input[type=button][variant-=background0],input[type=submit][variant-=background0],input[type=reset][variant-=background0],[is-~=button][variant-=background0]{--button-primary: var(--background0);--button-secondary: var(--foreground0)}button[variant-=background1],input[type=button][variant-=background1],input[type=submit][variant-=background1],input[type=reset][variant-=background1],[is-~=button][variant-=background1]{--button-primary: var(--background1);--button-secondary: var(--foreground0)}button[variant-=background2],input[type=button][variant-=background2],input[type=submit][variant-=background2],input[type=reset][variant-=background2],[is-~=button][variant-=background2]{--button-primary: var(--background2);--button-secondary: var(--foreground0)}button[variant-=background3],input[type=button][variant-=background3],input[type=submit][variant-=background3],input[type=reset][variant-=background3],[is-~=button][variant-=background3]{--button-primary: var(--background3);--button-secondary: var(--foreground0)}}@font-face{font-family:Symbols Nerd Font;src:local("SymbolsNerdFont-Regular"),url(https://cdn.jsdelivr.net/gh/mshaugh/nerdfont-webfonts@latest/build/fonts/SymbolsNerdFont-Regular.woff2) format("woff2");font-display:swap;font-style:normal;font-weight:400}:root{--font-family: "JetBrainsMono Nerd Font Mono", "JetBrains Mono", monospace, "Symbols Nerd Font"}:root[data-webtui-theme=catppuccin-mocha],:root{--base: #1e1e2e;--mantle: #181825;--crust: #11111b;--text: #cdd6f4;--subtext1: #bac2de;--subtext0: #a6adc8;--overlay2: #9399b2;--overlay1: #7f849c;--overlay0: #6c7086;--surface2: #585b70;--surface1: #45475a;--surface0: #313244;--mauve: #cba6f7;--lavender: #b4befe;--blue: #89b4fa;--sapphire: #74c7ec;--sky: #89dceb;--teal: #94e2d5;--green: #a6e3a1;--yellow: #f9e2af;--peach: #fab387;--maroon: #eba0ac;--red: #f38ba8;--pink: #f5c2e7;--flamingo: #f2cdcd;--rosewater: #f5e0dc;--background: var(--base);--foreground: var(--text);--primary: var(--mauve);--accent: var(--sapphire);--highlight: var(--peach);--success: var(--green);--error: var(--red);--warning: var(--yellow);--info: var(--blue);--muted: var(--overlay0);--border: var(--surface1)}:root[data-webtui-theme=catppuccin-macchiato]{--base: #24273a;--mantle: #1e2030;--crust: #181926;--text: #cad3f5;--subtext1: #b8c0e0;--subtext0: #a5adcb;--overlay2: #939ab7;--overlay1: #8087a2;--overlay0: #6e738d;--surface2: #5b6078;--surface1: #494d64;--surface0: #363a4f;--mauve: #c6a0f6;--lavender: #b7bdf8;--blue: #8aadf4;--sapphire: #7dc4e4;--sky: #91d7e3;--teal: #8bd5ca;--green: #a6da95;--yellow: #eed49f;--peach: #f5a97f;--maroon: #ee99a0;--red: #ed8796;--pink: #f5bde6;--flamingo: #f0c6c6;--rosewater: #f4dbd6;--background: var(--base);--foreground: var(--text);--primary: var(--mauve);--accent: var(--sapphire);--highlight: var(--peach);--success: var(--green);--error: var(--red);--warning: var(--yellow);--info: var(--blue);--muted: var(--overlay0);--border: var(--surface1)}:root[data-webtui-theme=catppuccin-frappe]{--base: #303446;--mantle: #292c3c;--crust: #232634;--text: #c6d0f5;--subtext1: #b5bfe2;--subtext0: #a5adce;--overlay2: #949cbb;--overlay1: #838ba7;--overlay0: #737994;--surface2: #626880;--surface1: #51576d;--surface0: #414559;--mauve: #ca9ee6;--lavender: #babbf1;--blue: #8caaee;--sapphire: #85c1dc;--sky: #99d1db;--teal: #81c8be;--green: #a6d189;--yellow: #e5c890;--peach: #ef9f76;--maroon: #ea999c;--red: #e78284;--pink: #f4b8e4;--flamingo: #eebebe;--rosewater: #f2d5cf;--background: var(--base);--foreground: var(--text);--primary: var(--mauve);--accent: var(--sapphire);--highlight: var(--peach);--success: var(--green);--error: var(--red);--warning: var(--yellow);--info: var(--blue);--muted: var(--overlay0);--border: var(--surface1)}:root[data-webtui-theme=catppuccin-latte]{--base: #eff1f5;--mantle: #e6e9ef;--crust: #dce0e8;--text: #4c4f69;--subtext1: #5c5f77;--subtext0: #6c6f85;--overlay2: #7c7f93;--overlay1: #8c8fa1;--overlay0: #9ca0b0;--surface2: #acb0be;--surface1: #bcc0cc;--surface0: #ccd0da;--mauve: #8839ef;--lavender: #7287fd;--blue: #1e66f5;--sapphire: #209fb5;--sky: #04a5e5;--teal: #179299;--green: #40a02b;--yellow: #df8e1d;--peach: #fe640b;--maroon: #e64553;--red: #d20f39;--pink: #ea76cb;--flamingo: #dd7878;--rosewater: #dc8a78;--background: var(--base);--foreground: var(--text);--primary: var(--mauve);--accent: var(--blue);--highlight: var(--peach);--success: var(--green);--error: var(--red);--warning: var(--yellow);--info: var(--blue);--muted: var(--overlay0);--border: var(--surface1)}@layer base;html{font-size:1em;line-height:1.4;scrollbar-gutter:stable;scroll-behavior:auto;overflow-x:hidden}::-moz-selection{background:var(--surface2);text-shadow:none}::selection{background:var(--surface2);text-shadow:none}hr{display:block;height:1px;border:0;border-top:1px solid var(--surface1);margin:1em 0;padding:0}audio,canvas,iframe,img,svg,video{vertical-align:middle}fieldset{border:0;margin:0;padding:0}textarea{resize:vertical}body{background:var(--background);color:var(--foreground);min-height:100vh;padding:20px;font-family:var(--font-family);display:flex;flex-direction:column}.terminal-container{max-width:1200px;margin:0 auto;animation:fadeIn .5s ease-in;position:relative;flex:1;display:flex;flex-direction:column;width:100%}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.terminal-content{display:flex;flex-direction:column;gap:20px;flex:1;color:var(--text)}#header{margin-bottom:20px;font-size:1.1em}#header:hover{transform:none}.header-content{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding:0 1ch}.header-nav{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.header-nav a{background-color:var(--surface2);padding:5px 10px;transition:all .3s ease;color:var(--text);text-decoration:none;text-align:center;border:2px solid var(--surface2);white-space:nowrap}.header-nav a:hover{border-color:var(--mauve);background-color:var(--mauve);transform:translateY(-2px)}.header-nav a.accent{background-color:var(--sapphire);border-color:var(--sapphire);color:var(--base)}.hamburger-menu{display:none;flex-direction:column;gap:4px;background:none;border:none;cursor:pointer;padding:8px;z-index:1000}.hamburger-menu span{display:block;width:25px;height:3px;background-color:var(--mauve);transition:all .3s ease;border-radius:2px}.hamburger-menu:hover span{background-color:var(--sapphire)}.hamburger-menu.active span:nth-child(1){transform:rotate(45deg) translate(8px,8px)}.hamburger-menu.active span:nth-child(2){opacity:0}.hamburger-menu.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}.terminal-header{background:var(--background);margin-bottom:20px;font-size:1.1em;transition:all .3s ease;position:relative}.terminal-header[box-~=round]:before{border-color:var(--surface1)}.terminal-header[box-~=round]:after{border-color:var(--mauve)}.terminal-header:hover{transform:translateY(-2px)}.terminal-header[box-~=round]:before,.terminal-header[box-~=round]:after{transition:all .3s ease}.prompt{color:var(--accent);font-weight:700}.cursor{animation:blink 1s infinite;color:var(--primary)}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}#terminal:before{content:"";color:var(--text);font-weight:400;margin-right:5px}#terminal:before{animation:fadeInOut 3s infinite}@keyframes fadeInOut{0%,to{opacity:.5}50%{opacity:0}}.terminal-box{background:var(--base);transition:transform .3s ease,box-shadow .3s ease;position:relative;transform:translateY(0)}.terminal-box:hover{transform:translateY(-2px)}.terminal-box[box-~=round]:before,.terminal-box[box-~=round]:after{transition:all .3s ease}.terminal-box:hover[box-~=round]:before,.terminal-box:hover[box-~=round]:after{border-color:var(--mauve)}[box-=round]:before,[box-=round]:after{border-color:var(--surface1)}[box-=round]:hover:before,[box-=round]:hover:after{border-color:var(--mauve)}.box-header{color:var(--text);font-size:.9em;line-height:1}.box-title{color:var(--mauve);font-weight:700;font-size:1em;line-height:1;margin:-1lh 0 .5lh 1ch;padding:0 1ch;text-align:center;background-color:var(--base);max-width:fit-content}.box-title h2,.box-title h3{margin:0;padding:0;text-align:center;color:var(--text)}.box-title-multiple{display:flex;justify-content:space-between;align-items:center;margin:-1lh 1ch .5lh 1ch;padding:0 1ch;width:calc(100% - 4ch)}.box-title-multiple .box-title{margin:0;padding:0}.box-content{color:var(--text);padding:0 1ch;margin-bottom:.5lh}.accent{color:var(--sky);font-weight:700}.highlight{color:var(--peach);font-weight:700;font-size:1.2em}.small{font-size:.85em;color:var(--overlay1);margin-top:5px}.under-construction{font-size:.85em;color:var(--yellow);font-weight:700;font-style:italic;margin-top:5px}.loading{color:var(--subtext0);animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.terminal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}#socials .box-content{padding:.5lh 1ch}.socials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1ch;align-items:stretch}.terminal-button{background:transparent;color:var(--mauve);border:2px solid var(--mauve);padding:10px 20px;cursor:pointer;transition:all .3s ease;margin-top:10px;margin-bottom:10px}.terminal-button:hover{background:var(--mauve);color:var(--base);transform:scale(1.05)}.terminal-button:active{transform:scale(.95)}.terminal-link{color:var(--sapphire);text-decoration:none;border-bottom:1px solid var(--sapphire);transition:all .3s ease;max-width:fit-content}.terminal-link:hover{color:var(--sky);border-bottom-color:var(--sky)}.social-link{display:flex;align-items:center;justify-content:center;color:var(--text);text-decoration:none;border:1px solid var(--surface1);padding:12px;text-align:center;transition:all .3s ease;min-height:44px}.social-link:hover{background:var(--lavender);color:var(--base);border-color:var(--lavender)}.contact-form{display:flex;flex-direction:column;gap:15px}.form-group{display:flex;flex-direction:column;gap:5px}.form-group label{color:var(--sapphire);font-weight:700}.terminal-input{background:var(--surface0);color:var(--text);border:2px solid var(--surface2);padding:10px;outline:none;transition:all .3s ease}.terminal-input:focus{border-color:var(--sapphire);outline:2px solid var(--sapphire);outline-offset:-2px}textarea.terminal-input{resize:vertical;min-height:100px}.response-message{margin-top:15px;padding:10px;border-left:3px solid var(--green);color:var(--green)}#footer{color:var(--overlay1);font-size:.9em;text-align:center;position:relative}#footer p{line-height:1.2}#footer .footer-links{display:flex;gap:15px;justify-content:center;flex-wrap:wrap;margin-top:5px}#footer .footer-links a{font-weight:700;color:var(--sapphire);text-decoration:none;transition:all .3s ease;max-width:fit-content}#footer .footer-links a:hover{color:var(--sky);border-bottom:1px solid var(--sky)}.theme-switcher{position:absolute;top:50%;transform:translateY(-50%);left:20px;display:flex;align-items:center;gap:8px;padding:0;transition:all .3s ease;z-index:10}.theme-label{color:var(--text);font-size:.85em;font-weight:700}.theme-select{background:var(--base);color:var(--text);border:1px solid var(--surface1);padding:4px 8px;margin-top:2px;border-radius:4px;font-family:var(--font-family),serif;font-size:.85em;cursor:pointer;transition:all .3s ease;outline:none}.theme-select:hover{border-color:var(--mauve)}.theme-select:focus{border-color:var(--mauve);box-shadow:0 0 0 2px #cba6f733}.theme-select option{background:var(--base);color:var(--text)}.skeleton{background:linear-gradient(90deg,var(--surface0) 25%,var(--surface1) 50%,var(--surface0) 75%);background-size:200% 100%;animation:loading 1.5s infinite;border-radius:4px}.skeleton-text{height:1em;margin:8px 0;width:100%}.skeleton-text.short{width:60%}.skeleton-title{height:1.5em;margin:10px 0;width:80%}.skeleton-box{padding:20px;min-height:150px}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.htmx-request{transition:opacity .3s ease}.htmx-swapping{animation:fadeIn .3s ease}.hidden,[hidden]{display:none!important}.visually-hidden{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.visually-hidden.focusable:active,.visually-hidden.focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;white-space:inherit;width:auto}.invisible{visibility:hidden}.clearfix:before,.clearfix:after{content:"";display:table}.clearfix:after{clear:both}::selection{background:var(--mauve);color:var(--base);text-shadow:none}::-moz-selection{background:var(--mauve);color:var(--base);text-shadow:none}@media only screen and (max-width:768px){body{padding:10px}.terminal-content{gap:15px}#terminal-header{font-size:.9em;padding:10px}#header{position:relative;z-index:10000}.terminal-box{margin:0;transform:none!important;transition:none!important;min-width:100%}.terminal-box:hover{transform:none!important}.terminal-box:hover[box-~=round]:before,.terminal-box:hover[box-~=round]:after{border-color:var(--surface1)!important}.box-content{overflow:hidden;padding:0 1ch}[box-~=round]:hover:before,[box-~=round]:hover:after{border-color:var(--tertiary)!important}.box-header,.box-title{font-size:.8em;position:relative;margin-top:-1lh;margin-bottom:.5lh;padding:0 1ch;transform:translateY(-2px)}.terminal-grid{grid-template-columns:1fr;gap:15px}.socials-grid{grid-template-columns:1fr;gap:10px}.nav-links{gap:10px;font-size:.9em}.header-content{flex-direction:row;align-items:center;position:relative;padding-top:5px;padding-bottom:5px}.hamburger-menu{display:flex;position:absolute;right:0;top:50%;transform:translateY(-50%);z-index:9999}.header-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--surface0);border:2px solid var(--tertiary);border-radius:4px;padding:15px;margin-top:10px;flex-direction:column;gap:10px;z-index:9998;box-shadow:0 4px 12px #0000004d}.header-nav.active{display:flex}.header-nav a{font-size:.9em;width:100%}#footer{margin-top:0;gap:0px}#footer .footer-links{margin-bottom:0}.theme-switcher{position:static;justify-content:center;margin-top:10px;padding:1ch 0;border-top:1px solid var(--tertiary);transform:none}}@media only screen and (max-width:480px){#header{font-size:1em;margin-bottom:10px;padding:20px 10px 20px 5px}.box-header{font-size:.6em}.socials-grid{grid-template-columns:1fr}}@media print{*,*:before,*:after{background:var(--color-print-bg)!important;color:var(--color-print-text)!important;box-shadow:none!important;text-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="#"]:after,a[href^="javascript:"]:after{content:""}pre{white-space:pre-wrap!important}pre,blockquote{border:1px solid var(--color-print-border);page-break-inside:avoid}tr,img{page-break-inside:avoid}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}}#now-playing .box-content{padding:.5lh 1ch;display:flex;align-items:center;min-height:150px}.music-player{border-left:none;display:flex;align-items:center;width:100%}.now-playing-content{display:flex;justify-content:flex-start;align-items:center;gap:1ch;width:100%;padding:0}.album-art{width:130px;height:130px;border-radius:4px;border:2px solid var(--border);object-fit:cover;flex-shrink:0;transition:all .3s ease}.album-art:hover{border-color:var(--primary);transform:scale(1.05)}.song-details{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0;justify-content:center}.song-details .highlight{font-size:1em;line-height:1.3}.song-details .small{margin-top:0;line-height:1.4}.song-details .music-link{margin-top:5px;display:inline-block}.music-link{font-size:.85em;margin-top:5px}.music-idle-state,.music-playing-state{display:flex;flex-direction:column;gap:8px;font-family:var(--font-family),monospace;padding:0;width:100%}.music-playing-state{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:8px;align-items:start}.music-playing-state .terminal-prompt-line{grid-column:1 / -1}.music-playing-state .terminal-output{grid-column:1;grid-row:2}.music-playing-state .album-art-container{grid-column:2;grid-row:2;display:flex;align-items:flex-start;justify-content:center}.terminal-prompt-line{display:flex;align-items:center;gap:8px;color:var(--text)}.prompt-symbol{color:var(--primary);font-weight:700;font-size:1.1em}.prompt-command{color:var(--accent);font-weight:500}.terminal-output{display:flex;flex-direction:column;gap:4px;padding-left:20px;border-left:2px solid var(--surface1);margin-left:8px;min-width:0;overflow:hidden}.terminal-output.playing{border-left-color:var(--surface1)}.terminal-output:hover,#now-playing:hover .terminal-output{border-left-color:var(--primary)}.output-line{display:flex;align-items:center;gap:8px;font-size:.95em;line-height:1.4;min-width:0;overflow:hidden}.terminal-link-line{flex-wrap:wrap;min-width:0;overflow:hidden}.terminal-link-line .terminal-link{font-size:.85em;word-break:break-all;overflow:hidden;text-overflow:ellipsis;max-width:100%}.output-label{color:var(--overlay1);font-weight:600;min-width:70px;flex-shrink:0}.output-value{color:var(--text);font-weight:500;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.output-value.idle{color:var(--yellow);font-weight:700}.output-value.playing{color:var(--green);font-weight:700;display:flex;align-items:center;gap:6px;white-space:normal}.output-value.highlight-value{color:var(--highlight);font-weight:600}.inline-bars{display:inline-flex;align-items:flex-end;gap:2px;height:10px}.inline-bars span{display:block;width:2px;background-color:var(--green);border-radius:1px}.inline-bars span:nth-child(1){animation:audio-bar-1 .6s ease-in-out infinite}.inline-bars span:nth-child(2){animation:audio-bar-2 .7s ease-in-out infinite}.inline-bars span:nth-child(3){animation:audio-bar-3 .8s ease-in-out infinite}.terminal-cursor-line{display:flex;align-items:center;gap:4px;margin-top:4px}.blinking-cursor{color:var(--primary);animation:blink 1s infinite;font-size:1em}.album-art-container{display:flex;align-items:flex-start;justify-content:center}.album-art-container .album-art{width:120px;height:120px;border-radius:4px;border:2px solid var(--primary);object-fit:cover;flex-shrink:0;transition:all .3s ease;box-shadow:0 4px 8px #0000004d}.album-art-container .album-art:hover{border-color:var(--accent);transform:scale(1.05);box-shadow:0 6px 12px #0006}.album-art-container .album-art.placeholder{border-color:var(--surface1);opacity:.7}#top-artists .box-title-multiple,#top-albums .box-title-multiple,#top-tracks .box-title-multiple{display:flex;justify-content:space-between;align-items:baseline;max-width:100%;height:fit-content;background-color:transparent;padding:0;gap:0;position:static;isolation:auto}#top-artists .box-title-multiple:before,#top-albums .box-title-multiple:before,#top-tracks .box-title-multiple:before,#top-artists .box-title-multiple:after,#top-albums .box-title-multiple:after,#top-tracks .box-title-multiple:after{content:none!important;display:none!important}#top-artists .box-title-multiple .box-title,#top-albums .box-title-multiple .box-title,#top-tracks .box-title-multiple .box-title{padding:2px 10px;margin:0}.period-selector{display:flex;gap:0;flex-wrap:wrap;height:fit-content;margin:0;padding:0}.period-btn{font-size:.85em;padding:2px 12px;line-height:1;cursor:pointer;-webkit-user-select:none;user-select:none;background-color:var(--surface1);color:var(--text);font-weight:700}.period-btn:hover{background-color:var(--muted)}.period-btn.active{background-color:var(--primary);color:var(--background)}.period-btn.active:hover{background-color:var(--accent)}.top-artists-list{padding:0;overflow:hidden;width:100%}.artist-item{padding:12px;border-bottom:1px solid var(--secondary);border-left:3px solid var(--muted);transition:all .2s ease;display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;overflow:hidden;font-size:.95em}.artist-item-group-left{display:flex;justify-content:flex-start;align-items:center;flex-direction:row;gap:5px;flex:1;min-width:0;overflow:hidden}.artist-item:last-child{border-bottom:none}.artist-item:hover{padding-left:5px;border-left:3px solid var(--highlight)}.artist-item.now-playing{background:color-mix(in srgb,var(--primary) 12%,transparent);border-left:3px solid var(--primary)}.artist-item.now-playing:hover{border-left-color:var(--highlight);background:color-mix(in srgb,var(--highlight) 12%,transparent)}@keyframes now-playing-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}@keyframes audio-bar-1{0%,to{height:2px}50%{height:8px}}@keyframes audio-bar-2{0%,to{height:6px}25%{height:2px}75%{height:8px}}@keyframes audio-bar-3{0%,to{height:6px}33%{height:8px}66%{height:2px}}.audio-bars{display:inline-flex;align-items:flex-end;gap:2px;height:12px;margin-right:0;padding-left:3px}.audio-bars span{display:block;width:2px;background-color:var(--primary);border-radius:1px}.audio-bars span:nth-child(1){animation:audio-bar-1 .6s ease-in-out infinite}.audio-bars span:nth-child(2){animation:audio-bar-2 .7s ease-in-out infinite}.audio-bars span:nth-child(3){animation:audio-bar-3 .8s ease-in-out infinite}.artist-plays .audio-bars{position:relative;top:-2px}.title-bars{display:inline-flex;align-items:flex-end;gap:2px;height:10px;margin-left:3px;vertical-align:middle}.title-bars span{display:block;width:3px;background-color:var(--primary);border-radius:1px}.title-bars span:nth-child(1){animation:audio-bar-1 .6s ease-in-out infinite}.title-bars span:nth-child(2){animation:audio-bar-2 .7s ease-in-out infinite}.title-bars span:nth-child(3){animation:audio-bar-3 .8s ease-in-out infinite}.artist-rank{color:var(--highlight);font-weight:700;flex-shrink:0;display:flex;align-items:center}.artist-name{color:var(--foreground);font-weight:500;flex:1;min-width:0;display:flex;align-items:center;overflow:hidden}.track-name-part{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex-shrink:1}.track-artist-part{color:var(--muted);white-space:nowrap;margin-left:8px;flex-shrink:1;overflow:hidden;text-overflow:ellipsis;min-width:0}.artist-plays{color:var(--overlay1);font-size:.85em;flex-shrink:0;text-align:center;display:flex;align-items:center;justify-content:center;gap:4px;min-width:100px}.now-playing .artist-plays{color:var(--primary);font-weight:900;font-size:.9em}.stats-content{padding:0}.stats-grid{display:flex;flex-direction:column;gap:12px}.stat-item{display:flex;justify-content:space-between;align-items:center;padding:0;border-bottom:1px solid var(--secondary);transition:all .2s ease}.stat-item:last-child{border-bottom:none}.stat-item:hover{padding-left:5px;border-left:3px solid var(--primary)}.stat-label{color:var(--accent);font-weight:500;font-size:.95em}.stat-value{color:var(--foreground);font-weight:700;font-size:.9em}.stat-value.highlight{color:var(--highlight);font-size:1.2em}.pinned-project{position:relative}.pinned-project[box-~=round]:before{border-color:var(--primary);border-width:2px;transition:all .3s ease}.pinned-project:hover{transform:translateY(-4px)}.pinned-project:hover[box-~=round]:before{border-color:var(--accent)}.pinned-project .box-title{color:var(--primary);font-weight:700;text-shadow:0 0 10px rgba(203,166,247,.3);transition:color .3s ease,text-shadow .3s ease}.pinned-project:hover .box-title{color:var(--accent);text-shadow:0 0 15px rgba(116,199,236,.5)}.pin-icon:before{content:"󰐃";margin-right:.3em;margin-left:.3em;transition:color .3s ease}.pinned-project:hover .pin-icon:before{color:var(--accent)}.repo-topics{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;margin-bottom:8px}.topic-tag{display:inline-block;background:var(--secondary);color:var(--accent);border:1px solid var(--tertiary);padding:3px 8px;font-size:.75em;border-radius:3px;transition:all .2s ease}.topic-tag:hover{background:var(--accent);color:var(--background);border-color:var(--accent)}.blog-categories{display:flex;flex-direction:column;gap:10px}@media only screen and (max-width:768px){#now-playing .box-content,.music-player{display:flex;justify-content:center;align-items:center}.music-playing-state,.music-idle-state{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:0;width:fit-content;max-width:100%}.music-playing-state{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:8px;width:100%}.music-playing-state .terminal-prompt-line{grid-column:1 / -1}.music-playing-state .terminal-output{grid-column:1;grid-row:2;display:flex;flex-direction:column;gap:4px;padding-left:15px;border-left:2px solid var(--surface1);margin-left:8px;padding-right:8px;padding-bottom:0;margin-bottom:0;align-self:flex-start}.music-playing-state .album-art-container{grid-column:2;grid-row:2;display:flex;justify-content:flex-start;align-items:flex-start;padding-left:8px;padding-top:0}.music-idle-state{display:flex;flex-direction:column}.music-playing-state .terminal-prompt-line,.music-idle-state .terminal-prompt-line{width:100%;justify-content:flex-start}.music-idle-state .terminal-output{display:flex;flex-direction:column;gap:4px;padding-left:15px;border-left:2px solid var(--surface1);margin-left:8px;padding-right:8px;padding-bottom:0;margin-bottom:0;align-self:flex-start}.output-label{min-width:60px;font-size:.9em}.output-value{font-size:.9em}.terminal-link-line .terminal-link{font-size:.8em}.now-playing-content{flex-direction:column;align-items:flex-start;gap:12px}.album-art{width:100px;height:100px;flex-shrink:0}.song-details{flex:1;min-width:0}.period-btn{font-size:.65em;padding:2px 8px}.period-selector{margin-top:0}#now-playing .box-title{margin-top:-1lh;transform:translateY(-2px)}#top-artists .box-title-multiple,#top-albums .box-title-multiple,#top-tracks .box-title-multiple{margin-top:-1lh;margin-bottom:.3lh}#top-artists .box-title-multiple .box-title,#top-albums .box-title-multiple .box-title,#top-tracks .box-title-multiple .box-title{transform:translateY(3px)}.top-artists-list,.top-albums-list,.top-tracks-list,.recent-tracks-list{display:flex;flex-direction:column;width:100%;overflow:hidden}.artist-item{display:flex;align-items:stretch;justify-content:space-between;width:100%;overflow:hidden;padding:5px 10px}.artist-item:last-child{border-bottom:none;margin-right:10px}.artist-rank{flex-shrink:0;text-align:center;width:30px;font-size:1.2em}.artist-item-group-left{display:flex;justify-content:flex-start;align-items:center;flex-direction:row;gap:5px;flex:1;min-width:0;overflow:hidden}.artist-item-group-right{display:flex;align-items:center;justify-content:center;gap:8px;flex-shrink:0;max-width:30%;width:100%;overflow:visible}.artist-name{flex:1;min-width:0;padding-left:5px;padding-right:5px;font-size:1em;font-weight:bolder;overflow:hidden;text-align:left;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;flex-wrap:nowrap;max-width:100%}.track-name-part{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.track-artist-part{display:block;margin-left:0;margin-top:2px;font-size:.85em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.artist-plays{display:flex;text-align:center;font-size:1em;white-space:nowrap;padding-left:0;padding-right:3px;max-width:100%;min-width:100px;overflow:visible;text-overflow:ellipsis}.now-playing .artist-plays{font-size:1em}.artist-item:hover{border-left-color:var(--muted)}.stat-item:hover{padding-left:0;border-left:none}.title-bars{height:10px;position:relative;top:-2px}}@media only screen and (max-width:480px){#now-playing .box-content,.music-player{display:flex;justify-content:center;align-items:center}.music-playing-state,.music-idle-state{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:0;width:fit-content;max-width:100%}.music-playing-state{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:8px;width:100%}.music-playing-state .terminal-prompt-line{grid-column:1 / -1}.music-playing-state .terminal-output{grid-column:1;grid-row:2;display:flex;flex-direction:column;gap:4px;padding-left:15px;border-left:2px solid var(--surface1);margin-left:8px;padding-bottom:0;margin-bottom:0;align-self:flex-start}.music-playing-state .terminal-output.playing{border-left-color:var(--surface1)}.music-playing-state .album-art-container{grid-column:2;grid-row:2;display:flex;justify-content:flex-start;align-items:flex-start;padding-left:8px;padding-top:0}.music-playing-state .album-art-container .album-art:not(.placeholder){border-left-color:var(--primary)}.music-idle-state{display:flex;flex-direction:column}.music-playing-state .terminal-prompt-line,.music-idle-state .terminal-prompt-line{display:flex;justify-content:flex-start;width:100%}.music-idle-state .terminal-output{display:flex;flex-direction:column;gap:4px;padding-left:15px;border-left:2px solid var(--surface1);margin-left:8px;padding-bottom:0;margin-bottom:0;align-self:flex-start}.album-art-container .album-art{width:120px;height:120px}.period-selector{margin-top:-1px}#now-playing .box-title{margin-top:-1lh;transform:translateY(-2px)}#top-artists .box-title-multiple,#top-albums .box-title-multiple,#top-tracks .box-title-multiple{margin-top:-1lh;margin-bottom:.3lh}#top-artists .box-title-multiple .box-title,#top-albums .box-title-multiple .box-title,#top-tracks .box-title-multiple .box-title{transform:translateY(3px)}.artist-item{display:flex;align-items:center;justify-content:space-between;width:100%;overflow:hidden;padding:5px 10px}.artist-item-group-left{display:flex;justify-content:flex-start;align-items:center;flex-direction:row;gap:5px;flex:1;min-width:0;overflow:hidden}.artist-rank{text-align:center;font-size:1.2em}.artist-plays{font-size:1em}.song-details .highlight{font-size:.95em}.song-details .small{font-size:.9em}}
