html.Portfolio body.portfolio-body .AsciiMessage{margin-top:2rem}html.Portfolio body.portfolio-body .AsciiMessage .ascii-message-box{border:1px solid var(--color-border);background:var(--color-surface);font-family:var(--font-body);border-radius:.375rem;padding:1.25rem 1.5rem;font-size:.9375rem;line-height:1.5}html.Portfolio body.portfolio-body .AsciiMessage .ascii-message-title{color:var(--color-accent);font-weight:var(--font-weight-semibold);margin-bottom:.75rem}html.Portfolio body.portfolio-body .AsciiMessage .ascii-message-line{color:var(--color-foreground);margin:.125rem 0}
html.Portfolio body.portfolio-body .Classifieds{border-top:2px solid var(--color-foreground);border-bottom:2px solid var(--color-foreground);margin-top:2rem;padding:1.5rem 0}html.Portfolio body.portfolio-body .Classifieds .classifieds-heading{text-transform:uppercase;letter-spacing:.15em;margin-bottom:.25rem;font-size:1rem;font-weight:700}html.Portfolio body.portfolio-body .Classifieds .classifieds-subtitle{color:var(--color-muted);margin-bottom:1rem;font-size:.75rem;font-style:italic}html.Portfolio body.portfolio-body .Classifieds .classifieds-list{grid-template-columns:1fr;gap:.75rem;display:grid}@media (min-width:640px){html.Portfolio body.portfolio-body .Classifieds .classifieds-list{grid-template-columns:1fr 1fr}}html.Portfolio body.portfolio-body .Classifieds .classifieds-ad{border-bottom:1px dashed var(--color-border);padding:.5rem 0}html.Portfolio body.portfolio-body .Classifieds .classifieds-ad .classifieds-ad-header{text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem;font-size:.75rem;font-weight:700}html.Portfolio body.portfolio-body .Classifieds .classifieds-ad .classifieds-ad-body{margin:0;font-size:.875rem;line-height:1.4}
html.Portfolio body.portfolio-body .CommandPrompt{margin-top:2rem}html.Portfolio body.portfolio-body .CommandPrompt .command-prompt-screen{background:var(--color-surface);border:1px solid var(--color-border);font-family:var(--font-body);border-radius:.375rem;min-height:12rem;padding:1rem 1.25rem;font-size:.9375rem;line-height:1.4;position:relative;overflow:hidden}html.Portfolio body.portfolio-body .CommandPrompt .command-prompt-control{border:1px solid var(--color-border);color:var(--color-foreground);cursor:pointer;background:0 0;border-radius:.25rem;justify-content:center;align-items:center;padding:.375rem;transition:background-color .15s;display:inline-flex;position:absolute;top:.5rem;right:.5rem}html.Portfolio body.portfolio-body .CommandPrompt .command-prompt-control:hover{background-color:var(--color-hover-bg)}html.Portfolio body.portfolio-body .CommandPrompt .command-prompt-control:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}html.Portfolio body.portfolio-body .CommandPrompt .command-prompt-line{flex-wrap:wrap;align-items:baseline;display:flex}html.Portfolio body.portfolio-body .CommandPrompt .command-prompt-sigil{color:var(--color-accent);white-space:pre}html.Portfolio body.portfolio-body .CommandPrompt .command-prompt-typed{color:var(--color-foreground)}html.Portfolio body.portfolio-body .CommandPrompt .command-prompt-cursor{color:var(--color-foreground);margin-left:.125rem;animation:1s steps(2,end) infinite command-prompt-blink}@media (prefers-reduced-motion:reduce){html.Portfolio body.portfolio-body .CommandPrompt .command-prompt-cursor{animation:none}}html.Portfolio body.portfolio-body .CommandPrompt .command-prompt-output{color:var(--color-muted);white-space:pre-wrap;margin:.5rem 0 0;font-family:inherit}@keyframes command-prompt-blink{0%,50%{opacity:1}51%,to{opacity:0}}
html.Portfolio body.portfolio-body .Dropcap p{text-align:justify;-webkit-hyphens:auto;hyphens:auto}html.Portfolio body.portfolio-body .Dropcap p:first-letter{float:left;color:var(--color-foreground);font-size:3.5rem;font-weight:700;line-height:.85;font-family:var(--font-heading);padding:.25rem .5rem 0 0}
html.Portfolio body.portfolio-body .Newsticker{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);background:var(--color-surface);margin-top:2rem;padding:.5rem 0;overflow:hidden}html.Portfolio body.portfolio-body .Newsticker .newsticker-track{gap:3rem;width:max-content;display:flex}@media (prefers-reduced-motion:no-preference){html.Portfolio body.portfolio-body .Newsticker .newsticker-track{animation:45s linear infinite newsticker-scroll}}html.Portfolio body.portfolio-body .Newsticker:hover .newsticker-track,html.Portfolio body.portfolio-body .Newsticker:focus-within .newsticker-track{animation-play-state:paused}html.Portfolio body.portfolio-body .Newsticker .newsticker-item{white-space:nowrap;flex-shrink:0;font-size:.875rem}@keyframes newsticker-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}
html.Portfolio body.portfolio-body .Showcase{margin-top:3rem}html.Portfolio body.portfolio-body .Showcase .showcase-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 1rem;margin-bottom:1.25rem;display:flex}html.Portfolio body.portfolio-body .Showcase .showcase-heading{font-size:var(--text-heading-2);font-weight:var(--font-weight-semibold)}html.Portfolio body.portfolio-body .Showcase .showcase-grid{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1rem;display:grid}html.Portfolio body.portfolio-body .Showcase .showcase-card{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:.5rem;flex-direction:column;gap:.5rem;padding:1.25rem;display:flex}html.Portfolio body.portfolio-body .Showcase .showcase-card .showcase-card-icon{width:var(--icon-size-lg);height:var(--icon-size-lg);color:var(--color-accent)}html.Portfolio body.portfolio-body .Showcase .showcase-card .showcase-card-label{font-family:var(--font-heading);font-size:1.125rem;font-weight:var(--font-weight-semibold);color:var(--color-foreground);line-height:1.2}html.Portfolio body.portfolio-body .Showcase .showcase-card .showcase-card-description{color:var(--color-muted);font-size:.875rem;line-height:1.5}
html.Portfolio body.portfolio-body .ThemeGallery{margin-top:2rem}html.Portfolio body.portfolio-body .ThemeGallery .theme-gallery-heading{font-size:1.25rem;font-weight:var(--font-weight-semibold);margin-bottom:.25rem}html.Portfolio body.portfolio-body .ThemeGallery .theme-gallery-subtitle{color:var(--color-muted);margin-bottom:1.5rem;font-size:.875rem}html.Portfolio body.portfolio-body .ThemeGallery .theme-gallery-grid{grid-template-columns:1fr;gap:1rem;display:grid}@media (min-width:640px){html.Portfolio body.portfolio-body .ThemeGallery .theme-gallery-grid{grid-template-columns:repeat(2,1fr)}}html.Portfolio body.portfolio-body .ThemeGallery .theme-gallery-grid .theme-gallery-card{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm);color:var(--color-foreground);border-radius:.5rem;flex-direction:column;align-items:flex-start;gap:.5rem;padding:1rem;text-decoration:none;transition:background-color .15s ease-out,border-color .15s ease-out,box-shadow .15s ease-out;display:flex}html.Portfolio body.portfolio-body .ThemeGallery .theme-gallery-grid .theme-gallery-card:hover:not([aria-current=true]),html.Portfolio body.portfolio-body .ThemeGallery .theme-gallery-grid .theme-gallery-card:focus-visible:not([aria-current=true]){background-color:var(--color-hover-bg)}html.Portfolio body.portfolio-body .ThemeGallery .theme-gallery-grid .theme-gallery-card:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}html.Portfolio body.portfolio-body .ThemeGallery .theme-gallery-grid .theme-gallery-card[aria-current=true]{background:var(--color-foreground);color:var(--color-background)}html.Portfolio body.portfolio-body .ThemeGallery .theme-gallery-grid .theme-gallery-card[aria-current=true]:hover{background:var(--color-active-hover-bg)}html.Portfolio body.portfolio-body .ThemeGallery .theme-gallery-grid .theme-gallery-card[aria-current=true] .theme-gallery-card-description{color:inherit;opacity:.75}html.Portfolio body.portfolio-body .ThemeGallery .theme-gallery-grid .theme-gallery-card .theme-gallery-card-favicon{font-size:1.75rem;line-height:1}html.Portfolio body.portfolio-body .ThemeGallery .theme-gallery-grid .theme-gallery-card .theme-gallery-card-name{font-size:1rem;font-weight:var(--font-weight-semibold);margin:0}html.Portfolio body.portfolio-body .ThemeGallery .theme-gallery-grid .theme-gallery-card .theme-gallery-card-description{color:var(--color-muted);margin:0;font-size:.8125rem;line-height:1.4}
html.Portfolio body.portfolio-body .HomePage .home-page-intro{width:100%;min-width:0}html.Portfolio body.portfolio-body .HomePage .home-page-intro .home-page-name{font-size:var(--text-heading-1);font-weight:700}html.Portfolio body.portfolio-body .HomePage .home-page-intro .home-page-role{color:var(--color-muted);font-weight:var(--font-weight-medium)}
