@view-transition{navigation:auto}
::view-transition{pointer-events:none}
.header{view-transition-name:site-header}
::view-transition-old(site-header),::view-transition-new(site-header){animation:none}
::view-transition-old(root){animation:kon-page-out .16s ease both}
::view-transition-new(root){animation:kon-page-in .22s cubic-bezier(.2,.7,.2,1) both}
@keyframes kon-page-out{to{opacity:0;transform:translateY(-4px)}}
@keyframes kon-page-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@keyframes kon-arrive{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@keyframes kon-progress{from{transform:translateX(-95%)}to{transform:translateX(160%)}}
@keyframes kon-skeleton{to{background-position:-200% 0}}
html::before{content:'';position:fixed;z-index:1000;top:0;left:0;width:45%;height:2px;background:var(--pick);opacity:0;pointer-events:none;transform:translateX(-100%)}
html.navigating::before{opacity:1;animation:kon-progress 1.2s ease-in-out infinite}
.header a,button,.button,input,textarea,select{transition:background-color .18s,color .18s,border-color .18s,box-shadow .18s,opacity .18s,transform .18s}
button:active:not(:disabled),.button:active{transform:scale(.98)}
input:focus,textarea:focus{border-color:var(--navy);box-shadow:0 0 0 3px #2d4a7a10}
.header nav a::after{transition:opacity .18s,transform .18s}
.member,.explore-grid>a,.team-member,.player-entry-grid>a,.guild-comment-entry,.photo-tile,.player-panel{transition:transform .22s cubic-bezier(.2,.7,.2,1),box-shadow .22s,border-color .22s,background-color .22s}
@media(hover:hover){.member:hover,.explore-grid>a:hover,.team-member:hover,.player-entry-grid>a:hover,.guild-comment-entry:hover{transform:translateY(-3px);box-shadow:0 8px 24px #22252b08}.photo-tile:hover img{transform:scale(1.025)}}
.photo-tile img,.story-photo img{transition:transform .4s ease,opacity .25s}
.member-grid>.member,.photo-grid>.photo-tile,.team-roster>.team-member,.comment-card,.targets>article{animation:kon-arrive .3s cubic-bezier(.2,.7,.2,1) both}
.member-grid>:nth-child(2),.photo-grid>:nth-child(2),.team-roster>:nth-child(2){animation-delay:25ms}
.member-grid>:nth-child(3),.photo-grid>:nth-child(3),.team-roster>:nth-child(3){animation-delay:50ms}
.member-grid>:nth-child(4),.photo-grid>:nth-child(4),.team-roster>:nth-child(4){animation-delay:75ms}
.member-grid>:nth-child(n+13),.photo-grid>:nth-child(n+13),.comment-card:nth-child(n+8){animation:none}
dialog[open]{animation:kon-arrive .2s ease both}dialog[open]::backdrop{animation:kon-backdrop .18s ease both}
@keyframes kon-backdrop{from{opacity:0}to{opacity:1}}
.auth-card,.player-directory,.comment-heading{animation:kon-arrive .28s ease both}
.page-loading{animation:kon-arrive .2s ease both}.page-loading .loading-mark{font-size:20px}
.page-skeleton{max-width:1120px;margin:44px auto;padding:0 var(--gutter);min-height:65vh;animation:kon-arrive .2s ease both}
.skeleton-line,.skeleton-panel{background:linear-gradient(100deg,var(--soft) 25%,#f9fafb 45%,var(--soft) 65%);background-size:200% 100%;animation:kon-skeleton 1.5s linear infinite;border-radius:6px}
.skeleton-line{height:15px;width:55%;margin:16px 0}.skeleton-line.title{height:40px;width:42%;margin-bottom:25px}.skeleton-panels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:38px}.skeleton-panel{height:220px}.cache-note{color:var(--muted);font-size:12px}.sync-dot.cached{background:var(--warn)}
.gallery-toolbar[aria-busy=true]{opacity:.75}.comment-feed[aria-busy=true] .comment-feed-head button{opacity:.5}
@media(max-width:700px){.skeleton-panels{grid-template-columns:1fr 1fr;gap:12px}.skeleton-panels>:last-child{display:none}.skeleton-line.title{width:70%}.skeleton-panel{height:180px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}.navigating::before{display:none}}
