/* =========================================================
   AppLite — single stylesheet
   Light mode only. Green accent, white page, soft bands,
   1px borders, system fonts, mobile-first, Grid/Flex layout.
   ========================================================= */

:root{
  /* Brand + ink */
  --brand:#16A34A;
  /* Button colours (--btn, --btn-dark, --btn-text) are deliberately NOT declared
     here. They are set only by the Customizer's inline block, and every use below
     carries its own fallback: var(--btn, var(--brand)).

     Declaring them in :root as well looked harmless and was not — a CSS
     optimiser that moves the inline block above this stylesheet would let these
     win, and the chosen button colour would silently revert. With no declaration
     to override, the inline value applies whatever order the files load in. */
  --brand-dark:#15803D;
  --brand-soft:#DCFCE7;
  --ink:#0F172A;
  --body:#475569;
  --muted:#94A3B8;
  --line:#E2E8F0;
  --bg:#FFFFFF;
  --bg-soft:#F8FAFC;
  --badge:#F59E0B;
  --footer-bg:#03170D;   /* deep green band under the light page */
  --radius:14px;

  /* Derived */
  --radius-sm:10px;
  --radius-pill:999px;
  --telegram:#229ED9;
  --shadow-hover:0 8px 24px rgba(15,23,42,.10);
  --shadow-soft:0 1px 2px rgba(15,23,42,.04);
  --maxw:1120px;
  --gutter:16px;

  /* Header menu (Customizer) */
  --menu-size:14px;
  --menu-weight:500;
  --menu-transform:none;
  --menu-letter-spacing:normal;
  --menu-color:var(--body);

  --font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,
         "Apple Color Emoji","Segoe UI Emoji";
}

/* ---------- Reset / base ---------- */
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
body{
  margin:0;padding:0;
  background:var(--bg);
  color:var(--body);
  font-family:var(--font);
  font-size:16px;
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
/* Long unbroken strings (URLs, package names, hashes) must wrap instead of
   pushing a card past the viewport on a narrow phone. */
body,h1,h2,h3,h4,h5,h6,p,li,td,th,dd,dt,figcaption,summary,label,a,span,strong,em,div{
  overflow-wrap:break-word;
  word-break:break-word;
}
h1,h2,h3,h4,h5,h6{
  color:var(--ink);
  font-weight:700;
  line-height:1.25;
  letter-spacing:-.01em;
  margin:0 0 .5em;
}
h1{font-size:clamp(24px,5vw,34px);}
h2{font-size:clamp(20px,3.6vw,26px);}
h3{font-size:clamp(17px,2.6vw,20px);}
h4{font-size:16px;}
p{margin:0 0 1em;}
p:last-child{margin-bottom:0;}
img,svg,video{max-width:100%;height:auto;display:block;}
a{color:var(--brand-dark);text-decoration:none;}
a:hover{color:var(--brand-dark);text-decoration:underline;}
button{font-family:inherit;font-size:inherit;}
ul,ol{padding-left:1.25em;}
:focus-visible{outline:2px solid var(--brand-dark);outline-offset:2px;border-radius:4px;}
@media (prefers-reduced-motion: reduce){
  *{animation-duration:.01ms !important;transition-duration:.01ms !important;scroll-behavior:auto !important;}
}

/* ---------- Layout safety net ----------
   Hard requirement: every grid and flex item gets min-width:0, so a long word or
   a wide child can never blow the track out and burst the card past the viewport.
   Listed per container rather than with a blanket `* > *` so it stays predictable. */
.site-header > *,.hdr-left > *,.hdr-right > *,.hdr-nav-desktop > *,.hdr-nav-list > *,
.tabs-nav > *,.tab-panel > *,
.app-row > *,.col-info > *,.app-bonus > *,.app-withdraw > *,
.apk-article-grid > *,.apk-article-card > *,.apk-article-body > *,
.apk-featured-grid > *,.apk-featured-card > *,.apk-featured-body > *,.apk-featured-rating > *,
.apk-directory-grid > *,
.apk-quicklinks > *,.apk-quicklink-card > *,.apk-quicklink-text > *,
.apk-section-head > *,
.apk-stats-grid > *,.apk-stat > *,
.apk-rating > *,.apk-rating-stars > *,.apk-rating-meta > *,
.apk-proscons > *,.apk-proscons-col > *,.apk-proscons-col li > *,
.apk-postnav > *,.apk-topic-links > *,
.apk-index-grid > *,.apk-related-grid > *,
.apk-page-layout > *,.apk-sidebar > *,.apk-sidebar-related-list > *,.apk-sidebar-related-item > *,
.apk-trustbar > *,.apk-trustbar-items > *,.apk-trustbar-main > *,
.apk-other-apps-grid > *,
.apk-hero-inner > *,.apk-hero-ctas > *,
.apk-search-form > *,.apk-search-form-header > *,.apk-search-form-home > *,
.apk-sticky-bar > *,.apk-sticky-download > *,
.footer-inner > *,.footer-cta > *,.footer-cta-actions > *,
.footer-links > *,.footer-social > *,.footer-bottom > *,
.single-app-header > *,.btn-group > *,.share-bar > *,.error-wrap > *,
.apk-cat-bar > *,.apk-faq-item summary > *{
  min-width:0;
}

/* ---------- Shared shells ---------- */
.site-main{display:block;}
.apk-shell,
.apk-seo-article,
.apk-featured-apps,
.apk-home-cat-section,
.apk-related-section,
.apk-index-section,
.apk-other-apps,
.apk-search-results-wrap,
.apk-page-hero,
.apk-breadcrumb,
.apk-cat-bar,
.apk-page-layout,
.apk-faq-section,
.apk-postnav,
.apk-trustbar,
.apk-quicklinks,
.notice-box,
.share-bar,
.apk-detail-wrap{
  max-width:var(--maxw);
  margin-left:auto;
  margin-right:auto;
  padding-left:var(--gutter);
  padding-right:var(--gutter);
}

/* Section heading with a small green accent bar */
.apk-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;}
.apk-section-head h2,
.apk-other-apps > h2,
.apk-related-section > h2,
.apk-index-section > h2,
.apk-faq-section > h2,
.apk-seo-article > h2{
  position:relative;
  padding-left:14px;
  margin:0 0 16px;
}
.apk-section-head h2{margin:0;}
.apk-section-head h2::before,
.apk-other-apps > h2::before,
.apk-related-section > h2::before,
.apk-index-section > h2::before,
.apk-faq-section > h2::before,
.apk-seo-article > h2::before{
  content:'';
  position:absolute;left:0;top:.18em;bottom:.18em;
  width:4px;border-radius:2px;background:var(--brand);
}
.apk-section-viewall{
  font-size:14px;font-weight:600;color:var(--brand-dark);
  white-space:nowrap;flex-shrink:0;
}
.apk-section-viewall:hover{text-decoration:underline;}
.apk-empty{padding:40px var(--gutter);text-align:center;color:var(--muted);}

