.module-page{min-height:100vh;background:#0d0d0f;padding:24px}@media(max-width:640px){.module-page{padding:16px}}.module-page__container{max-width:800px;margin:0 auto}.module-page__nav{margin-bottom:24px}.module-page__back{display:inline-flex;align-items:center;gap:8px;color:#64748b;text-decoration:none;font-size:.875rem;transition:color .2s ease}.module-page__back:hover{color:#94a3b8}.module-page__header{display:flex;align-items:flex-start;gap:20px;padding:32px;background:linear-gradient(135deg,color-mix(in srgb,var(--module-color) 15%,transparent) 0,transparent 100%);border:1px solid hsla(0,0%,100%,.06);border-radius:16px;margin-bottom:24px}@media(max-width:640px){.module-page__header{flex-direction:column;padding:24px}}.module-page__icon{width:72px;height:72px;display:flex;align-items:center;justify-content:center;background:hsla(0,0%,100%,.05);border:2px solid var(--module-color);border-radius:16px;font-size:2.5rem;flex-shrink:0}.module-page__title-block{flex:1;min-width:0}.module-page__breadcrumb{display:flex;align-items:center;gap:8px;font-size:1.5rem;font-weight:600;margin-bottom:12px;flex-wrap:wrap}@media(max-width:640px){.module-page__breadcrumb{font-size:1.25rem}}.module-page__author-link{color:#94a3b8;text-decoration:none;transition:color .2s ease}.module-page__author-link:hover{color:var(--module-color)}.module-page__separator{color:#475569}.module-page__module-name{color:#f1f5f9}.module-page__badges{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.module-page__license{padding:4px 12px;border-radius:6px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.module-page__license--open{background:rgba(34,197,94,.15);color:#4ade80}.module-page__license--closed{background:rgba(168,85,247,.15);color:#c084fc}.module-page__type{font-size:.875rem;color:#64748b}.module-page__actions{flex-shrink:0}@media(max-width:640px){.module-page__actions{width:100%}}.module-page__install-btn{display:flex;align-items:center;gap:8px;background:var(--module-color);color:#fff;border:none;padding:12px 24px;font-size:.9375rem;font-weight:600;transition:all .2s ease}.module-page__install-btn:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px)}.module-page__install-btn:disabled{opacity:.7;cursor:not-allowed}@media(max-width:640px){.module-page__install-btn{width:100%;justify-content:center}}.module-page__installed-btn{display:flex;align-items:center;gap:8px;background:rgba(34,197,94,.2);color:#4ade80;border:1px solid rgba(34,197,94,.3);padding:12px 24px;font-size:.9375rem;font-weight:600;cursor:default}@media(max-width:640px){.module-page__installed-btn{width:100%;justify-content:center}}.module-page__stats{display:flex;gap:24px;margin-bottom:32px}@media(max-width:480px){.module-page__stats{flex-direction:column;gap:12px}}.module-page__stat{display:flex;align-items:center;gap:10px;padding:16px 20px;background:hsla(0,0%,100%,.02);border:1px solid hsla(0,0%,100%,.05);border-radius:12px;flex:1}.module-page__stat-icon{width:20px;height:20px;color:var(--module-color)}.module-page__stat-value{font-size:1.125rem;font-weight:600;color:#f1f5f9}.module-page__stat-label{font-size:.8125rem;color:#64748b}.module-page__content{display:flex;flex-direction:column;gap:24px}.module-page__section{padding:24px;background:hsla(0,0%,100%,.02);border:1px solid hsla(0,0%,100%,.05);border-radius:12px}.module-page__section-title{font-size:1rem;font-weight:600;color:#94a3b8;margin:0 0 16px;text-transform:uppercase;letter-spacing:.05em}.module-page__description{font-size:1rem;color:#e2e8f0;line-height:1.7;margin:0}.module-page__list{margin:0;padding-left:20px;color:#e2e8f0;line-height:1.8}.module-page__list li{margin-bottom:8px}.module-page__list li:last-child{margin-bottom:0}.module-page__author-card{display:flex;align-items:center;gap:16px;padding:16px;background:hsla(0,0%,100%,.03);border:1px solid hsla(0,0%,100%,.06);border-radius:12px;text-decoration:none;transition:all .2s ease}.module-page__author-card:hover{background:hsla(0,0%,100%,.05);border-color:var(--module-color)}.module-page__author-card:hover .module-page__author-arrow{transform:translateX(4px);color:var(--module-color)}.module-page__author-avatar{width:48px;height:48px;flex-shrink:0}.module-page__author-info{flex:1;min-width:0}.module-page__author-name{display:block;font-size:1rem;font-weight:600;color:#f1f5f9}.module-page__author-username{display:block;font-size:.875rem;color:#64748b;margin-top:2px}.module-page__author-arrow{width:20px;height:20px;color:#475569;transition:all .2s ease;flex-shrink:0}