@font-face{font-family:Inter;src:url('../assets/fonts/inter-latin-300-normal.woff2') format('woff2');font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url('../assets/fonts/inter-latin-400-normal.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url('../assets/fonts/inter-latin-500-normal.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url('../assets/fonts/inter-latin-600-normal.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url('../assets/fonts/inter-latin-700-normal.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:'Playfair Display';src:url('../assets/fonts/playfair-display-latin-400-normal.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:'Playfair Display';src:url('../assets/fonts/playfair-display-latin-600-normal.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:'Playfair Display';src:url('../assets/fonts/playfair-display-latin-700-normal.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}:root{--accent:#c97a17;--accent-light:#e7a34a;--accent-dark:#8f5310;--accent-glow:rgba(201, 122, 23, 0.34);--accent-hot:#b8232d;--accent-cool:#154a59;--bg-primary:#070708;--bg-secondary:#0f1012;--bg-card:#15161a;--bg-card-hover:#1f2026;--text-primary:#f2f2f3;--text-secondary:#a8aab2;--text-muted:#6f7380;--border-color:#2b2e36;--border-subtle:#1f2229;--radius:16px;--radius-sm:8px;--radius-xs:6px;--shadow-sm:0 2px 8px rgba(0,0,0,0.2);--shadow:0 8px 32px rgba(0, 0, 0, 0.4);--shadow-glow:0 0 40px var(--accent-glow);--transition:0.3s cubic-bezier(0.4, 0, 0.2, 1);--transition-fast:0.15s ease;--font-body:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;--font-heading:'Playfair Display',Georgia,serif;--header-overlay-strong:rgba(7, 7, 8, 0.96);--header-overlay-soft:rgba(7, 7, 8, 0.66);--surface-tint-strong:rgba(15, 16, 18, 0.92);--surface-tint-medium:rgba(15, 16, 18, 0.88);--surface-tint-soft:rgba(15, 16, 18, 0.86);--surface-tint-subtle:rgba(15, 16, 18, 0.74);--surface-tint-node:rgba(15, 16, 18, 0.9);--glass-blur:18px;--glass-saturate:165%;--glass-border:rgba(255, 255, 255, 0.14);--glass-highlight:rgba(255, 255, 255, 0.24);--glass-panel:color-mix(in srgb, var(--bg-card) 74%, transparent);--glass-panel-strong:color-mix(in srgb, var(--bg-card) 84%, transparent);--glass-elevation:0 12px 34px rgba(3, 4, 10, 0.52);--glass-elevation-hover:0 18px 46px rgba(3, 4, 10, 0.62);--glass-sheen:linear-gradient(160deg, color-mix(in srgb, var(--glass-highlight) 64%, transparent), transparent 46%);--site-logo-max-height:34px;--home-shell-max-width:1820px;--home-inline-gutter:clamp(0.75rem, 2vw, 2rem);--home-header-offset:88px;--home-planets-viewport-gap:24px;--home-planets-max-size:1600px;--desc-font-size-sm:0.9rem;--desc-font-size-md:1rem;--desc-font-size-lg:1.06rem}:root[data-theme=light]{--bg-primary:#f7f6f4;--bg-secondary:#ffffff;--bg-card:#ffffff;--bg-card-hover:#f2efea;--text-primary:#1f1d19;--text-secondary:#5b544a;--text-muted:#7a7266;--border-color:#ded8cf;--border-subtle:#ebe6de;--shadow-sm:0 2px 8px rgba(38, 30, 18, 0.08);--shadow:0 12px 28px rgba(38, 30, 18, 0.12);--header-overlay-strong:rgba(247, 246, 244, 0.96);--header-overlay-soft:rgba(247, 246, 244, 0.72);--surface-tint-strong:rgba(255, 255, 255, 0.94);--surface-tint-medium:rgba(255, 255, 255, 0.9);--surface-tint-soft:rgba(255, 255, 255, 0.88);--surface-tint-subtle:rgba(255, 255, 255, 0.76);--surface-tint-node:rgba(255, 255, 255, 0.92);--glass-blur:14px;--glass-saturate:145%;--glass-border:rgba(255, 255, 255, 0.8);--glass-highlight:rgba(255, 255, 255, 0.9);--glass-panel:color-mix(in srgb, var(--bg-card) 86%, transparent);--glass-panel-strong:color-mix(in srgb, var(--bg-card) 92%, transparent);--glass-elevation:0 10px 24px rgba(38, 30, 18, 0.11);--glass-elevation-hover:0 14px 30px rgba(38, 30, 18, 0.16);--glass-sheen:linear-gradient(160deg, rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.18) 38%, transparent 65%)}*,::after,::before{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--bg-primary);color:var(--text-primary);line-height:1.6;min-height:100vh;overflow-x:hidden;position:relative;isolation:isolate;background-image:radial-gradient(980px 660px at 8% -12%,color-mix(in srgb,var(--accent-hot) 28%,transparent),transparent 60%),radial-gradient(1020px 720px at 50% -22%,color-mix(in srgb,var(--accent) 20%,transparent),transparent 63%),radial-gradient(960px 680px at 90% -10%,color-mix(in srgb,var(--accent-cool) 28%,transparent),transparent 64%)}body::before{content:'';position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(circle at 50% 52%,transparent 34%,rgba(0,0,0,.42) 100%),radial-gradient(circle at 50% 100%,rgba(0,0,0,.28),transparent 52%)}body::after{content:'';position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.16;mix-blend-mode:soft-light;background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.028) 0 1px,transparent 1px 3px),repeating-linear-gradient(90deg,rgba(0,0,0,.035) 0 1px,transparent 1px 4px)}a{color:var(--accent-light);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--accent)}img,video{max-width:100%;display:block}mark{background:color-mix(in srgb,var(--accent-light) 42%,transparent);color:var(--text-primary);border-radius:.2em;padding:0 .14em}.site-header{position:fixed;top:0;left:0;right:0;z-index:100;padding:1.25rem 2rem;background:linear-gradient(180deg,var(--header-overlay-strong) 0,var(--header-overlay-soft) 60%,transparent 100%);pointer-events:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.header-inner{max-width:1400px;margin:0 auto;position:relative;pointer-events:auto;display:flex;align-items:center;justify-content:space-between;gap:1rem}.header-menu-toggle{display:none;height:38px;border-radius:999px;border:1px solid var(--border-color);background:var(--glass-panel-strong);background-image:var(--glass-sheen);color:var(--text-secondary);padding:0 .78rem;align-items:center;justify-content:center;gap:.35rem;font-size:.76rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;cursor:pointer;flex-shrink:0;transition:color var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate))}.header-menu-toggle:hover{color:var(--text-primary);border-color:var(--accent);box-shadow:0 0 0 3px rgba(216,138,31,.2)}.header-menu-toggle:focus-visible{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px rgba(216,138,31,.2)}.header-menu-toggle-icon{font-size:.95rem;line-height:1}.header-mobile-menu{position:absolute;top:calc(100% + .45rem);right:0;width:min(260px,calc(100vw - 1.25rem));padding:.55rem;border-radius:14px;border:1px solid var(--border-color);background:var(--glass-panel-strong);background-image:var(--glass-sheen);box-shadow:var(--glass-elevation-hover);display:flex;flex-direction:column;gap:.45rem;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate))}.header-mobile-menu[hidden]{display:none!important}.mobile-menu-about-link,.mobile-menu-theme-toggle{width:100%;justify-content:flex-start}.site-logo{display:inline-flex;flex-direction:row;align-items:center;gap:.5rem;position:relative;overflow:hidden;isolation:isolate;font-family:var(--font-heading);font-size:1.4rem;font-weight:700;color:var(--text-primary)!important;letter-spacing:.02em;line-height:1.1;padding:.44rem .72rem;border-radius:1rem;border:1px solid var(--border-color);background:linear-gradient(160deg,color-mix(in srgb,var(--glass-panel-strong) 78%,transparent) 0,color-mix(in srgb,var(--glass-panel-soft) 82%,transparent) 100%);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--text-primary) 20%,transparent),inset 0 -12px 20px color-mix(in srgb,var(--text-primary) 8%,transparent),0 8px 24px color-mix(in srgb,var(--bg-main) 48%,transparent);-webkit-backdrop-filter:blur(calc(var(--glass-blur) + 4px)) saturate(var(--glass-saturate));backdrop-filter:blur(calc(var(--glass-blur) + 4px)) saturate(var(--glass-saturate));transition:border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.site-logo::before{content:'';position:absolute;inset:-1px;z-index:-1;pointer-events:none;border-radius:inherit;background:var(--glass-sheen);opacity:.68}.site-logo::after{content:'';position:absolute;top:8%;left:7%;right:26%;height:44%;pointer-events:none;border-radius:999px;background:color-mix(in srgb,var(--text-primary) 18%,transparent);filter:blur(13px);opacity:.54}.site-logo:hover{border-color:rgba(216,138,31,.2);box-shadow:inset 0 1px 0 rgba(238,238,245,.24),inset 0 -12px 20px rgba(238,238,245,.1),0 8px 26px rgba(0,0,0,.5);transform:translateY(-1px)}.site-logo:focus-visible{outline:0;border-color:rgba(216,138,31,.2);box-shadow:0 0 0 3px rgba(216,138,31,.2),inset 0 1px 0 rgba(238,238,245,.22),inset 0 -12px 20px rgba(238,238,245,.09)}.site-logo-image{display:block;width:auto;max-height:var(--site-logo-max-height);object-fit:contain;border-radius:calc(var(--site-logo-max-height) * .22);border:1px solid var(--border-color);background:rgba(26,26,46,.74);box-shadow:inset 0 1px 0 rgba(238,238,245,.18)}.site-logo-text{display:block}.header-about-link{height:38px;border-radius:999px;border:1px solid var(--border-color);background:var(--glass-panel-strong);background-image:var(--glass-sheen);color:var(--text-secondary)!important;padding:0 .8rem;display:inline-flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;transition:color var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate))}.header-about-link[hidden]{display:none!important}.header-about-link:hover{color:var(--text-primary)!important;border-color:var(--accent);box-shadow:0 0 0 3px rgba(216,138,31,.2)}.header-about-link:focus-visible{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px rgba(216,138,31,.2)}.theme-toggle{height:38px;border-radius:999px;border:1px solid var(--border-color);background:var(--glass-panel-strong);background-image:var(--glass-sheen);color:var(--text-secondary);padding:0 .75rem;display:inline-flex;align-items:center;justify-content:center;gap:.42rem;font-size:.78rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;cursor:pointer;flex-shrink:0;transition:color var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate))}.theme-toggle:hover{color:var(--text-primary);border-color:var(--accent);background:linear-gradient(115deg,color-mix(in srgb,var(--accent-hot) 18%,transparent),color-mix(in srgb,var(--accent) 16%,transparent) 52%,color-mix(in srgb,var(--accent-cool) 14%,transparent)),var(--glass-panel-strong);box-shadow:0 0 0 3px rgba(216,138,31,.2),0 0 22px color-mix(in srgb,var(--accent-cool) 20%,transparent)}.theme-toggle:focus-visible{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px rgba(216,138,31,.2),0 0 20px color-mix(in srgb,var(--accent-cool) 18%,transparent)}.theme-toggle-icon{font-size:.9rem;line-height:1}.theme-toggle-label{line-height:1}.item-card.search-match,.project-description-body a.search-match,.project-link.search-match{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 24%,transparent)}.site-footer{text-align:center;padding:2rem;color:var(--text-muted);font-size:.8rem;border-top:1px solid var(--border-subtle);display:flex;flex-direction:column;align-items:center;gap:1rem}.tag-cloud-card{width:min(1100px,100%);border:1px solid var(--border-subtle);border-radius:var(--radius);background:var(--glass-panel);border-color:var(--border-subtle);-webkit-backdrop-filter:blur(calc(var(--glass-blur) * 0.72)) saturate(var(--glass-saturate));backdrop-filter:blur(calc(var(--glass-blur) * 0.72)) saturate(var(--glass-saturate));padding:.8rem .9rem;display:flex;flex-direction:column;align-items:center;gap:.7rem}.tag-cloud-card.is-empty{display:none}.tag-cloud-title{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-secondary)}.tag-cloud-list{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem}.tag-cloud-item{--tag-cloud-scale:1;border:1px solid var(--border-color);border-radius:999px;background:var(--bg-secondary);color:var(--text-secondary);padding:calc(.34rem * var(--tag-cloud-scale)) calc(.58rem * var(--tag-cloud-scale));display:inline-flex;align-items:center;gap:calc(.42rem * var(--tag-cloud-scale));cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-fast),background var(--transition-fast),transform var(--transition-fast)}.tag-cloud-item:hover{border-color:rgba(194,92,45,.72);color:var(--text-primary);background:linear-gradient(120deg,color-mix(in srgb,var(--accent-hot) 18%,transparent) 0,color-mix(in srgb,var(--accent) 14%,transparent) 52%,color-mix(in srgb,var(--accent-cool) 16%,transparent) 100%);transform:translateY(-1px)}.tag-cloud-item:focus-visible{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px rgba(216,138,31,.2)}.tag-cloud-item.is-active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 20%,var(--bg-secondary));color:var(--text-primary)}.tag-cloud-item-label{font-size:calc(.76rem * var(--tag-cloud-scale));font-weight:600}.tag-cloud-item-count{min-width:calc(1.25rem * var(--tag-cloud-scale));height:calc(1.25rem * var(--tag-cloud-scale));border-radius:999px;border:1px solid var(--border-color);display:inline-flex;align-items:center;justify-content:center;font-size:calc(.67rem * var(--tag-cloud-scale));color:var(--text-muted)}.tag-cloud-item.is-active .tag-cloud-item-count{border-color:var(--accent);color:var(--text-secondary)}.tag-cloud-clear{border:1px solid var(--border-color);border-radius:999px;background:0 0;color:var(--text-secondary);padding:.26rem .72rem;cursor:pointer;font-size:.72rem;font-weight:600;transition:border-color var(--transition-fast),color var(--transition-fast),background var(--transition-fast)}.tag-cloud-clear:hover:not(:disabled){border-color:var(--accent);color:var(--text-primary)}.tag-cloud-clear:disabled{opacity:.45;cursor:default}.view{display:none;min-height:100vh}.view.active{display:block}#home-view{display:none;padding-top:var(--home-header-offset);padding-inline:var(--home-inline-gutter)}#home-view.active{display:flex;align-items:stretch;justify-content:flex-start;flex-direction:column;width:100%}#home-view.home-display-planets{position:relative;isolation:isolate;overflow:hidden;background-image:radial-gradient(circle at 22px 28px,rgba(232,239,255,.4) 0 1px,transparent 1.8px),radial-gradient(circle at 74px 92px,rgba(223,232,255,.34) 0 .85px,transparent 1.6px),radial-gradient(circle at 110px 56px,rgba(228,237,255,.3) 0 .8px,transparent 1.5px),radial-gradient(circle at 46px 118px,rgba(233,241,255,.28) 0 .75px,transparent 1.4px);background-size:132px 132px,168px 168px,154px 154px,188px 188px;background-position:0 0,24px 18px,58px 10px,12px 46px;background-repeat:repeat}#home-view.home-display-planets::before{content:'';position:absolute;inset:0;pointer-events:none;z-index:0;background-image:radial-gradient(circle at 6% 18%,rgba(232,239,255,.7) 0 .9px,transparent 1.5px),radial-gradient(circle at 12% 72%,rgba(223,232,255,.58) 0 .85px,transparent 1.45px),radial-gradient(circle at 20% 42%,rgba(227,236,255,.52) 0 .8px,transparent 1.4px),radial-gradient(circle at 28% 14%,rgba(230,238,255,.66) 0 .9px,transparent 1.5px),radial-gradient(circle at 35% 62%,rgba(214,226,255,.46) 0 .75px,transparent 1.3px),radial-gradient(circle at 43% 28%,rgba(233,241,255,.64) 0 .95px,transparent 1.55px),radial-gradient(circle at 50% 82%,rgba(222,233,255,.52) 0 .85px,transparent 1.45px),radial-gradient(circle at 58% 50%,rgba(228,237,255,.7) 0 .95px,transparent 1.55px),radial-gradient(circle at 64% 18%,rgba(219,230,255,.48) 0 .8px,transparent 1.4px),radial-gradient(circle at 72% 68%,rgba(228,237,255,.6) 0 .9px,transparent 1.5px),radial-gradient(circle at 79% 36%,rgba(214,226,255,.46) 0 .75px,transparent 1.3px),radial-gradient(circle at 86% 56%,rgba(233,241,255,.66) 0 .95px,transparent 1.55px),radial-gradient(circle at 92% 26%,rgba(224,235,255,.56) 0 .85px,transparent 1.45px),radial-gradient(circle at 24% 90%,rgba(231,239,255,.6) 0 .9px,transparent 1.5px),radial-gradient(circle at 70% 90%,rgba(228,237,255,.58) 0 .9px,transparent 1.5px);background-repeat:repeat-y;background-size:100% 52%;background-position:0 0;opacity:.72;filter:drop-shadow(0 0 4px rgba(228, 237, 255, .14));animation:10s ease-in-out infinite alternate orbitStarsTwinkle}#home-view.home-display-planets::after{content:'';position:absolute;inset:0;pointer-events:none;z-index:0;background-image:radial-gradient(circle at 9% 30%,rgba(232,239,255,.56) 0 .7px,transparent 1.2px),radial-gradient(circle at 18% 64%,rgba(222,233,255,.48) 0 .65px,transparent 1.15px),radial-gradient(circle at 27% 20%,rgba(233,241,255,.52) 0 .7px,transparent 1.2px),radial-gradient(circle at 34% 78%,rgba(219,230,255,.44) 0 .6px,transparent 1.1px),radial-gradient(circle at 42% 44%,rgba(231,239,255,.54) 0 .7px,transparent 1.2px),radial-gradient(circle at 49% 12%,rgba(223,233,255,.46) 0 .65px,transparent 1.15px),radial-gradient(circle at 57% 70%,rgba(233,241,255,.52) 0 .7px,transparent 1.2px),radial-gradient(circle at 65% 34%,rgba(222,233,255,.46) 0 .65px,transparent 1.15px),radial-gradient(circle at 73% 84%,rgba(231,239,255,.54) 0 .7px,transparent 1.2px),radial-gradient(circle at 81% 24%,rgba(220,231,255,.44) 0 .6px,transparent 1.1px),radial-gradient(circle at 89% 58%,rgba(232,239,255,.56) 0 .7px,transparent 1.2px),radial-gradient(circle at 95% 16%,rgba(223,233,255,.46) 0 .65px,transparent 1.15px);background-repeat:repeat-y;background-size:100% 58%;background-position:0 14%;opacity:.64;filter:drop-shadow(0 0 2px rgba(228, 237, 255, .14));animation:7.8s ease-in-out infinite alternate orbitStarsTwinkleSecondary}#home-view.home-display-planets #grid-fallback,#home-view.home-display-planets #home-tabs,#home-view.home-display-planets #radial-container{position:relative;z-index:1}.home-search{width:min(760px,100%);display:flex;align-items:center;gap:.8rem;margin:0;padding:0}.header-search{flex:1;justify-content:flex-end;max-width:780px}.header-search.is-hidden{display:none}.search-input-wrap{position:relative;flex:0 1 560px;width:min(560px,100%)}.search-input{width:100%;height:42px;border-radius:999px;border:1px solid var(--border-color);background:var(--glass-panel-strong);background-image:var(--glass-sheen);color:var(--text-primary);padding:0 2.35rem 0 1rem;font-size:.9rem;outline:0;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);-webkit-backdrop-filter:blur(calc(var(--glass-blur) * 0.65)) saturate(var(--glass-saturate));backdrop-filter:blur(calc(var(--glass-blur) * 0.65)) saturate(var(--glass-saturate))}.search-clear{position:absolute;right:.45rem;top:50%;transform:translateY(-50%);width:1.5rem;height:1.5rem;border:none;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:1rem;line-height:1;cursor:pointer;color:var(--text-muted);background:0 0;opacity:0;pointer-events:none;transition:color var(--transition-fast),background var(--transition-fast),opacity var(--transition-fast)}.search-clear.is-visible{opacity:1;pointer-events:auto}.search-clear:hover{color:var(--text-primary);background:rgba(216,138,31,.2)}.search-input::placeholder{color:var(--text-muted)}.search-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(216,138,31,.2),var(--glass-elevation);transform:translateY(-1px)}.search-count{min-width:78px;font-size:.75rem;color:var(--text-secondary);text-align:right}.search-count.is-clickable{cursor:pointer;color:var(--accent-light);text-decoration:underline;text-underline-offset:2px}.global-search-results-panel{position:fixed;top:132px;right:22px;z-index:120;width:min(360px,calc(100vw - 24px));max-height:min(64vh,520px);overflow:auto;border:1px solid rgba(194,92,45,.45);border-radius:16px;background:var(--glass-panel-strong);box-shadow:var(--glass-elevation-hover),0 0 28px color-mix(in srgb,var(--accent-hot) 18%,transparent),inset 0 1px 0 color-mix(in srgb,var(--accent-cool) 18%,transparent);padding:.7rem;background-image:var(--glass-sheen);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate))}.global-search-results-header{display:flex;align-items:center;justify-content:space-between;gap:.4rem;margin-bottom:.5rem}.global-search-results-title{margin:0;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--accent-light)}.global-search-results-close{appearance:none;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);border-radius:999px;width:1.5rem;height:1.5rem;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.global-search-results-items{display:flex;flex-direction:column;gap:.35rem}.global-search-results-group{display:flex;flex-direction:column;gap:.28rem}.global-search-results-group-header{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;padding:.1rem .2rem 0}.global-search-results-group-title{margin:0;font-size:.72rem;color:var(--text-primary);font-weight:700}.global-search-results-group-meta{font-size:.6rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.global-search-results-group-items{display:flex;flex-direction:column;gap:.35rem}.global-search-results-item{appearance:none;width:100%;border:1px solid var(--border-color);background:color-mix(in srgb,var(--bg-secondary) 84%,transparent);color:var(--text-primary);border-radius:10px;padding:.44rem .52rem;display:flex;justify-content:space-between;align-items:center;gap:.5rem;text-align:left;cursor:pointer}.global-search-results-item-main{display:flex;flex-direction:column;gap:.18rem;min-width:0}.global-search-results-item:hover{border-color:rgba(194,92,45,.66);background:linear-gradient(110deg,color-mix(in srgb,var(--accent-hot) 16%,transparent),color-mix(in srgb,var(--accent) 14%,transparent) 46%,color-mix(in srgb,var(--accent-cool) 14%,transparent))}.global-search-results-item.is-entry{border-style:dashed}.global-search-results-item.is-direct-link{border-color:rgba(39,196,107,.52);background:rgba(10,22,15,.78)}.global-search-results-item.is-direct-link:hover{border-color:#27c46b;background:rgba(13,35,22,.86)}.global-search-results-item.is-direct-link .global-search-results-item-title{color:#7cf2ae}.global-search-results-item.is-direct-link .global-search-results-item-title::after{content:' ↗';color:#27c46b;font-weight:700}.global-search-results-item-title{font-size:.74rem;font-weight:600}.global-search-results-item-meta{font-size:.63rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.global-search-results-item-date{font-size:.66rem;color:var(--text-muted);white-space:nowrap}.orbit-back{display:none;align-items:center;justify-content:center;height:36px;padding:0 .9rem;border-radius:999px;border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;cursor:pointer;transition:all var(--transition-fast)}.orbit-back.is-visible{display:inline-flex}.orbit-back:hover{color:var(--accent-light);border-color:var(--accent);box-shadow:0 0 0 3px rgba(216,138,31,.2)}.radial-container{position:relative;width:min(var(--home-planets-max-size),calc(100vw - (var(--home-inline-gutter) * 2)),calc(100vh - var(--home-header-offset) - var(--home-planets-viewport-gap)));max-width:none;max-height:calc(100vh - var(--home-header-offset) - var(--home-planets-viewport-gap));aspect-ratio:1;margin:0 auto;--zoom-tx:0px;--zoom-ty:0px;--zoom-scale:1;--orbit-mobile-text-scale:1;transform:translate(var(--zoom-tx),var(--zoom-ty)) scale(var(--zoom-scale));transform-origin:50% 50%;transition:transform .7s cubic-bezier(.2, .75, .2, 1)}.orbit-sky-layer{position:absolute;inset:1.5%;border-radius:50%;pointer-events:none;z-index:0}.orbit-sky-star{position:absolute;border-radius:50%;background:rgba(232,239,255,.95);opacity:var(--star-opacity, .6);box-shadow:0 0 4px rgba(232,239,255,.42),0 0 8px rgba(222,233,255,.26);transform:translate(-50%,-50%) scale(1);animation:orbitSkyStarTwinkle var(--star-duration,8s) ease-in-out var(--star-delay,0s) infinite}.orbit-sky-star.is-hero{background:rgba(244,248,255,.98);box-shadow:0 0 7px rgba(240,246,255,.74),0 0 15px rgba(214,226,255,.46);animation-name:orbitSkyHeroTwinkle}#home-view.home-display-planets #radial-container{isolation:isolate}#home-view.home-display-planets #radial-container::before{content:'';position:absolute;inset:3%;border-radius:50%;pointer-events:none;z-index:0;background-image:radial-gradient(circle at 8% 22%,rgba(232,239,255,.9) 0 1.2px,transparent 1.8px),radial-gradient(circle at 14% 74%,rgba(223,232,255,.74) 0 1px,transparent 1.6px),radial-gradient(circle at 22% 44%,rgba(227,236,255,.62) 0 .9px,transparent 1.5px),radial-gradient(circle at 30% 16%,rgba(230,238,255,.86) 0 1.1px,transparent 1.7px),radial-gradient(circle at 36% 66%,rgba(214,226,255,.56) 0 .9px,transparent 1.5px),radial-gradient(circle at 44% 30%,rgba(233,241,255,.82) 0 1.15px,transparent 1.7px),radial-gradient(circle at 52% 82%,rgba(222,233,255,.66) 0 1px,transparent 1.6px),radial-gradient(circle at 58% 50%,rgba(228,237,255,.92) 0 1.2px,transparent 1.8px),radial-gradient(circle at 64% 20%,rgba(219,230,255,.6) 0 .95px,transparent 1.5px),radial-gradient(circle at 72% 70%,rgba(228,237,255,.78) 0 1.1px,transparent 1.7px),radial-gradient(circle at 79% 38%,rgba(214,226,255,.58) 0 .9px,transparent 1.5px),radial-gradient(circle at 86% 58%,rgba(233,241,255,.84) 0 1.15px,transparent 1.7px),radial-gradient(circle at 92% 28%,rgba(224,235,255,.7) 0 1px,transparent 1.6px),radial-gradient(circle at 26% 90%,rgba(231,239,255,.76) 0 1.05px,transparent 1.6px),radial-gradient(circle at 70% 90%,rgba(228,237,255,.72) 0 1.05px,transparent 1.6px),radial-gradient(circle at 5% 48%,rgba(221,231,255,.62) 0 .9px,transparent 1.5px),radial-gradient(circle at 11% 58%,rgba(230,238,255,.74) 0 1px,transparent 1.6px),radial-gradient(circle at 17% 12%,rgba(226,235,255,.68) 0 .95px,transparent 1.5px),radial-gradient(circle at 19% 86%,rgba(234,241,255,.8) 0 1.1px,transparent 1.7px),radial-gradient(circle at 27% 34%,rgba(219,229,255,.56) 0 .85px,transparent 1.4px),radial-gradient(circle at 33% 52%,rgba(228,236,255,.7) 0 1px,transparent 1.6px),radial-gradient(circle at 39% 10%,rgba(222,232,255,.64) 0 .9px,transparent 1.5px),radial-gradient(circle at 41% 92%,rgba(230,239,255,.78) 0 1.05px,transparent 1.65px),radial-gradient(circle at 49% 64%,rgba(218,228,255,.58) 0 .9px,transparent 1.5px),radial-gradient(circle at 55% 8%,rgba(234,242,255,.82) 0 1.15px,transparent 1.75px),radial-gradient(circle at 61% 74%,rgba(224,234,255,.66) 0 .95px,transparent 1.55px),radial-gradient(circle at 67% 46%,rgba(232,240,255,.74) 0 1px,transparent 1.6px),radial-gradient(circle at 74% 12%,rgba(220,230,255,.6) 0 .9px,transparent 1.5px),radial-gradient(circle at 81% 84%,rgba(231,239,255,.78) 0 1.05px,transparent 1.65px),radial-gradient(circle at 88% 46%,rgba(222,232,255,.64) 0 .95px,transparent 1.55px),radial-gradient(circle at 95% 66%,rgba(233,241,255,.8) 0 1.1px,transparent 1.7px),radial-gradient(circle at 76% 96%,rgba(225,234,255,.68) 0 .95px,transparent 1.55px);opacity:.48;transform:scale(1);filter:drop-shadow(0 0 4px rgba(228, 237, 255, .12));animation:9.5s ease-in-out infinite alternate orbitStarsTwinkle}.orbit-center-label{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:7;padding:.45rem .9rem;border-radius:999px;border:1px solid var(--border-color);background:var(--glass-panel-strong);background-image:var(--glass-sheen);color:var(--text-primary);font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;box-shadow:var(--glass-elevation);transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition);display:inline-flex;align-items:center;gap:.5rem}.orbit-center-label:hover{transform:translate(-50%,-50%) scale(1.06);border-color:var(--accent);box-shadow:0 0 20px rgba(216,138,31,.2)}.orbit-center-label img{width:26px;height:26px;border-radius:50%;object-fit:cover;border:1px solid var(--border-color)}.radial-container.orbit-zoom{transition:transform .7s cubic-bezier(.2, .75, .2, 1)}.orbit-ring{position:absolute;border-radius:50%;border:1.6px solid rgba(216,138,31,.2);top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;opacity:.85;box-shadow:0 0 14px rgba(216,138,31,.2),inset 0 0 8px rgba(216,138,31,.2)}.orbit-ring::after{content:'';position:absolute;inset:-1px;border-radius:50%;border:2px solid transparent;border-top-color:var(--accent);opacity:.9;animation:ringRotate var(--ring-duration,30s) linear infinite;animation-direction:var(--ring-direction,normal)}@keyframes ringRotate{to{transform:rotate(360deg)}}@keyframes orbitStarsTwinkle{0%{opacity:.34;transform:scale(1);filter:drop-shadow(0 0 2px rgba(228, 237, 255, .08))}50%{opacity:.5;transform:scale(1.0035);filter:drop-shadow(0 0 5px rgba(228, 237, 255, .16))}100%{opacity:.4;transform:scale(1.0015);filter:drop-shadow(0 0 3px rgba(228, 237, 255, .1))}}@keyframes orbitStarsTwinkleSecondary{0%{opacity:.5;transform:scale(1);filter:drop-shadow(0 0 1px rgba(228, 237, 255, .1))}50%{opacity:.72;transform:scale(1.0025);filter:drop-shadow(0 0 3px rgba(228, 237, 255, .18))}100%{opacity:.58;transform:scale(1.0012);filter:drop-shadow(0 0 2px rgba(228, 237, 255, .12))}}@keyframes orbitSkyStarTwinkle{0%,100%{opacity:calc(var(--star-opacity, .6) * .52);transform:translate(-50%,-50%) scale(.85)}45%{opacity:var(--star-opacity, .6);transform:translate(-50%,-50%) scale(1)}70%{opacity:calc(var(--star-opacity, .6) * 1.2);transform:translate(-50%,-50%) scale(1.28)}}@keyframes orbitSkyHeroTwinkle{0%,100%{opacity:calc(var(--star-opacity, .9) * .54);transform:translate(-50%,-50%) scale(.92)}50%{opacity:var(--star-opacity, .9);transform:translate(-50%,-50%) scale(1.14)}75%{opacity:1;transform:translate(-50%,-50%) scale(1.34)}}.ring-label{position:absolute;transform:translate(-50%,-50%);font-size:.58rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);white-space:nowrap;pointer-events:none;z-index:3;opacity:.7;background:var(--bg-primary);padding:.1rem .5rem;border-radius:10px}.orbital-hub{position:absolute;transform:translate(-50%,-50%);z-index:40;font-size:calc(.62rem * var(--orbit-mobile-text-scale, 1));font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--accent-light);background:var(--glass-panel-strong);padding:.3rem .7rem;border-radius:14px;border:1px solid var(--border-color);white-space:nowrap;box-shadow:var(--glass-elevation);pointer-events:auto;cursor:pointer;transition:box-shadow var(--transition),transform var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast);display:inline-flex;align-items:center;gap:.45rem;-webkit-backdrop-filter:blur(calc(var(--glass-blur) * 0.75)) saturate(var(--glass-saturate));backdrop-filter:blur(calc(var(--glass-blur) * 0.75)) saturate(var(--glass-saturate))}.orbital-hub:hover{color:var(--text-primary);border-color:var(--accent);background:rgba(216,138,31,.2);transform:translate(-50%,-50%) scale(1.1);box-shadow:var(--glass-elevation-hover),0 0 20px rgba(216,138,31,.2)}.orbital-hub-label{display:inline-block}.orbital-hub-toggle{appearance:none;border:1px solid rgba(216,138,31,.2);background:rgba(216,138,31,.2);color:var(--accent-light);border-radius:999px;padding:.08rem .42rem;font-size:calc(.56rem * var(--orbit-mobile-text-scale, 1));font-weight:700;letter-spacing:.03em;line-height:1.2;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.orbital-hub-toggle:hover{background:rgba(216,138,31,.2);border-color:var(--accent);transform:translateY(-1px)}.orbital-hub-toggle.is-expanded{background:rgba(216,138,31,.2)}.orbital-hub-list-link{appearance:none;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:var(--text-secondary);border-radius:999px;padding:.08rem .46rem;font-size:calc(.56rem * var(--orbit-mobile-text-scale, 1));font-weight:700;letter-spacing:.02em;line-height:1.2;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.orbital-hub-list-link:hover{background:rgba(216,138,31,.2);border-color:var(--accent);color:var(--text-primary)}.orbit-tag-project-list{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:140;width:min(420px,calc(100vw - 1.5rem));max-height:min(74vh,560px);overflow:auto;border:1px solid rgba(194,92,45,.45);background:var(--glass-panel-strong);border-radius:16px;box-shadow:var(--glass-elevation-hover),0 0 26px color-mix(in srgb,var(--accent-cool) 20%,transparent),inset 0 1px 0 color-mix(in srgb,var(--accent-hot) 18%,transparent);padding:.7rem;background-image:var(--glass-sheen);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate))}.orbit-tag-project-list-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.45rem}.orbit-tag-project-list-title{margin:0;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;color:var(--accent-light)}.orbit-tag-project-list-close{appearance:none;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);border-radius:999px;width:1.5rem;height:1.5rem;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-fast),background var(--transition-fast)}.orbit-tag-project-list-close:hover{border-color:var(--accent);color:var(--text-primary);background:rgba(216,138,31,.2)}.orbit-tag-project-list-search{width:100%;margin:0 0 .52rem;padding:.4rem .5rem;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);font-size:.75rem}.orbit-tag-project-list-search:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px rgba(216,138,31,.2)}.orbit-tag-project-items{display:flex;flex-direction:column;gap:.34rem}.orbit-tag-project-item{appearance:none;width:100%;border:1px solid var(--border-color);background:color-mix(in srgb,var(--bg-secondary) 84%,transparent);color:var(--text-primary);border-radius:10px;padding:.44rem .52rem;display:flex;justify-content:space-between;align-items:center;gap:.5rem;cursor:pointer;text-align:left;transition:border-color var(--transition-fast),background var(--transition-fast),transform var(--transition-fast)}.orbit-tag-project-item:hover{border-color:var(--accent);background:rgba(216,138,31,.2);transform:translateY(-1px)}.orbit-tag-project-item.is-external-link{border-color:rgba(39,196,107,.52);background:rgba(10,22,15,.78)}.orbit-tag-project-item.is-external-link:hover{border-color:#27c46b;background:rgba(13,35,22,.86)}.orbit-tag-project-item-title{font-size:.75rem;font-weight:600}.orbit-tag-project-item.is-external-link .orbit-tag-project-item-title{color:#7cf2ae}.orbit-tag-project-item.is-external-link .orbit-tag-project-item-title::after{content:' ↗';color:#27c46b;font-weight:700}.orbit-tag-project-item-date{font-size:.66rem;color:var(--text-muted);white-space:nowrap}.orbit-tag-project-item.is-filtered-out{display:none!important}.orbit-tag-project-list-empty{margin-top:.5rem;font-size:.72rem;color:var(--text-muted);text-align:center}.orbital-connectors{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2}.connector-line{fill:none;stroke:var(--accent);stroke-width:.22;stroke-linecap:round;stroke-dasharray:0.8 0.35;opacity:.88;filter:drop-shadow(0 0 2px rgba(216, 138, 31, .2))}.connector-spoke{stroke:color-mix(in srgb,var(--accent) 35%,var(--border-color));stroke-width:.16;stroke-linecap:round;stroke-dasharray:0.45 0.22;opacity:.62}.radial-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:5;text-align:center;width:140px}.center-orb{width:90px;height:90px;margin:0 auto .5rem;border-radius:50%;background:radial-gradient(circle at 35% 35%,var(--accent-light),var(--accent-dark));box-shadow:var(--shadow-glow),inset 0 0 30px rgba(0,0,0,.3);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.center-orb img{width:100%;height:100%;object-fit:cover;border-radius:50%}.center-orb::after{content:'';position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.18) 0,transparent 60%)}.center-label{font-family:var(--font-heading);font-size:.85rem;font-weight:600;color:var(--text-primary)}.center-tagline{font-size:.7rem;color:var(--text-muted);margin-top:.2rem;line-height:1.4}.project-node{position:absolute;--node-scale:1;transform:translate(-50%,-50%);z-index:10;cursor:pointer;transition:transform .45s cubic-bezier(.34, 1.56, .64, 1),opacity .35s,z-index}.orbiting-node{position:absolute;width:0;height:0;transform:translate(-50%,-50%) rotate(var(--orbit-angle));transform-origin:center;animation:orbitSpin var(--orbit-duration,20s) linear infinite;z-index:8}.orbiting-arm{position:relative;width:0;height:0;transform:translateX(var(--orbit-radius))}.orbiting-stable{position:relative;width:0;height:0;animation:orbitCounter var(--orbit-duration,20s) linear infinite;transform-origin:center}@keyframes orbitSpin{from{transform:translate(-50%,-50%) rotate(var(--orbit-angle))}to{transform:translate(-50%,-50%) rotate(calc(360deg + var(--orbit-angle)))}}@keyframes orbitCounter{from{transform:rotate(calc(-1 * var(--orbit-angle)))}to{transform:rotate(calc(-360deg - (var(--orbit-angle))))}}.project-node:hover{transform:translate(-50%,-50%) scale(1.15);z-index:20}.project-node.search-match{z-index:25}.project-node.search-match .node-card{transform:scale(calc(var(--node-scale,1) * 1.18))}.project-node.search-match .node-thumb{border-color:var(--accent);box-shadow:0 0 0 6px rgba(216,138,31,.2),0 0 0 12px rgba(216,138,31,.2),0 0 30px var(--accent-glow)}.radial-container.search-active .project-node.search-nonmatch{opacity:.28;transform:translate(-50%,-50%) scale(.9)}.radial-container.search-active .project-node.search-nonmatch .node-thumb{filter:grayscale(.35) saturate(.7)}.radial-container.search-active .project-node.search-match{opacity:1}.node-card{width:var(--planet-base-size,100px);text-align:center;position:relative;transform:scale(var(--node-scale,1));transition:transform .45s cubic-bezier(.34, 1.56, .64, 1)}.radial-container.orbit-zoom .orbit-muted{opacity:.35}.radial-container.orbit-zoom .project-node.orbit-muted{transform:translate(-50%,-50%) scale(.92)}.radial-container.orbit-zoom .project-node.orbit-focus{transform:translate(-50%,-50%) scale(1.08);z-index:32}.node-thumb{width:calc(var(--planet-base-size,100px) * .76);height:calc(var(--planet-base-size,100px) * .76);margin:0 auto;border-radius:50%;overflow:hidden;border:3px solid var(--border-color);background:var(--bg-card);transition:border-color var(--transition),box-shadow var(--transition);position:relative}.project-node:hover .node-thumb{border-color:var(--accent);box-shadow:0 0 24px var(--accent-glow),0 4px 20px rgba(0,0,0,.4)}.node-thumb img{width:100%;height:100%;object-fit:cover}.node-thumb .img-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--bg-secondary),var(--bg-card));color:var(--text-muted);font-size:.6rem;text-align:center;padding:.25rem}.node-label{margin-top:.45rem;font-size:calc(.72rem * var(--orbit-mobile-text-scale, 1));font-weight:600;color:var(--text-primary);line-height:1.25;transition:color var(--transition);text-shadow:0 1px 6px rgba(0,0,0,.7)}.project-node:hover .node-label{color:var(--accent-light)}.node-date{font-size:calc(.58rem * var(--orbit-mobile-text-scale, 1));color:var(--text-muted);margin-top:.1rem}.node-summary{display:none}.radial-container.node-display-card .node-card{width:var(--orbit-card-base-size,230px);text-align:left;background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border-color);overflow:hidden;box-shadow:0 8px 24px rgba(0,0,0,.28)}.radial-container.node-display-card .node-thumb{width:100%;height:calc(var(--orbit-card-base-size,230px) * .54);border-radius:0;border:none;margin:0}.radial-container.node-display-card .node-label{margin-top:.7rem;padding:0 .8rem;font-family:var(--font-heading);font-size:calc(.95rem * var(--orbit-mobile-text-scale, 1));text-shadow:none}.radial-container.node-display-card .node-date{margin-top:.25rem;padding:0 .8rem;font-size:calc(.7rem * var(--orbit-mobile-text-scale, 1))}.radial-container.node-display-card .node-summary{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:.45rem;padding:0 .8rem .9rem;color:var(--text-secondary);font-size:var(--desc-font-size-sm);line-height:1.45}.radial-container.node-display-card .project-node:hover{transform:translate(-50%,-50%) scale(1.06)}.radial-container.node-display-card .project-node:hover .node-thumb{border-color:transparent;box-shadow:none}.node-connector{position:absolute;width:1px;background:linear-gradient(to bottom,var(--accent-glow),transparent);top:50%;left:50%;transform-origin:top center;pointer-events:none;opacity:0;transition:opacity var(--transition)}.project-node:hover .node-connector{opacity:1}.tag-pills{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center}.tag-pill{display:inline-block;font-size:.65rem;font-weight:500;color:var(--accent-light);background:linear-gradient(120deg,color-mix(in srgb,var(--accent-hot) 12%,transparent),color-mix(in srgb,var(--accent) 14%,transparent) 52%,color-mix(in srgb,var(--accent-cool) 12%,transparent));padding:.12rem .5rem;border-radius:20px;border:1px solid rgba(216,138,31,.34);transition:background var(--transition-fast),border-color var(--transition-fast);white-space:nowrap}.tag-pill:hover{background:linear-gradient(120deg,color-mix(in srgb,var(--accent-hot) 22%,transparent),color-mix(in srgb,var(--accent) 24%,transparent) 48%,color-mix(in srgb,var(--accent-cool) 18%,transparent));border-color:rgba(194,92,45,.72)}.direct-link-badge{display:inline-flex;align-items:center;gap:.28rem;font-size:.64rem;font-weight:700;color:#7cf2ae;background:rgba(10,22,15,.92);border:1px solid rgba(120,235,164,.5);border-radius:999px;padding:.08rem .45rem;white-space:nowrap}.direct-link-badge::before{content:'↗';font-size:.72em}.project-node.is-direct-link .node-thumb{border-color:#27c46b;box-shadow:0 0 0 4px rgba(39,196,107,.2),0 0 18px rgba(39,196,107,.2)}.project-node.is-direct-link .node-label::after{content:' ↗';color:#27c46b;font-weight:700}.grid-card-body .tag-pills{margin-top:.5rem}.project-meta .tag-pills{margin-top:0}.grid-fallback{display:none;width:min(var(--home-shell-max-width),100%);padding:1.5rem 0 2rem;max-width:none;margin:0 auto}.grid-fallback .grid-center-image-wrap,.home-tabs .grid-center-image-wrap{display:flex;justify-content:center;margin:0 auto .9rem}.grid-fallback .grid-center-image,.home-tabs .grid-center-image{width:auto;max-width:100%;max-height:160px;height:auto;border-radius:var(--radius-sm);border:2px solid var(--border-color);object-fit:cover}.grid-fallback .grid-title,.home-tabs .grid-title{font-family:var(--font-heading);font-size:1.8rem;text-align:center;margin-bottom:.5rem}.grid-fallback .grid-desc,.home-tabs .grid-desc{text-align:center;color:var(--text-secondary);font-size:.9rem;margin-bottom:2rem}.grid-fallback .grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(calc(260px * var(--home-card-scale,1)),1fr));gap:1.25rem}.grid-fallback.is-list .grid{grid-template-columns:1fr;gap:.85rem}.grid-fallback.is-list .grid-card{display:flex;align-items:stretch}.grid-fallback.is-list .grid-card-img-wrap{width:170px;height:auto;flex-shrink:0}.grid-fallback.is-list .grid-card-body{flex:1}.grid-fallback.is-list .grid-card:hover{transform:translateX(4px)}.grid-fallback.is-list.search-active .grid-card.search-nonmatch{transform:scale(.98)}.grid-fallback.is-masonry .grid{display:grid;grid-template-columns:repeat(var(--home-masonry-columns,3),minmax(0,1fr));gap:1.25rem}.grid-fallback.is-masonry .grid-card{width:100%}.grid-fallback.is-masonry .grid-card-img-wrap{height:calc(170px * var(--home-masonry-card-scale,1))}.grid-fallback.is-masonry .grid-card:hover{transform:translateY(-4px)}.grid-fallback.is-masonry.search-active .grid-card.search-nonmatch{transform:none}.grid-fallback.is-kanban .kanban-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(calc(260px * var(--home-kanban-card-scale,1)),1fr));gap:1rem;align-items:start}.grid-fallback.is-kanban .kanban-column{background:color-mix(in srgb,var(--bg-card) 72%,transparent);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:.85rem .8rem;min-height:120px;transition:opacity var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.grid-fallback.is-kanban .kanban-column-title{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-family:var(--font-heading);font-size:1rem;color:var(--text-primary);margin-bottom:.7rem;padding-bottom:.45rem;border-bottom:1px solid var(--border-subtle)}.grid-fallback.is-kanban .kanban-column-count{font-size:.68rem;color:var(--text-secondary);border:1px solid var(--border-subtle);border-radius:999px;padding:.1rem .44rem;letter-spacing:.02em}.grid-fallback.is-kanban .kanban-column-cards{display:grid;gap:.75rem}.grid-fallback.is-kanban .kanban-column-footer{margin-top:.7rem;display:flex;justify-content:center}.grid-fallback.is-kanban .kanban-column-more{border:1px dashed var(--border-color);background:color-mix(in srgb,var(--bg-card) 82%,transparent);color:var(--text-secondary);font-size:.72rem;font-weight:600;letter-spacing:.02em;border-radius:999px;padding:.38rem .72rem;cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-fast),background var(--transition-fast)}.grid-fallback.is-kanban .kanban-column-more:focus-visible,.grid-fallback.is-kanban .kanban-column-more:hover{border-color:var(--accent);color:var(--text-primary);outline:0}.grid-fallback.is-kanban .kanban-column.has-hidden-cards:not(.is-expanded) .kanban-column-cards{-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,1) 82%,rgba(0,0,0,0.35) 100%);mask-image:linear-gradient(to bottom,rgba(0,0,0,1) 82%,rgba(0,0,0,0.35) 100%)}.grid-fallback.is-kanban .kanban-column .grid-card{width:100%}.grid-fallback.is-kanban .kanban-column .grid-card-img-wrap{height:calc(148px * var(--home-kanban-card-scale,1))}.grid-fallback.is-kanban.search-active .kanban-column.search-nonmatch{opacity:.45}.grid-fallback.is-kanban.search-active .kanban-column.search-match{border-color:var(--accent);box-shadow:0 0 0 3px rgba(216,138,31,.2)}.grid-fallback.is-carousel .carousel-root{position:relative;width:100%;margin:0 auto}.grid-fallback.is-carousel .carousel-viewport{overflow:hidden;border-radius:var(--radius)}.grid-fallback.is-carousel .carousel-track{display:flex;transition:transform .45s;will-change:transform}.grid-fallback.is-carousel .carousel-slide{flex:0 0 100%;min-width:100%;padding:.2rem .2rem .65rem;transition:opacity var(--transition-fast),transform var(--transition-fast)}.grid-fallback.is-carousel .carousel-slide .grid-card{width:min(100%,calc(620px * var(--home-carousel-card-scale,1)));margin:0 auto}.grid-fallback.is-carousel .carousel-slide .grid-card-img-wrap{height:calc(240px * var(--home-carousel-card-scale,1))}.grid-fallback.is-carousel.search-active .carousel-slide.search-nonmatch{opacity:.3}.grid-fallback.is-carousel.search-active .carousel-slide.search-nonmatch .grid-card-img-wrap img{filter:grayscale(.35) saturate(.7)}.grid-fallback.is-carousel.search-active .carousel-slide.search-match{opacity:1}.grid-fallback.is-carousel .carousel-controls{position:absolute;top:50%;left:0;right:0;transform:translateY(-50%);pointer-events:none}.grid-fallback.is-carousel .carousel-nav{pointer-events:auto;position:absolute;width:38px;height:38px;border-radius:999px;border:1px solid var(--border-color);background:var(--surface-tint-strong);color:var(--text-primary);font-size:1.35rem;line-height:1;cursor:pointer;transition:all var(--transition-fast)}.grid-fallback.is-carousel .carousel-nav:hover{border-color:var(--accent);box-shadow:0 0 0 3px rgba(216,138,31,.2)}.grid-fallback.is-carousel .carousel-prev{left:-.25rem}.grid-fallback.is-carousel .carousel-next{right:-.25rem}.grid-fallback.is-carousel .carousel-dots{display:flex;justify-content:center;flex-wrap:wrap;gap:.38rem;margin-top:.85rem}.grid-fallback.is-carousel .carousel-dot{width:9px;height:9px;border-radius:999px;border:1px solid var(--border-color);background:var(--bg-card);cursor:pointer;padding:0;transition:all var(--transition-fast)}.grid-fallback.is-carousel .carousel-dot.is-active{background:var(--accent);border-color:var(--accent);transform:scale(1.08)}.grid-fallback.is-map .map-root{width:100%;margin:0 auto;display:flex;flex-direction:column;gap:.9rem}.grid-fallback.is-map .map-primary-root,.grid-fallback.is-map .map-secondary-root{background:color-mix(in srgb,var(--bg-card) 68%,transparent);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:.72rem;box-shadow:0 10px 26px rgba(6,8,22,.28)}.grid-fallback.is-map .map-legend{margin-top:.05rem;display:flex;flex-wrap:wrap;gap:.55rem;align-items:center}.grid-fallback.is-map .map-legend-item{display:inline-flex;align-items:center;gap:.45rem;color:var(--text-secondary);background:rgba(16,20,42,.52);border:1px solid var(--border-subtle);border-radius:999px;padding:.3rem .55rem;font-size:.75rem;letter-spacing:.02em}.grid-fallback.is-map .map-legend-dot{width:10px;height:10px;border-radius:999px;box-shadow:0 0 0 3px rgba(216,138,31,.2)}.grid-fallback.is-map .map-legend-dot-default{background:var(--accent)}@supports (content-visibility:auto){.grid-card,.item-card,.project-directory-gallery-item,.project-list-entry{content-visibility:auto;contain-intrinsic-size:320px}}.grid-fallback.is-map .map-legend-dot-direct-link{background:#27c46b;box-shadow:0 0 0 3px rgba(39,196,107,.22)}.grid-fallback.is-map .map-legend-dot-search-match{background:#ffb020;box-shadow:0 0 0 3px rgba(255,176,32,.24)}.grid-fallback.is-map .map-section-title{margin:0 0 .55rem;color:var(--text-primary);font-size:.78rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;opacity:.9}.grid-fallback.is-map .map-canvas{position:relative;width:100%;height:var(--home-map-height,clamp(360px,58vh,760px));border-radius:var(--radius);border:1px solid var(--border-color);background:radial-gradient(circle at 22% 36%,rgba(216,138,31,.2),transparent 46%),radial-gradient(circle at 62% 42%,rgba(216,138,31,.2),transparent 42%),linear-gradient(180deg,rgba(16,22,46,.95),rgba(10,13,30,.95));box-shadow:0 10px 24px rgba(6,8,20,.34);overflow:hidden}.grid-fallback.is-map .map-secondary-canvas{position:relative;width:100%;height:var(--home-map-secondary-height,clamp(220px,36vh,460px));border-radius:var(--radius-sm);border:1px solid var(--border-color);background:linear-gradient(180deg,rgba(7,8,20,.96),rgba(4,6,16,.98));box-shadow:0 10px 24px rgba(6,8,20,.3);overflow:hidden}.grid-fallback.is-map .map-canvas::before{content:'';position:absolute;inset:0;z-index:0;background-image:linear-gradient(to right,rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.05) 1px,transparent 1px);background-size:calc(100% / 12) calc(100% / 6);pointer-events:none}.grid-fallback.is-map .map-secondary-canvas::before{content:'';position:absolute;inset:0;z-index:0;background-image:radial-gradient(circle at 18% 22%,rgba(126,109,251,.16),transparent 34%),radial-gradient(circle at 72% 64%,rgba(106,224,255,.12),transparent 38%);pointer-events:none}.grid-fallback.is-map .map-world{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.94}.grid-fallback.is-map.map-drift-enabled .map-world{animation:40s ease-in-out infinite alternate mapWorldDrift}.grid-fallback.is-map .map-world svg{width:100%;height:100%}.grid-fallback.is-map .map-world .continent{fill:rgba(148,176,232,0.27);stroke:rgba(206,224,255,0.52);stroke-width:1.25;vector-effect:non-scaling-stroke}.grid-fallback.is-map .map-world .ocean-shade{opacity:.78}.grid-fallback.is-map .map-world .island{fill:rgba(172,194,238,0.34);stroke:rgba(202,221,255,0.58);stroke-width:1.1;vector-effect:non-scaling-stroke}.grid-fallback.is-map .map-world .shore{fill:none;stroke:rgba(234,242,255,0.44);stroke-width:.8;stroke-linecap:round;vector-effect:non-scaling-stroke;opacity:.72}.grid-fallback.is-map .map-world .polar{fill:rgba(214,228,255,0.2);stroke:rgba(224,236,255,0.36);stroke-width:1;vector-effect:non-scaling-stroke}.grid-fallback.is-map .map-sky{position:absolute;inset:0;z-index:1;pointer-events:none}.grid-fallback.is-map.map-drift-enabled .map-sky{animation:48s ease-in-out infinite alternate mapSkyDrift}.grid-fallback.is-map .map-sky svg{width:100%;height:100%}.grid-fallback.is-map .map-sky .star{fill:rgba(234,239,255,0.92)}.grid-fallback.is-map .map-sky .nebula{fill:rgba(133,129,255,0.34)}.grid-fallback.is-map .map-empty{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:3;max-width:min(90%,520px);text-align:center;color:var(--text-secondary);font-size:.92rem;line-height:1.5}.grid-fallback.is-map .map-pin{position:absolute;width:var(--home-map-pin-size,14px);height:var(--home-map-pin-size,14px);transform:translate(-50%,-50%);border:none;border-radius:50%;background:0 0;cursor:pointer;padding:0;z-index:2}.grid-fallback.is-map .map-pin-fallback{z-index:3}.grid-fallback.is-map .map-pin-dot{display:block;position:relative;width:100%;height:100%;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px rgba(216,138,31,.2),0 0 20px var(--accent-glow);transition:transform var(--transition-fast),box-shadow var(--transition-fast),opacity var(--transition-fast)}.grid-fallback.is-map .map-pin-direct-link .map-pin-dot{background:#27c46b;box-shadow:0 0 0 4px rgba(39,196,107,.24),0 0 20px rgba(39,196,107,.32)}.grid-fallback.is-map.map-pulse-enabled .map-pin .map-pin-dot::after{content:'';position:absolute;top:50%;left:50%;width:100%;height:100%;border-radius:50%;border:2px solid rgba(162,155,254,.72);transform:translate(-50%,-50%) scale(1);opacity:.75;animation:1.7s ease-out infinite mapPinPulse;pointer-events:none}.grid-fallback.is-map.map-pulse-enabled .map-pin-direct-link .map-pin-dot::after{border-color:rgba(120,235,164,.76)}.grid-fallback.is-map.map-pulse-enabled .map-pin-fallback .map-pin-dot::after{border-color:rgba(200,212,255,.72)}@keyframes mapPinPulse{0%{transform:translate(-50%,-50%) scale(.8);opacity:.74}100%,70%{transform:translate(-50%,-50%) scale(2.35);opacity:0}}@keyframes mapWorldDrift{0%{transform:translate3d(0,0,0) scale(1)}100%{transform:translate3d(-8px,5px,0) scale(1.008)}}@keyframes mapSkyDrift{0%{transform:translate3d(0,0,0) scale(1)}100%{transform:translate3d(10px,-6px,0) scale(1.01)}}@media (prefers-reduced-motion:reduce){#home-view.home-display-planets #radial-container::before,#home-view.home-display-planets::after,#home-view.home-display-planets::before,.grid-fallback.is-map.map-drift-enabled .map-sky,.grid-fallback.is-map.map-drift-enabled .map-world,.orbit-sky-star{animation:none}}.grid-fallback.is-map .map-pin:hover .map-pin-dot{transform:scale(1.12)}.grid-fallback.is-map .map-pin-direct-link:hover .map-pin-dot{box-shadow:0 0 0 5px rgba(39,196,107,.26),0 0 24px rgba(39,196,107,.38)}.grid-fallback.is-map.search-active .map-pin.search-nonmatch .map-pin-dot{opacity:.32}.grid-fallback.is-map.search-active .map-pin.search-match .map-pin-dot{background:#ffb020;box-shadow:0 0 0 5px rgba(255,176,32,.3),0 0 24px rgba(255,176,32,.42)}.grid-fallback.is-map.map-pulse-enabled.search-active .map-pin.search-match .map-pin-dot::after{border-color:rgba(255,198,92,.82)}.grid-fallback.is-map .map-pin-fallback .map-pin-dot{background:color-mix(in srgb,var(--accent-light) 72%,#fff 28%);box-shadow:0 0 0 4px rgba(162,155,254,.24),0 0 24px rgba(162,155,254,.32)}.grid-fallback.is-map .map-pin-fallback.map-pin-direct-link .map-pin-dot{background:#27c46b;box-shadow:0 0 0 4px rgba(39,196,107,.24),0 0 24px rgba(39,196,107,.32)}.grid-fallback.is-map.map-pulse-enabled .map-pin-fallback.map-pin-direct-link .map-pin-dot::after{border-color:rgba(120,235,164,.76)}.grid-fallback.is-spotlight .spotlight-root{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(240px,0.9fr);gap:.9rem;align-items:stretch}.grid-fallback.is-spotlight .spotlight-hero{background:color-mix(in srgb,var(--bg-card) 72%,transparent);border:1px solid var(--border-color);border-radius:var(--radius);overflow:hidden;cursor:pointer;display:grid;grid-template-rows:minmax(220px,1fr) auto;transition:border-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.grid-fallback.is-spotlight .spotlight-hero:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 10px 30px rgba(8,10,28,.34)}.grid-fallback.is-spotlight .spotlight-hero.is-direct-link{border-color:rgba(39,196,107,.55);box-shadow:0 0 0 2px rgba(39,196,107,.14)}.grid-fallback.is-spotlight .spotlight-hero-media{position:relative;overflow:hidden;background:var(--bg-secondary)}.grid-fallback.is-spotlight .spotlight-hero-media img{width:100%;height:100%;min-height:220px;object-fit:cover}.grid-fallback.is-spotlight .spotlight-hero-body{padding:.9rem .95rem .95rem;display:flex;flex-direction:column;gap:.45rem}.grid-fallback.is-spotlight .spotlight-hero-title{font-family:var(--font-heading);font-size:1.25rem;line-height:1.2;color:var(--text-primary)}.grid-fallback.is-spotlight .spotlight-hero-date{display:inline-flex;align-items:center;gap:.35rem;font-size:.74rem;color:var(--text-muted)}.grid-fallback.is-spotlight .spotlight-hero-summary{color:var(--text-secondary);font-size:var(--desc-font-size-sm);line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.grid-fallback.is-spotlight .spotlight-hero-cta{margin-top:auto;height:34px;padding:0 .85rem;border-radius:999px;border:1px solid var(--border-color);background:linear-gradient(118deg,color-mix(in srgb,var(--accent-hot) 16%,transparent),color-mix(in srgb,var(--accent) 24%,transparent) 52%,color-mix(in srgb,var(--accent-cool) 14%,transparent));color:var(--text-primary);font-size:.76rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;align-self:flex-start;transition:all var(--transition-fast)}.grid-fallback.is-spotlight .spotlight-hero-cta:hover{border-color:var(--accent);background:linear-gradient(118deg,color-mix(in srgb,var(--accent-hot) 28%,transparent),color-mix(in srgb,var(--accent) 30%,transparent) 52%,color-mix(in srgb,var(--accent-cool) 22%,transparent));box-shadow:0 0 0 3px rgba(216,138,31,.18),0 0 20px color-mix(in srgb,var(--accent-cool) 16%,transparent)}.grid-fallback.is-spotlight .spotlight-rail{background:color-mix(in srgb,var(--bg-card) 72%,transparent);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.55rem;display:flex;flex-direction:column;gap:.45rem;overflow:auto;max-height:min(540px,70vh)}.grid-fallback.is-spotlight .spotlight-rail-item{width:100%;border-radius:var(--radius-xs);border:1px solid var(--border-subtle);background:var(--surface-tint-subtle);padding:calc(.32rem * var(--home-spotlight-rail-scale,1));display:flex;align-items:center;gap:.5rem;cursor:pointer;color:var(--text-secondary);transition:all var(--transition-fast)}.grid-fallback.is-spotlight .spotlight-rail-item:hover{border-color:var(--border-color);color:var(--text-primary);transform:translateX(1px)}.grid-fallback.is-spotlight .spotlight-rail-item.is-active{border-color:var(--accent);background:rgba(216,138,31,.2);color:var(--text-primary);box-shadow:0 0 0 2px rgba(216,138,31,.2)}.grid-fallback.is-spotlight .spotlight-rail-item.is-direct-link{border-color:rgba(39,196,107,.5)}.grid-fallback.is-spotlight .spotlight-rail-item.is-direct-link .spotlight-rail-label::after{content:' ↗';color:#27c46b}.grid-fallback.is-spotlight.search-active .spotlight-rail-item.search-nonmatch{opacity:.34}.grid-fallback.is-spotlight .spotlight-rail-thumb{width:calc(56px * var(--home-spotlight-rail-scale,1));height:calc(42px * var(--home-spotlight-rail-scale,1));border-radius:8px;overflow:hidden;border:1px solid var(--border-subtle);background:var(--bg-secondary);flex-shrink:0}.grid-fallback.is-spotlight .spotlight-rail-thumb img{width:100%;height:100%;object-fit:cover}.grid-fallback.is-spotlight .spotlight-rail-label{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:calc(.8rem * var(--home-spotlight-rail-scale, 1));font-weight:600}.grid-fallback.is-mindmap .mindmap-root{position:relative;width:100%;flex:1 1 auto;height:max(560px,calc(100dvh - 220px));min-height:560px;margin:0 auto;border-radius:var(--radius);border:1px solid var(--border-subtle);background:color-mix(in srgb,var(--bg-card) 68%,transparent);box-shadow:0 12px 30px rgba(8,10,28,.34);overflow:hidden;cursor:grab;touch-action:none}.grid-fallback.is-mindmap{display:flex!important;flex-direction:column;min-height:calc(100dvh - 108px)}.grid-fallback.is-mindmap .grid-desc{margin-bottom:1rem}.grid-fallback.is-mindmap .mindmap-toolbar{position:absolute;top:.6rem;right:.6rem;z-index:4;display:flex;gap:.4rem}.grid-fallback.is-mindmap .mindmap-reset-btn{height:30px;padding:0 .72rem;border-radius:999px;border:1px solid var(--border-color);background:var(--surface-tint-medium);color:var(--text-secondary);font-size:.72rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast)}.grid-fallback.is-mindmap .mindmap-reset-btn:hover{color:var(--text-primary);border-color:var(--accent);background:rgba(216,138,31,.2);box-shadow:0 0 0 3px rgba(216,138,31,.2)}.grid-fallback.is-mindmap .mindmap-hard-reset-btn{border-color:rgba(255,138,101,.5);background:rgba(255,138,101,.14)}.grid-fallback.is-mindmap .mindmap-hard-reset-btn:hover{border-color:rgba(255,138,101,.9);background:rgba(255,138,101,.24);box-shadow:0 0 0 3px rgba(255,138,101,.2)}.grid-fallback.is-mindmap .mindmap-stage{position:absolute;inset:0;transform-origin:50% 50%;transition:transform .28s;z-index:1}.grid-fallback.is-mindmap .mindmap-tag.is-collapsed{border-style:dashed;box-shadow:0 0 0 3px rgba(216,138,31,.2)}.grid-fallback.is-mindmap .mindmap-link.is-collapsed-child,.grid-fallback.is-mindmap .mindmap-node.is-collapsed-child{display:none}.grid-fallback.is-mindmap .mindmap-stage.is-dragging{transition:none}.grid-fallback.is-mindmap .mindmap-root.is-dragging{cursor:grabbing}.grid-fallback.is-mindmap .mindmap-links,.grid-fallback.is-mindmap .mindmap-nodes{position:absolute;inset:0;width:100%;height:100%}.grid-fallback.is-mindmap .mindmap-links{z-index:1;pointer-events:none}.grid-fallback.is-mindmap .mindmap-link{stroke:color-mix(in srgb,var(--accent-light) 50%,var(--border-color));stroke-width:.22;opacity:.72;transition:opacity var(--transition-fast),stroke var(--transition-fast)}.grid-fallback.is-mindmap .mindmap-link-center{stroke:color-mix(in srgb,var(--accent) 70%,var(--accent-light))}.grid-fallback.is-mindmap .mindmap-nodes{z-index:2}.grid-fallback.is-mindmap .mindmap-node{position:absolute;transform:translate(-50%,-50%);border-radius:999px;border:1px solid var(--border-color);background:var(--surface-tint-node);color:var(--text-primary);padding:0 .75rem;height:34px;display:inline-flex;align-items:center;justify-content:center;cursor:grab;white-space:nowrap;max-width:220px;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:none;user-select:none;transition:transform var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),opacity var(--transition-fast)}.grid-fallback.is-mindmap .mindmap-node.is-node-dragging{cursor:grabbing}.grid-fallback.is-mindmap .mindmap-center{height:42px;padding:0 1rem;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;font-weight:700;border-color:var(--accent);background:color-mix(in srgb,var(--bg-secondary) 80%,var(--accent) 20%);box-shadow:0 0 0 4px rgba(216,138,31,.2),0 0 18px rgba(216,138,31,.2)}.grid-fallback.is-mindmap .mindmap-tag{height:calc(34px * var(--home-mindmap-tag-scale,1));font-size:calc(.78rem * var(--home-mindmap-tag-scale, 1));font-weight:700;color:var(--accent-light);z-index:1;border-color:var(--accent);background:color-mix(in srgb,var(--bg-secondary) 84%,var(--accent) 16%)}.grid-fallback.is-mindmap .mindmap-project{height:calc(32px * var(--home-mindmap-project-scale,1));font-size:calc(.73rem * var(--home-mindmap-project-scale, 1));max-width:calc(190px * var(--home-mindmap-project-scale,1))}.grid-fallback.is-mindmap .mindmap-project.is-direct-link{border-color:rgba(39,196,107,.62);background:color-mix(in srgb,var(--bg-secondary) 76%,#27c46b 24%)}.grid-fallback.is-mindmap .mindmap-node:hover{transform:translate(-50%,-50%) scale(1.05);border-color:var(--accent);box-shadow:0 0 0 3px rgba(216,138,31,.2)}.grid-fallback.is-mindmap.search-active .mindmap-link.search-nonmatch,.grid-fallback.is-mindmap.search-active .mindmap-node.search-nonmatch{opacity:.24}.grid-fallback.is-mindmap.search-active .mindmap-node.search-match{border-color:#27c46b;box-shadow:0 0 0 3px rgba(39,196,107,.18)}.grid-fallback.is-mindmap.search-active .mindmap-link.search-match{stroke:#27c46b;opacity:.72}.grid-fallback.is-mindmap.has-focused-branch .mindmap-link,.grid-fallback.is-mindmap.has-focused-branch .mindmap-node{opacity:.2}.grid-fallback.is-mindmap.has-focused-branch .mindmap-node.is-focused-branch{opacity:1;border-color:var(--accent);box-shadow:0 0 0 3px rgba(216,138,31,.2)}.grid-fallback.is-mindmap.has-focused-branch .mindmap-link.is-focused-branch{opacity:.84;stroke:var(--accent-light)}.grid-fallback.is-timeline .timeline-root{position:relative;display:flex;flex-direction:column;gap:1.2rem;padding:.2rem 0}.grid-fallback.is-timeline .timeline-root::before{content:'';position:absolute;left:50%;top:2px;bottom:2px;width:2px;background:linear-gradient(to bottom,var(--accent-glow),var(--border-subtle));opacity:.9;transform:translateX(-50%)}.timeline-group{position:relative;background:color-mix(in srgb,var(--bg-card) 72%,transparent);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:.85rem .95rem .95rem;width:calc(50% - 1.35rem)}.timeline-group.has-group-label{padding-top:2.9rem}.timeline-group.has-secondary-label{padding-top:2.35rem}.timeline-group.has-main-and-secondary{padding-top:4.05rem}.timeline-group::before{content:'';position:absolute;top:1.05rem;width:11px;height:11px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px rgba(216,138,31,.2),0 0 16px var(--accent-glow)}.timeline-group.timeline-left{margin-right:auto}.timeline-group.timeline-left::before{right:calc(-1 * var(--home-timeline-group-label-offset,1.7rem))}.timeline-group.timeline-right{margin-left:auto}.timeline-group.timeline-right::before{top:1.05rem;left:calc(-1 * var(--home-timeline-group-label-offset,1.7rem))}.timeline-group-title{position:absolute;top:calc(-.9rem * var(--home-timeline-group-label-scale,1));font-family:var(--font-heading);font-size:calc(1.12rem * var(--home-timeline-group-label-scale, 1));font-weight:var(--home-timeline-group-label-weight,700);letter-spacing:.03em;margin-bottom:0;color:var(--text-primary);display:inline-flex;align-items:center;justify-content:center;min-height:calc(34px * var(--home-timeline-group-label-scale,1));min-width:calc(74px * var(--home-timeline-group-label-scale,1));padding:0 calc(.85rem * var(--home-timeline-group-label-scale,1));border-radius:999px;border:1px solid var(--accent);background:color-mix(in srgb,var(--bg-secondary) 80%,var(--accent) 20%);box-shadow:0 0 0 4px rgba(216,138,31,.2),0 0 18px rgba(216,138,31,.2);z-index:3}.timeline-group-title.milestone-label{font-size:calc(.82 * 1.12rem * var(--home-timeline-group-label-scale, 1));min-height:calc(.82 * 34px * var(--home-timeline-group-label-scale,1));min-width:calc(.82 * 74px * var(--home-timeline-group-label-scale,1));padding:0 calc(.82 * .85rem * var(--home-timeline-group-label-scale,1));letter-spacing:.04em}.timeline-group-title.main-milestone-label{font-size:calc(.94 * 1.12rem * var(--home-timeline-group-label-scale, 1));min-height:calc(.94 * 34px * var(--home-timeline-group-label-scale,1));min-width:calc(.94 * 74px * var(--home-timeline-group-label-scale,1));padding:0 calc(.94 * .85rem * var(--home-timeline-group-label-scale,1))}.timeline-group-title.secondary-milestone-label{font-size:calc(.72 * 1.12rem * var(--home-timeline-group-label-scale, 1) * var(--home-timeline-secondary-milestone-scale, 1));min-height:calc(.72 * 34px * var(--home-timeline-group-label-scale,1) * var(--home-timeline-secondary-milestone-scale,1));min-width:calc(.72 * 74px * var(--home-timeline-group-label-scale,1) * var(--home-timeline-secondary-milestone-scale,1));padding:0 calc(.72 * .85rem * var(--home-timeline-group-label-scale,1) * var(--home-timeline-secondary-milestone-scale,1));opacity:.96}.timeline-group.has-main-and-secondary .timeline-group-title.secondary-milestone-label{top:calc(1.1rem * var(--home-timeline-group-label-scale,1))}.timeline-group.timeline-left .timeline-group-title{right:calc(-1 * var(--home-timeline-group-label-offset,1.7rem));transform:translate(50%,0)}.timeline-group.timeline-right .timeline-group-title{left:calc(-1 * var(--home-timeline-group-label-offset,1.7rem));transform:translate(-50%,0)}.timeline-group-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(calc(260px * var(--home-timeline-card-scale,1)),1fr));gap:.95rem}.timeline-group .grid-card{width:min(100%,calc(420px * var(--home-timeline-card-scale,1)))}.home-tabs{display:none;width:min(var(--home-shell-max-width),100%);margin:0 auto;padding:.5rem 0 1.25rem}.home-tabs-nav{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.home-tab-btn{height:34px;padding:0 .85rem;border-radius:999px;border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);font-size:.78rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.home-tab-btn:hover{color:var(--text-primary);border-color:rgba(194,92,45,.66);background:linear-gradient(110deg,color-mix(in srgb,var(--accent-hot) 14%,transparent),color-mix(in srgb,var(--accent) 16%,transparent) 50%,color-mix(in srgb,var(--accent-cool) 14%,transparent))}.home-tab-btn.is-active,.home-tabs.search-active .home-tab-btn.search-match{color:var(--text-primary);border-color:var(--accent);box-shadow:0 0 0 3px rgba(216,138,31,.2)}.home-tabs.search-active .home-tab-btn.search-nonmatch{opacity:.45}.home-tab-panel{display:none}.home-tab-panel.is-active{display:block}.home-tab-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(calc(260px * var(--home-tabs-card-scale,1)),1fr));gap:1.25rem}.home-tabs .home-tab-grid .grid-card-img-wrap{height:calc(170px * var(--home-tabs-card-scale,1))}.home-tabs.search-active .grid-card.search-nonmatch{opacity:.3;transform:scale(.96)}.home-tabs.search-active .grid-card.search-nonmatch .grid-card-img-wrap img{filter:grayscale(.35) saturate(.7)}.home-tabs.search-active .grid-card.search-match{opacity:1;border-color:var(--accent);box-shadow:0 0 0 4px rgba(216,138,31,.2),0 8px 24px rgba(216,138,31,.2)}.grid-card{background:var(--glass-panel);border-radius:var(--radius);overflow:hidden;cursor:pointer;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition),background var(--transition-fast);border:1px solid var(--border-color);position:relative;box-shadow:var(--glass-elevation);isolation:isolate;-webkit-backdrop-filter:blur(calc(var(--glass-blur) * 0.58)) saturate(var(--glass-saturate));backdrop-filter:blur(calc(var(--glass-blur) * 0.58)) saturate(var(--glass-saturate))}.grid-card::before{content:'';position:absolute;inset:0 0 auto 0;height:42%;pointer-events:none;background:linear-gradient(180deg,color-mix(in srgb,var(--glass-highlight) 58%,transparent),transparent 72%);opacity:.52}.grid-card::after{content:'';position:absolute;inset:auto -16% -36% auto;width:62%;aspect-ratio:1;border-radius:50%;pointer-events:none;background:radial-gradient(circle,color-mix(in srgb,var(--accent-cool) 28%,transparent),transparent 72%);opacity:.24;filter:blur(10px);z-index:-1}:root[data-theme=light] .grid-card::after{opacity:.14;filter:blur(8px)}:root[data-theme=light] .global-search-results-item:hover,:root[data-theme=light] .orbit-tag-project-item:hover{background:color-mix(in srgb,var(--accent) 10%,#fff)}:root[data-theme=light] .orbital-hub:hover{background:color-mix(in srgb,var(--accent) 16%,var(--glass-panel-strong))}:root[data-theme=light] #home-view.home-display-planets #radial-container::before,:root[data-theme=light] #home-view.home-display-planets::after,:root[data-theme=light] #home-view.home-display-planets::before{filter:invert(1) grayscale(1) brightness(.26);opacity:.52}:root[data-theme=light] .orbit-sky-star{background:rgba(52,56,63,.88);box-shadow:0 0 4px rgba(52,56,63,.32),0 0 8px rgba(52,56,63,.18)}:root[data-theme=light] .orbit-sky-star.is-hero{background:rgba(38,42,49,.94);box-shadow:0 0 7px rgba(38,42,49,.44),0 0 14px rgba(38,42,49,.26)}:root[data-theme=light] .directory-lightbox{background:rgba(244,246,252,.96)}:root[data-theme=light] .directory-lightbox-close,:root[data-theme=light] .directory-lightbox-details,:root[data-theme=light] .directory-lightbox-download,:root[data-theme=light] .directory-lightbox-index,:root[data-theme=light] .directory-lightbox-info-popin,:root[data-theme=light] .directory-lightbox-info-popin-close,:root[data-theme=light] .directory-lightbox-info-toggle,:root[data-theme=light] .directory-lightbox-nav{background:rgba(255,255,255,.96);border-color:rgba(148,156,194,.58)}:root[data-theme=light] .directory-lightbox-caption,:root[data-theme=light] .directory-lightbox-caption-comment,:root[data-theme=light] .directory-lightbox-caption-date{color:#303655}:root[data-theme=light] .directory-lightbox-caption-title{color:#171726}.grid-card:hover{transform:translateY(-7px) scale(1.01);box-shadow:var(--glass-elevation-hover),0 10px 28px color-mix(in srgb,var(--accent-hot) 28%,transparent),0 0 26px color-mix(in srgb,var(--accent-cool) 24%,transparent);border-color:rgba(194,92,45,.7);background:var(--glass-panel-strong)}.grid-card.search-match{border-color:var(--accent);box-shadow:0 0 0 3px rgba(216,138,31,.2)}.grid-card.is-direct-link{border-color:rgba(39,196,107,.52);box-shadow:0 0 0 2px rgba(39,196,107,.14),var(--shadow)}.grid-fallback.search-active .grid-card.search-nonmatch{opacity:.3;transform:scale(.96)}.grid-fallback.search-active .grid-card.search-nonmatch .grid-card-img-wrap img{filter:grayscale(.35) saturate(.7)}.grid-fallback.search-active .grid-card.search-match{opacity:1;border-color:var(--accent);box-shadow:0 0 0 4px rgba(216,138,31,.2),0 8px 24px rgba(216,138,31,.2)}.grid-card-img-wrap{position:relative;overflow:hidden;height:calc(170px * var(--home-card-scale,1))}.grid-card-img-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.grid-card:hover .grid-card-img-wrap img{transform:scale(1.06)}.grid-card-img-wrap .img-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--bg-secondary),var(--bg-card));color:var(--text-muted);font-size:.75rem}.grid-card-body{padding:1rem 1.1rem 1.1rem}.grid-card-title{font-family:var(--font-heading);font-size:1.05rem;font-weight:600;margin-bottom:.2rem}.grid-card-date{font-size:.72rem;color:var(--text-muted);margin-bottom:.5rem;display:flex;align-items:center;gap:.3rem}.grid-card-summary{font-size:var(--desc-font-size-sm);color:var(--text-secondary);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}#project-view{padding-top:70px}#project-view.active{display:block}#about-view{padding-top:70px}#about-view.active{display:block}.about-detail{max-width:900px;margin:0 auto;padding:1.5rem 2rem 3rem}.about-card{background:var(--bg-card);border-radius:var(--radius);padding:2rem;border:1px solid var(--border-color);box-shadow:0 10px 30px rgba(0,0,0,.3)}.about-image-wrap{display:flex;justify-content:center;margin-bottom:1.2rem}.about-image{width:auto;max-width:100%;max-height:280px;height:auto;object-fit:cover;border-radius:50%;border:3px solid var(--border-color);background:var(--bg-secondary)}.about-title{font-family:var(--font-heading);font-size:2rem;margin-bottom:.8rem}.about-description{font-size:var(--desc-font-size-lg);color:var(--text-secondary);line-height:1.8}.project-detail{max-width:1200px;margin:0 auto;padding:1.5rem 2rem 3rem}.project-detail.is-not-found .project-content,.project-detail.is-not-found .project-description{display:none}.back-link{display:inline-flex;align-items:center;gap:.4rem;color:var(--text-muted);font-size:.82rem;font-weight:500;margin-bottom:1.25rem;padding:.4rem .75rem .4rem .5rem;border-radius:var(--radius-xs);transition:all var(--transition);background:0 0;border:1px solid transparent}.back-link:hover{color:var(--accent-light);background:rgba(216,138,31,.2);border-color:var(--border-color);transform:translateX(-2px)}.project-header{margin-bottom:1.75rem}.project-header-description-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:1rem;padding:.72rem;border-radius:calc(var(--radius) + 2px);border:1px solid var(--border-color);background:var(--glass-panel);background-image:var(--glass-sheen);-webkit-backdrop-filter:blur(calc(var(--glass-blur) * 0.55)) saturate(var(--glass-saturate));backdrop-filter:blur(calc(var(--glass-blur) * 0.55)) saturate(var(--glass-saturate))}.project-header-copy{min-width:0;padding:.3rem .25rem .35rem}.project-title{font-family:var(--font-heading);font-size:2.2rem;font-weight:700;margin-bottom:.35rem;color:var(--text-primary);line-height:1.2}.project-header-thumb{margin:0;width:min(27vw,225px);height:auto;aspect-ratio:4/3;overflow:hidden;border-radius:12px;border:1px solid var(--border-color);box-shadow:0 10px 28px rgba(8,10,24,.28);align-self:flex-start;position:relative}.project-header-thumb::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(165deg,color-mix(in srgb,var(--glass-highlight) 46%,transparent),transparent 52%)}.project-header-thumb img{width:100%;height:100%;object-fit:cover;display:block}.project-meta{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;margin-bottom:.6rem}.project-date-badge{font-size:.72rem;color:var(--accent-light);background:rgba(216,138,31,.2);padding:.2rem .6rem;border-radius:20px;font-weight:500}.project-summary{font-size:var(--desc-font-size-md);color:var(--text-secondary);max-width:none;line-height:1.6;min-width:0;margin:.3rem 0 .25rem;padding:.2rem .15rem;align-self:center}.project-content{display:flex;gap:1.75rem;align-items:flex-start}.project-content.is-list-feed-layout{display:block}.project-content.is-list-feed-layout .project-gallery{width:100%;flex:none}.project-content.is-list-feed-layout .project-sidebar{width:100%;flex:none;margin-top:1rem}.project-gallery{flex:1 1 60%;min-width:0}.project-location-widget{position:relative;z-index:2;margin-bottom:.85rem;padding:.55rem;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:color-mix(in srgb,var(--bg-card) 72%,transparent)}.project-location-widget-heading{margin-bottom:.45rem;font-size:.76rem;font-weight:600;color:var(--text-secondary);letter-spacing:.02em}.project-location-map{position:relative;height:clamp(120px,20vw,170px);border-radius:var(--radius-xs);overflow:visible;border:1px solid var(--border-color);background:linear-gradient(180deg,rgba(22,30,60,.82) 0,rgba(15,20,42,.92) 100%)}.project-location-map::before{content:'';position:absolute;inset:0;z-index:0;background-image:linear-gradient(to right,rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.04) 1px,transparent 1px);background-size:calc(100% / 12) calc(100% / 6);pointer-events:none}.project-location-map .map-world{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.95}.project-location-map .map-world svg{width:100%;height:100%}.project-location-map .map-world .continent{fill:rgba(148,176,232,0.26);stroke:rgba(206,224,255,0.5);stroke-width:1.25;vector-effect:non-scaling-stroke}.project-location-map .map-world .ocean-shade{opacity:.75}.project-location-map .map-world .island{fill:rgba(172,194,238,0.34);stroke:rgba(202,221,255,0.56);stroke-width:1.1;vector-effect:non-scaling-stroke}.project-location-map .map-world .shore{fill:none;stroke:rgba(234,242,255,0.42);stroke-width:.8;stroke-linecap:round;vector-effect:non-scaling-stroke;opacity:.72}.project-location-map .map-world .polar{fill:rgba(214,228,255,0.18);stroke:rgba(224,236,255,0.34);stroke-width:1;vector-effect:non-scaling-stroke}.project-location-pin{position:absolute;z-index:2;transform:translate(-50%,-50%);width:16px;height:16px;pointer-events:auto}.project-location-pin-dot{display:block;position:relative;width:100%;height:100%;border-radius:50%;background:#27c46b;box-shadow:0 0 0 4px rgba(39,196,107,.24),0 0 20px rgba(39,196,107,.34)}.project-location-pin-dot::after{content:'';position:absolute;top:50%;left:50%;width:100%;height:100%;border-radius:50%;border:2px solid rgba(120,235,164,.76);transform:translate(-50%,-50%) scale(1);opacity:.74;animation:1.8s ease-out infinite mapPinPulse}.project-location-pin-tooltip{position:absolute;left:50%;bottom:calc(100% + 10px);transform:translateX(-50%) translateY(4px);font-size:.64rem;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;color:var(--text-primary);background:color-mix(in srgb,var(--bg-primary) 88%,transparent);border:1px solid var(--border-color);border-radius:10px;padding:.26rem .46rem;box-shadow:0 10px 30px color-mix(in srgb,var(--bg-primary) 58%,transparent);opacity:0;pointer-events:none;transition:opacity var(--transition-fast),transform var(--transition-fast);z-index:3}.project-location-pin.is-open .project-location-pin-tooltip,.project-location-pin:focus-visible .project-location-pin-tooltip,.project-location-pin:hover .project-location-pin-tooltip{opacity:1;transform:translateX(-50%) translateY(0)}.media-viewer{border-radius:var(--radius);overflow:hidden;background:var(--bg-secondary);border:1px solid var(--border-color);position:relative;min-height:280px}.media-viewer.is-empty{display:none;min-height:0;border:0;background:0 0}.media-viewer.is-list-feed{border:0;background:0 0;min-height:0;overflow:visible}.project-list-feed{display:flex;flex-direction:column;gap:1rem}.project-directory-gallery-root{display:flex;flex-direction:column;gap:.85rem}.project-directory-gallery-grid{display:grid;grid-template-columns:repeat(var(--project-directory-gallery-columns,4),minmax(0,1fr));gap:.85rem}.project-directory-gallery-item{background:var(--bg-card);border-radius:var(--radius-sm);border:1px solid var(--border-color);overflow:hidden}.project-directory-gallery-media{position:relative;width:100%;aspect-ratio:4/3;background:var(--bg-secondary)}.project-directory-gallery-meta-btn{width:1.75rem;height:1.75rem;align-self:flex-end;margin-top:.1rem;border-radius:999px;border:1px solid var(--border-color);background:color-mix(in srgb,var(--bg-card) 90%,transparent);color:var(--text-primary);font-size:.78rem;font-weight:700;line-height:1;cursor:pointer}.project-directory-gallery-meta-btn:focus-visible,.project-directory-gallery-meta-btn:hover{border-color:var(--accent);outline:0}.project-directory-gallery-meta-btn[aria-expanded=true]{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 20%,var(--bg-card))}.project-directory-gallery-open{width:100%;height:100%;display:block;border:0;padding:0;background:0 0;cursor:zoom-in}.project-directory-gallery-open:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.project-directory-gallery-media img,.project-directory-gallery-media video{width:100%;height:100%;object-fit:cover}body.directory-lightbox-open{overflow:hidden}.directory-lightbox{position:fixed;inset:0;z-index:220;display:flex;align-items:center;justify-content:center;padding:1rem;background:rgba(6,8,18,.88)}.directory-lightbox[hidden]{display:none!important}.directory-lightbox-dialog{position:relative;width:min(1200px,100%);max-height:calc(100vh - 2rem);display:flex;flex-direction:column;align-items:center;gap:.55rem}.directory-lightbox-media-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center;overflow:visible}.directory-lightbox-info-popin{position:absolute;inset:clamp(0.5rem,2.2vw,1.1rem);z-index:4;max-width:min(540px,100%);max-height:calc(100% - clamp(1rem,4vw,2rem));margin:auto;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--bg-card) 84%,transparent);backdrop-filter:blur(6px);padding:.6rem;text-align:left;overflow:auto;box-shadow:0 12px 28px rgba(0,0,0,.28)}.directory-lightbox-info-popin-head{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-bottom:.5rem}.directory-lightbox-info-popin-title{font-size:.76rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-primary)}.directory-lightbox-info-popin-close{width:1.7rem;height:1.7rem;border:1px solid var(--border-color);border-radius:999px;background:color-mix(in srgb,var(--bg-card) 90%,transparent);color:var(--text-primary);font-size:1.05rem;line-height:1;cursor:pointer}.directory-lightbox-info-popin-close:hover{border-color:var(--accent)}.directory-lightbox-image{width:auto;max-width:100%;max-height:calc(100vh - 5.5rem);object-fit:contain;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-secondary)}.directory-lightbox-video{width:auto;max-width:100%;max-height:calc(100vh - 5.5rem);border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-secondary)}.directory-lightbox-image[hidden],.directory-lightbox-video[hidden]{display:none!important}.directory-lightbox-index{position:absolute;left:50%;bottom:.6rem;transform:translateX(-50%);font-size:.74rem;color:var(--text-primary);letter-spacing:.06em;text-transform:uppercase;padding:.22rem .5rem;border-radius:999px;border:1px solid var(--border-color);background:color-mix(in srgb,var(--bg-primary) 84%,transparent);pointer-events:none;opacity:1;transition:opacity var(--transition-fast)}.directory-lightbox.is-overlay-hidden .directory-lightbox-index{opacity:0}.directory-lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:2.2rem;height:2.2rem;border-radius:999px;border:1px solid var(--border-color);background:color-mix(in srgb,var(--bg-card) 88%,transparent);color:var(--text-primary);font-size:1.35rem;line-height:1;cursor:pointer;z-index:2;opacity:1;transition:opacity var(--transition-fast)}.directory-lightbox.is-overlay-hidden .directory-lightbox-nav{opacity:0;pointer-events:none}.directory-lightbox-nav:disabled{opacity:.42;cursor:default}.directory-lightbox-prev{left:.35rem}.directory-lightbox-next{right:.35rem}.directory-lightbox-caption{font-size:.8rem;color:var(--text-secondary);text-align:center;width:min(720px,100%)}.directory-lightbox-caption-head{display:inline-flex;align-items:center;justify-content:center;gap:.45rem}.directory-lightbox-caption-title{color:var(--text-primary);font-weight:600}.directory-lightbox-caption-date{margin-top:.15rem}.directory-lightbox-caption-comment{margin:.3rem 0 0;font-size:.76rem;line-height:1.45;color:var(--text-secondary)}.directory-lightbox-download,.directory-lightbox-info-toggle{border:1px solid var(--border-color);border-radius:999px;background:color-mix(in srgb,var(--bg-card) 90%,transparent);color:var(--text-primary);font-size:.72rem;line-height:1;text-decoration:none}.directory-lightbox-download{padding:.45rem .7rem}.directory-lightbox-info-toggle{width:1.9rem;height:1.9rem;display:inline-flex;align-items:center;justify-content:center;font-weight:700;cursor:pointer}.directory-lightbox-download:hover,.directory-lightbox-info-toggle:hover{border-color:var(--accent)}.directory-lightbox-details{margin-top:0;text-align:left;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--bg-card) 88%,transparent);padding:.45rem .55rem}.directory-lightbox-details-table{width:100%;border-collapse:collapse;font-size:.72rem}.directory-lightbox-details-table td,.directory-lightbox-details-table th{padding:.22rem .28rem;border-bottom:1px solid var(--border-subtle);vertical-align:top}.directory-lightbox-details-table tr:last-child td,.directory-lightbox-details-table tr:last-child th{border-bottom:0}.directory-lightbox-details-table th{width:36%;color:var(--text-secondary);font-weight:600}.directory-lightbox-details-table td{color:var(--text-primary);word-break:break-word}.directory-lightbox-close{position:absolute;top:-.25rem;right:-.25rem;width:2rem;height:2rem;border-radius:999px;border:1px solid var(--border-color);background:color-mix(in srgb,var(--bg-card) 88%,transparent);color:var(--text-primary);font-size:1.3rem;line-height:1;cursor:pointer}@media (max-width:640px){.directory-lightbox-nav{width:2rem;height:2rem}.directory-lightbox-prev{left:.1rem}.directory-lightbox-next{right:.1rem}}.project-directory-gallery-body{padding:.65rem .75rem .72rem;display:flex;flex-direction:column;gap:.38rem}.project-directory-gallery-title{margin:0;font-size:.88rem;color:var(--text-primary);line-height:1.4}.project-directory-gallery-date{font-size:.7rem;color:var(--text-secondary)}.project-directory-gallery-comment{margin:0;font-size:var(--desc-font-size-sm);line-height:1.45;color:var(--text-secondary);opacity:.92}.project-directory-gallery-meta-panel{margin-top:.4rem;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--bg-secondary) 80%,transparent);padding:.35rem .45rem}.project-directory-gallery-meta-table{width:100%;border-collapse:collapse;font-size:.7rem}.project-directory-gallery-meta-table td,.project-directory-gallery-meta-table th{padding:.18rem .2rem;border-bottom:1px solid var(--border-subtle);vertical-align:top}.project-directory-gallery-meta-table tr:last-child td,.project-directory-gallery-meta-table tr:last-child th{border-bottom:0}.project-directory-gallery-meta-table th{width:40%;color:var(--text-secondary);font-weight:600}.project-directory-gallery-meta-table td{color:var(--text-primary);word-break:break-word}.project-directory-gallery-meta-table a{color:var(--accent);text-decoration:underline}.project-list-feed-root{display:flex;flex-direction:column;gap:.85rem}.project-list-search{width:100%;display:flex;align-items:center;gap:.7rem}.project-list-search-input-wrap{position:relative;flex:1 1 auto;width:100%}.project-list-search-input{width:100%;height:40px;border-radius:999px;border:1px solid var(--border-color);background:var(--surface-tint-soft);color:var(--text-primary);padding:0 2.2rem 0 1rem;font-size:.88rem;outline:0;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.project-list-search-input::placeholder{color:var(--text-muted)}.project-list-search-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(216,138,31,.2)}.project-list-search-clear{position:absolute;right:.45rem;top:50%;transform:translateY(-50%);width:1.45rem;height:1.45rem;border:none;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:1rem;line-height:1;cursor:pointer;color:var(--text-muted);background:0 0;opacity:0;pointer-events:none;transition:color var(--transition-fast),background var(--transition-fast),opacity var(--transition-fast)}.project-list-search-clear.is-visible{opacity:1;pointer-events:auto}.project-list-search-clear:hover{color:var(--text-primary);background:rgba(216,138,31,.2)}.project-list-search-count{min-width:84px;font-size:.72rem;color:var(--text-secondary);text-align:right}.project-list-feed-empty{display:none;padding:.8rem .85rem;border-radius:var(--radius-sm);border:1px dashed var(--border-subtle);color:var(--text-muted);font-size:.86rem}.project-list-feed-empty.is-visible{display:block}.project-list-pagination{display:flex;align-items:center;justify-content:space-between;gap:.7rem}.project-list-pagination.is-hidden{display:none}.project-list-page-status{font-size:.74rem;color:var(--text-secondary);letter-spacing:.03em}.project-list-page-btn{height:34px;padding:0 .85rem;border-radius:999px;border:1px solid var(--border-color);background:color-mix(in srgb,var(--bg-card) 88%,transparent);color:var(--text-secondary);font-size:.77rem;cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-fast),background var(--transition-fast)}.project-list-page-btn:hover:not(:disabled){color:var(--text-primary);border-color:rgba(194,92,45,.66);background:linear-gradient(112deg,color-mix(in srgb,var(--accent-hot) 18%,var(--bg-card)),color-mix(in srgb,var(--accent) 28%,var(--bg-card)) 48%,color-mix(in srgb,var(--accent-cool) 18%,var(--bg-card)))}.project-list-page-btn:disabled{opacity:.45;cursor:default}.project-list-feed-count{margin-top:.2rem;font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-weight:600;padding:0 .25rem}.project-list-entry{display:grid;grid-template-columns:140px minmax(0,1fr);align-items:stretch;gap:0;background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border-color);overflow:hidden}.project-list-entry.is-filtered-out{display:none!important}.project-list-entry.no-thumb{grid-template-columns:minmax(0,1fr)}.project-list-entry-thumb{width:140px;min-height:96px;max-height:110px;background:var(--bg-secondary);border-right:1px solid var(--border-subtle)}.project-list-entry-thumb img,.project-list-entry-thumb video{width:100%;height:100%;display:block;object-fit:cover}.project-list-entry-body{padding:1rem 1.1rem 1.1rem}.project-list-entry-title{margin:0;font-size:1.05rem;color:var(--text-primary)}.project-list-entry-title-link{color:inherit;text-decoration:none;border-bottom:1px solid transparent;transition:color var(--transition-fast),border-color var(--transition-fast)}.project-list-entry-title-link:focus-visible,.project-list-entry-title-link:hover{color:var(--accent-light);border-bottom-color:rgba(162,155,254,.7)}.project-list-entry-meta{margin-top:.45rem;display:flex;flex-wrap:wrap;gap:.45rem}.project-list-entry-date,.project-list-entry-location{font-size:.72rem;color:var(--text-secondary);background:color-mix(in srgb,var(--bg-secondary) 82%,transparent);border:1px solid var(--border-subtle);border-radius:20px;padding:.16rem .52rem}.project-list-entry-summary{margin:.65rem 0 0;color:var(--text-secondary);font-size:var(--desc-font-size-md);line-height:1.6}.project-list-entry-links{margin-top:.65rem;display:flex;flex-direction:column;gap:.4rem}.project-list-entry-link{display:flex;flex-direction:column;align-items:flex-start;gap:.1rem}.project-list-entry-link-label{line-height:1.35}.project-list-entry-link-url{font-size:.72rem;color:var(--text-secondary);line-height:1.35;word-break:break-all;opacity:.95}.project-entry-similar{margin-top:1.4rem;border-top:1px solid var(--border-subtle);padding-top:1.2rem}.project-gallery>.project-entry-similar{margin-top:1.9rem;padding-top:1.45rem}.project-entry-similar-title{margin:0;font-size:1rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.project-entry-similar-list{margin-top:.9rem;display:grid;gap:.7rem}.project-entry-similar-list.is-display-columns{grid-template-columns:repeat(var(--similar-columns,1),minmax(0,1fr))}.project-entry-similar-score{margin-top:.6rem;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:600}@media (max-width:640px){.project-list-search{flex-direction:column;align-items:stretch}.project-list-search-count{min-width:0;text-align:left}.project-list-pagination{flex-wrap:wrap}.project-list-entry{grid-template-columns:1fr}.project-list-entry-thumb{width:100%;min-height:132px;max-height:none;border-right:0;border-bottom:1px solid var(--border-subtle)}.project-directory-gallery-grid,.project-entry-similar-list.is-display-columns{grid-template-columns:1fr}}.media-viewer img,.media-viewer video{width:100%;display:block}.media-viewer.thumbnail-fallback{display:flex;align-items:center;justify-content:center;padding:1rem}.media-viewer.thumbnail-fallback img{width:auto;max-width:100%;max-height:520px;object-fit:contain}.media-viewer video{max-height:520px;background:#000}.media-viewer .img-placeholder{min-height:320px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:.85rem;background:var(--bg-secondary)}.media-description{margin-top:1rem;font-size:var(--desc-font-size-md);color:var(--text-secondary);line-height:1.7}.media-description:empty{display:none}.project-sidebar{flex:0 1 var(--project-sidebar-width,35%);width:var(--project-sidebar-width,35%);min-width:0;display:flex;flex-direction:column;gap:1.5rem;min-height:0;position:static;top:auto;max-height:none;overflow:visible}.items-nav{display:flex;flex-direction:column;gap:.5rem}.items-nav.is-empty{display:none}.items-nav-title{font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-weight:600;padding:0 .25rem;margin-bottom:.2rem}.item-card{display:flex;align-items:center;gap:.75rem;padding:.6rem;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition);border:1px solid transparent;background:0 0;position:relative}.item-card:hover{background:var(--bg-card);border-color:var(--border-color)}.item-card.active{background:var(--bg-card);border-color:var(--accent);box-shadow:0 0 12px rgba(216,138,31,.2)}.item-card.active::before{content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:60%;background:var(--accent);border-radius:0 3px 3px 0}.item-card-thumb{width:52px;height:40px;border-radius:var(--radius-xs);overflow:hidden;flex-shrink:0;background:var(--bg-secondary);border:1px solid var(--border-subtle)}.item-card-thumb img{width:100%;height:100%;object-fit:cover}.item-card-thumb .thumb-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:.65rem;color:var(--text-muted)}.item-card-thumb .video-badge{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:18px;height:18px;background:rgba(0,0,0,.6);border-radius:50%;display:flex;align-items:center;justify-content:center}.item-card-thumb .video-badge::after{content:'';width:0;height:0;border-left:6px solid #fff;border-top:4px solid transparent;border-bottom:4px solid transparent;margin-left:2px}.item-card-info{flex:1;min-width:0}.item-card-name{font-size:.78rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color var(--transition)}.item-card.active .item-card-name{color:var(--accent-light)}.item-card-type{font-size:.62rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-top:.1rem}.project-description{background:var(--bg-card);border-radius:var(--radius);padding:1.5rem;border:1px solid var(--border-color);margin-bottom:1.35rem}.desc-title{font-family:var(--font-heading);font-size:1rem;font-weight:600;margin-bottom:.75rem;color:var(--text-primary);display:flex;align-items:center;gap:.5rem}.desc-title::before{content:'';width:3px;height:1em;background:var(--accent);border-radius:2px}.project-description-body{font-size:var(--desc-font-size-md);color:var(--text-secondary);line-height:1.8}.project-description-top-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,320px);gap:1rem;align-items:start}.project-description-location-slot:empty{display:none}.project-description-location-slot{display:flex;flex-direction:column;gap:.85rem}.project-description-location-slot .items-nav,.project-description-location-slot .project-links-widget,.project-description-location-slot .project-location-widget{margin:0}.project-description-location-slot .project-location-widget{margin-bottom:0}.project-description-location-slot .project-location-map{height:clamp(120px,15vw,160px)}.project-description-calendar-slot:empty{display:none}.project-list-calendar{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--bg-card) 76%,transparent);padding:.8rem;display:flex;flex-direction:column;gap:.5rem}.project-list-calendar-header{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.project-list-calendar-title{margin:0;font-size:.92rem;font-weight:600;color:var(--text-primary)}.project-list-calendar-title-link{border:none;background:0 0;color:var(--text-primary);font-size:.92rem;font-weight:600;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.project-list-calendar-title-link:focus-visible,.project-list-calendar-title-link:hover{color:var(--accent)}.project-list-calendar-active-date{font-size:.72rem;color:var(--text-secondary)}.project-list-calendar-nav{display:grid;grid-template-columns:32px minmax(0,1fr) 32px;align-items:center;gap:.45rem}.project-list-calendar-nav-btn{border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);width:32px;height:32px;cursor:pointer;transition:transform var(--transition-fast),border-color var(--transition-fast)}.project-list-calendar-nav-btn:focus-visible,.project-list-calendar-nav-btn:hover{border-color:var(--accent-light);transform:translateY(-1px)}.project-list-calendar-month-label{text-align:center;text-transform:capitalize;font-size:.84rem;font-weight:600;color:var(--text-primary)}.project-list-calendar-grid,.project-list-calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.28rem}.project-list-calendar-weekday{text-align:center;font-size:.66rem;color:var(--text-secondary);letter-spacing:.03em}.project-list-calendar-day{width:100%;min-height:30px;border:1px solid var(--border-subtle);border-radius:8px;background:color-mix(in srgb,var(--bg-secondary) 84%,transparent);color:var(--text-secondary);font-size:.72rem;cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast),background var(--transition-fast)}.project-list-calendar-day.is-empty{pointer-events:none;border-color:transparent;background:0 0}.project-list-calendar-day.has-publication{color:var(--text-primary);border-color:color-mix(in srgb,var(--accent-light) 55%,var(--border-color))}.project-list-calendar-day.has-publication:focus-visible,.project-list-calendar-day.has-publication:hover{border-color:var(--accent-light);background:color-mix(in srgb,var(--accent-light) 18%,var(--bg-secondary));transform:translateY(-1px)}.project-list-calendar-day.is-selected{color:var(--text-primary);border-color:var(--accent-light);background:color-mix(in srgb,var(--accent) 28%,var(--bg-secondary))}.project-list-calendar-day:disabled{cursor:default;opacity:.6}.project-description-body.with-inline-thumbnail::after{content:'';display:block;clear:both}.project-description-body.with-inline-thumbnail{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.9rem;align-items:start}.project-description-body.with-inline-thumbnail>:not(.project-description-inline-thumb){grid-column:1}.project-description-body.with-inline-thumbnail-stacked{display:block}.project-description-inline-thumb{float:none;grid-column:2;grid-row:1/span 999;width:min(32%,225px);margin:0;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--border-color);background:var(--bg-secondary)}.project-description-inline-thumb.project-description-inline-thumb--stacked{float:none;grid-column:auto;grid-row:auto;width:min(100%,420px);margin:0 0 .9rem}.project-description-inline-thumb img,.project-description-inline-thumb video{width:100%;height:auto;display:block;object-fit:cover}.project-description-body p{margin-bottom:.85rem}.project-description-body p:last-child{margin-bottom:0}.project-description-body strong{color:var(--text-primary);font-weight:600}.project-description-body h1,.project-description-body h2,.project-description-body h3,.project-description-body h4,.project-description-body h5,.project-description-body h6{margin:1rem 0 .6rem;color:var(--text-primary);line-height:1.35}.project-description-body h1{font-size:1.2rem}.project-description-body h2{font-size:1.1rem}.project-description-body h3{font-size:1rem}.project-description-body h4,.project-description-body h5,.project-description-body h6{font-size:.92rem}.project-description-body ol,.project-description-body ul{margin:.55rem 0 .95rem 1.25rem;padding:0}.project-description-body li{margin:.2rem 0}.project-description-body ul.task-list{margin-left:0;list-style:none}.project-description-body .task-list-item{margin:.28rem 0}.project-description-body .task-list-item label{display:inline-flex;align-items:flex-start;gap:.45rem}.project-description-body .task-list-item input[type=checkbox]{margin-top:.32rem}.project-description-body .task-list-item input[type=checkbox]:checked+span{text-decoration:line-through;color:var(--text-muted)}.project-description-body .markdown-rating{display:inline-flex;align-items:baseline;gap:.42rem;padding:.14rem .4rem;border-radius:var(--radius-xs);border:1px solid;background:color-mix(in srgb,#f4bc4a 12%,var(--bg-secondary));color:var(--text-primary)}.project-description-body .markdown-rating-label{font-size:.78rem;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted)}.project-description-body .markdown-rating-stars{display:inline-flex;line-height:1;font-size:.95em;letter-spacing:.06em}.project-description-body .markdown-rating-stars-empty{color:color-mix(in srgb,#f4bc4a 34%,var(--text-muted))}.project-description-body .markdown-rating-stars-fill{color:#f4bc4a}.project-description-body .markdown-rating-value{font-size:.88rem;color:var(--text-secondary)}.project-description-body .markdown-spoiler{appearance:none;border:1px solid;background:color-mix(in srgb,#ff3b3b 12%,var(--bg-secondary));color:inherit;font:inherit;line-height:inherit;border-radius:var(--radius-xs);padding:.16rem .52rem .2rem;margin:0 .08rem;cursor:pointer;display:inline-flex;align-items:baseline;gap:.45rem;max-width:100%;text-align:left;box-shadow:0 0 0 1px color-mix(in srgb,#ff3b3b 24%,transparent),0 0 18px color-mix(in srgb,#ff3b3b 42%,transparent);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast)}.project-description-body p>.markdown-spoiler:only-child{display:block;width:100%;margin:0}.project-description-body .markdown-spoiler-label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:color-mix(in srgb,#ff6d6d 82%,var(--text-primary));white-space:nowrap}.project-description-body .markdown-spoiler-content{filter:blur(.28rem);text-shadow:0 0 .62rem color-mix(in srgb,#ff3b3b 70%,transparent);transition:filter var(--transition-fast),text-shadow var(--transition-fast),opacity var(--transition-fast)}.project-description-body .markdown-spoiler:focus-visible,.project-description-body .markdown-spoiler:hover{border-color:color-mix(in srgb,#ff6161 84%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,#ff6161 46%,transparent),0 0 22px color-mix(in srgb,#ff6161 52%,transparent)}.project-description-body .markdown-spoiler:focus-visible{outline:0}.project-description-body .markdown-spoiler.is-revealed{cursor:default;border-color:var(--border-color);background:color-mix(in srgb,var(--bg-card) 88%,transparent);box-shadow:none}.project-description-body .markdown-spoiler.is-revealed .markdown-spoiler-content{filter:none;text-shadow:none}.project-description-body table{width:100%;border-collapse:collapse;margin:.75rem 0 1rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);overflow:hidden}.project-description-body td,.project-description-body th{padding:.46rem .58rem;border:1px solid var(--border-subtle);vertical-align:top}.project-description-body th{color:var(--text-primary);background:color-mix(in srgb,var(--bg-secondary) 86%,transparent);font-weight:600}@media (max-width:768px){.project-description-inline-thumb{float:none;width:100%;max-width:none;margin:0 0 .9rem}}.project-description-body blockquote{margin:.8rem 0 1rem;padding:.5rem .75rem;border-left:3px solid var(--accent);background:color-mix(in srgb,var(--accent) 9%,transparent);border-radius:0 var(--radius-sm) var(--radius-sm) 0}.project-description-body hr{border:0;border-top:1px solid var(--border-subtle);margin:1rem 0}.project-description-body code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:.82em;padding:.12em .36em;border-radius:.35rem;background:color-mix(in srgb,var(--bg-secondary) 75%,var(--accent) 25%);color:var(--text-primary)}.project-description-body pre{margin:.75rem 0 1rem;padding:.65rem .75rem;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:color-mix(in srgb,var(--bg-secondary) 88%,transparent);overflow-x:auto}.project-description-body pre code{background:0 0;padding:0;border-radius:0}.project-description-body img{display:block;max-width:100%;height:auto;margin:.8rem 0;border-radius:var(--radius-sm);border:1px solid var(--border-subtle)}.project-description-body a{color:var(--accent-light)}:is(a.external-link,a[target="_blank"][rel~=noopener]){color:#7cf2ae;text-decoration-color:rgba(39,196,107,0.68);text-underline-offset:2px}:is(a.external-link,a[target="_blank"][rel~=noopener])::after{content:' \2197';display:inline-block;margin-left:.2em;color:#27c46b;font-weight:700;font-size:.95em;line-height:1}:is(a.external-link,a[target="_blank"][rel~=noopener]):hover{color:#b6fbd3;text-decoration-color:#27c46b}.project-description-body a.search-match{color:var(--text-primary);background:color-mix(in srgb,var(--accent) 22%,transparent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 36%,transparent);border-radius:.28em;padding:0 .16em;text-decoration-color:var(--accent-light);text-decoration-thickness:2px}.project-description-body a.search-match-url-only{background:color-mix(in srgb,#27c46b 24%,transparent);box-shadow:0 0 0 2px rgba(39,196,107,.34)}.project-links-widget{background:var(--bg-card);border-radius:var(--radius);padding:1.2rem;border:1px solid var(--border-color)}.project-links-widget.is-empty{display:none}.project-links-widget .desc-title{margin-bottom:.65rem}.project-links-title{margin-top:1.2rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-weight:600}.project-links{margin-top:.2rem;display:flex;flex-direction:column;gap:.5rem}.project-link{display:inline-flex;align-items:center;gap:.4rem;color:var(--accent-light);font-size:.85rem;background:rgba(216,138,31,.2);border:1px solid rgba(216,138,31,.2);padding:.45rem .7rem;border-radius:var(--radius-xs);transition:all var(--transition-fast)}.project-link:hover{color:var(--text-primary);border-color:var(--accent);background:rgba(216,138,31,.2);transform:translateX(2px)}.project-link.external-link,.project-link[target="_blank"][rel~=noopener]{color:#7cf2ae;background:rgba(10,22,15,.78);border-color:rgba(39,196,107,.5)}.project-link.external-link:hover,.project-link[target="_blank"][rel~=noopener]:hover{color:#d6ffe8;border-color:#27c46b;background:rgba(13,35,22,.88)}.view-transition-enter{animation:.4s forwards viewIn}@keyframes viewIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes gentleFloat{0%,100%{transform:translate(-50%,-50%) translateY(0)}50%{transform:translate(-50%,-50%) translateY(-6px)}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@media (max-width:950px){.radial-container{display:none!important}.grid-fallback{display:block!important}.home-tabs{width:100%}.site-header{padding:.95rem 1rem}.header-inner{gap:.7rem}.site-logo{font-size:1.22rem}.site-logo-image{max-height:min(var(--site-logo-max-height),30px)}.header-search{max-width:none}.home-search{width:auto}.search-input,.search-input-wrap{flex-basis:380px}.project-content{flex-direction:column}.project-sidebar{flex:unset;position:static;max-height:none;width:100%}.project-gallery{flex:unset}.project-title{font-size:1.7rem}.items-nav{flex-direction:row;overflow-x:auto;gap:.5rem;padding-bottom:.5rem}.item-card{min-width:180px;flex-shrink:0}.project-description-top-layout{grid-template-columns:1fr}}@media (min-width:951px){.grid-fallback{display:none!important}.radial-container{display:block!important}.home-tabs{display:none!important}}#home-view.home-display-cards .radial-container{display:none!important}#home-view.home-display-cards .grid-fallback{display:block!important;width:100%}#home-view.home-display-masonry .home-tabs,#home-view.home-display-masonry .radial-container{display:none!important}#home-view.home-display-masonry .grid-fallback{display:block!important;width:100%}#home-view.home-display-kanban .home-tabs,#home-view.home-display-kanban .radial-container{display:none!important}#home-view.home-display-kanban .grid-fallback{display:block!important;width:100%}#home-view.home-display-carousel .home-tabs,#home-view.home-display-carousel .radial-container{display:none!important}#home-view.home-display-carousel .grid-fallback{display:block!important;width:100%}#home-view.home-display-map .home-tabs,#home-view.home-display-map .radial-container{display:none!important}#home-view.home-display-map .grid-fallback{display:block!important;width:100%}#home-view.home-display-mindmap .home-tabs,#home-view.home-display-mindmap .radial-container{display:none!important}#home-view.home-display-mindmap .grid-fallback{display:block!important;width:100%}#home-view.home-display-spotlight .home-tabs,#home-view.home-display-spotlight .radial-container{display:none!important}#home-view.home-display-spotlight .grid-fallback{display:block!important;width:100%}#home-view.home-display-list .home-tabs,#home-view.home-display-list .radial-container{display:none!important}#home-view.home-display-list .grid-fallback{display:block!important;width:100%}#home-view.home-display-timeline .home-tabs,#home-view.home-display-timeline .radial-container{display:none!important}#home-view.home-display-timeline .grid-fallback{display:block!important;width:100%}#home-view.home-display-planets .radial-container{display:block!important}#home-view.home-display-planets .grid-fallback,#home-view.home-display-tabs .grid-fallback,#home-view.home-display-tabs .radial-container{display:none!important}#home-view.home-display-tabs .home-tabs{display:block!important}@media (max-width:600px){:root{--home-header-offset:108px;--home-planets-viewport-gap:12px}#home-view.home-display-planets{background-size:96px 96px,124px 124px,112px 112px,140px 140px;background-position:0 0,16px 12px,34px 8px,8px 24px}#home-view.home-display-planets::before{background-size:100% 42%;opacity:.82}#home-view.home-display-planets::after{background-size:100% 48%;background-position:0 8%;opacity:.74}.site-header{padding:.6rem .85rem}.header-inner{flex-wrap:wrap;align-items:flex-start;row-gap:.4rem}.header-menu-toggle{display:inline-flex;margin-left:auto}.header-inner>.header-about-link,.header-inner>.theme-toggle{display:none!important}.site-logo{font-size:1.05rem;margin-right:auto;padding:.36rem .58rem}.site-logo-image{max-height:min(var(--site-logo-max-height),26px)}.home-search{width:100%;flex-wrap:nowrap;justify-content:flex-start;gap:.35rem;min-width:0}.header-search{order:3;flex:1 1 100%;width:100%;max-width:none}.search-input{flex-basis:0;min-width:0;height:36px;font-size:.82rem;padding-right:2rem}.search-input-wrap{flex:1 1 auto;width:auto;min-width:0}.search-clear{right:.35rem;width:1.35rem;height:1.35rem;font-size:.9rem}.search-count{order:2;min-width:0;font-size:.66rem;max-width:74px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right}.orbit-back{order:2;margin-left:auto;height:34px;padding:0 .65rem;font-size:.72rem}.project-detail{padding:1rem}.project-title{font-size:1.4rem}.project-header-description-row{grid-template-columns:minmax(0,1fr) auto;gap:.75rem;padding:.58rem}.project-header-thumb{width:min(30vw,135px)}.grid-fallback .grid,.home-tab-grid,.timeline-group-grid{grid-template-columns:1fr}.project-description{padding:1.1rem}.grid-fallback.is-carousel .carousel-slide .grid-card{width:100%}.grid-fallback.is-carousel .carousel-slide .grid-card-img-wrap{height:calc(190px * var(--home-carousel-card-scale,1))}.grid-fallback.is-carousel .carousel-prev{left:-.1rem}.grid-fallback.is-carousel .carousel-next{right:-.1rem}@media (max-width:600px) and (orientation:portrait){:root{--home-planets-viewport-gap:8px}#home-view.home-display-planets{padding-inline:0.5rem}#home-view.home-display-planets #radial-container{width:min(var(--home-planets-max-size),calc(100vh - var(--home-header-offset) - var(--home-planets-viewport-gap)),calc(100vw - 1rem));max-height:calc(100vh - var(--home-header-offset) - var(--home-planets-viewport-gap))}}@media (max-width:600px) and (orientation:landscape){:root{--home-planets-viewport-gap:4px}#home-view.home-display-planets{padding-inline:0.15rem}#home-view.home-display-planets #radial-container{width:min(var(--home-planets-max-size),calc(100vw - .3rem),calc(100vh - var(--home-header-offset) - var(--home-planets-viewport-gap)));max-height:calc(100vh - var(--home-header-offset) - var(--home-planets-viewport-gap))}}.grid-fallback.is-map .map-canvas{height:var(--home-map-height,clamp(320px,62vh,680px))}.grid-fallback.is-spotlight .spotlight-root{grid-template-columns:1fr}.grid-fallback.is-mindmap .mindmap-root{min-height:500px;height:max(500px,calc(100dvh - 190px))}.grid-fallback.is-mindmap .mindmap-node{max-width:164px;padding:0 .55rem}.grid-fallback.is-mindmap .mindmap-center{max-width:190px;height:38px}.grid-fallback.is-spotlight .spotlight-hero-media img{min-height:190px}.grid-fallback.is-spotlight .spotlight-rail{max-height:none}.grid-fallback.is-map .map-primary-root,.grid-fallback.is-map .map-secondary-root{padding:.58rem}.grid-fallback.is-map .map-section-title{margin-bottom:.45rem;font-size:.74rem}.grid-fallback.is-map .map-legend{gap:.42rem}.grid-fallback.is-map .map-legend-item{font-size:.72rem;padding:.26rem .48rem}.grid-fallback.is-timeline .timeline-root{padding-left:1.35rem}.grid-fallback.is-timeline .timeline-root::before{left:9px;transform:none}.timeline-group{width:100%;margin-left:0!important;margin-right:0!important}.timeline-group::before{left:calc(-1 * var(--home-timeline-group-label-offset,1.7rem));right:auto}.timeline-group.has-group-label{padding-top:2.75rem}.timeline-group.has-secondary-label{padding-top:2.35rem}.timeline-group.has-main-and-secondary{padding-top:3.8rem}.timeline-group .timeline-group-title{left:calc(-1 * var(--home-timeline-group-label-offset,1.7rem));right:auto;transform:translate(-50%,0);min-height:calc(32px * var(--home-timeline-group-label-scale,1));font-size:calc(1rem * var(--home-timeline-group-label-scale, 1))}.timeline-group .timeline-group-title.milestone-label{min-height:calc(.82 * 32px * var(--home-timeline-group-label-scale,1));font-size:calc(.82 * 1rem * var(--home-timeline-group-label-scale, 1))}.timeline-group .timeline-group-title.main-milestone-label{min-height:calc(.94 * 32px * var(--home-timeline-group-label-scale,1));font-size:calc(.94 * 1rem * var(--home-timeline-group-label-scale, 1))}.timeline-group .timeline-group-title.secondary-milestone-label{min-height:calc(.72 * 32px * var(--home-timeline-group-label-scale,1) * var(--home-timeline-secondary-milestone-scale,1));font-size:calc(.72 * 1rem * var(--home-timeline-group-label-scale, 1) * var(--home-timeline-secondary-milestone-scale, 1))}.timeline-group.has-main-and-secondary .timeline-group-title.secondary-milestone-label{top:calc(.95rem * var(--home-timeline-group-label-scale,1))}.items-nav{flex-direction:column}.item-card{min-width:unset}}.loading-spinner{display:flex;align-items:center;justify-content:center;min-height:60vh}.loading-spinner::after{content:'';width:36px;height:36px;border:2px solid var(--border-color);border-top-color:var(--accent);border-radius:50%;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error-message{text-align:center;padding:4rem 2rem;color:var(--text-muted)}.error-message h2{font-family:var(--font-heading);font-size:1.5rem;margin-bottom:.5rem;color:var(--text-secondary)}