/* ---------- Header ---------- */
.site-header{
  position:sticky;top:0;z-index:99;
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:10px var(--gutter);
  min-height:64px;
  background:rgba(255,255,255,.92);
  backdrop-filter:saturate(160%) blur(10px);
  -webkit-backdrop-filter:saturate(160%) blur(10px);
  border-bottom:1px solid var(--line);
}
.hdr-left{display:flex;align-items:center;gap:10px;min-width:0;}
.hdr-left img{height:40px;width:auto;max-width:170px;object-fit:contain;}
.hdr-title{
  color:var(--ink);font-size:17px;font-weight:700;line-height:1.2;
  text-decoration:none;
}
.hdr-title:hover{color:var(--brand-dark);text-decoration:none;}
.hdr-logo-fallback{
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  width:40px;height:40px;border-radius:12px;
  background:var(--brand-soft);color:var(--brand-dark);
}
.hdr-logo-fallback svg{width:22px;height:22px;}
.hdr-right{display:flex;align-items:center;gap:10px;flex-shrink:0;}
.hdr-nav-desktop{display:none;min-width:0;}
.hdr-nav-list{list-style:none;display:flex;flex-wrap:wrap;gap:20px;margin:0;padding:0;}
.hdr-nav-desktop a{
  font-size:var(--menu-size);
  font-weight:var(--menu-weight);
  text-transform:var(--menu-transform);
  letter-spacing:var(--menu-letter-spacing);
  color:var(--menu-color);
  text-decoration:none;
  transition:color .15s ease;
}
.hdr-nav-desktop a:hover{color:var(--brand-dark);}
@media(min-width:900px){.hdr-nav-desktop{display:block;}}
@media(min-width:900px) and (max-width:1100px){.hdr-nav-list{gap:14px;}}

