/* ===========================
   Color Theme (High Contrast)
   =========================== */

.theme-color {
    background-color: #000;
    color: #fff;
}

.theme-color .header {
    background-color: #000;
    color: #ffeb3b; /* Bright yellow for high contrast */
    border: 2px solid #ffeb3b;
}

.theme-color .menu-item {
    background-color: #111;
    border: 2px solid #fff;
}

.theme-color .menu-item:hover, .theme-color .menu-item:focus {
    box-shadow: 0 0 10px #ffeb3b;
    outline-color: #ffeb3b;
}

.theme-color .menu-item h3,
.theme-color .menu-item .price {
    color: #fff;
}

.theme-color .menu-item p {
    color: #ccc;
}

.theme-color .section-title {
    color: #fff;
    border-bottom-color: #fff;
}

/* High-contrast Dialog */
.theme-color .dialog-box {
    background: #1a1a1a;
    color: #fff;
    border: 2px solid #ffeb3b;
    box-shadow: 0 5px 20px rgba(255, 235, 59, 0.25);
}

.theme-color .dialog-title {
    color: #ffc107;
}

.theme-color .dialog-message {
    color: #eee;
}

.theme-color .dialog-actions button.btn-primary {
    background-color: #ffeb3b;
    color: #000;
    border: 1px solid #ffeb3b;
}

.theme-color .dialog-actions button.btn-secondary {
    background-color: #555;
    color: #fff;
    border: 1px solid #888;
}

/* 상세메뉴(Modal.js) 고대비 */
/* High-contrast Receipt */
.theme-color .receipt-paper {
    background-color: #111;
    color: #fff;
    border-color: #ffeb3b;
}
.theme-color .receipt-header,
.theme-color .receipt-body,
.theme-color .receipt-footer {
    border-color: #aaa;
}
.theme-color .receipt-item-header {
    border-bottom-color: #fff;
}
.theme-color #receiptPosBill {
    border-top-color: #fff;
}

/* High-contrast Menu Detail Modal */
.theme-color .modal-content {
    background-color: #1a1a1a;
    color: #fff;
    border: 2px solid #ffeb3b;
}

.theme-color .modal-content h2 {
    color: #ffeb3b;
}

.theme-color .modal-content p {
    color: #eee;
}

.theme-color .modal-content .price-tag {
    background-color: #ffeb3b;
    color: #000;
    font-weight: bold;
}

/* Overriding common button styles for high contrast */
.theme-color .result-modal-actions .modal-action-btn {
    background-color: #555;
    color: #fff;
    border-color: #888;
}

/* High-contrast Cart (Bottom Sheet) */
.theme-color .bottom-sheet {
    background-color: #1a1a1a;
    color: #fff;
    border-top: 2px solid #ffeb3b;
    box-shadow: 0 -2px 10px rgba(255, 235, 59, 0.2);
}

.theme-color .bottom-sheet-header {
    border-bottom-color: #555;
}

.theme-color .bottom-sheet-title {
    color: #ffeb3b;
}
.theme-color .close-sheet-btn {
    color: #fff;
}

.theme-color .order-item {
    border-bottom-color: #444;
}

.theme-color .order-item-price {
    color: #ccc;
}

.theme-color .quantity-btn {
    background-color: #444;
    color: #fff;
    border-color: #666;
}

.theme-color .remove-btn {
    background-color: #5a2a2a;
    color: #ff8a8a;
    border-color: #8a4a4a;
}

.theme-color .order-total {
    border-top-color: #555;
}

.theme-color .order-btn {
    background-color: #ffeb3b;
    color: #000;
    font-weight: bold;
}

.theme-color .cart-empty-message {
    color: #aaa;
}

/* High-contrast Cart Badge */
.theme-color .cart-badge-container {
    background-color: #ffeb3b; /* Bright yellow background */
    color: #000; /* Black text for high contrast */
    border-color: #fff; /* White border */
    font-weight: bold;
}

.theme-color .receipt-error-message {
    color: #ffc107; /* High-contrast theme uses bright yellow for errors */
    font-weight: bold;
}