/* Public-site updates. Shared by /updates and its homepage preview. */
.updates-eyebrow { display:flex; align-items:center; gap:9px; color:#bbb4d9; font-size:14px; font-weight:600; line-height:1.4; letter-spacing:.04em; }
.updates-eyebrow > span { width:7px; height:7px; flex:none; border-radius:50%; background:#7442c8; box-shadow:0 0 14px #7442c855; }
.home { --updates-section-gap:100px; }
.updates-widget { margin:var(--updates-section-gap) 0 0; }
.updates-widget + .tariffs .tariffs__container { padding-top:var(--updates-section-gap); }
.updates-widget__heading { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:24px; }
.updates-widget__heading h2 { font-size:36px; line-height:1.15; font-weight:600; margin:8px 0 0; }
.updates-all { display:inline-flex; align-items:center; gap:16px; font-size:16px; line-height:1.4; text-decoration:none; padding:10px 0; white-space:nowrap; }
.updates-all > span { font-size:23px; color:#cfcffd; }
.updates-widget__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.updates-widget__footer { display:flex; justify-content:flex-end; margin-top:22px; }
.update-preview { display:flex; flex-direction:column; align-items:flex-start; padding:24px; border:1px solid #ffffff16; border-radius:22px; background:linear-gradient(135deg,#ffffff06,#ffffff02); text-decoration:none; transition:transform .2s,border-color .2s,background .2s; }
.update-preview:hover { transform:translateY(-3px); border-color:#7442c880; background:#ffffff07; }
.update-preview__meta { width:100%; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:10px; }
.update-preview__meta time { font-size:12px; line-height:1.4; color:#b8b5cc; }
.update-preview h3 { font-size:23px; line-height:1.2; font-weight:600; margin:20px 0 12px; }
.update-preview p { color:#c4c2d3; font-size:16px; line-height:1.5; margin-bottom:24px; }
.update-preview__more { display:flex; align-items:center; justify-content:space-between; width:100%; margin-top:auto; color:#cfcffd; font-size:14px; line-height:1.4; }
.update-preview__more > span { font-size:20px; }
.update-tag { display:inline-flex; align-items:center; padding:5px 10px; border:1px solid #d595ff26; border-radius:7px; color:#d9b1f6; background:#c075fa10; font-size:12px; font-weight:600; line-height:1.4; white-space:nowrap; }
.update-tag--fix { color:#9ee7c6; border-color:#7dd9b52e; background:#7dd9b50b; }
.update-tag--content { color:#f0cb8e; border-color:#e8b7692e; background:#e8b7690b; }
.update-tag--improvement { color:#a8c9fa; border-color:#87b8f42e; background:#87b8f40b; }
.update-tag--game { color:#cfcffd; border-color:#7442c84d; background:#7442c814; }
.updates-body { overflow-wrap:break-word; }
.updates-page { max-width:1160px; margin:0 auto; padding:0 32px 80px; }
.updates-page__intro { position:relative; padding:50px 0 58px 174px; }
.updates-back { color:#bab6d0; font-size:14px; line-height:1.4; text-decoration:none; }
.updates-page__intro > .updates-back { display:inline-block; margin-bottom:46px; }
.updates-page__intro h1 { margin:18px 0 24px; font-size:clamp(40px,4.8vw,64px); font-weight:600; line-height:1.07; letter-spacing:-.025em; }
.updates-page__intro h1 > span { color:#cfcffd; }
.updates-page__lead { color:#c4bfd8; font-size:19px; line-height:1.55; }
.updates-page__jump { display:inline-flex; gap:20px; align-items:center; margin-top:30px; color:#e9ddf2; text-decoration:none; font-size:14px; }
.updates-page__jump > span { color:#cfcffd; font-size:20px; }
.updates-timeline { position:relative; scroll-margin-top:25px; }
.updates-timeline::before { content:""; position:absolute; top:25px; bottom:0; left:143px; width:1px; background:linear-gradient(#b27ddf66,#ffffff16 15%,#ffffff16 95%,transparent); }
.update-entry { position:relative; display:grid; grid-template-columns:144px minmax(0,1fr); gap:30px; margin-bottom:26px; scroll-margin-top:28px; }
.update-entry__date { position:relative; display:flex; justify-content:space-between; align-items:flex-start; padding-top:27px; font-size:17px; font-weight:600; line-height:1.3; color:#d4cbe8; }
.update-entry__date time > span { display:block; margin-top:4px; color:#a49cb7; font-size:13px; font-weight:400; }
.update-entry__dot { position:absolute; right:-4px; top:32px; width:9px; height:9px; background:#8d709c; border:2px solid #11132a; border-radius:50%; }
.update-entry--featured .update-entry__dot { background:#7442c8; box-shadow:0 0 0 5px #7442c816; }
.update-entry__card { min-width:0; padding:30px 32px 32px; border-radius:22px; border:1px solid #ffffff16; background:#ffffff03; }
.update-entry--featured .update-entry__card { background:linear-gradient(120deg,#361e494d,#211b380f); border-color:#7442c84d; }
.update-entry:target .update-entry__card { border-color:#cfcffd; box-shadow:0 0 0 3px #7442c814; }
.update-entry__meta { display:flex; gap:14px; align-items:center; margin-bottom:20px; }
.update-entry__latest { color:#bfa7cc; font-size:12px; line-height:1.3; }
.update-entry__anchor { margin-left:auto; color:#9e8eb2; font-size:20px; text-decoration:none; padding:0 4px; }
.update-entry__layout--illustrated { display:grid; grid-template-columns:minmax(0,1fr) 205px; gap:26px; align-items:center; }
.update-entry__copy h2 { font-size:29px; font-weight:600; line-height:1.15; margin:0 0 15px; letter-spacing:-.01em; }
.update-entry__summary { font-size:18px; line-height:1.5; color:#ddd6e9; }
.update-entry__detail { color:#bdb7cc; font-size:16px; line-height:1.6; margin-top:14px; }
.updates-text-link { display:inline-flex; align-items:center; gap:14px; margin-top:24px; color:#cfcffd; text-decoration:none; font-size:15px; font-weight:600; line-height:1.4; }
.update-entry__image { width:100%; height:auto; max-height:220px; object-fit:contain; }
.update-art { min-width:0; position:relative; min-height:180px; display:flex; align-items:center; justify-content:center; }
.update-art--return { flex-direction:column; }
.update-art__orbit { display:flex; align-items:center; padding:18px 0; }
.update-art__orbit img { height:78px; width:78px; object-fit:contain; margin:0 -5px; }
.update-art__orbit img:nth-child(2) { width:90px; height:90px; transform:translateY(-13px); }
.update-art__bubble { display:flex; align-items:center; gap:10px; background:#17392f; border:1px solid #6fcaa150; border-radius:13px; padding:12px 14px; color:#b2f0d1; font-size:14px; white-space:nowrap; box-shadow:0 12px 35px #080a1733; transform:rotate(-4deg); }
.update-art__bubble b { font-size:21px; }
.update-art__sheet { width:100%; padding:23px 17px; border:1px solid #bc8ad538; border-radius:15px; background:linear-gradient(145deg,#342647,#1b1b32); transform:rotate(4deg); box-shadow:0 18px 32px #0002; }
.update-art__sheet > span { font-size:13px; color:#d8bcde; }
.update-art__sheet > b { display:block; font-size:32px; font-weight:600; line-height:1.2; margin:14px 0 18px; }
.update-art__sheet small { color:#b0a0bd; font-size:12px; }
.update-art__sheet > i { display:block; color:#c9bfd3; font-size:12px; line-height:1.4; font-style:normal; margin-top:9px; }
.update-art__memories { display:grid; gap:12px; width:100%; }
.update-art__memories > span { font-size:14px; line-height:1.45; padding:14px; border:1px solid #c2b2ee24; border-radius:13px; background:#33274a; transform:rotate(-4deg); }
.update-art__memories > span:nth-child(2) { background:#2f2240; transform:rotate(3deg); }
.update-art__memories > b { display:flex; justify-content:space-between; padding:12px; font-size:18px; font-weight:500; color:#d8bada; }
.update-art__memories > b > span { color:#cfcffd; }
.update-art__avatars { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.update-art__avatars img { width:100%; height:auto; }
.update-art__teams { display:grid; gap:9px; width:100%; transform:rotate(2deg); }
.update-art__profile, .update-art__team, .update-art__history { border:1px solid #dba0ff30; border-radius:14px; background:linear-gradient(145deg,#30214b,#211733); box-shadow:0 14px 30px #080a1724; }
.update-art__profile { display:flex; align-items:center; gap:10px; padding:10px 12px; transform:translateX(-8px); }
.update-art__profile img { width:44px; height:44px; object-fit:contain; flex:none; }
.update-art__profile span { min-width:0; }
.update-art__profile small, .update-art__team small { display:block; color:#afa4c3; font-size:10px; line-height:1.3; text-transform:uppercase; letter-spacing:.05em; }
.update-art__profile b, .update-art__team b { display:block; overflow:hidden; color:#fff; font-size:13px; line-height:1.35; text-overflow:ellipsis; white-space:nowrap; }
.update-art__team { padding:13px 14px; border-color:#ffad364f; background:linear-gradient(135deg,#4d2166,#28143f); transform:translateX(5px); }
.update-art__team b { margin:5px 0 10px; font-size:15px; }
.update-art__team span { display:flex; align-items:center; color:#ffc066; font-size:11px; font-weight:600; }
.update-art__team i { width:18px; height:18px; margin-right:-4px; border:2px solid #351b51; border-radius:50%; background:#ff9f2f; }
.update-art__team i:nth-child(2) { background:#cfcffd; }
.update-art__team i:nth-child(3) { margin-right:9px; background:#ff5f45; }
.update-art__history { display:flex; justify-content:space-between; gap:8px; padding:10px 12px; color:#b8accb; font-size:10px; transform:translateX(-3px); }
.update-art__history b { color:#d8c7ee; font-size:10px; white-space:nowrap; }
.update-art__teams--profile { transform:rotate(-2deg); }
.update-art__transfer { display:grid; grid-template-columns:auto 1fr; column-gap:10px; align-items:center; padding:10px 12px; border:1px solid #dba0ff30; border-radius:14px; background:linear-gradient(145deg,#30214b,#211733); box-shadow:0 14px 30px #080a1724; transform:translateX(6px); }
.update-art__transfer > span { grid-row:1 / span 2; color:#ffad36; font-size:31px; line-height:1; }
.update-art__transfer b { color:#fff; font-size:12px; line-height:1.3; }
.update-art__transfer small { color:#afa4c3; font-size:10px; line-height:1.3; }
.updates-page__end { margin:80px 0 10px 174px; text-align:center; }
.updates-page__end > span { display:block; color:#7442c8; font-size:30px; }
.updates-page__end h2 { margin:22px 0 15px; font-size:28px; line-height:1.2; font-weight:600; }
.updates-page__end p { font-size:17px; line-height:1.5; color:#beb4cf; }
.updates-page__end .button { margin:25px 0; }
.updates-page__end > .updates-back { display:block; }
.updates-page a:hover, .updates-all:hover { color:#fff; }
.updates-page a:focus-visible, .updates-widget a:focus-visible { outline:2px solid #cfcffd; outline-offset:5px; border-radius:5px; }
@media (max-width:1199px) {
  .updates-page { max-width:990px; }
  .updates-page__intro { padding-left:136px; }
  .update-entry { grid-template-columns:110px minmax(0,1fr); gap:26px; }
  .updates-timeline::before { left:109px; }
  .update-entry__layout--illustrated { grid-template-columns:minmax(0,1fr) 170px; gap:20px; }
  .update-entry__card { padding:26px; }
  .update-entry__copy h2 { font-size:27px; }
  .update-art__orbit img { width:64px; height:64px; }
  .update-art__orbit img:nth-child(2) { width:76px; height:76px; }
  .updates-page__end { margin-left:136px; }
  .update-preview { padding:22px; }
  .update-preview h3 { font-size:21px; }
}
@media (max-width:767px) {
  .home { --updates-section-gap:50px; }
  .updates-widget > .container { padding:0 20px; }
  .updates-widget__heading { align-items:flex-start; gap:12px; }
  .updates-widget__heading h2 { font-size:30px; }
  .updates-widget .updates-eyebrow { font-size:11px; letter-spacing:0; }
  .updates-all { font-size:13px; gap:6px; }
  .updates-all > span { font-size:18px; }
  .updates-widget__grid { grid-template-columns:1fr; gap:12px; }
  .update-preview { padding:20px; border-radius:18px; }
  .update-preview h3 { margin-top:15px; font-size:23px; }
  .update-preview p { margin-bottom:18px; }
  .updates-page { padding:0 20px 35px; }
  .updates-page__intro { padding:28px 0 38px; }
  .updates-page__intro > .updates-back { margin-bottom:30px; }
  .updates-page__intro h1 { font-size:42px; line-height:1.1; margin:16px 0 20px; }
  .updates-page__lead { font-size:17px; }
  .updates-page__lead br { display:none; }
  .updates-page__jump { margin-top:23px; }
  .updates-timeline::before { display:none; }
  .update-entry { grid-template-columns:1fr; gap:12px; margin-bottom:30px; scroll-margin-top:16px; }
  .update-entry__date { padding:0; font-size:13px; color:#c4b8d4; }
  .update-entry__date time > span { display:inline; margin-left:5px; }
  .update-entry__dot { display:none; }
  .update-entry__card { padding:22px; border-radius:18px; }
  .update-entry__layout--illustrated { grid-template-columns:1fr; gap:24px; }
  .update-entry__meta { margin-bottom:18px; gap:10px; }
  .update-entry__copy h2 { font-size:28px; }
  .update-entry__summary { font-size:17px; }
  .update-entry__detail { font-size:16px; }
  .update-entry__image { max-width:210px; max-height:170px; justify-self:center; }
  .update-art { width:220px; justify-self:center; min-height:140px; }
  .update-art__orbit img { width:72px; height:72px; }
  .update-art__orbit img:nth-child(2) { width:88px; height:88px; }
  .update-art__avatars { max-width:200px; }
  .update-art__sheet { max-width:190px; }
  .update-art__teams { max-width:220px; }
  .updates-page__end { margin:48px 0 0; }
  .updates-page__end h2 { font-size:27px; }
}
@media (max-width:374px) {
  .updates-page__intro h1 { font-size:35px; }
  .updates-widget__heading { flex-direction:column; }
  .update-entry__card { padding:18px; }
}
@media (prefers-reduced-motion:reduce) { .update-preview { transition:none; } }
