/* TODO: Review box-shadow values - consider using design system shadow variables (--shadow-xs, --shadow-sm, etc.) */
/**
 * Player-Side Initiative Display Styles
 * Visual display of initiative order for players
 */

.player-initiative-display {
    background: rgba(26, 26, 46, 0.8);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    padding: var(--spacing-md);
    margin: var(--spacing-md) 0;

.initiative-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: var(--spacing-sm);

.initiative-header h4 {
    font-family: var(--font-heading);
    font-size: var(--font-size-md);
    color: var(--color-text-primary);
    margin: 0;
    text-transform: uppercase;
    letter-spacing: var(--letter-spacing-normal);

.round-badge {
    background: var(--color-info);
    color: white;
    padding: var(--spacing-xs) var(--spacing-sm);
    border-radius: var(--radius-sm);
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-bold);

.initiative-list {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-xs);

.initiative-item {
    display: flex;
    align-items: center;
    gap: var(--spacing-sm);
    padding: var(--spacing-sm);
    background: rgba(91, 192, 222, 0.05);
    border: 1px solid rgba(91, 192, 222, 0.2);
    border-radius: var(--radius-sm);
    transition: all var(--transition-base);

.initiative-item.current {
    background: rgba(46, 204, 113, 0.15);
    border: 2px solid var(--color-success);
    box-shadow: 0 0 10px rgba(46, 204, 113, 0.3);

.initiative-item.you {
    border-left: 0px solid var(--color-info);

.initiative-item.current.you {
    border-left: 0px solid var(--color-success);
    background: rgba(46, 204, 113, 0.2);

.initiative-position {
    font-weight: var(--font-weight-bold);
    color: var(--color-info);
    min-width: 2em;
    text-align: center;

.initiative-name {
    flex: 1;
    color: var(--color-text-primary);
    font-size: var(--font-size-base);

.initiative-item.current .initiative-name {
    font-weight: var(--font-weight-bold);
    color: var(--color-success);

.current-badge {
    background: var(--color-success);
    color: white;
    padding: 2px var(--spacing-xs);
    border-radius: var(--radius-sm);
    font-size: var(--font-size-xs);
    font-weight: var(--font-weight-bold);
    text-transform: uppercase;

.your-turn-notice {
    margin-top: var(--spacing-sm);
    padding: var(--spacing-sm);
    background: linear-gradient(135deg, var(--color-success), #27ae60);
    color: white;
    border-radius: var(--radius-sm);
    text-align: center;
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-lg);
    animation: turnPulse 2s ease-in-out infinite;

@keyframes turnPulse {
    0%, 100% {
        box-shadow: 0 0 10px rgba(46, 204, 113, 0.5);

    50% {
        box-shadow: 0 0 20px rgba(46, 204, 113, 0.8);

.your-turn-indicator {
    position: fixed;
    top: var(--spacing-lg);
    right: var(--spacing-lg);
    background: linear-gradient(135deg, var(--color-success), #27ae60);
    color: white;
    padding: var(--spacing-md) var(--spacing-lg);
    border-radius: var(--radius-md);
    box-shadow: 0 4px 20px rgba(46, 204, 113, 0.5);
    z-index: 10000;
    display: flex;
    align-items: center;
    gap: var(--spacing-sm);
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-lg);
    animation: turnIndicatorPulse 1.5s ease-in-out infinite;
    border: 2px solid #fff;

.your-turn-indicator.hidden {
    display: none;

.turn-icon {
    font-size: var(--font-size-xl);
    animation: turnIconShake 0.5s ease-in-out infinite;

.turn-text {
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);

@keyframes turnIndicatorPulse {
    0%, 100% {
        box-shadow: 0 4px 20px rgba(46, 204, 113, 0.5);
        transform: scale(1);

    50% {
        box-shadow: 0 6px 30px rgba(46, 204, 113, 0.8);
        transform: scale(1.02);

@keyframes turnIconShake {
    0%, 100% {
        transform: rotate(0deg);

    25% {
        transform: rotate(-5deg);

    75% {
        transform: rotate(5deg);

/* Accessibility */
@media (prefers-reduced-motion: reduce) {
    .your-turn-notice,
    .your-turn-indicator,
    .turn-icon {
        animation: none;

}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}