/*
  zLMS premium theme tokens.
  Shared palette + primitives used by the Account (login/register) shell
  and the public Home page. Deep green + gold "manuscript library" feel.
*/
:root {
    --lms-green-950: #073322;
    --lms-green-900: #0a4d33;
    --lms-green-800: #0d7a46;
    --lms-green-700: #10a558;
    --lms-gold-600: #b8863a;
    --lms-gold-500: #c99a4c;
    --lms-gold-300: #e4c583;
    --lms-ivory-50: #f9f4e9;
    --lms-paper: #fdfbf5;
    --lms-sand-200: #e8dcc0;
    --lms-sand-300: #d9c9a3;
    --lms-ink-900: #241f16;
    --lms-ink-700: #4a4030;
    --lms-ink-500: #7a6f5a;
}

.lms-serif {
    font-family: "Georgia", "Noto Serif", "Times New Roman", serif;
}

.lms-pattern-bg {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="30" height="30"><g fill="none" stroke="%23e4c583" stroke-width="0.9"><path d="M15 1 L20 8 L29 8 L22 14 L25 23 L15 18 L5 23 L8 14 L1 8 L10 8 Z"/></g></svg>');
    background-size: 30px 30px;
}

.lms-eyebrow {
    font-size: 11px;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: var(--lms-gold-300);
    font-weight: 700;
}

.lms-ornament {
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--lms-gold-600);
}

.lms-ornament::before,
.lms-ornament::after {
    content: "";
    flex: 1;
    height: 1px;
    background: linear-gradient(90deg, transparent, currentColor);
}

.lms-ornament::after {
    background: linear-gradient(90deg, currentColor, transparent);
}

.lms-ornament .lms-diamond {
    flex: none;
    width: 7px;
    height: 7px;
    transform: rotate(45deg);
    background: currentColor;
    border-radius: 1px;
}

.lms-btn-gold,
a.lms-btn-gold {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: linear-gradient(135deg, var(--lms-gold-600), var(--lms-gold-500));
    color: #2c1f0a !important;
    font-weight: 800;
    letter-spacing: .01em;
    padding: 13px 30px;
    border-radius: 999px;
    border: none;
    cursor: pointer;
    box-shadow: 0 14px 28px -14px rgba(184, 134, 58, .55);
    transition: transform .15s ease, box-shadow .15s ease;
    text-decoration: none;
}

.lms-btn-gold:hover,
a.lms-btn-gold:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 32px -14px rgba(184, 134, 58, .65);
    color: #2c1f0a !important;
    text-decoration: none;
}

.lms-btn-outline,
a.lms-btn-outline {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: rgba(255, 255, 255, .08);
    color: var(--lms-paper) !important;
    font-weight: 700;
    padding: 12px 28px;
    border-radius: 999px;
    border: 1.5px solid rgba(228, 197, 131, .55);
    text-decoration: none;
    transition: background .15s ease, transform .15s ease;
}

.lms-btn-outline:hover,
a.lms-btn-outline:hover {
    background: rgba(255, 255, 255, .16);
    color: var(--lms-paper) !important;
    text-decoration: none;
    transform: translateY(-2px);
}

.lms-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .03em;
    color: var(--lms-green-800);
    background: var(--lms-sand-200);
    padding: 5px 12px;
    border-radius: 999px;
}
