:root{color-scheme:light;--bg:#f7f2e8;--bg-2:#fffaf0;--panel:rgba(255, 253, 246, 0.86);--panel-solid:#fffdf6;--panel-2:#f0e7d8;--text:#171713;--muted:#615c52;--faint:#918879;--line:rgba(38, 36, 30, 0.13);--line-strong:rgba(38, 36, 30, 0.2);--accent:#ff6b35;--accent-2:#1f7a5a;--accent-3:#2f5fda;--sand:#f1ddbd;--card:rgba(255, 255, 255, 0.76);--shadow:0 24px 70px rgba(38, 36, 30, 0.11);--shadow-soft:0 16px 34px rgba(38, 36, 30, 0.08);--radius:28px;--max:1180px;--font-main:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display:ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}:root[data-theme=dark]{color-scheme:dark;--bg:#0e1110;--bg-2:#151816;--panel:rgba(24, 27, 24, 0.86);--panel-solid:#171a17;--panel-2:#20241f;--text:#f4efe5;--muted:#b9b1a4;--faint:#857b6c;--line:rgba(244, 239, 229, 0.13);--line-strong:rgba(244, 239, 229, 0.22);--accent:#ff7848;--accent-2:#7fd1a5;--accent-3:#8da7ff;--sand:#2d271f;--card:rgba(24, 27, 24, 0.72);--shadow:0 28px 80px rgba(0, 0, 0, 0.34);--shadow-soft:0 18px 40px rgba(0, 0, 0, 0.22)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;color:var(--text);font-family:var(--font-main);line-height:1.58;background:radial-gradient(circle at 8% 8%,color-mix(in srgb,var(--accent) 18%,transparent),transparent 28rem),radial-gradient(circle at 88% 0%,color-mix(in srgb,var(--accent-2) 18%,transparent),transparent 32rem),linear-gradient(135deg,var(--bg-2) 0%,var(--bg) 48%,color-mix(in srgb,var(--sand) 56%,var(--bg)) 100%)}body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(color-mix(in srgb,var(--text) 4%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--text) 4%,transparent) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,black,transparent 82%)}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}img{max-width:100%;display:block}button,input{font:inherit}::selection{background:var(--accent);color:#fffdf6}.wrap{width:min(var(--max),calc(100% - 32px));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.skip-link{position:absolute;left:1rem;top:-4rem;background:var(--accent);color:#fff;padding:.75rem 1rem;z-index:50;border-radius:999px}.skip-link:focus{top:1rem}.site-header{position:sticky;top:0;z-index:20;backdrop-filter:blur(20px);background:color-mix(in srgb,var(--bg-2) 82%,transparent);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:74px}.brand{display:flex;align-items:center;gap:.72rem;min-width:0}.brand-mark{width:44px;height:44px;border-radius:16px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent-2));font-weight:950;font-size:.9rem;box-shadow:var(--shadow-soft)}.brand-text{display:grid;line-height:1.1}.brand-text strong{font-size:.98rem;letter-spacing:-.02em}.brand-text small{color:var(--muted);font-size:.78rem}.nav-wrap{display:flex;align-items:center;gap:.5rem}.primary-nav{display:flex;align-items:center;gap:.2rem}.primary-nav a{color:var(--muted);font-size:.92rem;padding:.58rem .76rem;border-radius:999px}.primary-nav a:hover,.primary-nav a[aria-current=page]{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--text)}.theme-toggle,.nav-toggle{width:44px;height:44px;border:1px solid var(--line-strong);border-radius:50%;background:var(--panel);color:var(--text);cursor:pointer;box-shadow:var(--shadow-soft)}.theme-toggle{display:grid;place-items:center;font-size:1rem}.nav-toggle{display:none}.nav-toggle span:not(.sr-only){display:block;width:18px;height:2px;margin:4px auto;background:currentColor}.hero{display:grid;grid-template-columns:minmax(0,1fr)340px;gap:1.2rem;padding:58px 0 34px;align-items:stretch}.hero-panel,.identity-card,.page-hero,.feed-card,.project-mini,.single-cover,.single-head,.prose,.single-side{border:1px solid var(--line);background:linear-gradient(135deg,var(--panel),color-mix(in srgb,var(--panel-solid) 78%,transparent));box-shadow:var(--shadow)}.hero-panel{position:relative;padding:clamp(1.4rem,5vw,3.2rem);border-radius:34px;overflow:hidden;min-height:430px;display:flex;flex-direction:column;justify-content:space-between}.hero-panel::before{content:"";position:absolute;inset:1rem;border-radius:26px;border:1px dashed color-mix(in srgb,var(--text) 18%,transparent);pointer-events:none}.hero-panel::after{content:"";position:absolute;width:290px;height:290px;right:-70px;top:-80px;border-radius:45% 55% 60% 40%;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 28%,transparent),color-mix(in srgb,var(--accent-2) 24%,transparent));filter:blur(2px);opacity:.9}.hero-panel>*{position:relative;z-index:1}.hero-kicker{display:flex;gap:.55rem;flex-wrap:wrap;align-items:center}.eyebrow,.badge{margin:0;color:var(--accent);text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:950}.badge{display:inline-flex;align-items:center;min-height:28px;padding:.28rem .58rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--text)}h1,h2,h3{line-height:.98;letter-spacing:-.065em;margin:0}h1{font-family:var(--font-display);font-size:clamp(3.1rem,8vw,7.2rem);max-width:980px;font-weight:950}h2{font-family:var(--font-display);font-size:clamp(2.2rem,5vw,4.4rem);font-weight:950}h3{font-size:1.35rem;letter-spacing:-.04em}.hero-copy{color:var(--muted);font-size:1.04rem;max-width:700px;margin:1rem 0 1.35rem}.hero-actions{display:flex;gap:.75rem;flex-wrap:wrap}.button,.side-link,.copy-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border-radius:999px;padding:.72rem 1rem;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);background:var(--accent);color:#fff;font-weight:850;cursor:pointer;box-shadow:0 10px 24px color-mix(in srgb,var(--accent) 18%,transparent)}.button.ghost,.side-link,.copy-link{background:var(--panel);color:var(--text);border-color:var(--line-strong);box-shadow:none}.identity-card{border-radius:34px;padding:1rem;align-self:start}.identity-card img{border-radius:24px;aspect-ratio:1.12;object-fit:cover;border:1px solid var(--line);background:var(--sand)}.identity-card h2{font-size:2.85rem;margin-top:1rem}dl{margin:1.15rem 0 0;display:grid;gap:.78rem}dt{color:var(--faint);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;font-weight:850}dd{margin:.1rem 0 0;color:var(--text)}.control-strip{display:grid;grid-template-columns:1fr minmax(320px,620px);align-items:end;gap:1rem;padding:34px 0 18px}.control-strip.compact{padding-top:10px}.feed-tools{display:grid;gap:.75rem}.search-input{width:100%;border-radius:999px;border:1px solid var(--line-strong);background:var(--panel);color:var(--text);padding:.92rem 1rem;outline:none;box-shadow:var(--shadow-soft)}.search-input:focus{border-color:color-mix(in srgb,var(--accent) 70%,transparent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 11%,transparent)}.filter-pills{display:flex;gap:.48rem;flex-wrap:wrap;justify-content:flex-end}.pill{border:1px solid var(--line-strong);color:var(--muted);background:var(--panel);padding:.5rem .82rem;border-radius:999px;cursor:pointer}.pill.is-active,.pill:hover{color:#fff;border-color:var(--accent);background:var(--accent)}.feed-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;padding-bottom:30px}.feed-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.feed-card{border-radius:var(--radius);overflow:hidden;min-width:0;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.feed-card:hover{transform:translateY(-4px);box-shadow:0 28px 70px color-mix(in srgb,var(--text) 13%,transparent);border-color:color-mix(in srgb,var(--accent) 38%,transparent)}.card-media{display:block;overflow:hidden;background:var(--sand)}.card-media img,.image-fallback{width:100%;aspect-ratio:1.38;object-fit:cover;transition:transform .25s ease}.feed-card:hover .card-media img{transform:scale(1.035)}.image-fallback{display:grid;place-items:center;font-size:4rem;font-weight:950;color:color-mix(in srgb,var(--text) 35%,transparent)}.card-body{padding:1rem}.card-meta,.single-meta{display:flex;flex-wrap:wrap;gap:.45rem .65rem;align-items:center;color:var(--faint);text-transform:uppercase;letter-spacing:.11em;font-size:.68rem;font-weight:850;margin-bottom:.7rem}.card-body h2{font-family:var(--font-main);font-size:1.35rem;line-height:1.05;letter-spacing:-.045em;text-transform:none}.card-body p{color:var(--muted);margin:.75rem 0 .9rem;font-size:.95rem}.tags{display:flex;gap:.42rem;flex-wrap:wrap}.tags a{color:var(--accent-2);font-size:.8rem;border:1px solid color-mix(in srgb,var(--accent-2) 24%,transparent);border-radius:999px;padding:.2rem .48rem;background:color-mix(in srgb,var(--accent-2) 7%,transparent)}.tags.large a{font-size:.9rem;padding:.32rem .62rem}.section-block{padding:32px 0 64px}.related-section{display:grid;gap:1rem}.related-head{margin-bottom:0}.related-grid{padding-bottom:0}.related-card-wrap{min-width:0}.related-card-wrap[hidden]{display:none}.related-card-wrap .feed-card{height:100%;background:var(--card);border:1px solid var(--line)}.related-actions{display:flex;justify-content:center}.load-more-button{border:1px solid var(--line-strong);border-radius:999px;background:var(--panel-solid);color:var(--text);padding:.72rem 1rem;cursor:pointer;font-weight:900;box-shadow:var(--shadow-soft)}.load-more-button:hover:not(:disabled){border-color:var(--accent);background:var(--accent);color:#fff}.load-more-button:disabled{cursor:default;color:var(--faint);box-shadow:none}.tag-strip{width:min(var(--max),calc(100% - 32px));border:1px solid var(--line);border-radius:26px;background:linear-gradient(135deg,var(--panel),color-mix(in srgb,var(--panel-solid) 86%,transparent));box-shadow:var(--shadow-soft);padding:1rem;margin:.35rem auto 2.2rem}.related-section .tag-strip{width:100%;max-width:none;margin:.15rem 0 0}.tag-strip-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:.8rem}.tag-strip-head span{color:var(--accent);text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;font-weight:950}.tag-strip-head strong{font-size:1.15rem;letter-spacing:-.035em}.tag-cloud.mini{padding:0;gap:.52rem}.tag-cloud.mini a{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .7rem;font-size:.84rem}.section-head{display:grid;grid-template-columns:1fr auto;align-items:end;gap:1rem;margin-bottom:1rem}.section-head .eyebrow{grid-column:1/-1}.section-head a{color:var(--accent);font-weight:850}.project-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.project-mini{border-radius:var(--radius);padding:1.15rem}.project-mini span{display:block;color:var(--accent-2);font-size:.72rem;text-transform:uppercase;letter-spacing:.13em;font-weight:950;margin-bottom:.8rem}.project-mini p{color:var(--muted);margin-bottom:0}.page-hero{border-radius:34px;margin-top:38px;margin-bottom:22px;padding:clamp(1.25rem,4vw,2.5rem)}.page-hero p:not(.eyebrow){color:var(--muted);max-width:760px}.single{padding:42px 0 20px}.single-head{border-radius:34px;padding:clamp(1.25rem,4vw,2.7rem);margin-bottom:1rem}.single-head h1{font-size:clamp(2.6rem,7vw,6.2rem)}.single-desc{color:var(--muted);max-width:820px;font-size:1.05rem}.single-cover{border-radius:30px;overflow:hidden;margin:1rem 0}.single-cover img{width:100%;max-height:620px;object-fit:cover;cursor:zoom-in}.single-cover figcaption{padding:.75rem 1rem;color:var(--faint);font-size:.86rem}.single-layout{display:grid;grid-template-columns:minmax(0,1fr)250px;gap:1rem;align-items:start}.single-side{order:2;position:sticky;top:94px;border-radius:24px;padding:.75rem;display:grid;gap:.6rem}.copy-link,.side-link{width:100%;font-size:.88rem}.prose{order:1;border-radius:24px;padding:clamp(1.2rem,4vw,2.2rem);color:var(--text)}.prose>*:first-child{margin-top:0}.prose h2{font-family:var(--font-main);font-size:1.8rem;line-height:1.1;letter-spacing:-.04em;text-transform:none;margin:2rem 0 .75rem}.prose h3{margin-top:1.6rem}.prose p,.prose li{color:var(--muted)}.prose a{color:var(--accent);text-decoration:underline;text-underline-offset:4px}.prose code{background:color-mix(in srgb,var(--text) 8%,transparent);padding:.15rem .35rem;border-radius:.35rem}.prose pre{overflow:auto;padding:1rem;border-radius:16px;border:1px solid var(--line);background:color-mix(in srgb,var(--text) 7%,transparent)}.prose blockquote{border-left:3px solid var(--accent);margin-left:0;padding-left:1rem;color:var(--muted)}.inline-photo{margin:1.4rem 0}.inline-photo img{width:100%;border-radius:18px;border:1px solid var(--line);cursor:zoom-in}.inline-photo figcaption{color:var(--faint);font-size:.85rem;margin-top:.45rem}.pagination{display:flex;justify-content:center;align-items:center;gap:.7rem;padding:10px 0 52px;color:var(--muted);flex-wrap:wrap}.pagination a,.pagination span{border:1px solid var(--line-strong);background:var(--panel);border-radius:999px;padding:.62rem .9rem;box-shadow:var(--shadow-soft)}.pagination a{color:var(--accent);font-weight:850}.pagination .current{color:var(--text);font-weight:850}.tag-cloud{display:flex;flex-wrap:wrap;gap:.7rem;padding:0 0 50px}.tag-cloud a{border:1px solid var(--line);border-radius:999px;padding:.55rem .8rem;color:var(--text);background:var(--panel)}.tag-cloud span{color:var(--accent)}.site-footer{border-top:1px solid var(--line);margin-top:50px;padding:32px 0;color:var(--muted)}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1.25fr 1fr;gap:1rem}.footer-grid strong,.footer-grid span{color:var(--text)}.footer-grid p{margin:.35rem 0 0}.footer-grid a{color:var(--accent)}.not-found{min-height:52vh;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.lightbox{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.86);display:grid;place-items:center;padding:1rem}.lightbox img{max-height:90vh;border-radius:18px;border:1px solid var(--line)}.lightbox button{position:fixed;top:1rem;right:1rem;border:1px solid var(--line);border-radius:999px;background:var(--panel-solid);color:var(--text);width:44px;height:44px;cursor:pointer}@media(max-width:980px){.hero{grid-template-columns:1fr}.identity-card{max-width:520px}.feed-grid,.project-row,.feed-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.control-strip{grid-template-columns:1fr}.filter-pills{justify-content:flex-start}.single-layout{grid-template-columns:1fr}.single-side{position:static;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}}@media(max-width:720px){.wrap{width:min(100% - 24px,var(--max))}.tag-strip{width:min(100% - 24px,var(--max))}.related-section .tag-strip{width:100%}.header-inner{min-height:64px}.nav-toggle{display:block}.primary-nav{position:fixed;left:12px;right:12px;top:72px;display:none;flex-direction:column;align-items:stretch;padding:.75rem;border:1px solid var(--line);border-radius:22px;background:var(--panel-solid);box-shadow:var(--shadow)}.primary-nav.is-open{display:flex}.primary-nav a{padding:.8rem 1rem}.hero{padding-top:28px}.hero-panel{min-height:380px}h1{font-size:clamp(2.7rem,14vw,4.7rem)}h2{font-size:clamp(2rem,10vw,3.3rem)}.feed-grid,.project-row,.feed-grid.three{grid-template-columns:1fr}.section-head{align-items:flex-start;grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}}.workout-hero{margin-bottom:1rem}.workout-dashboard{padding-bottom:3rem}.dashboard-toolbar{display:grid;grid-template-columns:minmax(0,1fr)auto;gap:1rem;align-items:end;margin:0 0 1rem}.dashboard-toolbar h2,.compact-head h2{margin:0}.period-pills,.sport-filter-pills,.heatmap-controls,.calendar-controls{display:flex;gap:.45rem;flex-wrap:wrap;justify-content:flex-end}.tiny-pill{border:1px solid var(--line-strong);background:color-mix(in srgb,var(--panel-solid) 78%,transparent);color:var(--muted);border-radius:999px;padding:.42rem .65rem;cursor:pointer;font-weight:800;font-size:.82rem}.tiny-pill.is-active,.tiny-pill:hover{color:#fff;background:var(--accent);border-color:var(--accent)}.dashboard-status,.dashboard-empty,.no-js-card{border:1px dashed var(--line-strong);border-radius:22px;background:color-mix(in srgb,var(--panel) 84%,transparent);color:var(--muted);padding:1rem}.dashboard-empty{min-height:150px;display:grid;place-items:center;text-align:center}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;margin-bottom:1.4rem}.dash-card{border:1px solid var(--line);background:radial-gradient(circle at top right,color-mix(in srgb,var(--accent) 10%,transparent),transparent 34%),linear-gradient(135deg,var(--panel),color-mix(in srgb,var(--panel-solid) 82%,transparent));border-radius:24px;box-shadow:var(--shadow-soft);min-width:0}.metric-card-v2{padding:1rem;display:grid;gap:.38rem}.metric-card-v2 span,.consistency-card span,.record-card span{color:var(--faint);text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;font-weight:950}.metric-card-v2 strong,.consistency-card strong,.record-card strong{color:var(--text);font-size:clamp(1.4rem,2.4vw,2rem);letter-spacing:-.055em;line-height:1}.metric-card-v2 small,.consistency-card small,.record-card small,.goal-card small{color:var(--muted);font-size:.83rem;line-height:1.35}.dashboard-section{margin:1.4rem 0}.calendar-section{margin-top:1.6rem}.activity-calendar{min-width:0}.calendar-shell{display:grid;grid-template-columns:minmax(0,1.35fr)minmax(280px,.65fr);gap:1rem}.calendar-main,.calendar-detail{border:1px solid var(--line);background:radial-gradient(circle at top right,color-mix(in srgb,var(--accent-2) 10%,transparent),transparent 38%),linear-gradient(135deg,var(--panel),color-mix(in srgb,var(--panel-solid) 84%,transparent));border-radius:26px;box-shadow:var(--shadow-soft);padding:1rem;min-width:0}.calendar-title-row{display:flex;justify-content:space-between;gap:1rem;align-items:baseline;margin-bottom:.85rem}.calendar-title-row strong{font-size:clamp(1.2rem,2.2vw,1.65rem);letter-spacing:-.045em}.calendar-title-row span{color:var(--muted);font-weight:800;font-size:.9rem}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.45rem}.calendar-weekdays{margin-bottom:.45rem;color:var(--faint);font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;font-weight:900;text-align:center}.calendar-day{min-height:74px;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--text) 4%,transparent);color:var(--text);padding:.55rem;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;cursor:pointer;box-shadow:none;transition:transform .15s ease,border-color .15s ease,background .15s ease}.calendar-day:not(.is-empty):hover,.calendar-day.is-selected{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 55%,transparent)}.calendar-day.is-empty{visibility:hidden;pointer-events:none}.calendar-day span{font-weight:900;font-size:.95rem}.calendar-day small{min-width:25px;min-height:25px;display:grid;place-items:center;border-radius:999px;background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent);font-size:.76rem;font-weight:950}.calendar-day.level-1{background:color-mix(in srgb,var(--accent) 9%,transparent)}.calendar-day.level-2{background:color-mix(in srgb,var(--accent) 16%,transparent)}.calendar-day.level-3{background:color-mix(in srgb,var(--accent) 24%,transparent)}.calendar-day.level-4{background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 34%,transparent),color-mix(in srgb,var(--accent-2) 20%,transparent))}.calendar-day.is-today{outline:2px solid color-mix(in srgb,var(--accent-2) 50%,transparent);outline-offset:2px}.calendar-detail{display:grid;gap:.9rem;align-content:start}.calendar-detail-head,.calendar-empty-day{display:grid;gap:.35rem}.calendar-detail-head span,.calendar-empty-day span{color:var(--faint);text-transform:uppercase;letter-spacing:.11em;font-size:.72rem;font-weight:950}.calendar-detail-head strong,.calendar-empty-day strong{font-size:1.45rem;letter-spacing:-.045em}.calendar-empty-day p{color:var(--muted);margin:0}.calendar-detail-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.calendar-detail-stats div{border:1px solid var(--line);border-radius:16px;padding:.65rem;background:color-mix(in srgb,var(--text) 4%,transparent)}.calendar-detail-stats span{display:block;color:var(--faint);font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;font-weight:900;margin-bottom:.2rem}.calendar-detail-stats strong{font-size:1rem}.calendar-activity-list{display:grid;gap:.55rem}.calendar-activity-item{display:grid;gap:.16rem;padding:.7rem;border-radius:16px;border:1px solid var(--line);background:color-mix(in srgb,var(--accent) 6%,transparent)}.calendar-activity-item span{color:var(--accent);font-size:.78rem;font-weight:900}.calendar-activity-item strong{line-height:1.2}.calendar-activity-item small{color:var(--muted)}.compact-head{display:grid;grid-template-columns:minmax(0,1fr)auto;gap:.8rem;align-items:end;margin-bottom:.85rem}.compact-head .eyebrow{grid-column:1/-1}.goal-grid,.consistency-grid,.record-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.85rem}.goal-card,.consistency-card,.record-card{padding:1rem}.goal-top{display:flex;justify-content:space-between;gap:.8rem;align-items:baseline;margin-bottom:.7rem}.goal-top span{color:var(--muted);font-weight:800}.goal-track{height:10px;border-radius:999px;background:color-mix(in srgb,var(--text) 9%,transparent);overflow:hidden;margin-bottom:.55rem}.goal-track div{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--accent-2))}.heatmap-wrap{overflow-x:auto;padding-bottom:.35rem}.heatmap-meta{color:var(--muted);margin-bottom:.55rem;font-size:.92rem}.heatmap-grid{display:flex;gap:4px;min-width:max-content;padding:.5rem;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--text) 4%,transparent)}.heatmap-week{display:grid;grid-template-rows:repeat(7,12px);gap:4px}.heatmap-day{width:12px;height:12px;border-radius:3px;background:color-mix(in srgb,var(--text) 9%,transparent);border:1px solid color-mix(in srgb,var(--text) 5%,transparent)}.heatmap-day.is-empty{visibility:hidden}.heatmap-day.level-1,.heatmap-legend .level-1{background:color-mix(in srgb,var(--accent) 30%,transparent)}.heatmap-day.level-2,.heatmap-legend .level-2{background:color-mix(in srgb,var(--accent) 52%,transparent)}.heatmap-day.level-3,.heatmap-legend .level-3{background:color-mix(in srgb,var(--accent) 74%,transparent)}.heatmap-day.level-4,.heatmap-legend .level-4{background:var(--accent)}.heatmap-legend{display:flex;gap:.35rem;align-items:center;justify-content:flex-end;color:var(--faint);font-size:.78rem;margin-top:.55rem}.heatmap-legend i{width:11px;height:11px;border-radius:3px;display:inline-block}.chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.4rem 0}.chart-card{padding:1rem}.card-heading{margin-bottom:.8rem}.card-heading h3{margin:0;font-size:1.2rem;line-height:1.2}.chart-body{min-height:240px}.vbar-chart-shell{display:grid;grid-template-columns:54px minmax(0,1fr);gap:.7rem;min-height:220px}.vbar-grid-labels{display:grid;align-content:space-between;justify-items:end;color:var(--faint);font-size:.72rem;padding:.25rem 0 1.5rem}.vbar-chart{position:relative;min-height:220px;display:grid;grid-template-columns:repeat(auto-fit,minmax(52px,1fr));gap:.75rem;align-items:end;padding-top:.25rem}.vbar-grid-line{position:absolute;left:0;right:0;height:1px;background:color-mix(in srgb,var(--text) 9%,transparent);pointer-events:none}.vbar-item{position:relative;z-index:1;min-width:0;display:grid;grid-template-rows:auto 1fr auto;gap:.45rem;align-items:end}.vbar-value,.vbar-label{text-align:center;color:var(--muted);font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vbar-value{color:var(--text);font-weight:850}.vbar-track{height:160px;display:flex;align-items:end;justify-content:center;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--text) 3%,transparent))}.vbar-fill{width:100%;max-width:36px;min-height:8px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 75%,white 4%),var(--accent),var(--accent-2));border-radius:10px 10px 4px 4px;box-shadow:inset 0 -1px color-mix(in srgb,black 20%,transparent)}.hbar-chart{display:grid;gap:.85rem}.hbar-row{display:grid;grid-template-columns:minmax(100px,132px)minmax(0,1fr)auto;gap:.7rem;align-items:center}.hbar-label,.hbar-row strong{font-size:.88rem;color:var(--muted)}.hbar-label{line-height:1.2;overflow-wrap:anywhere}.hbar-row strong{color:var(--text);text-align:right;white-space:nowrap}.hbar-main{display:grid;grid-template-columns:minmax(0,1fr)auto;gap:.55rem;align-items:center}.hbar-main small{color:var(--faint);font-size:.74rem;white-space:nowrap}.hbar-track{height:10px;border-radius:999px;background:color-mix(in srgb,var(--text) 8%,transparent);overflow:hidden}.hbar-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent-2),var(--accent))}.sport-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.85rem}.sport-stat-card{padding:1rem}.sport-card-head{display:flex;gap:.7rem;align-items:center;margin-bottom:.85rem}.sport-card-head span{width:46px;height:46px;display:grid;place-items:center;border-radius:16px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);font-size:.72rem;font-weight:950}.sport-card-head h3{margin:0}.sport-stat-card dl{display:grid;gap:.45rem;margin:0}.sport-stat-card dl div{display:flex;justify-content:space-between;gap:.8rem;padding-bottom:.45rem;border-bottom:1px solid var(--line)}.sport-stat-card dt{font-size:.76rem}.sport-stat-card dd{margin:0;font-weight:900;color:var(--text);text-align:right}.record-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.record-card{display:grid;gap:.45rem}.activity-table-wrap{overflow-x:auto}.activity-table{width:100%;border-collapse:collapse;border:1px solid var(--line);border-radius:20px;overflow:hidden}.activity-table th,.activity-table td{padding:.85rem .7rem;border-bottom:1px solid var(--line);text-align:left;color:var(--muted);font-size:.92rem}.activity-table th{color:var(--text);background:color-mix(in srgb,var(--text) 6%,transparent);font-size:.74rem;text-transform:uppercase;letter-spacing:.1em}.activity-table a{color:var(--text);font-weight:850}.activity-name-cell{display:grid;gap:.28rem;align-items:start}.activity-name-cell .sport-chip{width:fit-content}.sport-chip{display:inline-flex;align-items:center;min-height:26px;border-radius:999px;padding:.2rem .55rem;background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);font-weight:850;white-space:nowrap}.workout-stats{display:flex;gap:.45rem;flex-wrap:wrap;margin:-.2rem 0 .75rem}.workout-stats span{border:1px solid var(--line-strong);border-radius:999px;padding:.24rem .52rem;background:color-mix(in srgb,var(--accent-2) 8%,transparent);color:var(--text);font-size:.78rem;font-weight:850}.workout-stats.compact{margin-top:-.25rem}@media(max-width:980px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.chart-grid{grid-template-columns:1fr}.dashboard-toolbar{grid-template-columns:1fr}.period-pills{justify-content:flex-start}}@media(max-width:720px){.metric-grid{grid-template-columns:1fr}.compact-head{grid-template-columns:1fr}.heatmap-controls,.calendar-controls,.sport-filter-pills{justify-content:flex-start}.vbar-chart-shell{grid-template-columns:40px minmax(0,1fr)}.vbar-chart{overflow-x:auto;grid-auto-flow:column;grid-auto-columns:58px;grid-template-columns:none}.hbar-row{grid-template-columns:1fr;gap:.35rem}.hbar-main{grid-template-columns:minmax(0,1fr)auto}.hbar-row strong{text-align:left}.calendar-shell{grid-template-columns:1fr}.calendar-day{min-height:58px;border-radius:14px;padding:.45rem}.calendar-weekdays,.calendar-grid{gap:.32rem}.calendar-detail-stats{grid-template-columns:1fr}.activity-table,.activity-table thead,.activity-table tbody,.activity-table tr,.activity-table th,.activity-table td{display:block}.activity-table thead{display:none}.activity-table tr{padding:.85rem;border-bottom:1px solid var(--line)}.activity-table td{border:0;padding:.35rem 0;display:grid;grid-template-columns:110px minmax(0,1fr);gap:.75rem}.activity-table td::before{content:attr(data-label);color:var(--faint);font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;font-weight:900}}.journal-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1.2rem}.journal-tile{padding:1rem;display:grid;gap:.45rem}.journal-tile span{color:var(--accent);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:950}.journal-tile strong{font-size:2rem;line-height:1;letter-spacing:-.05em}.journal-tile p{margin:0;color:var(--muted)}.gallery-toolbar{display:grid;grid-template-columns:1fr minmax(240px,460px);gap:1rem;align-items:end;margin-bottom:1rem}.gallery-toolbar h2{margin:0}.gallery-wall{columns:3 260px;column-gap:1rem;padding-bottom:2rem}.gallery-tile{break-inside:avoid;margin:0 0 1rem;border-radius:26px;overflow:hidden;border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow-soft);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.gallery-tile:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent) 34%,transparent);box-shadow:0 24px 60px color-mix(in srgb,var(--text) 12%,transparent)}.gallery-tile a{display:block}.gallery-tile img{width:100%;min-height:220px;max-height:560px;object-fit:cover}.gallery-fallback{min-height:260px;display:grid;place-items:center;color:var(--faint);background:color-mix(in srgb,var(--text) 6%,transparent);font-weight:900}.gallery-caption{padding:1rem;display:grid;gap:.35rem}.gallery-caption span{color:var(--faint);text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;font-weight:900}.gallery-caption h2{font-family:var(--font-main);font-size:1.25rem;line-height:1.05;letter-spacing:-.045em}.gallery-caption p{color:var(--muted);margin:0;font-size:.92rem}.single-layout,.single-head,.prose,.single-side{min-width:0}.prose{overflow-wrap:break-word;word-break:normal;max-width:100%}.prose p,.prose li,.prose a,.prose dd,.prose td,.prose th{overflow-wrap:anywhere}.prose img,.prose video,.prose iframe,.prose table{max-width:100%}.prose table{display:block;overflow-x:auto;border-collapse:collapse}.prose pre{max-width:100%;white-space:pre}@media(max-width:980px){.journal-overview{grid-template-columns:1fr}.gallery-toolbar{grid-template-columns:1fr}}@media(max-width:720px){.single{padding-top:24px}.single-head{padding:1rem;border-radius:24px}.single-head h1{font-size:clamp(2.05rem,12vw,3.4rem);line-height:1;overflow-wrap:anywhere}.single-desc{font-size:.98rem}.single-layout{gap:.75rem}.prose{padding:1rem;border-radius:20px}.prose h2{font-size:1.45rem}.gallery-wall{columns:1}.gallery-tile img{max-height:none}}.programming-hero{background:radial-gradient(circle at 95% 10%,color-mix(in srgb,var(--accent-3) 16%,transparent),transparent 24rem),linear-gradient(135deg,var(--panel),color-mix(in srgb,var(--panel-solid) 86%,transparent))}.programming-hub{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:0 auto 1.25rem}.programming-type-card{min-width:0;text-align:left;display:grid;gap:.42rem;border:1px solid var(--line);border-radius:24px;padding:1rem;background:radial-gradient(circle at top right,color-mix(in srgb,var(--accent) 10%,transparent),transparent 40%),linear-gradient(135deg,var(--panel),color-mix(in srgb,var(--panel-solid) 82%,transparent));color:var(--text);box-shadow:var(--shadow-soft);cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}.programming-type-card:hover,.programming-type-card.is-active{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent) 50%,transparent);box-shadow:0 24px 60px color-mix(in srgb,var(--text) 10%,transparent)}.programming-type-card.is-active{background:radial-gradient(circle at top right,color-mix(in srgb,var(--accent) 20%,transparent),transparent 45%),linear-gradient(135deg,color-mix(in srgb,var(--accent) 10%,var(--panel)),var(--panel-solid))}.programming-type-card span{width:fit-content;color:var(--accent);text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;font-weight:950;border:1px solid color-mix(in srgb,var(--accent) 24%,transparent);border-radius:999px;padding:.22rem .5rem;background:color-mix(in srgb,var(--accent) 8%,transparent)}.programming-type-card strong{font-size:1.22rem;line-height:1.05;letter-spacing:-.04em}.programming-type-card em{color:var(--muted);font-style:normal;font-size:.92rem;line-height:1.35}.project-controls{padding-top:14px}.feed-card.is-filtered-out{display:none}.gallery-hero{background:radial-gradient(circle at 8% 18%,color-mix(in srgb,var(--accent-2) 18%,transparent),transparent 24rem),linear-gradient(135deg,var(--panel),color-mix(in srgb,var(--panel-solid) 86%,transparent))}.gallery-toolbar p:not(.eyebrow){margin:.45rem 0 0;max-width:680px;color:var(--muted)}.gallery-toolbar code{border-radius:.45rem;padding:.12rem .35rem;background:color-mix(in srgb,var(--text) 8%,transparent);color:var(--text)}.gallery-wall{columns:initial;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:118px;grid-auto-flow:dense;gap:1rem;padding-bottom:2rem}.gallery-tile{margin:0;min-width:0;min-height:0;border-radius:28px;overflow:hidden;position:relative;background:var(--panel-solid);border:1px solid var(--line);box-shadow:var(--shadow-soft)}.gallery-tile:not(.is-wide){grid-row:span 2}.gallery-tile.is-tall{grid-row:span 4}.gallery-tile.is-portrait{grid-row:span 3}.gallery-tile.is-wide{grid-column:span 2;grid-row:span 2}.gallery-open{position:relative;width:100%;height:100%;display:block;padding:0;border:0;background:0 0;color:inherit;cursor:zoom-in;overflow:hidden;text-align:left;background:#050708}.gallery-open img{width:100%;height:100%;min-height:0;max-height:none;object-fit:cover;transform:none;transition:transform .45s ease,filter .45s ease}.gallery-open::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.74),rgba(0,0,0,.16) 42%,transparent 72%);opacity:0;transition:opacity .28s ease}.gallery-tile:hover .gallery-open img{filter:saturate(1.05)contrast(1.03)}.gallery-tile:hover .gallery-open::after,.gallery-tile:focus-within .gallery-open::after{opacity:1}.gallery-count{position:absolute;top:.85rem;right:.85rem;z-index:2;display:inline-grid;place-items:center;min-width:34px;height:30px;border-radius:999px;background:rgba(0,0,0,.62);color:#fff;font-size:.82rem;font-weight:950;border:1px solid rgba(255,255,255,.18)}.gallery-caption{position:absolute;left:0;right:0;bottom:0;z-index:1;display:grid;gap:.36rem;padding:1rem;color:#fff;transform:translateY(16px);opacity:0;transition:opacity .28s ease,transform .28s ease}.gallery-tile:hover .gallery-caption,.gallery-tile:focus-within .gallery-caption{opacity:1;transform:translateY(0)}.gallery-caption .gallery-meta{color:rgba(255,255,255,.76);text-transform:uppercase;letter-spacing:.12em;font-size:.68rem;font-weight:950}.gallery-caption strong{font-size:clamp(1rem,2.2vw,1.35rem);line-height:1.02;letter-spacing:-.045em}.gallery-caption em{color:rgba(255,255,255,.82);font-style:normal;font-size:.86rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.gallery-card-tags{position:absolute;left:.85rem;top:.85rem;right:3.6rem;z-index:4;display:flex;flex-wrap:wrap;gap:.35rem}.gallery-card-tags a{display:inline-flex;width:auto;color:rgba(255,255,255,.88);letter-spacing:0;text-transform:none;font-size:.72rem;font-weight:850;border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:.18rem .45rem;background:rgba(255,255,255,.12);backdrop-filter:blur(10px)}.gallery-card-tags a:hover,.gallery-card-tags a:focus-visible{color:#fff;border-color:rgba(255,255,255,.45);background:rgba(255,255,255,.2)}.gallery-empty{display:grid;place-items:center;padding:1rem;min-height:240px;background:color-mix(in srgb,var(--text) 6%,transparent);cursor:default}.gallery-carousel{position:fixed;inset:0;z-index:110;display:grid;place-items:center;padding:clamp(.7rem,2vw,1.5rem);background:rgba(5,7,8,.86);backdrop-filter:blur(18px)}.gallery-carousel[hidden]{display:none}.gallery-carousel-shell{width:min(1280px,100%);height:min(92vh,820px);max-height:min(92vh,820px);display:grid;grid-template-columns:minmax(0,1.45fr)minmax(300px,.65fr);border:1px solid rgba(255,255,255,.16);border-radius:30px;overflow:hidden;background:color-mix(in srgb,var(--panel-solid) 96%,transparent);color:var(--text);box-shadow:0 34px 100px rgba(0,0,0,.38)}.gallery-carousel-shell.is-portrait{width:min(980px,100%);grid-template-columns:minmax(0,.88fr)minmax(300px,.62fr)}.gallery-carousel-shell.is-squareish{width:min(1120px,100%);grid-template-columns:minmax(0,1.12fr)minmax(300px,.66fr)}.gallery-carousel-shell.is-landscape{width:min(1320px,100%);grid-template-columns:minmax(0,1.55fr)minmax(300px,.62fr)}.gallery-viewer-stage{min-height:0;height:100%;overflow:hidden;background:#050708;display:grid;place-items:center;padding:0}.gallery-carousel-media{position:relative;width:100%;height:100%;min-height:0;max-width:100%;max-height:100%;display:grid;place-items:center;background:#050708;overflow:hidden;border-radius:0;box-shadow:none}.gallery-carousel-media img{position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;opacity:0;transform:none;transition:none}.gallery-carousel-media img.is-current{opacity:1;transform:none}.gallery-carousel-info{display:grid;align-content:start;gap:.9rem;padding:clamp(1rem,3vw,1.6rem);overflow-y:auto}.gallery-carousel-kicker{color:var(--accent);text-transform:uppercase;letter-spacing:.13em;font-size:.7rem;font-weight:950}.gallery-carousel-info h2{font-family:var(--font-main);font-size:clamp(1.7rem,4vw,2.8rem);line-height:.98;letter-spacing:-.06em}.gallery-carousel-info p{margin:0;color:var(--muted)}.gallery-carousel-caption{border-top:1px solid var(--line);padding-top:.85rem;color:var(--text);font-weight:750}.gallery-carousel-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}.gallery-carousel-tabs button,.gallery-carousel-tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;border:1px solid var(--line-strong);border-radius:999px;background:color-mix(in srgb,var(--text) 5%,transparent);color:var(--muted);cursor:pointer;font-weight:900}.gallery-carousel-tabs button.is-active,.gallery-carousel-tabs a:hover{background:var(--accent);border-color:var(--accent);color:#fff}.gallery-carousel-tags{display:flex;flex-wrap:wrap;gap:.45rem}.gallery-carousel-tags a{border:1px solid var(--line-strong);border-radius:999px;padding:.28rem .55rem;color:var(--muted);background:color-mix(in srgb,var(--text) 4%,transparent);font-size:.8rem;font-weight:800}.gallery-carousel-tags a:hover{color:#fff;border-color:var(--accent);background:var(--accent)}.gallery-carousel-actions{display:flex;gap:.55rem;flex-wrap:wrap;margin-top:.25rem}.gallery-carousel-close,.gallery-carousel-nav,.gallery-carousel-link{border:1px solid var(--line-strong);border-radius:999px;background:var(--panel-solid);color:var(--text);min-height:42px;padding:.55rem .82rem;cursor:pointer;font-weight:900}.gallery-carousel-link{display:inline-flex;align-items:center;background:var(--accent);border-color:var(--accent);color:#fff}.gallery-carousel-close{position:fixed;top:1rem;right:1rem;width:46px;height:46px;padding:0;font-size:1.35rem;z-index:112}.gallery-carousel-nav{position:absolute;top:50%;z-index:2;width:46px;height:46px;padding:0;transform:translateY(-50%);background:rgba(255,255,255,.92);color:#111}.gallery-carousel-prev{left:1rem}.gallery-carousel-next{right:1rem}.gallery-carousel-counter{position:absolute;left:1rem;bottom:1rem;z-index:2;border-radius:999px;padding:.38rem .65rem;background:rgba(0,0,0,.54);color:#fff;font-size:.82rem;font-weight:900}body.gallery-modal-open{overflow:hidden}.gallery-post{padding:42px 0 22px}.gallery-post-head,.gallery-post-copy{margin-bottom:1rem}.gallery-post-head{border:1px solid var(--line);border-radius:34px;padding:clamp(1.25rem,4vw,2.7rem);background:linear-gradient(135deg,var(--panel),color-mix(in srgb,var(--panel-solid) 78%,transparent));box-shadow:var(--shadow)}.gallery-post-head h1{font-size:clamp(2.4rem,6vw,5.8rem)}.gallery-post-head p:not(.eyebrow){color:var(--muted);max-width:780px}.gallery-page-mosaic{columns:4 230px;column-gap:1rem;padding-bottom:2.5rem}.gallery-page-mosaic-item{position:relative;width:100%;display:block;break-inside:avoid;margin:0 0 1rem;padding:0;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#050708;box-shadow:var(--shadow-soft);cursor:zoom-in}.gallery-page-mosaic-item:hover,.gallery-page-mosaic-item:focus-visible{border-color:color-mix(in srgb,var(--accent) 44%,transparent);outline:none}.gallery-page-mosaic-item img{width:100%;height:auto;max-height:none;object-fit:cover;transition:transform .18s ease,filter .18s ease}.gallery-page-mosaic-item:hover img,.gallery-page-mosaic-item:focus-visible img{transform:scale(1.018);filter:saturate(1.04)contrast(1.02)}.gallery-page-mosaic-item span{position:absolute;left:.65rem;top:.65rem;min-width:28px;height:28px;display:grid;place-items:center;border-radius:999px;background:rgba(0,0,0,.58);color:#fff;font-size:.78rem;font-weight:950}.gallery-page-mosaic-item em{position:absolute;left:.65rem;right:.65rem;bottom:.65rem;border-radius:999px;padding:.32rem .55rem;background:rgba(0,0,0,.58);color:#fff;font-size:.78rem;font-style:normal;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gallery-tag-mosaic{margin-top:-.35rem}.gallery-mosaic-panel{height:100%;overflow-y:auto;padding:clamp(.75rem,2vw,1.2rem);background:radial-gradient(circle at 12% 12%,rgba(255,255,255,7%),transparent 16rem),#050708}.gallery-mosaic-grid{columns:4 190px;column-gap:.85rem}.gallery-mosaic-item{position:relative;width:100%;display:block;break-inside:avoid;margin:var(--offset,0)0 .85rem;padding:.42rem;border:1px solid rgba(255,255,255,.13);border-radius:18px;background:rgba(255,255,255,.055);box-shadow:0 12px 34px rgba(0,0,0,.22);cursor:zoom-in}.gallery-mosaic-item:hover,.gallery-mosaic-item:focus-visible{border-color:rgba(255,255,255,.36);background:rgba(255,255,255,9%);outline:none}.gallery-mosaic-item img{width:100%;height:auto;max-height:none;object-fit:contain;border-radius:13px;background:#050708}.gallery-mosaic-number{position:absolute;left:.72rem;top:.72rem;min-width:28px;height:28px;display:grid;place-items:center;border-radius:999px;background:rgba(0,0,0,.58);color:#fff;font-size:.78rem;font-weight:950}.gallery-fullscreen{position:fixed;inset:0;z-index:140;display:block;padding:clamp(.75rem,2vw,1.35rem);background:rgba(0,0,0,.96)}.gallery-fullscreen-frame{position:absolute;inset:clamp(.75rem,2vw,1.35rem)clamp(.75rem,2vw,1.35rem)4.6rem;z-index:0;display:grid;place-items:center;min-width:0;min-height:0;overflow:hidden}.gallery-fullscreen-frame img{width:auto;height:auto;max-width:calc(100dvw - clamp(1.5rem,4vw,2.7rem));max-height:calc(100dvh - 6rem);object-fit:contain}.gallery-fullscreen-close,.gallery-fullscreen-nav{border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(255,255,255,.12);color:#fff;cursor:pointer;font-weight:950}.gallery-fullscreen-close{position:fixed;top:1rem;right:1rem;z-index:4;width:46px;height:46px;font-size:1.35rem}.gallery-fullscreen-nav{position:fixed;top:50%;transform:translateY(-50%);width:50px;height:50px;font-size:1.7rem;z-index:1}.gallery-fullscreen-prev{left:1rem}.gallery-fullscreen-next{right:1rem}.gallery-fullscreen-meta{position:fixed;left:clamp(.75rem,2vw,1.35rem);right:clamp(.75rem,2vw,1.35rem);bottom:clamp(.75rem,2vw,1.35rem);z-index:2;display:flex;align-items:center;justify-content:space-between;gap:1rem;color:rgba(255,255,255,.82);font-size:.92rem;pointer-events:none}.gallery-fullscreen-meta p{margin:0}.gallery-fullscreen-meta span{color:rgba(255,255,255,.68);font-weight:900}body.gallery-fullscreen-open{overflow:hidden}@media(max-width:980px){.programming-hub{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-wall{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:108px}.gallery-carousel-shell{width:100%;height:min(94vh,880px);grid-template-columns:1fr;grid-template-rows:minmax(0,1fr)auto;overflow:hidden}.gallery-carousel-shell.is-portrait,.gallery-carousel-shell.is-squareish,.gallery-carousel-shell.is-landscape{width:100%;grid-template-columns:1fr}.gallery-viewer-stage{min-height:min(58vh,560px)}.gallery-carousel-media{min-height:0}.gallery-carousel-info{min-height:0;max-height:38vh;overflow-y:auto}.gallery-page-mosaic{columns:3 190px}.gallery-mosaic-grid{columns:3 170px}}@media(max-width:720px){.programming-hub{grid-template-columns:1fr}.gallery-wall{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:96px;gap:.75rem}.gallery-tile,.gallery-tile.is-tall,.gallery-tile.is-portrait{grid-row:span 2}.gallery-tile.is-wide{grid-column:span 2;grid-row:span 2}.gallery-caption{opacity:1;transform:none;padding:.85rem}.gallery-open::after{opacity:1}.gallery-caption em{display:none}.gallery-carousel{padding:0;align-items:stretch;place-items:stretch}.gallery-carousel-shell{height:100dvh;max-height:100dvh;border:0;border-radius:0;grid-template-rows:minmax(0,58dvh)minmax(0,42dvh)}.gallery-viewer-stage{min-height:0}.gallery-carousel-media{min-height:0}.gallery-carousel-info{gap:.62rem;max-height:none;padding:.85rem .95rem calc(1rem + env(safe-area-inset-bottom));overscroll-behavior:contain}.gallery-carousel-kicker{font-size:.62rem;letter-spacing:.08em}.gallery-carousel-info h2{font-size:clamp(1.25rem,7vw,1.85rem);line-height:1.05;letter-spacing:-.02em}.gallery-carousel-info p{font-size:.92rem;line-height:1.42}.gallery-carousel-caption{padding-top:.55rem}.gallery-carousel-tabs{gap:.35rem}.gallery-carousel-tabs button,.gallery-carousel-tabs a{min-height:36px;font-size:.86rem}.gallery-carousel-tags{flex-wrap:nowrap;gap:.35rem;overflow-x:auto;padding-bottom:.08rem;scrollbar-width:none}.gallery-carousel-tags::-webkit-scrollbar{display:none}.gallery-carousel-tags a{flex:none;padding:.24rem .5rem;font-size:.74rem}.gallery-carousel-actions{margin-top:0}.gallery-carousel-link{width:100%;justify-content:center;min-height:38px}.gallery-carousel-close{top:calc(.7rem + env(safe-area-inset-top));right:.7rem;width:42px;height:42px;background:rgba(0,0,0,.58);border-color:rgba(255,255,255,.24);color:#fff;backdrop-filter:blur(12px)}.gallery-carousel-nav{top:50%;width:42px;height:42px;background:rgba(0,0,0,.58);border-color:rgba(255,255,255,.24);color:#fff;backdrop-filter:blur(12px)}.gallery-carousel-prev{left:.7rem}.gallery-carousel-next{right:.7rem}.gallery-carousel-counter{left:.75rem;bottom:.75rem}.gallery-card-tags{top:.65rem;left:.65rem;right:3.2rem}.gallery-page-mosaic{columns:2 140px;column-gap:.75rem}.gallery-page-mosaic-item{border-radius:16px;margin-bottom:.75rem}.gallery-mosaic-panel{padding:.65rem}.gallery-mosaic-grid{columns:2 130px;column-gap:.65rem}.gallery-fullscreen{padding:.7rem}.gallery-fullscreen-frame{inset:.7rem .7rem 4.2rem}.gallery-fullscreen-frame img{max-width:calc(100dvw - 1.4rem);max-height:calc(100dvh - 5rem)}.gallery-fullscreen-nav{width:42px;height:42px}.gallery-fullscreen-prev{left:.7rem}.gallery-fullscreen-next{right:.7rem}.gallery-fullscreen-meta{left:.7rem;right:.7rem;bottom:.7rem;font-size:.82rem}}@media(max-width:720px) and (orientation:landscape){.gallery-carousel-shell,.gallery-carousel-shell.is-portrait,.gallery-carousel-shell.is-squareish,.gallery-carousel-shell.is-landscape{grid-template-columns:minmax(0,1fr)minmax(260px,38vw);grid-template-rows:1fr}.gallery-carousel-info{max-height:100dvh}}@media(prefers-reduced-motion:reduce){.gallery-carousel-media img,.gallery-open img{transition:none}}