:root{color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans SC,Microsoft YaHei,Helvetica,Arial,sans-serif;--bg: #ffffff;--canvas: #f6f8fa;--panel: #ffffff;--border: #d8dee4;--border-muted: #eaeef2;--text: #24292f;--muted: #57606a;--subtle: #6e7781;--accent: #1a1a1a;--accent-strong: #000000;--accent-rgb: 26, 26, 26;--accent-soft-bg: #eceef0;--accent-soft-border: #d0d7de;--accent-soft-text: #1f2328;--success: #1a7f37;--tag-bg: #dafbe1;--tag-border: #aceebb;--tag-border-strong: #1f883d;--tag-text: #1a7f37;--tag-text-strong: #116329;--tag-rgb: 26, 127, 55;--heat-0: #ebedf0;--heat-1: #9be9a8;--heat-2: #40c463;--heat-3: #30a14e;--heat-4: #216e39;--shadow: 0 8px 24px rgba(140, 149, 159, .18)}*{box-sizing:border-box}html{scroll-behavior:smooth}html,body,#root{min-height:100%}body{margin:0;overflow-x:hidden;background:var(--bg);color:var(--text);font-family:inherit}body,button,input,textarea,select{font:inherit}button{cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}img{display:block;max-width:100%}.github-page{min-height:100vh;background:var(--bg)}.github-topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:64px;padding:0 24px;border-bottom:1px solid var(--border);background:#f6f8faeb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.topbar-brand{display:inline-flex;align-items:center;min-width:0;color:var(--text);font-weight:700}.topbar-brand:hover{text-decoration:none}.topbar-nav{display:flex;align-items:center;justify-content:flex-end;gap:.25rem;min-width:0}.topbar-nav a,.topbar-nav button{min-height:36px;padding:0 .75rem;border:0;border-radius:6px;background:transparent;color:var(--text);font-size:.92rem;font-weight:600;white-space:nowrap}.topbar-nav a{display:inline-flex;align-items:center}.topbar-nav a:hover,.topbar-nav button:hover{background:#d0d7de52;text-decoration:none}.profile-layout{display:grid;grid-template-columns:minmax(240px,296px) minmax(0,1fr);gap:32px;width:min(1280px,100%);margin:0 auto;padding:32px 24px 48px}.profile-sidebar{min-width:0}.avatar-shell{overflow:hidden;width:min(100%,296px);aspect-ratio:1;border:1px solid var(--border);border-radius:50%;background:var(--canvas)}.avatar-shell img{width:100%;height:100%;object-fit:cover}.profile-title{margin-top:18px}.profile-title h1{margin:0;color:var(--text);font-size:1.72rem;font-weight:700;letter-spacing:0;line-height:1.2}.profile-title p{margin:.15rem 0 0;color:var(--muted);font-size:1.18rem;font-weight:400;overflow-wrap:anywhere}.profile-bio{margin:16px 0;color:var(--text);font-size:1rem;line-height:1.55;overflow-wrap:anywhere}.profile-action,.gh-button{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:32px;padding:.35rem .75rem;border:1px solid rgba(27,31,36,.15);border-radius:6px;background:linear-gradient(180deg,#f6f8fa,#f3f4f6);color:var(--text);font-size:.88rem;font-weight:600;line-height:1.3;text-decoration:none;box-shadow:0 1px #1b1f240a}.profile-action{margin-top:18px;width:fit-content;justify-self:center;min-height:auto;padding:.1rem 0;border:0;border-radius:0;background:transparent;color:var(--muted);font-weight:700;box-shadow:none}.gh-button:hover{border-color:#1b1f242e;background:#f3f4f6;text-decoration:none}.profile-action:hover{background:transparent;text-decoration:underline}.gh-button-subtle{background:#fff}.public-stats-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin-top:16px;padding:.7rem 0;border-top:1px solid var(--border-muted);border-bottom:1px solid var(--border-muted)}.public-stat-row{display:grid;align-content:center;justify-items:center;gap:.18rem;min-height:48px;padding:0 .65rem;color:var(--muted);font-size:.72rem;line-height:1.15;text-align:center;opacity:0;transform:translateY(4px);animation:stat-enter .36s ease forwards;animation-delay:calc(var(--stat-index, 0) * 70ms)}.public-stat-row+.public-stat-row{border-left:1px solid var(--border-muted)}.public-stat-row span{min-width:0;color:var(--muted);font-weight:700;overflow-wrap:anywhere}.public-stat-row strong{color:var(--accent);font-variant-numeric:tabular-nums;font-size:1.12rem;font-weight:800;white-space:nowrap}@keyframes stat-enter{to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.public-stat-row{opacity:1;transform:none;animation:none}}.profile-meta{display:grid;gap:.8rem;margin:18px 0 0;padding:0}.profile-meta section{display:grid;gap:.65rem}.profile-meta h2{margin:0;color:var(--muted);font-size:.76rem;font-weight:700;letter-spacing:0}.profile-meta>div{display:grid;gap:.12rem}.profile-meta dt{color:var(--muted);font-size:.76rem;font-weight:700;letter-spacing:0;text-transform:uppercase}.profile-meta dd{margin:0;color:var(--text);line-height:1.45}.profile-section{margin-top:22px;padding-top:18px;border-top:1px solid var(--border-muted)}.profile-section h2{margin:0 0 .75rem;color:var(--text);font-size:1rem;font-weight:700}.plain-list{padding:0;margin:0;list-style:none}.compact-list{display:grid;gap:.65rem}.compact-list li{display:grid;gap:.15rem}.compact-list span{color:var(--muted);font-size:.78rem}.compact-list strong{color:var(--text);font-size:.92rem;font-weight:600;overflow-wrap:anywhere}.topic-list{position:relative;display:grid;gap:var(--topic-gap)}.topic-list-row{display:flex;flex-wrap:nowrap;gap:var(--topic-gap)}.topic-measure{position:absolute;inset:0 auto auto 0;display:flex;gap:var(--topic-gap);visibility:hidden;pointer-events:none}.topic-pill{display:inline-flex;align-items:center;flex:0 0 auto;min-height:28px;padding:.28rem .62rem;border:1px solid var(--accent-soft-border);border-radius:999px;background:var(--accent-soft-bg);color:var(--accent-soft-text);font-size:.78rem;font-weight:600}.profile-main{min-width:0}.gh-panel{overflow:hidden;border:1px solid var(--border);border-radius:6px;background:var(--panel)}.gh-panel-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:48px;padding:.85rem 1rem;border-bottom:1px solid var(--border);box-shadow:inset 4px 0 0 var(--accent);background:var(--canvas);color:var(--text);font-size:.92rem;font-weight:700}.gh-panel-header>span:first-child{color:var(--accent-strong);font-weight:800;font-variant-numeric:tabular-nums}.muted{color:var(--muted);font-weight:500}.readme-content{padding:24px}.readme-content h2{margin:0;padding-bottom:.45rem;border-bottom:1px solid var(--border-muted);color:var(--text);font-size:2rem;font-weight:700;letter-spacing:0;line-height:1.25}.readme-content p{margin:1rem 0 0;color:var(--text);line-height:1.75;overflow-wrap:anywhere}.readme-experience-list{column-count:2;column-gap:1.8rem;padding-left:1.1rem;margin:1.25rem 0 0;color:var(--text);line-height:1.5}.readme-experience-list li{break-inside:avoid;margin:0 0 .42rem;padding-left:.05rem}.readme-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;margin-top:1.5rem}.readme-columns h3{margin:0 0 .65rem;color:var(--text);font-size:1rem}.readme-columns ul{display:grid;gap:.55rem;padding-left:1.2rem;margin:0;color:var(--text);line-height:1.55}.contribution-panel{position:relative;overflow:visible;margin-right:92px;margin-top:24px}.calendar-shell{--calendar-gap: 3px;--calendar-label-width: 24px;--calendar-body-gap: 8px;position:relative;padding:16px 18px 8px}.calendar-board{width:100%;max-width:100%;min-width:0}.calendar-wrap{overflow:visible;min-width:0}.local-calendar-grid{display:grid;gap:.3rem;width:100%;max-width:100%;min-width:0;color:var(--muted);font-size:.72rem}.calendar-month-row{display:grid;grid-template-columns:repeat(var(--week-count),minmax(0,1fr));gap:var(--calendar-gap);padding-left:calc(var(--calendar-label-width) + var(--calendar-body-gap));min-height:18px}.calendar-month-row span{align-self:end;color:var(--muted);font-size:.72rem;font-weight:700;line-height:1;white-space:nowrap}.calendar-body-row{display:grid;grid-template-columns:var(--calendar-label-width) minmax(0,1fr);gap:var(--calendar-body-gap)}.calendar-weekday-labels{display:grid;grid-template-rows:repeat(7,1fr);gap:var(--calendar-gap);align-items:center;color:var(--muted);font-size:.68rem;line-height:1}.calendar-weekday-labels span:nth-child(1){grid-row:2}.calendar-weekday-labels span:nth-child(2){grid-row:4}.calendar-weekday-labels span:nth-child(3){grid-row:6}.calendar-weeks{display:grid;grid-template-columns:repeat(var(--week-count),minmax(0,1fr));gap:var(--calendar-gap);width:100%;min-width:0}.calendar-week{display:grid;grid-template-rows:repeat(7,auto);gap:var(--calendar-gap);min-width:0}.calendar-day{width:100%;height:auto;aspect-ratio:1 / 1;padding:0;border:0;border-radius:2px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.calendar-day.is-clickable{cursor:pointer;outline:none}.calendar-day.is-clickable:hover{box-shadow:0 0 0 1px #24292f}.calendar-day.is-selected{box-shadow:0 0 0 2px #24292f}.calendar-day.is-padding{visibility:hidden}.react-activity-calendar,.react-activity-calendar__footer{color:var(--muted)}.calendar-year-rail{position:absolute;top:16px;left:calc(100% + 10px);display:grid;gap:.4rem;width:74px;padding:0}.calendar-year-button{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:44px;padding:.42rem .35rem;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--text);font-size:.86rem;font-weight:800}.calendar-year-button.is-active{border-color:var(--tag-border-strong);background:var(--tag-bg);color:var(--tag-text)}.calendar-filter-toggle{display:inline-flex;align-items:center;justify-content:center;gap:.32rem;min-height:34px;padding:.34rem .42rem;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--text);font-size:.76rem;font-weight:800;white-space:nowrap}.calendar-filter-toggle input{width:13px;height:13px;margin:0;accent-color:var(--tag-border-strong)}.calendar-selection{margin:10px 18px 14px;border:1px solid var(--border-muted);border-radius:6px;background:#fff}.calendar-entry-list{min-width:0;max-height:320px;overflow-y:auto;overflow-anchor:none;overscroll-behavior:contain}.calendar-entry-day ul{display:grid;gap:0;padding:0;margin:0;list-style:none}.calendar-entry-day+.calendar-entry-day{border-top:1px solid var(--border-muted)}.calendar-entry-day.is-focused{background:#fbfbfc}.calendar-entry-day-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;min-height:34px;padding:.48rem .8rem;border:0;border-bottom:1px solid var(--border-muted);background:#f6f8faf5;color:var(--text);text-align:left}.calendar-entry-day-head span{color:var(--text);font-size:.82rem;font-weight:800}.calendar-entry-day-head strong{color:var(--muted);font-size:.74rem}.calendar-entry-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.8rem;align-items:center;min-width:0;padding:.78rem .8rem;transition:background .16s ease,border-color .16s ease}.calendar-entry-row:hover{background:var(--canvas)}.calendar-entry-row+.calendar-entry-row{border-top:1px solid var(--border-muted)}.calendar-entry-main{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.65rem;align-items:start;min-width:0}.calendar-entry-title{color:var(--accent);font-size:.88rem;font-weight:600;line-height:1.5;overflow-wrap:anywhere}.calendar-entry-title.is-button{padding:0;border:0;background:transparent;text-align:left}.calendar-entry-title.is-button:hover{text-decoration:underline}.calendar-entry-side{display:inline-flex;align-items:center;gap:.55rem}.calendar-entry-date{color:var(--muted);font-size:.74rem;font-weight:700;white-space:nowrap}.calendar-entry-kind{display:inline-flex;align-items:center;justify-content:center;min-width:48px;padding:.1rem .4rem;border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:.68rem;font-weight:700}.calendar-entry-action{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:30px;padding:.28rem .58rem;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--text);font-size:.78rem;font-weight:700;white-space:nowrap;text-decoration:none}.calendar-entry-action:hover{border-color:#afb8c1;background:#f6f8fa;text-decoration:none}.calendar-entry-kind.is-video{border-color:var(--accent-soft-border);background:var(--accent-soft-bg);color:var(--accent-soft-text)}.calendar-entry-kind.is-article{border-color:var(--tag-border);background:var(--tag-bg);color:var(--tag-text)}.calendar-entry-kind.is-diary{border-color:var(--tag-border);background:var(--tag-bg);color:var(--tag-text-strong)}.calendar-entry-kind.is-github{border-color:#d0d7de;background:#f6f8fa;color:#24292f}.desktop-notes-open-button{position:fixed;right:22px;bottom:22px;z-index:260;display:inline-flex;align-items:center;justify-content:center;min-width:52px;height:36px;padding:0 12px;border:1px solid rgba(55,48,31,.2);border-radius:8px;background:#fff8ca;color:#24211b;box-shadow:0 12px 32px #21242a2e;font:700 13px/1 Microsoft YaHei UI,Segoe UI,system-ui,sans-serif;text-decoration:none}.desktop-notes-open-button:hover,.desktop-notes-open-button:focus-visible{border-color:#37301f5c;background:#fff3aa;outline:0}.diary-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:230;display:flex;align-items:center;justify-content:center;padding:1rem;background:#1f23285c}.diary-modal-shell{position:relative;width:min(720px,100%);max-height:min(82vh,780px);overflow:auto;padding:1rem 1.1rem 1.15rem;border:1px solid var(--border);border-radius:8px;background:#fff;box-shadow:var(--shadow)}.diary-modal-header{display:grid;gap:.25rem;padding:0 2.4rem .75rem 0;border-bottom:1px solid var(--border-muted)}.diary-modal-header span{color:var(--success);font-size:.74rem;font-weight:800}.diary-modal-header h3{margin:0;color:var(--text);font-size:1.25rem;line-height:1.25}.diary-modal-text{margin:.95rem 0 0;color:var(--text);font-size:.95rem;line-height:1.75;white-space:pre-wrap;overflow-wrap:anywhere}.section-stack{margin-top:28px;scroll-margin-top:84px}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:14px;padding-bottom:9px;border-bottom:1px solid var(--border)}.section-heading h2{position:relative;display:grid;gap:.15rem;margin:0;padding-left:13px;color:var(--text);font-size:1.1rem;font-weight:800}.section-heading h2:before{content:"";position:absolute;top:.16em;bottom:.16em;left:0;width:4px;border-radius:2px;background:linear-gradient(var(--accent),var(--accent-strong))}.section-heading h2 span{color:var(--muted);font-size:.84rem;font-weight:500}.section-heading>span{color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.repo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.repo-card{display:flex;flex-direction:column;min-width:0;min-height:82px;padding:8px 10px;border:1px solid var(--border);border-radius:6px;background:#fff}.repo-card.is-featured{grid-column:1 / -1}.repo-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem}.repo-card-title-stack{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;align-items:flex-start;gap:.3rem}.repo-card-head a,.repo-card-head button{padding:0;border:0;background:transparent;color:var(--accent);font-size:.92rem;font-weight:700;line-height:1.25;text-align:left;overflow-wrap:anywhere}.repo-card-head button:hover{text-decoration:underline}.repo-card-head span{flex:0 0 auto;padding:.05rem .38rem;border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:.68rem;font-weight:700}.repo-card p{margin:.35rem 0 .42rem;color:var(--muted);font-size:.82rem;line-height:1.25}.repo-card .repo-feature-note{display:inline-flex;align-items:center;margin:0;padding:.12rem .45rem;border:1px solid var(--tag-border);border-radius:999px;background:var(--tag-bg);color:var(--tag-text-strong);font-size:.74rem;font-weight:700;line-height:1.15}.repo-card-foot{display:flex;align-items:center;justify-content:flex-end;gap:.55rem;margin-top:auto;color:var(--muted);font-size:.74rem}.repo-card-foot button,.repo-card-foot a{border:0;background:transparent;color:var(--accent);font-size:.76rem;font-weight:600}.notes-feed{display:grid;gap:14px}.note-lead{position:relative;display:grid;gap:.5rem;padding:18px 22px;border:1px solid var(--border);border-radius:10px;background:radial-gradient(125% 150% at 0% 0%,rgba(var(--accent-rgb),.06),rgba(var(--accent-rgb),0) 46%),var(--panel);color:var(--text);overflow:hidden;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.note-lead:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(var(--accent),var(--accent-strong));opacity:.85}.note-lead:hover{border-color:#afb8c1;box-shadow:0 10px 26px #1f232814;text-decoration:none;transform:translateY(-1px)}.note-eyebrow{display:inline-flex;align-items:center;gap:.5rem;color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.7rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.note-dot{width:6px;height:6px;border-radius:999px;background:var(--accent);box-shadow:0 0 rgba(var(--accent-rgb),.4);animation:note-pulse 2.6s ease-out infinite}@keyframes note-pulse{0%{box-shadow:0 0 rgba(var(--accent-rgb),.35)}70%{box-shadow:0 0 0 7px rgba(var(--accent-rgb),0)}to{box-shadow:0 0 rgba(var(--accent-rgb),0)}}.note-lead-title{margin:0;color:var(--text);font-size:1.18rem;font-weight:700;line-height:1.4;overflow-wrap:anywhere;transition:color .16s ease}.note-lead:hover .note-lead-title{color:var(--accent)}.note-lead-desc{display:-webkit-box;margin:0;overflow:hidden;color:var(--muted);font-size:.9rem;line-height:1.6;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:3}.note-lead-foot{display:inline-flex;align-items:center;gap:.5rem;margin-top:.15rem;color:var(--subtle);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.76rem;font-weight:600;font-variant-numeric:tabular-nums}.note-list{display:grid;border:1px solid var(--border);border-radius:10px;background:var(--panel);overflow:hidden}.note-row{display:grid;grid-template-columns:5.4rem minmax(0,1fr) 16px;gap:.9rem;align-items:center;padding:12px 18px;border-top:1px solid var(--border-muted);color:var(--text);transition:background .16s ease}.note-row:first-child{border-top:0}.note-row:hover{background:#f6f8fa;text-decoration:none}.note-row-date{color:var(--subtle);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.74rem;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.note-row-title{min-width:0;overflow:hidden;color:var(--text);font-size:.92rem;font-weight:600;line-height:1.45;text-overflow:ellipsis;white-space:nowrap;transition:color .16s ease}.note-row:hover .note-row-title{color:var(--accent)}.note-arrow{flex-shrink:0;color:var(--subtle);opacity:0;transform:translate(-3px,3px);transition:opacity .16s ease,transform .16s ease,color .16s ease}.note-lead .note-arrow{opacity:.7}.note-row:hover .note-arrow,.note-lead:hover .note-arrow{color:var(--accent);opacity:1;transform:translate(0)}.notes-more-button{display:flex;align-items:center;justify-content:center;gap:.35rem;width:100%;margin-top:2px;padding:11px 14px;border:1px solid var(--border);border-radius:10px;background:var(--panel);color:var(--accent);font-size:.86rem;font-weight:700;transition:background .16s ease,border-color .16s ease}.notes-more-button:hover{border-color:#afb8c1;background:#f6f8fa}.notes-more-icon{width:15px;height:15px;transition:transform .16s ease}.notes-more-button:hover .notes-more-icon{transform:translateY(2px)}.collection-layout{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:14px;align-items:start}@media(min-width:981px)and (hover:hover)and (pointer:fine){#activity .collection-layout{grid-template-columns:minmax(240px,296px) minmax(0,1fr);gap:32px;width:calc(100% + 328px);margin-left:-328px}}@media(hover:none),(pointer:coarse),(max-width:980px){#activity .collection-layout{grid-template-columns:1fr;gap:14px;width:auto;margin-left:0}}.collection-folder-list{display:grid;gap:8px}.collection-folder{display:grid;gap:.38rem;width:100%;padding:12px;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--text);text-align:left}.collection-folder:hover{border-color:#afb8c1;background:var(--canvas)}.collection-folder:disabled,.collection-folder.is-disabled{cursor:default;opacity:1}.collection-folder.is-active{border-color:rgba(var(--tag-rgb),.35);background:var(--tag-bg);box-shadow:inset 3px 0 0 var(--success)}.collection-folder-top{display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-width:0;color:var(--muted);font-size:.7rem;font-weight:700}.collection-folder-top>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.collection-folder-top strong{color:var(--success);font-size:.82rem}.collection-folder-title{color:var(--text);font-size:.95rem;font-weight:700;line-height:1.35}.collection-folder-copy{color:var(--muted);font-size:.78rem;line-height:1.35}.collection-panel{min-width:0}.collection-item-list{display:grid}.collection-item{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;min-width:0;padding:13px 15px}.collection-item+.collection-item{border-top:1px solid var(--border-muted)}.collection-item-main{min-width:0}.project-date{display:inline-block;margin-bottom:.35rem;color:var(--muted);font-size:.78rem;font-weight:700}.collection-item h3{margin:0;color:var(--accent);font-size:.96rem;font-weight:700;line-height:1.42;overflow-wrap:anywhere}.collection-item p{display:-webkit-box;overflow:hidden;margin:.38rem 0 0;color:var(--muted);font-size:.84rem;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.collection-compact-block{display:grid;gap:0;border-top:1px solid var(--border-muted);background:#fbfbfc}.collection-compact-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:9px 15px;border-bottom:1px solid var(--border-muted);color:var(--muted);font-size:.76rem;font-weight:700}.collection-compact-head button{flex:0 0 auto;min-height:28px;padding:.24rem .58rem;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--text);font-size:.76rem;font-weight:700}.collection-compact-head button:hover{border-color:#afb8c1;background:#f6f8fa}.collection-compact-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.collection-compact-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.55rem;align-items:center;min-width:0;padding:7px 15px}.collection-compact-item:nth-child(2n){border-left:1px solid var(--border-muted)}.collection-compact-item:nth-child(n+3){border-top:1px solid var(--border-muted)}.collection-compact-item span{color:var(--muted);font-size:.7rem;font-weight:700;white-space:nowrap}.collection-compact-item button{overflow:hidden;padding:0;border:0;background:transparent;color:var(--accent);font-size:.78rem;font-weight:600;line-height:1.35;text-align:left;text-overflow:ellipsis;white-space:nowrap}.collection-compact-item button:hover{text-decoration:underline}.project-links{display:flex;flex:0 0 auto;gap:.5rem}.icon-sm{width:15px;height:15px}.collection-empty{display:grid;gap:.25rem;padding:24px 16px}.collection-empty strong{color:var(--text)}.collection-empty span{color:var(--muted);font-size:.88rem;line-height:1.45}.video-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.video-link-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 104px;gap:12px;align-items:center;min-height:112px;padding:12px;border:1px solid var(--border);border-radius:8px;background:linear-gradient(180deg,#fff,#f8fafc);color:var(--text);overflow:hidden;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.video-link-card:hover{border-color:#afb8c1;box-shadow:0 8px 20px #1f232814;text-decoration:none;transform:translateY(-1px)}.video-link-copy{display:grid;gap:.45rem;min-width:0;align-content:center}.video-link-copy span{color:var(--muted);font-size:.75rem;font-weight:700;line-height:1}.video-link-copy strong{color:var(--text);display:-webkit-box;overflow:hidden;font-size:.94rem;line-height:1.42;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:4}.video-link-thumb-wrap{width:104px;aspect-ratio:16 / 9;overflow:hidden;border:1px solid rgba(31,35,40,.12);border-radius:7px;background:#eaeef2;box-shadow:inset 0 0 0 1px #ffffff94}.video-link-thumb{display:block;width:100%;height:100%;object-fit:cover}.video-link-thumb-fallback{display:grid;width:100%;height:100%;place-items:center;padding:0 8px;color:var(--muted);font-size:.66rem;font-weight:700;text-align:center}.video-link-arrow{position:absolute;top:9px;right:9px;color:var(--muted);opacity:.78;pointer-events:none}.retro-statusbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;width:min(1280px,100%);margin:0 auto;padding:20px 24px 34px;border-top:1px solid var(--border-muted);color:var(--muted);font-size:.84rem}.retro-statusbar strong{color:var(--text)}.retro-paper{border:1px solid var(--border);border-radius:6px;background:#fff;padding:1.25rem}.retro-paper-date{margin:0;color:var(--muted);font-size:.78rem;font-weight:700;letter-spacing:0;text-transform:uppercase}.retro-copy{color:var(--muted);line-height:1.7}.retro-button{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:.45rem .8rem;border:1px solid rgba(27,31,36,.15);border-radius:6px;background:#f6f8fa;color:var(--text);font-weight:700;text-decoration:none}.retro-button:hover{background:#f3f4f6;text-decoration:none}.retro-paper-hero{width:100%;margin-bottom:1rem;color:#fff;background:var(--success)}.retro-paper-hero:hover{background:var(--tag-text-strong)}.retro-chip{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:.38rem .72rem;border:1px solid var(--border);border-radius:999px;background:#fff;color:var(--accent);font-size:.84rem;font-weight:600;text-decoration:none}.retro-chip:hover{background:var(--canvas);text-decoration:none}.retro-subsection-toggle{display:inline-flex;align-items:center;gap:.4rem;min-height:34px;padding:.42rem .78rem;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--text);font-weight:700}.retro-note-card{border:1px solid var(--border-muted);border-radius:6px;background:var(--canvas);padding:1rem}.retro-note-card h5{margin:0 0 .75rem;color:var(--text);font-size:.85rem;text-transform:uppercase}.retro-notes-grid,.retro-note-list{display:grid;gap:.75rem}.retro-note-list{padding:0;margin:0;list-style:none}.retro-note-link{line-height:1.5}.retro-note-date{color:var(--muted);font-size:.78rem}.project-modal-backdrop,.folder-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:220;display:flex;align-items:center;justify-content:center;padding:1rem;overflow:hidden;overscroll-behavior:contain;background:#1f23285c}.project-modal-shell,.folder-modal-shell{position:relative;width:min(820px,100%);max-height:min(88vh,920px);overflow-y:auto;overscroll-behavior:contain;padding:1rem;border:1px solid var(--border);border-radius:8px;background:#fff;box-shadow:var(--shadow)}.project-modal-close{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:center;width:34px;height:34px;margin-left:auto;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--muted)}.archive-modal-shell{display:flex;flex-direction:column;width:min(1000px,100%);height:min(86vh,900px);max-height:none;overflow:hidden}.archive-modal-shell .project-modal-close{position:absolute;top:1rem;right:1rem;z-index:3}.archive-modal-shell .collection-layout{flex:1 1 auto;min-height:0;grid-template-rows:minmax(0,1fr);align-items:stretch}.archive-modal-shell .collection-folder-list{min-height:0;max-height:100%;overflow:hidden auto;overscroll-behavior:contain}.archive-modal-shell .collection-panel{display:flex;flex-direction:column;min-height:0;max-height:100%}.archive-modal-shell .collection-panel .gh-panel-header{flex:0 0 auto}.archive-modal-shell .collection-item-list{flex:1 1 auto;min-height:0;overflow:hidden auto;overscroll-behavior:contain}.archive-modal-head{flex:0 0 auto;display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin:0 0 .9rem;padding:0 2.6rem .7rem 0;border-bottom:1px solid var(--border)}@media(max-width:980px){.archive-modal-shell{height:auto;max-height:min(88vh,920px);overflow-y:auto;overscroll-behavior:contain}.archive-modal-shell .collection-layout{flex:0 0 auto;display:block;grid-template-rows:none;min-height:0}.archive-modal-shell .collection-folder-list{margin-bottom:14px}.archive-modal-shell .collection-folder-list,.archive-modal-shell .collection-panel,.archive-modal-shell .collection-item-list{min-height:0;max-height:none;overflow:visible}}.archive-modal-head h2{position:relative;margin:0;padding-left:13px;color:var(--text);font-size:1.16rem;font-weight:800}.archive-modal-head h2:before{content:"";position:absolute;top:.16em;bottom:.16em;left:0;width:4px;border-radius:2px;background:linear-gradient(var(--accent),var(--accent-strong))}.archive-modal-head>span{color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.gallery-fade-in{animation:galleryFadeIn .24s ease-out both}.gallery-fade-out{animation:galleryFadeOut .24s ease-out both}.gallery-slide-up{animation:gallerySlideUp .24s ease-out both}.gallery-scrollbar::-webkit-scrollbar{width:8px}.gallery-scrollbar::-webkit-scrollbar-track{background:transparent}.gallery-scrollbar::-webkit-scrollbar-thumb{background:#57606a3d;border-radius:999px}.retro-window{overflow:hidden;border:1px solid var(--border);border-radius:6px;background:#fff}.retro-titlebar{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:.9rem 1rem;border-bottom:1px solid var(--border);background:var(--canvas)}.retro-window-controls{display:flex;gap:.35rem}.retro-window-controls span{width:.72rem;height:.72rem;border:1px solid var(--border);border-radius:50%;background:#fff}.gallery-scrollbar .retro-window{box-shadow:var(--shadow)}@keyframes galleryFadeIn{0%{opacity:0}to{opacity:1}}@keyframes galleryFadeOut{0%{opacity:1}to{opacity:0}}@keyframes gallerySlideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:980px){.desktop-notes-open-button{display:none}.profile-layout{grid-template-columns:1fr;gap:24px}.profile-sidebar{display:grid;grid-template-columns:120px minmax(0,max-content);gap:0 18px;align-items:center;justify-content:center}.avatar-shell{width:120px;grid-row:1;align-self:center}.profile-title{margin-top:0;align-self:center;max-width:min(58vw,360px)}.profile-action{grid-column:1 / -1;width:fit-content;min-width:0;margin-top:16px}.profile-meta,.public-stats-panel,.profile-section{grid-column:1 / -1}.profile-section{padding-top:14px;text-align:center}.profile-section h2{margin-bottom:.65rem}.profile-section .compact-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--border-muted);border-bottom:1px solid var(--border-muted)}.profile-section .compact-list li{justify-items:center;align-content:center;min-height:50px;padding:.45rem .55rem;text-align:center}.profile-section .compact-list li+li{border-left:1px solid var(--border-muted)}.profile-section .compact-list span{font-size:.72rem;font-weight:700;line-height:1.15}.profile-section .compact-list strong{font-size:.82rem;line-height:1.2}.collection-layout{grid-template-columns:1fr;width:auto;margin-left:0}#activity .collection-layout{grid-template-columns:1fr;gap:14px;width:auto;margin-left:0}.collection-folder-list,#activity .collection-folder-list{grid-template-columns:1fr}.contribution-panel{margin-right:0}.calendar-shell{--calendar-gap: 1px;--calendar-label-width: 0px;--calendar-body-gap: 0px;display:grid;grid-template-columns:1fr;gap:10px;padding:12px 10px 8px}.calendar-board,.calendar-wrap,.local-calendar-grid,.calendar-body-row,.calendar-weeks{inline-size:100%;width:100%;max-width:100%}.calendar-board{grid-row:2;min-width:0}.calendar-wrap,.calendar-body-row{display:block}.local-calendar-grid{width:100%}.calendar-month-row,.calendar-weeks{display:grid;grid-template-columns:repeat(var(--week-count),minmax(0,1fr))}.calendar-month-row{padding-left:0;min-height:13px}.calendar-weekday-labels{display:none}.calendar-week{display:grid;grid-template-rows:repeat(7,auto)}.calendar-day{width:100%;height:auto;aspect-ratio:1 / 1;border-radius:1px}.calendar-year-rail{position:static;grid-row:1;grid-template-columns:repeat(auto-fit,minmax(68px,1fr));width:auto;padding:0}.calendar-year-button{min-height:34px;padding:.32rem .35rem}}@media(min-width:981px)and (max-width:1220px){.calendar-shell{--calendar-gap: 2px}}@media(max-width:760px){.github-topbar{align-items:center;flex-direction:column;padding:12px 16px}.topbar-brand{display:none}.topbar-nav{width:100%;justify-content:center;overflow-x:auto;padding-bottom:2px}.topbar-gallery-link{display:none}.profile-layout{padding:24px 16px 36px}.readme-content{padding:18px}.readme-columns,.readme-experience-list,.repo-grid{grid-template-columns:1fr;column-count:1}.note-lead{padding:15px 16px;gap:.45rem}.note-lead-title{font-size:1.06rem;line-height:1.42}.note-lead-desc{font-size:.86rem;-webkit-line-clamp:3}.note-row{grid-template-columns:4.6rem minmax(0,1fr) 14px;gap:.6rem;padding:11px 13px}.note-row-date{font-size:.7rem}.note-row-title{font-size:.9rem}.note-arrow{opacity:.6;transform:none}.video-link-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.video-link-card{grid-template-columns:minmax(0,1fr) 64px;gap:8px;min-height:92px;padding:10px}.video-link-copy{gap:.35rem}.video-link-copy span{font-size:.64rem}.video-link-copy strong{font-size:.78rem;line-height:1.34;-webkit-line-clamp:4}.video-link-thumb-wrap{width:64px;border-radius:6px}.video-link-arrow{display:none}.project-row{flex-direction:column}.collection-item{display:grid;grid-template-columns:1fr;gap:.65rem}.collection-item-main{width:100%;min-width:0}.project-links{width:100%;justify-content:flex-start}.section-heading{align-items:flex-start;flex-direction:column;gap:.25rem}.section-stack{scroll-margin-top:126px}.calendar-month-row span{font-size:.58rem;line-height:.9}}@media(max-width:520px){.topbar-brand{max-width:54vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-sidebar{grid-template-columns:88px minmax(0,max-content);gap:0 14px}.avatar-shell{width:88px}.profile-title h1{font-size:1.35rem}.profile-title p{font-size:1rem}.profile-bio{grid-column:1 / -1}.profile-sidebar{overflow:hidden}.profile-action{grid-column:1 / -1;width:fit-content}.readme-content h2{font-size:1.55rem}.gh-panel-header{flex-direction:column;align-items:flex-start;gap:.2rem}.calendar-entry-row,.calendar-entry-main,.collection-folder-list{grid-template-columns:1fr}.collection-item{display:grid;grid-template-columns:1fr;gap:.65rem}.collection-item .project-links{width:100%}.collection-compact-list{grid-template-columns:1fr}.collection-compact-item:nth-child(2n){border-left:0}.collection-compact-item:nth-child(n+2){border-top:1px solid var(--border-muted)}.video-link-card{grid-template-columns:minmax(0,1fr) 58px;gap:7px;min-height:91px;padding:9px}.video-link-copy span{font-size:.62rem}.video-link-copy strong{font-size:.76rem}.video-link-thumb-wrap{width:58px}.calendar-entry-side{justify-content:space-between;width:100%}.calendar-entry-action{width:fit-content}.retro-statusbar{padding-right:16px;padding-left:16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
