/**
 * AppointmentDesk — Queue Dark Theme
 * Dark backgrounds, light text, gradient accents.
 * Covers both Kiosk (customer tablet) and TV Display.
 */

/* ============================================
   Page backgrounds (standalone templates)
   ============================================ */
.adesk-queue-page {
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
}

.adesk-display-page {
    background: #0f0f1c;
    color: #e0e0e0;
}

/* ============================================
   KIOSK — Dark theme colors
   ============================================ */
.adesk-kiosk-wrapper {
    color: #e2e8f0;
}

.adesk-kiosk-header h1 {
    background: linear-gradient(135deg, #818cf8, #c084fc, #f472b6);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.adesk-kiosk-subtitle {
    color: #94a3b8;
}

.adesk-kiosk-stats {
    color: #94a3b8;
}

.adesk-kiosk-stats strong {
    color: #e2e8f0;
}

.adesk-kiosk-pull-btn {
    background: linear-gradient(135deg, #6366f1, #8b5cf6);
    color: #fff;
    box-shadow: 0 10px 40px rgba(99, 102, 241, 0.3);
}

.adesk-kiosk-pull-btn:hover,
.adesk-kiosk-pull-btn:active {
    box-shadow: 0 15px 50px rgba(99, 102, 241, 0.5);
}

.adesk-kiosk-ticket-number {
    background: linear-gradient(135deg, #818cf8, #c084fc);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.adesk-kiosk-ahead {
    color: #94a3b8;
}

.adesk-kiosk-ahead-count {
    color: #f59e0b;
}

.adesk-kiosk-ahead-next {
    color: #10b981;
}

.adesk-kiosk-wait-estimate {
    color: #64748b;
}

.adesk-kiosk-ticket-time {
    color: #475569;
}

.adesk-kiosk-now-serving {
    border-top-color: #334155;
}

.adesk-kiosk-now-serving h3 {
    color: #64748b;
}

.adesk-kiosk-serving-number {
    color: #818cf8;
}

.adesk-kiosk-serving-arrow {
    color: #475569;
}

.adesk-kiosk-serving-counter {
    color: #e2e8f0;
}

.adesk-kiosk-name-input {
    border-color: rgba(255,255,255,0.2);
    background: rgba(255,255,255,0.1);
    color: #fff;
}

.adesk-kiosk-name-input::placeholder {
    color: rgba(255,255,255,0.5);
}

.adesk-kiosk-name-input:focus {
    border-color: rgba(255,255,255,0.5);
}

.adesk-kiosk-qr img {
    border-color: rgba(255,255,255,0.3);
    background: #fff;
}

.adesk-kiosk-qr-hint {
    color: rgba(255,255,255,0.6);
}

.adesk-kiosk-called {
    background: linear-gradient(135deg, #059669, #10b981);
}

.adesk-kiosk-called h2 {
    color: #fff;
}

.adesk-kiosk-called-counter {
    color: rgba(255,255,255,0.9);
}

.adesk-kiosk-timeout-info {
    color: rgba(255,255,255,0.5);
}

.adesk-kiosk-new-btn {
    background: rgba(255,255,255,0.15);
    color: rgba(255,255,255,0.7);
    border-color: rgba(255,255,255,0.25);
}

.adesk-kiosk-new-btn:hover {
    background: rgba(255,255,255,0.25);
    color: #fff;
}

/* ============================================
   TV DISPLAY — Dark theme colors
   ============================================ */
.adesk-queue-display {
    background: #1a1a2e;
}

.adesk-display-header {
    background: rgba(0,0,0,0.3);
}

.adesk-display-title {
    color: #fff;
}

.adesk-display-header-stats {
    color: rgba(255,255,255,0.4);
}

.adesk-display-clock {
    color: rgba(255,255,255,0.7);
}

.adesk-display-now-label {
    color: rgba(255,255,255,0.6);
}

.adesk-display-now-number {
    color: #4ade80;
    text-shadow: 0 0 40px rgba(74, 222, 128, 0.3);
}

.adesk-display-now-number.adesk-display-number-idle {
    color: rgba(255,255,255,0.2);
    text-shadow: none;
}

.adesk-display-now-customer {
    color: rgba(255,255,255,0.7);
}

.adesk-display-also-number {
    color: rgba(255,255,255,0.5);
    border-color: rgba(255,255,255,0.15);
}

.adesk-display-counter {
    background: rgba(255,255,255,0.05);
    border-color: rgba(255,255,255,0.1);
}

.adesk-display-counter-name {
    color: #fff;
}

.adesk-display-counter-number {
    color: #4ade80;
    text-shadow: 0 0 20px rgba(74, 222, 128, 0.3);
}

.adesk-display-counter-number.adesk-display-number-idle {
    color: rgba(255,255,255,0.15);
    text-shadow: none;
}

.adesk-display-counter-customer {
    color: rgba(255,255,255,0.6);
}

.adesk-display-counter-status {
    color: rgba(255,255,255,0.4);
}

.adesk-display-bottom {
    background: rgba(0,0,0,0.4);
    border-top-color: rgba(255,255,255,0.1);
}

.adesk-display-next-label {
    color: rgba(255,255,255,0.5);
}

.adesk-display-next-number {
    color: rgba(255,255,255,0.7);
    background: rgba(255,255,255,0.08);
}

.adesk-display-next-more {
    color: rgba(255,255,255,0.4);
}

.adesk-display-next-empty {
    color: rgba(255,255,255,0.3);
}

.adesk-display-stats {
    color: rgba(255,255,255,0.4);
}

/* Staff overview (single mode idle) */
.adesk-display-staff-row {
    border-color: rgba(255,255,255,0.1);
    background: rgba(255,255,255,0.05);
}

.adesk-display-staff-name {
    color: rgba(255,255,255,0.8);
}

.adesk-display-staff-num-idle {
    color: rgba(255,255,255,0.3);
}

.adesk-display-staff-num-active {
    color: #4ade80;
    text-shadow: 0 0 20px rgba(74, 222, 128, 0.3);
}

.adesk-display-staff-status {
    color: rgba(255,255,255,0.4);
}

/* ============================================
   STAFF COUNTER — Dark theme
   ============================================ */
.adesk-counter-page {
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
    color: #e2e8f0;
}

.adesk-counter-header {
    border-bottom-color: #334155;
}

.adesk-counter-ticket-number {
    background: linear-gradient(135deg, #818cf8, #c084fc);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.adesk-counter-footer {
    border-top-color: #334155;
    color: #94a3b8;
}

.adesk-counter-next-num {
    background: rgba(255,255,255,0.1);
    color: #e2e8f0;
}
