.hub-page .breadcrumbs{border-bottom:1px solid var(--border-color);margin-bottom:1.25rem;padding:.625rem 1.5rem}@media (width>=768px){.hub-page .breadcrumbs{padding-left:2rem;padding-right:2rem}}.hub-hero.fade-in-up,.hub-page .section.fade-in-up{animation:hub-fade-in-up var(--motion-sections-fade_in_duration,.6s) ease-out both}.hub-hero.delay-0{animation-delay:0s}.hub-hero.delay-1{animation-delay:var(--motion-sections-stagger_step,80ms)}.hub-hero.delay-2{animation-delay:calc(2 * var(--motion-sections-stagger_step,80ms))}.hub-page .section.delay-1{animation-delay:var(--motion-sections-stagger_step,80ms)}.hub-page .section.delay-2{animation-delay:calc(2 * var(--motion-sections-stagger_step,80ms))}.hub-page .section.delay-3{animation-delay:calc(3 * var(--motion-sections-stagger_step,80ms))}@keyframes hub-fade-in-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.hub-hero.fade-in-up,.hub-page .section.fade-in-up{opacity:1;animation:none;transform:none}.hub-metric-card,.resources-list li,.leaderboard-table tbody tr{transition:none}}.portal-page{min-width:0;max-width:800px;margin:0 auto;padding:2rem 1.5rem 3rem}.portal-page.portal-entry,.portal-page.sign-in-page,.portal-page.choose-role-page{box-sizing:border-box;width:100%;max-width:100%;margin:0 auto;padding:2rem 1.5rem 3rem}@media (width>=768px){.portal-page.portal-entry,.portal-page.sign-in-page,.portal-page.choose-role-page{padding:2.5rem 2rem 4rem}}@media (width<=480px){.portal-page,.portal-page.portal-entry,.portal-page.sign-in-page,.portal-page.choose-role-page{padding:1.5rem 1rem 2.5rem}}@media (width<=375px){.portal-page,.portal-page.portal-entry,.portal-page.sign-in-page,.portal-page.choose-role-page{padding:1.25rem .75rem 2rem}}@media (width>=768px){.portal-page{padding-left:2rem;padding-right:2rem}}.hub-page{max-width:100%;margin:0;padding:0}.hub-page-main{min-width:0;max-width:1280px;margin:0 auto;padding:0 1.5rem 3rem}@media (width>=768px){.hub-page-main{padding-left:2rem;padding-right:2rem}}@media (width<=480px){.hub-page-main{padding-bottom:2.5rem;padding-left:1rem;padding-right:1rem}}@media (width<=375px){.hub-page-main{padding-bottom:2rem;padding-left:.75rem;padding-right:.75rem}}.wrong-role-banner{color:var(--text-secondary);background:#ffb8001f;border:1px solid #ffb80059;border-radius:8px;margin-bottom:1.5rem;padding:.75rem 1rem;font-size:.9rem}.wrong-role-banner a{color:var(--accent-teal);font-weight:600}.hub-hero{margin-bottom:2.5rem;padding-top:.25rem}.hub-hero .lead{color:var(--text-secondary);margin:1rem 0 1.5rem;line-height:1.6}.hub-ctas{flex-wrap:wrap;gap:.75rem;margin-top:1rem;display:flex}.btn{border-radius:6px;padding:.5rem 1rem;font-weight:600;text-decoration:none;transition:opacity .2s,box-shadow .2s,border-color .2s;display:inline-block}.btn:focus-visible{outline:2px solid var(--accent-teal);outline-offset:2px}.btn-primary{background:var(--accent-teal);color:var(--bg-primary);font-family:var(--font-display);box-shadow:0 0 20px #00d9ff99}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 0 30px #00d9ffcc}.btn-secondary{color:var(--accent-electric,#09f);border:2px solid var(--accent-electric,#09f);background:0 0}.btn-secondary:hover{background:var(--accent-electric,#09f);color:var(--color-soft-white,#f0f4f8)}.btn-secondary:focus-visible{outline-color:var(--accent-teal);border-color:var(--border-hover)}.steps-section{margin-top:2.5rem}.steps-list{color:var(--text-secondary);margin:.5rem 0 0 1.25rem;padding-left:1rem;line-height:1.6}.steps-list li{margin-bottom:.75rem}.steps-list--numbered{padding-left:1.5rem;list-style:decimal}.hub-developer .steps-list--numbered li{border-left:3px solid #00d9ff66;margin-bottom:.75rem;margin-left:-.25rem;padding-left:.75rem}.hub-community .steps-list--numbered li{border-left:3px solid #ffb80080;margin-bottom:.75rem;margin-left:-.25rem;padding-left:.75rem}.hub-operator .steps-list--numbered li{border-left:3px solid #0099ff80;margin-bottom:.75rem;margin-left:-.25rem;padding-left:.75rem}.steps-list a{color:var(--accent-teal)}.hub-page .section{margin-top:2.5rem}.hub-page .section:first-child{margin-top:0}.hub-page .section h1{margin:0 0 .5rem;font-size:1.5rem}.hub-page .section h2{color:var(--text-primary);margin:0 0 .75rem;font-size:1.25rem}.hub-page .section h2:not(:first-child){margin-top:1.5rem}.hub-page .section h3{color:var(--text-primary);margin:1rem 0 .25rem;font-size:1rem}.hub-page .muted{color:var(--text-tertiary);margin:0 0 1rem;font-size:.9rem}.hub-page .section p{margin:0 0 .75rem;line-height:1.55}.hub-page .section p:last-child{margin-bottom:0}.hub-page .subsection{margin-top:1.5rem}.hub-page .subsection h2{margin-top:0}.hub-page .dashboard-placeholder{border:1px dashed var(--border-color);background:linear-gradient(#0a1e2e80 0%,#0d2e4280 100%);border-radius:8px;margin:1rem 0 1.25rem;padding:1.25rem}.hub-page .dashboard-placeholder p{color:var(--text-secondary);margin:0 0 .5rem}.hub-page .dashboard-placeholder p:last-child{margin-bottom:0}.hub-page .section ul{color:var(--text-secondary);margin:.5rem 0 0 1.2rem;padding-left:.5rem}.hub-page .section code{background:#ffffff14;border-radius:4px;padding:.15rem .4rem;font-size:.9em}.hub-metrics{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem;margin:1rem 0 1.5rem;display:grid}@media (width<=380px){.hub-metrics{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem}}.hub-metric-card{background:linear-gradient(168deg, var(--stone-deep,#06080c) 0%, var(--stone-mid,#0c1018) 100%);border:1px solid var(--border-color);text-align:center;border-radius:12px;padding:1rem;transition:border-color .2s,box-shadow .2s}.hub-metric-card:hover{border-color:#00d9ff66;box-shadow:0 0 20px #00d9ff26}.hub-metric-card:focus-within{outline:2px solid var(--accent-teal);outline-offset:2px}.hub-metric-card .value{color:var(--accent-teal);font-size:1.75rem;font-weight:700;font-family:var(--font-mono)}.hub-metric-card .label{color:var(--text-tertiary);margin-top:.25rem;font-size:.8rem}.leaderboard-table{border-collapse:collapse;width:100%;font-size:.9rem}@media (width<=640px){.leaderboard-table{font-size:.85rem}.leaderboard-table th,.leaderboard-table td{padding:.4rem .5rem}}.leaderboard-wrapper{-webkit-overflow-scrolling:touch;min-width:0;margin:1rem 0;overflow-x:auto}.leaderboard-table th,.leaderboard-table td{text-align:left;border-bottom:1px solid var(--border-color);padding:.75rem 1rem}.leaderboard-table th{color:var(--text-tertiary);font-weight:600}.leaderboard-table tbody tr{transition:background-color .2s}.leaderboard-table tbody tr:hover{background:#00d9ff14}.leaderboard-placeholder-note{border:1px dashed var(--border-color);color:var(--text-secondary);background:linear-gradient(#0a1e2e80 0%,#0d2e4280 100%);border-radius:8px;margin-top:1.25rem;padding:1.25rem;font-size:.9rem}.hub-leaderboard-animate tbody tr.hub-leaderboard-row{animation:.4s ease-out both hub-row-in}.hub-leaderboard-animate tbody tr.hub-leaderboard-row:first-child{animation-delay:50ms}.hub-leaderboard-animate tbody tr.hub-leaderboard-row:nth-child(2){animation-delay:.1s}.hub-leaderboard-animate tbody tr.hub-leaderboard-row:nth-child(3){animation-delay:.15s}.hub-leaderboard-animate tbody tr.hub-leaderboard-row:nth-child(n+4){animation-delay:.2s}@keyframes hub-row-in{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.hub-leaderboard-row--gold{background:linear-gradient(90deg,#fbbf241f,#0000)}.hub-leaderboard-row--silver{background:linear-gradient(90deg,#cbd5e11f,#0000)}.hub-leaderboard-row--bronze{background:linear-gradient(90deg,#cd7f321f,#0000)}@media (prefers-reduced-motion:reduce){.hub-leaderboard-animate tbody tr.hub-leaderboard-row{animation:none}}.dashboard-load{margin:1rem 0 1.25rem}.dashboard-load label{color:var(--text-secondary);margin-bottom:.25rem;font-size:.9rem;display:block}.dashboard-load input{border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);font-family:var(--font-mono);border-radius:6px;width:320px;max-width:100%;margin-right:.5rem;padding:8px 12px;transition:border-color .2s}.dashboard-load input:focus-visible,.compact-form input:focus-visible{outline:2px solid var(--accent-teal);outline-offset:2px;border-color:var(--border-hover,#22d3ee80)}.dashboard-load button,.compact-form button{background:var(--accent-teal);color:var(--bg-primary);cursor:pointer;border:none;border-radius:6px;padding:8px 14px;font-weight:600;transition:opacity .2s}.dashboard-load button:focus-visible,.compact-form button:focus-visible{outline:2px solid var(--accent-teal);outline-offset:2px}.dashboard-loaded{margin-bottom:1rem}.dashboard-loaded .err{color:var(--error-color,#f87171)}.dashboard-loaded .dapp-list,.dashboard-loaded .quest-list-loaded{color:var(--text-secondary);margin:.5rem 0 0 1.2rem}.compact-form{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.5rem;display:flex}.compact-form input{border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);font-family:var(--font-mono);border-radius:6px;padding:8px 12px;font-size:.9rem;transition:border-color .2s}.form-message{color:var(--text-secondary);margin-top:.5rem;font-size:.9rem}.code-block{border:1px solid var(--border-color);background:#0000004d;border-radius:8px;padding:1rem;font-size:.85rem;overflow-x:auto}.code-block code{background:0 0;padding:0}.resources-list{margin:0;padding:0;list-style:none}.resources-list li{border:1px solid var(--border-color);background:linear-gradient(#0a1e2e99 0%,#0d2e4299 100%);border-radius:8px;margin-bottom:.75rem;padding:.75rem 1rem;transition:border-color .2s,transform .2s,box-shadow .2s}.resources-list li:hover{border-color:#00d9ff66;transform:translateY(-2px);box-shadow:0 4px 12px #0003,0 0 16px #00d9ff1a}@media (prefers-reduced-motion:reduce){.resources-list li:hover{transform:none}}.resources-list a{color:var(--accent-teal);font-weight:500}.resource-icon{vertical-align:middle;color:var(--accent-teal);margin-right:.5rem;display:inline-flex}.resources-list .desc{color:var(--text-secondary);margin-top:.25rem;font-size:.9rem}.resources-list.hub-list-animate li{animation:.4s ease-out both hub-list-in}.resources-list.hub-list-animate li:first-child{animation-delay:50ms}.resources-list.hub-list-animate li:nth-child(2){animation-delay:.1s}.resources-list.hub-list-animate li:nth-child(3){animation-delay:.15s}.resources-list.hub-list-animate li:nth-child(4){animation-delay:.2s}.resources-list.hub-list-animate li:nth-child(5){animation-delay:.25s}.resources-list.hub-list-animate li:nth-child(n+6){animation-delay:.3s}@keyframes hub-list-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.resources-list.hub-list-animate li{animation:none}}.testnet-progress-bar{border:1px solid var(--border-color);background:#0a1e2ecc;border-radius:999px;height:12px;margin:.75rem 0 1rem;overflow:hidden}.testnet-progress-bar__fill{height:100%;width:calc(var(--progress,0) * 1%);background:linear-gradient(90deg,#00d9ff,#0f8);border-radius:999px;max-width:100%;transition:width .8s cubic-bezier(.34,1.56,.64,1)}@media (prefers-reduced-motion:reduce){.testnet-progress-bar__fill{transition:none}}.testnet-chart-bars{margin:1rem 0}.testnet-chart-bar-row{align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.testnet-chart-bar-row:last-child{margin-bottom:0}.testnet-chart-bar-label{color:var(--text-secondary);flex:0 0 140px;font-size:.9rem}@media (width<=400px){.testnet-chart-bar-label{flex:0 0 100px;font-size:.85rem}.testnet-chart-bar-value{flex:0 0 2rem;font-size:.85rem}}.testnet-chart-bar-track{background:#0a1e2e99;border-radius:6px;flex:1;min-width:0;height:24px;overflow:hidden}.testnet-chart-bar-fill{height:100%;width:calc(var(--pct,0) * 1%);max-width:100%;transition:width .7s cubic-bezier(.34,1.56,.64,1);transition-delay:var(--delay,0s);background:linear-gradient(90deg,#ffb800,#e5a600);border-radius:6px}.testnet-chart-bar-value{color:var(--accent-teal);font-size:.9rem;font-weight:600;font-family:var(--font-mono);text-align:right;flex:0 0 2.5rem}@media (prefers-reduced-motion:reduce){.testnet-chart-bar-fill{transition:none}}.testnet-how-it-works{margin:2rem 0}.testnet-how-it-works__steps{grid-template-columns:repeat(3,1fr);gap:0;max-width:720px;margin:0 auto;display:grid;position:relative}@media (width<=640px){.testnet-how-it-works__steps{grid-template-columns:1fr;gap:1.5rem}}.testnet-how-it-works__connector{opacity:0;background:linear-gradient(90deg,#00d9ff66,#00d9ff99);border-radius:1px;height:2px;animation:.6s ease-out .4s forwards testnet-connector-draw;position:absolute;top:28px;left:16.666%;right:16.666%}@media (width<=640px){.testnet-how-it-works__connector{display:none}}@keyframes testnet-connector-draw{0%{opacity:0;transform-origin:0;transform:scaleX(0)}to{opacity:1;transform-origin:0;transform:scaleX(1)}}.testnet-step{text-align:center;padding:1rem .75rem;animation:.5s ease-out both testnet-step-in}.testnet-step--1{animation-delay:.1s}.testnet-step--2{animation-delay:.25s}.testnet-step--3{animation-delay:.4s}@keyframes testnet-step-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.testnet-how-it-works__connector{opacity:1;animation:none}.testnet-step,.testnet-step--1,.testnet-step--2,.testnet-step--3{opacity:1;animation:none;transform:none}}.testnet-step__num{background:var(--accent-teal);width:40px;height:40px;color:var(--bg-primary);border-radius:50%;justify-content:center;align-items:center;margin-bottom:.5rem;font-size:1.1rem;font-weight:700;display:inline-flex;box-shadow:0 0 20px #00d9ff99}.testnet-step__title{color:var(--text-primary);margin:0 0 .25rem;font-size:1rem;font-weight:600}.testnet-step__desc{color:var(--text-tertiary);margin:0;font-size:.85rem;line-height:1.4}.testnet-glance{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin:1.25rem 0;display:grid}.testnet-glance__card{background:linear-gradient(168deg, var(--stone-deep,#06080c) 0%, var(--stone-mid,#0c1018) 100%);border:1px solid var(--border-color);text-align:center;border-radius:12px;padding:1.25rem;transition:border-color .2s,box-shadow .2s}.testnet-glance__card:hover{border-color:#00d9ff66;box-shadow:0 6px 20px #00000026,0 0 20px #00d9ff1a}.testnet-glance__value{color:var(--accent-teal);font-size:1.75rem;font-weight:700;font-family:var(--font-mono);display:block}.testnet-glance__label{color:var(--text-tertiary);margin-top:.25rem;font-size:.8rem}.hub-dapp-strip{flex-wrap:wrap;gap:.35rem;margin:1rem 0;display:flex}.hub-dapp-strip__pill{background:var(--accent-teal);opacity:.85;border-radius:50%;width:10px;height:10px;animation:.4s ease-out both hub-pill-in}.hub-dapp-strip__pill:first-child{animation-delay:50ms}.hub-dapp-strip__pill:nth-child(2){animation-delay:.1s}.hub-dapp-strip__pill:nth-child(3){animation-delay:.15s}.hub-dapp-strip__pill:nth-child(4){animation-delay:.2s}.hub-dapp-strip__pill:nth-child(5){animation-delay:.25s}.hub-dapp-strip__pill:nth-child(n+6){animation-delay:.3s}@keyframes hub-pill-in{0%{opacity:0;transform:scale(0)}to{opacity:.85;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.hub-dapp-strip__pill{opacity:.85;animation:none}}.hub-rank-badge{min-width:3rem;font-size:1rem;font-weight:700;font-family:var(--font-mono);color:var(--bg-primary);background:var(--accent-teal);border-radius:8px;justify-content:center;align-items:center;padding:.35rem .6rem;animation:2s ease-in-out infinite hub-rank-pulse;display:inline-flex;box-shadow:0 0 20px #00d9ff99}@keyframes hub-rank-pulse{0%,to{box-shadow:0 0 20px #00d9ff99}50%{box-shadow:0 0 30px #00d9ffcc}}@media (prefers-reduced-motion:reduce){.hub-rank-badge{animation:none}}.hub-empty-state{position:relative}.hub-empty-state__visual{text-align:center;margin-top:1rem}
