.card{
    background:var(--card);
    border-radius:var(--radius);
    box-shadow:var(--shadow);
    padding:var(--space-5);
    margin-bottom:var(--space-4);
}

.card-title{
    font-size:24px;
    margin-bottom:10px;
    color:var(--primary-dark);
}

.card-subtitle{
    color:var(--muted);
    margin-bottom:20px;
}

.form-group{
    margin-bottom:16px;
}

.label{
    display:block;
    font-weight:bold;
    margin-bottom:6px;
    color:var(--text);
}

.input{
    width:100%;
    padding:14px 14px;
    border:1px solid var(--border);
    border-radius:var(--radius-sm);
    background:#fff;
    color:var(--text);
}

.input:focus{
    outline:none;
    border-color:var(--primary);
}

.btn{
    display:inline-block;
    border:none;
    border-radius:var(--radius-sm);
    padding:14px 18px;
    background:var(--primary);
    color:#fff;
    cursor:pointer;
    font-weight:bold;
    text-align:center;
}

.btn:hover{
    background:var(--primary-dark);
}

.btn-block{
    display:block;
    width:100%;
}

.menu-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:14px;
}

.menu-card{
    display:block;
    background:var(--card);
    border-radius:var(--radius);
    box-shadow:var(--shadow);
    padding:20px;
    border:1px solid #edf2f7;
    color:var(--text);
    transition:.2s ease;
}

.menu-card:hover{
    transform:translateY(-2px);
    border-color:#cfe0fb;
}

.menu-card-title{
    font-size:18px;
    font-weight:bold;
    color:var(--primary-dark);
    margin-bottom:8px;
}

.menu-card-text{
    color:var(--muted);
    font-size:14px;
}

.info-box{
    background:#f8fbff;
    border:1px solid var(--border);
    border-radius:var(--radius-sm);
    padding:14px;
    margin-top:16px;
    color:var(--muted);
}
