.rating-stars-container:is(.rating-stars-container,.rating-stars-container *){position:relative;display:inline-flex;vertical-align:middle;height:var(--star-size);-webkit-user-select:none;user-select:none}.stars-layer:is(.rating-stars-container,.rating-stars-container *){display:flex;gap:2px}.stars-empty:is(.rating-stars-container,.rating-stars-container *){color:var(--border-strong)}.stars-filled:is(.rating-stars-container,.rating-stars-container *){position:absolute;top:0;left:0;height:100%;overflow:hidden;color:var(--gold);pointer-events:none;transition:width .3s ease-out}.stars-filled-inner:is(.rating-stars-container,.rating-stars-container *){display:flex;gap:2px;width:calc(var(--star-size) * 5 + 8px)}.star-svg:is(.rating-stars-container,.rating-stars-container *){width:var(--star-size);height:var(--star-size);flex-shrink:0;filter:drop-shadow(0 0 2px rgba(255,191,96,.2))}.interactive:is(.rating-stars-container,.rating-stars-container *){cursor:pointer}.stars-interaction:is(.rating-stars-container,.rating-stars-container *){position:absolute;top:0;left:0;width:100%;height:100%;display:flex;gap:2px;z-index:2}.star-hit-box:is(.rating-stars-container,.rating-stars-container *){width:var(--star-size);height:100%;flex-shrink:0;cursor:pointer;border-radius:4px}.star-hit-box:focus:is(.rating-stars-container,.rating-stars-container *){outline:none}.star-hit-box:focus-visible:is(.rating-stars-container,.rating-stars-container *){outline:2px solid var(--gold);outline-offset:2px}.servers-columns:is(.project-page,.project-page *){display:grid;grid-template-columns:1fr}.servers-list:is(.project-page,.project-page *){background:var(--panel);border-radius:8px;border:1px solid #2d333b;padding:14px}.official-check:is(.project-header,.project-header *){display:inline-flex;align-items:center;color:#7dd3a8;margin-left:6px;vertical-align:middle;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.official-check svg:is(.project-header,.project-header *){width:20px;height:20px}.promo-head:is(.project-header,.project-header *){display:flex;justify-content:space-between;gap:16px;align-items:center;padding:6px 2px 12px}.promo-text:is(.project-header,.project-header *){color:#f5f7fa;font-size:16px;font-weight:700;line-height:1.35}.project-page-title:is(.project-header,.project-header *){display:inline;margin:0;color:inherit;font:inherit;letter-spacing:0}.project-socials-head:is(.project-header,.project-header *){display:inline-flex;align-items:center;gap:10px;flex:0 0 auto;color:#aeb8c2;font-size:14px;font-weight:800;white-space:nowrap}.project-socials-label:is(.project-header,.project-header *){color:#8fa0ad;text-transform:uppercase;letter-spacing:.02em}.project-meta-row:is(.project-header,.project-header *){display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.meta-chip:is(.project-header,.project-header *){background:#1c2024;border:1px solid #2d333b;color:#cfd8e4;border-radius:8px;padding:6px 10px;font-size:12px}.chip-label:is(.project-header,.project-header *){color:var(--text-muted)}.chip-val:is(.project-header,.project-header *){color:#fff;font-weight:700}.meta-chip-link:is(.project-header,.project-header *){text-decoration:none;transition:background-color .2s ease,border-color .2s ease}.meta-chip-link:hover:is(.project-header,.project-header *){background:#2a3036;border-color:#fff3}.meta-chip-link:hover .chip-val:is(.project-header,.project-header *){color:#fff}.summary-detail-link:is(.project-header,.project-header *){display:inline-flex;align-items:center;gap:6px;padding:10px 18px;border-radius:4px;background:var(--surface);border:1px solid var(--border-strong);color:var(--text-muted);font-size:13px;font-weight:700;text-decoration:none;transition:background .2s ease,border-color .2s ease,color .2s ease}.summary-detail-link:hover:is(.project-header,.project-header *){background:#2a3036;border-color:#fff3;color:#fff;transform:none}.summary-detail-link-top:is(.project-header,.project-header *){padding:6px 10px;border-radius:8px;font-size:12px}.launch-history-grid:is(.project-launches,.project-launches *){display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:6px;margin-bottom:16px;max-height:160px;overflow-y:auto;padding-right:4px}.launch-history-grid:is(.project-launches,.project-launches *)::-webkit-scrollbar{width:4px}.launch-history-grid:is(.project-launches,.project-launches *)::-webkit-scrollbar-track{background:transparent}.launch-history-grid:is(.project-launches,.project-launches *)::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:2px}.history-card:is(.project-launches,.project-launches *){border:1px solid #2f3844;background:#141a22;color:#cbd5e1;border-radius:6px;padding:6px 10px;display:flex;flex-direction:column;align-items:flex-start;gap:2px;cursor:pointer;text-align:left;transition:all .2s;position:relative}.history-card:hover:is(.project-launches,.project-launches *){border-color:#555;background:#1a2028}.history-card.active:is(.project-launches,.project-launches *){border-color:#ffffff59;background:#353d47;color:#fff}.card-main-info:is(.project-launches,.project-launches *){display:flex;align-items:center;gap:6px;width:100%}.card-rate:is(.project-launches,.project-launches *){font-weight:800;font-size:14px}.card-sub-info:is(.project-launches,.project-launches *){display:flex;justify-content:space-between;width:100%;color:#9ca3af;font-size:11px}.card-chronicle:is(.project-launches,.project-launches *){opacity:.8}.card-date:is(.project-launches,.project-launches *){opacity:.7}.launch-summary:is(.project-launches,.project-launches *){border:1px solid #2d333b;border-radius:12px;background:linear-gradient(180deg,#1c2024 0%,var(--panel) 100%);padding:16px;margin-bottom:4px}.summary-grid:is(.project-launches,.project-launches *){display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}.summary-item:is(.project-launches,.project-launches *){display:flex;flex-direction:column;gap:4px;padding:10px 14px;border-radius:8px;background:#ffffff08;border:1px solid #2a313b}.summary-label:is(.project-launches,.project-launches *){color:var(--text-subtle);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.summary-item strong:is(.project-launches,.project-launches *){color:#f0f6fc;font-size:15px;font-weight:800}.summary-language:is(.project-launches,.project-launches *){display:inline-flex;align-items:center;gap:8px}.summary-language-flag:is(.project-launches,.project-launches *){width:20px;height:14px;object-fit:contain;border-radius:2px;box-shadow:0 1px 2px #0003}@media(max-width:900px){.summary-grid:is(.project-launches,.project-launches *){grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.summary-grid:is(.project-launches,.project-launches *){grid-template-columns:1fr}}.actions-row:is(.project-actions,.project-actions *){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:18px}.action-btn:is(.project-actions,.project-actions *){height:54px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;text-decoration:none;color:#101216;text-transform:uppercase}.action-btn.vote:is(.project-actions,.project-actions *){background:#26c45e;border:none;cursor:pointer;transition:all .2s}.action-btn.vote:hover:not(:disabled):is(.project-actions,.project-actions *){background:#2ecf68;transform:translateY(-2px);box-shadow:0 4px 12px #26c45e4d}.action-btn.vote.voted:is(.project-actions,.project-actions *){background:#26c45e26;color:#26c45e;border:1px solid rgba(38,196,94,.3);cursor:default}.action-btn.vote:disabled:not(.voted):is(.project-actions,.project-actions *){opacity:.6;cursor:not-allowed}.action-btn.open:is(.project-actions,.project-actions *){background:var(--surface);color:var(--text-muted);border:1px solid var(--border-strong);cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease}.action-btn.open:hover:is(.project-actions,.project-actions *){background:#2a3036;border-color:#fff3;color:#fff;transform:none;box-shadow:none}.action-btn.favorite:is(.project-actions,.project-actions *){background:var(--surface);color:#d9dee3;border:1px solid var(--border-strong);cursor:pointer;transition:all .2s}.action-btn.favorite:hover:is(.project-actions,.project-actions *){border-color:#fff3;color:#fff;background:#2a3036;transform:none}.action-btn.favorite.saved:is(.project-actions,.project-actions *){border-color:#ffffff59;color:#fff;background:#353d47}.action-btn.favorite.loading:is(.project-actions,.project-actions *){opacity:.8;cursor:wait}.small-spinner:is(.project-actions,.project-actions *){width:20px;height:20px;border:2px solid rgba(0,0,0,.1);border-top-color:#000;border-radius:50%;animation:spin .8s linear infinite}.small-spinner.spinner-light:is(.project-actions,.project-actions *){border-color:#ffffff26;border-top-color:var(--text-muted)}.vote-btn-group:is(.project-actions,.project-actions *){display:contents}.action-btn.vote.has-pin:is(.project-actions,.project-actions *){cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}.vote-timer-text:is(.project-actions,.project-actions *){font-size:14px;font-weight:700}.vote-pin-hint-text:is(.project-actions,.project-actions *){font-size:10px;font-weight:400;opacity:.65;letter-spacing:.03em;text-transform:none}.status-msg:is(.project-actions,.project-actions *){padding:8px 12px;border-radius:6px;font-size:15px;font-weight:600;line-height:1.4}.status-msg.error:is(.project-actions,.project-actions *){background:#f8514938;color:#ff7b72;border:1px solid rgba(248,81,73,.55)}.action-notice:is(.project-actions,.project-actions *){margin:12px 0 0}@media(max-width:900px){.actions-row:is(.project-actions,.project-actions *){grid-template-columns:1fr}}.desc-card:is(.project-reviews,.project-reviews *){margin-top:12px;border:1px solid #2d333b;border-radius:8px;overflow:hidden;background:var(--panel)}.tab-row:is(.project-reviews,.project-reviews *){display:flex;gap:0;padding:0;background:#1c2024;border-bottom:1px solid #2d333b}.tab-btn:is(.project-reviews,.project-reviews *){border:0;border-right:1px solid #2d333b;background:transparent;color:var(--text-muted);font-size:13px;font-weight:600;padding:12px 16px;cursor:pointer;transition:color .2s ease,background-color .2s ease;font-family:PT Sans,sans-serif;margin-bottom:-1px;border-bottom:1px solid transparent}.tab-btn:last-child:is(.project-reviews,.project-reviews *){border-right:0}.tab-btn.active:is(.project-reviews,.project-reviews *){color:#fff;background:var(--panel);border-bottom:1px solid var(--panel)}.desc-body:is(.project-reviews,.project-reviews *){padding:14px 16px;background:var(--panel)}.desc-body p:is(.project-reviews,.project-reviews *){margin:0;color:var(--text-muted);font-size:13px;line-height:1.65;white-space:pre-line;font-family:PT Sans,sans-serif}.rating-input-container:is(.project-reviews,.project-reviews *){display:inline-flex;margin-bottom:24px}.status-msg:is(.project-reviews,.project-reviews *){padding:8px 12px;border-radius:6px;font-size:15px;font-weight:600;line-height:1.4}.status-msg-slot:is(.project-reviews,.project-reviews *){min-height:48px;width:100%;display:flex;justify-content:center;align-items:flex-start}.status-msg.success:is(.project-reviews,.project-reviews *){background:#2ea04326;color:#3fb950;border:1px solid rgba(46,160,67,.4)}.status-msg.error:is(.project-reviews,.project-reviews *){background:#f8514938;color:#ff7b72;border:1px solid rgba(248,81,73,.55)}.review-comment-form:is(.project-reviews,.project-reviews *){display:flex;flex-direction:column;gap:12px;align-items:stretch;width:100%;max-width:500px;margin:0 auto}.review-textarea:is(.project-reviews,.project-reviews *){font-family:inherit;width:100%;padding:14px 16px;border-radius:4px;border:1px solid var(--border-strong);background:var(--bg-deep);color:#f0f6fc;resize:vertical;font-size:15px;line-height:1.55;box-shadow:inset 0 1px 2px #0000001a;transition:border-color .2s,box-shadow .2s,background-color .2s}.review-textarea:is(.project-reviews,.project-reviews *)::placeholder{color:var(--text-subtle);opacity:1}.review-textarea:focus:is(.project-reviews,.project-reviews *){border-color:#ffffff59;background:#161b22;box-shadow:0 0 0 2px #ffffff14;outline:none}.review-actions-row:is(.project-reviews,.project-reviews *){display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:4px}.review-submit-btn:is(.project-reviews,.project-reviews *){padding:10px 24px;border-radius:4px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text-muted);font-size:14px;font-weight:700;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease}.review-submit-btn:hover:not(:disabled):is(.project-reviews,.project-reviews *){background:#2a3036;border-color:#fff3;color:#fff;transform:none;box-shadow:none}.review-submit-btn:disabled:is(.project-reviews,.project-reviews *){background:var(--border);color:var(--text-subtle);cursor:not-allowed;box-shadow:none}.review-cancel-btn:is(.project-reviews,.project-reviews *){min-height:40px;padding:0 20px;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--text-subtle);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.review-cancel-btn:hover:not(:disabled):is(.project-reviews,.project-reviews *){background:#8b949e1a;color:var(--text-soft)}.google-reviews-wrapper:is(.project-reviews,.project-reviews *){width:100%;display:flex;flex-direction:column;gap:32px;padding-top:10px}.google-reviews-header:is(.project-reviews,.project-reviews *){display:flex;flex-direction:row;background:#161b22;border:1px solid var(--border-strong);border-radius:12px;overflow:hidden}@media(max-width:768px){.google-reviews-header:is(.project-reviews,.project-reviews *){flex-direction:column}}.google-rating-summary:is(.project-reviews,.project-reviews *){display:flex;flex-direction:column;gap:20px;flex:1;padding:32px;align-items:center;justify-content:center}.google-rating-score:is(.project-reviews,.project-reviews *){display:flex;align-items:center;gap:20px;min-width:100px}.score-value:is(.project-reviews,.project-reviews *){font-size:64px;font-weight:400;line-height:1;color:#fff;letter-spacing:-1px}.score-stars-col:is(.project-reviews,.project-reviews *){display:flex;flex-direction:column;align-items:flex-start;gap:6px}.score-count:is(.project-reviews,.project-reviews *){font-size:14px;color:var(--text-subtle)}.google-rating-bars:is(.project-reviews,.project-reviews *){display:flex;flex-direction:column;justify-content:center;gap:8px;width:100%;max-width:300px}.google-bar-row:is(.project-reviews,.project-reviews *){display:flex;align-items:center;gap:12px;font-size:13px;color:var(--text-subtle);font-weight:500}.google-bar-label:is(.project-reviews,.project-reviews *){min-width:12px;text-align:right}.google-bar-track:is(.project-reviews,.project-reviews *){flex:1;height:8px;background:#21262d;border-radius:4px;overflow:hidden}.google-bar-fill:is(.project-reviews,.project-reviews *){height:100%;background:var(--text-muted);border-radius:4px;transition:width .3s ease}.google-review-action:is(.project-reviews,.project-reviews *){flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;border-left:1px solid var(--border);padding:32px;background:var(--bg-deep);text-align:center}@media(max-width:768px){.google-review-action:is(.project-reviews,.project-reviews *){border-left:none;border-top:1px solid var(--border)}}.reviews-section-title:is(.project-reviews,.project-reviews *){font-size:20px;font-weight:700;line-height:1.2;color:#fff;margin:0 0 24px}.google-reviews-grid:is(.project-reviews,.project-reviews *){display:flex;flex-direction:column;gap:0;background:#161b22;border:1px solid var(--border-strong);border-radius:12px}.review-pagination:is(.review-pagination,.review-pagination *){display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;margin:20px 0}.review-pagination button:is(.review-pagination,.review-pagination *){min-width:100px;padding:8px 12px;border:1px solid var(--border-strong);border-radius:6px;color:inherit;background:#212830;cursor:pointer}.review-pagination button:disabled:is(.review-pagination,.review-pagination *){opacity:.45;cursor:default}.review-pagination span:is(.review-pagination,.review-pagination *){font-variant-numeric:tabular-nums}.review-rate-prompt:is(.review-form,.review-form *){color:var(--text-bright);font-size:16px;font-weight:500;line-height:1.55}.review-compact-view:is(.review-form,.review-form *){width:100%;max-width:520px;display:flex;flex-direction:column;align-items:center;gap:14px}.review-edit-hint:is(.review-form,.review-form *){margin:4px 0 0;color:#9fb0c3;font-size:13px;line-height:1.35}.review-own-controls:is(.review-form,.review-form *){display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.review-own-action:is(.review-form,.review-form *){min-height:36px;padding:8px 14px;border-radius:8px;border:1px solid var(--border-strong);background:#161b22;color:var(--text-bright);font-size:13px;font-weight:700;cursor:pointer;transition:all .2s ease}.review-own-action:hover:is(.review-form,.review-form *){border-color:#fff3;background:#2a3036;color:#fff}.review-own-action:disabled:is(.review-form,.review-form *){opacity:.55;cursor:not-allowed}.review-own-action.is-danger:is(.review-form,.review-form *){color:var(--danger)}.review-own-action.is-danger:hover:is(.review-form,.review-form *){border-color:var(--danger);background:#f8514914}.own-review-status:is(.review-form,.review-form *){margin-top:10px}.google-review-card:is(.google-review-card,.google-review-card *){padding:24px;border-bottom:1px solid var(--border)}.google-review-card:last-child:is(.google-review-card,.google-review-card *){border-bottom:none}.g-review-header:is(.google-review-card,.google-review-card *){display:flex;align-items:flex-start;gap:16px;margin-bottom:12px}.g-reviewer-avatar:is(.google-review-card,.google-review-card *){width:44px;height:44px;border-radius:50%;background:#21262d;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;border:1px solid var(--border)}.g-reviewer-avatar img:is(.google-review-card,.google-review-card *){width:100%;height:100%;object-fit:cover}.g-avatar-initial:is(.google-review-card,.google-review-card *){color:var(--text-subtle);font-size:18px;font-weight:600}.g-reviewer-info:is(.google-review-card,.google-review-card *){flex:1;display:flex;flex-direction:column;gap:4px;justify-content:center}.g-reviewer-name:is(.google-review-card,.google-review-card *){color:#f0f6fc;font-size:15px;font-weight:600}.g-reviewer-meta:is(.google-review-card,.google-review-card *){display:flex;align-items:center;gap:10px}.g-reviewer-date:is(.google-review-card,.google-review-card *){color:var(--text-subtle);font-size:13px}.g-review-body:is(.google-review-card,.google-review-card *){color:var(--text-soft);font-size:15px;line-height:1.6;margin-top:12px;white-space:pre-wrap;word-wrap:break-word;padding-left:60px}@media(max-width:640px){.g-review-body:is(.google-review-card,.google-review-card *){padding-left:0;margin-top:16px}}.g-owner-reply:is(.google-review-card,.google-review-card *){margin-top:20px;margin-left:60px;padding:16px;background:#ffffff08;border-radius:8px;border:1px solid var(--border-strong)}@media(max-width:640px){.g-owner-reply:is(.google-review-card,.google-review-card *){margin-left:0;border-left:3px solid rgba(255,255,255,.35);border-radius:0 8px 8px 0;background:#ffffff08}}.g-reply-header:is(.google-review-card,.google-review-card *){display:flex;align-items:center;gap:8px;margin-bottom:8px}.g-reply-header svg:is(.google-review-card,.google-review-card *){width:14px;height:14px;color:var(--text-muted)}.g-reply-header strong:is(.google-review-card,.google-review-card *){color:#fff;font-size:14px;font-weight:600}.g-reply-date:is(.google-review-card,.google-review-card *){color:var(--text-subtle);font-size:12px;margin-left:auto}.g-reply-body:is(.google-review-card,.google-review-card *){color:var(--text-soft);font-size:14px;line-height:1.5}.reply-inline-actions:is(.google-review-card,.google-review-card *){display:flex;align-items:center;gap:8px;margin-left:auto}.g-reply-date+.reply-inline-actions:is(.google-review-card,.google-review-card *){margin-left:8px}.reply-inline-editor:is(.google-review-card,.google-review-card *){margin-top:12px}.review-inline-actions:is(.google-review-card,.google-review-card *){display:flex;align-items:center;gap:8px;margin-left:auto}.review-inline-action-btn:is(.google-review-card,.google-review-card *){width:32px;height:32px;border-radius:4px;border:1px solid var(--border-strong);background:#161b22;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.review-inline-action-btn:hover:is(.google-review-card,.google-review-card *){border-color:#fff3;background:#2a3036;color:#fff}.review-inline-action-btn:disabled:is(.google-review-card,.google-review-card *){opacity:.55;cursor:not-allowed}.review-inline-action-btn.is-danger:is(.google-review-card,.google-review-card *){color:var(--danger)}.review-inline-action-btn.is-danger:hover:is(.google-review-card,.google-review-card *){border-color:var(--danger);background:#f8514914}.review-inline-action-btn svg:is(.google-review-card,.google-review-card *){width:16px;height:16px}.review-inline-editor:is(.google-review-card,.google-review-card *){margin-top:16px;padding-top:16px;border-top:1px solid var(--border);padding-left:60px}@media(max-width:640px){.review-inline-editor:is(.google-review-card,.google-review-card *){padding-left:0}}.rating-input-container.review-inline-stars:is(.google-review-card,.google-review-card *){margin-bottom:12px}.review-comment-form.review-comment-form-inline:is(.google-review-card,.google-review-card *){max-width:100%;margin:0}.review-comment-form.review-comment-form-inline .review-textarea:is(.google-review-card,.google-review-card *){background:var(--bg-deep)}