.btn-join{
  display:inline-flex;align-items:center;gap:7px;flex-shrink:0;
  background:var(--btn, var(--brand));color:var(--btn-text, #fff);
  border-radius:var(--radius-pill);
  padding:10px 16px;
  font-size:14px;font-weight:600;
  text-decoration:none;
  transition:background .15s ease;
}
.btn-join:hover{background:var(--btn-dark, var(--brand-dark));color:var(--btn-text, #fff);text-decoration:none;}
.btn-join svg{width:16px;height:16px;fill:currentColor;flex-shrink:0;}

/* ---------- Search ---------- */
.apk-search-toggle-wrap{position:relative;}
.apk-search-toggle{
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  width:42px;height:42px;border-radius:var(--radius-pill);cursor:pointer;
  background:var(--bg-soft);border:1px solid var(--line);color:var(--body);
  transition:background .15s ease,border-color .15s ease;
}
.apk-search-toggle:hover{background:var(--brand-soft);border-color:var(--brand);color:var(--brand-dark);}
.apk-search-toggle svg{width:17px;height:17px;fill:currentColor;}
.apk-search-form-header{
  position:absolute;top:calc(100% + 10px);right:0;z-index:60;
  display:flex;align-items:center;gap:6px;
  background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-pill);
  padding:6px 6px 6px 16px;box-shadow:var(--shadow-hover);
  width:0;opacity:0;overflow:hidden;pointer-events:none;
  transition:width .2s ease,opacity .2s ease;
}
.apk-search-form-header.is-open{width:min(280px,calc(100vw - 32px));opacity:1;pointer-events:auto;}
.apk-search-form-header input{
  flex:1;min-width:0;border:none;background:transparent;outline:none;
  font-size:15px;color:var(--ink);
}
.apk-search-form-header button{
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  width:32px;height:32px;border-radius:var(--radius-pill);border:none;
  background:var(--btn, var(--brand));color:var(--btn-text, #fff);cursor:pointer;
}
.apk-search-form-header button:hover{background:var(--brand-dark);}
.apk-search-form-header button svg{width:14px;height:14px;fill:currentColor;}

.apk-search-box-wrap{max-width:640px;margin:0 auto 24px;padding:0 var(--gutter);}
.apk-search-form-home{
  display:flex;align-items:center;gap:10px;
  background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-pill);
  padding:6px 8px 6px 18px;
}
.apk-search-form-home:focus-within{border-color:var(--brand);}
.apk-search-box-icon{width:18px;height:18px;fill:var(--muted);flex-shrink:0;}
.apk-search-form-home input{
  flex:1;min-width:0;border:none;background:transparent;outline:none;
  font-size:16px;color:var(--ink);
}
.apk-search-form-home button{
  flex-shrink:0;background:var(--btn, var(--brand));color:var(--btn-text, #fff);border:none;
  border-radius:var(--radius-pill);padding:12px 22px;
  font-size:14px;font-weight:600;cursor:pointer;
  transition:background .15s ease;
}
.apk-search-form-home button:hover{background:var(--brand-dark);}

.apk-search-results-wrap{margin-top:16px;margin-bottom:32px;}
.apk-search-results-title{font-size:22px;margin:0 0 20px;}
.apk-search-results-title span{color:var(--brand-dark);}
.apk-search-empty{padding:40px 0;text-align:center;color:var(--muted);}

/* ---------- Hero ---------- */
.apk-hero{position:relative;overflow:hidden;padding:40px var(--gutter);background:var(--bg-soft);border-bottom:1px solid var(--line);}
.apk-hero-inner{
  position:relative;max-width:var(--maxw);margin:0 auto;
  display:flex;flex-direction:column;gap:26px;align-items:center;text-align:center;
}
.apk-hero-content h1{margin:0 0 12px;}
.apk-hero-content p{font-size:17px;color:var(--body);max-width:52ch;margin:0 auto 22px;}
.apk-hero-ctas{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;}
.apk-hero-btn-primary{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--btn, var(--brand));color:var(--btn-text, #fff);
  font-size:16px;font-weight:600;padding:14px 26px;
  border-radius:var(--radius-pill);text-decoration:none;
  transition:background .15s ease;
}
.apk-hero-btn-primary:hover{background:var(--btn-dark, var(--brand-dark));color:var(--btn-text, #fff);text-decoration:none;}
.apk-hero-btn-secondary{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--bg);color:var(--brand-dark);
  border:1px solid var(--line);
  font-size:16px;font-weight:600;padding:13px 24px;
  border-radius:var(--radius-pill);text-decoration:none;
  transition:border-color .15s ease,background .15s ease;
}
.apk-hero-btn-secondary:hover{border-color:var(--brand);background:var(--brand-soft);text-decoration:none;}
.apk-hero-media{width:100%;max-width:300px;}
.apk-hero-media img{width:100%;border-radius:var(--radius);}
@media(min-width:900px){
  .apk-hero{padding:56px var(--gutter);}
  .apk-hero-inner{flex-direction:row;text-align:left;justify-content:space-between;gap:48px;}
  .apk-hero-content{flex:1;}
  .apk-hero-content p{margin:0 0 24px;}
  .apk-hero-ctas{justify-content:flex-start;}
  .apk-hero-media{flex-shrink:0;max-width:340px;}
}
/* Caption variant (used when a Home Top banner sits above the hero) */
.apk-hero-overlay-wrap{position:relative;}
.apk-hero-caption{padding:24px var(--gutter);background:var(--bg);border-bottom:1px solid var(--line);}
.apk-hero-caption .apk-hero-inner{flex-direction:column;text-align:center;align-items:center;}
.apk-hero-caption .apk-hero-content p{margin:0 auto 16px;max-width:60ch;}
.apk-hero-caption .apk-hero-ctas{justify-content:center;}

/* ---------- Banners ---------- */
.apk-banner-group{
  display:flex;flex-direction:column;gap:14px;
  max-width:var(--maxw);margin:18px auto;padding:0 var(--gutter);
}
.apk-banner-item{
  display:block;border:1px solid var(--line);border-radius:var(--radius);
  overflow:hidden;line-height:0;background:var(--bg-soft);
}
.apk-banner-item img{width:100%;height:auto;}
.apk-banner-home_infeed{margin:0;padding:0;max-width:none;width:100%;}
.apk-banner-size-original{align-items:center;}
.apk-banner-size-original .apk-banner-item{display:inline-block;width:auto;max-width:100%;}
.apk-banner-size-original .apk-banner-item img{width:auto;max-width:100%;margin:0 auto;}
.apk-banner-home_top{max-width:none;margin:0;padding:0;}
.apk-banner-home_top .apk-banner-item{border:none;border-radius:0;height:200px;}
.apk-banner-home_top .apk-banner-item img{width:100%;height:100%;object-fit:cover;object-position:center;}
@media(min-width:640px){.apk-banner-home_top .apk-banner-item{height:300px;}}
@media(min-width:1024px){.apk-banner-home_top .apk-banner-item{height:400px;}}

/* ---------- Tabs ---------- */
.tabs-wrap{max-width:var(--maxw);margin:24px auto 0;padding:0 var(--gutter);}
.tabs-nav{display:flex;flex-wrap:wrap;gap:10px;}
.tab-btn{
  flex:1 1 140px;min-width:0;
  display:flex;align-items:center;justify-content:center;gap:8px;
  padding:13px 14px;
  font-size:15px;font-weight:600;
  background:var(--bg);color:var(--body);
  border:1px solid var(--line);border-radius:var(--radius-pill);
  cursor:pointer;text-align:center;
  transition:background .15s ease,color .15s ease,border-color .15s ease;
}
.tab-btn svg{width:17px;height:17px;fill:currentColor;flex-shrink:0;}
.tab-btn:hover:not(.active){border-color:var(--brand);color:var(--brand-dark);}
.tab-btn.active{background:var(--btn, var(--brand));border-color:var(--btn, var(--brand));color:var(--btn-text, #fff);}
.tab-panel{display:none;}
.tab-panel.active{
  display:grid;grid-template-columns:1fr;gap:14px;
  max-width:var(--maxw);margin:20px auto 8px;padding:0 var(--gutter);
}
@media(min-width:640px){.tab-panel.active{grid-template-columns:repeat(2,1fr);}}
@media(min-width:1024px){.tab-panel.active{grid-template-columns:repeat(4,1fr);}}
@media(min-width:1024px){.tab-panel.active .apk-banner-home_infeed{grid-column:1/-1;}}

/* ---------- App row (listing card) ---------- */
.app-row{
  position:relative;min-width:0;
  display:flex;flex-direction:row;align-items:center;gap:14px;
  background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);
  padding:16px;
  transition:box-shadow .18s ease,border-color .18s ease;
}
.app-row:hover{box-shadow:var(--shadow-hover);border-color:#CBD5E1;}
.col-num{position:absolute;top:-10px;left:-8px;z-index:2;}
.num-text{
  display:flex;align-items:center;justify-content:center;
  width:28px;height:28px;border-radius:var(--radius-pill);
  background:var(--brand);color:#fff;
  font-size:13px;font-weight:700;
  border:2px solid var(--bg);
}
.col-icon{flex-shrink:0;width:64px;}
.col-icon img{width:64px;height:64px;border-radius:14px;object-fit:cover;border:1px solid var(--line);}
.col-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px;}
.app-name-link{text-decoration:none;}
.app-name-link:hover{text-decoration:none;}
.app-name{
  color:var(--ink);font-size:16px;font-weight:700;line-height:1.35;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.app-name-link:hover .app-name{color:var(--brand-dark);}
.app-bonus,.app-withdraw{
  display:flex;align-items:center;gap:6px;min-width:0;
  font-size:13px;font-weight:600;line-height:1.4;
}
.app-bonus{color:var(--brand-dark);}
.app-bonus svg{fill:currentColor;width:13px;height:13px;flex-shrink:0;}
.app-withdraw{color:var(--muted);}
.app-withdraw svg{fill:currentColor;width:13px;height:13px;flex-shrink:0;}
.col-btn{flex-shrink:0;}
.dl-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:6px;
  background:var(--btn, var(--brand));color:var(--btn-text, #fff);
  font-size:14px;font-weight:600;
  border-radius:var(--radius-pill);padding:11px 16px;
  text-decoration:none;white-space:nowrap;
  transition:background .15s ease;
}
.dl-btn:hover{background:var(--btn-dark, var(--brand-dark));color:var(--btn-text, #fff);text-decoration:none;}
.dl-btn svg{fill:currentColor;width:13px;height:13px;flex-shrink:0;}
@media(max-width:420px){
  .app-row{gap:12px;padding:14px;}
  .col-icon,.col-icon img{width:56px;height:56px;}
  .dl-btn{padding:10px 13px;font-size:13px;}
}

/* ---------- Visitor star rating ---------- */
.apk-rating{
  display:flex;flex-direction:column;align-items:center;gap:8px;
  margin:0 0 20px;padding:16px;
  background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--radius);
}
.apk-rating-stars{display:flex;align-items:center;gap:4px;}
.apk-rating-star{
  display:flex;align-items:center;justify-content:center;
  width:40px;height:40px;padding:6px;
  background:none;border:none;border-radius:var(--radius-sm);
  color:var(--line);cursor:pointer;
  transition:color .12s ease,transform .12s ease;
}
.apk-rating-star svg{width:100%;height:100%;fill:currentColor;}
.apk-rating-star.is-on{color:var(--brand);}
.apk-rating-star:not(:disabled):hover{transform:scale(1.08);}
.apk-rating-star:disabled{cursor:default;}
.apk-rating[data-voted="1"] .apk-rating-star{opacity:.9;}
.apk-rating-meta{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;justify-content:center;}
.apk-rating-average{color:var(--ink);font-size:20px;font-weight:700;line-height:1;}
.apk-rating-votes{color:var(--muted);font-size:13px;}
.apk-rating-msg{margin:0;min-height:1.2em;font-size:13px;color:var(--brand-dark);text-align:center;}
/* Read-only score on listing cards */
.apk-rating-static{
  display:inline-flex;align-items:center;gap:5px;
  font-size:13px;font-weight:600;color:var(--ink);
}
.apk-rating-static svg{width:13px;height:13px;fill:var(--brand);flex-shrink:0;}
.apk-rating-static-votes{color:var(--muted);font-weight:400;}

/* ---------- Single: App Download detail ---------- */
.apk-detail-wrap{margin-top:8px;}
.apk-main-card{
  background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);
  padding:26px 20px;text-align:center;
  max-width:640px;margin:0 auto 18px;
}
.apk-app-icon{
  width:110px;height:110px;border-radius:24px;object-fit:cover;
  margin:0 auto 16px;border:1px solid var(--line);
}
.apk-main-card h1{margin:0 0 14px;}
.apk-app-subtitle{color:var(--brand-dark);font-size:14px;font-weight:600;margin-bottom:16px;}

.apk-stats-grid{
  display:grid;grid-template-columns:1fr;gap:10px;
  margin:0 0 20px;
}
@media(min-width:420px){.apk-stats-grid{grid-template-columns:repeat(2,1fr);}}
.apk-stat{
  min-width:0;
  display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;
  padding:14px 12px;
  background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--radius-sm);
}
.apk-stat-icon{width:20px;height:20px;color:var(--brand);}
.apk-stat-icon svg{width:100%;height:100%;fill:currentColor;}
.apk-stat-value{color:var(--ink);font-size:17px;font-weight:700;line-height:1.3;}
.apk-stat-label{color:var(--muted);font-size:12px;line-height:1.4;}

/* Buttons: markup/classes unchanged from the previous theme, colours only. */
.apk-btn-download{
  display:flex;align-items:center;justify-content:center;gap:9px;width:100%;
  background:var(--btn, var(--brand));color:var(--btn-text, #fff);text-decoration:none;
  font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;
  padding:16px;border-radius:var(--radius-sm);margin-bottom:12px;
  transition:background .15s ease;
}
.apk-btn-download:hover{background:var(--btn-dark, var(--brand-dark));color:var(--btn-text, #fff);text-decoration:none;}
.apk-btn-download svg{width:16px;height:16px;fill:currentColor;flex-shrink:0;}
.apk-btn-telegram{
  display:flex;align-items:center;justify-content:center;gap:8px;width:100%;
  background:var(--bg);color:var(--telegram);
  border:1px solid var(--telegram);
  text-decoration:none;font-size:15px;font-weight:600;
  padding:14px;border-radius:var(--radius-sm);margin-bottom:18px;
  transition:background .15s ease,color .15s ease;
}
.apk-btn-telegram:hover{background:var(--telegram);color:#fff;text-decoration:none;}
.apk-btn-telegram svg{width:16px;height:16px;fill:currentColor;flex-shrink:0;}

.apk-desc-box{
  background:var(--brand-soft);border:1px solid #BBF7D0;border-radius:var(--radius-sm);
  padding:16px;text-align:left;margin-bottom:14px;
}
.apk-desc-box p{color:var(--ink);font-size:15px;margin:0 0 8px;}
.apk-desc-box p:last-child{margin-bottom:0;}

.apk-howto{
  border:1px solid var(--line);border-radius:var(--radius-sm);
  padding:14px 16px;text-align:left;background:var(--bg-soft);
}
.apk-howto summary{
  cursor:pointer;font-weight:600;font-size:15px;color:var(--ink);
  list-style:none;display:flex;align-items:center;gap:8px;
}
.apk-howto summary::-webkit-details-marker{display:none;}
.apk-howto summary::before{content:'▸';color:var(--brand);transition:transform .15s ease;}
.apk-howto[open] summary::before{transform:rotate(90deg);}
.apk-howto-body{font-size:15px;color:var(--body);padding-top:10px;}

/* ---------- Single: standard article ---------- */
.apk-page-layout{
  display:grid;grid-template-columns:1fr;gap:28px;
  margin:20px auto 32px;
}
@media(min-width:1024px){.apk-page-layout{grid-template-columns:minmax(0,2.2fr) minmax(0,1fr);align-items:start;}}
.single-app-header{
  display:flex;flex-wrap:wrap;gap:16px;align-items:center;
  padding:20px;margin:0 0 16px;
  background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--radius);
}
.single-app-header img{width:72px;height:72px;border-radius:16px;object-fit:cover;border:1px solid var(--line);flex-shrink:0;}
.single-app-title{font-size:clamp(22px,4vw,30px);margin:0 0 6px;}
.single-post-title{margin:0 0 12px;}
.single-download-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  background:var(--btn, var(--brand));color:var(--btn-text, #fff);text-decoration:none;
  font-size:15px;font-weight:700;
  padding:15px 26px;border-radius:var(--radius-pill);margin:0 0 18px;
  transition:background .15s ease;
}
.single-download-btn:hover{background:var(--btn-dark, var(--brand-dark));color:var(--btn-text, #fff);text-decoration:none;}
.single-download-btn svg{width:16px;height:16px;fill:currentColor;flex-shrink:0;}
.single-content{font-size:17px;line-height:1.8;color:var(--body);}
.single-content h2{margin:32px 0 12px;}
.single-content h3{margin:24px 0 10px;}
.single-content img{border-radius:var(--radius);margin:18px 0;}
.single-content blockquote{
  margin:18px 0;padding:14px 18px;
  border-left:3px solid var(--brand);background:var(--bg-soft);
  border-radius:0 var(--radius-sm) var(--radius-sm) 0;
}
.apk-post-hero{margin:0 0 18px;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);}
.apk-post-hero img{width:100%;aspect-ratio:16/9;object-fit:cover;}
.apk-post-updated{font-size:13px;color:var(--muted);margin:0 0 14px;}
.apk-page-article{max-width:var(--maxw);margin:24px auto 40px;padding:0 var(--gutter);}
.apk-page-title{margin:0 0 16px;}
.apk-index-row{padding:20px var(--gutter);border-bottom:1px solid var(--line);max-width:var(--maxw);margin:0 auto;}

/* Tables inside content */
.single-content table,.apk-seo-article-body table{
  width:100%;border-collapse:collapse;margin:20px 0;font-size:15px;display:block;overflow-x:auto;
}
.single-content th,.apk-seo-article-body th{
  background:var(--bg-soft);color:var(--ink);text-align:left;
  padding:11px 12px;font-weight:700;border-bottom:2px solid var(--brand);
}
.single-content td,.apk-seo-article-body td{padding:11px 12px;border-bottom:1px solid var(--line);}
.single-content tr:last-child td,.apk-seo-article-body tr:last-child td{border-bottom:none;}

/* ---------- SEO article block ---------- */
.apk-seo-article{margin:28px auto;}
.apk-seo-article-body{font-size:17px;line-height:1.8;color:var(--body);}
.apk-seo-article-body h3{margin:24px 0 10px;}
.apk-seo-article-body ul,.apk-seo-article-body ol{margin:0 0 14px;padding-left:1.25em;}

/* ---------- Article cards ---------- */
.apk-article-grid{display:grid;grid-template-columns:1fr;gap:16px;}
@media(min-width:560px){.apk-article-grid{grid-template-columns:repeat(2,1fr);}}
@media(min-width:1024px){.apk-article-grid{grid-template-columns:repeat(4,1fr);}}
.apk-archive-grid{max-width:var(--maxw);margin:0 auto;padding:0 var(--gutter) 28px;}
.apk-article-card{
  min-width:0;display:flex;flex-direction:column;
  background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);
  overflow:hidden;text-decoration:none;
  transition:box-shadow .18s ease,border-color .18s ease;
}
.apk-article-card:hover{box-shadow:var(--shadow-hover);border-color:#CBD5E1;text-decoration:none;}
.apk-article-thumb{position:relative;width:100%;aspect-ratio:16/9;background:var(--bg-soft);overflow:hidden;}
.apk-article-thumb img{width:100%;height:100%;object-fit:cover;}
.apk-article-thumb-placeholder{
  width:100%;height:100%;display:flex;align-items:center;justify-content:center;
  font-size:30px;color:var(--muted);
}
.apk-article-cat{
  position:absolute;top:10px;left:10px;
  background:var(--bg);color:var(--brand-dark);
  border:1px solid var(--line);
  font-size:11px;font-weight:700;padding:3px 9px;border-radius:var(--radius-pill);
}
.apk-article-body{padding:16px;min-width:0;}
.apk-article-body h3{font-size:16px;margin:0 0 6px;line-height:1.4;}
.apk-article-card:hover .apk-article-body h3{color:var(--brand-dark);}
.apk-article-body p{font-size:14px;color:var(--body);margin:0;}

/* ---------- Featured app cards / directory ---------- */
.apk-featured-apps{margin:32px auto;}
.apk-featured-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;}
@media(min-width:768px){.apk-featured-grid{grid-template-columns:repeat(4,1fr);}}
.apk-featured-card{
  min-width:0;display:flex;flex-direction:column;gap:8px;
  background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);
  padding:16px;text-decoration:none;
  transition:box-shadow .18s ease,border-color .18s ease;
}
.apk-featured-card:hover{box-shadow:var(--shadow-hover);border-color:#CBD5E1;text-decoration:none;}
.apk-featured-icon img{width:52px;height:52px;border-radius:14px;object-fit:cover;border:1px solid var(--line);}
.apk-featured-body{display:flex;flex-direction:column;gap:5px;min-width:0;}
.apk-featured-name{color:var(--ink);font-size:15px;font-weight:700;line-height:1.35;}
.apk-featured-card:hover .apk-featured-name{color:var(--brand-dark);}
.apk-featured-cat{font-size:12px;color:var(--muted);}
.apk-featured-rating{display:flex;align-items:center;flex-wrap:wrap;gap:5px;font-size:13px;font-weight:600;color:var(--ink);}
.apk-featured-rating svg{width:13px;height:13px;fill:var(--brand);flex-shrink:0;}
.apk-featured-rating span{color:var(--muted);font-weight:400;}
.apk-featured-viewapp{font-size:13px;font-weight:600;color:var(--brand-dark);margin-top:2px;}

.apk-directory-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:20px 0;}
@media(min-width:640px){.apk-directory-grid{grid-template-columns:repeat(3,1fr);}}
@media(min-width:1024px){.apk-directory-grid{grid-template-columns:repeat(4,1fr);}}
.apk-directory-empty{padding:24px;text-align:center;color:var(--muted);}

/* ---------- Quick links ---------- */
.apk-quicklinks{display:grid;grid-template-columns:1fr;gap:14px;margin:24px auto;}
@media(min-width:768px){.apk-quicklinks{grid-template-columns:repeat(3,1fr);}}
.apk-quicklink-card{
  min-width:0;display:flex;align-items:flex-start;gap:14px;
  background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);
  padding:18px;text-decoration:none;
  transition:box-shadow .18s ease,border-color .18s ease;
}
.apk-quicklink-card:hover{box-shadow:var(--shadow-hover);border-color:#CBD5E1;text-decoration:none;}
.apk-quicklink-icon{
  flex-shrink:0;width:42px;height:42px;border-radius:12px;
  background:var(--brand-soft);color:var(--brand-dark);
  display:flex;align-items:center;justify-content:center;
}
.apk-quicklink-icon svg{width:21px;height:21px;fill:currentColor;}
.apk-quicklink-text{display:flex;flex-direction:column;gap:4px;min-width:0;}
.apk-quicklink-text strong{color:var(--ink);font-size:16px;font-weight:700;}
.apk-quicklink-card:hover .apk-quicklink-text strong{color:var(--brand-dark);}
.apk-quicklink-text span{font-size:14px;color:var(--body);}

/* ---------- Homepage category sections / related / topic index ---------- */
.apk-home-cat-section,.apk-related-section,.apk-index-section{margin:36px auto;}
.apk-home-cat-section{padding-top:32px;padding-bottom:32px;}
.apk-home-cat-section:nth-of-type(even){background:var(--bg-soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line);max-width:none;}
.apk-home-cat-section:nth-of-type(even) > *{max-width:var(--maxw);margin-left:auto;margin-right:auto;}
.apk-related-grid{display:grid;grid-template-columns:1fr;gap:14px;}
@media(min-width:640px){.apk-related-grid{grid-template-columns:repeat(3,1fr);}}
.apk-related-card{
  min-width:0;display:block;background:var(--bg);
  border:1px solid var(--line);border-radius:var(--radius);padding:16px;
  text-decoration:none;transition:box-shadow .18s ease,border-color .18s ease;
}
.apk-related-card:hover{box-shadow:var(--shadow-hover);border-color:#CBD5E1;text-decoration:none;}
.apk-related-card h4{margin:0 0 6px;font-size:16px;}
.apk-related-card p{font-size:14px;color:var(--body);margin:0;}
.apk-index-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;}
@media(min-width:640px){.apk-index-grid{grid-template-columns:repeat(4,1fr);}}
.apk-index-card{
  min-width:0;display:flex;align-items:center;justify-content:center;text-align:center;
  background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm);
  padding:16px 12px;text-decoration:none;
  font-size:14px;font-weight:600;color:var(--ink);
  transition:border-color .15s ease,background .15s ease,color .15s ease;
}
.apk-index-card:hover{border-color:var(--brand);background:var(--brand-soft);color:var(--brand-dark);text-decoration:none;}

.apk-other-apps{margin:36px auto;}
.apk-other-apps-grid{display:grid;grid-template-columns:1fr;gap:14px;}
@media(min-width:900px){.apk-other-apps-grid{grid-template-columns:repeat(2,1fr);}}

/* ---------- Trust bar ---------- */
.apk-trustbar{
  display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;
  margin:32px auto;padding:18px var(--gutter);
  background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--radius);
}
.apk-trustbar-main{display:flex;align-items:center;gap:9px;font-size:16px;font-weight:700;color:var(--ink);min-width:0;}
.apk-trustbar-main svg{width:19px;height:19px;fill:var(--brand);flex-shrink:0;}
.apk-trustbar-items{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;min-width:0;}
.apk-trustbar-divider{width:1px;height:14px;background:var(--line);flex-shrink:0;}
.apk-trustbar-item{display:flex;align-items:center;gap:6px;font-size:14px;color:var(--body);text-decoration:none;min-width:0;}
.apk-trustbar-item svg{width:15px;height:15px;fill:var(--muted);flex-shrink:0;}
a.apk-trustbar-item:hover{color:var(--brand-dark);text-decoration:none;}
a.apk-trustbar-item:hover svg{fill:var(--brand);}

/* ---------- Notice / misc homepage blocks ---------- */
.seo-kw{
  font-size:13px;color:var(--muted);line-height:1.7;
  max-width:var(--maxw);margin:20px auto;padding:14px var(--gutter);
}
.notice-box{
  background:var(--bg-soft);border:1px solid var(--line);border-left:3px solid var(--brand);
  border-radius:0 var(--radius) var(--radius) 0;
  padding:20px;margin:24px auto;
}
.notice-title{font-size:16px;font-weight:700;color:var(--ink);margin-bottom:8px;}
.notice-box p{font-size:15px;color:var(--body);margin:0 0 8px;}
.notice-box p:last-child{margin-bottom:0;}
.notice-box b,.notice-box strong{color:var(--ink);}
.thanks{text-align:center;padding:20px var(--gutter);font-size:16px;font-weight:600;color:var(--brand-dark);}

.share-bar{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;
  margin:20px auto 28px;padding:14px var(--gutter);
  background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--radius);
}
.share-left{
  display:flex;align-items:center;gap:8px;min-width:0;
  font-size:14px;font-weight:600;color:var(--body);
  background:none;border:none;cursor:pointer;padding:0;
}
.share-left svg{fill:currentColor;width:16px;height:16px;flex-shrink:0;}
.share-right{
  display:flex;align-items:center;gap:6px;flex-shrink:0;
  background:var(--btn, var(--brand));color:var(--btn-text, #fff);border:none;cursor:pointer;
  padding:11px 18px;font-size:14px;font-weight:600;border-radius:var(--radius-pill);
  transition:background .15s ease;
}
.share-right:hover{background:var(--brand-dark);}
.share-right svg{fill:currentColor;width:14px;height:14px;flex-shrink:0;}

/* ---------- FAQ / pros & cons ---------- */
.apk-faq-section{margin:32px auto;}
.apk-faq-item{
  background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm);
  padding:16px 18px;margin-bottom:10px;
}
.apk-faq-item summary{
  cursor:pointer;font-weight:600;font-size:16px;color:var(--ink);
  list-style:none;display:flex;align-items:flex-start;gap:10px;
}
.apk-faq-item summary::-webkit-details-marker{display:none;}
.apk-faq-item summary::before{content:'▸';color:var(--brand);flex-shrink:0;transition:transform .15s ease;}
.apk-faq-item[open] summary::before{transform:rotate(90deg);}
.apk-faq-answer{font-size:16px;color:var(--body);padding-top:10px;}
.apk-faq-answer p{margin:0 0 8px;}
.apk-faq-answer p:last-child{margin-bottom:0;}

.apk-proscons{display:grid;grid-template-columns:1fr;gap:14px;margin:22px 0;}
@media(min-width:640px){.apk-proscons{grid-template-columns:1fr 1fr;}}
.apk-proscons-col{min-width:0;border-radius:var(--radius);padding:18px;}
.apk-proscons-pros{background:var(--brand-soft);border:1px solid #BBF7D0;}
.apk-proscons-cons{background:#FEF2F2;border:1px solid #FECACA;}
.apk-proscons-col h4{margin:0 0 10px;font-size:16px;}
.apk-proscons-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px;}
.apk-proscons-col li{display:flex;align-items:flex-start;gap:9px;min-width:0;font-size:15px;line-height:1.6;color:var(--ink);}
.apk-proscons-col li svg{width:16px;height:16px;flex-shrink:0;margin-top:4px;}
.apk-proscons-pros li svg{fill:var(--brand);}
.apk-proscons-cons li svg{fill:#DC2626;}

/* ---------- Category topic navigation ---------- */
.apk-breadcrumb{font-size:13px;color:var(--muted);padding-top:16px;}
.apk-breadcrumb a{color:var(--muted);text-decoration:none;}
.apk-breadcrumb a:hover{color:var(--brand-dark);}
.apk-page-hero{padding-top:20px;padding-bottom:4px;}
.apk-page-hero h1{margin:0 0 8px;}
.apk-page-hero p{font-size:17px;color:var(--body);margin:0;max-width:70ch;}
.apk-cat-bar{
  display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;
  padding-top:12px;padding-bottom:12px;font-size:14px;
}
.apk-cat-bar a{
  color:var(--brand-dark);font-weight:600;text-decoration:none;
  border:1px solid var(--line);border-radius:var(--radius-pill);padding:5px 12px;
  transition:border-color .15s ease,background .15s ease;
}
.apk-cat-bar a:hover{border-color:var(--brand);background:var(--brand-soft);text-decoration:none;}

.apk-sidebar{display:flex;flex-direction:column;gap:18px;min-width:0;}
.apk-topic-box{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:18px;}
.apk-topic-title{font-size:15px;font-weight:700;color:var(--ink);margin-bottom:12px;}
.apk-topic-links{display:flex;flex-direction:column;gap:2px;}
.apk-topic-links a{
  font-size:15px;color:var(--body);text-decoration:none;
  padding:9px 0;border-bottom:1px solid var(--line);
}
.apk-topic-links a:last-child{border-bottom:none;}
.apk-topic-links a:hover{color:var(--brand-dark);}
.apk-sidebar-related{margin-top:0;}
.apk-sidebar-related-list{display:flex;flex-direction:column;gap:14px;}
.apk-sidebar-related-item{
  display:flex;gap:12px;align-items:flex-start;min-width:0;
  text-decoration:none;padding-bottom:14px;border-bottom:1px solid var(--line);
}
.apk-sidebar-related-item:last-child{padding-bottom:0;border-bottom:none;}
.apk-sidebar-related-thumb{
  flex-shrink:0;width:56px;height:56px;border-radius:var(--radius-sm);overflow:hidden;
  background:var(--bg-soft);display:flex;align-items:center;justify-content:center;
}
.apk-sidebar-related-thumb img{width:100%;height:100%;object-fit:cover;}
.apk-sidebar-related-thumb-fallback{font-size:20px;opacity:.4;}
.apk-sidebar-related-title{font-size:15px;line-height:1.45;color:var(--ink);font-weight:500;min-width:0;}
.apk-sidebar-related-item:hover .apk-sidebar-related-title{color:var(--brand-dark);}

.apk-sidebar-widgets{display:flex;flex-direction:column;gap:18px;}
.apk-sidebar-widgets .widget{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:18px;}
.apk-sidebar-widgets .widget-title{font-size:15px;font-weight:700;color:var(--ink);margin:0 0 12px;}
.apk-sidebar-widgets .widget ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;}
.apk-sidebar-widgets .widget ul li{font-size:15px;color:var(--body);padding:9px 0;border-bottom:1px solid var(--line);}
.apk-sidebar-widgets .widget ul li:last-child{border-bottom:none;}
.apk-sidebar-widgets .widget a{color:var(--body);text-decoration:none;}
.apk-sidebar-widgets .widget a:hover{color:var(--brand-dark);}
.apk-sidebar-widgets .widget img{max-width:100%;border-radius:var(--radius-sm);}
.apk-sidebar-widgets .widget input[type="search"],
.apk-sidebar-widgets .widget input[type="text"]{
  width:100%;padding:11px 14px;border-radius:var(--radius-pill);
  border:1px solid var(--line);background:var(--bg-soft);color:var(--ink);font-size:15px;
}
.apk-sidebar-widgets .widget select{width:100%;padding:9px;border-radius:var(--radius-sm);border:1px solid var(--line);}

.apk-postnav{display:grid;grid-template-columns:1fr;gap:12px;margin:24px auto;}
@media(min-width:640px){.apk-postnav{grid-template-columns:1fr 1fr;}}
.apk-postnav-prev,.apk-postnav-next{
  min-width:0;display:flex;flex-direction:column;gap:4px;
  background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);
  padding:14px 16px;text-decoration:none;
  transition:box-shadow .15s ease,border-color .15s ease;
}
.apk-postnav-prev:hover,.apk-postnav-next:hover{box-shadow:var(--shadow-hover);border-color:#CBD5E1;text-decoration:none;}
@media(min-width:640px){.apk-postnav-next{text-align:right;grid-column:2;}}
.apk-postnav-label{font-size:12px;font-weight:700;color:var(--brand-dark);text-transform:uppercase;letter-spacing:.04em;}
.apk-postnav-title{font-size:15px;font-weight:600;color:var(--ink);}

/* ---------- Pagination ---------- */
.pagination,.nav-links{
  display:flex;flex-wrap:wrap;gap:8px;justify-content:center;align-items:center;
  max-width:var(--maxw);margin:0 auto 36px;padding:0 var(--gutter);
}
.pagination .page-numbers{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:40px;height:40px;padding:0 12px;
  border:1px solid var(--line);border-radius:var(--radius-sm);
  color:var(--body);text-decoration:none;font-size:15px;font-weight:600;
}
.pagination .page-numbers:hover{border-color:var(--brand);color:var(--brand-dark);text-decoration:none;}
.pagination .page-numbers.current{background:var(--btn, var(--brand));border-color:var(--btn, var(--brand));color:var(--btn-text, #fff);}

/* ---------- Sticky bottom bar (mobile only) ---------- */
.apk-sticky-bar{
  display:none;position:fixed;left:10px;right:10px;bottom:10px;z-index:200;
  align-items:center;gap:10px;
  background:var(--bg);border:1px solid var(--line);border-radius:18px;
  padding:8px;box-shadow:0 8px 24px rgba(15,23,42,.14);
}
@media(max-width:767px){
  .apk-sticky-bar{display:flex;}
  body.has-sticky-bar{padding-bottom:84px;}
}
.apk-sticky-download{
  position:relative;flex:1;min-width:0;
  display:flex;align-items:center;justify-content:center;gap:8px;
  background:var(--btn, var(--brand));color:var(--btn-text, #fff);text-decoration:none;
  font-size:15px;font-weight:700;
  padding:15px 16px;border-radius:var(--radius-pill);
  transition:background .15s ease;
}
.apk-sticky-download:hover{background:var(--btn-dark, var(--brand-dark));color:var(--btn-text, #fff);text-decoration:none;}
.apk-sticky-download svg{width:16px;height:16px;fill:currentColor;flex-shrink:0;}
.apk-sticky-badge{
  position:absolute;top:-10px;right:12px;
  background:var(--badge);color:#fff;
  font-size:10px;font-weight:700;padding:3px 9px;border-radius:var(--radius-pill);
  white-space:nowrap;max-width:calc(100% - 24px);overflow:hidden;text-overflow:ellipsis;
}
.apk-sticky-join{
  flex-shrink:0;width:52px;height:52px;border-radius:50%;
  background:var(--telegram);display:flex;align-items:center;justify-content:center;
}
.apk-sticky-join svg{width:22px;height:22px;}

/* ---------- Footer ---------- */
.site-footer{
  margin-top:56px;
  background:var(--footer-bg);
  color:rgba(255,255,255,.78);
}
.footer-inner{
  max-width:var(--maxw);
  margin:0 auto;
  padding:40px var(--gutter) 28px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:28px;
  text-align:center;
}

/* 1 — link row */
.footer-nav{min-width:0;width:100%;}
.footer-links{
  display:flex;flex-wrap:wrap;justify-content:center;
  gap:10px 26px;list-style:none;margin:0;padding:0;
}
.footer-links a{
  font-size:15px;font-weight:600;color:rgba(255,255,255,.82);
  text-decoration:none;
}
.footer-links a:hover{color:#fff;text-decoration:none;}

/* 2 — CTA + responsible-play notice */
.footer-cta{
  width:100%;min-width:0;
  display:flex;flex-direction:column;align-items:center;gap:16px;
  padding:28px 0;
  border-top:1px solid rgba(255,255,255,.10);
  border-bottom:1px solid rgba(255,255,255,.10);
}
.footer-cta-headline{
  color:#fff;font-size:clamp(20px,3vw,26px);
  margin:0;letter-spacing:-.01em;
}
.footer-cta-actions{
  display:flex;flex-wrap:wrap;gap:12px;justify-content:center;min-width:0;
}
/* Button markup is untouched — only the palette shifts for the dark band, and
   their width is released from the full-width default so the pair can sit side
   by side here. They still go full width on the narrowest phones. */
.footer-cta-actions .single-download-btn,
.footer-cta-actions .apk-btn-telegram{width:100%;max-width:340px;}
@media (min-width:520px){
  .footer-cta-actions .single-download-btn,
  .footer-cta-actions .apk-btn-telegram{width:auto;}
}
.footer-cta-actions .single-download-btn{
  background:var(--btn, var(--brand));color:var(--btn-text, #fff);border-color:transparent;
}
.footer-cta-actions .single-download-btn:hover{background:var(--btn-dark, var(--brand-dark));color:var(--btn-text, #fff);}
.footer-cta-actions .apk-btn-telegram{
  background:transparent;color:#fff;border:1px solid rgba(255,255,255,.28);
}
.footer-cta-actions .apk-btn-telegram:hover{background:rgba(255,255,255,.12);border-color:#fff;}

.footer-disclaimer{
  margin:0;max-width:68ch;
  font-size:14px;line-height:1.7;color:rgba(255,255,255,.62);
}
.footer-compliance{
  margin:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;
  font-size:13px;font-weight:600;color:rgba(255,255,255,.72);
}
.footer-18plus{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:34px;padding:3px 9px;border-radius:var(--radius-pill);
  background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.22);
  color:#fff;font-size:12px;font-weight:800;letter-spacing:.02em;
}

/* 3 — copyright */
.footer-bottom{
  width:100%;min-width:0;
  display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px;
}
.footer-copy{font-size:13px;color:rgba(255,255,255,.55);}
.footer-social{display:flex;flex-wrap:wrap;gap:8px;}
.footer-social a{
  display:inline-flex;align-items:center;justify-content:center;
  width:34px;height:34px;border-radius:var(--radius-pill);
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);
  color:rgba(255,255,255,.8);
}
.footer-social a:hover{background:var(--brand);border-color:var(--brand);color:#fff;}
.footer-social svg{width:16px;height:16px;}

/* ---------- 404 ---------- */
.error-wrap{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  min-height:60vh;padding:56px var(--gutter);text-align:center;
}
.error-code{font-size:clamp(72px,18vw,110px);font-weight:800;line-height:1;color:var(--brand);letter-spacing:-.03em;}
.error-icon{font-size:48px;margin:10px 0;}
.error-title{font-size:clamp(22px,4vw,28px);margin:0 0 10px;}
.error-divider{width:56px;height:3px;background:var(--brand);border-radius:2px;margin:0 auto 22px;}
.error-msg{font-size:16px;color:var(--body);margin:0 0 28px;max-width:48ch;}
.btn-group{display:flex;flex-direction:column;align-items:center;gap:12px;}
@media(min-width:560px){.btn-group{flex-direction:row;justify-content:center;}}
.btn-home{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--btn, var(--brand));color:var(--btn-text, #fff);text-decoration:none;
  font-size:15px;font-weight:600;padding:14px 28px;border-radius:var(--radius-pill);
  transition:background .15s ease;
}
.btn-home:hover{background:var(--btn-dark, var(--brand-dark));color:var(--btn-text, #fff);text-decoration:none;}
.btn-home svg{width:18px;height:18px;fill:currentColor;flex-shrink:0;}
.btn-tg{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--bg);color:var(--telegram);border:1px solid var(--telegram);
  text-decoration:none;font-size:15px;font-weight:600;
  padding:13px 24px;border-radius:var(--radius-pill);
  transition:background .15s ease,color .15s ease;
}
.btn-tg:hover{background:var(--telegram);color:#fff;text-decoration:none;}
.btn-tg svg{width:18px;height:18px;fill:currentColor;flex-shrink:0;}

/* ---------- Accessibility helpers ---------- */
.screen-reader-text{
  border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;
  padding:0;position:absolute;width:1px;white-space:nowrap;
}
.screen-reader-text:focus{
  clip-path:none;background:var(--bg);color:var(--brand-dark);
  height:auto;width:auto;padding:14px 20px;z-index:100000;
  top:8px;left:8px;border-radius:var(--radius-sm);border:1px solid var(--line);
}

/* ---------- What the button colour covers ----------
   Every control a visitor CLICKS follows --btn: Download in all its forms, the
   sticky bar, hero and footer CTA, Join, search submit, the New/Popular tabs,
   the copy-link button and the current page number.

   What stays on --brand: links, headings, the accent bars, the rank badge and
   the star fill. Those are identity, not actions. Keeping the two apart is what
   lets a site run green links with a black Download button and still look
   deliberate rather than mismatched. */

/* ---------- Title containment ----------
   Titles are short now (applite_get_display_title), but an editor can always
   type a long one, and an imported article headline has no separator to cut at.
   These clamps keep every card in a row the same height instead of one card
   growing five lines tall. The full title still reaches Google via <title>. */
.apk-featured-name,
.apk-article-body h3,
.apk-sidebar-related-title,
.apk-postnav-title{
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;
  overflow:hidden;overflow-wrap:break-word;
}

/* A single card in a 2-up grid leaves an obvious hole beside it — stretch it. */
.apk-featured-grid > :only-child,
.apk-directory-grid > :only-child{grid-column:1 / -1;}

/* The download button's label carries the app name, so it can still wrap on a
   narrow screen. Balance the lines and keep the words from splitting. */
.single-download-btn{text-align:center;text-wrap:balance;overflow-wrap:break-word;}

/* ---------- App listing: row on phones, card on wider screens ----------
   Same markup either way. Below 640px the grid is a single column and the
   horizontal row reads best — icon left, text middle, button right. From 640px
   the grid has two or more columns, and a horizontal row inside a narrow column
   would squeeze the name to nothing, so the same element turns into a centred
   card: icon on top, button full width at the bottom.
   Switching at exactly the point the grid changes keeps the two in step. */
@media(min-width:640px){
  .app-row{
    flex-direction:column;align-items:center;text-align:center;
    gap:10px;padding:24px 16px 18px;height:100%;
  }
  .col-icon,.col-icon img{width:72px;height:72px;}
  .col-info{flex:0 0 auto;width:100%;align-items:center;gap:4px;}
  .app-name{font-size:17px;}
  .app-bonus,.app-withdraw,.apk-rating-static{justify-content:center;}
  /* Pushes every button to the bottom edge, so a two-line name on one card does
     not leave its button floating above the others in the same row. */
  .col-btn{width:100%;margin-top:auto;padding-top:6px;}
  .dl-btn{width:100%;padding:13px 16px;font-size:14px;}
}

/* ---------- Sidebar: Latest Apps ---------- */
.apk-sidebar-app-list{display:flex;flex-direction:column;gap:2px;}
.apk-sidebar-app-item{
  display:flex;align-items:center;gap:11px;min-width:0;
  padding:10px 0;border-bottom:1px solid var(--line);text-decoration:none;
}
.apk-sidebar-app-item:last-child{border-bottom:none;}
.apk-sidebar-app-item:hover{text-decoration:none;}
.apk-sidebar-app-icon{flex-shrink:0;width:44px;height:44px;}
.apk-sidebar-app-icon img{
  width:44px;height:44px;border-radius:11px;object-fit:cover;border:1px solid var(--line);display:block;
}
/* min-width:0 is what stops a long name bursting the row instead of wrapping. */
.apk-sidebar-app-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1;}
.apk-sidebar-app-name{
  font-size:14px;font-weight:600;line-height:1.35;color:var(--ink);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;
  overflow:hidden;overflow-wrap:break-word;
}
.apk-sidebar-app-item:hover .apk-sidebar-app-name{color:var(--brand-dark);}
.apk-sidebar-app-bonus{font-size:12px;font-weight:600;color:var(--brand-dark);}
.apk-sidebar-app-go{flex-shrink:0;color:var(--muted);font-size:15px;}
.apk-sidebar-app-item:hover .apk-sidebar-app-go{color:var(--brand-dark);}

/* ---------- Mobile menu: burger + panel ----------
   The panel is a sibling of the sticky header, not a child, so it can span the
   full width and scroll on its own without fighting the header's backdrop blur. */
.hdr-burger{
  display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;
  width:40px;height:40px;padding:0;
  background:transparent;border:1px solid var(--line);border-radius:12px;
  color:var(--ink);cursor:pointer;
  transition:border-color .15s ease,background .15s ease;
}
.hdr-burger:hover{border-color:#CBD5E1;background:var(--bg-soft);}
.hdr-burger-bars{display:block;width:18px;height:14px;position:relative;}
.hdr-burger-bars span{
  position:absolute;left:0;width:100%;height:2px;border-radius:2px;
  background:currentColor;
  transition:transform .2s ease,opacity .15s ease,top .2s ease;
}
.hdr-burger-bars span:nth-child(1){top:0;}
.hdr-burger-bars span:nth-child(2){top:6px;}
.hdr-burger-bars span:nth-child(3){top:12px;}
/* Open state turns the three bars into an X — the close affordance is the same
   button, so nothing moves under the thumb. */
.hdr-burger[aria-expanded="true"] .hdr-burger-bars span:nth-child(1){top:6px;transform:rotate(45deg);}
.hdr-burger[aria-expanded="true"] .hdr-burger-bars span:nth-child(2){opacity:0;}
.hdr-burger[aria-expanded="true"] .hdr-burger-bars span:nth-child(3){top:6px;transform:rotate(-45deg);}

.hdr-nav-mobile{
  position:sticky;top:64px;z-index:98;
  background:var(--bg);border-bottom:1px solid var(--line);
  box-shadow:0 10px 24px rgba(15,23,42,.06);
  max-height:calc(100vh - 64px);overflow-y:auto;
}
.hdr-nav-mobile[hidden]{display:none;}
.hdr-nav-mobile-list{
  list-style:none;margin:0;padding:6px var(--gutter) 10px;
  display:flex;flex-direction:column;
}
.hdr-nav-mobile-list li{border-bottom:1px solid var(--line);}
.hdr-nav-mobile-list li:last-child{border-bottom:none;}
.hdr-nav-mobile-list a{
  display:block;padding:14px 2px;
  font-size:16px;font-weight:600;color:var(--ink);text-decoration:none;
}
.hdr-nav-mobile-list a:hover{color:var(--brand-dark);text-decoration:none;}

/* The burger and its panel exist only below the desktop breakpoint; above it the
   real menu is already in the header, so both are removed outright rather than
   just hidden — nothing to tab into by accident. */
@media(min-width:900px){
  .hdr-burger{display:none;}
  .hdr-nav-mobile{display:none !important;}
}
/* On a very narrow phone the Join label is what gives way first, not the menu. */
@media(max-width:400px){
  .btn-join{padding:10px 12px;}
  .btn-join span{display:none;}
}
