.container { padding: 10px; max-width: 1000px; margin: 0 auto; } .header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; flex-wrap: wrap; gap: 10px; } .title { font-size: 1.5em; font-weight: bold; } .alertThresholdSetting { display: flex; align-items: center; gap: 8px; } .alertThresholdSetting label { display: flex; align-items: center; gap: 8px; font-size: 13px; } .alertThresholdInput { width: 50px; padding: 4px; border: var(--mod-queue-table-border); background: var(--mod-queue-header-background-color); color: var(--body-font-color); } .tableWrapper { border: var(--mod-queue-table-border); } .tableHeader { display: flex; padding: 8px; border-bottom: var(--mod-queue-header-border-bottom); background: var(--mod-queue-header-background-color); font-weight: bold; font-size: 13px; } .boardHeader { width: 50px; flex-shrink: 0; } .excerptHeader { flex-grow: 1; } .timeHeader { width: 80px; text-align: right; flex-shrink: 0; } .actionsHeader { width: 150px; flex-shrink: 0; text-align: right; } .empty { padding: 20px; text-align: center; color: var(--mod-queue-time-color); } /* ModQueueRow styles */ .row { display: flex; padding: 4px 8px; border-top: none; border-left: none; border-right: none; border-bottom: var(--mod-queue-row-border-bottom); align-items: center; gap: 8px; background-color: var(--mod-queue-row-background-color); color: var(--body-font-color); font-size: 13px; } .row:hover { background-color: var(--mod-queue-row-hover-background-color); } .board { width: 50px; flex-shrink: 0; font-weight: bold; } .excerpt { flex-grow: 1; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; } .excerpt a { text-decoration: var(--post-link-text-decoration); color: var(--post-link-text-color); } .excerpt a:hover { text-decoration: var(--post-link-text-decoration-hover); color: var(--post-link-text-color-hover); } .time { width: 80px; flex-shrink: 0; text-align: right; color: var(--mod-queue-time-color); } .time.alert { color: var(--mod-queue-alert-color); font-weight: bold; animation: blink 2s infinite; } @keyframes blink { 0% { opacity: 1; } 50% { opacity: 0.5; } 100% { opacity: 1; } } .actions { width: 150px; flex-shrink: 0; display: flex; gap: 4px; justify-content: flex-end; align-items: center; } /* Desktop: buttons styled as text links (same as board buttons) */ @media (min-width: 640px) { .actions { display: block; text-align: right; } .button { all: unset; cursor: pointer; text-transform: capitalize; color: var(--button-desktop-text-color); text-decoration: var(--button-text-decoration); display: inline; font-family: inherit; } .button:hover { color: var(--button-desktop-text-color-hover); cursor: pointer; } .button:disabled { opacity: 0.5; cursor: not-allowed; } } /* Status indicators (spans only) - bold, green/red, no underline */ span.approve { color: green; font-weight: 700; text-decoration: none; } span.approve:hover { color: green; } span.reject { color: red; font-weight: 700; text-decoration: none; } span.reject:hover { color: red; } /* ModQueueBoardFilter styles */ .filterContainer { margin-bottom: 10px; display: flex; align-items: center; gap: 8px; } .filterSelect { padding: 4px; border: var(--mod-queue-table-border); background: var(--mod-queue-header-background-color); color: var(--body-font-color); } /* ModQueueButton styles */ .modQueueButtonCount { font-weight: bold; } /* Number blinking, changing color to red */ .modQueueButtonCountAlert { animation: blinkColor 2s infinite; } @keyframes blinkColor { 0% { color: inherit; } 50% { color: var(--mod-queue-alert-color); } 100% { color: inherit; } } /* Mobile Layout */ @media (max-width: 600px) { .tableHeader { display: none; } .row { flex-wrap: wrap; padding: 8px; } .board { width: auto; margin-right: 8px; } .time { margin-left: auto; width: auto; } .excerpt { width: 100%; margin: 4px 0; white-space: normal; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; } .actions { width: 100%; justify-content: flex-start; } .button { flex: 1; text-align: center; padding: 8px; border: var(--button-border-mobile); background: var(--button-background-color-mobile); color: var(--button-text-color-mobile); text-decoration: none; } .button:hover { background: var(--button-background-color-mobile); } .button:disabled { opacity: 0.5; cursor: not-allowed; } .header { flex-direction: column; align-items: flex-start; } }