.gg-catalog__title{font-size:28px;font-weight:700;margin:24px 0 8px;color:var(--text-color,#171717)}
.gg-catalog__subtitle{color:var(--text-gray-color,#969ba5);margin-bottom:24px;max-width:760px}
.gg-input{width:100%;border:1.5px solid var(--border-color,#ddd);border-radius:8px;padding:11px 14px;font-size:15px;background:#fff;outline:none;transition:border-color .18s}
.gg-input:focus{border-color:var(--color-secondary,#0088cc)}
.gg-input:disabled{background:#f3f3f3;color:#aaa;cursor:not-allowed}
.gg-input--loading{background-image:linear-gradient(90deg,transparent,rgba(0,0,0,.04),transparent);background-size:200% 100%;animation:gg-loading 1.1s linear infinite}
@keyframes gg-loading{0%{background-position:200% 0}100%{background-position:-200% 0}}
.gg-filter{background:var(--color-bg-second,#E5F9FF);border-radius:16px;padding:16px;margin-bottom:24px}
.gg-filter__row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.gg-filter__field{flex:1 1 160px;min-width:140px}
.gg-filter__field--search{flex:2 1 240px}
.gg-filter__field--hp{display:flex;gap:8px}
/* ==== поиск: подсказки/популярные запросы ==== */
.gg-filter__field--search{position:relative}
.gg-suggest{position:absolute;left:0;right:0;top:calc(100% + 6px);background:#fff;border:1px solid var(--border-color,#ddd);border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.12);padding:10px;z-index:20;display:flex;flex-wrap:wrap;gap:6px}
.gg-suggest__label{width:100%;font-size:11px;color:#999;text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}
.gg-suggest__item{border:1px solid var(--border-color,#ddd);background:var(--color-bg-second,#E5F9FF);border-radius:20px;padding:6px 12px;font-size:13px;cursor:pointer;color:#2c3e50;transition:background .15s,color .15s}
.gg-suggest__item:hover{background:var(--color-secondary,#0088cc);color:#fff}

/* ==== бесконечная лента ==== */
.gg-loader{display:flex;align-items:center;justify-content:center;gap:10px;padding:22px 0;color:#888;font-size:14px}
.gg-loader[hidden]{display:none}
.gg-loader__spin{width:18px;height:18px;border-radius:50%;border:2px solid #ddd;border-top-color:var(--color-primary,#012ECD);animation:gg-spin .7s linear infinite}
@keyframes gg-spin{to{transform:rotate(360deg)}}
.gg-sentinel{height:1px}
.gg-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:10px;padding:12px 22px;font-size:15px;font-weight:600;cursor:pointer;text-decoration:none;transition:opacity .18s,transform .12s}
.gg-btn:hover{opacity:.92}.gg-btn:active{transform:translateY(1px)}
.gg-btn--primary{background:var(--color-primary,#012ECD);color:#fff}
.gg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px;margin-bottom:28px}
@media(max-width:600px){
    .gg-grid{
        grid-template-columns: repeat(auto-fill,minmax(172px,2fr));
        gap: 8px;
    }
}
.gg-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--border-color,#ddd);border-radius:14px;overflow:hidden;text-decoration:none;color:inherit;transition:box-shadow .2s,transform .2s}
.gg-card:hover{box-shadow:0 8px 28px rgba(0,0,0,.10);transform:translateY(-3px)}
.gg-card__img{position:relative;aspect-ratio:16/10;background:var(--color-bg-grey,#fafafa);display:flex;align-items:center;justify-content:center;overflow:hidden}
.gg-card__img img{width:100%;height:100%;object-fit:contain}
.gg-card__noimg{color:#bbb;font-size:13px}
.gg-badge{position:absolute;top:8px;left:8px;font-size:11px;font-weight:600;padding:3px 9px;border-radius:20px;color:#fff}
.gg-badge--gray{background:#888}.gg-badge--orange{background:#e67e22}.gg-badge--blue{background:var(--color-secondary,#0088cc)}
.gg-card__body{padding:12px 14px 16px}
.gg-card__title{font-weight:700;font-size:16px}
.gg-card__gen{color:var(--text-gray-color,#969ba5);font-size:13px;margin:4px 0}
.gg-card__years{opacity:.8}
.gg-card__hp{font-size:13px;font-weight:600;color:var(--color-primary,#012ECD);margin-top:6px}
.gg-empty{grid-column:1/-1;text-align:center;padding:40px;color:#999}


/* DETAIL */
.gg-breadcrumbs{font-size:13px;color:#999;margin:18px 0}
.gg-breadcrumbs a{color:var(--href-color-light,#0088cc);text-decoration:none}
.gg-detail__head{display:flex;gap:28px;flex-wrap:wrap;margin-bottom:32px;align-items:flex-start}
.gg-detail__img{flex:1 1 360px;max-width:480px;aspect-ratio:16/10;background:var(--color-bg-grey,#fafafa);border-radius:16px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.gg-detail__img img{width:100%;height:100%;object-fit:contain}
.gg-detail__info{flex:1 1 320px}
.gg-detail__title{font-size:26px;font-weight:700;margin:0 0 6px}
.gg-detail__gen{color:var(--text-gray-color,#969ba5);margin-bottom:14px}
.gg-detail__meta{list-style:none;padding:0;margin:0 0 14px;display:flex;flex-wrap:wrap;gap:8px 20px}
.gg-detail__hint{color:#666;font-size:14px}
.gg-mod{border:1px solid var(--border-color,#ddd);border-radius:16px;padding:20px;margin-bottom:22px;background:#fff}
.gg-mod__title{font-size:19px;font-weight:700;margin:0 0 8px}
.gg-mod__specs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}
.gg-mod__specs span{background:var(--color-bg-second,#E5F9FF);border-radius:20px;padding:4px 12px;font-size:12px;color:#2c3e50}
.gg-notice{display:flex;flex-wrap:wrap;align-items:center;gap:16px;justify-content:space-between;border-radius:12px;padding:16px 20px;margin-top:12px}
.gg-notice--info{background:#fff7e6;border:1px solid #ffe0a3}
.gg-notice--gray{background:#f1f1f1;border:1px solid #ddd}
.gg-notice__text{flex:1 1 280px;color:#333;font-size:15px}
.gg-kits{display:flex;flex-direction:column;gap:14px;margin-top:14px}
.gg-kit{display:flex;flex-wrap:wrap;gap:18px;border:1px solid var(--border-color,#ddd);border-radius:14px;padding:18px;background:var(--color-bg-grey,#fafafa)}
.gg-kit__main{flex:1 1 360px}
.gg-kit__name{font-size:18px;font-weight:700;margin-bottom:10px;color:var(--color-primary,#012ECD)}
.gg-kit__specs{display:flex;flex-direction:column;gap:5px;font-size:14px}
.gg-kit__spec span{color:#888}
.gg-kit__forced{display:block;color:#e67e22;font-size:12px;font-style:normal}
.gg-config{margin-top:14px}
.gg-config summary{cursor:pointer;color:var(--href-color-light,#0088cc);font-weight:600;font-size:14px;user-select:none}
.gg-config__body{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:12px}
.gg-config__label{display:block;font-size:12px;color:#888;margin-bottom:4px}
.gg-kit__aside{flex:0 0 220px;display:flex;flex-direction:column;justify-content:center;gap:12px;align-items:flex-start}
.gg-kit__price-label{display:block;font-size:13px;color:#888}
.gg-kit__price-value{font-size:26px;font-weight:800;color:var(--text-color,#171717)}
.gg-kit__order{width:100%}
.gg-request{margin:40px 0;padding:28px;border-radius:18px;background:var(--color-bg-second,#E5F9FF)}
.gg-request__title{font-size:22px;font-weight:700;margin:0 0 6px}
.gg-request__subtitle{color:#555;margin-bottom:18px;max-width:640px}
.gg-request__form{max-width:520px}
@media(max-width:600px){
    .gg-kit__aside{flex:1 1 100%}
    .gg-detail__title{font-size:22px}
}

