@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap");

:root {
    --admin-bg: #0b0b0c;
    --admin-bg-soft: #111113;
    --admin-panel: #161618;
    --admin-panel-2: #1b1b1e;
    --admin-line: rgba(255, 255, 255, 0.09);
    --admin-line-strong: rgba(255, 255, 255, 0.22);
    --admin-text: #f2f2f3;
    --admin-muted: #8d8d93;
    --admin-accent: #d5d5d8;
    --admin-accent-2: #f1f1f2;
    --admin-accent-text: #111113;
    --admin-success: #c8c8ca;
    --admin-danger: #b8b8bc;
    --admin-shadow: 0 20px 55px rgba(0, 0, 0, 0.32);
}

.admin-rcon-log-card { margin-top: 20px; }
.admin-rcon-log-card[hidden] { display: none !important; }
.admin-console-head-actions { display: flex; align-items: center; gap: 10px; }
.admin-rcon-log-search { width: min(430px, 100%); }
.admin-rcon-log-search input { width: 100%; min-height: 44px; }
.admin-rcon-log-list { display: grid; gap: 12px; margin-top: 20px; }
.admin-rcon-log-row { padding: 16px; border: 1px solid #383838; border-radius: 12px; background: #171717; }
.admin-rcon-log-row[hidden] { display: none !important; }
.admin-rcon-log-meta { display: flex; flex-wrap: wrap; gap: 8px 16px; margin-bottom: 12px; color: #a8a8a8; font-size: 12px; }
.admin-rcon-log-meta strong { color: #efc446; }
.admin-rcon-log-row code { display: block; color: #f5f3f5; white-space: pre-wrap; overflow-wrap: anywhere; }
.admin-rcon-log-row pre { margin: 10px 0 0; color: #bdbdbd; border: 0; background: transparent; white-space: pre-wrap; overflow-wrap: anywhere; }
.admin-login-field-icon img,
.admin-password-toggle img { display: block; width: 20px; height: 20px; object-fit: contain; }
.card-header > img.easy-icon { width: 34px; height: 34px; }
.card-footer .stats > img.easy-icon { width: 16px; height: 16px; margin-right: 5px; vertical-align: -3px; }

@media (max-width: 700px) {
    .admin-rcon-log-card .admin-list-head { align-items: stretch; flex-direction: column; }
    .admin-rcon-log-search { width: 100%; }
}

/* Final device-safe login overrides. */
@media (max-width: 600px) {
    body.admin-body.admin-login-body .admin-login-shell {
        min-height: 100svh;
        height: auto;
        padding: 18px 12px;
        overflow: visible;
    }
    body.admin-body.admin-login-body .admin-login-grid { width: min(100%,349px) !important; transform: none !important; }
    body.admin-body.admin-login-body .admin-login-card,
    body.admin-body.admin-login-body .admin-login-card.admin-card {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 566px !important;
        padding: 28px 22px 70px !important;
    }
    body.admin-body.admin-login-body .admin-login-head { margin-bottom: 26px; padding-bottom: 20px; }
    body.admin-body.admin-login-body .admin-login-head h1 { font-size: clamp(22px,7vw,26px); }
    body.admin-body.admin-login-body .admin-login-form { width: 100%; }
    body.admin-body.admin-login-body .admin-login-form > button[type="submit"] { width: min(186px,100%) !important; }
}

@media (max-width: 360px) {
    body.admin-body.admin-login-body .admin-login-shell { padding-right: 8px; padding-left: 8px; }
    body.admin-body.admin-login-body .admin-login-card,
    body.admin-body.admin-login-body .admin-login-card.admin-card { padding-right: 18px !important; padding-left: 18px !important; }
}

@media (max-height: 620px) and (orientation: landscape) {
    body.admin-body.admin-login-body .admin-login-shell { align-items: flex-start; padding-top: 14px; padding-bottom: 14px; }
    body.admin-body.admin-login-body .admin-login-grid { transform: none !important; }
}

body.admin-body,
.admin-body button,
.admin-body input,
.admin-body select,
.admin-body textarea {
    font-family: Inter, Arial, sans-serif;
}

body.admin-body.admin-login-body {
    scrollbar-width: none;
    -ms-overflow-style: none;
}
body.admin-body.admin-login-body::-webkit-scrollbar { display: none; width: 0; height: 0; }

/* Final monochrome theme. Kept last to neutralize the legacy decorative layer. */
body.admin-body {
    color: #F5F3F5;
    background: #0d0d0e !important;
    font-family: Inter, Arial, sans-serif !important;
}

.admin-body *,
.admin-body *::before,
.admin-body *::after {
    box-sizing: border-box;
    text-shadow: none !important;
}

.admin-body h1,
.admin-body h2,
.admin-body h3,
.admin-body h4,
.admin-body h5,
.admin-body strong,
.admin-body button,
.admin-body .admin-primary-button,
.admin-body .admin-submit {
    font-family: Inter, Arial, sans-serif !important;
    font-weight: 700 !important;
}

.admin-body p,
.admin-body small,
.admin-body label,
.admin-body .admin-card-note,
.admin-body .admin-helper-text {
    color: #89888F;
}

.admin-card::before,
.admin-dashboard-hero::before,
.admin-dashboard-icon::before,
.admin-editor-block > h3::before,
.admin-settings-block > h3::before {
    content: none !important;
    display: none !important;
}

.easy-icon {
    display: block;
    flex: 0 0 auto;
    width: 22px;
    height: 22px;
    color: currentColor;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
    pointer-events: none;
}

.admin-shell {
    grid-template-columns: 104px minmax(0, 1fr);
    gap: 28px;
    align-items: start;
}

.easy-admin-nav {
    padding: 18px 12px;
    border: 1px solid #29292d;
    border-radius: 18px;
    background: #151517 !important;
    box-shadow: none !important;
    backdrop-filter: none;
}

.easy-admin-brand {
    width: 52px;
    height: 52px;
    border-radius: 13px;
    color: #101011;
    background: #FF9E2A !important;
    box-shadow: none !important;
}

.easy-admin-nav-list { gap: 8px; margin-top: 30px; }
.easy-admin-nav-link,
.easy-admin-logout {
    min-height: 56px;
    color: #89888F;
    border: 1px solid transparent;
    border-radius: 12px;
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
    transition: color .22s ease, border-color .22s ease, background-color .22s ease;
}
.easy-admin-nav-link:hover,
.easy-admin-nav-link:focus-visible,
.easy-admin-logout:hover,
.easy-admin-logout:focus-visible {
    color: #F5F3F5;
    border-color: #343438;
    background: #1d1d20 !important;
    outline: none;
}

.admin-header { align-items: center; }
.admin-header-copy h2 { color: #F5F3F5; }
.admin-panel-badge {
    min-width: 0;
    height: 30px;
    padding: 0 11px;
    color: #FF9E2A;
    border: 1px solid #49321a;
    border-radius: 8px;
    background: #211912 !important;
}

.admin-header-chip,
.admin-header-user,
.admin-card,
.admin-dashboard-hero,
.admin-confirm-card,
.admin-dashboard-tile,
.admin-stat-card,
.admin-analytics-card,
.admin-product-card,
.admin-coupon-card,
.admin-discount-card,
.admin-group-card,
.admin-server-card,
.admin-editor-block,
.admin-settings-block {
    color: #F5F3F5;
    border: 1px solid #29292d !important;
    border-radius: 16px !important;
    background: #171719 !important;
    box-shadow: none !important;
}

.admin-user-avatar,
.admin-primary-button,
.admin-submit,
.admin-button-primary,
.admin-form button[type="submit"]:not(.danger-button) {
    color: #111112 !important;
    background: #FF9E2A !important;
    border-color: #FF9E2A !important;
    box-shadow: none !important;
    transform: none !important;
    transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}
.admin-user-avatar:hover,
.admin-primary-button:hover,
.admin-submit:hover,
.admin-button-primary:hover,
.admin-form button[type="submit"]:not(.danger-button):hover {
    color: #111112 !important;
    background: #f49322 !important;
    border-color: #f49322 !important;
    box-shadow: none !important;
    transform: none !important;
}

.admin-dashboard-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}
.admin-dashboard-tile {
    grid-template-columns: 52px minmax(0, 1fr);
    grid-template-rows: auto auto;
    min-height: 152px;
    padding: 22px;
    column-gap: 16px;
    row-gap: 7px;
    transform: none !important;
    transition: border-color .22s ease, background-color .22s ease;
}
.admin-dashboard-tile:hover,
.admin-dashboard-tile:focus-visible {
    border-color: #444449 !important;
    background: #1b1b1e !important;
    box-shadow: none !important;
    transform: none !important;
    outline: none;
}
.admin-dashboard-tile strong,
.admin-dashboard-tile small { grid-column: 2; max-width: none; }
.admin-dashboard-tile strong { color: #F5F3F5; font-size: 1.05rem; }
.admin-dashboard-tile small { color: #89888F; font-size: .86rem; }
.admin-dashboard-icon,
.admin-dashboard-icon[class*="is-"] {
    grid-row: 1 / span 2;
    width: 52px;
    height: 52px;
    color: #F5F3F5 !important;
    border: 1px solid #303034 !important;
    border-radius: 13px;
    background: #202023 !important;
    box-shadow: none !important;
}
.admin-dashboard-icon .easy-icon { width: 24px; height: 24px; }

.admin-dashboard-metric,
.admin-stat-card {
    border: 1px solid #29292d !important;
    border-radius: 14px !important;
    background: #1b1b1e !important;
    box-shadow: none !important;
}
.admin-dashboard-metric span,
.admin-stat-card span { color: #89888F; }
.admin-dashboard-metric strong,
.admin-stat-card strong { color: #F5F3F5; }

.admin-body input,
.admin-body select,
.admin-body textarea {
    color: #F5F3F5 !important;
    border: 1px solid #303034 !important;
    background: #111113 !important;
    box-shadow: none !important;
    transition: border-color .2s ease, background-color .2s ease;
}
.admin-body input:focus,
.admin-body select:focus,
.admin-body textarea:focus {
    border-color: #FF9E2A !important;
    background: #141416 !important;
    box-shadow: none !important;
    outline: none;
}

.admin-panel-section:not([hidden]) {
    animation: admin-section-in .32s cubic-bezier(.22, .8, .3, 1) both;
}
@keyframes admin-section-in {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
}

@media (prefers-reduced-motion: reduce) {
    .admin-body *, .admin-body *::before, .admin-body *::after { animation: none !important; transition: none !important; }
}

.admin-chart-legend {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    margin: 18px 0 12px;
    color: #89888F;
    font-size: .82rem;
}
.admin-chart-legend span { display: inline-flex; align-items: center; gap: 8px; }
.admin-chart-legend i { width: 18px; height: 3px; border-radius: 4px; background: #FF9E2A; }
.admin-chart-legend i.is-unique { background: #89888F; }
.admin-chart-viewport {
    position: relative;
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    border: 1px solid #29292d;
    border-radius: 14px;
    background: #111113;
    cursor: crosshair;
    scrollbar-color: #3a3a3e #171719;
    scrollbar-width: thin;
}
.admin-chart-viewport.is-dragging { cursor: grabbing; user-select: none; }
.admin-traffic-chart { display: block; width: 100%; height: 310px; }
.admin-chart-tooltip {
    position: absolute;
    z-index: 5;
    min-width: 170px;
    padding: 11px 13px;
    color: #F5F3F5;
    border: 1px solid #3a3a3e;
    border-radius: 10px;
    background: #1b1b1e;
    box-shadow: none;
    pointer-events: none;
    transform: translate(-50%, calc(-100% - 14px));
}
.admin-chart-tooltip strong { display: block; margin-bottom: 7px; color: #F5F3F5; font-size: .82rem; }
.admin-chart-tooltip span { display: flex; justify-content: space-between; gap: 18px; color: #89888F; font-size: .78rem; line-height: 1.65; }
.admin-chart-tooltip b { color: #F5F3F5; }
.admin-chart-hint { margin: 9px 0 0; color: #89888F; font-size: .75rem; }
.admin-chart-accessible-data { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }

.admin-body .admin-password-control {
    position: relative;
    display: block;
    width: 100%;
}
.admin-body .admin-password-control input { display: block; width: 100%; padding-right: 48px !important; }
.admin-body .admin-password-toggle,
.admin-body .admin-password-toggle:hover,
.admin-body .admin-password-toggle:focus,
.admin-body .admin-password-toggle:active {
    position: absolute !important;
    z-index: 2;
    top: 50% !important;
    right: 8px !important;
    bottom: auto !important;
    left: auto !important;
    width: 34px !important;
    min-width: 34px !important;
    max-width: 34px !important;
    height: 34px !important;
    min-height: 0 !important;
    max-height: 34px !important;
    margin: 0 !important;
    padding: 7px !important;
    color: #89888F !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: transparent !important;
    box-shadow: none !important;
    outline: none !important;
    transform: translateY(-50%) !important;
}
.admin-body .admin-password-toggle:hover,
.admin-body .admin-password-toggle:focus-visible { color: #F5F3F5 !important; background: transparent !important; }
.admin-body .admin-password-toggle svg { width: 20px; height: 20px; }

.admin-body .admin-action-icon,
.admin-body button.admin-action-icon,
.admin-body a.admin-action-icon,
.admin-body .admin-command-remove {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px !important;
    min-width: 38px !important;
    height: 38px !important;
    min-height: 38px !important;
    padding: 0 !important;
    color: #89888F !important;
    border: 1px solid #303034 !important;
    border-radius: 10px !important;
    background: #1b1b1e !important;
    box-shadow: none !important;
    transform: none !important;
    transition: color .2s ease, border-color .2s ease, background-color .2s ease;
}
.admin-body .admin-action-icon:hover,
.admin-body .admin-action-icon:focus-visible,
.admin-body .admin-command-remove:hover,
.admin-body .admin-command-remove:focus-visible {
    color: #F5F3F5 !important;
    border-color: #49494e !important;
    background: #202023 !important;
    outline: none;
}
.admin-body .admin-action-icon.danger-button:hover { color: #FF9E2A !important; border-color: #6b451f !important; }
.admin-body .admin-action-icon .easy-icon,
.admin-body .admin-command-remove .easy-icon { width: 18px; height: 18px; }
.admin-body a.admin-action-icon { border-color: rgba(232, 165, 30, .45) !important; background: rgba(232, 165, 30, .08) !important; }
.admin-body button.admin-action-icon.danger-button { border-color: rgba(244, 67, 54, .45) !important; background: rgba(244, 67, 54, .08) !important; }
.admin-body a.admin-action-icon:hover { border-color: #E8A51E !important; background: rgba(232, 165, 30, .16) !important; }
.admin-body button.admin-action-icon.danger-button:hover { border-color: #F44336 !important; background: rgba(244, 67, 54, .16) !important; }

body.admin-body { background: #0b0b0c; }

.admin-body .checkbox-row input,
.admin-body .admin-product-pick-all input,
.admin-body .admin-product-pick-card input {
    border: 2px solid #89888F !important;
    background: #242427 !important;
    box-shadow: none !important;
}
.admin-body .checkbox-row input:hover,
.admin-body .admin-product-pick-all input:hover,
.admin-body .admin-product-pick-card input:hover { border-color: #F5F3F5 !important; }
.admin-body .checkbox-row input:checked,
.admin-body .admin-product-pick-all input:checked,
.admin-body .admin-product-pick-card input:checked {
    border-color: #FF9E2A !important;
    background: #FF9E2A !important;
    box-shadow: none !important;
}
.admin-body .checkbox-row input:checked::after,
.admin-body .admin-product-pick-all input:checked::after,
.admin-body .admin-product-pick-card input:checked::after { border-color: #151515 !important; }

.admin-provider-tabs {
    display: inline-flex;
    gap: 4px;
    margin: 18px 0;
    padding: 4px;
    border: 1px solid #303034;
    border-radius: 13px;
    background: #111113;
}
.admin-body .admin-provider-tab {
    min-height: 40px;
    padding: 0 22px;
    border: 0;
    border-radius: 9px;
    color: #89888F;
    background: transparent;
    box-shadow: none;
    font: 700 14px/1 Inter, sans-serif;
    cursor: pointer;
    transition: color .2s ease, background-color .2s ease;
}
.admin-body .admin-provider-tab:hover { color: #F5F3F5; background: #1d1d20; }
.admin-body .admin-provider-tab.is-active { color: #151515; background: #FF9E2A; }
.admin-provider-fields { display: grid; gap: 14px; }
.admin-provider-fields[hidden],
[data-payment-provider-panel][hidden] { display: none !important; }

.admin-shell {
    display: grid;
    grid-template-columns: 92px minmax(0, 1fr);
    gap: 32px;
    width: min(calc(100% - 40px), 1540px);
    padding-top: 24px;
}

.easy-admin-nav {
    position: sticky;
    top: 24px;
    display: flex;
    min-height: calc(100vh - 48px);
    max-height: calc(100vh - 48px);
    flex-direction: column;
    align-items: center;
    padding: 18px 10px;
    border: 1px solid var(--admin-line);
    border-radius: 24px;
    background: #121214;
    box-shadow: var(--admin-shadow);
    backdrop-filter: blur(18px);
}

.easy-admin-brand,
.easy-admin-nav-link,
.easy-admin-logout {
    border: 0;
    color: var(--admin-muted);
    background: transparent;
    text-decoration: none;
    cursor: pointer;
}

.easy-admin-brand {
    display: grid;
    width: 54px;
    height: 54px;
    place-items: center;
    border-radius: 17px;
    color: #111113;
    background: #e3e3e5;
    font-size: 25px;
    font-weight: 800;
}

.easy-admin-nav-list {
    display: grid;
    gap: 10px;
    width: 100%;
    margin-top: 38px;
}

.easy-admin-nav-link,
.easy-admin-logout {
    display: grid;
    justify-items: center;
    gap: 5px;
    width: 100%;
    padding: 10px 4px;
    border-radius: 14px;
    transition: color .2s ease, background .2s ease, transform .2s ease;
}

.easy-icon { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.easy-admin-nav-link b,
.easy-admin-logout b { font-size: 10px; font-weight: 600; }
.easy-admin-nav-link:hover,
.easy-admin-nav-link:focus-visible,
.easy-admin-logout:hover { color: #fff; background: rgba(255, 255, 255, .07); transform: translateY(-1px); }
.easy-admin-logout { margin-top: auto; }

.admin-header,
.admin-panel-section { width: 100%; }
.admin-header { padding: 10px 0 24px; }
.admin-header-copy h2 { font-size: clamp(1.9rem, 3vw, 2.65rem); letter-spacing: -.025em; }
.admin-panel-badge { border-radius: 9px; }
.admin-header-chip,
.admin-header-user,
.admin-card,
.admin-dashboard-hero,
.admin-confirm-card,
.admin-dashboard-tile,
.admin-stat-card,
.admin-analytics-card { border-radius: 18px; }
.admin-card,
.admin-dashboard-hero,
.admin-confirm-card { background: #161618; }
.admin-dashboard-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.admin-dashboard-tile { min-height: 150px; background: #161618; }
.admin-dashboard-tile:hover { border-color: rgba(255, 255, 255, .2); background: #1b1b1e; }
.admin-dashboard-icon,
.admin-dashboard-icon.is-blue,
.admin-dashboard-icon.is-green,
.admin-dashboard-icon.is-amber,
.admin-dashboard-icon.is-red,
.admin-dashboard-icon.is-cyan,
.admin-dashboard-icon.is-gold,
.admin-dashboard-icon.is-violet { color: #d5d5d8; background: #222225; border-color: rgba(255,255,255,.09); }
.admin-dashboard-icon .easy-icon { width: 25px; height: 25px; }
.admin-primary-button,
.admin-submit,
.admin-button-primary { background: #e3e3e5; color: #111113; }

@media (max-width: 1050px) {
    .admin-dashboard-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 700px) {
    .admin-shell { display: block; width: min(calc(100% - 24px), 100%); padding: 16px 0 86px; }
    .easy-admin-nav {
        position: fixed;
        z-index: 1000;
        inset: auto 10px 10px;
        display: flex;
        width: auto;
        min-height: 62px;
        height: 62px;
        max-height: 62px;
        flex-direction: row;
        padding: 7px 10px;
        border-radius: 19px;
    }
    .easy-admin-brand { display: none; }
    .easy-admin-nav-list { display: flex; justify-content: space-around; gap: 2px; margin: 0; width: 100%; }
    .easy-admin-nav-link { width: auto; min-width: 48px; padding: 6px; }
    .easy-admin-nav-link b { display: none; }
    .easy-admin-logout { width: 48px; margin: 0; }
    .easy-admin-logout b { display: none; }
    .admin-dashboard-grid { grid-template-columns: 1fr; }
    .admin-header { grid-template-columns: 1fr; }

    .easy-admin-nav {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 42px;
        align-items: center;
        column-gap: 4px;
        padding: 7px 8px;
    }
    .easy-admin-nav-list {
        display: grid;
        grid-template-columns: repeat(6, minmax(0, 1fr));
        align-items: center;
        gap: 2px;
        min-width: 0;
        height: 100%;
        margin: 0;
    }
    .easy-admin-nav-link,
    .easy-admin-logout {
        display: grid;
        width: 100%;
        min-width: 0;
        height: 46px;
        min-height: 46px;
        padding: 0;
        place-items: center;
        border-radius: 11px;
        line-height: 1;
    }
    .easy-admin-logout { margin: 0; }
    .easy-admin-nav-link .easy-icon,
    .easy-admin-logout .easy-icon {
        display: block;
        width: 20px;
        height: 20px;
        margin: 0;
    }
}

/* Device-safe login rules must stay last in the cascade. */
@media (max-width: 600px) {
    body.admin-body.admin-login-body { min-height: 100svh; overflow-y: auto !important; }
    body.admin-body.admin-login-body .admin-login-shell { min-height: 100svh; height: auto; padding: 18px 12px; overflow: visible; }
    body.admin-body.admin-login-body .admin-login-grid { width: min(100%,349px) !important; transform: none !important; }
    body.admin-body.admin-login-body .admin-login-card,
    body.admin-body.admin-login-body .admin-login-card.admin-card { width: 100% !important; max-width: 100% !important; height: auto !important; min-height: 566px !important; padding: 28px 22px 70px !important; }
    body.admin-body.admin-login-body .admin-login-head { margin-bottom: 26px; padding-bottom: 20px; }
    body.admin-body.admin-login-body .admin-login-head h1 { font-size: clamp(22px,7vw,26px); }
    body.admin-body.admin-login-body .admin-login-form { width: 100%; }
    body.admin-body.admin-login-body .admin-login-form > button[type="submit"] { width: min(186px,100%) !important; }
}

@media (max-width: 360px) {
    body.admin-body.admin-login-body .admin-login-shell { padding-right: 8px; padding-left: 8px; }
    body.admin-body.admin-login-body .admin-login-card,
    body.admin-body.admin-login-body .admin-login-card.admin-card { padding-right: 18px !important; padding-left: 18px !important; }
}

@media (max-height: 620px) and (orientation: landscape) {
    body.admin-body.admin-login-body .admin-login-shell { align-items: flex-start; padding-top: 14px; padding-bottom: 14px; }
    body.admin-body.admin-login-body .admin-login-grid { transform: none !important; }
}

/* Canonical skin: 1:1 with minego/site/admin Material Dashboard templates. */
body.admin-body:not(.admin-login-body) {
    color: #3c4858 !important;
    background: #eeeeee !important;
    font-family: "Roboto", "Helvetica Neue", Arial, sans-serif !important;
    font-weight: 300 !important;
}

body.admin-body:not(.admin-login-body) .admin-shell {
    display: block !important;
    min-height: 100vh !important;
    background: #eeeeee !important;
}

body.admin-body:not(.admin-login-body) .easy-admin-nav {
    position: fixed !important;
    inset: 0 auto 0 0 !important;
    z-index: 100 !important;
    width: 260px !important;
    height: 100vh !important;
    max-height: 100vh !important;
    padding: 0 15px 18px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #252525 !important;
    box-shadow: 4px 0 14px rgba(0, 0, 0, .18) !important;
}

body.admin-body:not(.admin-login-body) .admin-content,
body.admin-body:not(.admin-login-body) .admin-content-standalone {
    width: calc(100% - 260px) !important;
    min-height: 100vh !important;
    margin-left: 260px !important;
    padding: 24px 34px 52px !important;
    color: #3c4858 !important;
    background: #eeeeee !important;
}

body.admin-body:not(.admin-login-body),
body.admin-body:not(.admin-login-body) button,
body.admin-body:not(.admin-login-body) input,
body.admin-body:not(.admin-login-body) select,
body.admin-body:not(.admin-login-body) textarea {
    font-family: "Roboto", "Helvetica Neue", Arial, sans-serif !important;
}

body.admin-body:not(.admin-login-body) .easy-admin-brand {
    color: #ffffff !important;
    font-size: 18px !important;
    font-weight: 400 !important;
}

body.admin-body:not(.admin-login-body) .easy-admin-nav-link,
body.admin-body:not(.admin-login-body) .easy-admin-logout {
    color: #f2f2f2 !important;
    border: 0 !important;
    border-radius: 3px !important;
    background: transparent !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    box-shadow: none !important;
}

body.admin-body:not(.admin-login-body) .easy-admin-nav-link b,
body.admin-body:not(.admin-login-body) .easy-admin-logout b {
    font-weight: 400 !important;
}

body.admin-body:not(.admin-login-body) .easy-admin-nav-link:hover,
body.admin-body:not(.admin-login-body) .easy-admin-nav-link:focus-visible,
body.admin-body:not(.admin-login-body) .easy-admin-logout:hover,
body.admin-body:not(.admin-login-body) .easy-admin-logout:focus-visible {
    color: #ffffff !important;
    background: rgba(255, 255, 255, .10) !important;
}

body.admin-body:not(.admin-login-body) .easy-admin-nav-link.active {
    color: #ffffff !important;
    background: #ef5350 !important;
    box-shadow: 0 10px 20px -10px rgba(239, 83, 80, .75) !important;
}

body.admin-body:not(.admin-login-body) .easy-admin-nav-link.active img.easy-icon {
    filter: none !important;
}

body.admin-body:not(.admin-login-body) .admin-header {
    min-height: 72px !important;
    margin: -24px -34px 30px !important;
    padding: 14px 34px !important;
    border: 0 !important;
    border-bottom: 1px solid #dddddd !important;
    border-radius: 0 !important;
    color: #3c4858 !important;
    background: rgba(255, 255, 255, .82) !important;
    box-shadow: 0 2px 5px rgba(0, 0, 0, .05) !important;
}

body.admin-body:not(.admin-login-body) h1,
body.admin-body:not(.admin-login-body) h2,
body.admin-body:not(.admin-login-body) h3,
body.admin-body:not(.admin-login-body) h4,
body.admin-body:not(.admin-login-body) h5,
body.admin-body:not(.admin-login-body) strong,
body.admin-body:not(.admin-login-body) .admin-form label > span {
    color: #3c4858 !important;
    font-family: "Roboto", "Helvetica Neue", Arial, sans-serif !important;
    font-weight: 400 !important;
}

body.admin-body:not(.admin-login-body) p,
body.admin-body:not(.admin-login-body) small,
body.admin-body:not(.admin-login-body) label,
body.admin-body:not(.admin-login-body) .admin-card-note,
body.admin-body:not(.admin-login-body) .admin-helper-text {
    color: #777777 !important;
}

body.admin-body:not(.admin-login-body) .admin-header-chip,
body.admin-body:not(.admin-login-body) .admin-header-user,
body.admin-body:not(.admin-login-body) .admin-card,
body.admin-body:not(.admin-login-body) .admin-dashboard-hero,
body.admin-body:not(.admin-login-body) .admin-confirm-card,
body.admin-body:not(.admin-login-body) .admin-dashboard-tile,
body.admin-body:not(.admin-login-body) .admin-stat-card,
body.admin-body:not(.admin-login-body) .admin-analytics-card,
body.admin-body:not(.admin-login-body) .admin-product-card,
body.admin-body:not(.admin-login-body) .admin-coupon-card,
body.admin-body:not(.admin-login-body) .admin-discount-card,
body.admin-body:not(.admin-login-body) .admin-group-card,
body.admin-body:not(.admin-login-body) .admin-server-card,
body.admin-body:not(.admin-login-body) .admin-editor-block,
body.admin-body:not(.admin-login-body) .admin-settings-block {
    color: #3c4858 !important;
    border: 0 !important;
    border-radius: 6px !important;
    background: #ffffff !important;
    box-shadow: 0 2px 5px rgba(0, 0, 0, .12), 0 10px 24px rgba(0, 0, 0, .06) !important;
}

body.admin-body:not(.admin-login-body) input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
body.admin-body:not(.admin-login-body) select,
body.admin-body:not(.admin-login-body) textarea {
    color: #3c4858 !important;
    border: 0 !important;
    border-bottom: 1px solid #d2d2d2 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-weight: 400 !important;
}

body.admin-body:not(.admin-login-body) input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):focus,
body.admin-body:not(.admin-login-body) select:focus,
body.admin-body:not(.admin-login-body) textarea:focus {
    border-bottom-color: #ef5350 !important;
    background: transparent !important;
    box-shadow: 0 1px 0 #ef5350 !important;
    outline: none !important;
}

body.admin-body:not(.admin-login-body) .admin-primary-button,
body.admin-body:not(.admin-login-body) .admin-submit,
body.admin-body:not(.admin-login-body) .admin-button-primary,
body.admin-body:not(.admin-login-body) .admin-form button[type="submit"]:not(.danger-button),
body.admin-body:not(.admin-login-body) .admin-user-avatar {
    color: #ffffff !important;
    border-color: #ef5350 !important;
    border-radius: 3px !important;
    background: #ef5350 !important;
    box-shadow: 0 2px 2px rgba(239,83,80,.14), 0 3px 1px -2px rgba(239,83,80,.2), 0 1px 5px rgba(239,83,80,.12) !important;
}

body.admin-body:not(.admin-login-body) .admin-panel-badge {
    color: #ffffff !important;
    background: #ef5350 !important;
}

/* Material Dashboard sets generic card images to full width. Dashboard icons
   must remain compact regardless of the SVG's intrinsic dimensions. */
body.admin-body:not(.admin-login-body) .card.card-stats > .card-header {
    display: inline-flex !important;
    width: 64px !important;
    min-width: 64px !important;
    height: 64px !important;
    min-height: 64px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
}
body.admin-body:not(.admin-login-body) .card.card-stats > .card-header > img.easy-icon,
body.admin-body:not(.admin-login-body) .card > .card-header.card-header-icon > img.easy-icon {
    display: block !important;
    width: 30px !important;
    min-width: 30px !important;
    max-width: 30px !important;
    height: 30px !important;
    min-height: 30px !important;
    max-height: 30px !important;
    margin: 0 !important;
    object-fit: contain !important;
}
body.admin-body:not(.admin-login-body) .card-footer .stats > img.easy-icon {
    display: inline-block !important;
    width: 15px !important;
    min-width: 15px !important;
    max-width: 15px !important;
    height: 15px !important;
    min-height: 15px !important;
    max-height: 15px !important;
    margin: 0 6px 0 0 !important;
    vertical-align: -3px !important;
}

@media (max-width: 1100px) and (min-width: 701px) {
    body.admin-body:not(.admin-login-body) .easy-admin-nav { width: 220px !important; }
    body.admin-body:not(.admin-login-body) .admin-content,
    body.admin-body:not(.admin-login-body) .admin-content-standalone {
        width: calc(100% - 220px) !important;
        margin-left: 220px !important;
    }
}

@media (max-width: 700px) {
    body.admin-body:not(.admin-login-body) .easy-admin-nav {
        inset: auto 8px 8px !important;
        width: auto !important;
        height: 64px !important;
        max-height: 64px !important;
        padding: 7px !important;
        border-radius: 5px !important;
    }

    body.admin-body:not(.admin-login-body) .admin-content,
    body.admin-body:not(.admin-login-body) .admin-content-standalone {
        width: 100% !important;
        margin-left: 0 !important;
        padding: 18px 14px 92px !important;
    }

    body.admin-body:not(.admin-login-body) .admin-header {
        margin: -18px -14px 22px !important;
        padding: 14px !important;
    }
}

/* Login screen from the supplied MineGO mockup. */
body.admin-body.admin-login-body {
    width: 100%;
    height: 100vh;
    height: 100dvh;
    min-height: 100vh;
    margin: 0;
    overflow: hidden;
    color: #f5f3f5 !important;
    background: #141414 !important;
    isolation: isolate;
}

body.admin-body.admin-login-body::before {
    content: "";
    position: fixed;
    z-index: 0;
    inset: 0;
    pointer-events: none;
    background: url("/img/background/background-content.png") center / cover no-repeat;
    opacity: .10;
}

body.admin-body.admin-login-body::after {
    content: "";
    position: fixed;
    z-index: 0;
    inset: 0;
    pointer-events: none;
    background-image:
        radial-gradient(circle, rgba(255, 255, 255, .62) 0 1px, transparent 1.7px),
        radial-gradient(circle, rgba(203, 212, 255, .38) 0 1.2px, transparent 1.9px),
        radial-gradient(circle, rgba(255, 255, 255, .22) 0 .8px, transparent 1.5px);
    background-position: 18px 24px, 73px 91px, 41px 57px;
    background-size: 137px 149px, 211px 193px, 89px 107px;
    opacity: .48;
    animation: admin-login-stars 12s linear infinite alternate;
}

.admin-login-body .admin-login-shell {
    position: relative;
    z-index: 1;
    display: grid;
    place-items: center;
    width: 100%;
    height: 100vh;
    height: 100dvh;
    min-height: 0;
    overflow: hidden;
    padding: 28px 18px;
}

.admin-login-body .admin-login-toast-stack {
    position: fixed;
    z-index: 10;
    top: 20px;
    right: 20px;
    left: auto;
    width: min(420px, calc(100% - 32px));
    transform: none;
}

.admin-login-body .admin-login-grid {
    display: block;
    width: min(349px, calc(100vw - 28px));
    margin: 0;
}

.admin-login-body .admin-login-card,
.admin-login-body .admin-login-card.admin-card {
    width: 349px;
    max-width: 100%;
    height: 456px;
    min-height: 456px;
    padding: 31px 27px 21px !important;
    overflow: hidden;
    border: 1px solid #4C4C4C !important;
    border-radius: 15px !important;
    background: #1F1F1F !important;
    box-shadow: inset 0 40px 50px 2px rgba(203, 212, 255, 0.1), 0 20px 80px rgba(0, 0, 0, 0.42) !important;
}

.admin-login-body .admin-login-head {
    margin: 0 0 32px;
    padding: 0 0 24px;
    border-bottom: 1px solid rgba(255,255,255,.08);
    text-align: center;
}

.admin-login-body .admin-login-head h1 {
    margin: 0;
    color: #f5f3f5 !important;
    font-size: 26px;
    font-weight: 700 !important;
    line-height: 1.2;
}

.admin-login-body .admin-login-head p {
    margin: 7px 0 0;
    color: rgba(255,255,255,.48) !important;
    font-size: 13px;
    font-weight: 500;
    letter-spacing: .02em;
}

.admin-login-body .admin-login-form {
    display: grid;
    justify-items: center;
    gap: 19px;
}

.admin-login-body .admin-login-form label {
    display: grid;
    width: 292px;
    max-width: 100%;
    gap: 7px;
    color: #f5f3f5 !important;
    font-size: .66rem;
    font-weight: 500;
}

.admin-login-body .admin-login-form label > span {
    color: rgba(255,255,255,.86) !important;
}

.admin-login-body .admin-login-input-shell {
    position: relative;
    display: flex;
    width: 292px;
    max-width: 100%;
    height: 27px;
    align-items: center;
}

.admin-login-body .admin-login-field-icon {
    position: absolute;
    z-index: 3;
    left: 3px;
    top: 3px;
    display: grid;
    width: 21px;
    height: 21px;
    place-items: center;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 6px;
    color: rgba(255,255,255,.48) !important;
    background: rgba(255,255,255,.065);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
}

.admin-login-body .admin-login-field-icon svg {
    width: 12px;
    height: 12px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.admin-login-body .admin-login-form input {
    width: 292px;
    max-width: 100%;
    height: 27px;
    min-height: 27px;
    padding: 0 33px 0 29px;
    color: #f5f3f5 !important;
    border: 1px solid rgba(255,255,255,.25) !important;
    border-radius: 8px !important;
    background: rgba(0,0,0,.16) !important;
    box-shadow: inset 0 2px 8px rgba(0,0,0,.28) !important;
    font-size: .62rem;
}

.admin-login-body .admin-login-form input::placeholder {
    color: rgba(255,255,255,.22);
}

.admin-login-body .admin-login-form input:focus {
    border-color: rgba(255,190,37,.75) !important;
    background: rgba(0,0,0,.22) !important;
    box-shadow: inset 0 2px 8px rgba(0,0,0,.3), 0 0 0 2px rgba(255,176,28,.10) !important;
}

.admin-login-body .admin-login-form .admin-password-control input {
    width: 100%;
    padding-right: 33px !important;
    padding-left: 29px !important;
}

.admin-login-body .admin-login-input-shell > .admin-password-control {
    display: block;
    width: 100%;
    height: 27px;
}

.admin-login-body .admin-password-toggle,
.admin-login-body .admin-password-toggle:hover,
.admin-login-body .admin-password-toggle:focus-visible {
    right: 1px;
    width: 28px !important;
    height: 25px !important;
    color: rgba(255,255,255,.36) !important;
    background: transparent !important;
}

.admin-login-body .admin-password-toggle svg {
    width: 14px;
    height: 14px;
}

.admin-login-body .admin-login-form button[type="submit"] {
    width: 186px;
    height: 33px;
    min-height: 33px;
    margin-top: 25px;
    padding: 0 16px;
    color: #17120a !important;
    border: 1px solid transparent !important;
    border-radius: 999px !important;
    background: radial-gradient(ellipse at center, #F5DE68 0%, #E8A51E 100%) !important;
    box-shadow: none !important;
    font-size: .72rem;
    font-weight: 700 !important;
    transition: filter .18s ease, transform .18s ease !important;
}

.admin-login-body .admin-login-form button[type="submit"]:hover {
    color: #17120a !important;
    border-color: transparent !important;
    background: radial-gradient(ellipse at center, #F5DE68 0%, #E8A51E 100%) !important;
    filter: none;
    transform: none !important;
}

.admin-login-body .admin-login-help {
    margin: 16px 0 0;
    color: rgba(255,255,255,.22) !important;
    font-size: .5rem;
    text-align: center;
}

@media (max-width: 420px) {
    body.admin-body.admin-login-body { min-height: 100svh; overflow-y: auto !important; }
    .admin-login-body .admin-login-grid {
        width: min(349px, calc(100vw - 28px));
    }

    .admin-login-body .admin-login-card,
    .admin-login-body .admin-login-card.admin-card {
        width: 100% !important;
        height: auto !important;
        min-height: 566px !important;
        padding: 30px 22px 72px !important;
        border-radius: 15px !important;
    }

    body.admin-body.admin-login-body .admin-login-card .admin-login-form label,
    body.admin-body.admin-login-body .admin-login-card .admin-login-input-shell,
    body.admin-body.admin-login-body .admin-login-card .admin-login-input-shell > .admin-password-control,
    body.admin-body.admin-login-body .admin-login-card .admin-login-form input:not([type="checkbox"]):not([type="range"]) {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }
}

/* Keep the login CTA identical to the storefront purchase button. */
body.admin-body.admin-login-body .admin-login-card .admin-login-form > button[type="submit"] {
    display: inline-flex !important;
    width: 186px !important;
    min-width: 186px !important;
    max-width: 186px !important;
    height: 33px !important;
    min-height: 33px !important;
    margin: 25px auto 0 !important;
    padding: 0 16px !important;
    align-items: center !important;
    justify-content: center !important;
    justify-self: center !important;
    color: #11151d !important;
    border: 1px solid transparent !important;
    border-radius: 999px !important;
    background-color: #E8A51E !important;
    background-image: radial-gradient(ellipse at center, #F5DE68 0%, #E8A51E 100%) !important;
    box-shadow: none !important;
    transform: none !important;
}

body.admin-body.admin-login-body .admin-login-card .admin-login-form > button[type="submit"]:hover,
body.admin-body.admin-login-body .admin-login-card .admin-login-form > button[type="submit"]:focus-visible,
body.admin-body.admin-login-body .admin-login-card .admin-login-form > button[type="submit"]:active {
    background-color: #E8A51E !important;
    background-image: radial-gradient(ellipse at center, #F5DE68 0%, #E8A51E 100%) !important;
    box-shadow: 0 0 0 5px rgba(232, 165, 30, 0.25) !important;
    transform: none !important;
}

/* Exact login field dimensions; protected from the generic mobile form rules below. */
body.admin-body.admin-login-body .admin-login-card .admin-login-form label {
    width: 292px !important;
    max-width: 292px !important;
    font-size: 16px !important;
    font-weight: 600 !important;
}

body.admin-body.admin-login-body .admin-login-card .admin-login-input-shell,
body.admin-body.admin-login-body .admin-login-card .admin-login-input-shell > .admin-password-control {
    width: 292px !important;
    min-width: 292px !important;
    max-width: 292px !important;
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
}

body.admin-body.admin-login-body .admin-login-card .admin-login-form input:not([type="checkbox"]):not([type="range"]) {
    width: 292px !important;
    min-width: 292px !important;
    max-width: 292px !important;
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
    padding: 0 44px !important;
    border: 1px solid rgba(255, 255, 255, 0.06) !important;
    border-radius: 14px !important;
    background: rgba(255, 255, 255, 0.04) !important;
    box-shadow: none !important;
    color: #fff !important;
    font-family: "Inter", Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 46px !important;
    transition: background-color .25s ease, border-color .25s ease, box-shadow .25s ease !important;
}

body.admin-body.admin-login-body .admin-login-card .admin-login-field-icon {
    left: 14px !important;
    top: 50% !important;
    display: block !important;
    width: 20px !important;
    height: 20px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: rgba(214, 224, 241, 0.72) !important;
    transform: translateY(-50%) !important;
}

body.admin-body.admin-login-body .admin-login-card .admin-login-form input::placeholder,
body.admin-body.admin-login-body .admin-login-card .admin-password-toggle {
    color: rgba(214, 224, 241, 0.72) !important;
    opacity: 1;
}

body.admin-body.admin-login-body .admin-login-card .admin-login-form input:not([type="checkbox"]):not([type="range"]):focus {
    border-color: rgba(239, 196, 70, 0.2) !important;
    background: rgba(239, 196, 70, 0.1) !important;
    box-shadow: inset 0 0 22px rgba(239, 196, 70, 0.035) !important;
    outline: none !important;
}

body.admin-body.admin-login-body .admin-login-card .admin-login-input-shell:focus-within .admin-login-field-icon,
body.admin-body.admin-login-body .admin-login-card .admin-login-input-shell:focus-within .admin-password-toggle {
    color: #E8A51E !important;
}

body.admin-body.admin-login-body .admin-login-card .admin-login-form input.is-invalid,
body.admin-body.admin-login-body .admin-login-card .admin-login-form input:user-invalid {
    color: #fff2f2 !important;
    border-color: rgba(255, 122, 122, 0.55) !important;
    box-shadow: 0 0 0 1px rgba(255, 122, 122, 0.16) !important;
}

body.admin-body.admin-login-body .admin-login-card .admin-login-form > button[type="submit"] {
    font-size: 16px !important;
}

body.admin-body.admin-login-body .admin-login-help {
    font-size: 12px !important;
    line-height: 1.35;
}

body.admin-body.admin-login-body .admin-login-card .admin-login-field-icon svg,
body.admin-body.admin-login-body .admin-login-card .admin-password-toggle svg {
    display: block;
    width: 20px !important;
    height: 20px !important;
}

body.admin-body.admin-login-body .admin-login-card .admin-password-toggle,
body.admin-body.admin-login-body .admin-login-card .admin-password-toggle:hover,
body.admin-body.admin-login-body .admin-login-card .admin-password-toggle:focus-visible {
    top: 50% !important;
    right: 14px !important;
    width: 20px !important;
    min-width: 20px !important;
    max-width: 20px !important;
    height: 20px !important;
    min-height: 20px !important;
    max-height: 20px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: translateY(-50%) !important;
}

body.admin-body.admin-login-body::before {
    animation: admin-login-pattern 18s ease-in-out infinite alternate;
}

body.admin-body.admin-login-body .admin-login-card {
    animation: admin-login-card-in .55s cubic-bezier(.22, .8, .3, 1) both;
}

body.admin-body.admin-login-body .admin-login-head,
body.admin-body.admin-login-body .admin-login-form label,
body.admin-body.admin-login-body .admin-login-form > button,
body.admin-body.admin-login-body .admin-login-help {
    animation: admin-login-item-in .45s ease both;
}

body.admin-body.admin-login-body .admin-login-head { animation-delay: .08s; }
body.admin-body.admin-login-body .admin-login-form label:nth-of-type(1) { animation-delay: .14s; }
body.admin-body.admin-login-body .admin-login-form label:nth-of-type(2) { animation-delay: .20s; }
body.admin-body.admin-login-body .admin-login-form > button { animation-delay: .26s; }
body.admin-body.admin-login-body .admin-login-help { animation-delay: .32s; }
body.admin-body.admin-login-body .admin-login-credit {
    margin: 8px 0 0;
    color: #89888f;
    font-size: 10px;
    text-align: center;
    animation: admin-login-item-in .45s .38s ease both;
}
body.admin-body.admin-login-body .admin-login-credit a {
    color: #f5f3f5;
    font-weight: 700;
    text-decoration: none;
    transition: color .2s ease;
}
body.admin-body.admin-login-body .admin-login-credit a:hover { color: #ff9e2a; }

/* Keep the attribution visible below the enlarged form controls. */
body.admin-body.admin-login-body .admin-login-card,
body.admin-body.admin-login-body .admin-login-card.admin-card {
    position: relative !important;
    height: 566px !important;
    min-height: 566px !important;
    padding-bottom: 72px !important;
}
body.admin-body.admin-login-body .admin-login-credit {
    position: absolute;
    right: 24px;
    bottom: 18px;
    left: 24px;
    z-index: 5;
    display: block !important;
    margin: 0 !important;
    color: #89888f !important;
    opacity: 1 !important;
    visibility: visible !important;
}
body.admin-body.admin-login-body .admin-login-credit a { color: #f5f3f5 !important; }
body.admin-body.admin-login-body .admin-login-credit a:hover { color: #ff9e2a !important; }
body.admin-body.admin-login-body::before { animation-duration: 6s !important; }
body.admin-body.admin-login-body::after { animation-duration: 5s !important; }

body.admin-body.admin-login-body .admin-login-card .admin-login-form input,
body.admin-body.admin-login-body .admin-login-card .admin-login-form > button[type="submit"] {
    transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease, background-image .2s ease !important;
}

@keyframes admin-login-card-in {
    from { opacity: 0; transform: translateY(18px) scale(.975); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

@keyframes admin-login-item-in {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes admin-login-pattern {
    from { background-position: 49% 50%; }
    to { background-position: 51% 50%; }
}

@keyframes admin-login-stars {
    from { transform: translate3d(0, 0, 0); }
    to { transform: translate3d(8px, -10px, 0); }
}

@media (prefers-reduced-motion: reduce) {
    body.admin-body.admin-login-body::before,
    body.admin-body.admin-login-body::after,
    body.admin-body.admin-login-body .admin-login-card,
    body.admin-body.admin-login-body .admin-login-head,
    body.admin-body.admin-login-body .admin-login-form label,
    body.admin-body.admin-login-body .admin-login-form > button,
    body.admin-body.admin-login-body .admin-login-help {
        animation: none !important;
    }
}

@media (max-width: 380px) {
    body.admin-body.admin-login-body .admin-login-toast-stack {
        top: 12px;
        right: 12px;
        left: auto;
        width: calc(100% - 24px);
        transform: none;
    }

    body.admin-body.admin-login-body .admin-login-grid,
    body.admin-body.admin-login-body .admin-login-card,
    body.admin-body.admin-login-body .admin-login-card.admin-card {
        width: calc(100vw - 24px) !important;
        max-width: calc(100vw - 24px) !important;
    }

    body.admin-body.admin-login-body .admin-login-card,
    body.admin-body.admin-login-body .admin-login-card.admin-card {
        padding-right: 22px !important;
        padding-left: 22px !important;
    }

    body.admin-body.admin-login-body .admin-login-card .admin-login-form label,
    body.admin-body.admin-login-body .admin-login-card .admin-login-input-shell,
    body.admin-body.admin-login-body .admin-login-card .admin-login-input-shell > .admin-password-control,
    body.admin-body.admin-login-body .admin-login-card .admin-login-form input:not([type="checkbox"]):not([type="range"]) {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }
}

@media (max-height: 520px) {
    body.admin-body.admin-login-body .admin-login-grid {
        transform: scale(.88);
    }
}

/* Material Dashboard layout based on the legacy MineGO admin templates. */
body.admin-body {
    min-height: 100vh;
    color: #3c4858 !important;
    background: #eeeeee !important;
}

.admin-body p,
.admin-body small,
.admin-body label,
.admin-body .admin-card-note,
.admin-body .admin-helper-text {
    color: #777 !important;
}

.admin-shell {
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr) !important;
    gap: 0 !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 100vh;
    margin: 0 !important;
    padding: 0 !important;
}

.easy-admin-nav {
    position: sticky !important;
    inset: 0 auto auto 0 !important;
    z-index: 50;
    display: flex !important;
    width: 260px !important;
    height: 100vh !important;
    max-height: 100vh !important;
    flex-direction: column !important;
    padding: 0 15px 18px !important;
    overflow: hidden;
    border: 0 !important;
    border-radius: 0 !important;
    background: #252525 !important;
    box-shadow: 4px 0 14px rgba(0, 0, 0, .18) !important;
}

.easy-admin-brand {
    display: flex !important;
    width: 100% !important;
    height: 76px !important;
    min-height: 76px;
    justify-content: flex-start !important;
    padding: 0 15px !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.16) !important;
    border-radius: 0 !important;
    color: #fff !important;
    background: transparent !important;
    font-size: 1.2rem;
    font-weight: 500 !important;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.easy-admin-nav-list {
    display: flex !important;
    width: 100%;
    min-height: 0;
    flex: 1;
    flex-direction: column !important;
    justify-content: flex-start !important;
    gap: 5px !important;
    margin: 18px 0 12px !important;
    padding: 0 !important;
    overflow-x: hidden;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: #555 transparent;
}

.easy-admin-nav-link,
.easy-admin-logout {
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 48px !important;
    height: 48px !important;
    justify-content: flex-start !important;
    gap: 15px;
    padding: 0 16px !important;
    border: 0 !important;
    border-radius: 3px !important;
    color: #f2f2f2 !important;
    background: transparent !important;
    font-size: .84rem;
    font-weight: 400 !important;
    text-align: left;
    transition: background-color .2s ease, box-shadow .2s ease !important;
}

.easy-admin-nav-link b,
.easy-admin-logout b {
    display: block !important;
    min-width: 0;
    overflow: hidden;
    font-weight: 400 !important;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.easy-admin-nav-link .easy-icon,
.easy-admin-logout .easy-icon {
    width: 22px !important;
    height: 22px !important;
    margin: 0 !important;
}

.easy-admin-nav-link:hover,
.easy-admin-nav-link:focus-visible,
.easy-admin-logout:hover,
.easy-admin-logout:focus-visible {
    color: #fff !important;
    background: rgba(255,255,255,.1) !important;
}

.easy-admin-nav-link.active {
    color: #fff !important;
    background: #ef5350 !important;
    box-shadow: 0 10px 20px -10px rgba(239,83,80,.75) !important;
}

.easy-admin-logout {
    margin-top: auto !important;
}

.admin-content,
.admin-content-standalone {
    width: 100% !important;
    max-width: none !important;
    min-width: 0;
    padding: 24px 34px 52px !important;
    background: #eeeeee !important;
}

.admin-header {
    min-height: 72px;
    margin: -24px -34px 30px !important;
    padding: 14px 34px !important;
    border: 0 !important;
    border-bottom: 1px solid #ddd !important;
    border-radius: 0 !important;
    background: rgba(255,255,255,.82) !important;
    box-shadow: 0 2px 5px rgba(0,0,0,.05) !important;
}

.admin-header-copy h2,
.admin-section-head h2,
.admin-dashboard-copy h2,
.admin-body h1,
.admin-body h2,
.admin-body h3,
.admin-body h4,
.admin-body h5,
.admin-body strong {
    color: #3c4858 !important;
}

.admin-panel-badge {
    color: #fff !important;
    border: 0 !important;
    background: #ef5350 !important;
}

.admin-header-chip,
.admin-header-user,
.admin-card,
.admin-dashboard-hero,
.admin-confirm-card,
.admin-dashboard-tile,
.admin-stat-card,
.admin-analytics-card,
.admin-product-card,
.admin-coupon-card,
.admin-discount-card,
.admin-group-card,
.admin-server-card,
.admin-editor-block,
.admin-settings-block {
    color: #3c4858 !important;
    border: 0 !important;
    border-radius: 6px !important;
    background: #fff !important;
    box-shadow: 0 2px 5px rgba(0,0,0,.12), 0 10px 24px rgba(0,0,0,.06) !important;
}

.admin-dashboard-hero {
    padding: 24px 28px !important;
}

.admin-dashboard-metric,
.admin-stat-card {
    border: 1px solid #e5e5e5 !important;
    border-radius: 4px !important;
    background: #fafafa !important;
    box-shadow: none !important;
}

.admin-dashboard-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 24px !important;
}

.admin-dashboard-tile {
    min-height: 142px !important;
    border-radius: 6px !important;
    transition: transform .2s ease, box-shadow .2s ease !important;
}

.admin-dashboard-tile:hover {
    background: #fff !important;
    box-shadow: 0 6px 16px rgba(0,0,0,.15) !important;
    transform: translateY(-3px) !important;
}

.admin-dashboard-icon,
.admin-dashboard-icon[class*="is-"] {
    color: #fff !important;
    border: 0 !important;
    border-radius: 4px !important;
    background: #ef5350 !important;
    box-shadow: 0 8px 16px -8px rgba(239,83,80,.8) !important;
}

.admin-body input,
.admin-body select,
.admin-body textarea {
    color: #3c4858 !important;
    border: 1px solid #d7d7d7 !important;
    border-radius: 4px !important;
    background: #fff !important;
}

.admin-body input:focus,
.admin-body select:focus,
.admin-body textarea:focus {
    border-color: #ef5350 !important;
    background: #fff !important;
    box-shadow: 0 0 0 2px rgba(239,83,80,.12) !important;
}

.admin-primary-button,
.admin-submit,
.admin-button-primary,
.admin-form button[type="submit"]:not(.danger-button),
.admin-user-avatar {
    color: #fff !important;
    border-color: #ef5350 !important;
    background: #ef5350 !important;
}

.admin-primary-button:hover,
.admin-submit:hover,
.admin-button-primary:hover,
.admin-form button[type="submit"]:not(.danger-button):hover,
.admin-user-avatar:hover {
    color: #fff !important;
    border-color: #e53935 !important;
    background: #e53935 !important;
}

.admin-table-wrap,
.admin-table-scroll {
    border-color: #e2e2e2 !important;
    background: #fff !important;
}

.admin-body table,
.admin-body th,
.admin-body td {
    color: #3c4858 !important;
    border-color: #e6e6e6 !important;
}

.admin-body th {
    color: #777 !important;
    background: #fafafa !important;
}

@media (max-width: 1100px) {
    .admin-shell { grid-template-columns: 220px minmax(0, 1fr) !important; }
    .easy-admin-nav { width: 220px !important; }
    .admin-dashboard-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

@media (max-width: 700px) {
    .admin-shell {
        display: block !important;
        width: 100% !important;
        padding: 0 0 82px !important;
    }

    .admin-content,
    .admin-content-standalone {
        padding: 18px 14px 34px !important;
    }

    .admin-header {
        margin: -18px -14px 22px !important;
        padding: 14px !important;
    }

    .easy-admin-nav {
        position: fixed !important;
        inset: auto 8px 8px !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 48px !important;
        width: auto !important;
        height: 64px !important;
        max-height: 64px !important;
        padding: 7px !important;
        border-radius: 5px !important;
        background: #252525 !important;
    }

    .easy-admin-brand { display: none !important; }

    .easy-admin-nav-list {
        display: flex !important;
        height: 50px;
        flex-direction: row !important;
        gap: 3px !important;
        margin: 0 !important;
        overflow-x: auto;
        overflow-y: hidden;
    }

    .easy-admin-nav-link,
    .easy-admin-logout {
        width: 48px !important;
        min-width: 48px !important;
        height: 48px !important;
        min-height: 48px !important;
        justify-content: center !important;
        padding: 0 !important;
        border-radius: 3px !important;
    }

    .easy-admin-nav-link b,
    .easy-admin-logout b { display: none !important; }
    .admin-dashboard-grid { grid-template-columns: 1fr !important; gap: 16px !important; }
}

/* Final MineGO admin skin: preserve the legacy layout with the project palette. */
body.admin-body:not(.admin-login-body) {
    color: #F5F3F5 !important;
    background: #141414 !important;
    font-family: "Inter", Arial, sans-serif !important;
}

body.admin-body:not(.admin-login-body) .admin-shell {
    display: block !important;
    min-height: 100vh;
    background: #141414 !important;
}

body.admin-body:not(.admin-login-body) .easy-admin-nav {
    position: fixed !important;
    inset: 0 auto 0 0 !important;
    width: 260px !important;
    height: 100vh !important;
    max-height: 100vh !important;
    color: #F5F3F5 !important;
    background: #1F1F1F !important;
    box-shadow: 8px 0 28px rgba(0, 0, 0, .28) !important;
}

body.admin-body:not(.admin-login-body) .admin-content,
body.admin-body:not(.admin-login-body) .admin-content-standalone {
    width: calc(100% - 260px) !important;
    min-height: 100vh;
    margin-left: 260px !important;
    color: #F5F3F5 !important;
    background: #141414 !important;
}

body.admin-body:not(.admin-login-body) .easy-admin-brand {
    color: #F5F3F5 !important;
    font-family: "Inter", Arial, sans-serif !important;
    font-weight: 700 !important;
}

body.admin-body:not(.admin-login-body) .easy-admin-nav-link,
body.admin-body:not(.admin-login-body) .easy-admin-logout {
    border-radius: 12px !important;
    color: #89888F !important;
    font-family: "Inter", Arial, sans-serif !important;
    font-weight: 600 !important;
}

body.admin-body:not(.admin-login-body) .easy-admin-nav-link:hover,
body.admin-body:not(.admin-login-body) .easy-admin-nav-link:focus-visible,
body.admin-body:not(.admin-login-body) .easy-admin-logout:hover,
body.admin-body:not(.admin-login-body) .easy-admin-logout:focus-visible {
    color: #F5F3F5 !important;
    background: #292929 !important;
}

body.admin-body:not(.admin-login-body) .easy-admin-nav-link.active {
    color: #17120a !important;
    background: radial-gradient(ellipse at center, #F5DE68 0%, #E8A51E 100%) !important;
    box-shadow: 0 0 0 4px rgba(232, 165, 30, .14) !important;
}

body.admin-body:not(.admin-login-body) .easy-admin-nav-link img.easy-icon,
body.admin-body:not(.admin-login-body) .easy-admin-logout img.easy-icon {
    display: block;
    object-fit: contain;
    filter: none;
}

body.admin-body:not(.admin-login-body) .easy-admin-nav-link.active img.easy-icon {
    filter: brightness(0) saturate(100%);
}

body.admin-body:not(.admin-login-body) .admin-header {
    border-bottom: 1px solid #383838 !important;
    color: #F5F3F5 !important;
    background: rgba(31, 31, 31, .96) !important;
    box-shadow: 0 12px 32px rgba(0, 0, 0, .22) !important;
}

body.admin-body:not(.admin-login-body) .admin-header-copy h2,
body.admin-body:not(.admin-login-body) .admin-section-head h2,
body.admin-body:not(.admin-login-body) .admin-dashboard-copy h2,
body.admin-body:not(.admin-login-body) h1,
body.admin-body:not(.admin-login-body) h2,
body.admin-body:not(.admin-login-body) h3,
body.admin-body:not(.admin-login-body) h4,
body.admin-body:not(.admin-login-body) h5,
body.admin-body:not(.admin-login-body) strong,
body.admin-body:not(.admin-login-body) .admin-form label > span {
    color: #F5F3F5 !important;
    font-family: "Inter", Arial, sans-serif !important;
}

body.admin-body:not(.admin-login-body) h1,
body.admin-body:not(.admin-login-body) h2,
body.admin-body:not(.admin-login-body) h3,
body.admin-body:not(.admin-login-body) h4,
body.admin-body:not(.admin-login-body) h5,
body.admin-body:not(.admin-login-body) strong {
    font-weight: 700 !important;
}

body.admin-body:not(.admin-login-body) p,
body.admin-body:not(.admin-login-body) small,
body.admin-body:not(.admin-login-body) .admin-card-note,
body.admin-body:not(.admin-login-body) .admin-helper-text {
    color: #89888F !important;
}

body.admin-body:not(.admin-login-body) .admin-header-chip,
body.admin-body:not(.admin-login-body) .admin-header-user,
body.admin-body:not(.admin-login-body) .admin-card,
body.admin-body:not(.admin-login-body) .admin-dashboard-hero,
body.admin-body:not(.admin-login-body) .admin-confirm-card,
body.admin-body:not(.admin-login-body) .admin-dashboard-tile,
body.admin-body:not(.admin-login-body) .admin-stat-card,
body.admin-body:not(.admin-login-body) .admin-analytics-card,
body.admin-body:not(.admin-login-body) .admin-product-card,
body.admin-body:not(.admin-login-body) .admin-coupon-card,
body.admin-body:not(.admin-login-body) .admin-discount-card,
body.admin-body:not(.admin-login-body) .admin-group-card,
body.admin-body:not(.admin-login-body) .admin-server-card,
body.admin-body:not(.admin-login-body) .admin-editor-block,
body.admin-body:not(.admin-login-body) .admin-settings-block {
    color: #F5F3F5 !important;
    border: 1px solid #383838 !important;
    border-radius: 15px !important;
    background: #1F1F1F !important;
    box-shadow: inset 0 40px 50px 2px rgba(203, 212, 255, .06), 0 20px 60px rgba(0, 0, 0, .24) !important;
}

body.admin-body:not(.admin-login-body) input,
body.admin-body:not(.admin-login-body) select,
body.admin-body:not(.admin-login-body) textarea {
    color: #F5F3F5 !important;
    border: 1px solid #4C4C4C !important;
    border-radius: 14px !important;
    background: #161616 !important;
    font-family: "Inter", Arial, sans-serif !important;
}

body.admin-body:not(.admin-login-body) input:focus,
body.admin-body:not(.admin-login-body) select:focus,
body.admin-body:not(.admin-login-body) textarea:focus {
    border-color: rgba(239, 196, 70, .45) !important;
    background: rgba(239, 196, 70, .10) !important;
    box-shadow: inset 0 0 22px rgba(239, 196, 70, .035), 0 0 0 2px rgba(232, 165, 30, .14) !important;
}

body.admin-body:not(.admin-login-body) .admin-primary-button,
body.admin-body:not(.admin-login-body) .admin-submit,
body.admin-body:not(.admin-login-body) .admin-button-primary,
body.admin-body:not(.admin-login-body) .admin-form button[type="submit"]:not(.danger-button),
body.admin-body:not(.admin-login-body) .admin-user-avatar {
    color: #17120a !important;
    border-color: transparent !important;
    border-radius: 12px !important;
    background: radial-gradient(ellipse at center, #F5DE68 0%, #E8A51E 100%) !important;
}

body.admin-body:not(.admin-login-body) .admin-panel-badge {
    color: #17120a !important;
    background: #FF9E2A !important;
}

@media (max-width: 1100px) {
    body.admin-body:not(.admin-login-body) .easy-admin-nav { width: 220px !important; }
    body.admin-body:not(.admin-login-body) .admin-content,
    body.admin-body:not(.admin-login-body) .admin-content-standalone {
        width: calc(100% - 220px) !important;
        margin-left: 220px !important;
    }
}

@media (max-width: 700px) {
    body.admin-body:not(.admin-login-body) .easy-admin-nav {
        inset: auto 8px 8px !important;
        width: auto !important;
        height: 64px !important;
        max-height: 64px !important;
        border: 1px solid #383838 !important;
        border-radius: 15px !important;
    }

    body.admin-body:not(.admin-login-body) .admin-content,
    body.admin-body:not(.admin-login-body) .admin-content-standalone {
        width: 100% !important;
        margin-left: 0 !important;
        padding-bottom: 92px !important;
    }
}
