:root {
  color-scheme:light;
  font-family:"Segoe UI","Yu Gothic UI",Meiryo,system-ui,sans-serif;
  color:#182a37;
  background:#f5f7f8;
  line-height:1.7;
  --muted:#536574;
  --line:#dae2e8;
  --accent:#245c9d
}
* { box-sizing:border-box }
body { margin:0 }
a { color:var(--accent); text-underline-offset:.25em }
button { font:inherit }
:focus-visible { outline:3px solid #146fd0; outline-offset:5px }
.catalog { width:min(1200px,calc(100% - 64px)); margin:auto }
.catalog-nav,.page-header { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:25px 0; border-bottom:1px solid var(--line) }
.catalog-nav a,.back-link { color:var(--muted); text-decoration:none; font-size:.9rem }
.catalog-nav .home-link { font-weight:800; font-size:1.1rem; letter-spacing:.12em; color:#182a37 }
.catalog-hero,.android-catalog .hero { padding:56px 0 48px }
.eyebrow { color:var(--accent); font-size:.78rem; font-weight:700; letter-spacing:.12em; margin:0 0 12px }
h1 { font-size:clamp(3.3rem,7vw,6rem); line-height:1.08; letter-spacing:-.055em; margin:0 0 22px }
h1 span { color:#6e8392 }
.catalog-hero>p:not(.eyebrow),.intro { color:var(--muted); font-size:1.05rem; max-width:650px; margin:0 0 22px }
.text-link { font-size:.9rem; font-weight:650; text-decoration:none }
.catalog-section,.android-catalog main>section:not(.hero) { border-top:1px solid var(--line); padding-top:26px }
h2 { font-size:.8rem; font-weight:700; text-transform:uppercase; letter-spacing:.12em; margin:0 0 24px; color:var(--muted) }
.catalog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px }
.catalog-card { min-width:0; display:flex; flex-direction:column; border:1px solid var(--line); border-radius:18px; background:#fff; overflow:hidden }
.app-summary { padding:26px; display:flex; flex:1; flex-direction:column; align-items:flex-start }
.app-identity { display:flex; gap:15px; align-items:center; margin-bottom:20px }
.app-icon { display:block; width:58px; height:58px; border-radius:14px; object-fit:contain; flex-shrink:0 }
.app-category,.status { color:var(--accent); font-size:.73rem; font-weight:700; letter-spacing:.04em; margin:0 0 4px }
h3 { font-size:1.2rem; line-height:1.35; letter-spacing:-.025em; margin:0 }
.app-description { font-size:.92rem; color:var(--muted); margin:0 0 24px }
.catalog-button,.button { display:inline-flex; gap:22px; align-items:center; justify-content:center; min-height:44px; border-radius:9px; padding:10px 16px; background:#183c65; color:#fff; text-decoration:none; font-size:.85rem; font-weight:650 }
.catalog-button { margin-top:auto }
.catalog-button:hover,.button:hover { background:#245c9d }
.app-preview { display:flex; align-items:center; justify-content:center; padding:16px; background:#eaf0f4; border-top:1px solid var(--line); min-height:180px }
.app-preview img { display:block; width:100%; height:170px; object-fit:contain; filter:drop-shadow(0 5px 8px #1b2b3b18); transition:transform .2s }
.app-preview:hover img { transform:translateY(-3px) }
.featured-app { grid-column:1/-1; display:grid; grid-template-columns:1fr 1.25fr }
.featured-app .app-summary { padding:38px }
.featured-app .app-icon { width:76px; height:76px; border-radius:18px }
.featured-app h3 { font-size:2.3rem }
.featured-app .app-description { font-size:1.05rem }
.featured-app .app-preview { border:0; border-left:1px solid var(--line); padding:26px }
.featured-app .app-preview img { height:auto; max-height:320px }
.catalog-footer,.android-catalog footer { border-top:1px solid var(--line); padding:26px 0 34px; margin-top:48px; color:var(--muted); font-size:.85rem }
.language-switch { display:flex; gap:5px; padding:4px; border:1px solid var(--line); border-radius:100px; background:#fff }
.language-button { border:0; border-radius:100px; padding:7px 13px; font-size:.8rem; background:transparent; color:var(--muted); cursor:pointer }
.language-button.is-active { background:#183c65; color:#fff }
.app-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:26px }
.android-catalog .app-card { display:grid; grid-template-columns:64px minmax(0,1fr); align-content:start; gap:22px 18px; min-width:0; padding:28px; border:1px solid var(--line); border-radius:18px; background:#fff }
.android-catalog .app-card h3 { font-size:1.6rem; margin-bottom:15px }
.android-catalog .app-card p:not(.status) { font-size:.94rem; color:var(--muted); margin:0 0 22px }
.android-preview { grid-column:1/-1; display:flex; align-items:center; justify-content:center; padding:22px; border-radius:12px; background:#edf1f5; margin-top:4px }
.android-preview img { display:block; height:370px; width:auto; max-width:100%; object-fit:contain; border-radius:10px; box-shadow:0 10px 25px #132a3a20 }
@media(max-width:900px) {
 .catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)) }
 .catalog-card:last-child { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr }
 .catalog-card:last-child .app-preview { border-top:0; border-left:1px solid var(--line) }
 .featured-app { grid-template-columns:1fr 1fr }
 .featured-app .app-summary { padding:26px }
 .android-catalog .app-card { grid-template-columns:1fr }
 .android-catalog .app-card>.app-icon { width:64px; height:64px }
}
@media(max-width:600px) {
 .catalog { width:calc(100% - 32px) }
 .catalog-nav,.page-header { padding:20px 0; gap:12px }
 .back-link { font-size:.8rem }
 .language-button { padding:6px 10px }
 .language-switch { gap:0 }
 .catalog-hero,.android-catalog .hero { padding:38px 0 32px }
 h1 { font-size:3.8rem }
 .eyebrow { font-size:.7rem; letter-spacing:.08em }
 .catalog-grid,.app-grid { grid-template-columns:1fr; gap:20px }
 .featured-app,.catalog-card:last-child { display:flex; grid-column:auto }
 .featured-app .app-preview,.catalog-card:last-child .app-preview { border-left:0; border-top:1px solid var(--line) }
 .featured-app .app-icon { width:64px; height:64px }
 .featured-app .app-summary,.app-summary { padding:24px }
 .featured-app .app-preview { padding:18px }
 .app-preview img { height:auto; max-height:260px }
 .android-catalog .app-card { grid-template-columns:58px minmax(0,1fr); gap:18px 14px; padding:22px }
 .android-catalog .app-card>.app-icon { width:58px; height:58px }
 .android-catalog .app-card h3 { font-size:1.4rem }
 .android-preview { padding:18px }
 .android-preview img { height:340px }
 .catalog-footer,.android-catalog footer { margin-top:32px }
}
@media(prefers-reduced-motion:reduce) { * { transition:none!important; scroll-behavior:auto!important } }

.windows-catalog .catalog-nav { flex-wrap:wrap }
.windows-catalog .catalog-nav .home-link { margin-right:auto }
