.queue-filters{display:flex;
flex-wrap:wrap;
gap:var(--space-3);
margin-bottom:var(--space-5);
align-items:center;}
.queue-toolbar{display:flex;
align-items:center;
padding:var(--space-2) var(--space-1);
margin-bottom:var(--space-2);}
.queue-check-label{display:flex;
align-items:center;
gap:var(--space-2);
font-size:var(--font-sm);
font-weight:500;
color:var(--text-muted);
cursor:pointer;
user-select:none;}
.queue-check-label input[type="checkbox"]{width:16px;
height:16px;
accent-color:var(--brand-primary);
cursor:pointer;}
.queue-row-check{display:flex;
align-items:center;
justify-content:center;
flex-shrink:0;
cursor:pointer;}
.queue-row-check input[type="checkbox"]{width:16px;
height:16px;
accent-color:var(--brand-primary);
cursor:pointer;}
.queue-row-badge{flex-shrink:0;
font-size:var(--font-2xs);
font-weight:600;
text-transform:uppercase;
letter-spacing:0.04em;
padding:1px 8px;
border-radius:var(--radius-pill);
background:var(--state-warning-bg);
color:var(--state-warning);
border:1px solid var(--state-warning-border);
line-height:1.6;}
.queue-card-grid{display:grid;
grid-template-columns:repeat(auto-fill, minmax(340px, 1fr));
gap:var(--space-4);}
.queue-card{display:flex;
flex-direction:column;
gap:var(--space-3);
padding:var(--space-5);
border:1px solid var(--card-border);
border-radius:var(--radius-lg);
background:var(--card-bg);
box-shadow:var(--card-shadow);
transition:box-shadow 200ms ease, border-color 200ms ease, transform 200ms ease;
animation:tm-fade-in-up 250ms ease both;
position:relative;}
.queue-card:hover{box-shadow:0 4px 20px oklch(0 0 0 / 0.12);
border-color:var(--brand-border);
transform:translateY(-1px);}
.queue-card--selected,
.queue-card--selected:hover{border-color:var(--brand-primary);
background:var(--brand-hover);
box-shadow:0 0 0 1px var(--brand-primary), var(--card-shadow);}
.queue-card-head{display:flex;
align-items:center;
justify-content:space-between;
gap:var(--space-2);}
.queue-card-head-left{display:flex;
align-items:center;
gap:var(--space-2);
min-width:0;}
.queue-card-dot{width:10px;
height:10px;
border-radius:50%;
flex-shrink:0;}
.queue-card-title{font-size:var(--font-base);
font-weight:600;
color:var(--text);
white-space:nowrap;
overflow:hidden;
text-overflow:ellipsis;}
.queue-card-details{display:flex;
flex-wrap:wrap;
gap:var(--space-2) var(--space-4);
padding:var(--space-3) 0;
border-top:1px solid var(--border-subtle);
border-bottom:1px solid var(--border-subtle);}
.queue-card-detail{display:inline-flex;
align-items:center;
gap:6px;
font-size:var(--font-sm);
color:var(--text-muted);
line-height:1.4;}
.queue-card-detail svg{flex-shrink:0;
opacity:0.6;}
.queue-card-detail span{white-space:nowrap;}
.queue-card-actions{display:flex;
gap:var(--space-2);
margin-top:auto;}
.queue-btn{display:inline-flex;
align-items:center;
justify-content:center;
gap:var(--space-2);
flex:1;
padding:0.55rem 1rem;
font-size:var(--font-sm);
font-weight:600;
border-radius:var(--radius-md);
border:1px solid transparent;
cursor:pointer;
transition:all 200ms ease;
white-space:nowrap;
min-height:44px;}
.queue-btn:focus-visible{outline:2px solid var(--brand-primary);
outline-offset:2px;}
.queue-btn:disabled{opacity:0.45;
cursor:not-allowed;}
.queue-btn-approve{background:var(--state-success-bg);
color:var(--state-success);
border-color:var(--state-success-border);}
.queue-btn-approve:hover:not(:disabled){background:var(--state-success);
color:var(--brand-text);
box-shadow:0 2px 12px oklch(0.7 0.15 140 / 0.25);
transform:scale(1.02);}
.queue-btn-approve:active:not(:disabled){transform:scale(0.98);}
.queue-btn-reject{background:var(--state-error-bg);
color:var(--state-error);
border-color:var(--state-error-border);}
.queue-btn-reject:hover:not(:disabled){background:var(--state-error);
color:var(--brand-text);
box-shadow:0 2px 12px oklch(0.7 0.15 20 / 0.25);
transform:scale(1.02);}
.queue-btn-reject:active:not(:disabled){transform:scale(0.98);}
.queue-float-bar{position:fixed;
bottom:var(--space-6);
left:50%;
transform:translateX(-50%);
display:flex;
align-items:center;
gap:var(--space-3);
padding:var(--space-3) var(--space-5);
background:var(--popup-glass-bg);
backdrop-filter:blur(var(--popup-glass-blur)) saturate(150%);
-webkit-backdrop-filter:blur(var(--popup-glass-blur)) saturate(150%);
border:1px solid var(--popup-glass-border);
border-radius:var(--radius-pill);
box-shadow:var(--popup-glass-shadow);
z-index:var(--z-sticky);
animation:queue-float-in 250ms ease-out both;}
@keyframes queue-float-in{from{opacity:0;
transform:translateX(-50%) translateY(12px) scale(0.96);}
to{opacity:1;
transform:translateX(-50%) translateY(0) scale(1);}}
.queue-float-select{display:flex;
align-items:center;
gap:var(--space-2);
font-size:var(--font-sm);
font-weight:600;
color:var(--text);
cursor:pointer;
user-select:none;
white-space:nowrap;}
.queue-float-select input[type="checkbox"]{width:16px;
height:16px;
accent-color:var(--brand-primary);
cursor:pointer;}
.queue-float-divider{width:1px;
height:20px;
background:var(--border-subtle);
flex-shrink:0;}
.queue-float-btn{display:inline-flex;
align-items:center;
gap:var(--space-2);
padding:0.4rem 0.9rem;
font-size:var(--font-sm);
font-weight:600;
border-radius:var(--radius-pill);
border:1px solid transparent;
cursor:pointer;
transition:all 200ms ease;
white-space:nowrap;}
.queue-float-btn:focus-visible{outline:2px solid var(--brand-primary);
outline-offset:2px;}
.queue-float-btn:disabled{opacity:0.5;
cursor:not-allowed;}
.queue-float-approve{background:var(--state-success-bg);
color:var(--state-success);
border-color:var(--state-success-border);}
.queue-float-approve:hover:not(:disabled){background:var(--state-success);
color:var(--brand-text);
box-shadow:0 2px 12px oklch(0.7 0.15 140 / 0.3);}
.queue-float-approve:active:not(:disabled){transform:scale(0.97);}
.queue-float-reject{background:var(--state-error-bg);
color:var(--state-error);
border-color:var(--state-error-border);}
.queue-float-reject:hover:not(:disabled){background:var(--state-error);
color:var(--brand-text);
box-shadow:0 2px 12px oklch(0.7 0.15 20 / 0.3);}
.queue-float-reject:active:not(:disabled){transform:scale(0.97);}
.queue-skeleton-list{display:flex;
flex-direction:column;
gap:2px;
border:1px solid var(--card-border);
border-radius:var(--radius-md);
overflow:hidden;}
.queue-skeleton-row{height:4rem;
border-radius:0;}
@media (max-width:640px){.queue-card-grid{grid-template-columns:1fr;
gap:var(--space-3);}
.queue-card{padding:var(--space-4);}
.queue-card-details{flex-direction:column;
gap:var(--space-2);}
.queue-card-actions{flex-direction:column;}
.queue-btn{justify-content:center;}
.queue-float-bar{left:var(--space-3);
right:var(--space-3);
transform:none;
border-radius:var(--radius-md);
justify-content:center;}
@keyframes queue-float-in{from{opacity:0;
transform:translateY(12px) scale(0.96);}
to{opacity:1;
transform:translateY(0) scale(1);}}}
@media (prefers-reduced-motion:reduce){.queue-card{animation:none;}}