/* One motion language. Short movement, long deceleration, no delayed actions. */
:root{--ws-ease:cubic-bezier(.22,1,.36,1);--ws-duration:360ms}
/* Remove competing legacy page/child animations before orchestrating transitions. */
body main>.section,body main>.section.active,body .section.active>.card,body .section.active>.home-panels,body .section.active>.grid,body .section.active>.row{animation:none!important;transition:none!important;opacity:1;transform:none}
body .modal.open>.share-dialog,body .detail-overlay.open>.detail-panel,body .case-overlay.open>.case-window{animation:none!important}
.ws-motion-snapshot{position:fixed;z-index:45;pointer-events:none!important;overflow:hidden;contain:paint;will-change:opacity,transform;background:var(--bg)}
.ws-motion-snapshot *{pointer-events:none!important;animation:none!important;transition:none!important}
body #nav,body .profile-tabs,body .trader-tabs{position:relative;isolation:isolate}
.ws-nav-indicator{position:absolute;left:0;top:0;z-index:-1;pointer-events:none;border-radius:11px;background:linear-gradient(125deg,var(--accentSoft),color-mix(in srgb,var(--accent) 7%,transparent));border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));box-shadow:inset 0 1px 0 #ffffff0b,0 3px 12px #0000000c;transition:transform 420ms var(--ws-ease),width 420ms var(--ws-ease),height 420ms var(--ws-ease),opacity 160ms;will-change:transform}
body #nav[data-ws-indicator] button.active,body .profile-tabs[data-ws-indicator] button[aria-selected=true],body .trader-tabs[data-ws-indicator] button[aria-selected=true]{background:transparent!important;border-color:transparent!important;box-shadow:none!important}
body #nav[data-ws-indicator] button{transition:color 180ms,background-color 180ms,transform 180ms var(--ws-ease)}
body :is(button,.btn,summary){transition:transform 240ms var(--ws-ease),background-color 240ms,border-color 240ms,color 180ms,box-shadow 240ms}
body :is(button,.btn):not(:disabled):active{transform:scale(.975)}
body details>summary .fold-chevron,body details>summary .ws-fold-arrow{transition:transform 320ms var(--ws-ease)}
body details[open]>summary :is(.fold-chevron,.ws-fold-arrow){transform:rotate(180deg)}
body :is(dialog,.modal,.case-overlay,.detail-overlay,.gm-image-zoom,.v12-lightbox){transition:opacity 200ms var(--ws-ease),transform 260ms var(--ws-ease),display 260ms allow-discrete,overlay 260ms allow-discrete}
body :is(dialog:not([open]),.modal:not(.open),.detail-overlay:not(.open),.case-overlay:not(.open)){opacity:0;transform:translateY(7px) scale(.985);pointer-events:none}
body :is(dialog[open],.modal.open,.detail-overlay.open,.case-overlay.open){opacity:1;transform:none}
@starting-style{body :is(dialog[open],.modal.open,.detail-overlay.open,.case-overlay.open){opacity:0;transform:translateY(12px) scale(.985)}}
body dialog::backdrop{transition:opacity 220ms,display 260ms allow-discrete,overlay 260ms allow-discrete;opacity:1}
@starting-style{body dialog[open]::backdrop{opacity:0}}
body dialog:not([open])::backdrop{opacity:0}
body .progress>div,body #xpBar{transition:width 600ms var(--ws-ease),background-color 250ms}
@media(hover:hover){body .card,body .v12-panel{transition:border-color 240ms,box-shadow 300ms}body .card:hover{border-color:color-mix(in srgb,var(--accent) 20%,var(--line))}}
@media(prefers-reduced-motion:reduce){body *,body *::before,body *::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.ws-motion-snapshot{display:none!important}}
@media(max-width:900px){
 body .shell>aside{min-width:0!important;max-width:100vw!important;box-sizing:border-box!important;overflow:hidden!important}
 body .shell>aside #nav{width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important;overflow-x:auto!important}
}
