.badge{align-items:center;gap:var(--space-2);font-family:var(--font-sans);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.12em;color:var(--color-primary);margin-bottom:var(--space-6);font-weight:500;display:inline-flex}.badge .dot{background:var(--color-primary);border-radius:50%;width:6px;height:6px}.tag{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.06em;color:var(--color-primary);margin-bottom:var(--space-3);transition:letter-spacing var(--dur-med) var(--ease-out);font-size:11px;font-weight:600;display:inline-block}.card:hover .tag,.card.is-hover .tag{letter-spacing:.12em}.stat{font-family:var(--font-sans);font-size:var(--text-3xl);letter-spacing:-.01em;color:var(--color-primary);margin-bottom:var(--space-2);font-weight:700}.stat-label{font-family:var(--font-sans);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:var(--space-4)}.nav-logo{font-weight:700;font-size:var(--text-base);letter-spacing:-.01em;color:var(--color-text);align-items:center;gap:.5rem;text-decoration:none;display:inline-flex}.nav-logo-img{border-radius:4px;flex-shrink:0;width:24px;height:24px}.nav-toggle{cursor:pointer;padding:var(--space-1);color:var(--color-text);background:0 0;border:none;display:none}.timeline-dot{background:var(--color-bg);border:2px solid var(--color-primary);z-index:1;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:flex;position:absolute;top:0;left:0}.timeline-dot-inner{background:var(--color-primary);border-radius:50%;width:8px;height:8px}.footer{text-align:center;padding:var(--space-8) 0;font-family:var(--font-sans);font-size:var(--text-xs);color:var(--color-text-muted);border-top:1px solid var(--color-border);margin-top:var(--space-12)}.toast{background:var(--color-text);color:var(--color-bg);font-family:var(--font-sans);font-size:var(--text-sm);padding:var(--space-2) var(--space-5);border-radius:var(--radius-full);box-shadow:var(--shadow-lg);opacity:0;transition:opacity var(--dur-med) var(--ease-out), transform var(--dur-med) var(--ease-out);z-index:9999;pointer-events:none;white-space:nowrap;position:fixed;bottom:32px;left:50%;transform:translate(-50%)translateY(8px)}.toast.show{opacity:1;transform:translate(-50%)translateY(0)}.nav-links{gap:var(--space-6);list-style:none;display:flex}.nav-links a{color:var(--color-text-muted);font-weight:500;font-size:var(--text-sm);transition:color var(--dur-med) var(--ease-out);padding-bottom:2px;text-decoration:none;position:relative}.nav-links a:hover,.nav-links a.is-hover,.nav-links a.is-active{color:var(--color-primary)}.nav-links a:after{content:"";background:var(--color-primary);transform-origin:0;height:1px;transition:transform var(--dur-med) var(--ease-out);position:absolute;bottom:-2px;left:0;right:0;transform:scaleX(0)}.nav-links a:hover:after,.nav-links a.is-hover:after,.nav-links a.is-active:after{transform:scaleX(1)}.about-skill{column-gap:var(--space-4);grid-template-columns:36px 1fr;align-items:start;display:grid}.about-skill-icon,.about-skill .icon{border-radius:var(--radius-sm);background:var(--color-primary-subtle);width:36px;height:36px;color:var(--color-primary);line-height:1;font-size:var(--text-xl);grid-row:1/span 2;justify-content:center;align-items:center;display:flex}.about-skill h3{font-family:var(--font-sans);font-size:var(--text-base);margin-bottom:var(--space-2);font-weight:600}.about-skill p{font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.6}.approach-card{background:var(--color-primary-subtle);border:1px solid var(--color-primary);border-radius:var(--radius-lg);padding:var(--space-8);position:relative}.approach-card .quote-mark{font-family:var(--font-serif);color:var(--color-primary);opacity:.3;top:var(--space-6);left:var(--space-6);font-size:3rem;line-height:0;position:absolute}.approach-card blockquote{font-size:var(--text-lg);color:var(--color-text);padding-left:var(--space-6);border-left:2px solid var(--color-primary);font-style:italic;line-height:1.6}.approach-card .attribution{font-family:var(--font-sans);font-size:var(--text-sm);color:var(--color-text-muted);margin-top:var(--space-4);font-style:normal}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-8);cursor:pointer;transition:transform var(--dur-med) var(--ease-out), box-shadow var(--dur-med) var(--ease-out), border-color var(--dur-med) var(--ease-out);color:inherit;text-decoration:none;display:block}.card:hover,.card.is-hover{box-shadow:var(--shadow-card-hover);border-color:var(--color-primary);transform:translateY(-3px)}.card:active,.card.is-active{transform:translateY(-1px)}.card.is-focus,.contact-link.is-focus,.nav-links a.is-focus{outline:2px solid var(--color-primary);outline-offset:2px}.card h3{font-family:var(--font-sans);font-size:var(--text-lg);margin-bottom:var(--space-3);letter-spacing:-.005em;font-weight:600;line-height:1.3}.card p{font-size:var(--text-base);color:var(--color-text-muted);line-height:1.6}.card .link{font-family:var(--font-sans);font-size:var(--text-sm);color:var(--color-primary);align-items:center;gap:var(--space-1);margin-top:var(--space-4);font-weight:600;display:inline-flex}.card .link .arrow{transition:transform var(--dur-fast) var(--ease-out);display:inline-block}.card:hover .link .arrow,.card.is-hover .link .arrow{transform:translate(3px)}.card-hero{flex-direction:column;grid-row:span 2;justify-content:center;display:flex}.card-hero .stat{font-size:var(--text-3xl);margin-bottom:var(--space-2);font-family:var(--font-serif);font-style:italic;font-weight:500}.card-row{border:none;border-top:1px solid var(--color-border);padding:var(--space-5) 0;gap:var(--space-2);background:0 0;border-radius:0;flex-direction:column;display:flex}.card-row:hover,.card-row.is-hover{box-shadow:none;border-color:var(--color-border);transform:none}.card-row h3{transition:color var(--dur-med) var(--ease-out);align-self:flex-start;margin-bottom:0;padding-bottom:2px;display:inline-block;position:relative}.card-row h3:after{content:"";background:var(--color-primary);transform-origin:0;height:1px;transition:transform var(--dur-med) var(--ease-out);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.card-row:hover h3,.card-row.is-hover h3{color:var(--color-primary)}.card-row:hover h3:after,.card-row.is-hover h3:after{transform:scaleX(1)}.card-row .link{margin-top:0}.card-row-top{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.card-row-top .tag{margin-bottom:0}.card-index{font-family:var(--font-mono);letter-spacing:.08em;color:var(--color-text-muted);font-size:10px}.essay-index{grid-template-columns:1fr;display:grid}.essay-row{gap:var(--space-2);padding:var(--space-6) 0;border-top:1px solid var(--color-border);color:inherit;flex-direction:column;text-decoration:none;display:flex}.essay-row:not(.essay-row-lead):first-child{border-top:none}.essay-row-top{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.essay-row-top .tag{margin-bottom:0}.essay-read{font-family:var(--font-mono);color:var(--color-text-muted);white-space:nowrap;font-size:10px}.essay-row h3{font-family:var(--font-serif);font-size:var(--text-xl);letter-spacing:-.005em;transition:color var(--dur-med) var(--ease-out);align-self:flex-start;padding-bottom:2px;font-weight:500;line-height:1.3;display:inline-block;position:relative}.essay-row h3:after{content:"";background:var(--color-primary);transform-origin:0;height:1px;transition:transform var(--dur-med) var(--ease-out);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.essay-row:hover h3,.essay-row.is-hover h3{color:var(--color-primary)}.essay-row:hover h3:after,.essay-row.is-hover h3:after{transform:scaleX(1)}.essay-row p{font-size:var(--text-sm);color:var(--color-text-muted);max-width:60ch;line-height:1.6}.essay-row-foot{justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-3);display:flex}.essay-kicker{font-family:var(--font-sans);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted)}.essay-row .arrow{color:var(--color-text-muted);transition:transform var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out)}.essay-row:hover .arrow,.essay-row.is-hover .arrow{color:var(--color-primary);transform:translate(3px)}.essay-row-lead h3{font-size:clamp(1.5rem,3.5vw,2.25rem);line-height:1.2}.essay-row-lead p{font-size:var(--text-base);max-width:65ch}.essay-row-lead{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-8);margin-bottom:var(--space-6);transition:transform var(--dur-med) var(--ease-out), box-shadow var(--dur-med) var(--ease-out), border-color var(--dur-med) var(--ease-out)}.essay-row-lead:hover,.essay-row-lead.is-hover{box-shadow:var(--shadow-card-hover);border-color:var(--color-primary);transform:translateY(-3px)}.essay-row-lead:active,.essay-row-lead.is-active{transform:translateY(-1px)}.essay-row-lead h3:after{display:none}.essay-row-lead:hover h3,.essay-row-lead.is-hover h3{color:var(--color-text)}.essay-row-lead:hover .tag,.essay-row-lead.is-hover .tag{letter-spacing:.12em}@media (width>=1024px){.essay-index{column-gap:var(--space-8);grid-template-columns:1fr 1fr}.essay-row-lead{grid-column:1/-1}}.timeline-item{padding-left:48px;padding-bottom:var(--space-10);position:relative}.timeline-item:last-child{padding-bottom:0}.timeline-head h4{font-family:var(--font-sans);font-size:var(--text-base);margin-bottom:2px;font-weight:600}.timeline-head .meta{font-family:var(--font-sans);font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:2px}.timeline-head .period{font-family:var(--font-mono);letter-spacing:.06em;color:var(--color-text-muted);margin-bottom:var(--space-3);font-size:10px}.timeline-content ul{margin:0;padding:0;list-style:none}.timeline-content ul li{font-size:var(--text-sm);color:var(--color-text-muted);padding-left:var(--space-4);margin-bottom:var(--space-2);line-height:1.6;position:relative}.timeline-content ul li:last-child{margin-bottom:0}.timeline-content ul li:before{content:"";background:var(--color-primary);opacity:.45;border-radius:50%;width:4px;height:4px;position:absolute;top:10px;left:0}.contact-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-8);text-align:center}.contact-card h2{font-family:var(--font-sans);font-size:var(--text-xl);letter-spacing:-.01em;margin-bottom:var(--space-2);font-weight:600}.contact-card p{color:var(--color-text-muted);margin-bottom:var(--space-6)}.contact-links{gap:var(--space-4);flex-wrap:wrap;justify-content:center;display:flex}.contact-link{font-family:var(--font-sans);font-size:var(--text-sm);color:var(--color-primary);padding:var(--space-2) var(--space-5);border:1px solid var(--color-primary);border-radius:var(--radius-sm);transition:background var(--dur-med) var(--ease-out), color var(--dur-med) var(--ease-out), border-color var(--dur-med) var(--ease-out), transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);font-weight:500;text-decoration:none}.contact-link:hover,.contact-link.is-hover{background:var(--color-primary);color:#fff;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.contact-link:active,.contact-link.is-active{transform:translateY(0)}.contact-link-fill{background:var(--color-text);color:var(--color-bg);border-color:var(--color-text)}.contact-link-fill:hover,.contact-link-fill.is-hover{background:var(--color-primary);border-color:var(--color-primary);color:#fff;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.contact-link-fill:active,.contact-link-fill.is-active{transform:translateY(0)}.nav{z-index:100;background:var(--color-bg);border-bottom:1px solid var(--color-border);font-family:var(--font-sans);font-size:var(--text-sm);transition:box-shadow var(--dur-fast) var(--ease-out);position:fixed;top:0;left:0;right:0}.nav.scrolled{box-shadow:var(--shadow-sm);background:var(--color-bg-glass);-webkit-backdrop-filter:blur(12px)}.nav-inner{max-width:var(--container-max);padding:var(--space-3) var(--space-8);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.hero{min-height:90vh;padding:var(--space-20) 0;flex-direction:column;justify-content:center;display:flex}.hero h1{font-family:var(--font-sans);font-size:var(--text-hero);letter-spacing:-.03em;margin-bottom:var(--space-4);max-width:700px;font-weight:700;line-height:1.04}.hero .tagline{font-size:var(--text-xl);color:var(--color-text-muted);max-width:55ch;margin-bottom:var(--space-8);line-height:1.6}.hero .tagline em{font-family:var(--font-serif);color:var(--color-text);font-style:italic;font-weight:500}.hero-stats{gap:var(--space-6);border-top:1px solid var(--color-border);max-width:560px;padding-top:var(--space-6);grid-template-columns:repeat(3,1fr);display:grid}.hero-stat .num{font-family:var(--font-sans);font-size:var(--text-2xl);letter-spacing:-.02em;color:var(--color-text);margin-bottom:var(--space-1);font-weight:700;line-height:1;display:block}.hero-stat .label{font-family:var(--font-sans);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted)}@media (width<=480px){.hero-stats{gap:var(--space-4);grid-template-columns:1fr 1fr}.hero-stat:nth-child(3){grid-column:span 2}}.about-layout{gap:var(--space-12);grid-template-columns:1.2fr 1fr;align-items:start;display:grid}.about-bio{font-size:var(--text-xl);line-height:1.7}.about-bio strong{color:var(--color-primary);font-weight:500}.about-stack{gap:var(--space-6);flex-direction:column;display:flex}.timeline{position:relative}.timeline:before{content:"";background:var(--color-border);transform-origin:top;width:1px;position:absolute;top:0;bottom:0;left:12px}.timeline.is-revealed:before{animation:ruleDrawY 1.1s var(--ease-out-soft) .2s backwards}@media (width>=768px){.timeline-item{column-gap:var(--space-8);grid-template-columns:220px 1fr;display:grid}.timeline-head .period{margin-bottom:0}}@media (width<=680px){.nav-links{display:none}.nav-links.open{gap:var(--space-3);padding:var(--space-4) 0;flex-direction:column;display:flex}.nav-inner{flex-wrap:wrap}.nav-toggle{display:block}.hero{min-height:70vh;padding:var(--space-16) 0}.about-layout{gap:var(--space-8);grid-template-columns:1fr}.card-hero{grid-row:auto}.timeline-content ul li{font-size:var(--text-base)}.contact-card{padding:var(--space-6)}}@media (width>=768px){.hero h1{max-width:600px}}@media (width>=1200px){.nav-inner{max-width:var(--container-max)}.hero h1{max-width:800px}.hero .tagline{font-size:var(--text-xl);max-width:60ch}.about-layout{gap:var(--space-16)}.card{padding:var(--space-10)}.card-row{padding:var(--space-6) 0}.card-hero .stat{font-size:var(--text-4xl)}.essay-row-lead{padding:var(--space-10)}.timeline-content ul li{font-size:var(--text-base)}.contact-card{padding:var(--space-12)}}.img-media{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:100%;line-height:0;overflow:hidden}.img-media img{width:100%;height:auto;transition:transform var(--dur-slow) var(--ease-out-soft);display:block}.img-media:not(.contain):hover img{transform:scale(1.04)}.img-media.contain img{object-fit:contain;background:var(--color-bg)}.img-placeholder{height:200px;font-family:var(--font-sans);font-size:var(--text-sm);color:var(--color-text-muted);background:var(--color-surface);justify-content:center;align-items:center;line-height:1.4;display:flex}.img-carousel{border-radius:var(--radius-md);width:100%;position:relative;overflow:hidden}.img-carousel-inner{scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;display:flex;overflow-x:auto}.img-carousel-inner::-webkit-scrollbar{display:none}.img-carousel-item{scroll-snap-align:start;flex:0 0 100%;line-height:0}.img-carousel-item img{width:100%;height:auto;display:block}.img-carousel-arrow{z-index:2;cursor:pointer;color:#0000;width:48px;font-family:var(--font-sans);transition:color var(--dur-med) var(--ease-out);-webkit-appearance:none;appearance:none;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:36px;font-weight:200;display:flex;position:absolute;top:0;bottom:0}.img-carousel-arrow.prev{left:0}.img-carousel-arrow.next{right:0}.img-carousel:hover .img-carousel-arrow{color:#fff9}.img-carousel .img-carousel-arrow:hover,.img-carousel .img-carousel-arrow:focus-visible{color:var(--color-primary)}.img-carousel-progress{pointer-events:none;opacity:0;transition:opacity var(--dur-med) var(--ease-out);background:linear-gradient(#0000,#00000026);gap:4px;padding:20px 16px 16px;display:flex;position:absolute;bottom:0;left:0;right:0}.img-carousel:hover .img-carousel-progress{opacity:1}.img-carousel-progress-seg{height:2px;transition:background var(--dur-med) var(--ease-out);background:#ffffff4d;flex:1}.img-carousel-progress-seg.active{background:var(--color-primary)}.img-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));width:100%;display:grid}.img-grid-2{grid-template-columns:repeat(2,1fr)}.img-grid-3{grid-template-columns:repeat(3,1fr)}.img-grid-4{grid-template-columns:repeat(4,1fr)}.img-grid-item{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;transition:transform var(--dur-med) var(--ease-out), box-shadow var(--dur-med) var(--ease-out);line-height:0;overflow:hidden}.img-grid-item:hover,.img-grid-item.is-hover{box-shadow:var(--shadow-md);transform:scale(1.02)}.img-grid-item img{object-fit:cover;aspect-ratio:4/3;width:100%;height:100%;display:block}.img-filmstrip{gap:var(--space-4);flex-direction:column;width:100%;display:flex}.img-filmstrip-item{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);line-height:0;position:relative;overflow:hidden}.img-filmstrip-item img{width:100%;height:auto;display:block}.img-filmstrip-num{background:var(--color-bg);border:1px solid var(--color-border);width:24px;height:24px;font-family:var(--font-sans);color:var(--color-text-muted);border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:flex;position:absolute;top:12px;left:12px}@media (width<=679px){.img-grid-2,.img-grid-3,.img-grid-4{grid-template-columns:1fr}.img-carousel-arrow{width:36px;font-size:28px}}.lightbox{z-index:10000;opacity:0;visibility:hidden;transition:opacity var(--dur-med) var(--ease-out), visibility var(--dur-med);cursor:zoom-out;background:#000000eb;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lightbox.open{opacity:1;visibility:visible}.lightbox img{cursor:default;border-radius:var(--radius-md);max-width:92vw;max-height:92vh;transition:transform var(--dur-med) var(--ease-out);display:block;transform:scale(.95);box-shadow:0 4px 40px #0006}.lightbox.open img{transform:scale(1)}.lightbox-close{color:#fff;width:40px;height:40px;font-family:var(--font-sans);cursor:pointer;transition:background var(--dur-fast), border-color var(--dur-fast);z-index:1;background:#0006;border:1px solid #ffffff40;border-radius:50%;justify-content:center;align-items:center;font-size:20px;display:flex;position:absolute;top:16px;right:16px}.lightbox-close:hover{background:#000000b3;border-color:#ffffff80}.lightbox-counter{font-family:var(--font-sans);color:#fff9;pointer-events:none;font-size:13px;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.lightbox-text{max-width:600px;padding:var(--space-8);font-family:var(--font-sans);font-size:var(--text-base);color:#fffc;text-align:center;border-radius:var(--radius-md);background:#ffffff0f;border:1px solid #ffffff1a;line-height:1.6;display:none}body.lightbox-open{overflow:hidden}body{transition:background-color .3s var(--ease-out), color .3s var(--ease-out)}.nav .theme-toggle,.case-nav .theme-toggle{color:var(--color-text-muted);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-full);cursor:pointer;transition:color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);align-items:center;padding:5px 8px;display:inline-flex}.nav .theme-toggle:hover,.case-nav .theme-toggle:hover{color:var(--color-primary);border-color:var(--color-primary)}.nav .theme-toggle svg,.case-nav .theme-toggle svg{display:block}.nav .theme-toggle .icon-sun,.case-nav .theme-toggle .icon-sun{animation:iconIn var(--dur-med) var(--ease-out-soft)}.nav .theme-toggle .icon-moon,.case-nav .theme-toggle .icon-moon{animation:iconIn var(--dur-med) var(--ease-out-soft);display:none}[data-theme=dark] .nav .theme-toggle .icon-sun,[data-theme=dark] .case-nav .theme-toggle .icon-sun{display:none}[data-theme=dark] .nav .theme-toggle .icon-moon,[data-theme=dark] .case-nav .theme-toggle .icon-moon{display:block}.case-nav .nav-left{align-items:center;gap:var(--space-3);display:flex}.footer-link{color:var(--color-primary);transition:color var(--dur-fast) var(--ease-out);font-weight:500;text-decoration:none}.footer-link:hover{color:var(--color-primary-hover)}.back-to-top{bottom:var(--space-5);right:var(--space-5);z-index:70;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-full);width:40px;height:40px;color:var(--color-text-muted);cursor:pointer;opacity:0;visibility:hidden;transition:opacity var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;display:inline-flex;position:fixed;transform:translateY(8px)}.back-to-top[hidden]{display:none}.back-to-top:not([hidden]).is-visible{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top:hover{color:var(--color-primary);border-color:var(--color-primary);background:var(--color-primary-subtle)}.back-to-top:focus{border-color:var(--color-primary);outline:none}.reading-progress{background:var(--color-primary);z-index:100;width:0%;height:2px;transition:width .1s linear;position:fixed;top:0;left:0}.publications{flex-direction:column;display:flex}.publication{border:none;border-top:1px solid var(--color-border);padding:var(--space-4) 0;gap:var(--space-1);background:0 0;border-radius:0;flex-direction:column;display:flex}.publication:first-child{border-top:none}.publication-title{font-family:var(--font-sans);font-size:var(--text-sm);color:var(--color-text);transition:color var(--dur-fast) var(--ease-out);font-weight:600;line-height:1.4;text-decoration:none}.publication-title:after{content:" ↗";opacity:0;transition:opacity var(--dur-fast) var(--ease-out);font-size:.85em}.publication-title:hover{color:var(--color-primary)}.publication-title:hover:after{opacity:1}.publication-bottom{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.publication-authors{font-family:var(--font-sans);font-size:var(--text-xs);color:var(--color-text-muted);line-height:1.5}.publication-venue{font-family:var(--font-mono);font-size:var(--text-xs);white-space:nowrap;font-weight:500}.venue-full{color:var(--color-primary);display:inline}.venue-abbr{color:var(--color-primary);background:var(--color-primary-subtle);border:1px solid var(--color-primary);border-radius:var(--radius-sm);padding:0 5px;display:none}@media (width<=680px){.venue-full{display:none}.venue-abbr{display:inline}}