/* ====== Global Styles (Minecraft Theme) ====== */

:root {
    --mc-primary: #2e7d32;
    --mc-secondary: #388e3c;
    --mc-surface: #48533f;
    --mc-background: #e0e0e0;
    --mc-text: #ffffff;
    --mc-card-bg: #3a453780;
    --mc-success: #66bb6a;
    --mc-error: #ef5350;
    --mc-shadow: 0 4px 12px rgba(0,0,0,0.4);
    --mc-radius: 4px;
}

body {
    font-family: 'Press Start 2P', 'Noto Sans', system-ui, sans-serif;
    background-color: #8ba465;
    color: #fff;
    margin: 0;
}

/* ====== App ====== */

.mc-app-title {
    padding-left: 8px;
}

/* ====== Navigation ====== */

.mc-navmenu {
    background-color: #2a3527 !important;
    color: #fff;
}

.mc-nav-header, .mc-nav-footer {
    padding: 16px 16px 8px;
    text-align: center;
}

.mc-nav-footer {
    border-top: 1px solid #4a5a45;
    margin-top: auto;
}

/* ====== Containers ====== */

.mc-main {
    background-color: #8ba465;
}

.mc-container {
    background-color: #c8b898;
    border-radius: var(--mc-radius);
    padding: 16px !important;
    margin-top: 16px;
}

/* ====== Welcome / Mode Cards ====== */

.mc-card {
    background-color: var(--mc-card-bg) !important;
    border: 3px solid #2e7d32;
    border-radius: var(--mc-radius);
    box-shadow: var(--mc-shadow);
}

.mc-modes-grid {
    gap: 16px;
}

.mc-mode-card {
    transition: transform 0.15s ease;
}

.mc-mode-card:hover {
    transform: translateY(-4px);
}

.mc-card-media {
    background: linear-gradient(135deg, #2e7d32, #1b5e20);
    border-radius: var(--mc-radius) var(--mc-radius) 0 0;
}

.mc-mode-body {
    padding: 0 16px;
}

.mc-subtitle {
    color: var(--mc-surface);
}

.mc-startbtn {
    font-family: 'Press Start 2P', monospace;
    font-size: 14px;
    background-color: var(--mc-primary) !important;
    border-radius: var(--mc-radius);
}

/* ====== Game Page ====== */

.mc-gprogress {
    margin: 16px 0;
    border-radius: var(--mc-radius);
}

.mc-time-display {
    font-size: 48px;
    text-align: right;
    margin: 16px 0;
    padding: 16px;
    border-radius: var(--mc-radius);
    background-color: var(--mc-surface);
}

.mc-correct {
    color: var(--mc-success);
}

.mc-wrong {
    color: var(--mc-error);
}

.mc-feedback {
    margin: 16px 0;
    border-radius: var(--mc-radius);
}

.mc-inputcard {
    background-color: var(--mc-card-bg) !important;
    border: 3px solid var(--mc-secondary);
    border-radius: var(--mc-radius);
}

.mc-qtext {
    margin-bottom: 16px;
}

.mc-input-field {
    margin-bottom: 16px;
}

.mc-input-field > div.mud-input-control {
    background-color: #1a2318;
    border-radius: var(--mc-radius);
}

.mc-input-field .mud-input-slot::placeholder {
    color: #a8b89e;
}

.mc-help-text {
    color: #d6d6c0;
    margin-top: 8px;
    font-size: 12px;
}

/* ====== Parent Dashboard ====== */

.mc-progress-grid {
    gap: 16px;
}

.mc-stat-card {
    border-radius: var(--mc-radius);
    border: 2px solid #2e7d32;
    background-color: var(--mc-card-bg);
}

.mc-recommendations {
    background-color: var(--mc-surface);
    border-radius: var(--mc-radius);
    border: 2px solid #2e7d32;
}

/* ====== Animations ====== */

@keyframes mc-fadeIn {
    from { opacity: 0; transform: scale(0.95); }
    to { opacity: 1; transform: scale(1); }
}

.mc-feedback {
    animation: mc-fadeIn 0.3s ease-out;
}

@media (max-width: 960px) {
    .mc-time-display {
        font-size: 32px;
    }
    
    .mc-mode-body {
        padding: 0 8px;
    }
}

/* ====== MudBlazor Overrides ====== */

.mud-paper {
    border-radius: var(--mc-radius) !important;
}

.mud-card {
    border-radius: var(--mc-radius) !important;
}

.mud-list-item {
    border-radius: var(--mc-radius) !important;
}
