:root{--bg:#f6f8ff;--card:#fff;--ink:#0b0f3b;--muted:#4b5178;--line:#dfe4fb;--a:#5b6cff;--a2:#7a6bff}
@media (prefers-color-scheme:dark){:root{--bg:#090b24;--card:#12163a;--ink:#eef0ff;--muted:#a9b0dc;--line:#252b5c;--a:#8fa0ff;--a2:#a394ff}}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans",sans-serif}
main,header,footer{max-width:760px;margin:0 auto;padding:0 20px}
header{padding-top:36px;display:grid;grid-template-columns:1fr 150px;gap:24px;align-items:center}
.brand{display:flex;align-items:center;gap:12px;font-weight:600;color:var(--muted);font-size:15px}
.brand img{width:44px;height:44px;border-radius:10px}
h1{font-size:clamp(30px,6vw,44px);line-height:1.12;margin:18px 0 8px;letter-spacing:-.02em;text-wrap:balance}
.sub{font-size:20px;color:var(--muted);margin:0 0 14px}
.intro{margin:0 0 22px}
.cta{display:inline-block;background:var(--ink);color:var(--bg);text-decoration:none;font-weight:600;padding:14px 22px;border-radius:14px}
.by{font-size:14px;color:var(--muted);margin-top:12px}
.shot{display:block;width:100%;max-width:340px;height:auto;margin:36px auto 0;border-radius:24px}
section,.tool{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:20px 22px;margin:16px 0}
h2{font-size:21px;margin:0 0 8px;letter-spacing:-.01em}
p{margin:0 0 10px}p:last-child{margin-bottom:0}
ul{margin:0;padding-inline-start:20px}li{margin:4px 0}
details{border-top:1px solid var(--line);padding:10px 0}details:first-of-type{border-top:0}
summary{font-weight:600;cursor:pointer}details p{margin-top:6px;color:var(--muted)}
.tool{background:linear-gradient(135deg,var(--a),var(--a2));color:#fff;border:0}
.tool button{font:inherit;font-weight:600;border:0;border-radius:12px;padding:12px 20px;background:#fff;color:#0b0f3b;cursor:pointer;margin-top:6px;min-width:180px}
footer{padding:28px 20px 48px;font-size:14px;color:var(--muted)}
footer a{color:var(--a)}
.langs{display:flex;flex-wrap:wrap;gap:6px 14px;margin:14px 0}
@media (max-width:560px){header{grid-template-columns:1fr}.mascot{width:110px;order:-1}}
