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

:root {
  --bh-surface: #ffffff;
  --bh-surface-bg: #f4f7f9;
  --bh-surface-highest: #fafbfc;
  --bh-primary: #557c95;
  --bh-primary-dark: #405e71;
  --bh-secondary: #6b7984;
  --bh-text-main: #2b3036;
  --bh-shadow-floating: 0px 12px 24px rgba(118, 119, 121, 0.15);
  --bh-font-display: 'Manrope', sans-serif;
  --bh-font-body: 'Inter', sans-serif;
  --bh-radius: 8px;
  --bh-radius-sm: 4px;
}

body.login {
    background-color: var(--bh-surface-bg);
    font-family: var(--bh-font-body);
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
}

/* Form Container */
body.login #login {
    width: 380px;
    padding: 0;
}

body.login #login h1 a {
    width: 120px;
    height: 120px;
    background-size: contain;
    margin: 0 auto 32px;
}

body.login form {
    background: var(--bh-surface);
    border: none !important; /* No Line Rule */
    border-radius: var(--bh-radius);
    box-shadow: var(--bh-shadow-floating);
    padding: 40px;
    margin-top: 0;
}

body.login label {
    font-size: 0.875rem;
    color: var(--bh-text-main);
    font-weight: 500;
    margin-bottom: 8px;
    display: block;
}

/* Inputs */
body.login input[type=text], body.login input[type=password] {
    background-color: var(--bh-surface-highest);
    border: none !important;
    border-radius: var(--bh-radius-sm);
    box-shadow: inset 0 2px 4px rgba(0,0,0,0.02);
    padding: 12px 16px;
    font-size: 1rem;
    font-family: var(--bh-font-body);
    color: var(--bh-text-main);
    width: 100%;
    margin-bottom: 24px;
    transition: all 0.2s;
}

body.login input[type=text]:focus, body.login input[type=password]:focus {
    box-shadow: 0 0 0 2px rgba(85, 124, 149, 0.2), inset 0 2px 4px rgba(0,0,0,0.02);
    outline: 2px solid var(--bh-primary);
    outline-offset: -2px;
}

/* CTA */
body.login .button-primary {
    background: linear-gradient(135deg, var(--bh-primary), var(--bh-primary-dark)) !important;
    border: none !important;
    border-radius: var(--bh-radius-sm) !important;
    box-shadow: 0 4px 12px rgba(118, 119, 121, 0.08) !important;
    color: #fff !important;
    text-shadow: none !important;
    font-family: var(--bh-font-body);
    font-weight: 500;
    font-size: 1rem;
    padding: 8px 24px;
    float: none;
    width: 100%;
    height: auto;
    transition: all 0.2s;
}
body.login .button-primary:hover {
    box-shadow: var(--bh-shadow-floating) !important;
    transform: translateY(-1px);
}

/* Utilities */
body.login #backtoblog, body.login #nav {
    text-align: center;
    margin-top: 24px;
    padding: 0;
}
body.login #backtoblog a, body.login #nav a {
    color: var(--bh-secondary) !important;
    transition: color 0.2s;
    font-size: 0.875rem;
}
body.login #backtoblog a:hover, body.login #nav a:hover {
    color: var(--bh-primary) !important;
}

/* Cleanup */
.login .message, .login .success, .login .notice {
    border-left: 4px solid var(--bh-primary) !important;
    background: var(--bh-surface) !important;
    border-radius: var(--bh-radius-sm);
    box-shadow: 0 4px 12px rgba(118, 119, 121, 0.08) !important;
}
