@import"https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable-dynamic-subset.min.css";.status-page{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:var(--spacing-stack-lg);padding:var(--spacing-section-lg) var(--spacing-section-md)}.status-page-media{width:min(100%,22rem);height:auto}.status-page-copy{display:flex;flex-direction:column;gap:var(--spacing-stack-sm);max-width:36rem}.status-page-copy h1{margin:0;font-size:var(--text-heading-h2-size);font-weight:var(--text-heading-h2-weight);line-height:var(--text-heading-h2-line-height);color:var(--color-text-primary)}.status-page-copy p{margin:0;font-size:var(--text-body-md-size);line-height:var(--text-body-md-line-height);color:var(--color-text-secondary)}.status-page-link{color:var(--color-brand-primary);font-size:var(--text-body-sm-size);font-weight:var(--font-weight-semibold);line-height:var(--text-body-sm-line-height)}.status-page-link:hover{color:var(--color-text-secondary)}.ui-button{display:inline-flex;align-items:center;justify-content:center;border:var(--border-default) solid transparent;border-radius:var(--radius-control-default);padding:var(--spacing-inset-sm) var(--spacing-inset-md);font-size:var(--text-body-sm-size);font-weight:var(--font-weight-medium);line-height:var(--text-body-sm-line-height);transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease}.ui-button:focus-visible,.ui-icon-button:focus-visible,.ui-category:focus-visible,.ui-search-input:focus-visible{outline:none;box-shadow:0 0 0 var(--border-focus) color-mix(in srgb,var(--color-border-focus) 35%,transparent)}.ui-button-light{background:var(--color-bg-subtle);color:var(--color-brand-primary-hover)}.ui-button-gray{background:var(--color-brand-muted);color:var(--color-brand-primary-active)}.ui-button-dark{background:var(--color-brand-primary-hover);color:var(--color-text-inverse)}.ui-button-bluegray{background:var(--color-brand-primary);color:var(--color-text-inverse)}.ui-button-light:not(:disabled):hover{background:var(--color-bluegray-100);color:var(--color-bluegray-800)}.ui-button-gray:not(:disabled):hover{background:var(--color-bluegray-200);color:var(--color-bluegray-800)}.ui-button-dark:not(:disabled):hover{background:var(--color-brand-primary)}.ui-button-bluegray:not(:disabled):hover{background:var(--color-brand-primary-active)}.ui-button-light:not(:disabled):active,.ui-button-gray:not(:disabled):active,.ui-button-dark:not(:disabled):active{background:var(--color-bluegray-300);color:var(--color-text-inverse)}.ui-button-bluegray:not(:disabled):active{background:var(--color-bluegray-300)}.ui-button[disabled],.ui-icon-button[disabled]{cursor:not-allowed;background:var(--color-bluegray-200);color:var(--color-bluegray-100);border-color:transparent}.ui-icon{width:var(--size-icon-button-md);height:var(--size-icon-button-md);border-radius:var(--radius-surface-subtle);border:var(--border-default) solid var(--color-bluegray-100);background:var(--color-bg-subtle);display:inline-flex;align-items:center;justify-content:center;color:var(--color-brand-primary-hover);font-size:var(--text-body-md-size)}.ui-icon-glyph{width:var(--size-icon-glyph-sm);height:var(--size-icon-glyph-sm);color:var(--color-brand-primary)}.ui-icon-button{width:var(--size-icon-button-md);height:var(--size-icon-button-md);border:0;border-radius:var(--radius-control-small);display:inline-flex;align-items:center;justify-content:center;background:var(--color-bg-subtle);color:var(--color-brand-primary-hover)}.ui-icon-button-glyph{display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%;line-height:0}.ui-icon-button-glyph .ui-icon-glyph,.ui-icon-button-glyph svg{width:var(--size-icon-glyph-sm);height:var(--size-icon-glyph-sm);color:inherit;display:block;flex-shrink:0}.ui-icon-button:not(:disabled):hover{background:var(--color-bluegray-100)}.ui-icon-button:not(:disabled):active{background:var(--color-bluegray-200);color:var(--color-brand-primary)}.ui-overlay-badge{display:inline-flex;align-items:center;gap:var(--spacing-inline-xs);border-radius:var(--radius-control-pill);border:var(--border-default) solid var(--color-bluegray-100);padding:var(--spacing-inset-sm) var(--spacing-inset-md);font-size:var(--text-caption-size);font-weight:var(--font-weight-semibold);line-height:var(--text-caption-line-height);color:var(--color-brand-primary-hover);background:var(--color-bg-subtle)}.ui-overlay-dot{width:var(--size-indicator-dot-sm);height:var(--size-indicator-dot-sm);border-radius:var(--radius-full);background:var(--color-brand-primary)}.ui-tone-info{background:var(--color-status-info-subtle);border-color:var(--color-blue-100);color:var(--color-blue-700)}.ui-tone-info .ui-overlay-dot{background:var(--color-status-info)}.ui-tone-success{background:var(--color-status-success-subtle);border-color:var(--color-green-100);color:var(--color-green-700)}.ui-tone-success .ui-overlay-dot{background:var(--color-status-success)}.ui-tone-warning{background:var(--color-status-warning-subtle);border-color:var(--color-yellow-100);color:var(--color-yellow-700)}.ui-tone-warning .ui-overlay-dot{background:var(--color-status-warning)}.ui-tone-danger{background:var(--color-status-error-subtle);border-color:var(--color-red-100);color:var(--color-red-700)}.ui-tone-danger .ui-overlay-dot{background:var(--color-status-error)}.ui-searchbar{width:100%;max-width:var(--size-searchbar-max-lg)}.ui-searchbar-wrap{position:relative}.ui-search-icon{position:absolute;left:var(--spacing-stack-sm);top:50%;transform:translateY(-50%);color:var(--color-text-disabled);font-size:var(--text-body-sm-size)}.ui-search-icon-svg,.ui-inline-icon{width:var(--size-icon-glyph-sm);height:var(--size-icon-glyph-sm);color:var(--color-brand-primary);display:block;flex-shrink:0}.ui-search-input{width:100%;border-radius:var(--radius-control-default);border:var(--border-default) solid var(--color-bluegray-100);background:var(--color-bg-surface);color:var(--color-text-secondary);font-size:var(--text-body-sm-size);line-height:var(--text-body-sm-line-height);padding:var(--spacing-inset-sm) var(--spacing-inset-md) var(--spacing-inset-sm) var(--size-input-icon-leading)}.ui-search-input::placeholder{color:var(--color-text-disabled)}.ui-category{border:0;border-radius:var(--radius-control-small);padding:var(--spacing-inset-sm) var(--spacing-inset-md);background:var(--color-bg-subtle);color:var(--color-brand-primary-hover);font-size:var(--text-body-sm-size);font-weight:var(--font-weight-medium);line-height:var(--text-body-sm-line-height)}.ui-category.is-selected{background:var(--color-brand-primary);color:var(--color-text-inverse)}.ui-category:not(.is-selected):hover{background:var(--color-bluegray-100);color:var(--color-brand-primary-hover)}.ui-search-filter{display:flex;flex-direction:column;gap:var(--spacing-stack-md);padding-bottom:var(--spacing-stack-xl);border-bottom:var(--border-default) solid var(--color-bluegray-100)}.ui-search-filter-categories{display:flex;flex-wrap:wrap;gap:var(--spacing-inline-xs)}.ui-search-filter.desktop{align-items:center}.ui-badge{display:inline-flex;align-items:center;border:var(--border-default) solid var(--color-bluegray-100);border-radius:var(--radius-control-small);padding:var(--spacing-inset-sm) var(--spacing-inset-sm);font-size:var(--text-caption-size);font-weight:var(--font-weight-medium);line-height:var(--text-caption-line-height);background:var(--color-bg-surface);color:var(--color-brand-primary-hover)}.ui-badge-skyblue{background:var(--color-skyblue-100);border-color:var(--color-skyblue-200);color:var(--color-skyblue-800)}.ui-badge-lightgray{background:var(--color-gray-50);border-color:var(--color-gray-100);color:var(--color-gray-700)}.ui-badge-darkblue{background:var(--color-bluegray-700);border-color:var(--color-bluegray-700);color:var(--color-text-inverse)}.ui-badge-bluegray{background:var(--color-bluegray-100);border-color:var(--color-bluegray-200);color:var(--color-bluegray-800)}.ui-card,.ui-project-card,.ui-article{border-radius:var(--radius-surface-prominent);transition:background-color .2s ease,box-shadow .2s ease}.ui-card{background:var(--color-bg-surface);box-shadow:var(--elevation-md);padding:var(--spacing-inset-lg);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;align-self:stretch;gap:var(--spacing-stack-sm)}.ui-card.hover,.ui-card:hover{background:var(--color-skyblue-50);box-shadow:var(--elevation-xl)}.ui-card-footer,.ui-project-card-footer,.ui-article-link{display:inline-flex;justify-content:flex-end;align-items:center;align-self:stretch;gap:var(--spacing-inline-xs);color:var(--color-brand-primary);font-size:var(--text-body-sm-size);font-weight:var(--font-weight-medium)}.ui-project-card{background:var(--color-bg-surface);box-shadow:var(--elevation-md);padding:var(--spacing-inset-lg);display:flex;flex-direction:column;gap:var(--spacing-stack-md)}.ui-project-card.hover,.ui-project-card:hover{background:var(--color-skyblue-50);box-shadow:var(--elevation-xl)}.ui-project-media,.ui-article-media{width:100%;border-radius:var(--radius-media-default);background:var(--color-bg-subtle);display:block;object-fit:cover}.ui-project-media{aspect-ratio:16 / 10}.ui-project-card-title,.ui-card-title{margin:0;color:var(--color-text-brand-primary)}.ui-card-title{font-size:var(--text-heading-h5-size);font-weight:var(--text-heading-h5-weight);line-height:var(--text-heading-h5-line-height)}.ui-project-card-title{font-size:var(--text-heading-h4-size);font-weight:var(--text-heading-h4-weight);line-height:var(--text-heading-h4-line-height)}.ui-card-description,.ui-project-card-description,.ui-article-description,.ui-article-date{margin:0}.ui-card-description,.ui-project-card-description{color:var(--color-text-brand-secondary)}.ui-article-description,.ui-article-date{color:var(--color-text-secondary)}.ui-card-description,.ui-article-date,.ui-project-card-description,.ui-article-description{font-size:var(--text-body-sm-size);line-height:var(--text-body-sm-line-height)}.ui-badge-list{display:flex;flex-wrap:wrap;gap:var(--spacing-inline-xs)}.ui-article{padding:var(--spacing-inset-md);display:flex;flex-direction:column;gap:var(--spacing-stack-md)}.ui-article.hover,.ui-article:hover{background:var(--color-skyblue-50);box-shadow:var(--elevation-lg)}.ui-article-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-stack-md)}.ui-article-content{display:flex;flex-direction:column;gap:var(--spacing-stack-sm);border-left:var(--border-default) solid var(--color-bluegray-100);padding-left:var(--spacing-inset-md)}.ui-article-title{margin:0;font-size:var(--text-heading-h4-size);font-weight:var(--text-heading-h4-weight);line-height:var(--text-heading-h4-line-height);color:var(--color-text-primary)}.ui-article-media.mobile-only{display:block}.ui-article-media.side-media{display:none;height:100%;min-height:var(--size-media-min-height-sm)}@media (min-width: 48rem){.ui-search-filter.desktop{flex-direction:row;justify-content:space-between;gap:var(--spacing-inline-lg)}.ui-search-filter.desktop .ui-search-filter-categories{flex:1}.ui-search-filter.desktop .ui-searchbar{max-width:var(--size-searchbar-max-md)}.ui-article.tablet .ui-article-grid,.ui-article.desktop .ui-article-grid{grid-template-columns:var(--layout-article-media-col) 1fr var(--layout-article-side-col-md);align-items:stretch;gap:var(--spacing-inline-lg)}.ui-article.tablet .ui-article-media.mobile-only,.ui-article.desktop .ui-article-media.mobile-only{display:none}.ui-article.tablet .ui-article-media.side-media,.ui-article.desktop .ui-article-media.side-media{display:block}}@media (min-width: 64rem){.ui-article.desktop .ui-article-grid{grid-template-columns:var(--layout-article-media-col) 1fr var(--layout-article-side-col-lg)}}.app-shell{min-height:100vh;display:flex;flex-direction:column;background:var(--color-bg-default)}.app-main{flex:auto;display:flex;flex-direction:column;align-items:stretch}.app-main-content{width:100%;max-width:calc(var(--layout-breakpoint-lg));margin-inline:auto}.app-header{position:relative;z-index:10;background:color-mix(in srgb,var(--color-bg-surface) 60%,transparent);-webkit-backdrop-filter:blur(var(--border-focus));backdrop-filter:blur(var(--border-focus))}.app-header-inner{display:flex;align-items:center;justify-content:space-between;min-height:var(--size-icon-glyph-sm)}.app-header-mobile{padding:var(--spacing-section-sm)}.app-header-desktop{display:none}.app-brand{display:inline-flex;align-items:center;gap:var(--spacing-inline-xs);transition:opacity .2s ease}.app-brand:hover{opacity:.8}.app-brand-name{color:var(--color-bluegray-900);font-size:var(--text-body-sm-size);font-weight:var(--font-weight-semibold);line-height:var(--text-caption-line-height)}.app-brand-dot{width:var(--size-indicator-dot-md);height:var(--size-indicator-dot-md);border-radius:var(--radius-full);background:var(--color-brand-primary)}.app-header-menu-mobile{padding:0 var(--spacing-inset-lg) var(--spacing-inset-md)}.app-menu-button{border:0;padding:0;background:transparent;color:var(--color-bluegray-900);line-height:0;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-control-small);transition:background-color .2s ease,color .2s ease}.app-menu-button:hover{background:var(--color-bluegray-50);color:var(--color-text-secondary)}.app-menu-button:active{background:var(--color-bluegray-100);color:var(--color-brand-primary)}.app-menu-icon{width:var(--size-icon-glyph-menu);height:var(--size-icon-glyph-menu);color:currentColor;display:block}.app-nav .nav-list{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:var(--spacing-inline-sm)}.app-nav .nav-link{display:inline-flex;align-items:center;gap:var(--spacing-inline-xs);color:var(--color-text-tertiary);font-size:var(--text-body-sm-size);font-weight:var(--font-weight-semibold);line-height:var(--text-caption-line-height)}.app-nav .nav-link>span[aria-hidden=true]{display:inline-flex;align-items:center;justify-content:center;line-height:0}.app-nav .nav-link:hover{color:var(--color-text-secondary)}.app-nav-icon{width:var(--size-icon-glyph-sm);height:var(--size-icon-glyph-sm);color:currentColor;display:block;flex-shrink:0}.app-nav .nav-link-active{color:var(--color-brand-primary)}.app-footer{background:var(--color-bg-surface);padding:var(--spacing-section-md) var(--spacing-section-lg)}.app-footer-inner{display:flex;flex-direction:column;gap:var(--spacing-stack-md);align-items:center;text-align:center}.app-footer-meta{display:flex;flex-direction:column;gap:var(--spacing-stack-xs);align-items:center}.app-footer-meta small{font-size:var(--text-caption-size);line-height:var(--text-caption-line-height);color:var(--color-text-tertiary)}.app-footer-links{display:flex;flex-direction:column;gap:var(--spacing-stack-md);align-items:center}.app-footer-socials,.app-footer-legal{display:inline-flex;gap:var(--spacing-inline-lg);align-items:center}.app-footer-icon{width:var(--size-icon-button-lg);height:var(--size-icon-button-lg);border-radius:var(--radius-control-small);background:var(--color-bluegray-50);color:var(--color-bluegray-700);display:inline-flex;align-items:center;justify-content:center;transition:background-color .2s ease,color .2s ease}.app-footer-icon:hover{background:var(--color-bluegray-100);color:var(--color-brand-primary)}.app-footer-social-icon{width:var(--size-icon-glyph-md);height:var(--size-icon-glyph-md);color:var(--color-brand-primary)}.app-footer-brand-icon-wrap{width:var(--size-icon-glyph-lg);height:var(--size-icon-glyph-lg);border-radius:var(--radius-control-small);background:var(--color-bluegray-50);color:var(--color-bluegray-700);display:inline-flex;align-items:center;justify-content:center}.app-footer-brand-icon{width:var(--size-icon-glyph-xs);height:var(--size-icon-glyph-xs);color:var(--color-brand-primary)}.app-footer-legal{gap:var(--spacing-inline-lg)}.app-footer-legal-link{color:var(--color-text-tertiary);font-size:var(--text-caption-size);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.1em;line-height:var(--size-line-height-tight-fixed);transition:color .2s ease}.app-footer-legal-link:hover{color:var(--color-text-secondary)}.app-footer-language{display:inline-flex;gap:var(--spacing-inline-2xs);align-items:center}.app-footer-language .ui-category{padding:var(--spacing-inline-xs) var(--spacing-inline-xs);font-size:var(--text-caption-size);font-weight:var(--font-weight-bold);line-height:var(--text-caption-line-height);min-height:var(--size-control-sm)}@media (min-width: 48rem){.app-header-mobile,.app-header-menu-mobile{display:none}.app-header-desktop{display:flex;padding:var(--spacing-section-sm) var(--spacing-section-lg)}.app-nav .nav-list{gap:var(--spacing-inline-lg)}.app-nav .nav-link{gap:var(--spacing-inline-xs)}.app-footer-inner{flex-direction:row;align-items:center;align-self:stretch;justify-content:space-between;text-align:left}.app-footer-meta{align-items:flex-start}.app-footer-links{justify-content:flex-end;align-items:center;flex-direction:row;gap:var(--spacing-section-lg)}.app-footer-legal{gap:var(--spacing-inline-lg)}}.blog-page{width:100%;display:flex;flex-direction:column;align-items:center}.blog-hero{width:100%;box-sizing:border-box;align-self:stretch;margin:0;display:flex;padding:var(--spacing-section-lg) var(--spacing-section-sm);flex-direction:column;align-items:flex-start;gap:var(--spacing-stack-sm)}.blog-hero h1{align-self:stretch;margin:0;font-size:var(--text-heading-h1-size);font-weight:var(--text-heading-h1-weight);line-height:var(--text-heading-h1-line-height);color:var(--color-bluegray-900)}.blog-hero-accent{color:var(--color-bluegray-500)}.blog-hero p{align-self:stretch;max-width:var(--layout-content-max-width);margin:0;white-space:pre-line;font-size:var(--text-body-md-size);line-height:var(--text-body-md-line-height);color:var(--color-text-secondary)}.blog-main{width:100%;box-sizing:border-box;display:flex;flex-direction:column;gap:var(--spacing-section-sm);padding:var(--spacing-section-sm) var(--spacing-section-sm) var(--spacing-section-lg)}.blog-list{display:flex;flex-direction:column;gap:var(--spacing-section-sm)}.blog-post-card{width:100%;box-sizing:border-box}.blog-post-card-featured{background:var(--color-bg-surface);box-shadow:var(--elevation-lg)}@media (min-width: 48rem){.blog-hero{padding:var(--spacing-section-lg)}.blog-main{padding:var(--spacing-section-sm) var(--spacing-section-lg) var(--spacing-section-lg)}.blog-list{gap:var(--spacing-section-lg)}}.home-page{width:100%;display:flex;flex-direction:column;align-items:center}.home-hero{width:100%;box-sizing:border-box;align-self:stretch;margin:0;display:flex;padding:var(--spacing-section-lg) var(--spacing-section-sm);flex-direction:column;align-items:flex-start;gap:var(--spacing-stack-sm)}.home-hero h1{align-self:stretch;margin:0;font-size:var(--text-heading-h1-size);font-weight:var(--text-heading-h1-weight);line-height:var(--text-heading-h1-line-height);color:var(--color-bluegray-900)}.home-hero-accent{color:var(--color-bluegray-500)}.home-hero p{align-self:stretch;max-width:var(--layout-content-max-width);margin:0;white-space:pre-line;font-size:var(--text-body-md-size);line-height:var(--text-body-md-line-height);color:var(--color-text-secondary)}.home-card-grid{width:100%;box-sizing:border-box;align-self:stretch;margin:0;display:grid;padding:var(--spacing-section-sm) var(--spacing-section-sm) var(--spacing-section-lg) var(--spacing-section-sm);grid-template-columns:1fr;gap:var(--spacing-inline-lg)}.home-card-link{color:inherit;text-decoration:none}.home-card-link:hover{color:inherit}.home-card-icon{width:var(--size-icon-glyph-md);height:var(--size-icon-glyph-md);color:var(--color-brand-primary)}@media (min-width: 48rem){.home-hero{padding:var(--spacing-section-lg)}.home-card-grid{padding:var(--spacing-section-sm) var(--spacing-section-lg) var(--spacing-section-lg) var(--spacing-section-lg);grid-template-columns:repeat(2,minmax(0,1fr))}}.components-lab-page{width:100%;display:flex;flex-direction:column;align-items:center}.components-lab-hero{width:100%;box-sizing:border-box;align-self:stretch;margin:0;display:flex;padding:var(--spacing-section-lg) var(--spacing-section-sm);flex-direction:column;align-items:flex-start;gap:var(--spacing-stack-sm)}.components-lab-hero h1{align-self:stretch;margin:0;font-size:var(--text-heading-h1-size);font-weight:var(--text-heading-h1-weight);line-height:var(--text-heading-h1-line-height);color:var(--color-bluegray-900)}.components-lab-hero p{align-self:stretch;max-width:var(--layout-content-max-width);margin:0;font-size:var(--text-body-md-size);line-height:var(--text-body-md-line-height);color:var(--color-text-secondary)}.components-lab-main{width:100%;box-sizing:border-box;padding:var(--spacing-section-sm) var(--spacing-section-sm) var(--spacing-section-lg)}.components-lab-stack{display:flex;flex-direction:column;gap:var(--spacing-section-md)}.components-lab-section{display:flex;flex-direction:column;gap:var(--spacing-stack-md)}.components-lab-section h2{margin:0;font-size:var(--text-heading-h5-size);font-weight:var(--text-heading-h5-weight);line-height:var(--text-heading-h5-line-height);color:var(--color-bluegray-900)}.components-lab-card-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-inline-md)}.components-lab-inline-wrap{display:flex;flex-wrap:wrap;gap:var(--spacing-inline-sm)}.components-lab-list-stack{display:flex;flex-direction:column;gap:var(--spacing-stack-lg)}.components-lab-project-card-demo{width:100%}.components-lab-state-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-inline-md)}.components-lab-state-card{background:var(--color-bg-surface);border:var(--border-default) solid var(--color-bluegray-100);border-radius:var(--radius-surface-default);padding:var(--spacing-inset-md);display:flex;flex-direction:column;gap:var(--spacing-stack-md)}.components-lab-state-card h3{margin:0;font-size:var(--text-body-md-size);font-weight:var(--font-weight-semibold);line-height:var(--text-body-md-line-height);color:var(--color-bluegray-900)}.components-lab-state-row{display:grid;grid-template-columns:1fr;gap:var(--spacing-inline-sm)}.components-lab-state-item{display:flex;flex-direction:column;align-items:flex-start;gap:var(--spacing-stack-xs);min-width:0;width:100%}.components-lab-state-item>span{font-size:var(--text-caption-size);line-height:var(--text-caption-line-height);color:var(--color-text-tertiary)}.components-lab-state-stack{display:flex;flex-direction:column;gap:var(--spacing-stack-md)}.components-lab-state-row-card{grid-template-columns:1fr}.components-lab-state-row-button{grid-template-columns:repeat(2,minmax(0,1fr))}.components-lab-state-row-project{grid-template-columns:1fr}.components-lab-section-card-snapshots .components-lab-state-card,.components-lab-section-button-snapshots .components-lab-state-card{padding:var(--spacing-inset-lg)}.components-lab-state-card-preview{width:100%;box-sizing:border-box;max-width:100%;min-width:0}.components-lab-article-preview{width:100%;min-width:0}.components-lab-state-row-article{grid-template-columns:1fr}.components-lab-state-row-project .components-lab-state-card-preview{max-width:100%}.components-lab-force-hover.ui-button-bluegray{background:var(--color-brand-primary-active)}.components-lab-force-active.ui-button-bluegray{background:var(--color-bluegray-300)}.components-lab-force-hover.ui-icon-button{background:var(--color-bluegray-100)}.components-lab-force-active.ui-icon-button{background:var(--color-bluegray-200);color:var(--color-brand-primary)}.components-lab-force-hover.ui-category{background:var(--color-bluegray-100);color:var(--color-brand-primary-hover)}.components-lab-force-active.ui-category{background:var(--color-bluegray-200);color:var(--color-brand-primary-hover)}.components-lab-state-item .ui-category[disabled]{cursor:not-allowed;background:var(--color-bluegray-200);color:var(--color-bluegray-100);border-color:transparent}.components-lab-card-icon{width:var(--size-icon-glyph-md);height:var(--size-icon-glyph-md);color:var(--color-brand-primary)}@media (min-width: 48rem){.components-lab-hero{padding:var(--spacing-section-lg)}.components-lab-main{padding:var(--spacing-section-sm) var(--spacing-section-lg) var(--spacing-section-lg)}.components-lab-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.components-lab-project-card-demo{max-width:26rem}.components-lab-article-preview{width:100%}}@media (min-width: 64rem){.components-lab-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.components-lab-section-wide-snapshots .components-lab-state-grid{grid-template-columns:1fr}.components-lab-state-row-card{grid-template-columns:repeat(2,minmax(0,1fr))}.components-lab-state-row-button{grid-template-columns:repeat(4,minmax(0,1fr))}.components-lab-state-row-project{grid-template-columns:repeat(2,minmax(0,1fr))}.components-lab-state-row-article{grid-template-columns:1fr}.components-lab-project-card-demo{max-width:22rem}.components-lab-article-preview{width:100%}}.components-lab-section-search-snapshots .components-lab-state-grid{grid-template-columns:1fr}.mini-games-page{width:100%;display:flex;flex-direction:column;align-items:center}.mini-games-hero{width:100%;box-sizing:border-box;align-self:stretch;margin:0;display:flex;padding:var(--spacing-section-lg) var(--spacing-section-sm);flex-direction:column;align-items:flex-start;gap:var(--spacing-stack-sm)}.mini-games-hero h1{align-self:stretch;margin:0;font-size:var(--text-heading-h1-size);font-weight:var(--text-heading-h1-weight);line-height:var(--text-heading-h1-line-height);color:var(--color-bluegray-900)}.mini-games-hero-accent{color:var(--color-bluegray-500)}.mini-games-hero p{align-self:stretch;max-width:var(--layout-content-max-width);margin:0;white-space:pre-line;font-size:var(--text-body-md-size);line-height:var(--text-body-md-line-height);color:var(--color-text-secondary)}.mini-games-list{width:100%;box-sizing:border-box;align-self:stretch;margin:0;display:grid;padding:var(--spacing-section-sm) var(--spacing-section-sm) var(--spacing-section-lg) var(--spacing-section-sm);grid-template-columns:1fr;gap:var(--spacing-inline-lg)}.mini-games-card-link{display:flex;height:100%;color:inherit;text-decoration:none}.mini-games-card-link:hover{color:inherit}.mini-games-project-card{width:100%;height:100%;box-sizing:border-box;align-self:stretch;margin:0}.mini-games-project-card .ui-project-card-footer{margin-top:auto}.mini-games-project-card .ui-project-media{aspect-ratio:auto;height:var(--size-media-height-project-md)}.mini-games-project-card .ui-project-card-description{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}@media (min-width: 48rem){.mini-games-hero{padding:var(--spacing-section-lg)}.mini-games-list{padding:var(--spacing-section-sm) var(--spacing-section-lg) var(--spacing-section-lg) var(--spacing-section-lg);grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 64rem){.mini-games-list{grid-template-columns:repeat(3,minmax(0,1fr))}}.portfolio-page{width:100%;display:flex;flex-direction:column;align-items:center}.portfolio-hero{width:100%;box-sizing:border-box;align-self:stretch;margin:0;display:flex;padding:var(--spacing-section-lg) var(--spacing-section-sm);flex-direction:column;align-items:flex-start;gap:var(--spacing-stack-sm)}.portfolio-hero h1{align-self:stretch;margin:0;font-size:var(--text-heading-h1-size);font-weight:var(--text-heading-h1-weight);line-height:var(--text-heading-h1-line-height);color:var(--color-bluegray-900)}.portfolio-hero-accent{color:var(--color-bluegray-500)}.portfolio-hero p{align-self:stretch;max-width:var(--layout-content-max-width);margin:0;white-space:pre-line;font-size:var(--text-body-md-size);line-height:var(--text-body-md-line-height);color:var(--color-text-secondary)}.portfolio-list{width:100%;box-sizing:border-box;margin:0;display:flex;padding:var(--spacing-section-sm) var(--spacing-section-sm) var(--spacing-section-lg) var(--spacing-section-sm);flex-direction:column;align-items:flex-start;gap:var(--spacing-stack-lg);align-self:stretch}.portfolio-project-card{width:100%;box-sizing:border-box;align-self:stretch;margin:0;gap:var(--spacing-stack-lg)}.portfolio-project-card .ui-project-media{aspect-ratio:auto;height:var(--size-media-height-project-md)}.portfolio-project-card .ui-project-card-description{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}@media (min-width: 48rem){.portfolio-hero{padding:var(--spacing-section-lg)}.portfolio-list{padding:var(--spacing-section-md) var(--spacing-section-lg) var(--spacing-section-lg)}.portfolio-list{gap:var(--spacing-section-lg)}}:root{color-scheme:light;--color-bluegray-50: #f0f3f7;--color-bluegray-100: #d0dae5;--color-bluegray-200: #bac9d8;--color-bluegray-300: #9ab0c7;--color-bluegray-400: #86a1bc;--color-bluegray-500: #6889ab;--color-bluegray-600: #5f7d9c;--color-bluegray-700: #4a6179;--color-bluegray-800: #394b5e;--color-bluegray-900: #2c3a48;--color-skyblue-50: #f4fafd;--color-skyblue-100: #def1fa;--color-skyblue-200: #cdeaf7;--color-skyblue-300: #b7e0f4;--color-skyblue-400: #a9daf1;--color-skyblue-500: #93d1ee;--color-skyblue-600: #86bed9;--color-skyblue-700: #6894a9;--color-skyblue-800: #517383;--color-skyblue-900: #3e5864;--color-blue-50: #edf4f9;--color-blue-100: #c7dded;--color-blue-200: #accde4;--color-blue-300: #86b6d7;--color-blue-400: #6fa8d0;--color-blue-500: #4b92c4;--color-blue-600: #4485b2;--color-blue-700: #35688b;--color-blue-800: #29506c;--color-blue-900: #203d52;--color-green-50: #eef6f0;--color-green-100: #cae3d1;--color-green-200: #b0d5bb;--color-green-300: #8cc29c;--color-green-400: #76b689;--color-green-500: #54a46b;--color-green-600: #4c9561;--color-green-700: #3c744c;--color-green-800: #2e5a3b;--color-green-900: #23452d;--color-yellow-50: #fbf4eb;--color-yellow-100: #f1dec0;--color-yellow-200: #eacea1;--color-yellow-300: #e1b776;--color-yellow-400: #dba95c;--color-yellow-500: #d29433;--color-yellow-600: #bf872e;--color-yellow-700: #956924;--color-yellow-800: #74511c;--color-yellow-900: #583e15;--color-red-50: #feeceb;--color-red-100: #fcc5c1;--color-red-200: #faa9a3;--color-red-300: #f88178;--color-red-400: #f6695e;--color-red-500: #f44336;--color-red-600: #de3d31;--color-red-700: #ad3026;--color-red-800: #86251e;--color-red-900: #661c17;--color-gray-50: #f0f1f3;--color-gray-100: #d0d5d9;--color-gray-200: #bac0c6;--color-gray-300: #9aa3ac;--color-gray-400: #86919c;--color-gray-500: #687683;--color-gray-600: #5f6b77;--color-gray-700: #4a545d;--color-gray-800: #394148;--color-gray-900: #2c3237;--color-white: #ffffff;--color-black: #000000;--color-brand-primary: var(--color-bluegray-500);--color-brand-primary-hover: var(--color-bluegray-600);--color-brand-primary-active: var(--color-bluegray-700);--color-brand-secondary: var(--color-skyblue-500);--color-brand-secondary-hover: var(--color-skyblue-600);--color-brand-secondary-active: var(--color-skyblue-700);--color-brand-subtle: var(--color-skyblue-100);--color-brand-muted: var(--color-bluegray-200);--color-text-primary: var(--color-gray-900);--color-text-secondary: var(--color-gray-700);--color-text-tertiary: var(--color-gray-500);--color-text-disabled: var(--color-gray-400);--color-text-inverse: var(--color-white);--color-text-brand-primary: var(--color-bluegray-900);--color-text-brand-secondary: var(--color-bluegray-700);--color-bg-default: var(--color-skyblue-50);--color-bg-surface: var(--color-white);--color-bg-subtle: var(--color-bluegray-50);--color-bg-elevated: var(--color-white);--color-bg-inverse: var(--color-gray-900);--color-border-default: var(--color-gray-200);--color-border-subtle: var(--color-gray-100);--color-border-strong: var(--color-gray-300);--color-border-focus: var(--color-blue-500);--color-status-info: var(--color-blue-500);--color-status-info-subtle: var(--color-blue-50);--color-status-success: var(--color-green-500);--color-status-success-subtle: var(--color-green-50);--color-status-warning: var(--color-yellow-500);--color-status-warning-subtle: var(--color-yellow-50);--color-status-error: var(--color-red-500);--color-status-error-subtle: var(--color-red-50);--color-action-primary: var(--color-brand-primary);--color-action-primary-hover: var(--color-brand-primary-hover);--color-action-primary-active: var(--color-brand-primary-active);--color-action-primary-disabled: var(--color-bluegray-200);--color-action-secondary: var(--color-brand-secondary);--color-action-secondary-hover: var(--color-brand-secondary-hover);--color-action-secondary-active: var(--color-brand-secondary-active);--color-overlay-light: var(--color-white);--color-overlay-dark: var(--color-black);--color-shadow-base: var(--color-gray-900);--color-shadow-subtle: var(--color-gray-700);--color-shadow-inverse: var(--color-black);--font-family-primary: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", "Noto Sans", "Segoe UI", sans-serif;--font-size-xxxxxl: 3rem;--font-size-xxxxl: 2.25rem;--font-size-xxxl: 1.875rem;--font-size-xxl: 1.5rem;--font-size-xl: 1.25rem;--font-size-l: 1.125rem;--font-size-m: 1rem;--font-size-s: .875rem;--font-size-xs: .75rem;--font-weight-bold: 700;--font-weight-semibold: 600;--font-weight-medium: 500;--font-weight-regular: 400;--line-height-tight: 1.25;--line-height-heading: 1.3;--line-height-subheading: 1.35;--line-height-compact: 1.4;--line-height-body: 1.6;--line-height-caption: 1.5;--text-heading-h1-size: var(--font-size-xxxxxl);--text-heading-h1-weight: var(--font-weight-bold);--text-heading-h1-line-height: var(--line-height-tight);--text-heading-h2-size: var(--font-size-xxxxl);--text-heading-h2-weight: var(--font-weight-bold);--text-heading-h2-line-height: var(--line-height-heading);--text-heading-h3-size: var(--font-size-xxxl);--text-heading-h3-weight: var(--font-weight-semibold);--text-heading-h3-line-height: var(--line-height-subheading);--text-heading-h4-size: var(--font-size-xxl);--text-heading-h4-weight: var(--font-weight-semibold);--text-heading-h4-line-height: var(--line-height-compact);--text-heading-h5-size: var(--font-size-xl);--text-heading-h5-weight: var(--font-weight-semibold);--text-heading-h5-line-height: var(--line-height-compact);--text-body-lg-size: var(--font-size-l);--text-body-lg-weight: var(--font-weight-medium);--text-body-lg-line-height: var(--line-height-body);--text-body-md-size: var(--font-size-m);--text-body-md-weight: var(--font-weight-regular);--text-body-md-line-height: var(--line-height-body);--text-body-sm-size: var(--font-size-s);--text-body-sm-weight: var(--font-weight-regular);--text-body-sm-line-height: var(--line-height-body);--text-caption-size: var(--font-size-xs);--text-caption-weight: var(--font-weight-medium);--text-caption-line-height: var(--line-height-caption);--space-xxxs: .125rem;--space-xxs: .25rem;--space-xs: .5rem;--space-s: .75rem;--space-m: 1rem;--space-l: 1.25rem;--space-xl: 1.5rem;--space-xxl: 2rem;--space-xxxl: 2.5rem;--space-xxxxl: 3rem;--spacing-stack-xs: var(--space-xs);--spacing-stack-sm: var(--space-s);--spacing-stack-md: var(--space-m);--spacing-stack-lg: var(--space-l);--spacing-stack-xl: var(--space-xl);--spacing-inline-xs: var(--space-xs);--spacing-inline-sm: var(--space-m);--spacing-inline-md: var(--space-l);--spacing-inline-lg: var(--space-xl);--spacing-inset-sm: var(--space-xs);--spacing-inset-md: var(--space-m);--spacing-inset-lg: var(--space-xl);--spacing-section-sm: var(--space-xl);--spacing-section-md: var(--space-xxl);--spacing-section-lg: var(--space-xxxxl);--size-xxs: .3125rem;--size-xs: .5rem;--size-sm: .625rem;--size-md: .75rem;--size-lg: .8125rem;--size-text-sm: .875rem;--size-xl: 1rem;--size-icon-sm: 1.125rem;--size-control-sm: 1.25rem;--size-control-md: 1.5rem;--size-control-lg: 2.25rem;--size-2xl: 2.5rem;--size-3xl: 6.5rem;--size-8xl: 8rem;--size-12xl: 12rem;--size-14xl: 14.3125rem;--size-16xl: 16rem;--size-20xl: 20rem;--size-22xl: 22.375rem;--size-46xl: 46rem;--size-icon-glyph-xs: var(--size-text-sm);--size-icon-glyph-sm: var(--size-xl);--size-icon-glyph-menu: var(--size-icon-sm);--size-icon-glyph-md: var(--size-control-sm);--size-icon-glyph-lg: var(--size-control-md);--size-icon-button-md: var(--size-2xl);--size-icon-button-lg: var(--size-control-lg);--size-indicator-dot-sm: var(--size-xs);--size-indicator-dot-md: var(--size-sm);--size-input-icon-leading: var(--size-2xl);--size-searchbar-max-md: var(--size-16xl);--size-searchbar-max-lg: var(--size-22xl);--size-media-min-height-sm: var(--size-3xl);--size-media-height-project-md: var(--size-14xl);--size-line-height-tight-fixed: var(--size-xl);--breakpoint-md: 48rem;--breakpoint-lg: 64rem;--layout-breakpoint-md: var(--breakpoint-md);--layout-breakpoint-lg: var(--breakpoint-lg);--layout-page-min-width: var(--size-20xl);--layout-content-max-width: var(--size-46xl);--layout-article-media-col: var(--size-8xl);--layout-article-side-col-md: var(--size-12xl);--layout-article-side-col-lg: var(--size-16xl);--radius-none: 0rem;--radius-xs: .125rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-full: 9999px;--radius-control-default: var(--radius-md);--radius-control-small: var(--radius-sm);--radius-control-pill: var(--radius-full);--radius-surface-default: var(--radius-lg);--radius-surface-subtle: var(--radius-md);--radius-surface-prominent: var(--radius-xl);--radius-media-default: var(--radius-lg);--radius-media-thumbnail: var(--radius-md);--radius-media-circle: var(--radius-full);--border-width-none: 0rem;--border-width-thin: .0625rem;--border-width-medium: .125rem;--border-width-thick: .25rem;--border-default: var(--border-width-thin);--border-strong: var(--border-width-medium);--border-focus: var(--border-width-medium);--border-emphasis: var(--border-width-thick);--shadow-opacity-low: .04;--shadow-opacity-medium: .12;--shadow-opacity-high: .22;--shadow-opacity-strong: .35;--shadow-blur-xs: .25rem;--shadow-blur-sm: .5rem;--shadow-blur-md: 1rem;--shadow-blur-lg: 1.5rem;--shadow-blur-xl: 2.5rem;--shadow-offset-xs: .0625rem;--shadow-offset-sm: .125rem;--shadow-offset-md: .25rem;--shadow-offset-lg: .5rem;--shadow-offset-xl: 1rem;--shadow-spread-none: 0;--elevation-none: none;--elevation-xs: 0 var(--shadow-offset-xs) var(--shadow-blur-xs) var(--shadow-spread-none) color-mix(in srgb, var(--color-shadow-base) 4%, transparent);--elevation-sm: 0 var(--shadow-offset-sm) var(--shadow-blur-sm) var(--shadow-spread-none) color-mix(in srgb, var(--color-shadow-base) 4%, transparent);--elevation-md: 0 var(--shadow-offset-md) var(--shadow-blur-md) var(--shadow-spread-none) color-mix(in srgb, var(--color-shadow-base) 12%, transparent);--elevation-lg: 0 var(--shadow-offset-lg) var(--shadow-blur-lg) var(--shadow-spread-none) color-mix(in srgb, var(--color-shadow-base) 22%, transparent);--elevation-xl: 0 var(--shadow-offset-xl) var(--shadow-blur-xl) var(--shadow-spread-none) color-mix(in srgb, var(--color-shadow-base) 35%, transparent);font-family:var(--font-family-primary);font-size:var(--text-body-sm-size);line-height:var(--line-height-body);font-weight:var(--font-weight-regular);color:var(--color-text-primary);background-color:var(--color-bg-default);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:var(--font-weight-medium);color:var(--color-action-secondary);text-decoration:none}a:hover{color:var(--color-action-secondary-hover)}body{margin:0;min-width:var(--layout-page-min-width);min-height:100vh;font-family:inherit;color:var(--color-text-primary);background-color:var(--color-bg-default)}h1{font-size:var(--text-heading-h1-size);font-weight:var(--text-heading-h1-weight);line-height:var(--text-heading-h1-line-height);margin:0 0 var(--spacing-stack-sm)}button{border-radius:var(--radius-control-default);border:var(--border-default) solid var(--color-border-default);padding:var(--spacing-inset-sm) var(--spacing-inset-lg);font-size:var(--text-body-md-size);font-weight:var(--text-body-md-weight);line-height:var(--text-body-md-line-height);font-family:inherit;background-color:var(--color-action-primary);color:var(--color-text-inverse);cursor:pointer;transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease}button:hover{background-color:var(--color-action-primary-hover);border-color:var(--color-border-strong);box-shadow:var(--elevation-xs)}button:active{background-color:var(--color-action-primary-active);box-shadow:var(--elevation-none);transform:translateY(var(--shadow-offset-xs))}button:focus,button:focus-visible{outline:var(--border-focus) solid var(--color-border-focus);outline-offset:0}button:disabled{background-color:var(--color-action-primary-disabled);border-color:var(--color-border-subtle);color:var(--color-text-disabled);cursor:not-allowed;box-shadow:none}@media (min-width: 64rem){:root{font-size:var(--text-body-md-size)}}
