:root {
    --admin-bg: var(--paper-2);
    --admin-panel: var(--mc-surface);
    --admin-panel-soft: var(--mc-primary-soft);
    --admin-line: var(--mc-line);
    --admin-line2: var(--blue-100);
    --admin-text: var(--mc-text);
    --admin-muted: var(--mc-text-muted);
    --admin-primary: var(--mc-primary);
    --admin-primary-dim: var(--mc-primary-soft);
    --admin-primary-dark: var(--mc-primary-strong);
    --admin-danger: var(--mc-danger);
    --admin-danger-dim: var(--mc-danger-soft);
    --admin-success: var(--mc-success);
    --admin-success-dim: var(--mc-success-soft);
    --admin-warning: oklch(0.58 0.13 78);
    --admin-warning-dim: oklch(0.96 0.04 82);
    --admin-accent: var(--mc-accent);
    --admin-sidebar-bg: var(--mc-surface);
    color-scheme: light;
}

.mc-admin-body,
.mc-admin-body * {
    box-sizing: border-box;
}

.mc-admin-body {
    background:
        radial-gradient(circle at 8% 0, var(--blue-100), transparent 34%),
        var(--admin-bg);
    color: var(--admin-text);
    font-family: var(--mc-font-body);
    margin: 0;
    min-height: 100vh;
}

.mc-admin-shell {
    min-height: 100vh;
}

.mc-admin-login {
    align-items: center;
    display: flex;
    justify-content: center;
    min-height: 100vh;
    padding: 32px 20px;
}

.mc-admin-login__box {
    background: var(--admin-panel);
    border: 1px solid var(--admin-line);
    border-radius: var(--mc-radius-xl);
    box-shadow: var(--mc-shadow-lg);
    max-width: 440px;
    overflow: hidden;
    padding: 36px;
    position: relative;
    width: 100%;
}

.mc-admin-login__box::before {
    background: linear-gradient(90deg, var(--admin-primary) 0 72%, var(--admin-accent) 72%);
    content: "";
    height: 5px;
    inset: 0 0 auto;
    position: absolute;
}

.mc-admin-logo {
    align-items: center;
    display: flex;
    gap: 12px;
    margin-bottom: 28px;
}

.mc-admin-logo img {
    filter: none;
    height: 34px;
    width: auto;
}

.mc-admin-logo span,
.mc-admin-sidebar-section {
    color: var(--admin-muted);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.mc-admin-title,
.mc-admin-page-title {
    color: var(--admin-text);
    font-family: var(--mc-font-display);
    font-weight: 800;
    letter-spacing: -.035em;
}

.mc-admin-title {
    font-size: clamp(28px, 5vw, 38px);
    line-height: 1.05;
    margin: 0 0 12px;
}

.mc-admin-subtitle {
    color: var(--admin-muted);
    font-size: 14px;
    line-height: 1.65;
    margin: 0 0 28px;
}

.mc-admin-form {
    display: grid;
    gap: 16px;
}

.mc-admin-field label {
    color: var(--admin-text);
    display: block;
    font-size: 12px;
    font-weight: 750;
    margin-bottom: 7px;
}
