.hub-head{padding:68px 0 30px}.hub-head h1{margin:16px 0 14px;max-width:1000px;font-size:clamp(3rem,7vw,6.5rem);line-height:.9;letter-spacing:-.075em}.hub-head h1 span{display:block;background:linear-gradient(90deg,#a0e8ff,#76baff 48%,#aa90ff);-webkit-background-clip:text;background-clip:text;color:transparent}.hub-head>p{max-width:860px;color:var(--muted);line-height:1.68;margin:0}.hub-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:10px 0 18px}.hub-searchbox{position:relative;flex:1;min-width:min(100%,280px);max-width:420px}.hub-searchbox input{width:100%;height:43px;padding:0 42px 0 14px;border-radius:11px;border:1px solid var(--line);outline:0;background:#091722;color:var(--text)}.hub-searchbox input:focus{border-color:rgba(86,214,255,.34)}.hub-searchbox span{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:#668297}.hub-filter-group,.hub-sort-group{display:flex;gap:7px;flex-wrap:wrap}.hub-sort-group{margin-left:auto}.hub-filter{height:39px;padding:0 12px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.025);color:#9eb4c3;cursor:pointer;font-size:.73rem}.hub-filter:hover,.hub-filter.active{color:#d9f4ff;border-color:rgba(86,214,255,.27);background:rgba(86,214,255,.075)}.hub-summary{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:10px 1px 17px;color:#728b9c;font-size:.72rem}.hub-summary span:first-child{color:#b3c8d5;font-weight:750}.hub-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding-bottom:50px}.hub-project-card{border:1px solid var(--line);border-radius:19px;overflow:hidden;background:#0b1823;box-shadow:var(--shadow);transition:transform .18s,border-color .18s;cursor:pointer}.hub-project-card:hover{transform:translateY(-4px);border-color:rgba(86,214,255,.18)}.hub-project-card:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}.hub-project-visual{height:220px;position:relative;overflow:hidden;background:radial-gradient(circle at 84% 15%,rgba(86,214,255,.17),transparent 10rem),linear-gradient(145deg,#14354d,#0a1722)}.hub-project-visual[data-accent="red"]{background:radial-gradient(circle at 84% 15%,rgba(255,128,146,.16),transparent 10rem),linear-gradient(145deg,#321824,#0a1722)}.hub-project-visual[data-accent="violet"]{background:radial-gradient(circle at 82% 15%,rgba(145,111,255,.2),transparent 11rem),radial-gradient(circle at 20% 85%,rgba(255,197,107,.07),transparent 10rem),linear-gradient(145deg,#282244,#0a1722)}.hub-project-visual>img{width:100%;height:100%;object-fit:cover}.hub-project-visual:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#0b1823 0%,transparent 68%)}.hub-relationship{position:absolute;z-index:4;left:15px;top:15px;padding:8px 10px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:rgba(4,10,15,.76);backdrop-filter:blur(12px);font-size:.66rem}.hub-relationship strong{display:block;color:white;margin-bottom:2px}.hub-relationship span{color:#9ab2c2}.hub-art-grid{position:absolute;inset:0;opacity:.18;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:28px 28px}.hub-art-burst{position:absolute;right:-28px;top:-24px;width:210px;height:210px;border-radius:50%;background:conic-gradient(from 20deg,transparent 0 8%,rgba(255,128,146,.1) 8% 12%,transparent 12% 23%,rgba(255,197,107,.08) 23% 27%,transparent 27% 45%,rgba(145,111,255,.11) 45% 49%,transparent 49% 100%);animation:hub-spin 24s linear infinite}@keyframes hub-spin{to{transform:rotate(360deg)}}.hub-controller{position:absolute;right:36px;top:44px;width:170px;height:112px;filter:drop-shadow(0 20px 28px rgba(0,0,0,.34));z-index:2}.hub-controller-core{position:absolute;left:34px;top:18px;width:104px;height:67px;border-radius:38px 38px 28px 28px;background:linear-gradient(145deg,rgba(246,249,255,.2),rgba(145,111,255,.18));border:1px solid rgba(255,255,255,.2)}.hub-controller-grip{position:absolute;top:52px;width:54px;height:40px;border-radius:14px 14px 30px 30px;background:linear-gradient(180deg,rgba(145,111,255,.2),rgba(8,15,25,.46));border:1px solid rgba(255,255,255,.14)}.hub-controller-grip.left{left:16px;transform:rotate(21deg)}.hub-controller-grip.right{right:16px;transform:rotate(-21deg)}.hub-controller-dpad{position:absolute;z-index:3;left:51px;top:41px;width:28px;height:28px}.hub-controller-dpad:before,.hub-controller-dpad:after{content:"";position:absolute;background:rgba(255,255,255,.65);border-radius:3px}.hub-controller-dpad:before{left:9px;top:0;width:10px;height:28px}.hub-controller-dpad:after{left:0;top:9px;width:28px;height:10px}.hub-controller-buttons{position:absolute;z-index:3;right:47px;top:40px;width:36px;height:36px}.hub-controller-buttons i{position:absolute;width:9px;height:9px;border-radius:50%;border:1px solid rgba(255,255,255,.5);background:rgba(255,255,255,.09)}.hub-controller-buttons i:nth-child(1){left:14px;top:0}.hub-controller-buttons i:nth-child(2){right:0;top:14px}.hub-controller-buttons i:nth-child(3){left:14px;bottom:0}.hub-controller-buttons i:nth-child(4){left:0;top:14px}.hub-generic-visual{padding:18px;display:flex;flex-direction:column;justify-content:flex-end}.hub-generic-monogram{position:absolute;z-index:2;right:20px;top:15px;font-size:5rem;font-weight:950;color:rgba(172,229,255,.12);letter-spacing:-.08em}.hub-generic-title{position:relative;z-index:2;font-size:1.6rem;font-weight:900;letter-spacing:-.04em;max-width:80%}.hub-project-body{padding:20px}.hub-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.hub-card-eyebrow{font-size:.63rem;text-transform:uppercase;letter-spacing:.09em;color:#728fa2;margin-bottom:6px}.hub-card-top h2{margin:0;font-size:1.55rem;letter-spacing:-.045em}.hub-status-badge{font-size:.61rem;text-transform:uppercase;letter-spacing:.08em;color:#a7ebc8;padding:6px 8px;border-radius:999px;background:rgba(121,229,173,.06);border:1px solid rgba(121,229,173,.12)}.hub-status-badge.archived{color:#d5b98c;background:rgba(255,197,107,.05);border-color:rgba(255,197,107,.14)}.hub-card-description{min-height:58px;color:#8ca4b5;font-size:.8rem;line-height:1.58;margin:10px 0 15px}.hub-tags{display:flex;gap:6px;flex-wrap:wrap}.hub-tag{padding:5px 7px;border:1px solid var(--line);border-radius:7px;background:rgba(255,255,255,.022);color:#91b3c8;font-size:.64rem}.hub-card-meta{display:flex;justify-content:space-between;gap:12px;margin:15px 0 0;padding-top:13px;border-top:1px solid var(--line);color:#6f899b;font-size:.66rem}.hub-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}.hub-action{min-height:40px;padding:0 11px;border:1px solid var(--line);border-radius:9px;background:rgba(255,255,255,.026);display:inline-flex;align-items:center;justify-content:center;text-align:center;color:#b7cbd7;font-size:.66rem;font-weight:750}.hub-action.primary{border-color:transparent;color:#041018;background:linear-gradient(135deg,var(--cyan),#7bbfff)}.hub-empty{grid-column:1/-1;padding:44px 24px;border:1px dashed rgba(255,255,255,.1);border-radius:16px;text-align:center;color:#819bac}.hub-loading-card{height:430px;border-radius:19px;border:1px solid var(--line);background:rgba(255,255,255,.03)}.hub-philosophy{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:4px 0 60px}.hub-philosophy>div{padding:18px;border:1px solid var(--line);border-radius:14px;background:rgba(11,25,36,.72)}.hub-philosophy-label{display:block;font-size:.62rem;text-transform:uppercase;letter-spacing:.09em;color:#6f8b9d;margin-bottom:7px}.hub-philosophy strong{display:block}.hub-philosophy p{margin:5px 0 0;color:#7d96a7;font-size:.72rem;line-height:1.5}.project-reader-root{padding:40px 0 62px}.reader-loading{padding:28px;border:1px solid var(--line);border-radius:19px;background:rgba(13,29,42,.75)}.reader-loading-line{height:14px;width:62%;border-radius:999px;background:rgba(255,255,255,.055);margin:10px 0}.reader-loading-line.wide{width:88%;height:42px}.reader-loading-panel{height:360px;margin-top:25px;border-radius:15px;background:rgba(255,255,255,.035)}.reader-crumb{display:flex;align-items:center;gap:8px;color:#7893a5;font-size:.68rem;margin:0 0 13px}.reader-crumb a{color:#9eddf2}.reader-hero{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:14px}.reader-mainhead,.reader-side,.readme-panel,.readme-toc{border:1px solid var(--line);border-radius:19px;background:rgba(13,29,42,.8);box-shadow:var(--shadow)}.reader-mainhead{padding:28px}.reader-cover{height:170px;margin:-28px -28px 24px;position:relative;overflow:hidden;border-radius:18px 18px 11px 11px;border-bottom:1px solid var(--line);background:radial-gradient(circle at 84% 15%,rgba(86,214,255,.18),transparent 11rem),linear-gradient(145deg,#14354d,#0a1722)}.reader-cover[data-accent="red"]{background:radial-gradient(circle at 84% 15%,rgba(255,128,146,.17),transparent 11rem),linear-gradient(145deg,#321824,#0a1722)}.reader-cover[data-accent="violet"]{background:radial-gradient(circle at 82% 15%,rgba(145,111,255,.22),transparent 12rem),linear-gradient(145deg,#282244,#0a1722)}.reader-cover>img{width:100%;height:100%;object-fit:cover}.reader-cover .hub-controller{right:50px;top:29px;transform:scale(1.12)}.reader-cover .hub-art-burst{right:-5px;top:-30px}.reader-cover-monogram{position:absolute;right:35px;top:25px;font-size:6.5rem;font-weight:950;letter-spacing:-.09em;color:rgba(255,255,255,.08)}.reader-repo-owner{font-size:.61rem;text-transform:uppercase;letter-spacing:.09em;color:#7896a9}.reader-mainhead h1{margin:12px 0 12px;font-size:clamp(2.7rem,6vw,5.4rem);line-height:.88;letter-spacing:-.07em}.reader-description{max-width:790px;color:#8fa6b6;line-height:1.6;margin:0}.reader-meta-row{display:flex;gap:7px;flex-wrap:wrap;margin-top:16px}.reader-meta{padding:6px 8px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.022);font-size:.61rem;color:#99b5c5}.reader-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:19px}.reader-side{padding:20px;align-self:stretch}.reader-sync{display:flex;align-items:center;gap:10px;padding-bottom:17px;margin-bottom:17px;border-bottom:1px solid var(--line)}.reader-sync small,.reader-facts small,.reader-upstream-note small{display:block;font-size:.55rem;text-transform:uppercase;letter-spacing:.08em;color:#718b9d}.reader-sync strong{display:block;margin-top:3px;font-size:.78rem}.reader-facts{display:grid;gap:14px}.reader-facts strong{display:block;margin-top:3px;font-size:.73rem;overflow-wrap:anywhere}.reader-side>p{margin:18px 0 0;color:#8099aa;font-size:.66rem;line-height:1.52}.reader-grid{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:14px;margin-top:14px;align-items:start}.readme-panel{padding:30px 34px;min-width:0}.readme-source{display:flex;justify-content:space-between;align-items:center;gap:14px;padding-bottom:18px;margin-bottom:24px;border-bottom:1px solid var(--line);font-size:.63rem;color:#7894a5}.readme-source strong{color:#bce9f8}.readme-source a{color:#9eddf2}.readme-inline-loading{padding:32px 0;color:#7995a7}.readme-fallback{padding:22px 0}.readme-fallback h2{margin-top:0}.readme-fallback p{color:#839dad;line-height:1.55}.readme-markdown{min-width:0;overflow-wrap:anywhere}.readme-markdown>*:first-child{margin-top:0}.readme-markdown h1{font-size:2.15rem;line-height:1.08;letter-spacing:-.045em;margin:0 0 16px}.readme-markdown h2{font-size:1.3rem;letter-spacing:-.03em;margin:34px 0 11px;padding-bottom:9px;border-bottom:1px solid var(--line);scroll-margin-top:96px}.readme-markdown h3{font-size:.96rem;margin:24px 0 9px;scroll-margin-top:96px}.readme-markdown h4{font-size:.8rem;margin:20px 0 8px}.readme-markdown p,.readme-markdown li{font-size:.75rem;line-height:1.68;color:#a7bac5}.readme-markdown strong{color:#eef6fa}.readme-markdown ul,.readme-markdown ol{padding-left:23px}.readme-markdown li+li{margin-top:3px}.readme-markdown blockquote{margin:16px 0;padding:11px 14px;border-left:3px solid var(--cyan);background:rgba(86,214,255,.04);color:#abc2cf}.readme-markdown blockquote p{margin:0}.readme-markdown code{font:600 .68rem ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#b4e7f7;background:#07131c;border:1px solid var(--line);border-radius:5px;padding:2px 5px}.readme-markdown pre{padding:14px;background:#07131c;border:1px solid var(--line);border-radius:10px;overflow:auto}.readme-markdown pre code{border:0;padding:0;background:none;color:#b4d4df}.readme-markdown table{display:block;width:100%;overflow-x:auto;border-collapse:collapse;margin:15px 0}.readme-markdown th,.readme-markdown td{text-align:left;border:1px solid var(--line);padding:9px 10px;font-size:.68rem;color:#9fb4c0;white-space:normal}.readme-markdown th{color:#e9f4f8;background:rgba(255,255,255,.025)}.readme-markdown a{color:#87d9f5;text-decoration:underline;text-decoration-color:rgba(135,217,245,.3);text-underline-offset:3px}.readme-markdown a[target="_blank"]::after{content:" ↗";font-size:.72em;text-decoration:none}.readme-markdown img{max-width:100%;height:auto;border-radius:10px}.readme-markdown hr{border:0;border-top:1px solid var(--line);margin:28px 0}.readme-markdown details{border:1px solid var(--line);border-radius:9px;padding:10px 12px;margin:12px 0}.readme-markdown summary{cursor:pointer;font-weight:700}.readme-toc{position:sticky;top:88px;padding:18px}.readme-toc>small{display:block;margin-bottom:9px;font-size:.55rem;text-transform:uppercase;letter-spacing:.08em;color:#718b9d}.readme-toc nav{display:grid}.readme-toc nav a{padding:8px 0;border-top:1px solid rgba(255,255,255,.045);font-size:.64rem;color:#8da7b8}.readme-toc nav a:first-child{border-top:0}.readme-toc nav a:hover{color:#dff7ff}.readme-toc-empty{font-size:.62rem;color:#7792a4;line-height:1.45}.reader-upstream-note{margin-top:17px;padding-top:16px;border-top:1px solid var(--line)}.reader-upstream-note>strong{display:block;margin:4px 0 10px;font-size:.73rem}.reader-upstream-links{display:grid;gap:7px}.reader-upstream-links .btn{min-height:36px;font-size:.61rem}.detail-not-found{padding:70px 0}.detail-not-found h1{font-size:clamp(2.5rem,6vw,5rem);letter-spacing:-.055em;margin:16px 0 12px}.detail-not-found p{max-width:650px;color:#819aaa;line-height:1.6;margin:0 0 20px}@media(max-width:980px){.hub-project-grid,.reader-hero,.reader-grid{grid-template-columns:1fr}.hub-sort-group{margin-left:0}.readme-toc{position:static}}@media(max-width:720px){.hub-philosophy{grid-template-columns:1fr}.hub-project-visual{height:195px}.hub-controller{right:18px;transform:scale(.88);transform-origin:right center}.readme-panel{padding:24px 19px}.reader-mainhead{padding:22px}.reader-cover{margin:-22px -22px 21px;height:145px}.reader-cover .hub-controller{right:12px;top:22px;transform:scale(.82)}.reader-mainhead h1{font-size:clamp(2.45rem,12vw,4.2rem)}}@media(prefers-reduced-motion:reduce){.hub-project-card{transition:none}.hub-art-burst{animation:none}}