.blog-module__JsT-Oq__blog-list{min-height:100vh;padding:var(--section-padding-y) var(--content-padding-x)}.blog-module__JsT-Oq__blog-list__header{gap:var(--space-4);max-width:640px;margin-bottom:var(--space-16);flex-direction:column;display:flex}.blog-module__JsT-Oq__blog-list__label,.blog-module__JsT-Oq__blog-detail__category{font-family:var(--font-en);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-wide);color:var(--color-label);font-weight:500}.blog-module__JsT-Oq__blog-list__heading{font-family:var(--font-ja);font-size:var(--font-size-2xl);color:var(--color-text-primary);letter-spacing:.04em;font-weight:300;line-height:1.35}.blog-module__JsT-Oq__blog-list__description{font-family:var(--font-ja);font-size:var(--font-size-base);color:var(--color-text-secondary);font-weight:300;line-height:var(--line-height-relaxed)}.blog-module__JsT-Oq__blog-list__grid{gap:var(--space-8);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.blog-module__JsT-Oq__blog-list__post{gap:var(--space-6);min-width:0;padding:var(--space-6);background:linear-gradient(135deg,#ffffffad,#f0f4ff6b);border:1px solid #7c8cff24;grid-template-columns:minmax(180px,.82fr) minmax(0,1.18fr);transition:transform .25s,border-color .25s,box-shadow .25s;display:grid;box-shadow:0 20px 56px #1f27440f}.blog-module__JsT-Oq__blog-list__post:hover{border-color:#7c8cff47;transform:translateY(-3px);box-shadow:0 26px 64px #1f274417}.blog-module__JsT-Oq__blog-list__post-thumbnail{aspect-ratio:4/3;background:radial-gradient(circle at 28% 22%,#ffffffc7,#fff0 34%),linear-gradient(135deg,#e2e9ffe6,#f4f7ffb8);width:100%;overflow:hidden}.blog-module__JsT-Oq__blog-list__post-image,.blog-module__JsT-Oq__blog-detail__image{object-fit:cover;width:100%;height:100%;display:block}.blog-module__JsT-Oq__blog-list__post-placeholder{width:100%;height:100%}.blog-module__JsT-Oq__blog-list__post-body{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.blog-module__JsT-Oq__blog-list__post-meta,.blog-module__JsT-Oq__blog-detail__meta{align-items:center;gap:var(--space-3);font-family:var(--font-en);font-size:var(--font-size-xs);color:var(--color-text-muted);letter-spacing:.05em;flex-wrap:wrap;font-weight:300;display:flex}.blog-module__JsT-Oq__blog-list__post-title{font-family:var(--font-ja);font-size:var(--font-size-lg);color:var(--color-text-primary);letter-spacing:.02em;font-weight:400;line-height:1.55}.blog-module__JsT-Oq__blog-list__post-excerpt{font-family:var(--font-ja);font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:300;line-height:var(--line-height-relaxed)}.blog-module__JsT-Oq__blog-list__post-tags,.blog-module__JsT-Oq__blog-detail__tags{gap:var(--space-2);flex-wrap:wrap;list-style:none;display:flex}.blog-module__JsT-Oq__blog-list__post-tags li,.blog-module__JsT-Oq__blog-detail__tags li{font-family:var(--font-en);letter-spacing:.08em;color:var(--color-label);background:#ffffff7a;border:1px solid #7c8cff29;border-radius:999px;padding:4px 9px;font-size:10px;font-weight:300}.blog-module__JsT-Oq__blog-detail{min-height:100vh;padding:var(--section-padding-y) var(--content-padding-x)}.blog-module__JsT-Oq__blog-detail__article{max-width:760px}.blog-module__JsT-Oq__blog-detail__back{margin-bottom:var(--space-12);border-bottom:1px solid var(--color-border);font-family:var(--font-en);font-size:var(--font-size-xs);letter-spacing:.1em;color:var(--color-text-muted);align-items:center;padding-bottom:2px;font-weight:300;transition:color .25s,border-color .25s;display:inline-flex}.blog-module__JsT-Oq__blog-detail__back:hover{color:var(--color-accent);border-color:var(--color-accent)}.blog-module__JsT-Oq__blog-detail__header{margin-bottom:var(--space-12);flex-direction:column;gap:20px;display:flex}.blog-module__JsT-Oq__blog-detail__title{font-family:var(--font-ja);color:var(--color-text-primary);letter-spacing:.03em;font-size:36px;font-weight:300;line-height:1.5}.blog-module__JsT-Oq__blog-detail__date{font-family:var(--font-en);font-size:var(--font-size-xs);color:var(--color-text-muted);letter-spacing:.05em;font-weight:300}.blog-module__JsT-Oq__blog-detail__thumbnail{aspect-ratio:16/9;width:100%;margin-top:var(--space-4);background:radial-gradient(circle at 28% 22%,#ffffffc7,#fff0 34%),linear-gradient(135deg,#e2e9ffe6,#f4f7ffb8);border:1px solid #7c8cff24;overflow:hidden;box-shadow:0 24px 64px #1f274414}.blog-module__JsT-Oq__blog-detail__lead,.blog-module__JsT-Oq__blog-detail__sections{gap:var(--space-6);flex-direction:column;display:flex}.blog-module__JsT-Oq__blog-detail__lead{margin-bottom:var(--space-12)}.blog-module__JsT-Oq__blog-detail__lead p,.blog-module__JsT-Oq__blog-detail__section p,.blog-module__JsT-Oq__blog-detail__site p{font-family:var(--font-ja);font-size:var(--font-size-base);color:var(--color-text-secondary);letter-spacing:.02em;font-weight:300;line-height:2}.blog-module__JsT-Oq__blog-detail__toc{margin-bottom:var(--space-16);padding:var(--space-6);background:linear-gradient(135deg,#ffffffa3,#f0f4ff57);border:1px solid #7c8cff24}.blog-module__JsT-Oq__blog-detail__toc-title{margin-bottom:var(--space-4);font-family:var(--font-ja);font-size:var(--font-size-md);color:var(--color-text-primary);letter-spacing:.04em;font-weight:400}.blog-module__JsT-Oq__blog-detail__toc-list{gap:var(--space-3);flex-direction:column;list-style:none;display:flex}.blog-module__JsT-Oq__blog-detail__toc-list a{font-family:var(--font-ja);font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:300;line-height:var(--line-height-relaxed);transition:color .25s}.blog-module__JsT-Oq__blog-detail__toc-list a:hover{color:var(--color-accent)}.blog-module__JsT-Oq__blog-detail__section{scroll-margin-top:var(--space-12);margin-bottom:var(--space-16)}.blog-module__JsT-Oq__blog-detail__section-title{margin-bottom:var(--space-6);font-family:var(--font-ja);font-size:var(--font-size-lg);color:var(--color-text-primary);letter-spacing:.04em;font-weight:400;line-height:1.55}.blog-module__JsT-Oq__blog-detail__section-image{width:100%;margin:var(--space-8) 0;object-fit:cover;border:1px solid #7c8cff29;border-radius:16px;display:block;box-shadow:0 18px 48px #1f274414}.blog-module__JsT-Oq__blog-detail__subsection-title{scroll-margin-top:var(--space-12);margin-top:var(--space-8);margin-bottom:var(--space-4);font-family:var(--font-ja);font-size:var(--font-size-md);color:var(--color-text-primary);letter-spacing:.04em;font-weight:400;line-height:1.55}.blog-module__JsT-Oq__blog-detail__demo-link{width:fit-content;margin-top:var(--space-6);font-family:var(--font-ja);font-size:var(--font-size-sm);color:var(--color-accent);letter-spacing:.03em;background:#f0f4ffb8;border:1px solid #7c8cff33;border-radius:999px;align-items:center;padding:10px 16px;font-weight:400;line-height:1.4;transition:transform .25s,border-color .25s,background-color .25s,box-shadow .25s;display:inline-flex;box-shadow:0 12px 32px #1f27440f}.blog-module__JsT-Oq__blog-detail__demo-link:hover{background:#e8edffe0;border-color:#7c8cff57;transform:translateY(-1px);box-shadow:0 16px 40px #1f274417}.blog-module__JsT-Oq__blog-detail__tech-grid{gap:var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.blog-module__JsT-Oq__blog-detail__tech{background:#ffffff75;border:1px solid #7c8cff24;padding:20px}.blog-module__JsT-Oq__blog-detail__tech-title,.blog-module__JsT-Oq__blog-detail__site-title{margin-bottom:var(--space-3);font-family:var(--font-en);font-size:var(--font-size-sm);color:var(--color-text-primary);letter-spacing:.06em;font-weight:500}.blog-module__JsT-Oq__blog-detail__tech-list{gap:var(--space-2);padding-left:var(--space-4);font-family:var(--font-en);font-size:var(--font-size-xs);color:var(--color-text-secondary);font-weight:300;line-height:var(--line-height-relaxed);flex-direction:column;display:flex}.blog-module__JsT-Oq__blog-detail__site{padding:var(--space-6);background:#ffffff75;border:1px solid #7c8cff24}.blog-module__JsT-Oq__blog-detail__site-link{width:fit-content;margin-top:var(--space-4);border-bottom:1px solid var(--color-border);font-family:var(--font-en);font-size:var(--font-size-xs);color:var(--color-text-secondary);letter-spacing:.06em;padding-bottom:2px;font-weight:300;transition:color .25s,border-color .25s;display:inline-flex}.blog-module__JsT-Oq__blog-detail__site-link:hover{color:var(--color-accent);border-color:var(--color-accent)}@media (max-width:1023px){.blog-module__JsT-Oq__blog-list__grid{grid-template-columns:1fr}.blog-module__JsT-Oq__blog-list__post{grid-template-columns:minmax(160px,.72fr) minmax(0,1.28fr)}}@media (max-width:767px){.blog-module__JsT-Oq__blog-list,.blog-module__JsT-Oq__blog-detail{padding:80px var(--content-padding-x) var(--section-padding-y)}.blog-module__JsT-Oq__blog-list__header{margin-bottom:var(--space-12)}.blog-module__JsT-Oq__blog-list__heading,.blog-module__JsT-Oq__blog-detail__title{font-size:28px}.blog-module__JsT-Oq__blog-list__post{padding:var(--space-4);grid-template-columns:1fr}.blog-module__JsT-Oq__blog-list__post-thumbnail{aspect-ratio:16/9}.blog-module__JsT-Oq__blog-detail__tech-grid{grid-template-columns:1fr}}
