:root{--bg:#f6f7f9;--bg-alt:#eef1f4;--surface:#ffffff;--border:#e2e8f0;--border-strong:#cbd5e1;--text:#0f172a;--text-muted:#334155;--text-soft:#475569;--primary:#0f766e;--primary-hover:#0d9488;--primary-soft:#e6f5f3;--accent:#b45309;--accent-soft:#fff7ed;--star:#d97706;--link:#0f766e;--danger:#b91c1c;--focus:#0f766e;--radius:12px;--radius-sm:8px;--radius-lg:16px;--shadow-sm:0 1px 2px rgba(15,23,42,.05);--shadow:0 12px 32px rgba(15,23,42,.08);--font-display:"Segoe UI Variable","Segoe UI","Trebuchet MS",sans-serif;--font:"Segoe UI","Trebuchet MS","Helvetica Neue",system-ui,sans-serif;--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--container:1140px;--gutter:20px;--header-h:68px}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none !important;animation:none !important}}body{margin:0;font-family:var(--font);font-size:16.5px;line-height:1.6;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;overflow-x:hidden}img,picture,svg,video{display:block;max-width:100%}img{height:auto}a{color:var(--link,var(--primary));text-decoration:underline;text-decoration-thickness:from-font;text-underline-offset:2px}a:hover{text-decoration-thickness:2px}.brand,.brand:hover,.site-nav a,.site-nav a:hover,.category-bar a,.category-bar a:hover,.category-card,.category-card:hover,.app-card-title a,.app-card-title a:hover,.app-card-cat,.app-card-btn,.post-card-title a,.post-card-title a:hover,.post-card-cat,.chip,.chip:hover,.btn,.btn:hover,.section-link,.pagination a,.social-links a,.footer-col a,.app-rating-inline{text-decoration:none}.prose a,.app-short a,.review-body a,p a:not(.btn):not(.chip):not(.section-link){text-decoration:underline;text-decoration-thickness:from-font;text-underline-offset:2px}h1,h2,h3,h4{font-family:var(--font-display);line-height:1.22;margin:0 0 .5em;color:var(--text);font-weight:750;letter-spacing:-.02em}h1{font-size:clamp(1.7rem,2.2vw + 1rem,2.4rem)}h2{font-size:clamp(1.3rem,1.1vw + .95rem,1.7rem)}h3{font-size:1.12rem}p{margin:0 0 1em}ul,ol{margin:0;padding:0}button{font:inherit;cursor:pointer}input,button,select,textarea{font-family:inherit}code{font-family:var(--mono);font-size:.92em;background:var(--bg-alt);padding:.1em .35em;border-radius:4px}:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:4px}.visually-hidden{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}[hidden]{display:none !important}.muted{color:var(--text-muted)}.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 var(--gutter)}.container-narrow{max-width:820px}.icon{width:1.25em;height:1.25em;flex:none;vertical-align:-.25em;display:inline-block}.icon-xs{width:.9em;height:.9em}.icon-sm{width:1em;height:1em}.icon-lg{width:1.75em;height:1.75em}.icon-accent{color:var(--primary)}.icon-star{color:var(--star);fill:var(--star);stroke:var(--star)}.skip-link{position:absolute;left:8px;top:-100px;background:var(--primary);color:#fff;padding:.6rem 1rem;border-radius:var(--radius-sm);z-index:1000;font-weight:600}.skip-link:focus{top:8px;outline-color:#fff}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.72rem 1.25rem;border-radius:10px;border:1px solid transparent;font-weight:700;font-size:.95rem;line-height:1.2;text-decoration:none;transition:background .15s,border-color .15s,color .15s,box-shadow .15s;min-height:44px;min-width:44px}.btn:hover{text-decoration:none}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--primary);color:#fff;box-shadow:0 6px 16px color-mix(in srgb,var(--primary) 22%,transparent)}.btn-primary:hover{background:var(--primary-hover);color:#fff}.btn-outline{background:var(--surface);color:var(--text);border-color:var(--border-strong)}.btn-outline:hover{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.btn-sm{padding:.5rem .95rem;font-size:.875rem;min-height:40px}.btn-lg{padding:.9rem 1.6rem;font-size:1.05rem;min-height:52px}.btn-block{width:100%}.btn-download small{font-weight:600;opacity:1;color:#fff}.site-header{background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100}.header-inner{display:flex;align-items:center;gap:.85rem;min-height:var(--header-h);flex-wrap:wrap;padding-top:.45rem;padding-bottom:.45rem}.brand{display:inline-flex;align-items:center;gap:.55rem;font-family:var(--font-display);font-weight:800;font-size:1.15rem;color:var(--text);letter-spacing:-.03em}.brand:hover{text-decoration:none}.brand-mark{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--primary);color:#fff;box-shadow:0 4px 12px color-mix(in srgb,var(--primary) 22%,transparent)}.brand-mark .icon{width:22px;height:22px}.brand-logo{height:40px;width:auto}.header-search{order:3;flex:1 0 100%;display:flex;position:relative}.header-search input{flex:1;height:44px;border:1px solid var(--border-strong);border-radius:999px;padding:0 3rem 0 1rem;font-size:.95rem;background:var(--bg-alt);color:var(--text)}.header-search input:focus{background:#fff;border-color:var(--primary);outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 22%,transparent)}.header-search button{position:absolute;right:2px;top:2px;width:40px;height:40px;border-radius:50%;border:0;background:transparent;color:var(--text-muted);display:grid;place-items:center}.header-search button:hover{background:var(--primary-soft);color:var(--primary)}.nav-toggle{margin-left:auto;width:44px;height:44px;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--text);display:grid;place-items:center}.nav-toggle .icon{width:22px;height:22px}.nav-toggle-close,.nav-toggle[aria-expanded="true"] .nav-toggle-open{display:none}.nav-toggle[aria-expanded="true"] .nav-toggle-close{display:block}.site-nav{display:none;order:4;flex:1 0 100%;padding:.5rem 0 .75rem;border-top:1px solid var(--border);margin-top:.25rem}.site-nav.is-open{display:block}.site-nav ul{list-style:none}.site-nav>ul>li>a{display:block;padding:.7rem .25rem;font-weight:650;color:var(--text);border-radius:var(--radius-sm)}.site-nav a:hover,.site-nav a[aria-current="page"]{color:var(--primary);text-decoration:none}.sub-menu{padding-left:1rem}.sub-menu a{display:block;padding:.5rem .25rem;color:var(--text-muted)}.nav-mobile-categories{margin-top:.5rem;padding-top:.5rem;border-top:1px dashed var(--border)}.nav-mobile-heading{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-soft);margin:.5rem .25rem;font-weight:700}.nav-mobile-categories ul{display:flex;flex-wrap:wrap;gap:.4rem}.nav-mobile-categories a{display:inline-flex;align-items:center;min-height:44px;padding:.45rem .85rem;border:1px solid var(--border);border-radius:999px;font-size:.875rem;color:var(--text)}.nav-cta a{margin-top:.25rem}.category-bar{display:none;border-top:1px solid var(--border);background:color-mix(in srgb,var(--surface) 92%,var(--bg-alt))}.category-bar ul{list-style:none;display:flex;gap:.25rem;overflow-x:auto;scrollbar-width:none;padding:.4rem 0}.category-bar ul::-webkit-scrollbar{display:none}.category-bar a{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem .85rem;border-radius:999px;color:var(--text-muted);font-size:.875rem;font-weight:600;white-space:nowrap;min-height:44px}.category-bar a:hover,.category-bar a[aria-current="page"]{background:var(--primary-soft);color:var(--primary);text-decoration:none}@media (min-width:768px){.header-inner{flex-wrap:nowrap}.header-search{order:0;flex:1 1 auto;max-width:480px;margin:0 .5rem}.nav-toggle{display:none}.site-nav{display:block;order:0;flex:0 0 auto;border:0;padding:0;margin:0;margin-left:auto}.site-nav>ul{display:flex;align-items:center;gap:.25rem}.site-nav>ul>li{position:relative}.site-nav>ul>li>a{padding:.5rem .8rem}.sub-menu{display:none;position:absolute;top:100%;left:0;min-width:200px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:.4rem;z-index:50}.has-children:hover .sub-menu,.has-children:focus-within .sub-menu{display:block}.sub-menu a{padding:.5rem .75rem;border-radius:var(--radius-sm)}.sub-menu a:hover{background:var(--bg-alt)}.nav-mobile-categories{display:none}.category-bar{display:block}}.breadcrumbs{background:color-mix(in srgb,var(--bg-alt) 80%,transparent);border-bottom:1px solid var(--border);font-size:.85rem}.breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:.15rem;padding:.55rem 0}.breadcrumbs li{display:inline-flex;align-items:center;color:var(--text-muted)}.breadcrumbs li + li::before{content:"/";margin:0 .45rem;color:var(--border-strong)}.breadcrumbs a{color:var(--text-muted);display:inline-flex;align-items:center;gap:.3rem}.breadcrumbs a:hover{color:var(--primary)}.breadcrumbs [aria-current="page"]{color:var(--text);font-weight:500;max-width:60vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.section{padding:2.5rem 0}.section-first{padding-top:1.5rem}.section-alt{background:color-mix(in srgb,var(--bg-alt) 88%,var(--primary) 3%);border-block:1px solid var(--border)}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:1.15rem;max-width:1100px;margin-left:auto;margin-right:auto;width:100%}@media (min-width:1200px){.section-head{max-width:1180px}}.section-head h2{margin:0;display:flex;align-items:center;gap:.4rem}.section-link{font-weight:700;font-size:.9rem;white-space:nowrap;display:inline-flex;align-items:center;gap:.25rem}.section-sub{margin:2rem 0 1rem;font-size:1.2rem}.section-lead{margin:-.4rem 0 1rem;max-width:60ch}.page-head{margin-bottom:1.25rem}.page-head h1{margin-bottom:.35rem}.page-intro{color:var(--text-muted);max-width:70ch;font-size:1.02rem}.page-count{color:var(--text-soft);font-size:.9rem;margin:0}.empty-state{background:var(--bg-alt);border:1px dashed var(--border-strong);border-radius:var(--radius);padding:2rem;text-align:center;color:var(--text-muted)}.hero{position:relative;padding:clamp(2.4rem,5vw,3.8rem) 0 clamp(1.8rem,3.5vw,2.8rem);border-bottom:1px solid var(--border);text-align:center;background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 6%,var(--bg-alt)) 0%,var(--bg-alt) 55%,var(--bg) 100%);overflow:hidden}.hero-glow{display:block;position:absolute;inset:auto -20% -40% -20%;height:70%;background:radial-gradient(ellipse at 50% 0%,color-mix(in srgb,var(--primary) 12%,transparent),transparent 70%);pointer-events:none}.hero-inner{position:relative;z-index:1}.hero-brand{margin:0 0 .6rem;font-family:var(--font-display);font-size:clamp(2rem,4.2vw + .7rem,3.25rem);font-weight:800;letter-spacing:-.045em;line-height:1.05;color:var(--text)}.hero-title{font-size:clamp(1.12rem,1.3vw + .9rem,1.45rem);margin-bottom:.55rem;font-weight:600;color:var(--text-muted);letter-spacing:-.01em}.hero-sub{color:var(--text-soft);max-width:52ch;margin:0 auto 1.45rem;font-size:1.02rem;line-height:1.55}.hero-search{display:flex;gap:.5rem;max-width:560px;margin:0 auto;padding:.35rem;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-sm)}.hero-search input{flex:1;min-width:0;height:46px;border:0;border-radius:10px;padding:0 1rem;font-size:1rem;background:transparent;color:var(--text);box-shadow:none}.hero-search input:focus{outline:none;box-shadow:none}.hero-search:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 18%,transparent)}.hero-search .btn{padding-left:1.1rem;padding-right:1.2rem;min-height:46px;border-radius:10px}.hero-search .btn span{display:none}@media (min-width:480px){.hero-search .btn span{display:inline}}.category-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.85rem}.category-grid-full{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem}.category-card{--cat-color:var(--primary);display:flex;align-items:center;gap:.75rem;padding:.9rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);transition:border-color .18s,box-shadow .18s,transform .18s;min-height:68px}.category-card:hover{text-decoration:none;border-color:var(--cat-color);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.category-card-icon{width:44px;height:44px;border-radius:12px;background:color-mix(in srgb,var(--cat-color) 14%,#fff);color:var(--cat-color);display:grid;place-items:center;flex:none;overflow:hidden}.category-card-icon img{width:44px;height:44px;object-fit:cover}.category-card-body{display:flex;flex-direction:column;min-width:0}.category-card-name{font-weight:700;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.category-card-count{font-size:.8rem;color:var(--text-soft)}.category-card-arrow{margin-left:auto;color:var(--text-soft)}.category-children{list-style:none;padding:.5rem .5rem 0 1rem;display:flex;flex-wrap:wrap;gap:.25rem .9rem;font-size:.9rem}.app-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;justify-content:center;max-width:1100px;margin-inline:auto}@media (min-width:520px){.app-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:760px){.app-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}}@media (min-width:1024px){.app-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (min-width:1200px){.app-grid{grid-template-columns:repeat(6,minmax(0,1fr));max-width:1180px}}.app-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:border-color .2s,box-shadow .2s,transform .2s;min-width:0;overflow:hidden;box-shadow:var(--shadow-sm)}.app-card:hover{border-color:color-mix(in srgb,var(--primary) 35%,var(--border));box-shadow:var(--shadow);transform:translateY(-3px)}.app-card-link{display:flex;flex-direction:column;align-items:center;text-align:center;padding:1rem .7rem 1.05rem;color:inherit;text-decoration:none;min-height:100%}.app-card-link:hover{text-decoration:none;color:inherit}.app-card-icon{width:88px;height:88px;border-radius:20px;overflow:hidden;flex:none;background:var(--bg-alt);margin-bottom:.65rem;box-shadow:var(--shadow-sm)}@media (min-width:760px){.app-card-icon{width:96px;height:96px;border-radius:22px}}.app-card-icon img{width:100%;height:100%;object-fit:cover}.app-card-title{font-size:.95rem;margin:0 0 .35rem;line-height:1.3;font-family:var(--font-display);font-weight:750;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;width:100%;color:var(--text)}.app-card-meta-line{margin:0;font-size:.8rem;color:var(--text-muted);line-height:1.4}.app-card-stars{margin-top:.45rem}.app-card-stars .icon{width:1.05em;height:1.05em}.related-apps-block{margin-top:.5rem}.post-grid{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width:640px){.post-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.post-grid{grid-template-columns:repeat(3,1fr)}}.post-card{position:relative;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;transition:box-shadow .2s,border-color .2s,transform .2s;box-shadow:var(--shadow-sm)}.post-card:hover{box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--primary) 25%,var(--border));transform:translateY(-3px)}.post-card-media{aspect-ratio:16 / 9;background:var(--bg-alt);display:block;overflow:hidden}.post-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.post-card:hover .post-card-media img{transform:scale(1.04)}@media (prefers-reduced-motion:reduce){.post-card:hover .post-card-media img{transform:none}}.post-card-placeholder{display:grid;place-items:center;width:100%;height:100%;color:var(--text-soft)}.post-card-body{padding:.95rem 1.05rem 1.1rem;display:flex;flex-direction:column;gap:.35rem;flex:1;min-height:0}.post-card-cat{font-size:.75rem;font-weight:750;text-transform:uppercase;letter-spacing:.06em;color:#92400e;position:relative;z-index:1;align-self:flex-start}.post-card-title{font-size:1.05rem;margin:0;font-family:var(--font-display);position:relative;z-index:1}.post-card-title a{color:var(--text)}.post-card-title a:hover{color:var(--primary);text-decoration:none}.post-card-excerpt{font-size:.9rem;color:var(--text-muted);margin:0}.post-card-meta{font-size:.8rem;color:var(--text-soft);margin:.25rem 0 .75rem}.post-read-more{margin-top:auto;align-self:flex-start}.chip-row{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1.25rem;list-style:none}.chip{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .85rem;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text);font-size:.875rem;font-weight:500;min-height:36px}.chip:hover{border-color:var(--primary);color:var(--primary);text-decoration:none}.chip.is-active{background:var(--primary);border-color:var(--primary);color:#fff}.chip-count{color:var(--text-soft);font-weight:400}.chip.is-active .chip-count{color:rgba(255,255,255,.8)}.pagination{margin:2rem 0 0}.pagination ul{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem}.pagination a,.pagination .is-current,.pagination-gap{display:inline-flex;align-items:center;justify-content:center;gap:.25rem;min-width:42px;height:42px;padding:0 .75rem;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-weight:600;font-size:.9rem}.pagination a:hover{border-color:var(--primary);color:var(--primary);text-decoration:none}.pagination .is-current{background:var(--primary);border-color:var(--primary);color:#fff}.pagination-gap{border:0;color:var(--text-soft)}.download-wait{padding:3rem 0 4rem}.download-wait-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2rem 1.5rem;text-align:center;box-shadow:var(--shadow-sm)}.download-wait-card h1{margin:0 0 .5rem;font-size:1.6rem}.download-wait-app{margin:0 0 1rem;color:var(--text-muted)}.download-wait-timer{font-size:1.1rem;margin:0 0 1rem}.download-wait-bar{height:8px;border-radius:999px;background:var(--bg-alt);overflow:hidden;margin:0 auto 1.25rem;max-width:320px}.download-wait-bar span{display:block;height:100%;width:100%;background:var(--primary);transform-origin:left center;animation:dlBar linear forwards}@keyframes dlBar{from{transform:scaleX(1)}to{transform:scaleX(0)}}@media (prefers-reduced-motion:reduce){.download-wait-bar span{animation:none}}.preview-bar{background:#fff8e1;color:#5c4100;border-bottom:1px solid #ffe08a;padding:.6rem 1rem;text-align:center;font-size:.9rem}.app-page{padding:1.25rem 0 2rem}.app-sheet{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.35rem 1.25rem;box-shadow:var(--shadow-sm);margin:0 auto 1.5rem;max-width:960px}.app-top{display:grid;grid-template-columns:1fr;gap:1.35rem}@media (min-width:720px){.app-top{grid-template-columns:200px minmax(0,1fr);gap:2rem;align-items:start}}.app-action-col{display:flex;flex-direction:column;align-items:center;gap:.85rem;text-align:center}.app-hero-icon{width:148px;height:148px;border-radius:32px;overflow:hidden;background:var(--bg-alt);box-shadow:var(--shadow);flex:none}.app-hero-icon img{width:100%;height:100%;object-fit:cover}.btn-dl{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;width:100%;max-width:240px;min-height:52px;padding:.75rem 1.1rem;border-radius:12px;border:0;background:var(--primary);color:#fff;font-weight:800;font-size:.95rem;letter-spacing:.02em;text-decoration:none;white-space:nowrap;line-height:1.2;box-shadow:0 8px 18px color-mix(in srgb,var(--primary) 28%,transparent)}.btn-dl:hover{background:var(--primary-hover);color:#fff;text-decoration:none}.btn-dl-ico{display:inline-grid;place-items:center;flex:none}.btn-dl-ico .icon{width:22px;height:22px}.btn-dl-txt{white-space:nowrap}.app-rating-block{display:flex;flex-direction:column;align-items:center;gap:.3rem}.app-rating-score{margin:0;font-size:1.2rem;color:var(--primary)}.app-rating-score span{color:var(--text-muted);font-weight:600}.app-votes{margin:0;font-size:1rem;color:var(--text);font-weight:700}.app-rating-empty{margin:0;font-size:.88rem}.app-report-link{display:inline-flex;align-items:center;gap:.35rem;font-size:.88rem;font-weight:600;color:var(--text-muted);text-decoration:none;min-height:44px}.app-report-link:hover{color:var(--primary)}.app-info-col{min-width:0}.app-title{font-size:clamp(1.45rem,2vw + .8rem,2.05rem);margin:0 0 .55rem}.app-title-version{display:inline;font-size:.55em;font-weight:600;color:var(--text-muted);margin-left:.25rem}.app-cat-pill{display:inline-flex;align-items:center;padding:.35rem .85rem;border-radius:999px;background:var(--primary);color:#fff;font-weight:700;font-size:.82rem;text-decoration:none;margin-bottom:.75rem}.app-cat-pill:hover{background:var(--primary-hover);color:#fff;text-decoration:none}.app-short{font-size:1.02rem;color:var(--text-muted);margin:0 0 1rem;max-width:70ch}.app-meta-grid{display:grid;grid-template-columns:1fr;gap:0;margin:0 0 1.15rem;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}@media (min-width:560px){.app-meta-grid{grid-template-columns:1fr 1fr}}.app-meta-grid>div{display:grid;grid-template-columns:120px 1fr;gap:.65rem;align-items:center;padding:.7rem .9rem;border-bottom:1px solid var(--border);font-size:.95rem;background:var(--surface)}@media (min-width:560px){.app-meta-grid>div:nth-child(odd){border-right:1px solid var(--border)}.app-meta-grid>div:nth-last-child(-n+2){border-bottom:0}}.app-meta-grid>div:last-child{border-bottom:0}.app-meta-grid dt{margin:0;color:var(--text-muted);font-weight:600;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em}.app-meta-grid dd{margin:0;font-weight:750;color:var(--text);font-size:1rem}.play-badge{display:inline-flex;align-items:center;padding:.45rem .85rem;border-radius:8px;background:#111;color:#fff;font-size:.85rem;font-weight:700;text-decoration:none}.play-badge:hover{color:#fff;opacity:.9;text-decoration:none}.share-bar{display:flex;flex-wrap:wrap;gap:.45rem}.share-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.5rem .75rem;border-radius:8px;color:#fff;font-size:.8rem;font-weight:700;text-decoration:none;min-height:40px}.share-btn:hover{color:#fff;text-decoration:none;filter:brightness(1.06)}.share-facebook{background:#1860c9}.share-twitter{background:#0f1419}.share-pinterest{background:#ad081b}.share-telegram{background:#0a6a9e}.share-whatsapp{background:#0b6b4a}.stars{display:inline-flex;gap:.1rem;color:var(--star);vertical-align:middle}.stars .icon-star{fill:var(--star);stroke:var(--star);color:var(--star)}.stars .icon-star-empty{fill:none;stroke:#64748b;color:#64748b;opacity:1}.stars-lg .icon{width:1.35em;height:1.35em}.stars-inline .icon{width:1em;height:1em}.hp{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0,0,0,0) !important;white-space:nowrap !important;border:0 !important}.side-help{font-size:.85rem;margin:0 0 .75rem}.side-rating{text-align:center;margin-bottom:.9rem;padding-bottom:.9rem;border-bottom:1px solid var(--border)}.side-rating p{margin:.25rem 0}.reviews-section{scroll-margin-top:calc(var(--header-h) + 1rem)}.reviews-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1rem}.reviews-head h2{margin:0}.reviews-summary{text-align:right}.reviews-summary p{margin:.25rem 0 0;font-size:.95rem}.review-list{list-style:none;display:grid;gap:.85rem;margin:0 0 1.5rem}.review-item{padding:1rem;background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--radius)}.review-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .75rem;font-size:.85rem;color:var(--text-soft);margin-bottom:.35rem}.review-author{color:var(--text)}.review-title{font-size:1rem;margin:0 0 .35rem}.review-body{margin:0;color:var(--text);white-space:pre-wrap}.review-form,.report-form{display:grid;gap:.75rem}.card-form{margin-top:1rem;padding:1.15rem;background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.card-form h3{margin:0 0 .25rem;font-size:1.1rem}.field-row{display:grid;grid-template-columns:1fr;gap:.75rem}@media (min-width:640px){.field-row{grid-template-columns:1fr 1fr}}.review-form .field,.report-form .field{display:grid;gap:.3rem}.review-form label,.report-form label{font-weight:600;font-size:.9rem}.review-form input,.review-form textarea,.report-form input,.report-form textarea{width:100%;padding:.6rem .75rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);font:inherit;background:#fff;color:var(--text)}.star-picker{display:flex;flex-direction:row-reverse;justify-content:flex-end;gap:.15rem;border:0;margin:0;padding:0}.star-picker input{position:absolute;opacity:0;width:1px;height:1px}.star-picker label{cursor:pointer;color:#64748b;padding:.15rem}.star-picker label .icon{width:1.75rem;height:1.75rem;fill:currentColor;stroke:currentColor}.star-picker label:hover,.star-picker label:hover~label,.star-picker input:checked~label{color:var(--star)}.star-picker input:focus-visible + label{outline:3px solid var(--focus);outline-offset:2px;border-radius:4px}.alert{padding:.75rem 1rem;border-radius:var(--radius-sm);margin-bottom:1rem;font-size:.92rem}.alert-ok{background:var(--accent-soft);border:1px solid #c8ead8;color:#0b5537}.alert-error{background:#fdecea;border:1px solid #f5c2c0;color:#8a1f1a}.app-cta-unavailable{display:flex;align-items:center;gap:.4rem;background:var(--bg-alt);padding:.75rem 1rem;border-radius:var(--radius-sm);color:var(--text-muted);margin:0;font-size:.88rem}.prose .download-box{text-align:center;margin:1.5em 0}.prose .btn-download,.prose .btn-dl{text-decoration:none}.app-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:1.5rem}.app-main,.app-side{min-width:0}@media (min-width:960px){.app-layout{grid-template-columns:minmax(0,1fr) 300px;gap:2rem;align-items:start}.app-side{position:sticky;top:calc(var(--header-h) + 1rem)}}.app-section{padding:1.25rem 0;border-top:1px solid var(--border)}.app-section:first-child{border-top:0;padding-top:0}.app-section h2{font-size:1.25rem;display:flex;align-items:center;gap:.4rem}.screenshots{display:flex;gap:.75rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:.15rem .15rem .5rem;scrollbar-width:thin;scroll-behavior:smooth}.screenshot{flex:0 0 auto;margin:0;scroll-snap-align:start}.screenshot a{display:block;border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);background:var(--bg-alt)}.screenshot img{height:280px;width:auto;max-width:min(220px,55vw);object-fit:cover}.screenshot figcaption{font-size:.8rem;color:var(--text-soft);margin-top:.35rem;max-width:220px}@media (min-width:640px){.screenshot img{height:360px;max-width:240px}}.shots-carousel{position:relative;display:flex;align-items:center;gap:.35rem}.shots-carousel .screenshots{flex:1;min-width:0}.shots-nav{flex:none;width:44px;height:44px;border-radius:50%;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);display:grid;place-items:center;box-shadow:var(--shadow-sm);z-index:2;cursor:pointer}.shots-nav:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.shots-nav:disabled{opacity:.35;cursor:default}.shots-nav .icon{width:22px;height:22px}@media (max-width:520px){.shots-nav{width:40px;height:40px}}.info-table{display:grid;grid-template-columns:1fr;gap:0;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin:0}.info-table>div{display:grid;grid-template-columns:130px 1fr;gap:.5rem;padding:.7rem .9rem;border-top:1px solid var(--border);font-size:.92rem}.info-table>div:first-child{border-top:0}.info-table>div:nth-child(odd){background:var(--bg-alt)}.info-table dt{color:var(--text-muted);font-weight:500}.info-table dd{margin:0;font-weight:500;word-break:break-word}@media (min-width:640px){.info-table{grid-template-columns:1fr 1fr}.info-table>div:nth-child(2){border-top:0}.info-table>div:nth-child(odd){background:transparent}.info-table>div:nth-child(4n+1),.info-table>div:nth-child(4n+2){background:var(--bg-alt)}}.app-safety{background:var(--accent-soft);border:1px solid #c8ead8;border-radius:var(--radius);padding:1rem 1.1rem;margin-top:1.25rem}.app-safety h2{font-size:1.05rem}.app-safety .prose p:last-child{margin-bottom:0}.side-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.15rem;margin-bottom:1rem;box-shadow:var(--shadow-sm)}.side-download{display:none;background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 10%,#fff),#fff 42%);border-color:color-mix(in srgb,var(--primary) 28%,var(--border))}@media (min-width:960px){.side-download{display:block}}.side-meta{display:none;background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 10%,#fff),#fff 42%);border-color:color-mix(in srgb,var(--primary) 28%,var(--border))}@media (min-width:960px){.side-meta{display:block}}.side-kicker{margin:0 0 .65rem;font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--primary)}.side-chips{list-style:none;margin-top:1rem;display:grid;gap:.45rem}.side-chips li{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.55rem .7rem;background:var(--bg-alt);border-radius:var(--radius-sm);font-size:.88rem;color:var(--text-muted)}.side-chips strong{color:var(--text);font-weight:700}.side-facts{list-style:none;margin-top:.9rem;display:grid;gap:.4rem;font-size:.9rem}.side-facts li{display:flex;justify-content:space-between;gap:1rem;padding:.35rem 0;border-top:1px solid var(--border);color:var(--text-muted)}.side-facts strong{color:var(--text)}.side-title{font-size:1.05rem;margin-bottom:.75rem}.app-list{list-style:none;display:grid;gap:.25rem}.app-list a{display:flex;align-items:center;gap:.75rem;padding:.5rem;border-radius:var(--radius-sm);color:var(--text)}.app-list a:hover{background:var(--bg-alt);text-decoration:none}.app-list img{width:48px;height:48px;border-radius:12px;object-fit:cover;flex:none;background:var(--bg-alt)}.app-list-body{display:flex;flex-direction:column;min-width:0}.app-list-name{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-list-meta{font-size:.8rem;color:var(--text-soft)}.app-posts{border-top:1px solid var(--border);margin-top:1rem}.prose{font-size:1.02rem;line-height:1.7;color:var(--text);overflow-wrap:anywhere}.prose>:first-child{margin-top:0}.prose h2{font-size:1.4rem;margin:1.6em 0 .6em}.prose h3{font-size:1.15rem;margin:1.4em 0 .5em}.prose h4{font-size:1.02rem;margin:1.2em 0 .4em}.prose p,.prose ul,.prose ol,.prose blockquote,.prose pre,.prose table,.prose figure{margin:0 0 1.1em}.prose ul,.prose ol{padding-left:1.5em}.prose li{margin-bottom:.35em}.prose li::marker{color:var(--primary)}.prose a{text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--link,var(--primary)) 45%,transparent);text-underline-offset:2px}.prose img{border-radius:var(--radius);margin:0 auto}.prose figcaption{text-align:center;font-size:.85rem;color:var(--text-soft);margin-top:.5rem}.prose blockquote{border-left:4px solid var(--primary);background:var(--bg-alt);padding:.75rem 1rem;border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--text-muted);font-style:italic}.prose pre{background:#1e2530;color:#e6edf3;padding:1rem;border-radius:var(--radius-sm);overflow-x:auto;font-size:.9rem;line-height:1.5}.prose pre code{background:transparent;padding:0;color:inherit}.prose table{width:100%;border-collapse:collapse;font-size:.92rem;display:block;overflow-x:auto}.prose th,.prose td{border:1px solid var(--border);padding:.55rem .75rem;text-align:left;vertical-align:top}.prose th{background:var(--bg-alt);font-weight:600}.prose hr{border:0;border-top:1px solid var(--border);margin:2em 0}.prose iframe{width:100%;aspect-ratio:16 / 9;height:auto;border:0;border-radius:var(--radius)}.prose .callout,.prose .note,.prose .tip,.prose .warning{padding:.9rem 1rem;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-alt)}.prose .tip{background:var(--accent-soft);border-color:#c8ead8}.prose .warning{background:#fff8e1;border-color:#ffe08a}.prose .lead{font-size:1.12rem;color:var(--text-muted)}.prose h2,.prose h3,.app-section{scroll-margin-top:calc(var(--header-h) + 1rem)}.toc{margin:0 0 1.5rem;padding:1.1rem 1.2rem 1.15rem;background:linear-gradient(165deg,color-mix(in srgb,var(--primary) 7%,#fff) 0%,var(--surface) 55%);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.toc-head{display:flex;align-items:center;gap:.5rem;margin:0 0 .75rem;font-size:.95rem;font-weight:800;letter-spacing:-.01em;color:var(--text)}.toc-head .icon{color:var(--primary)}.toc-list{list-style:none;margin:0;padding:0;display:grid;gap:.2rem;counter-reset:toc}.toc-list>li{margin:0}.toc-list a{display:flex;align-items:baseline;gap:.55rem;padding:.45rem .55rem;border-radius:8px;color:var(--text);text-decoration:none;font-size:.92rem;font-weight:600;line-height:1.35}.toc-list a::before{counter-increment:toc;content:counter(toc);flex:none;width:1.45rem;height:1.45rem;border-radius:6px;display:inline-grid;place-items:center;background:var(--primary-soft);color:var(--primary);font-size:.72rem;font-weight:800}.toc-list a:hover{background:var(--primary-soft);color:var(--primary);text-decoration:none}.toc-list .toc-h3 a{padding-left:1.35rem;font-weight:500;color:var(--text-muted);font-size:.88rem}.toc-list .toc-h3 a::before{content:"";width:.4rem;height:.4rem;border-radius:50%;background:var(--border-strong)}.post-page{padding:1.5rem 0 1rem}.post-head{margin-bottom:1.25rem}.post-head h1{font-size:clamp(1.6rem,2.2vw + 1rem,2.4rem);margin:.35rem 0 .5rem}.post-lead{font-size:1.12rem;color:var(--text-muted)}.post-meta{display:flex;flex-wrap:wrap;gap:.35rem 1rem;font-size:.875rem;color:var(--text-soft);margin:0}.post-meta>*{display:inline-flex;align-items:center;gap:.3rem}.post-featured{margin:0 0 1.5rem}.post-featured img{width:100%;border-radius:var(--radius-lg);aspect-ratio:16 / 9;object-fit:cover}.post-featured figcaption{font-size:.85rem;color:var(--text-soft);margin-top:.5rem}.post-tags{margin-top:1.5rem}.author-box{display:flex;gap:1rem;align-items:flex-start;background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--radius);padding:1rem;margin-top:2rem}.author-avatar{width:52px;height:52px;border-radius:50%;background:var(--surface);border:1px solid var(--border);display:grid;place-items:center;color:var(--text-soft);flex:none}.author-name{font-weight:700;margin-bottom:.25rem}.author-box p:last-child{margin-bottom:.25rem}.static-page{padding:1.5rem 0 2.5rem}.page-updated{font-size:.875rem}.contact-email{margin-top:1.5rem;font-size:1.05rem;display:flex;align-items:center;gap:.4rem}.search-page-form{margin:1rem 0;max-width:720px}.error-head{text-align:center;max-width:640px;margin:0 auto 2rem}.error-code{font-size:clamp(4rem,12vw,7rem);font-weight:800;color:var(--primary-soft);line-height:1;margin:0;letter-spacing:-.04em}.error-head .hero-search{margin:1.25rem auto}.lightbox{position:fixed;inset:0;background:rgba(10,14,20,.92);z-index:1000;display:grid;place-items:center;padding:1rem}.lightbox[hidden]{display:none}.lightbox img{max-width:100%;max-height:90vh;width:auto;height:auto;border-radius:var(--radius);box-shadow:0 20px 60px rgba(0,0,0,.5)}.lightbox button{position:absolute;width:48px;height:48px;border-radius:50%;border:0;background:rgba(255,255,255,.12);color:#fff;display:grid;place-items:center}.lightbox button:hover{background:rgba(255,255,255,.25)}.lightbox button .icon{width:26px;height:26px}.lightbox-close{top:1rem;right:1rem}.lightbox-prev{left:.5rem;top:50%;transform:translateY(-50%)}.lightbox-next{right:.5rem;top:50%;transform:translateY(-50%)}@media (min-width:768px){.lightbox-prev{left:1.5rem}.lightbox-next{right:1.5rem}}.site-footer{background:linear-gradient(180deg,var(--bg) 0%,var(--bg-alt) 40%);border-top:1px solid var(--border);padding:3rem 0 1.75rem;margin-top:2.5rem;color:var(--text-muted);font-size:.92rem}.footer-grid{display:grid;grid-template-columns:1fr;gap:2rem}@media (min-width:640px){.footer-grid{grid-template-columns:1fr 1fr}}@media (min-width:1024px){.footer-grid{grid-template-columns:2fr 1fr 1fr 1fr;gap:2.5rem}}.footer-about p{margin:.9rem 0;max-width:46ch}.footer-heading{font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text);margin-bottom:.75rem}.footer-col ul{list-style:none;display:grid;gap:.35rem}.footer-col a{color:var(--text-muted);display:inline-block;padding:.2rem 0}.footer-col a:hover{color:var(--primary)}.social-links{list-style:none;display:flex;gap:.5rem}.social-links a{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--surface);border:1px solid var(--border);color:var(--text-muted)}.social-links a:hover{color:var(--primary);border-color:var(--primary)}.footer-bottom{border-top:1px solid var(--border);margin-top:2rem;padding-top:1.25rem;font-size:.85rem;display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem}.footer-bottom p{margin:0}.footer-note{color:var(--text-soft)}@media print{.site-header,.site-footer,.breadcrumbs,.app-cta,.app-side,.nav-toggle,.lightbox{display:none !important}}