/* ==========================================================================
   intl.css — элементы международной версии (переключатель языков, каталог)
   ========================================================================== */

/* ---------- Переключатель языка ---------- */
.lang{position:relative}
.lang-btn{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:12px;
    background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.10);color:#d1d5db;
    font-size:14px;font-weight:500;cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.lang-btn:hover{background:rgba(255,255,255,.10);color:#fff}
.lang-flag{width:22px;height:15px;border-radius:3px;display:block;object-fit:cover;box-shadow:0 0 0 1px rgba(255,255,255,.15)}
.lang-code{text-transform:uppercase;letter-spacing:.04em;font-weight:600;font-size:13px}
.lang-caret{width:14px;height:14px;transition:transform .2s;flex-shrink:0}
.lang.is-open .lang-caret{transform:rotate(180deg)}

.lang-menu{position:absolute;top:calc(100% + 10px);right:0;z-index:60;min-width:330px;padding:14px;
    border-radius:18px;background:rgba(17,17,28,.97);backdrop-filter:blur(24px);
    border:1px solid rgba(255,255,255,.12);box-shadow:0 18px 50px rgba(0,0,0,.55);
    opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .18s,transform .18s,visibility .18s}
.lang.is-open .lang-menu{opacity:1;visibility:visible;transform:translateY(0)}
.lang-menu-title{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;
    color:rgb(148,163,184);margin:0 0 12px 4px}
.lang-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
@media (max-width:520px){.lang-menu{min-width:0;width:min(88vw,330px)}.lang-grid{grid-template-columns:repeat(2,1fr)}}
.lang-item{display:flex;align-items:center;gap:9px;padding:10px;border-radius:12px;text-decoration:none;
    color:#e5e7eb;font-size:14px;font-weight:500;border:1px solid transparent;transition:background .18s,border-color .18s}
.lang-item:hover{background:rgba(255,255,255,.07)}
.lang-item img{width:26px;height:18px;border-radius:3px;flex-shrink:0;object-fit:cover;box-shadow:0 0 0 1px rgba(255,255,255,.15)}
.lang-item.is-active{background:rgba(59,130,246,.14);border-color:rgba(59,130,246,.40);color:#fff}

/* мобильный переключатель — в выпадающем меню навбара */
.lang-mobile{padding:14px 18px;border-top:1px solid rgba(255,255,255,.06)}
.lang-mobile .lang-menu-title{margin-left:0}

/* ---------- Каталог программ ---------- */
.app-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px}
.app-tile{display:flex;flex-direction:column;background:rgba(20,20,37,.72);border:1px solid rgba(255,255,255,.07);
    border-radius:20px;padding:22px;transition:transform .2s,border-color .2s,box-shadow .2s}
.app-tile:hover{transform:translateY(-3px);border-color:rgba(59,130,246,.35);box-shadow:0 14px 38px rgba(59,130,246,.12)}
.app-icon{width:64px;height:64px;border-radius:16px;object-fit:cover;margin-bottom:14px;
    background:rgba(255,255,255,.05);box-shadow:0 4px 14px rgba(0,0,0,.35)}
.app-icon-blank{display:flex;align-items:center;justify-content:center;font-size:26px;font-weight:800;color:#60a5fa}
.app-name{font-size:17px;font-weight:700;color:#fff;margin:0 0 6px;line-height:1.3}
.app-pkg{font-size:12px;color:rgb(107,114,128);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;margin:0 0 10px;word-break:break-all}
.app-desc{font-size:14px;line-height:1.55;color:rgb(156,163,175);margin:0 0 16px;flex:1}
.app-dl{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border-radius:12px;
    background:rgba(59,130,246,.14);border:1px solid rgba(59,130,246,.40);color:#60a5fa;
    font-size:14px;font-weight:600;text-decoration:none;transition:background .2s,color .2s}
.app-dl:hover{background:rgba(59,130,246,.24);color:#fff}
.app-empty{text-align:center;padding:60px 20px;color:rgb(156,163,175);font-size:16px;
    background:rgba(20,20,37,.5);border:1px dashed rgba(255,255,255,.10);border-radius:20px}

/* ---------- Р“Р°Р»РµСЂРµСЏ ---------- */
.gal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}
.gal-item{border-radius:20px;overflow:hidden;background:rgba(20,20,37,.7);border:1px solid rgba(255,255,255,.07);
    transition:transform .25s,border-color .25s,box-shadow .25s}
.gal-item:hover{transform:translateY(-4px);border-color:rgba(59,130,246,.35);box-shadow:0 16px 44px rgba(59,130,246,.14)}
.gal-item img{display:block;width:100%;height:auto}
.gal-cap{padding:14px 18px;font-size:14px;font-weight:600;color:#e5e7eb;text-align:center}
