/* NekotApp sample styles - pale blue/purple tones, responsive */
:root{
  --bg:#f7f8fb;
  --muted:#6b6f9a;
  --accent:#4b4f9a;
  --card:#eef0ff;
  --header:#e6e9ff;
  --radius:10px;
  --max-width:1000px;
  --gap:1rem;
  --shadow: 0 6px 18px rgba(75,79,154,0.06);
  font-family: "Helvetica Neue", Arial, sans-serif;
}

*{box-sizing:border-box}
body{
  margin:0;
  background:var(--bg);
  color:#333;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  line-height:1.6;
}

.container{max-width:var(--max-width);margin:0 auto;padding:1rem}

.site-header{background:var(--header);padding:0.75rem 0;box-shadow:var(--shadow)}
.site-header .inner{display:flex;align-items:center;gap:1rem;max-width:var(--max-width);margin:0 auto;padding:0 1rem}
.brand a{font-weight:700;color:var(--accent);text-decoration:none;font-size:1.1rem}
.lang-switch{width:150px;margin-left:auto;margin-right:0;text-align:right;}
.lang-switch a{text-decoration:none;font-weight:300;color: var(--accent);}

.sns-links{margin-left:auto;display:flex;gap:0.5rem}
.sns-links a{text-decoration:none;color:var(--muted);font-size:0.95rem}

.hero{background:linear-gradient(180deg, rgba(75,79,154,0.06), rgba(124,116,192,0.02));padding:2rem 0;border-bottom:1px solid rgba(0,0,0,0.03)}
.hero .inner{max-width:var(--max-width);margin:0 auto;padding:0 1rem}
.hero h1{margin:0 0 0.5rem;font-size:1.75rem;color:var(--accent)}
.hero p{margin:0;color:var(--muted)}

.apps{padding:1.25rem 1em}
.apps h2{margin:0 0 1rem;color:var(--accent)}

.app-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--gap)}
.app-card{background:var(--card);border-radius:var(--radius);padding:1rem;text-align:left;transition:transform .18s ease,box-shadow .18s ease;box-shadow:var(--shadow)}
.app-card a{text-decoration:none;color:inherit;display:block}
.app-card .thumb{height:140px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:8px;margin-bottom:0.75rem;background:linear-gradient(180deg, rgba(255,255,255,0.6), rgba(255,255,255,0.3))}
.app-card img{width:120px;height:120px;}
.app-card h3{margin:0 0 0.5rem;color:var(--accent);font-size:1.05rem}
.app-card p{margin:0;color:#555;font-size:0.95rem}
.app-card .release{width:100%; color: #6b6f9a;font-weight: 200; text-align: right;}

.app-card:hover{transform:translateY(-6px);box-shadow:0 12px 30px rgba(75,79,154,0.08)}

.page-content{max-width:720px;margin:1rem auto;padding:1rem;background:linear-gradient(180deg, rgba(255,255,255,0.6), rgba(255,255,255,0.4));border-radius:8px}

.site-footer { display: flex; flex-wrap: wrap; justify-content: center; width: 100%; max-width: 800px; margin: 0 auto; padding: 1rem 0; color: var(--muted); font-size: 0.9rem; text-align: center; }
.equal-width-list { display: flex; list-style: none; padding: 0; margin: 0 auto; width: auto; max-width: 100%; }
.equal-width-list li { flex-shrink: 0; text-align: center; }
.equal-width-list li a { display: block; padding: 10px 15px; text-decoration: none; color: inherit; white-space: nowrap; }
.sns-list { width: 100%; flex-basis: 100%; flex-shrink: 0; padding: 0; margin: 10px 0; }
.sns-list p { margin-top: 0; margin-bottom: 5px; text-align: center; }
.sns-list ul { display: flex; justify-content: center; list-style: none; padding: 0; margin: 0; }
.sns-list li { margin: 0 8px; }
.sns-list li img { width: 28px; height: 28px; vertical-align: middle; }
.site-footer .inner { width: 100%; text-align: center; margin-top: 15px; }

@media (max-width:800px){
  .sns-links{order:3;margin-left:0}
  .site-header .inner{flex-wrap:wrap}
}

.mission h3{color: #222; font-weight: 300; padding:0; margin:0;}
.mission p{color: #666; font-weight: 200; padding:0; margin:0;}