:root{--control-selected-background:linear-gradient(120deg,#88dcff,#62a7fa)}
.category-tabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;max-width:100%;padding:6px;overscroll-behavior-x:contain;background:linear-gradient(140deg,#ffffffed,#f7fbffd9);border:1px solid var(--border);box-shadow:var(--shadow-card)}
.category-tabs::-webkit-scrollbar{display:none}
.category-tabs .tab{flex:1 0 auto;min-height:44px;white-space:nowrap;padding-inline:12px;text-align:center}
.category-tabs .tab[aria-selected=true],.header .login-button[data-authenticated=true]{background:var(--control-selected-background);color:#fff;text-shadow:0 1px 1px #2a79c844;box-shadow:inset 0 1px 1px #d1f4ff,0 1px 3px #72afe32b}
.header .brand{flex-shrink:0}
.header .login-button{flex:0 1 auto;min-width:0;max-width:min(60%,20rem)}
.header .login-label{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.achievement-art{width:64px;height:64px;flex:0 0 64px;object-fit:contain;border-radius:14px}
.achievement-text{min-width:0;overflow-wrap:anywhere}
.achievement-progress-row{display:flex;align-items:center;gap:.5rem;margin-top:.5rem;min-width:0;width:100%;max-width:none}
.achievement-text .achievement-progress-row .progress{flex:1;min-width:0;max-width:none;margin-top:0}
.achievement-progress-count{flex-shrink:0;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.72rem;font-weight:650;line-height:1.4;color:var(--muted)}
.avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit;display:block}
.sync-note{font-size:.78rem;line-height:1.7;color:var(--text-muted,#52738e);overflow-wrap:anywhere;margin-block:16px}
dialog.account-dialog{width:210px;max-width:calc(100vw - 40px)}
dialog.account-dialog .dialog-top,dialog.account-dialog .dialog-body{display:none}
dialog.account-dialog .dialog-actions{margin:0;display:block}
dialog.account-dialog .dialog-actions .button{width:100%;min-height:48px}
@media(max-width:380px){.achievement-art{width:52px;height:52px;flex-basis:52px}.category-tabs .tab{padding-inline:10px}}
