:root{--pc-bg:#00000005;--pc-bg-light:#00000002;--pc-bg-hover:#00000004;--pc-bg-tag:#0000000a;--pc-bg-hover-tag:#00000014;--pc-border:#0000000f;--pc-border-light:#0000000d;--pc-border-dotted:#00000014;--pc-border-hover:#00000026;--pc-shadow:#0000000d;--pc-shadow-hover:#0000001a;--pc-text-light:var(--color-ink-light);--pc-accent-hover:rgba(var(--color-accent-rgb), .05);--pc-radius-sm:2px;--pc-radius-md:3px;--pc-radius-lg:4px;--pc-fs-xs:.55rem;--pc-fs-sm:.6rem;--pc-fs-sm-alt:.65rem;--pc-fs-base:.7rem;--pc-fs-md:.75rem;--pc-fs-lg:.8rem;--pc-fs-lg-alt:.82rem;--pc-fs-xl:.85rem;--pc-fs-xxl:.9rem;--pc-fs-hero:1rem;--pc-fs-title:1.1rem;--pc-pad-xs:.06rem .2rem;--pc-pad-sm:.08rem .25rem;--pc-pad-base:.1rem .3rem;--pc-pad-md:.15rem .4rem;--pc-pad-lg:.2rem .5rem;--pc-pad-xl:.6rem .75rem;--pc-duration-fast:.2s;--pc-duration-slow:.3s;--pc-transform-hover:translateY(-1px);--pc-transform-slide:translateX(2px)}.project-card{gap:var(--space-sm);transition:all var(--pc-duration-slow) cubic-bezier(.4,0,.2,1);cursor:pointer;background-color:#0000;border-bottom:1px dotted #00000014;border-left:2px solid #0000;grid-template-columns:2rem minmax(0,1fr) auto;align-items:baseline;padding:.1rem 0;display:grid;position:relative;overflow:visible}.project-card:hover{background-color:var(--pc-bg-hover);border-left-color:var(--color-accent);transform:var(--pc-transform-slide)}.project-card.is-active{background-color:var(--pc-bg);border-left-color:var(--color-accent)}.project-card-header{contain:layout style;display:contents}.project-number{z-index:1;flex-shrink:0;grid-column:1;width:2rem;min-width:2rem;position:relative;visibility:visible!important;display:block!important}.project-title-text{grid-column:2;min-width:0}.project-status{flex-shrink:0;grid-column:3}.project-number,.project-org-tag,.project-status{font-family:var(--font-mono)}.project-number{font-size:var(--pc-fs-base);color:var(--color-ink-light);text-align:right;padding-right:var(--space-xs);font-weight:400;line-height:1.2}.project-title-block{flex-direction:column;align-items:flex-start;gap:.25rem;min-width:0;display:flex;overflow:hidden}.project-title-text{min-width:0;font-family:var(--font-serif);font-size:var(--pc-fs-title);color:var(--color-ink-dark);transition:color var(--pc-duration-fast) ease;text-align:left;white-space:nowrap;align-items:baseline;font-weight:600;line-height:1.2;display:inline-flex;overflow:hidden}.project-card:hover .project-title-text{color:var(--color-accent)}.project-title-prefix{letter-spacing:-.01em;font-weight:700}.project-org-tag{font-size:var(--pc-fs-sm);letter-spacing:.06em;color:var(--color-ink-dark);background:var(--pc-bg-tag);border:1px solid var(--pc-text-light);padding:var(--pc-pad-md);border-radius:var(--pc-radius-md);transition:all var(--pc-duration-fast) ease;font-weight:500;text-decoration:none;display:inline-block}.project-card:hover .project-org-tag{color:var(--color-accent);border-color:var(--color-accent);background:var(--pc-accent-hover)}.project-status{font-size:var(--pc-fs-sm);text-transform:uppercase;letter-spacing:.08em;color:var(--pc-text-light);white-space:nowrap;text-align:right;justify-self:end;font-variant-caps:small-caps;font-weight:500}.project-details{animation:slideDown var(--pc-duration-fast) cubic-bezier(.25,.46,.45,.94);grid-column:1/-1;min-width:0;margin-top:.5rem;margin-left:2rem;margin-right:1rem;position:relative;overflow:hidden}.project-details.is-collapsed{opacity:0;pointer-events:none;visibility:hidden;width:100%;margin-top:0;margin-left:2rem;margin-right:1rem;animation:none;position:absolute;top:100%;left:0}.project-details.closing{animation:slideUp var(--pc-duration-fast) cubic-bezier(.55,.06,.68,.19)}@keyframes slideDown{0%{opacity:0;max-height:0;transform:translateY(-5px)}to{opacity:1;max-height:200px;transform:translateY(0)}}@keyframes slideUp{0%{opacity:1;max-height:200px;transform:translateY(0)}to{opacity:0;max-height:0;transform:translateY(-5px)}}.project-details-content{background:var(--pc-bg-light);border-radius:var(--pc-radius-lg);border:1px solid var(--pc-border);min-width:0;padding:1rem;display:block;position:relative;overflow:visible}.project-visual-container{border-radius:var(--pc-radius-lg);background:var(--pc-bg);border:1px solid var(--pc-border-light);float:left;shape-outside:inset(0);width:120px;height:160px;margin-top:0;margin-bottom:.5rem;margin-right:1rem;position:relative;overflow:hidden}.project-visual-container canvas{display:block;width:100%!important;height:100%!important}.project-visual-container:after{content:"";background:linear-gradient(45deg,transparent 0%,var(--pc-shadow) 100%);pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.project-description{font-family:var(--font-body);font-size:var(--pc-fs-xl);color:var(--color-ink-medium);text-align:left;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;width:100%;min-width:0;margin-top:0;padding-top:0;line-height:1.6;display:block;overflow:hidden}.project-summary,.project-description-text{letter-spacing:-.01em;-webkit-user-select:text;user-select:text;cursor:text;margin:0;font-weight:400;line-height:1.6}.project-summary{text-indent:1.5em;margin-top:0;margin-bottom:.75rem;padding-top:0}.project-summary:last-of-type{margin-bottom:0}.project-metrics,.project-tech{align-items:flex-start;gap:.5rem;padding:.5rem 0;display:flex}.project-links{border-top:1px solid var(--pc-border-dotted);align-items:flex-start;gap:.5rem;padding:.5rem 0;display:flex}.metrics-label,.tech-label,.links-label{font-family:var(--font-mono);font-size:var(--pc-fs-md);color:var(--color-ink-light);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0;margin-top:.1rem;font-weight:500}.metrics-tags,.tech-tags,.links-container{flex-wrap:wrap;flex:1;gap:.25rem;display:flex}.metric-tag,.tech-tag{font-family:var(--font-mono);font-size:var(--pc-fs-base);color:var(--color-ink-medium);background:var(--pc-bg-tag);padding:var(--pc-pad-md);border-radius:var(--pc-radius-sm);border:1px solid var(--pc-border-dotted);letter-spacing:.02em;cursor:pointer;transition:all var(--pc-duration-fast) ease;font-weight:400;display:inline-block}.metric-tag:hover,.tech-tag:hover{color:var(--color-ink-dark);background:var(--pc-bg-hover-tag);border-color:var(--pc-border-hover);transform:var(--pc-transform-hover);box-shadow:0 1px 3px var(--pc-shadow-hover)}.metric-tag-link,.project-card .project-link{border-radius:var(--pc-radius-md);letter-spacing:.02em;transition:all var(--pc-duration-fast) ease;cursor:pointer;background:#2563eb26;font-size:.7rem;font-weight:500;display:inline-block;box-shadow:0 1px 2px #2563eb33,0 2px 4px #2563eb1a;font-family:var(--font-mono)!important;color:#1e40af!important;border:1px solid #2563eb66!important;border-bottom:2px solid #1e40af!important;margin-bottom:0!important;padding:.2rem .5rem!important;text-decoration:none!important}.metric-tag-link:hover,.project-card .project-link:hover{transform:var(--pc-transform-hover);box-shadow:0 2px 4px #2563eb4d,0 4px 8px #2563eb33;color:#fff!important;background:#2563eb!important;border-color:#1d4ed8 #1d4ed8 #1e40af!important}@media (max-width:768px){.project-card{gap:var(--space-xxs);grid-template-columns:2rem minmax(0,1fr) auto;align-items:center;padding:.06rem 0}.project-title-block{gap:.1rem;overflow:hidden}.project-title-text{white-space:nowrap;min-width:0;font-size:var(--pc-fs-hero);align-items:baseline;line-height:1.15;display:inline-flex;overflow:hidden}.project-number,.project-status{line-height:1.15}.project-card .marquee-viewport{flex:auto;min-width:0;margin-left:.3rem}.project-card .marquee-item{white-space:nowrap}.project-status{font-size:var(--pc-fs-xs)}.project-details-content{display:block}.project-visual-container{float:left;width:100px;height:130px;margin-top:0;margin-bottom:.5rem;margin-right:.75rem}.project-visual-container canvas{width:100%!important;height:100%!important}.project-description{font-size:var(--pc-fs-lg);line-height:1.55}.project-metrics{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.metrics-label{white-space:nowrap;display:inline}.metric-item{font-size:var(--pc-fs-base);flex:auto;min-width:0}.metric-tag{font-size:var(--pc-fs-sm-alt);padding:var(--pc-pad-base)}.metric-value{word-break:break-word;overflow-wrap:break-word}.tech-tag{font-size:var(--pc-fs-sm-alt);padding:var(--pc-pad-base)}}@media (max-width:480px){.project-card{gap:var(--space-xxs);grid-template-columns:2rem minmax(0,1fr) auto;align-items:center;padding:.05rem 0}.project-title-block{gap:.08rem}.project-org-tag{font-size:var(--pc-fs-xs);padding:var(--pc-pad-sm);margin-top:0}.project-number{font-size:var(--pc-fs-sm)}.project-status{font-size:var(--pc-fs-xs);justify-self:end}.project-details{margin-left:1rem;margin-right:.5rem}.project-details-content{padding:.75rem;display:block}.project-visual-container{float:left;width:80px;height:100px;margin-top:0;margin-bottom:.5rem;margin-right:.5rem}.project-visual-container canvas{width:100%!important;height:100%!important}.project-description{font-size:var(--pc-fs-md);line-height:1.5}.project-metrics{flex-wrap:wrap;align-items:center;gap:.3rem;display:flex}.metrics-label{white-space:nowrap;display:inline}.metric-item{font-size:var(--pc-fs-sm-alt);align-items:center;gap:.1rem;min-width:0;display:inline-flex}.metric-tag{font-size:var(--pc-fs-sm);padding:var(--pc-pad-sm);word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;align-items:center;max-width:100%;display:inline-flex}.metric-label{font-size:var(--pc-fs-sm)}.metric-value{font-size:var(--pc-fs-base);word-break:break-word;overflow-wrap:break-word;align-items:center;max-width:100%;display:inline-flex}.tech-tag{font-size:var(--pc-fs-sm);padding:var(--pc-pad-sm)}.project-tech{flex-direction:column;gap:.25rem}}@media (max-width:320px){.project-details-content{padding:.5rem;display:block}.project-visual-container{float:left;width:60px;height:80px;margin-top:0;margin-bottom:.4rem;margin-right:.4rem}.project-visual-container canvas{width:100%!important;height:100%!important}.project-description{font-size:var(--pc-fs-md);line-height:1.4}.metrics-label{white-space:nowrap;display:inline}.metric-item{font-size:var(--pc-fs-sm)}.metric-tag{font-size:var(--pc-fs-xs);padding:var(--pc-pad-xs);word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;align-items:center;max-width:100%;display:inline-flex}.metric-label{font-size:var(--pc-fs-xs)}.metric-value{font-size:var(--pc-fs-sm-alt);align-items:center;display:inline-flex}.tech-tag{font-size:var(--pc-fs-xs);padding:var(--pc-pad-xs)}.research-note-title,.research-note-content p{font-size:var(--pc-fs-md)}}.research-notes{border-top:1px solid var(--pc-border-dotted);clear:both;margin-top:1rem;padding-top:1rem}.research-notes-title,.research-note-title{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.research-notes-title{font-size:var(--pc-fs-md);color:var(--pc-text-light);margin:0 0 .75rem}.research-notes-list{flex-direction:column;gap:.25rem;display:flex}.research-note-item,.research-note-header{border:1px solid var(--pc-border-dotted);border-radius:var(--pc-radius-lg);transition:all var(--pc-duration-fast) ease;background:#00000003}.research-note-item{overflow:hidden}.research-note-item:hover{border-color:var(--color-accent);background:rgba(var(--color-accent-rgb), .02)}.research-note-header{width:100%;padding:var(--pc-pad-xl);cursor:pointer;text-align:left;font-family:var(--font-body);border:none;justify-content:space-between;align-items:center;display:flex}.research-note-header:hover{background:var(--pc-bg)}.research-note-title{font-size:var(--pc-fs-lg);color:var(--color-ink-dark);letter-spacing:-.01em;flex:1;font-weight:600}.research-note-arrow{font-size:var(--pc-fs-xxl);color:var(--color-accent);transition:transform var(--pc-duration-slow) ease;flex-shrink:0;margin-left:.5rem}.research-note-arrow.expanded{transform:rotate(180deg)}.research-note-content{padding:0 var(--pc-pad-xl);animation:slideDown var(--pc-duration-slow) ease-out;overflow:hidden}.research-note-content.closing{animation:slideUp var(--pc-duration-slow) ease-in}.research-note-content p{font-size:var(--pc-fs-lg);color:var(--color-ink-medium);text-indent:0;margin:0;line-height:1.6}.research-note-content strong{font-size:var(--pc-fs-lg-alt);color:var(--color-ink-dark);font-weight:600}.research-note-content h1,.research-note-content h2,.research-note-content h3,.research-note-content h4,.research-note-content h5,.research-note-content h6{font-size:var(--pc-fs-xl);color:var(--color-ink-dark);margin:.5rem 0 .3rem;font-weight:600;line-height:1.4}.research-note-content ul,.research-note-content ol{font-size:var(--pc-fs-lg);color:var(--color-ink-medium);margin:.5rem 0;padding-left:1.5rem;line-height:1.6}.research-note-content li{margin:.25rem 0}.research-note-content li strong{font-size:var(--pc-fs-lg);font-weight:600}.research-note-content code{font-family:var(--font-mono);font-size:var(--pc-fs-md);background:var(--pc-shadow);padding:var(--pc-pad-base);border-radius:var(--pc-radius-sm)}.paper-actions{gap:var(--space-md);margin-top:var(--space-md);padding-top:var(--space-sm);border-top:1px solid var(--pc-border-light);display:flex}.latex-view-btn{align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);background:var(--color-accent);color:#fff;border-radius:var(--pc-radius-lg);font-family:var(--font-sans);font-size:var(--pc-fs-xl);cursor:pointer;transition:all var(--pc-duration-fast) ease;border:none;font-weight:500;text-decoration:none;display:inline-flex}.latex-view-btn:hover{transform:var(--pc-transform-hover);background:#0056b3;box-shadow:0 2px 8px #0056b34d}.latex-view-btn:active{transform:translateY(0);box-shadow:0 1px 4px #0056b34d}
