button.svelte-1bccmgh,a.button.svelte-1bccmgh{font-family:var(--font-sans);font-weight:var(--font-medium);border-radius:var(--radius-md);border:.5px solid transparent;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);transition:all var(--transition-base);line-height:1;white-space:nowrap;-webkit-user-select:none;user-select:none;text-decoration:none}.sm.svelte-1bccmgh{height:2rem;padding:0 var(--space-3);font-size:var(--text-xs);line-height:1}.md.svelte-1bccmgh{height:2.5rem;padding:0 var(--space-4);font-size:var(--text-sm);line-height:1}.lg.svelte-1bccmgh{height:3rem;padding:0 var(--space-5);font-size:var(--text-base);line-height:1}.primary.svelte-1bccmgh{background:var(--primary);color:#fff;border-color:transparent}.primary.svelte-1bccmgh:hover:not(:disabled){background:var(--primary-hover);opacity:.9}.primary.svelte-1bccmgh:active:not(:disabled){opacity:.95}.secondary.svelte-1bccmgh{background:color-mix(in oklch,var(--surface) 96%,var(--neutral-800));color:var(--foreground);border-color:color-mix(in oklch,var(--neutral-900) 30%,transparent)}.dark .secondary.svelte-1bccmgh{background:color-mix(in oklch,var(--surface) 96%,var(--neutral-600));border-color:color-mix(in oklch,var(--neutral-700) 25%,transparent)}.secondary.svelte-1bccmgh:hover:not(:disabled){background:var(--surface-tertiary);opacity:.95}.ghost.svelte-1bccmgh{background:transparent;color:var(--foreground-secondary);border-color:transparent;font-weight:var(--font-normal)}.ghost.svelte-1bccmgh:hover:not(:disabled){background:color-mix(in oklch,var(--surface) 95%,transparent);color:var(--foreground)}.ghost.semantic-success.svelte-1bccmgh:hover:not(:disabled){background:color-mix(in oklch,var(--success) 15%,transparent);color:var(--success)}.ghost.semantic-warning.svelte-1bccmgh:hover:not(:disabled){background:color-mix(in oklch,var(--warning) 15%,transparent);color:var(--warning)}.ghost.semantic-error.svelte-1bccmgh:hover:not(:disabled){background:color-mix(in oklch,var(--error) 15%,transparent);color:var(--error)}.ghost.semantic-info.svelte-1bccmgh:hover:not(:disabled){background:color-mix(in oklch,var(--info) 15%,transparent);color:var(--info)}button.outline.svelte-1bccmgh,a.button.outline.svelte-1bccmgh{background:transparent;color:var(--primary);border-width:.5px!important;border-style:solid!important;border-color:color-mix(in oklch,var(--primary) 40%,transparent);font-weight:var(--font-normal);outline:none}button.outline.svelte-1bccmgh:hover:not(:disabled),a.button.outline.svelte-1bccmgh:hover:not(:disabled){background:color-mix(in oklch,var(--primary) 10%,transparent);border-color:color-mix(in oklch,var(--primary) 60%,transparent)}button.svelte-1bccmgh:focus-visible,a.button.svelte-1bccmgh:focus-visible{outline:1px solid var(--focus-ring);outline-offset:1px}button.svelte-1bccmgh:disabled,button.disabled.svelte-1bccmgh,a.button.disabled.svelte-1bccmgh{opacity:.5;cursor:not-allowed}button.loading.svelte-1bccmgh,a.button.loading.svelte-1bccmgh{pointer-events:none;cursor:wait}button.svelte-1bccmgh svg,a.button.svelte-1bccmgh svg{width:1.25em;height:1.25em;flex-shrink:0}.button-group{display:inline-flex;gap:0;isolation:isolate}.button-group button.svelte-1bccmgh,.button-group a.button.svelte-1bccmgh{border-radius:0;position:relative}.button-group button.svelte-1bccmgh:not(:last-child),.button-group a.button.svelte-1bccmgh:not(:last-child){border-right:none}.button-group button.svelte-1bccmgh:hover,.button-group button.svelte-1bccmgh:focus-visible,.button-group a.button.svelte-1bccmgh:hover,.button-group a.button.svelte-1bccmgh:focus-visible{z-index:1}.button-group button.svelte-1bccmgh:first-child,.button-group a.button.svelte-1bccmgh:first-child{border-top-left-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md)}.button-group button.svelte-1bccmgh:last-child,.button-group a.button.svelte-1bccmgh:last-child{border-top-right-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md);border-right:.5px solid}.button-group button.secondary.svelte-1bccmgh:last-child,.button-group a.button.secondary.svelte-1bccmgh:last-child{border-right-color:color-mix(in oklch,var(--neutral-900) 30%,transparent)}.dark .button-group button.secondary.svelte-1bccmgh:last-child,.dark .button-group a.button.secondary.svelte-1bccmgh:last-child{border-right-color:color-mix(in oklch,var(--neutral-700) 25%,transparent)}.button-group button.outline.svelte-1bccmgh:last-child,.button-group a.button.outline.svelte-1bccmgh:last-child{border-right-color:color-mix(in oklch,var(--primary) 40%,transparent)}.button-group button.ghost.svelte-1bccmgh:last-child,.button-group a.button.ghost.svelte-1bccmgh:last-child{border-right-color:transparent}.button-group button.primary.svelte-1bccmgh:last-child,.button-group a.button.primary.svelte-1bccmgh:last-child{border-right-color:transparent}.outline.semantic-success.svelte-1bccmgh{color:var(--success);border-width:.5px!important;border-style:solid!important;border-color:color-mix(in oklch,var(--success) 40%,transparent)!important}.outline.semantic-success.svelte-1bccmgh:hover:not(:disabled){border-color:color-mix(in oklch,var(--success-hover) 60%,transparent)!important}.outline.semantic-warning.svelte-1bccmgh{color:var(--warning);border-width:.5px!important;border-style:solid!important;border-color:color-mix(in oklch,var(--warning) 40%,transparent)!important}.outline.semantic-warning.svelte-1bccmgh:hover:not(:disabled){border-color:color-mix(in oklch,var(--warning-hover) 60%,transparent)!important}.outline.semantic-error.svelte-1bccmgh{color:var(--error);border-width:.5px!important;border-style:solid!important;border-color:color-mix(in oklch,var(--error) 40%,transparent)!important}.outline.semantic-error.svelte-1bccmgh:hover:not(:disabled){border-color:color-mix(in oklch,var(--error-hover) 60%,transparent)!important}.outline.semantic-info.svelte-1bccmgh{color:var(--info);border-width:.5px!important;border-style:solid!important;border-color:color-mix(in oklch,var(--info) 40%,transparent)!important}.outline.semantic-info.svelte-1bccmgh:hover:not(:disabled){border-color:color-mix(in oklch,var(--info-hover) 60%,transparent)!important}.splash.svelte-1uha8ag{transition:all .7s ease}.splash.unmounted.svelte-1uha8ag{opacity:0;transform:translateY(var(--space-4))}.splash.mounted.svelte-1uha8ag{opacity:1;transform:translateY(0)}.title.svelte-1uha8ag{font-size:clamp(3rem,8vw,6rem);color:var(--typography-display-color);font-weight:var(--typography-display-weight);line-height:.9;letter-spacing:var(--typography-display-spacing);margin:0 0 var(--space-4) 0;padding:0;font-family:var(--font-sans)}.subtitle.svelte-1uha8ag{font-size:1.25rem;color:var(--typography-muted-color);margin-bottom:var(--space-8)}.actions.svelte-1uha8ag{margin-bottom:var(--space-8)}.section-title.svelte-1uha8ag{font-size:2rem;font-weight:600;text-align:center;margin-bottom:var(--space-12);color:var(--typography-heading-color)}.project-grid.svelte-1uha8ag{display:grid;gap:var(--space-4)}.project-card.svelte-1uha8ag{display:grid;grid-template-columns:120px 1fr;gap:var(--space-4);align-items:center;padding:var(--space-4);background:var(--surface-secondary);border-radius:var(--radius-md);transition:var(--transition-base)}.project-card.svelte-1uha8ag:hover{background:color-mix(in oklch,var(--surface-secondary) 96%,var(--neutral-600))}.project-visual.svelte-1uha8ag{display:flex;align-items:center;justify-content:center;height:80px}.project-logo.svelte-1uha8ag{width:64px;height:64px;background:var(--primary);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;opacity:.9}.logo-text.svelte-1uha8ag{color:#fff;font-size:1.5rem;font-weight:600;line-height:1}.project-info.svelte-1uha8ag{display:flex;flex-direction:column;gap:var(--space-2)}.project-header.svelte-1uha8ag{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3)}.project-title.svelte-1uha8ag{color:var(--typography-heading-color);font-size:1.125rem;font-weight:600;text-decoration:none;transition:color var(--transition-base);margin:0}.project-title.svelte-1uha8ag:hover{color:var(--primary)}.status-dot.svelte-1uha8ag{width:8px;height:8px;border-radius:var(--radius-full);flex-shrink:0}.project-description.svelte-1uha8ag{color:var(--typography-caption-color);font-size:var(--typography-caption-size);line-height:var(--typography-caption-line);margin:0}.tech-stack.svelte-1uha8ag{display:flex;flex-wrap:wrap;gap:var(--space-2)}.tech-more.svelte-1uha8ag{display:inline-flex;align-items:center;background:var(--surface-secondary);font-family:var(--font-mono);font-size:var(--typography-caption-size);color:var(--typography-caption-color);font-weight:var(--typography-caption-weight);line-height:var(--typography-caption-line);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--border);font-style:italic}.project-cta.svelte-1uha8ag{color:var(--primary);font-weight:500;text-decoration:none;font-size:var(--text-sm);transition:color var(--transition-base);display:inline-block}.project-cta.svelte-1uha8ag:hover{color:var(--typography-primary-hover)}.dark .project-card.svelte-1uha8ag{background:color-mix(in oklch,var(--surface) 96%,var(--neutral-600))}
